quantwise 1.3.2 → 1.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +72 -0
  2. package/cli.mjs +17 -17
  3. package/package.json +2 -1
package/cli.mjs CHANGED
@@ -39,7 +39,7 @@ Event: ${Vy(I)}`),!0}return!1}function IKl(I,G){if(!G?.length)return!1;return sI
39
39
  globstar while`,I,Q,G,X,R),this.matchOne(I.slice(Q),G.slice(X),Z))return this.debug("globstar found match!",Q,Y,R),!0;else{if(R==="."||R===".."||!l.dot&&R.charAt(0)==="."){this.debug("dot detected!",I,Q,G,X);break}this.debug("globstar swallow a segment, and continue"),Q++}}if(Z){if(this.debug(`
40
40
  >>> no match, partial?`,I,Q,G,X),Q===Y)return!0}return!1}let H;if(typeof V==="string")H=d===V,this.debug("string match",V,d,H);else H=V.test(d),this.debug("pattern match",V,d,H);if(!H)return!1}if(W===Y&&N===c)return!0;else if(W===Y)return Z;else if(N===c)return W===Y-1&&I[W]==="";else throw Error("wtf?")}braceExpand(){return V3G(this.pattern,this.options)}parse(I){ST(I);let G=this.options;if(I==="**")return Jh;if(I==="")return"";let Z,l=null;if(Z=I.match(otl))l=G.dot?rtl:ttl;else if(Z=I.match(ntl))l=(G.nocase?G.dot?itl:Stl:G.dot?Ttl:qtl)(Z[1]);else if(Z=I.match(etl))l=(G.nocase?G.dot?Grl:Irl:G.dot?Zrl:lrl)(Z);else if(Z=I.match(Ptl))l=G.dot?ftl:_tl;else if(Z=I.match(stl))l=$tl;let b=Sm.fromGlob(I,this.options).toMMPattern();if(l&&typeof b==="object")Reflect.defineProperty(b,"test",{value:l});return b}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let I=this.set;if(!I.length)return this.regexp=!1,this.regexp;let G=this.options,Z=G.noglobstar?Nrl:G.dot?Yrl:crl,l=new Set(G.nocase?["i"]:[]),b=I.map((Y)=>{let c=Y.map((V)=>{if(V instanceof RegExp)for(let d of V.flags.split(""))l.add(d);return typeof V==="string"?Xrl(V):V===Jh?Jh:V._src});return c.forEach((V,d)=>{let Q=c[d+1],X=c[d-1];if(V!==Jh||X===Jh)return;if(X===void 0)if(Q!==void 0&&Q!==Jh)c[d+1]="(?:\\/|"+Z+"\\/)?"+Q;else c[d]=Z;else if(Q===void 0)c[d-1]=X+"(?:\\/|"+Z+")?";else if(Q!==Jh)c[d-1]=X+"(?:\\/|\\/"+Z+"\\/)"+Q,c[d+1]=Jh}),c.filter((V)=>V!==Jh).join("/")}).join("|"),[W,N]=I.length>1?["(?:",")"]:["",""];if(b="^"+W+b+N+"$",this.negate)b="^(?!"+b+").+$";try{this.regexp=new RegExp(b,[...l].join(""))}catch(Y){this.regexp=!1}return this.regexp}slashSplit(I){if(this.preserveMultipleSlashes)return I.split("/");else if(this.isWindows&&/^\/\/[^\/]+/.test(I))return["",...I.split(/\/+/)];else return I.split(/\/+/)}match(I,G=this.partial){if(this.debug("match",I,this.pattern),this.comment)return!1;if(this.empty)return I==="";if(I==="/"&&G)return!0;let Z=this.options;if(this.isWindows)I=I.split("\\").join("/");let l=this.slashSplit(I);this.debug(this.pattern,"split",l);let b=this.set;this.debug(this.pattern,"set",b);let W=l[l.length-1];if(!W)for(let N=l.length-2;!W&&N>=0;N--)W=l[N];for(let N=0;N<b.length;N++){let Y=b[N],c=l;if(Z.matchBase&&Y.length===1)c=[W];if(this.matchOne(c,Y,G)){if(Z.flipNegate)return!0;return!this.negate}}if(Z.flipNegate)return!1;return this.negate}static defaults(I){return im.defaults(I).Minimatch}}var W3G,im=(I,G,Z={})=>{if(ST(G),!Z.nocomment&&G.charAt(0)==="#")return!1;return new PT(G,Z).match(I)},ntl,qtl=(I)=>(G)=>!G.startsWith(".")&&G.endsWith(I),Ttl=(I)=>(G)=>G.endsWith(I),Stl=(I)=>{return I=I.toLowerCase(),(G)=>!G.startsWith(".")&&G.toLowerCase().endsWith(I)},itl=(I)=>{return I=I.toLowerCase(),(G)=>G.toLowerCase().endsWith(I)},Ptl,_tl=(I)=>!I.startsWith(".")&&I.includes("."),ftl=(I)=>I!=="."&&I!==".."&&I.includes("."),stl,$tl=(I)=>I!=="."&&I!==".."&&I.startsWith("."),otl,ttl=(I)=>I.length!==0&&!I.startsWith("."),rtl=(I)=>I.length!==0&&I!=="."&&I!=="..",etl,Irl=([I,G=""])=>{let Z=N3G([I]);if(!G)return Z;return G=G.toLowerCase(),(l)=>Z(l)&&l.toLowerCase().endsWith(G)},Grl=([I,G=""])=>{let Z=Y3G([I]);if(!G)return Z;return G=G.toLowerCase(),(l)=>Z(l)&&l.toLowerCase().endsWith(G)},Zrl=([I,G=""])=>{let Z=Y3G([I]);return!G?Z:(l)=>Z(l)&&l.endsWith(G)},lrl=([I,G=""])=>{let Z=N3G([I]);return!G?Z:(l)=>Z(l)&&l.endsWith(G)},N3G=([I])=>{let G=I.length;return(Z)=>Z.length===G&&!Z.startsWith(".")},Y3G=([I])=>{let G=I.length;return(Z)=>Z.length===G&&Z!=="."&&Z!==".."},c3G,l3G,brl,Jh,Wrl="[^/]",Nrl,Yrl="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",crl="(?:(?!(?:\\/|^)\\.).)*?",Vrl=(I,G={})=>(Z)=>im(Z,I,G),wh=(I,G={})=>Object.assign({},I,G),drl=(I)=>{if(!I||typeof I!=="object"||!Object.keys(I).length)return im;let G=im;return Object.assign((l,b,W={})=>G(l,b,wh(I,W)),{Minimatch:class extends G.Minimatch{constructor(b,W={}){super(b,wh(I,W))}static defaults(b){return G.defaults(wh(I,b)).Minimatch}},AST:class extends G.AST{constructor(b,W,N={}){super(b,W,wh(I,N))}static fromGlob(b,W={}){return G.AST.fromGlob(b,wh(I,W))}},unescape:(l,b={})=>G.unescape(l,wh(I,b)),escape:(l,b={})=>G.escape(l,wh(I,b)),filter:(l,b={})=>G.filter(l,wh(I,b)),defaults:(l)=>G.defaults(wh(I,l)),makeRe:(l,b={})=>G.makeRe(l,wh(I,b)),braceExpand:(l,b={})=>G.braceExpand(l,wh(I,b)),match:(l,b,W={})=>G.match(l,b,wh(I,W)),sep:G.sep,GLOBSTAR:Jh})},V3G=(I,G={})=>{if(ST(I),G.nobrace||!/\{(?:(?!\{).)*\}/.test(I))return[I];return W3G.default(I)},mrl=(I,G={})=>new PT(I,G).makeRe(),Qrl=(I,G,Z={})=>{let l=new PT(G,Z);if(I=I.filter((b)=>l.match(b)),l.options.nonull&&!I.length)I.push(G);return I},b3G,Xrl=(I)=>I.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");var d3G=a(()=>{pEI();pEI();W3G=hI(oCG(),1),ntl=/^\*+([^+@!?\*\[\(]*)$/,Ptl=/^\*+\.\*+$/,stl=/^\.\*+$/,otl=/^\*+$/,etl=/^\?+([^+@!?\*\[\(]*)?$/,c3G=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",l3G={win32:{sep:"\\"},posix:{sep:"/"}},brl=c3G==="win32"?l3G.win32.sep:l3G.posix.sep;im.sep=brl;Jh=Symbol("globstar **");im.GLOBSTAR=Jh;Nrl=Wrl+"*?";im.filter=Vrl;im.defaults=drl;im.braceExpand=V3G;im.makeRe=mrl;im.match=Qrl;b3G=/[?*]|[+@!]\(.*?\)|\[|\]/;im.AST=Sm;im.Minimatch=PT;im.escape=yEI;im.unescape=zy});import m3G from"node:diagnostics_channel";var Fd,PGI,H3G,qd,Q3G="@fastify/otel",Rrl="0.8.0",Hrl=">=4.0.0 <6",X3G,GV,By,qv="anonymous",bF,ky,_T,F3G,R3G,iGI,uEI;var h3G=a(()=>{d3G();Fd=hI(bl(),1),PGI=hI(lY(),1),H3G=hI(jN(),1),qd=hI(Nc(),1),X3G=["onRequest","preParsing","preValidation","preHandler","preSerialization","onSend","onResponse","onError"],GV={HOOK_NAME:"hook.name",FASTIFY_TYPE:"fastify.type",HOOK_CALLBACK_NAME:"hook.callback.name",ROOT:"fastify.root"},By={ROUTE:"route-hook",INSTANCE:"hook",HANDLER:"request-handler"},bF=Symbol("fastify otel instance"),ky=Symbol("fastify otel request spans"),_T=Symbol("fastify otel request context"),F3G=Symbol("fastify otel addhook original"),R3G=Symbol("fastify otel setnotfound original"),iGI=Symbol("fastify otel ignore path");uEI=class uEI extends H3G.InstrumentationBase{constructor(I){super(Q3G,Rrl,I);if(this.servername=I?.servername??process.env.OTEL_SERVICE_NAME??"fastify",this[iGI]=null,this._logger=Fd.diag.createComponentLogger({namespace:Q3G}),I?.ignorePaths!=null||process.env.OTEL_FASTIFY_IGNORE_PATHS!=null){let G=I?.ignorePaths??process.env.OTEL_FASTIFY_IGNORE_PATHS;if((typeof G!=="string"||G.length===0)&&typeof G!=="function")throw TypeError("ignorePaths must be a string or a function");let Z=im;this[iGI]=(l)=>{if(typeof G==="function")return G(l);else return Z(l.url,G)}}}enable(){if(this._handleInitialization===void 0&&this.getConfig().registerOnInitialization){let I=this.plugin();this._handleInitialization=(G)=>{G.fastify.register(I)},m3G.subscribe("fastify.initialization",this._handleInitialization)}return super.enable()}disable(){if(this._handleInitialization)m3G.unsubscribe("fastify.initialization",this._handleInitialization),this._handleInitialization=void 0;return super.disable()}init(){return[]}plugin(){let I=this;return G[Symbol.for("skip-override")]=!0,G[Symbol.for("fastify.display-name")]="@fastify/otel",G[Symbol.for("plugin-meta")]={fastify:Hrl,name:"@fastify/otel"},G;function G(Z,l,b){Z.decorate(bF,I),Z.decorate(F3G,Z.addHook),Z.decorate(R3G,Z.setNotFoundHandler),Z.decorateRequest("opentelemetry",function(){let Q=this[_T];return{span:this[ky],tracer:I.tracer,context:Q,inject:(R,H)=>{return Fd.propagation.inject(Q,R,H)},extract:(R,H)=>{return Fd.propagation.extract(Q,R,H)}}}),Z.decorateRequest(ky,null),Z.decorateRequest(_T,null),Z.addHook("onRoute",function(d){if(I[iGI]?.(d)===!0){I._logger.debug(`Ignoring route instrumentation ${d.method} ${d.url} because it matches the ignore path`);return}for(let Q of X3G)if(d[Q]!=null){let X=d[Q];if(typeof X==="function")d[Q]=V(X,{[qd.ATTR_SERVICE_NAME]:Z[bF].servername,[GV.HOOK_NAME]:`${this.pluginName} - route -> ${Q}`,[GV.FASTIFY_TYPE]:By.ROUTE,[qd.ATTR_HTTP_ROUTE]:d.url,[GV.HOOK_CALLBACK_NAME]:X.name?.length>0?X.name:qv});else if(Array.isArray(X)){let R=[];for(let H of X)R.push(V(H,{[qd.ATTR_SERVICE_NAME]:Z[bF].servername,[GV.HOOK_NAME]:`${this.pluginName} - route -> ${Q}`,[GV.FASTIFY_TYPE]:By.ROUTE,[qd.ATTR_HTTP_ROUTE]:d.url,[GV.HOOK_CALLBACK_NAME]:H.name?.length>0?H.name:qv}));d[Q]=R}}if(d.onSend!=null)d.onSend=Array.isArray(d.onSend)?[...d.onSend,W]:[d.onSend,W];else d.onSend=W;if(d.onError!=null)d.onError=Array.isArray(d.onError)?[...d.onError,N]:[d.onError,N];else d.onError=N;d.handler=V(d.handler,{[qd.ATTR_SERVICE_NAME]:Z[bF].servername,[GV.HOOK_NAME]:`${this.pluginName} - route-handler`,[GV.FASTIFY_TYPE]:By.HANDLER,[qd.ATTR_HTTP_ROUTE]:d.url,[GV.HOOK_CALLBACK_NAME]:d.handler.name.length>0?d.handler.name:qv})}),Z.addHook("onRequest",function(d,Q,X){if(this[bF].isEnabled()===!1)return X();else if(this[bF][iGI]?.({url:d.url,method:d.method})===!0)return this[bF]._logger.debug(`Ignoring request ${d.method} ${d.url} because it matches the ignore path`),X();let R=Fd.context.active();if(Fd.trace.getSpan(R)==null)R=Fd.propagation.extract(R,d.headers);let H=PGI.getRPCMetadata(R);if(d.routeOptions.url!=null&&H?.type===PGI.RPCType.HTTP)H.route=d.routeOptions.url;let h=this[bF].tracer.startSpan("request",{attributes:{[qd.ATTR_SERVICE_NAME]:Z[bF].servername,[GV.ROOT]:"@fastify/otel",[qd.ATTR_HTTP_ROUTE]:d.url,[qd.ATTR_HTTP_REQUEST_METHOD]:d.method}},R);d[_T]=Fd.trace.setSpan(R,h),d[ky]=h,Fd.context.with(d[_T],()=>{X()})}),Z.addHook("onResponse",function(d,Q,X){let R=d[ky];if(R!=null)R.setStatus({code:Fd.SpanStatusCode.OK,message:"OK"}),R.setAttributes({[qd.ATTR_HTTP_RESPONSE_STATUS_CODE]:404}),R.end();d[ky]=null,X()}),Z.addHook=Y,Z.setNotFoundHandler=c,b();function W(d,Q,X,R){let H=d[ky];if(H!=null){if(Q.statusCode<500)H.setStatus({code:Fd.SpanStatusCode.OK,message:"OK"});H.setAttributes({[qd.ATTR_HTTP_RESPONSE_STATUS_CODE]:Q.statusCode}),H.end()}d[ky]=null,R(null,X)}function N(d,Q,X,R){let H=d[ky];if(H!=null)H.setStatus({code:Fd.SpanStatusCode.ERROR,message:X.message}),H.recordException(X);R()}function Y(d,Q){let X=this[F3G];if(X3G.includes(d))return X.call(this,d,V(Q,{[qd.ATTR_SERVICE_NAME]:Z[bF].servername,[GV.HOOK_NAME]:`${this.pluginName} - ${d}`,[GV.FASTIFY_TYPE]:By.INSTANCE,[GV.HOOK_CALLBACK_NAME]:Q.name?.length>0?Q.name:qv}));else return X.call(this,d,Q)}function c(d,Q){let X=this[R3G];if(typeof d==="function")Q=V(d,{[qd.ATTR_SERVICE_NAME]:Z[bF].servername,[GV.HOOK_NAME]:`${this.pluginName} - not-found-handler`,[GV.FASTIFY_TYPE]:By.INSTANCE,[GV.HOOK_CALLBACK_NAME]:d.name?.length>0?d.name:qv}),X.call(this,Q);else{if(d.preValidation!=null)d.preValidation=V(d.preValidation,{[qd.ATTR_SERVICE_NAME]:Z[bF].servername,[GV.HOOK_NAME]:`${this.pluginName} - not-found-handler - preValidation`,[GV.FASTIFY_TYPE]:By.INSTANCE,[GV.HOOK_CALLBACK_NAME]:d.preValidation.name?.length>0?d.preValidation.name:qv});if(d.preHandler!=null)d.preHandler=V(d.preHandler,{[qd.ATTR_SERVICE_NAME]:Z[bF].servername,[GV.HOOK_NAME]:`${this.pluginName} - not-found-handler - preHandler`,[GV.FASTIFY_TYPE]:By.INSTANCE,[GV.HOOK_CALLBACK_NAME]:d.preHandler.name?.length>0?d.preHandler.name:qv});Q=V(Q,{[qd.ATTR_SERVICE_NAME]:Z[bF].servername,[GV.HOOK_NAME]:`${this.pluginName} - not-found-handler`,[GV.FASTIFY_TYPE]:By.INSTANCE,[GV.HOOK_CALLBACK_NAME]:Q.name?.length>0?Q.name:qv}),X.call(this,d,Q)}}function V(d,Q={}){return function(...R){let H=this[bF],[h]=R;if(H.isEnabled()===!1)return d.call(this,...R);let A=h[_T]??Fd.context.active(),C=H.tracer.startSpan(`handler - ${d.name?.length>0?d.name:this.pluginName??qv}`,{attributes:Q},A);return Fd.context.with(Fd.trace.setSpan(A,C),function(){try{let g=d.call(this,...R);if(typeof g?.then==="function")return g.then((z)=>{return C.end(),z},(z)=>{return C.setStatus({code:Fd.SpanStatusCode.ERROR,message:z.message}),C.recordException(z),C.end(),Promise.reject(z)});return C.end(),g}catch(g){throw C.setStatus({code:Fd.SpanStatusCode.ERROR,message:g.message}),C.recordException(g),C.end(),g}},this)}}}}}});var Tv,fT,sT;var w3G=a(()=>{(function(I){I.FASTIFY_NAME="fastify.name";let Z="fastify.type";I.FASTIFY_TYPE=Z;let l="hook.name";I.HOOK_NAME=l;let b="plugin.name";I.PLUGIN_NAME=b})(Tv||(Tv={}));(function(I){I.MIDDLEWARE="middleware";let Z="request_handler";I.REQUEST_HANDLER=Z})(fT||(fT={}));(function(I){I.MIDDLEWARE="middleware";let Z="request handler";I.REQUEST_HANDLER=Z})(sT||(sT={}))});var $T;var J3G=a(()=>{$T=Symbol("opentelemetry.instrumentation.fastify.request_active_span")});function LEI(I,G,Z,l={}){let b=G.startSpan(Z,{attributes:l}),W=I[$T]||[];return W.push(b),Object.defineProperty(I,$T,{enumerable:!1,configurable:!0,value:W}),b}function _GI(I,G){let Z=I[$T]||[];if(!Z.length)return;Z.forEach((l)=>{if(G)l.setStatus({code:E3G.SpanStatusCode.ERROR,message:G.message}),l.recordException(G);l.end()}),delete I[$T]}function v3G(I,G,Z){let l,b=void 0;try{if(b=I(),A3G(b))b.then((W)=>G(void 0,W),(W)=>G(W))}catch(W){l=W}finally{if(!A3G(b)){if(G(l,b),l)throw l}return b}}function A3G(I){return typeof I==="object"&&I&&typeof Object.getOwnPropertyDescriptor(I,"then")?.value==="function"||!1}var E3G;var C3G=a(()=>{J3G();E3G=hI(bl(),1)});function Arl(){let I=zb();if(I)I.on("spanStart",(G)=>{u3G(G)})}function u3G(I){let G=Bb(I).data,Z=G["fastify.type"];if(G[JW]||!Z)return;I.setAttributes({[bY]:"auto.http.otel.fastify",[JW]:`${Z}.fastify`});let l=G["fastify.name"]||G["plugin.name"]||G["hook.name"];if(typeof l==="string"){let b=l.replace(/^fastify -> /,"").replace(/^@fastify\/otel -> /,"");I.updateName(b)}}var C5,fGI,Zz,y3G,hrl="0.1.0",wrl="@sentry/instrumentation-fastify-v3",p3G="anonymous",Jrl,gEI;var L3G=a(()=>{Qb();w3G();C3G();C5=hI(bl(),1),fGI=hI(lY(),1),Zz=hI(jN(),1),y3G=hI(Nc(),1),Jrl=new Set(["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError"]);gEI=class gEI extends Zz.InstrumentationBase{constructor(I={}){super(wrl,hrl,I)}init(){return[new Zz.InstrumentationNodeModuleDefinition("fastify",[">=3.0.0 <4"],(I)=>{return this._patchConstructor(I)})]}_hookOnRequest(){let I=this;return function(Z,l,b){if(!I.isEnabled())return b();I._wrap(l,"send",I._patchSend());let W=Z,N=fGI.getRPCMetadata(C5.context.active()),Y=W.routeOptions?W.routeOptions.url:Z.routerPath;if(Y&&N?.type===fGI.RPCType.HTTP)N.route=Y;let c=Z.method||"GET";nN().setTransactionName(`${c} ${Y}`),b()}}_wrapHandler(I,G,Z,l){let b=this;return this._diag.debug("Patching fastify route.handler function"),function(...W){if(!b.isEnabled())return Z.apply(this,W);let N=Z.name||I||p3G,Y=`${sT.MIDDLEWARE} - ${N}`,c=W[1],V=LEI(c,b.tracer,Y,{[Tv.FASTIFY_TYPE]:fT.MIDDLEWARE,[Tv.PLUGIN_NAME]:I,[Tv.HOOK_NAME]:G}),d=l&&W[W.length-1];if(d)W[W.length-1]=function(...Q){_GI(c),d.apply(this,Q)};return C5.context.with(C5.trace.setSpan(C5.context.active(),V),()=>{return v3G(()=>{return Z.apply(this,W)},(Q)=>{if(Q instanceof Error)V.setStatus({code:C5.SpanStatusCode.ERROR,message:Q.message}),V.recordException(Q);if(!l)_GI(c)})})}}_wrapAddHook(){let I=this;return this._diag.debug("Patching fastify server.addHook function"),function(G){return function(...l){let b=l[0],W=l[1],N=this.pluginName;if(!Jrl.has(b))return G.apply(this,l);let Y=typeof l[l.length-1]==="function"&&W.constructor.name!=="AsyncFunction";return G.apply(this,[b,I._wrapHandler(N,b,W,Y)])}}}_patchConstructor(I){let G=this;function Z(...l){let b=I.fastify.apply(this,l);return b.addHook("onRequest",G._hookOnRequest()),b.addHook("preHandler",G._hookPreHandler()),Arl(),G._wrap(b,"addHook",G._wrapAddHook()),b}if(I.errorCodes!==void 0)Z.errorCodes=I.errorCodes;return Z.fastify=Z,Z.default=Z,Z}_patchSend(){let I=this;return this._diag.debug("Patching fastify reply.send function"),function(Z){return function(...b){let W=b[0];if(!I.isEnabled())return Z.apply(this,b);return Zz.safeExecuteInTheMiddle(()=>{return Z.apply(this,b)},(N)=>{if(!N&&W instanceof Error)N=W;_GI(this,N)})}}}_hookPreHandler(){let I=this;return this._diag.debug("Patching fastify preHandler function"),function(Z,l,b){if(!I.isEnabled())return b();let W=Z,N=W.routeOptions?.handler||W.context?.handler,Y=N?.name.startsWith("bound ")?N.name.substring(6):N?.name,c=`${sT.REQUEST_HANDLER} - ${Y||this.pluginName||p3G}`,V={[Tv.PLUGIN_NAME]:this.pluginName,[Tv.FASTIFY_TYPE]:fT.REQUEST_HANDLER,[y3G.SEMATTRS_HTTP_ROUTE]:W.routeOptions?W.routeOptions.url:Z.routerPath};if(Y)V[Tv.FASTIFY_NAME]=Y;let d=LEI(l,I.tracer,c,V);u3G(d);let{requestHook:Q}=I.getConfig();if(Q)Zz.safeExecuteInTheMiddle(()=>Q(d,{request:Z}),(X)=>{if(X)I._diag.error("request hook failed",X)},!0);return C5.context.with(C5.trace.setSpan(C5.context.active(),d),()=>{b()})}}}});import*as aEI from"node:diagnostics_channel";function Crl(){let I=zb();if(!I)return;else return I.getIntegrationByName(a3G)}function g3G(I,G,Z,l){let b=Crl()?.getShouldHandleError()||U3G;if(l==="diagnostics-channel")this.diagnosticsChannelExists=!0;if(this.diagnosticsChannelExists&&l==="onError-hook"){N4&&LG.warn("Fastify error handler was already registered via diagnostics channel.","You can safely remove `setupFastifyErrorHandler` call and set `shouldHandleError` on the integration options.");return}if(b(I,G,Z))Im(I,{mechanism:{handled:!1,type:"fastify"}})}function U3G(I,G,Z){let l=Z.statusCode;return l>=500||l<=299}function x3G(I){let G=Bb(I),Z=G.description,l=G.data,b=l["fastify.type"],W=b==="hook",N=b===Z?.startsWith("handler -"),Y=Z==="request"||b==="request-handler";if(l[JW]||!N&&!Y&&!W)return;let c=W?"hook":N?"middleware":Y?"request-handler":"<unknown>";I.setAttributes({[bY]:"auto.http.otel.fastify",[JW]:`${c}.fastify`});let V=l["fastify.name"]||l["plugin.name"]||l["hook.name"];if(typeof V==="string"){let d=V.replace(/^fastify -> /,"").replace(/^@fastify\/otel -> /,"");I.updateName(d)}}function yrl(){let I=zb();if(I)I.on("spanStart",(G)=>{x3G(G)})}function url(I){I.addHook("onRequest",async(G,Z)=>{if(G.opentelemetry){let{span:W}=G.opentelemetry();if(W)x3G(W)}let l=G.routeOptions?.url,b=G.method||"GET";nN().setTransactionName(`${b} ${l}`)})}var a3G="Fastify",Erl="Fastify-V5",vrl="Fastify-V3",z3G,B3G,prl=({shouldHandleError:I})=>{let G;return{name:a3G,setupOnce(){G=I||U3G,z3G(),B3G()},getShouldHandleError(){return G},setShouldHandleError(Z){G=Z}}},k3G;var O3G=a(()=>{Qb();vc();qT();h3G();L3G();z3G=Rb(vrl,()=>new gEI);B3G=Rb(Erl,()=>{let I=new uEI,G=I.plugin();return aEI.subscribe("fastify.initialization",(Z)=>{let l=Z.fastify;l?.register(G).after((b)=>{if(b)N4&&LG.error("Failed to setup Fastify instrumentation",b);else if(yrl(),l)url(l)})}),aEI.subscribe("tracing:fastify.request.handler:error",(Z)=>{let{error:l,request:b,reply:W}=Z;g3G.call(g3G,l,b,W,"diagnostics-channel")}),I}),k3G=Gl((I={})=>prl(I))});var BEI=w((D3G)=>{Object.defineProperty(D3G,"__esModule",{value:!0});D3G.SpanNames=D3G.TokenKind=D3G.AllowedOperationTypes=void 0;var Lrl;(function(I){I.QUERY="query",I.MUTATION="mutation",I.SUBSCRIPTION="subscription"})(Lrl=D3G.AllowedOperationTypes||(D3G.AllowedOperationTypes={}));var grl;(function(I){I.SOF="<SOF>",I.EOF="<EOF>",I.BANG="!",I.DOLLAR="$",I.AMP="&",I.PAREN_L="(",I.PAREN_R=")",I.SPREAD="...",I.COLON=":",I.EQUALS="=",I.AT="@",I.BRACKET_L="[",I.BRACKET_R="]",I.BRACE_L="{",I.PIPE="|",I.BRACE_R="}",I.NAME="Name",I.INT="Int",I.FLOAT="Float",I.STRING="String",I.BLOCK_STRING="BlockString",I.COMMENT="Comment"})(grl=D3G.TokenKind||(D3G.TokenKind={}));var arl;(function(I){I.EXECUTE="graphql.execute",I.PARSE="graphql.parse",I.RESOLVE="graphql.resolve",I.VALIDATE="graphql.validate",I.SCHEMA_VALIDATE="graphql.validateSchema",I.SCHEMA_PARSE="graphql.parseSchema"})(arl=D3G.SpanNames||(D3G.SpanNames={}))});var UEI=w((j3G)=>{Object.defineProperty(j3G,"__esModule",{value:!0});j3G.AttributeNames=void 0;var zrl;(function(I){I.SOURCE="graphql.source",I.FIELD_NAME="graphql.field.name",I.FIELD_PATH="graphql.field.path",I.FIELD_TYPE="graphql.field.type",I.OPERATION_TYPE="graphql.operation.type",I.OPERATION_NAME="graphql.operation.name",I.VARIABLES="graphql.variables.",I.ERROR_VALIDATION_NAME="graphql.validation.error"})(zrl=j3G.AttributeNames||(j3G.AttributeNames={}))});var sGI=w((n3G)=>{Object.defineProperty(n3G,"__esModule",{value:!0});n3G.OTEL_GRAPHQL_DATA_SYMBOL=n3G.OTEL_PATCHED_SYMBOL=void 0;n3G.OTEL_PATCHED_SYMBOL=Symbol.for("opentelemetry.patched");n3G.OTEL_GRAPHQL_DATA_SYMBOL=Symbol.for("opentelemetry.graphql_data")});var i3G=w((T3G)=>{Object.defineProperty(T3G,"__esModule",{value:!0});T3G.OPERATION_NOT_SUPPORTED=void 0;var ZPN=sGI();T3G.OPERATION_NOT_SUPPORTED="Operation$operationName$not supported"});var WpG=w((ZpG)=>{Object.defineProperty(ZpG,"__esModule",{value:!0});ZpG.wrapFieldResolver=ZpG.wrapFields=ZpG.getSourceFromLocation=ZpG.getOperation=ZpG.endSpan=ZpG.addSpanSource=ZpG.addInputVariableAttributes=ZpG.isPromise=void 0;var oO=bl(),Uy=BEI(),$O=UEI(),Sv=sGI(),P3G=Object.values(Uy.AllowedOperationTypes),krl=(I)=>{return typeof(I===null||I===void 0?void 0:I.then)==="function"};ZpG.isPromise=krl;var Url=(I)=>{return typeof I=="object"&&I!==null};function xEI(I,G,Z){if(Array.isArray(Z))Z.forEach((l,b)=>{xEI(I,`${G}.${b}`,l)});else if(Z instanceof Object)Object.entries(Z).forEach(([l,b])=>{xEI(I,`${G}.${l}`,b)});else I.setAttribute(`${$O.AttributeNames.VARIABLES}${String(G)}`,Z)}function xrl(I,G){Object.entries(G).forEach(([Z,l])=>{xEI(I,Z,l)})}ZpG.addInputVariableAttributes=xrl;function $3G(I,G,Z,l,b){let W=e3G(G,Z,l,b);I.setAttribute($O.AttributeNames.SOURCE,W)}ZpG.addSpanSource=$3G;function Orl(I,G,Z,l,b){let W=o3G(Z,b),N=!1;if(!W){N=!0;let Y=t3G(Z,b);W={parent:Y,span:Mrl(I,G,Z,l,b,Y.span),error:null},jrl(Z,b,W)}return{spanAdded:N,field:W}}function Mrl(I,G,Z,l,b,W){var N,Y;let c={[$O.AttributeNames.FIELD_NAME]:l.fieldName,[$O.AttributeNames.FIELD_PATH]:b.join("."),[$O.AttributeNames.FIELD_TYPE]:l.returnType.toString()},V=I.startSpan(`${Uy.SpanNames.RESOLVE} ${c[$O.AttributeNames.FIELD_PATH]}`,{attributes:c},W?oO.trace.setSpan(oO.context.active(),W):void 0),d=Z[Sv.OTEL_GRAPHQL_DATA_SYMBOL].source,Q=l.fieldNodes.find((X)=>X.kind==="Field");if(Q)$3G(V,d.loc,G().allowValues,(N=Q.loc)===null||N===void 0?void 0:N.start,(Y=Q.loc)===null||Y===void 0?void 0:Y.end);return V}function Krl(I,G){if(G)I.recordException(G);I.end()}ZpG.endSpan=Krl;function Drl(I,G){if(!I||!Array.isArray(I.definitions))return;if(G)return I.definitions.filter((Z)=>{var l;return P3G.indexOf((l=Z)===null||l===void 0?void 0:l.operation)!==-1}).find((Z)=>{var l,b;return G===((b=(l=Z)===null||l===void 0?void 0:l.name)===null||b===void 0?void 0:b.value)});else return I.definitions.find((Z)=>{var l;return P3G.indexOf((l=Z)===null||l===void 0?void 0:l.operation)!==-1})}ZpG.getOperation=Drl;function jrl(I,G,Z){return I[Sv.OTEL_GRAPHQL_DATA_SYMBOL].fields[G.join(".")]=Z}function o3G(I,G){return I[Sv.OTEL_GRAPHQL_DATA_SYMBOL].fields[G.join(".")]}function t3G(I,G){for(let Z=G.length-1;Z>0;Z--){let l=o3G(I,G.slice(0,Z));if(l)return l}return{span:I[Sv.OTEL_GRAPHQL_DATA_SYMBOL].span}}function nrl(I,G){let Z=[],l=G;while(l){let b=l.key;if(I&&typeof b==="number")b="*";Z.push(String(b)),l=l.prev}return Z.reverse()}function qrl(I){return r3G(`
41
41
  `,I)}function _3G(I){return r3G(" ",I)}function r3G(I,G){let Z="";for(let l=0;l<G;l++)Z+=I;return Z}var Trl=[Uy.TokenKind.FLOAT,Uy.TokenKind.STRING,Uy.TokenKind.INT,Uy.TokenKind.BLOCK_STRING];function e3G(I,G=!1,Z,l){var b,W;let N="";if(I===null||I===void 0?void 0:I.startToken){let Y=typeof Z==="number"?Z:I.start,c=typeof l==="number"?l:I.end,V=I.startToken.next,d=1;while(V){if(V.start<Y){V=V.next,d=V===null||V===void 0?void 0:V.line;continue}if(V.end>c){V=V.next,d=V===null||V===void 0?void 0:V.line;continue}let Q=V.value||V.kind,X="";if(!G&&Trl.indexOf(V.kind)>=0)Q="*";if(V.kind===Uy.TokenKind.STRING)Q=`"${Q}"`;if(V.kind===Uy.TokenKind.EOF)Q="";if(V.line>d)N+=qrl(V.line-d),d=V.line,X=_3G(V.column-1);else if(V.line===((b=V.prev)===null||b===void 0?void 0:b.line))X=_3G(V.start-(((W=V.prev)===null||W===void 0?void 0:W.end)||0));if(N+=X+Q,V)V=V.next}}return N}ZpG.getSourceFromLocation=e3G;function IpG(I,G,Z){if(!I||typeof I.getFields!=="function"||I[Sv.OTEL_PATCHED_SYMBOL])return;let l=I.getFields();I[Sv.OTEL_PATCHED_SYMBOL]=!0,Object.keys(l).forEach((b)=>{let W=l[b];if(!W)return;if(W.resolve)W.resolve=GpG(G,Z,W.resolve);if(W.type){let N=W.type;while(N.ofType)N=N.ofType;IpG(N,G,Z)}})}ZpG.wrapFields=IpG;var f3G=(I,G,Z)=>{if(!Z)return;I.recordException(G),I.setStatus({code:oO.SpanStatusCode.ERROR,message:G.message}),I.end()},s3G=(I,G)=>{if(!G)return;I.end()};function GpG(I,G,Z,l=!1){if(b[Sv.OTEL_PATCHED_SYMBOL]||typeof Z!=="function")return Z;function b(W,N,Y,c){if(!Z)return;let V=G();if(V.ignoreTrivialResolveSpans&&l&&(Url(W)||typeof W==="function")){if(typeof W[c.fieldName]!=="function")return Z.call(this,W,N,Y,c)}if(!Y[Sv.OTEL_GRAPHQL_DATA_SYMBOL])return Z.call(this,W,N,Y,c);let d=nrl(V.mergeItems,c&&c.path),Q=d.filter((H)=>typeof H==="string").length,X,R=!1;if(V.depth>=0&&V.depth<Q)X=t3G(Y,d);else{let H=Orl(I,G,Y,c,d);X=H.field,R=H.spanAdded}return oO.context.with(oO.trace.setSpan(oO.context.active(),X.span),()=>{try{let H=Z.call(this,W,N,Y,c);if(ZpG.isPromise(H))return H.then((h)=>{return s3G(X.span,R),h},(h)=>{throw f3G(X.span,h,R),h});else return s3G(X.span,R),H}catch(H){throw f3G(X.span,H,R),H}})}return b[Sv.OTEL_PATCHED_SYMBOL]=!0,b}ZpG.wrapFieldResolver=GpG});var cpG=w((NpG)=>{Object.defineProperty(NpG,"__esModule",{value:!0});NpG.PACKAGE_NAME=NpG.PACKAGE_VERSION=void 0;NpG.PACKAGE_VERSION="0.47.1";NpG.PACKAGE_NAME="@opentelemetry/instrumentation-graphql"});var FpG=w((QpG)=>{Object.defineProperty(QpG,"__esModule",{value:!0});QpG.GraphQLInstrumentation=void 0;var iv=bl(),Ah=jN(),oT=BEI(),$GI=UEI(),OEI=sGI(),orl=i3G(),ZX=WpG(),VpG=cpG(),dpG={mergeItems:!1,depth:-1,allowValues:!1,ignoreResolveSpans:!1},oGI=[">=14.0.0 <17"];class mpG extends Ah.InstrumentationBase{constructor(I={}){super(VpG.PACKAGE_NAME,VpG.PACKAGE_VERSION,Object.assign(Object.assign({},dpG),I))}setConfig(I={}){super.setConfig(Object.assign(Object.assign({},dpG),I))}init(){let I=new Ah.InstrumentationNodeModuleDefinition("graphql",oGI);return I.files.push(this._addPatchingExecute()),I.files.push(this._addPatchingParser()),I.files.push(this._addPatchingValidate()),I}_addPatchingExecute(){return new Ah.InstrumentationNodeModuleFile("graphql/execution/execute.js",oGI,(I)=>{if((0,Ah.isWrapped)(I.execute))this._unwrap(I,"execute");return this._wrap(I,"execute",this._patchExecute(I.defaultFieldResolver)),I},(I)=>{if(I)this._unwrap(I,"execute")})}_addPatchingParser(){return new Ah.InstrumentationNodeModuleFile("graphql/language/parser.js",oGI,(I)=>{if((0,Ah.isWrapped)(I.parse))this._unwrap(I,"parse");return this._wrap(I,"parse",this._patchParse()),I},(I)=>{if(I)this._unwrap(I,"parse")})}_addPatchingValidate(){return new Ah.InstrumentationNodeModuleFile("graphql/validation/validate.js",oGI,(I)=>{if((0,Ah.isWrapped)(I.validate))this._unwrap(I,"validate");return this._wrap(I,"validate",this._patchValidate()),I},(I)=>{if(I)this._unwrap(I,"validate")})}_patchExecute(I){let G=this;return function(l){return function(){let W;if(arguments.length>=2){let c=arguments;W=G._wrapExecuteArgs(c[0],c[1],c[2],c[3],c[4],c[5],c[6],c[7],I)}else{let c=arguments[0];W=G._wrapExecuteArgs(c.schema,c.document,c.rootValue,c.contextValue,c.variableValues,c.operationName,c.fieldResolver,c.typeResolver,I)}let N=(0,ZX.getOperation)(W.document,W.operationName),Y=G._createExecuteSpan(N,W);return W.contextValue[OEI.OTEL_GRAPHQL_DATA_SYMBOL]={source:W.document?W.document||W.document[OEI.OTEL_GRAPHQL_DATA_SYMBOL]:void 0,span:Y,fields:{}},iv.context.with(iv.trace.setSpan(iv.context.active(),Y),()=>{return(0,Ah.safeExecuteInTheMiddle)(()=>{return l.apply(this,[W])},(c,V)=>{G._handleExecutionResult(Y,c,V)})})}}}_handleExecutionResult(I,G,Z){let l=this.getConfig();if(Z===void 0||G){(0,ZX.endSpan)(I,G);return}if((0,ZX.isPromise)(Z))Z.then((b)=>{if(typeof l.responseHook!=="function"){(0,ZX.endSpan)(I);return}this._executeResponseHook(I,b)},(b)=>{(0,ZX.endSpan)(I,b)});else{if(typeof l.responseHook!=="function"){(0,ZX.endSpan)(I);return}this._executeResponseHook(I,Z)}}_executeResponseHook(I,G){let{responseHook:Z}=this.getConfig();if(!Z)return;(0,Ah.safeExecuteInTheMiddle)(()=>{Z(I,G)},(l)=>{if(l)this._diag.error("Error running response hook",l);(0,ZX.endSpan)(I,void 0)},!0)}_patchParse(){let I=this;return function(Z){return function(b,W){return I._parse(this,Z,b,W)}}}_patchValidate(){let I=this;return function(Z){return function(b,W,N,Y,c){return I._validate(this,Z,b,W,N,c,Y)}}}_parse(I,G,Z,l){let b=this.getConfig(),W=this.tracer.startSpan(oT.SpanNames.PARSE);return iv.context.with(iv.trace.setSpan(iv.context.active(),W),()=>{return(0,Ah.safeExecuteInTheMiddle)(()=>{return G.call(I,Z,l)},(N,Y)=>{if(Y){if(!(0,ZX.getOperation)(Y))W.updateName(oT.SpanNames.SCHEMA_PARSE);else if(Y.loc)(0,ZX.addSpanSource)(W,Y.loc,b.allowValues)}(0,ZX.endSpan)(W,N)})})}_validate(I,G,Z,l,b,W,N){let Y=this.tracer.startSpan(oT.SpanNames.VALIDATE,{});return iv.context.with(iv.trace.setSpan(iv.context.active(),Y),()=>{return(0,Ah.safeExecuteInTheMiddle)(()=>{return G.call(I,Z,l,b,N,W)},(c,V)=>{if(!l.loc)Y.updateName(oT.SpanNames.SCHEMA_VALIDATE);if(V&&V.length)Y.recordException({name:$GI.AttributeNames.ERROR_VALIDATION_NAME,message:JSON.stringify(V)});(0,ZX.endSpan)(Y,c)})})}_createExecuteSpan(I,G){var Z;let l=this.getConfig(),b=this.tracer.startSpan(oT.SpanNames.EXECUTE,{});if(I){let{operation:W,name:N}=I;b.setAttribute($GI.AttributeNames.OPERATION_TYPE,W);let Y=N===null||N===void 0?void 0:N.value;if(Y)b.setAttribute($GI.AttributeNames.OPERATION_NAME,Y),b.updateName(`${W} ${Y}`);else b.updateName(W)}else{let W=" ";if(G.operationName)W=` "${G.operationName}" `;W=orl.OPERATION_NOT_SUPPORTED.replace("$operationName$",W),b.setAttribute($GI.AttributeNames.OPERATION_NAME,W)}if((Z=G.document)===null||Z===void 0?void 0:Z.loc)(0,ZX.addSpanSource)(b,G.document.loc,l.allowValues);if(G.variableValues&&l.allowValues)(0,ZX.addInputVariableAttributes)(b,G.variableValues);return b}_wrapExecuteArgs(I,G,Z,l,b,W,N,Y,c){if(!l)l={};if(l[OEI.OTEL_GRAPHQL_DATA_SYMBOL]||this.getConfig().ignoreResolveSpans)return{schema:I,document:G,rootValue:Z,contextValue:l,variableValues:b,operationName:W,fieldResolver:N,typeResolver:Y};let V=N==null,d=N!==null&&N!==void 0?N:c;if(N=(0,ZX.wrapFieldResolver)(this.tracer,()=>this.getConfig(),d,V),I)(0,ZX.wrapFields)(I.getQueryType(),this.tracer,()=>this.getConfig()),(0,ZX.wrapFields)(I.getMutationType(),this.tracer,()=>this.getConfig());return{schema:I,document:G,rootValue:Z,contextValue:l,variableValues:b,operationName:W,fieldResolver:N,typeResolver:Y}}}QpG.GraphQLInstrumentation=mpG});var HpG=w((RpG)=>{Object.defineProperty(RpG,"__esModule",{value:!0})});var wpG=w((xy)=>{var trl=xy&&xy.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),hpG=xy&&xy.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))trl(G,I,Z)};Object.defineProperty(xy,"__esModule",{value:!0});hpG(FpG(),xy);hpG(HpG(),xy)});function ppG(I){return{ignoreResolveSpans:!0,ignoreTrivialResolveSpans:!0,useOperationNameForRootSpan:!0,...I}}function erl(I){if(Array.isArray(I)){let G=I.slice().sort();if(G.length<=5)return G.join(", ");else return`${G.slice(0,5).join(", ")}, +${G.length-5}`}return`${I}`}var JpG,ApG,EpG="Graphql",vpG,rrl=(I={})=>{return{name:EpG,setupOnce(){vpG(ppG(I))}}},CpG;var ypG=a(()=>{Qb();vc();yy();JpG=hI(bl(),1),ApG=hI(wpG(),1),vpG=Rb(EpG,ApG.GraphQLInstrumentation,(I)=>{let G=ppG(I);return{...G,responseHook(Z,l){if(IV(Z,"auto.graphql.otel.graphql"),l.errors?.length&&!Bb(Z).status)Z.setStatus({code:JpG.SpanStatusCode.ERROR});let W=Bb(Z).data,N=W["graphql.operation.type"],Y=W["graphql.operation.name"];if(G.useOperationNameForRootSpan&&N){let c=L2(Z),d=Bb(c).data[DO]||[],Q=Y?`${N} ${Y}`:`${N}`;if(Array.isArray(d))d.push(Q),c.setAttribute(DO,d);else if(typeof d==="string")c.setAttribute(DO,[d,Q]);else c.setAttribute(DO,Q);if(!Bb(c).data["original-description"])c.setAttribute("original-description",Bb(c).description);c.updateName(`${Bb(c).data["original-description"]} (${erl(d)})`)}}}}),CpG=Gl(rrl)});var gpG=w((upG)=>{Object.defineProperty(upG,"__esModule",{value:!0});upG.PACKAGE_NAME=upG.PACKAGE_VERSION=void 0;upG.PACKAGE_VERSION="0.7.1";upG.PACKAGE_NAME="@opentelemetry/instrumentation-kafkajs"});var BpG=w((apG)=>{Object.defineProperty(apG,"__esModule",{value:!0});apG.bufferTextMapGetter=void 0;apG.bufferTextMapGetter={get(I,G){var Z;if(!I)return;let l=Object.keys(I);for(let b of l)if(b===G||b.toLowerCase()===G)return(Z=I[b])===null||Z===void 0?void 0:Z.toString();return},keys(I){return I?Object.keys(I):[]}}});var KpG=w((OpG)=>{Object.defineProperty(OpG,"__esModule",{value:!0});OpG.KafkaJsInstrumentation=void 0;var Pm=bl(),Oy=Nc(),kpG=gpG(),UpG=BpG(),p5=jN();class xpG extends p5.InstrumentationBase{constructor(I={}){super(kpG.PACKAGE_NAME,kpG.PACKAGE_VERSION,I)}init(){let I=(Z)=>{var l,b;if((0,p5.isWrapped)((l=Z===null||Z===void 0?void 0:Z.Kafka)===null||l===void 0?void 0:l.prototype.producer))this._unwrap(Z.Kafka.prototype,"producer");if((0,p5.isWrapped)((b=Z===null||Z===void 0?void 0:Z.Kafka)===null||b===void 0?void 0:b.prototype.consumer))this._unwrap(Z.Kafka.prototype,"consumer")};return new p5.InstrumentationNodeModuleDefinition("kafkajs",[">=0.1.0 <3"],(Z)=>{var l,b;return I(Z),this._wrap((l=Z===null||Z===void 0?void 0:Z.Kafka)===null||l===void 0?void 0:l.prototype,"producer",this._getProducerPatch()),this._wrap((b=Z===null||Z===void 0?void 0:Z.Kafka)===null||b===void 0?void 0:b.prototype,"consumer",this._getConsumerPatch()),Z},I)}_getConsumerPatch(){let I=this;return(G)=>{return function(...l){let b=G.apply(this,l);if((0,p5.isWrapped)(b.run))I._unwrap(b,"run");return I._wrap(b,"run",I._getConsumerRunPatch()),b}}}_getProducerPatch(){let I=this;return(G)=>{return function(...l){let b=G.apply(this,l);if((0,p5.isWrapped)(b.sendBatch))I._unwrap(b,"sendBatch");if(I._wrap(b,"sendBatch",I._getProducerSendBatchPatch()),(0,p5.isWrapped)(b.send))I._unwrap(b,"send");return I._wrap(b,"send",I._getProducerSendPatch()),b}}}_getConsumerRunPatch(){let I=this;return(G)=>{return function(...l){let b=l[0];if(b===null||b===void 0?void 0:b.eachMessage){if((0,p5.isWrapped)(b.eachMessage))I._unwrap(b,"eachMessage");I._wrap(b,"eachMessage",I._getConsumerEachMessagePatch())}if(b===null||b===void 0?void 0:b.eachBatch){if((0,p5.isWrapped)(b.eachBatch))I._unwrap(b,"eachBatch");I._wrap(b,"eachBatch",I._getConsumerEachBatchPatch())}return G.call(this,b)}}}_getConsumerEachMessagePatch(){let I=this;return(G)=>{return function(...l){let b=l[0],W=Pm.propagation.extract(Pm.ROOT_CONTEXT,b.message.headers,UpG.bufferTextMapGetter),N=I._startConsumerSpan(b.topic,b.message,Oy.MESSAGINGOPERATIONVALUES_PROCESS,W),Y=Pm.context.with(Pm.trace.setSpan(W,N),()=>{return G.apply(this,l)});return I._endSpansOnPromise([N],Y)}}}_getConsumerEachBatchPatch(){return(I)=>{let G=this;return function(...l){let b=l[0],W=G._startConsumerSpan(b.batch.topic,void 0,Oy.MESSAGINGOPERATIONVALUES_RECEIVE,Pm.ROOT_CONTEXT);return Pm.context.with(Pm.trace.setSpan(Pm.context.active(),W),()=>{let N=b.batch.messages.map((c)=>{var V;let d=Pm.propagation.extract(Pm.ROOT_CONTEXT,c.headers,UpG.bufferTextMapGetter),Q=(V=Pm.trace.getSpan(d))===null||V===void 0?void 0:V.spanContext(),X;if(Q)X={context:Q};return G._startConsumerSpan(b.batch.topic,c,Oy.MESSAGINGOPERATIONVALUES_PROCESS,void 0,X)}),Y=I.apply(this,l);return N.unshift(W),G._endSpansOnPromise(N,Y)})}}}_getProducerSendBatchPatch(){let I=this;return(G)=>{return function(...l){let N=(l[0].topicMessages||[]).map((c)=>c.messages.map((V)=>I._startProducerSpan(c.topic,V))).reduce((c,V)=>c.concat(V),[]),Y=G.apply(this,l);return I._endSpansOnPromise(N,Y)}}}_getProducerSendPatch(){let I=this;return(G)=>{return function(...l){let b=l[0],W=b.messages.map((Y)=>{return I._startProducerSpan(b.topic,Y)}),N=G.apply(this,l);return I._endSpansOnPromise(W,N)}}}_endSpansOnPromise(I,G){return Promise.resolve(G).catch((Z)=>{let l;if(typeof Z==="string")l=Z;else if(typeof Z==="object"&&Object.prototype.hasOwnProperty.call(Z,"message"))l=Z.message;throw I.forEach((b)=>b.setStatus({code:Pm.SpanStatusCode.ERROR,message:l})),Z}).finally(()=>{I.forEach((Z)=>Z.end())})}_startConsumerSpan(I,G,Z,l,b){let W=this.tracer.startSpan(I,{kind:Pm.SpanKind.CONSUMER,attributes:{[Oy.SEMATTRS_MESSAGING_SYSTEM]:"kafka",[Oy.SEMATTRS_MESSAGING_DESTINATION]:I,[Oy.SEMATTRS_MESSAGING_OPERATION]:Z},links:b?[b]:[]},l),{consumerHook:N}=this.getConfig();if(N&&G)(0,p5.safeExecuteInTheMiddle)(()=>N(W,{topic:I,message:G}),(Y)=>{if(Y)this._diag.error("consumerHook error",Y)},!0);return W}_startProducerSpan(I,G){var Z;let l=this.tracer.startSpan(I,{kind:Pm.SpanKind.PRODUCER,attributes:{[Oy.SEMATTRS_MESSAGING_SYSTEM]:"kafka",[Oy.SEMATTRS_MESSAGING_DESTINATION]:I}});G.headers=(Z=G.headers)!==null&&Z!==void 0?Z:{},Pm.propagation.inject(Pm.trace.setSpan(Pm.context.active(),l),G.headers);let{producerHook:b}=this.getConfig();if(b)(0,p5.safeExecuteInTheMiddle)(()=>b(l,{topic:I,message:G}),(W)=>{if(W)this._diag.error("producerHook error",W)},!0);return l}}OpG.KafkaJsInstrumentation=xpG});var jpG=w((DpG)=>{Object.defineProperty(DpG,"__esModule",{value:!0})});var qpG=w((My)=>{var Gel=My&&My.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),npG=My&&My.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))Gel(G,I,Z)};Object.defineProperty(My,"__esModule",{value:!0});npG(KpG(),My);npG(jpG(),My)});var TpG,SpG="Kafka",ipG,Zel=()=>{return{name:SpG,setupOnce(){ipG()}}},PpG;var _pG=a(()=>{Qb();vc();TpG=hI(qpG(),1),ipG=Rb(SpG,()=>new TpG.KafkaJsInstrumentation({consumerHook(I){IV(I,"auto.kafkajs.otel.consumer")},producerHook(I){IV(I,"auto.kafkajs.otel.producer")}})),PpG=Gl(Zel)});var $pG=w((fpG)=>{Object.defineProperty(fpG,"__esModule",{value:!0});fpG.PACKAGE_NAME=fpG.PACKAGE_VERSION=void 0;fpG.PACKAGE_VERSION="0.44.1";fpG.PACKAGE_NAME="@opentelemetry/instrumentation-lru-memoizer"});var ZyG=w((IyG)=>{Object.defineProperty(IyG,"__esModule",{value:!0});IyG.LruMemoizerInstrumentation=void 0;var opG=bl(),tpG=jN(),rpG=$pG();class epG extends tpG.InstrumentationBase{constructor(I={}){super(rpG.PACKAGE_NAME,rpG.PACKAGE_VERSION,I)}init(){return[new tpG.InstrumentationNodeModuleDefinition("lru-memoizer",[">=1.3 <3"],(I)=>{let G=function(){let Z=I.apply(this,arguments);return function(){let l=[...arguments],b=l.pop(),W=typeof b==="function"?opG.context.bind(opG.context.active(),b):b;return l.push(W),Z.apply(this,l)}};return G.sync=I.sync,G},void 0)]}}IyG.LruMemoizerInstrumentation=epG});var lyG=w((lz)=>{var bel=lz&&lz.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),Wel=lz&&lz.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))bel(G,I,Z)};Object.defineProperty(lz,"__esModule",{value:!0});Wel(ZyG(),lz)});var byG,WyG="LruMemoizer",NyG,Nel=()=>{return{name:WyG,setupOnce(){NyG()}}},YyG;var cyG=a(()=>{Qb();vc();byG=hI(lyG(),1),NyG=Rb(WyG,()=>new byG.LruMemoizerInstrumentation),YyG=Gl(Nel)});var dyG=w((VyG)=>{Object.defineProperty(VyG,"__esModule",{value:!0});VyG.MongodbCommandType=void 0;var Yel;(function(I){I.CREATE_INDEXES="createIndexes",I.FIND_AND_MODIFY="findAndModify",I.IS_MASTER="isMaster",I.COUNT="count",I.AGGREGATE="aggregate",I.UNKNOWN="unknown"})(Yel=VyG.MongodbCommandType||(VyG.MongodbCommandType={}))});var XyG=w((myG)=>{Object.defineProperty(myG,"__esModule",{value:!0});myG.PACKAGE_NAME=myG.PACKAGE_VERSION=void 0;myG.PACKAGE_VERSION="0.52.0";myG.PACKAGE_NAME="@opentelemetry/instrumentation-mongodb"});var wyG=w((HyG)=>{Object.defineProperty(HyG,"__esModule",{value:!0});HyG.MongoDBInstrumentation=void 0;var rV=bl(),ZV=jN(),Pv=Nc(),Ky=dyG(),FyG=XyG(),RyG={requireParentSpan:!0};class KEI extends ZV.InstrumentationBase{constructor(I={}){super(FyG.PACKAGE_NAME,FyG.PACKAGE_VERSION,Object.assign(Object.assign({},RyG),I))}setConfig(I={}){super.setConfig(Object.assign(Object.assign({},RyG),I))}_updateMetricInstruments(){this._connectionsUsage=this.meter.createUpDownCounter("db.client.connections.usage",{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}init(){let{v3PatchConnection:I,v3UnpatchConnection:G}=this._getV3ConnectionPatches(),{v4PatchConnect:Z,v4UnpatchConnect:l}=this._getV4ConnectPatches(),{v4PatchConnectionCallback:b,v4PatchConnectionPromise:W,v4UnpatchConnection:N}=this._getV4ConnectionPatches(),{v4PatchConnectionPool:Y,v4UnpatchConnectionPool:c}=this._getV4ConnectionPoolPatches(),{v4PatchSessions:V,v4UnpatchSessions:d}=this._getV4SessionsPatches();return[new ZV.InstrumentationNodeModuleDefinition("mongodb",[">=3.3.0 <4"],void 0,void 0,[new ZV.InstrumentationNodeModuleFile("mongodb/lib/core/wireprotocol/index.js",[">=3.3.0 <4"],I,G)]),new ZV.InstrumentationNodeModuleDefinition("mongodb",[">=4.0.0 <7"],void 0,void 0,[new ZV.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection.js",[">=4.0.0 <6.4"],b,N),new ZV.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection.js",[">=6.4.0 <7"],W,N),new ZV.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection_pool.js",[">=4.0.0 <6.4"],Y,c),new ZV.InstrumentationNodeModuleFile("mongodb/lib/cmap/connect.js",[">=4.0.0 <7"],Z,l),new ZV.InstrumentationNodeModuleFile("mongodb/lib/sessions.js",[">=4.0.0 <7"],V,d)])]}_getV3ConnectionPatches(){return{v3PatchConnection:(I)=>{if((0,ZV.isWrapped)(I.insert))this._unwrap(I,"insert");if(this._wrap(I,"insert",this._getV3PatchOperation("insert")),(0,ZV.isWrapped)(I.remove))this._unwrap(I,"remove");if(this._wrap(I,"remove",this._getV3PatchOperation("remove")),(0,ZV.isWrapped)(I.update))this._unwrap(I,"update");if(this._wrap(I,"update",this._getV3PatchOperation("update")),(0,ZV.isWrapped)(I.command))this._unwrap(I,"command");if(this._wrap(I,"command",this._getV3PatchCommand()),(0,ZV.isWrapped)(I.query))this._unwrap(I,"query");if(this._wrap(I,"query",this._getV3PatchFind()),(0,ZV.isWrapped)(I.getMore))this._unwrap(I,"getMore");return this._wrap(I,"getMore",this._getV3PatchCursor()),I},v3UnpatchConnection:(I)=>{if(I===void 0)return;this._unwrap(I,"insert"),this._unwrap(I,"remove"),this._unwrap(I,"update"),this._unwrap(I,"command"),this._unwrap(I,"query"),this._unwrap(I,"getMore")}}}_getV4SessionsPatches(){return{v4PatchSessions:(I)=>{if((0,ZV.isWrapped)(I.acquire))this._unwrap(I,"acquire");if(this._wrap(I.ServerSessionPool.prototype,"acquire",this._getV4AcquireCommand()),(0,ZV.isWrapped)(I.release))this._unwrap(I,"release");return this._wrap(I.ServerSessionPool.prototype,"release",this._getV4ReleaseCommand()),I},v4UnpatchSessions:(I)=>{if(I===void 0)return;if((0,ZV.isWrapped)(I.acquire))this._unwrap(I,"acquire");if((0,ZV.isWrapped)(I.release))this._unwrap(I,"release")}}}_getV4AcquireCommand(){let I=this;return(G)=>{return function(){let l=this.sessions.length,b=G.call(this),W=this.sessions.length;if(l===W)I._connectionsUsage.add(1,{state:"used","pool.name":I._poolName});else if(l-1===W)I._connectionsUsage.add(-1,{state:"idle","pool.name":I._poolName}),I._connectionsUsage.add(1,{state:"used","pool.name":I._poolName});return b}}}_getV4ReleaseCommand(){let I=this;return(G)=>{return function(l){let b=G.call(this,l);return I._connectionsUsage.add(-1,{state:"used","pool.name":I._poolName}),I._connectionsUsage.add(1,{state:"idle","pool.name":I._poolName}),b}}}_getV4ConnectionPoolPatches(){return{v4PatchConnectionPool:(I)=>{let G=I.ConnectionPool.prototype;if((0,ZV.isWrapped)(G.checkOut))this._unwrap(G,"checkOut");return this._wrap(G,"checkOut",this._getV4ConnectionPoolCheckOut()),I},v4UnpatchConnectionPool:(I)=>{if(I===void 0)return;this._unwrap(I.ConnectionPool.prototype,"checkOut")}}}_getV4ConnectPatches(){return{v4PatchConnect:(I)=>{if((0,ZV.isWrapped)(I.connect))this._unwrap(I,"connect");return this._wrap(I,"connect",this._getV4ConnectCommand()),I},v4UnpatchConnect:(I)=>{if(I===void 0)return;this._unwrap(I,"connect")}}}_getV4ConnectionPoolCheckOut(){return(I)=>{return function(Z){let l=rV.context.bind(rV.context.active(),Z);return I.call(this,l)}}}_getV4ConnectCommand(){let I=this;return(G)=>{return function(l,b){if(G.length===1){let N=G.call(this,l);if(N&&typeof N.then==="function")N.then(()=>I.setPoolName(l),()=>{return});return N}let W=function(N,Y){if(N||!Y){b(N,Y);return}I.setPoolName(l),b(N,Y)};return G.call(this,l,W)}}}_getV4ConnectionPatches(){return{v4PatchConnectionCallback:(I)=>{if((0,ZV.isWrapped)(I.Connection.prototype.command))this._unwrap(I.Connection.prototype,"command");return this._wrap(I.Connection.prototype,"command",this._getV4PatchCommandCallback()),I},v4PatchConnectionPromise:(I)=>{if((0,ZV.isWrapped)(I.Connection.prototype.command))this._unwrap(I.Connection.prototype,"command");return this._wrap(I.Connection.prototype,"command",this._getV4PatchCommandPromise()),I},v4UnpatchConnection:(I)=>{if(I===void 0)return;this._unwrap(I.Connection.prototype,"command")}}}_getV3PatchOperation(I){let G=this;return(Z)=>{return function(b,W,N,Y,c){let V=rV.trace.getSpan(rV.context.active()),d=G._checkSkipInstrumentation(V),Q=typeof Y==="function"?Y:c;if(d||typeof Q!=="function"||typeof N!=="object")if(typeof Y==="function")return Z.call(this,b,W,N,Y);else return Z.call(this,b,W,N,Y,c);let X=G.tracer.startSpan(`mongodb.${I}`,{kind:rV.SpanKind.CLIENT});G._populateV3Attributes(X,W,b,N[0],I);let R=G._patchEnd(X,Q);if(typeof Y==="function")return Z.call(this,b,W,N,R);else return Z.call(this,b,W,N,Y,R)}}}_getV3PatchCommand(){let I=this;return(G)=>{return function(l,b,W,N,Y){let c=rV.trace.getSpan(rV.context.active()),V=I._checkSkipInstrumentation(c),d=typeof N==="function"?N:Y;if(V||typeof d!=="function"||typeof W!=="object")if(typeof N==="function")return G.call(this,l,b,W,N);else return G.call(this,l,b,W,N,Y);let Q=KEI._getCommandType(W),X=Q===Ky.MongodbCommandType.UNKNOWN?"command":Q,R=I.tracer.startSpan(`mongodb.${X}`,{kind:rV.SpanKind.CLIENT}),H=Q===Ky.MongodbCommandType.UNKNOWN?void 0:Q;I._populateV3Attributes(R,b,l,W,H);let h=I._patchEnd(R,d);if(typeof N==="function")return G.call(this,l,b,W,h);else return G.call(this,l,b,W,N,h)}}}_getV4PatchCommandCallback(){let I=this;return(G)=>{return function(l,b,W,N){let Y=rV.trace.getSpan(rV.context.active()),c=I._checkSkipInstrumentation(Y),V=N,d=Object.keys(b)[0];if(typeof b!=="object"||b.ismaster||b.hello)return G.call(this,l,b,W,N);let Q=void 0;if(!c)Q=I.tracer.startSpan(`mongodb.${d}`,{kind:rV.SpanKind.CLIENT}),I._populateV4Attributes(Q,this,l,b,d);let X=I._patchEnd(Q,V,this.id,d);return G.call(this,l,b,W,X)}}}_getV4PatchCommandPromise(){let I=this;return(G)=>{return function(...l){let[b,W]=l,N=rV.trace.getSpan(rV.context.active()),Y=I._checkSkipInstrumentation(N),c=Object.keys(W)[0],V=()=>{return};if(typeof W!=="object"||W.ismaster||W.hello)return G.apply(this,l);let d=void 0;if(!Y)d=I.tracer.startSpan(`mongodb.${c}`,{kind:rV.SpanKind.CLIENT}),I._populateV4Attributes(d,this,b,W,c);let Q=I._patchEnd(d,V,this.id,c),X=G.apply(this,l);return X.then((R)=>Q(null,R),(R)=>Q(R)),X}}}_getV3PatchFind(){let I=this;return(G)=>{return function(l,b,W,N,Y,c){let V=rV.trace.getSpan(rV.context.active()),d=I._checkSkipInstrumentation(V),Q=typeof Y==="function"?Y:c;if(d||typeof Q!=="function"||typeof W!=="object")if(typeof Y==="function")return G.call(this,l,b,W,N,Y);else return G.call(this,l,b,W,N,Y,c);let X=I.tracer.startSpan("mongodb.find",{kind:rV.SpanKind.CLIENT});I._populateV3Attributes(X,b,l,W,"find");let R=I._patchEnd(X,Q);if(typeof Y==="function")return G.call(this,l,b,W,N,R);else return G.call(this,l,b,W,N,Y,R)}}}_getV3PatchCursor(){let I=this;return(G)=>{return function(l,b,W,N,Y,c){let V=rV.trace.getSpan(rV.context.active()),d=I._checkSkipInstrumentation(V),Q=typeof Y==="function"?Y:c;if(d||typeof Q!=="function")if(typeof Y==="function")return G.call(this,l,b,W,N,Y);else return G.call(this,l,b,W,N,Y,c);let X=I.tracer.startSpan("mongodb.getMore",{kind:rV.SpanKind.CLIENT});I._populateV3Attributes(X,b,l,W.cmd,"getMore");let R=I._patchEnd(X,Q);if(typeof Y==="function")return G.call(this,l,b,W,N,R);else return G.call(this,l,b,W,N,Y,R)}}}static _getCommandType(I){if(I.createIndexes!==void 0)return Ky.MongodbCommandType.CREATE_INDEXES;else if(I.findandmodify!==void 0)return Ky.MongodbCommandType.FIND_AND_MODIFY;else if(I.ismaster!==void 0)return Ky.MongodbCommandType.IS_MASTER;else if(I.count!==void 0)return Ky.MongodbCommandType.COUNT;else if(I.aggregate!==void 0)return Ky.MongodbCommandType.AGGREGATE;else return Ky.MongodbCommandType.UNKNOWN}_populateV4Attributes(I,G,Z,l,b){let W,N;if(G){let c=typeof G.address==="string"?G.address.split(":"):"";if(c.length===2)W=c[0],N=c[1]}let Y;if((l===null||l===void 0?void 0:l.documents)&&l.documents[0])Y=l.documents[0];else if(l===null||l===void 0?void 0:l.cursors)Y=l.cursors;else Y=l;this._addAllSpanAttributes(I,Z.db,Z.collection,W,N,Y,b)}_populateV3Attributes(I,G,Z,l,b){var W,N,Y,c,V,d,Q,X;let R,H;if(Z&&Z.s){if(R=(N=(W=Z.s.options)===null||W===void 0?void 0:W.host)!==null&&N!==void 0?N:Z.s.host,H=(V=(c=(Y=Z.s.options)===null||Y===void 0?void 0:Y.port)!==null&&c!==void 0?c:Z.s.port)===null||V===void 0?void 0:V.toString(),R==null||H==null){let g=(d=Z.description)===null||d===void 0?void 0:d.address;if(g){let z=g.split(":");R=z[0],H=z[1]}}}let[h,A]=G.toString().split("."),C=(X=(Q=l===null||l===void 0?void 0:l.query)!==null&&Q!==void 0?Q:l===null||l===void 0?void 0:l.q)!==null&&X!==void 0?X:l;this._addAllSpanAttributes(I,h,A,R,H,C,b)}_addAllSpanAttributes(I,G,Z,l,b,W,N){if(I.setAttributes({[Pv.SEMATTRS_DB_SYSTEM]:Pv.DBSYSTEMVALUES_MONGODB,[Pv.SEMATTRS_DB_NAME]:G,[Pv.SEMATTRS_DB_MONGODB_COLLECTION]:Z,[Pv.SEMATTRS_DB_OPERATION]:N,[Pv.SEMATTRS_DB_CONNECTION_STRING]:`mongodb://${l}:${b}/${G}`}),l&&b){I.setAttribute(Pv.SEMATTRS_NET_PEER_NAME,l);let V=parseInt(b,10);if(!isNaN(V))I.setAttribute(Pv.SEMATTRS_NET_PEER_PORT,V)}if(!W)return;let{dbStatementSerializer:Y}=this.getConfig(),c=typeof Y==="function"?Y:this._defaultDbStatementSerializer.bind(this);(0,ZV.safeExecuteInTheMiddle)(()=>{let V=c(W);I.setAttribute(Pv.SEMATTRS_DB_STATEMENT,V)},(V)=>{if(V)this._diag.error("Error running dbStatementSerializer hook",V)},!0)}_defaultDbStatementSerializer(I){let{enhancedDatabaseReporting:G}=this.getConfig(),Z=G?I:this._scrubStatement(I);return JSON.stringify(Z)}_scrubStatement(I){if(Array.isArray(I))return I.map((G)=>this._scrubStatement(G));if(typeof I==="object"&&I!==null)return Object.fromEntries(Object.entries(I).map(([G,Z])=>[G,this._scrubStatement(Z)]));return"?"}_handleExecutionResult(I,G){let{responseHook:Z}=this.getConfig();if(typeof Z==="function")(0,ZV.safeExecuteInTheMiddle)(()=>{Z(I,{data:G})},(l)=>{if(l)this._diag.error("Error running response hook",l)},!0)}_patchEnd(I,G,Z,l){let b=rV.context.active(),W=this;return function(...Y){let c=Y[0];if(I){if(c instanceof Error)I===null||I===void 0||I.setStatus({code:rV.SpanStatusCode.ERROR,message:c.message});else{let V=Y[1];W._handleExecutionResult(I,V)}I.end()}return rV.context.with(b,()=>{if(l==="endSessions")W._connectionsUsage.add(-1,{state:"idle","pool.name":W._poolName});return G.apply(this,Y)})}}setPoolName(I){var G,Z;let l=(G=I.hostAddress)===null||G===void 0?void 0:G.host,b=(Z=I.hostAddress)===null||Z===void 0?void 0:Z.port,W=I.dbName,N=`mongodb://${l}:${b}/${W}`;this._poolName=N}_checkSkipInstrumentation(I){return this.getConfig().requireParentSpan===!0&&I===void 0}}HyG.MongoDBInstrumentation=KEI});var AyG=w((JyG)=>{Object.defineProperty(JyG,"__esModule",{value:!0});JyG.MongodbCommandType=void 0;var Vel;(function(I){I.CREATE_INDEXES="createIndexes",I.FIND_AND_MODIFY="findAndModify",I.IS_MASTER="isMaster",I.COUNT="count",I.UNKNOWN="unknown"})(Vel=JyG.MongodbCommandType||(JyG.MongodbCommandType={}))});var vyG=w((Dy)=>{var del=Dy&&Dy.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),EyG=Dy&&Dy.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))del(G,I,Z)};Object.defineProperty(Dy,"__esModule",{value:!0});EyG(wyG(),Dy);EyG(AyG(),Dy)});function mel(I){let G=jEI(I);return JSON.stringify(G)}function jEI(I){if(Array.isArray(I))return I.map((G)=>jEI(G));if(Qel(I)){let G={};return Object.entries(I).map(([Z,l])=>[Z,jEI(l)]).reduce((Z,l)=>{if(Fel(l))Z[l[0]]=l[1];return Z},G)}return"?"}function Qel(I){return typeof I==="object"&&I!==null&&!Xel(I)}function Xel(I){let G=!1;if(typeof Buffer<"u")G=Buffer.isBuffer(I);return G}function Fel(I){return Array.isArray(I)}var CyG,pyG="Mongo",yyG,Rel=()=>{return{name:pyG,setupOnce(){yyG()}}},uyG;var LyG=a(()=>{Qb();vc();CyG=hI(vyG(),1),yyG=Rb(pyG,()=>new CyG.MongoDBInstrumentation({dbStatementSerializer:mel,responseHook(I){IV(I,"auto.db.otel.mongo")}}));uyG=Gl(Rel)});var kyG=w((zyG)=>{Object.defineProperty(zyG,"__esModule",{value:!0});zyG.handleCallbackResponse=zyG.handlePromiseResponse=zyG.getAttributesFromCollection=void 0;var gyG=bl(),Hel=jN(),tT=Nc();function hel(I){return{[tT.SEMATTRS_DB_MONGODB_COLLECTION]:I.name,[tT.SEMATTRS_DB_NAME]:I.conn.name,[tT.SEMATTRS_DB_USER]:I.conn.user,[tT.SEMATTRS_NET_PEER_NAME]:I.conn.host,[tT.SEMATTRS_NET_PEER_PORT]:I.conn.port}}zyG.getAttributesFromCollection=hel;function ayG(I,G={}){I.recordException(G),I.setStatus({code:gyG.SpanStatusCode.ERROR,message:`${G.message} ${G.code?`
42
- Mongoose Error Code: ${G.code}`:""}`})}function nEI(I,G,Z,l=void 0){if(!Z)return;(0,Hel.safeExecuteInTheMiddle)(()=>Z(I,{moduleVersion:l,response:G}),(b)=>{if(b)gyG.diag.error("mongoose instrumentation: responseHook error",b)},!0)}function wel(I,G,Z,l=void 0){if(!(I instanceof Promise))return nEI(G,I,Z,l),G.end(),I;return I.then((b)=>{return nEI(G,b,Z,l),b}).catch((b)=>{throw ayG(G,b),b}).finally(()=>G.end())}zyG.handlePromiseResponse=wel;function Jel(I,G,Z,l,b,W,N=void 0){let Y=0;if(b.length===2)Y=1;return b[Y]=(c,V)=>{return c?ayG(l,c):nEI(l,V,W,N),l.end(),I(c,V)},G.apply(Z,b)}zyG.handleCallbackResponse=Jel});var OyG=w((UyG)=>{Object.defineProperty(UyG,"__esModule",{value:!0});UyG.PACKAGE_NAME=UyG.PACKAGE_VERSION=void 0;UyG.PACKAGE_VERSION="0.46.1";UyG.PACKAGE_NAME="@opentelemetry/instrumentation-mongoose"});var SyG=w((qyG)=>{Object.defineProperty(qyG,"__esModule",{value:!0});qyG.MongooseInstrumentation=qyG._STORED_PARENT_SPAN=void 0;var WF=bl(),Cel=lY(),qEI=kyG(),MyG=jN(),KyG=OyG(),rT=Nc(),tGI=["deleteOne","deleteMany","find","findOne","estimatedDocumentCount","countDocuments","distinct","where","$where","findOneAndUpdate","findOneAndDelete","findOneAndReplace"],pel=["remove","count","findOneAndRemove",...tGI],yel=["count","findOneAndRemove",...tGI],uel=[...tGI];function DyG(I){if(!I)return tGI;else if(I.startsWith("6.")||I.startsWith("5."))return pel;else if(I.startsWith("7."))return yel;else return uel}function jyG(I){return I&&(I.startsWith("5.")||I.startsWith("6."))||!1}qyG._STORED_PARENT_SPAN=Symbol("stored-parent-span");class nyG extends MyG.InstrumentationBase{constructor(I={}){super(KyG.PACKAGE_NAME,KyG.PACKAGE_VERSION,I)}init(){return new MyG.InstrumentationNodeModuleDefinition("mongoose",[">=5.9.7 <9"],this.patch.bind(this),this.unpatch.bind(this))}patch(I,G){if(this._wrap(I.Model.prototype,"save",this.patchOnModelMethods("save",G)),I.Model.prototype.$save=I.Model.prototype.save,jyG(G))this._wrap(I.Model.prototype,"remove",this.patchOnModelMethods("remove",G));return this._wrap(I.Query.prototype,"exec",this.patchQueryExec(G)),this._wrap(I.Aggregate.prototype,"exec",this.patchAggregateExec(G)),DyG(G).forEach((l)=>{this._wrap(I.Query.prototype,l,this.patchAndCaptureSpanContext(l))}),this._wrap(I.Model,"aggregate",this.patchModelAggregate()),I}unpatch(I,G){let Z=DyG(G);if(this._unwrap(I.Model.prototype,"save"),I.Model.prototype.$save=I.Model.prototype.save,jyG(G))this._unwrap(I.Model.prototype,"remove");this._unwrap(I.Query.prototype,"exec"),this._unwrap(I.Aggregate.prototype,"exec"),Z.forEach((l)=>{this._unwrap(I.Query.prototype,l)}),this._unwrap(I.Model,"aggregate")}patchAggregateExec(I){let G=this;return(Z)=>{return function(b){var W;if(G.getConfig().requireParentSpan&&WF.trace.getSpan(WF.context.active())===void 0)return Z.apply(this,arguments);let N=this[qyG._STORED_PARENT_SPAN],Y={},{dbStatementSerializer:c}=G.getConfig();if(c)Y[rT.SEMATTRS_DB_STATEMENT]=c("aggregate",{options:this.options,aggregatePipeline:this._pipeline});let V=G._startSpan(this._model.collection,(W=this._model)===null||W===void 0?void 0:W.modelName,"aggregate",Y,N);return G._handleResponse(V,Z,this,arguments,b,I)}}}patchQueryExec(I){let G=this;return(Z)=>{return function(b){if(G.getConfig().requireParentSpan&&WF.trace.getSpan(WF.context.active())===void 0)return Z.apply(this,arguments);let W=this[qyG._STORED_PARENT_SPAN],N={},{dbStatementSerializer:Y}=G.getConfig();if(Y)N[rT.SEMATTRS_DB_STATEMENT]=Y(this.op,{condition:this._conditions,updates:this._update,options:this.options,fields:this._fields});let c=G._startSpan(this.mongooseCollection,this.model.modelName,this.op,N,W);return G._handleResponse(c,Z,this,arguments,b,I)}}}patchOnModelMethods(I,G){let Z=this;return(l)=>{return function(W,N){if(Z.getConfig().requireParentSpan&&WF.trace.getSpan(WF.context.active())===void 0)return l.apply(this,arguments);let Y={document:this};if(W&&!(W instanceof Function))Y.options=W;let c={},{dbStatementSerializer:V}=Z.getConfig();if(V)c[rT.SEMATTRS_DB_STATEMENT]=V(I,Y);let d=Z._startSpan(this.constructor.collection,this.constructor.modelName,I,c);if(W instanceof Function)N=W,W=void 0;return Z._handleResponse(d,l,this,arguments,N,G)}}}patchModelAggregate(){let I=this;return(G)=>{return function(){let l=WF.trace.getSpan(WF.context.active()),b=I._callOriginalFunction(()=>G.apply(this,arguments));if(b)b[qyG._STORED_PARENT_SPAN]=l;return b}}}patchAndCaptureSpanContext(I){let G=this;return(Z)=>{return function(){return this[qyG._STORED_PARENT_SPAN]=WF.trace.getSpan(WF.context.active()),G._callOriginalFunction(()=>Z.apply(this,arguments))}}}_startSpan(I,G,Z,l,b){return this.tracer.startSpan(`mongoose.${G}.${Z}`,{kind:WF.SpanKind.CLIENT,attributes:Object.assign(Object.assign(Object.assign({},l),(0,qEI.getAttributesFromCollection)(I)),{[rT.SEMATTRS_DB_OPERATION]:Z,[rT.SEMATTRS_DB_SYSTEM]:"mongoose"})},b?WF.trace.setSpan(WF.context.active(),b):void 0)}_handleResponse(I,G,Z,l,b,W=void 0){let N=this;if(b instanceof Function)return N._callOriginalFunction(()=>(0,qEI.handleCallbackResponse)(b,G,Z,I,l,N.getConfig().responseHook,W));else{let Y=N._callOriginalFunction(()=>G.apply(Z,l));return(0,qEI.handlePromiseResponse)(Y,I,N.getConfig().responseHook,W)}}_callOriginalFunction(I){if(this.getConfig().suppressInternalInstrumentation)return WF.context.with((0,Cel.suppressTracing)(WF.context.active()),I);else return I()}}qyG.MongooseInstrumentation=nyG});var PyG=w((iyG)=>{Object.defineProperty(iyG,"__esModule",{value:!0})});var fyG=w((jy)=>{var Lel=jy&&jy.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),_yG=jy&&jy.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))Lel(G,I,Z)};Object.defineProperty(jy,"__esModule",{value:!0});_yG(SyG(),jy);_yG(PyG(),jy)});var syG,$yG="Mongoose",oyG,gel=()=>{return{name:$yG,setupOnce(){oyG()}}},tyG;var ryG=a(()=>{Qb();vc();syG=hI(fyG(),1),oyG=Rb($yG,()=>new syG.MongooseInstrumentation({responseHook(I){IV(I,"auto.db.otel.mongoose")}})),tyG=Gl(gel)});var IuG=w((eyG)=>{Object.defineProperty(eyG,"__esModule",{value:!0});eyG.AttributeNames=void 0;var ael;(function(I){I.MYSQL_VALUES="db.mysql.values"})(ael=eyG.AttributeNames||(eyG.AttributeNames={}))});var buG=w((ZuG)=>{Object.defineProperty(ZuG,"__esModule",{value:!0});ZuG.getPoolName=ZuG.arrayStringifyHelper=ZuG.getSpanName=ZuG.getDbValues=ZuG.getDbStatement=ZuG.getConnectionAttributes=void 0;var _v=Nc();function zel(I){let{host:G,port:Z,database:l,user:b}=Bel(I),W=parseInt(Z,10);if(!isNaN(W))return{[_v.SEMATTRS_NET_PEER_NAME]:G,[_v.SEMATTRS_NET_PEER_PORT]:W,[_v.SEMATTRS_DB_CONNECTION_STRING]:GuG(G,Z,l),[_v.SEMATTRS_DB_NAME]:l,[_v.SEMATTRS_DB_USER]:b};return{[_v.SEMATTRS_NET_PEER_NAME]:G,[_v.SEMATTRS_DB_CONNECTION_STRING]:GuG(G,Z,l),[_v.SEMATTRS_DB_NAME]:l,[_v.SEMATTRS_DB_USER]:b}}ZuG.getConnectionAttributes=zel;function Bel(I){let{host:G,port:Z,database:l,user:b}=I&&I.connectionConfig||I||{};return{host:G,port:Z,database:l,user:b}}function GuG(I,G,Z){let l=`jdbc:mysql://${I||"localhost"}`;if(typeof G==="number")l+=`:${G}`;if(typeof Z==="string")l+=`/${Z}`;return l}function kel(I){if(typeof I==="string")return I;else return I.sql}ZuG.getDbStatement=kel;function Uel(I,G){if(typeof I==="string")return SEI(G);else return SEI(G||I.values)}ZuG.getDbValues=Uel;function xel(I){let G=typeof I==="object"?I.sql:I,Z=G===null||G===void 0?void 0:G.indexOf(" ");if(typeof Z==="number"&&Z!==-1)return G===null||G===void 0?void 0:G.substring(0,Z);return G}ZuG.getSpanName=xel;function SEI(I){if(I)return`[${I.toString()}]`;return""}ZuG.arrayStringifyHelper=SEI;function Oel(I){let G=I.config.connectionConfig,Z="";if(Z+=G.host?`host: '${G.host}', `:"",Z+=G.port?`port: ${G.port}, `:"",Z+=G.database?`database: '${G.database}', `:"",Z+=G.user?`user: '${G.user}'`:"",!G.user)Z=Z.substring(0,Z.length-2);return Z.trim()}ZuG.getPoolName=Oel});var YuG=w((WuG)=>{Object.defineProperty(WuG,"__esModule",{value:!0});WuG.PACKAGE_NAME=WuG.PACKAGE_VERSION=void 0;WuG.PACKAGE_VERSION="0.45.1";WuG.PACKAGE_NAME="@opentelemetry/instrumentation-mysql"});var muG=w((VuG)=>{Object.defineProperty(VuG,"__esModule",{value:!0});VuG.MySQLInstrumentation=void 0;var p1=bl(),tO=jN(),iEI=Nc(),Tel=IuG(),rO=buG(),cuG=YuG();class rGI extends tO.InstrumentationBase{constructor(I={}){super(cuG.PACKAGE_NAME,cuG.PACKAGE_VERSION,I);this._setMetricInstruments()}setMeterProvider(I){super.setMeterProvider(I),this._setMetricInstruments()}_setMetricInstruments(){this._connectionsUsage=this.meter.createUpDownCounter("db.client.connections.usage",{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}init(){return[new tO.InstrumentationNodeModuleDefinition("mysql",[">=2.0.0 <3"],(I)=>{if((0,tO.isWrapped)(I.createConnection))this._unwrap(I,"createConnection");if(this._wrap(I,"createConnection",this._patchCreateConnection()),(0,tO.isWrapped)(I.createPool))this._unwrap(I,"createPool");if(this._wrap(I,"createPool",this._patchCreatePool()),(0,tO.isWrapped)(I.createPoolCluster))this._unwrap(I,"createPoolCluster");return this._wrap(I,"createPoolCluster",this._patchCreatePoolCluster()),I},(I)=>{if(I===void 0)return;this._unwrap(I,"createConnection"),this._unwrap(I,"createPool"),this._unwrap(I,"createPoolCluster")})]}_patchCreateConnection(){return(I)=>{let G=this;return function(l){let b=I(...arguments);return G._wrap(b,"query",G._patchQuery(b)),b}}}_patchCreatePool(){return(I)=>{let G=this;return function(l){let b=I(...arguments);return G._wrap(b,"query",G._patchQuery(b)),G._wrap(b,"getConnection",G._patchGetConnection(b)),G._wrap(b,"end",G._patchPoolEnd(b)),G._setPoolcallbacks(b,G,""),b}}}_patchPoolEnd(I){return(G)=>{let Z=this;return function(b){let W=I._allConnections.length,N=I._freeConnections.length,Y=W-N,c=(0,rO.getPoolName)(I);Z._connectionsUsage.add(-Y,{state:"used",name:c}),Z._connectionsUsage.add(-N,{state:"idle",name:c}),G.apply(I,arguments)}}}_patchCreatePoolCluster(){return(I)=>{let G=this;return function(l){let b=I(...arguments);return G._wrap(b,"getConnection",G._patchGetConnection(b)),G._wrap(b,"add",G._patchAdd(b)),b}}}_patchAdd(I){return(G)=>{let Z=this;return function(b,W){if(!Z._enabled)return Z._unwrap(I,"add"),G.apply(I,arguments);G.apply(I,arguments);let N=I._nodes;if(N){let Y=typeof b==="object"?"CLUSTER::"+I._lastId:String(b),c=N[Y].pool;Z._setPoolcallbacks(c,Z,b)}}}}_patchGetConnection(I){return(G)=>{let Z=this;return function(b,W,N){if(!Z._enabled)return Z._unwrap(I,"getConnection"),G.apply(I,arguments);if(arguments.length===1&&typeof b==="function"){let Y=Z._getConnectionCallbackPatchFn(b);return G.call(I,Y)}if(arguments.length===2&&typeof W==="function"){let Y=Z._getConnectionCallbackPatchFn(W);return G.call(I,b,Y)}if(arguments.length===3&&typeof N==="function"){let Y=Z._getConnectionCallbackPatchFn(N);return G.call(I,b,W,Y)}return G.apply(I,arguments)}}}_getConnectionCallbackPatchFn(I){let G=this,Z=p1.context.active();return function(l,b){if(b){if(!(0,tO.isWrapped)(b.query))G._wrap(b,"query",G._patchQuery(b))}if(typeof I==="function")p1.context.with(Z,I,this,l,b)}}_patchQuery(I){return(G)=>{let Z=this;return function(l,b,W){if(!Z._enabled)return Z._unwrap(I,"query"),G.apply(I,arguments);let N=Z.tracer.startSpan((0,rO.getSpanName)(l),{kind:p1.SpanKind.CLIENT,attributes:Object.assign(Object.assign({},rGI.COMMON_ATTRIBUTES),(0,rO.getConnectionAttributes)(I.config))});if(N.setAttribute(iEI.SEMATTRS_DB_STATEMENT,(0,rO.getDbStatement)(l)),Z.getConfig().enhancedDatabaseReporting){let V;if(Array.isArray(b))V=b;else if(arguments[2])V=[b];N.setAttribute(Tel.AttributeNames.MYSQL_VALUES,(0,rO.getDbValues)(l,V))}let Y=Array.from(arguments).findIndex((V)=>typeof V==="function"),c=p1.context.active();if(Y===-1){let V=p1.context.with(p1.trace.setSpan(p1.context.active(),N),()=>{return G.apply(I,arguments)});return p1.context.bind(c,V),V.on("error",(d)=>N.setStatus({code:p1.SpanStatusCode.ERROR,message:d.message})).on("end",()=>{N.end()})}else return Z._wrap(arguments,Y,Z._patchCallbackQuery(N,c)),p1.context.with(p1.trace.setSpan(p1.context.active(),N),()=>{return G.apply(I,arguments)})}}}_patchCallbackQuery(I,G){return(Z)=>{return function(l,b,W){if(l)I.setStatus({code:p1.SpanStatusCode.ERROR,message:l.message});return I.end(),p1.context.with(G,()=>Z(...arguments))}}}_setPoolcallbacks(I,G,Z){let l=Z||(0,rO.getPoolName)(I);I.on("connection",(b)=>{G._connectionsUsage.add(1,{state:"idle",name:l})}),I.on("acquire",(b)=>{G._connectionsUsage.add(-1,{state:"idle",name:l}),G._connectionsUsage.add(1,{state:"used",name:l})}),I.on("release",(b)=>{G._connectionsUsage.add(-1,{state:"used",name:l}),G._connectionsUsage.add(1,{state:"idle",name:l})})}}VuG.MySQLInstrumentation=rGI;rGI.COMMON_ATTRIBUTES={[iEI.SEMATTRS_DB_SYSTEM]:iEI.DBSYSTEMVALUES_MYSQL}});var XuG=w((QuG)=>{Object.defineProperty(QuG,"__esModule",{value:!0})});var RuG=w((ny)=>{var Sel=ny&&ny.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),FuG=ny&&ny.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))Sel(G,I,Z)};Object.defineProperty(ny,"__esModule",{value:!0});FuG(muG(),ny);FuG(XuG(),ny)});var HuG,huG="Mysql",wuG,iel=()=>{return{name:huG,setupOnce(){wuG()}}},JuG;var AuG=a(()=>{Qb();vc();HuG=hI(RuG(),1),wuG=Rb(huG,()=>new HuG.MySQLInstrumentation({})),JuG=Gl(iel)});var _EI=w((EuG)=>{Object.defineProperty(EuG,"__esModule",{value:!0});EuG.addSqlCommenterComment=void 0;var PEI=bl(),Pel=lY();function _el(I){let G=I.indexOf("--");if(G>=0)return!0;if(I.indexOf("/*")<0)return!1;let l=I.indexOf("*/");return G<l}function fel(I){return encodeURIComponent(I).replace(/[!'()*]/g,(G)=>`%${G.charCodeAt(0).toString(16).toUpperCase()}`)}function sel(I,G){if(typeof G!=="string"||G.length===0)return G;if(_el(G))return G;let Z=new Pel.W3CTraceContextPropagator,l={};Z.inject(PEI.trace.setSpan(PEI.ROOT_CONTEXT,I),l,PEI.defaultTextMapSetter);let b=Object.keys(l).sort();if(b.length===0)return G;let W=b.map((N)=>{let Y=fel(l[N]);return`${N}='${Y}'`}).join(",");return`${G} /*${W}*/`}EuG.addSqlCommenterComment=sel});var uuG=w((puG)=>{Object.defineProperty(puG,"__esModule",{value:!0});puG.getConnectionPrototypeToInstrument=puG.once=puG.getSpanName=puG.getDbStatement=puG.getConnectionAttributes=void 0;var fv=Nc();function $el(I){let{host:G,port:Z,database:l,user:b}=oel(I),W=parseInt(Z,10);if(!isNaN(W))return{[fv.SEMATTRS_NET_PEER_NAME]:G,[fv.SEMATTRS_NET_PEER_PORT]:W,[fv.SEMATTRS_DB_CONNECTION_STRING]:CuG(G,Z,l),[fv.SEMATTRS_DB_NAME]:l,[fv.SEMATTRS_DB_USER]:b};return{[fv.SEMATTRS_NET_PEER_NAME]:G,[fv.SEMATTRS_DB_CONNECTION_STRING]:CuG(G,Z,l),[fv.SEMATTRS_DB_NAME]:l,[fv.SEMATTRS_DB_USER]:b}}puG.getConnectionAttributes=$el;function oel(I){let{host:G,port:Z,database:l,user:b}=I&&I.connectionConfig||I||{};return{host:G,port:Z,database:l,user:b}}function CuG(I,G,Z){let l=`jdbc:mysql://${I||"localhost"}`;if(typeof G==="number")l+=`:${G}`;if(typeof Z==="string")l+=`/${Z}`;return l}function tel(I,G,Z){if(!G)return typeof I==="string"?I:I.sql;if(typeof I==="string")return Z?G(I,Z):I;else return Z||I.values?G(I.sql,Z||I.values):I.sql}puG.getDbStatement=tel;function rel(I){let G=typeof I==="object"?I.sql:I,Z=G===null||G===void 0?void 0:G.indexOf(" ");if(typeof Z==="number"&&Z!==-1)return G===null||G===void 0?void 0:G.substring(0,Z);return G}puG.getSpanName=rel;var eel=(I)=>{let G=!1;return(...Z)=>{if(G)return;return G=!0,I(...Z)}};puG.once=eel;function IIb(I){let G=I.prototype,Z=Object.getPrototypeOf(G);if(typeof(Z===null||Z===void 0?void 0:Z.query)==="function"&&typeof(Z===null||Z===void 0?void 0:Z.execute)==="function")return Z;return G}puG.getConnectionPrototypeToInstrument=IIb});var auG=w((LuG)=>{Object.defineProperty(LuG,"__esModule",{value:!0});LuG.PACKAGE_NAME=LuG.PACKAGE_VERSION=void 0;LuG.PACKAGE_VERSION="0.45.2";LuG.PACKAGE_NAME="@opentelemetry/instrumentation-mysql2"});var OuG=w((UuG)=>{Object.defineProperty(UuG,"__esModule",{value:!0});UuG.MySQL2Instrumentation=void 0;var zuG=bl(),bz=jN(),sEI=Nc(),BuG=_EI(),eO=uuG(),kuG=auG(),fEI=[">=1.4.2 <4"];class eGI extends bz.InstrumentationBase{constructor(I={}){super(kuG.PACKAGE_NAME,kuG.PACKAGE_VERSION,I)}init(){let I;function G(b){if(!I&&b.format)I=b.format}let Z=(b)=>{if((0,bz.isWrapped)(b.query))this._unwrap(b,"query");if(this._wrap(b,"query",this._patchQuery(I,!1)),(0,bz.isWrapped)(b.execute))this._unwrap(b,"execute");this._wrap(b,"execute",this._patchQuery(I,!0))},l=(b)=>{this._unwrap(b,"query"),this._unwrap(b,"execute")};return[new bz.InstrumentationNodeModuleDefinition("mysql2",fEI,(b)=>{return G(b),b},()=>{},[new bz.InstrumentationNodeModuleFile("mysql2/promise.js",fEI,(b)=>{return G(b),b},()=>{}),new bz.InstrumentationNodeModuleFile("mysql2/lib/connection.js",fEI,(b)=>{let W=(0,eO.getConnectionPrototypeToInstrument)(b);return Z(W),b},(b)=>{if(b===void 0)return;let W=(0,eO.getConnectionPrototypeToInstrument)(b);l(W)})])]}_patchQuery(I,G){return(Z)=>{let l=this;return function(b,W,N){let Y;if(Array.isArray(W))Y=W;else if(arguments[2])Y=[W];let c=l.tracer.startSpan((0,eO.getSpanName)(b),{kind:zuG.SpanKind.CLIENT,attributes:Object.assign(Object.assign(Object.assign({},eGI.COMMON_ATTRIBUTES),(0,eO.getConnectionAttributes)(this.config)),{[sEI.SEMATTRS_DB_STATEMENT]:(0,eO.getDbStatement)(b,I,Y)})});if(!G&&l.getConfig().addSqlCommenterCommentToQueries)arguments[0]=b=typeof b==="string"?(0,BuG.addSqlCommenterComment)(c,b):Object.assign(b,{sql:(0,BuG.addSqlCommenterComment)(c,b.sql)});let V=(0,eO.once)((d,Q)=>{if(d)c.setStatus({code:zuG.SpanStatusCode.ERROR,message:d.message});else{let{responseHook:X}=l.getConfig();if(typeof X==="function")(0,bz.safeExecuteInTheMiddle)(()=>{X(c,{queryResults:Q})},(R)=>{if(R)l._diag.warn("Failed executing responseHook",R)},!0)}c.end()});if(arguments.length===1){if(typeof b.onResult==="function")l._wrap(b,"onResult",l._patchCallbackQuery(V));let d=Z.apply(this,arguments);return d.once("error",(Q)=>{V(Q)}).once("result",(Q)=>{V(void 0,Q)}),d}if(typeof arguments[1]==="function")l._wrap(arguments,1,l._patchCallbackQuery(V));else if(typeof arguments[2]==="function")l._wrap(arguments,2,l._patchCallbackQuery(V));return Z.apply(this,arguments)}}}_patchCallbackQuery(I){return(G)=>{return function(Z,l,b){return I(Z,l),G(...arguments)}}}}UuG.MySQL2Instrumentation=eGI;eGI.COMMON_ATTRIBUTES={[sEI.SEMATTRS_DB_SYSTEM]:sEI.DBSYSTEMVALUES_MYSQL}});var KuG=w((MuG)=>{Object.defineProperty(MuG,"__esModule",{value:!0})});var juG=w((qy)=>{var NIb=qy&&qy.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),DuG=qy&&qy.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))NIb(G,I,Z)};Object.defineProperty(qy,"__esModule",{value:!0});DuG(OuG(),qy);DuG(KuG(),qy)});var nuG,quG="Mysql2",TuG,YIb=()=>{return{name:quG,setupOnce(){TuG()}}},SuG;var iuG=a(()=>{Qb();vc();nuG=hI(juG(),1),TuG=Rb(quG,()=>new nuG.MySQL2Instrumentation({responseHook(I){IV(I,"auto.db.otel.mysql2")}})),SuG=Gl(YIb)});var fuG=w((PuG)=>{Object.defineProperty(PuG,"__esModule",{value:!0});PuG.endSpan=void 0;var cIb=bl(),VIb=(I,G)=>{if(G)I.recordException(G),I.setStatus({code:cIb.SpanStatusCode.ERROR,message:G.message});I.end()};PuG.endSpan=VIb});var $EI=w((suG)=>{Object.defineProperty(suG,"__esModule",{value:!0});suG.defaultDbStatementSerializer=void 0;var dIb=[{regex:/^ECHO/i,args:0},{regex:/^(LPUSH|MSET|PFA|PUBLISH|RPUSH|SADD|SET|SPUBLISH|XADD|ZADD)/i,args:1},{regex:/^(HSET|HMSET|LSET|LINSERT)/i,args:2},{regex:/^(ACL|BIT|B[LRZ]|CLIENT|CLUSTER|CONFIG|COMMAND|DECR|DEL|EVAL|EX|FUNCTION|GEO|GET|HINCR|HMGET|HSCAN|INCR|L[TRLM]|MEMORY|P[EFISTU]|RPOP|S[CDIMORSU]|XACK|X[CDGILPRT]|Z[CDILMPRS])/i,args:-1}],mIb=(I,G)=>{var Z,l;if(Array.isArray(G)&&G.length){let b=(l=(Z=dIb.find(({regex:N})=>{return N.test(I)}))===null||Z===void 0?void 0:Z.args)!==null&&l!==void 0?l:0,W=b>=0?G.slice(0,b):G;if(G.length>W.length)W.push(`[${G.length-b} other arguments]`);return`${I} ${W.join(" ")}`}return I};suG.defaultDbStatementSerializer=mIb});var ruG=w((ouG)=>{Object.defineProperty(ouG,"__esModule",{value:!0});ouG.PACKAGE_NAME=ouG.PACKAGE_VERSION=void 0;ouG.PACKAGE_VERSION="0.47.1";ouG.PACKAGE_NAME="@opentelemetry/instrumentation-ioredis"});var W9G=w((l9G)=>{Object.defineProperty(l9G,"__esModule",{value:!0});l9G.IORedisInstrumentation=void 0;var Ty=bl(),IZI=jN(),Eh=Nc(),euG=jN(),IS=fuG(),XIb=$EI(),I9G=ruG(),G9G={requireParentSpan:!0};class Z9G extends IZI.InstrumentationBase{constructor(I={}){super(I9G.PACKAGE_NAME,I9G.PACKAGE_VERSION,Object.assign(Object.assign({},G9G),I))}setConfig(I={}){super.setConfig(Object.assign(Object.assign({},G9G),I))}init(){return[new IZI.InstrumentationNodeModuleDefinition("ioredis",[">=2.0.0 <6"],(I,G)=>{let Z=I[Symbol.toStringTag]==="Module"?I.default:I;if((0,IZI.isWrapped)(Z.prototype.sendCommand))this._unwrap(Z.prototype,"sendCommand");if(this._wrap(Z.prototype,"sendCommand",this._patchSendCommand(G)),(0,IZI.isWrapped)(Z.prototype.connect))this._unwrap(Z.prototype,"connect");return this._wrap(Z.prototype,"connect",this._patchConnection()),I},(I)=>{if(I===void 0)return;let G=I[Symbol.toStringTag]==="Module"?I.default:I;this._unwrap(G.prototype,"sendCommand"),this._unwrap(G.prototype,"connect")})]}_patchSendCommand(I){return(G)=>{return this._traceSendCommand(G,I)}}_patchConnection(){return(I)=>{return this._traceConnection(I)}}_traceSendCommand(I,G){let Z=this;return function(l){if(arguments.length<1||typeof l!=="object")return I.apply(this,arguments);let b=Z.getConfig(),W=b.dbStatementSerializer||XIb.defaultDbStatementSerializer,N=Ty.trace.getSpan(Ty.context.active())===void 0;if(b.requireParentSpan===!0&&N)return I.apply(this,arguments);let Y=Z.tracer.startSpan(l.name,{kind:Ty.SpanKind.CLIENT,attributes:{[Eh.SEMATTRS_DB_SYSTEM]:Eh.DBSYSTEMVALUES_REDIS,[Eh.SEMATTRS_DB_STATEMENT]:W(l.name,l.args)}}),{requestHook:c}=b;if(c)(0,euG.safeExecuteInTheMiddle)(()=>c(Y,{moduleVersion:G,cmdName:l.name,cmdArgs:l.args}),(Q)=>{if(Q)Ty.diag.error("ioredis instrumentation: request hook failed",Q)},!0);let{host:V,port:d}=this.options;Y.setAttributes({[Eh.SEMATTRS_NET_PEER_NAME]:V,[Eh.SEMATTRS_NET_PEER_PORT]:d,[Eh.SEMATTRS_DB_CONNECTION_STRING]:`redis://${V}:${d}`});try{let Q=I.apply(this,arguments),X=l.resolve;l.resolve=function(H){(0,euG.safeExecuteInTheMiddle)(()=>{var h;return(h=b.responseHook)===null||h===void 0?void 0:h.call(b,Y,l.name,l.args,H)},(h)=>{if(h)Ty.diag.error("ioredis instrumentation: response hook failed",h)},!0),(0,IS.endSpan)(Y,null),X(H)};let R=l.reject;return l.reject=function(H){(0,IS.endSpan)(Y,H),R(H)},Q}catch(Q){throw(0,IS.endSpan)(Y,Q),Q}}}_traceConnection(I){let G=this;return function(){let Z=Ty.trace.getSpan(Ty.context.active())===void 0;if(G.getConfig().requireParentSpan===!0&&Z)return I.apply(this,arguments);let l=G.tracer.startSpan("connect",{kind:Ty.SpanKind.CLIENT,attributes:{[Eh.SEMATTRS_DB_SYSTEM]:Eh.DBSYSTEMVALUES_REDIS,[Eh.SEMATTRS_DB_STATEMENT]:"connect"}}),{host:b,port:W}=this.options;l.setAttributes({[Eh.SEMATTRS_NET_PEER_NAME]:b,[Eh.SEMATTRS_NET_PEER_PORT]:W,[Eh.SEMATTRS_DB_CONNECTION_STRING]:`redis://${b}:${W}`});try{let N=I.apply(this,arguments);return(0,IS.endSpan)(l,null),N}catch(N){throw(0,IS.endSpan)(l,N),N}}}}l9G.IORedisInstrumentation=Z9G});var Y9G=w((N9G)=>{Object.defineProperty(N9G,"__esModule",{value:!0})});var V9G=w((Sy)=>{var FIb=Sy&&Sy.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),c9G=Sy&&Sy.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))FIb(G,I,Z)};Object.defineProperty(Sy,"__esModule",{value:!0});c9G(W9G(),Sy);c9G(Y9G(),Sy)});var Q9G=w((d9G)=>{Object.defineProperty(d9G,"__esModule",{value:!0});d9G.getClientAttributes=void 0;var GS=Nc();function RIb(I,G){var Z,l;return{[GS.SEMATTRS_DB_SYSTEM]:GS.DBSYSTEMVALUES_REDIS,[GS.SEMATTRS_NET_PEER_NAME]:(Z=G===null||G===void 0?void 0:G.socket)===null||Z===void 0?void 0:Z.host,[GS.SEMATTRS_NET_PEER_PORT]:(l=G===null||G===void 0?void 0:G.socket)===null||l===void 0?void 0:l.port,[GS.SEMATTRS_DB_CONNECTION_STRING]:HIb(I,G===null||G===void 0?void 0:G.url)}}d9G.getClientAttributes=RIb;function HIb(I,G){if(typeof G!=="string"||!G)return;try{let Z=new URL(G);return Z.searchParams.delete("user_pwd"),Z.username="",Z.password="",Z.href}catch(Z){I.error("failed to sanitize redis connection url",Z)}return}});var R9G=w((X9G)=>{Object.defineProperty(X9G,"__esModule",{value:!0});X9G.PACKAGE_NAME=X9G.PACKAGE_VERSION=void 0;X9G.PACKAGE_VERSION="0.46.1";X9G.PACKAGE_NAME="@opentelemetry/instrumentation-redis-4"});var v9G=w((A9G)=>{Object.defineProperty(A9G,"__esModule",{value:!0});A9G.RedisInstrumentation=void 0;var vh=bl(),Zm=jN(),H9G=Q9G(),wIb=$EI(),h9G=R9G(),JIb=Nc(),ZS=Symbol("opentelemetry.instrumentation.redis.open_spans"),w9G=Symbol("opentelemetry.instrumentation.redis.multi_command_options"),J9G={requireParentSpan:!1};class lS extends Zm.InstrumentationBase{constructor(I={}){super(h9G.PACKAGE_NAME,h9G.PACKAGE_VERSION,Object.assign(Object.assign({},J9G),I))}setConfig(I={}){super.setConfig(Object.assign(Object.assign({},J9G),I))}init(){return[this._getInstrumentationNodeModuleDefinition("@redis/client"),this._getInstrumentationNodeModuleDefinition("@node-redis/client")]}_getInstrumentationNodeModuleDefinition(I){let G=new Zm.InstrumentationNodeModuleFile(`${I}/dist/lib/commander.js`,["^1.0.0"],(b,W)=>{let N=b.transformCommandArguments;if(!N)return this._diag.error("internal instrumentation error, missing transformCommandArguments function"),b;let Y=(W===null||W===void 0?void 0:W.startsWith("1.0."))?"extendWithCommands":"attachCommands";if((0,Zm.isWrapped)(b===null||b===void 0?void 0:b[Y]))this._unwrap(b,Y);return this._wrap(b,Y,this._getPatchExtendWithCommands(N)),b},(b)=>{if((0,Zm.isWrapped)(b===null||b===void 0?void 0:b.extendWithCommands))this._unwrap(b,"extendWithCommands");if((0,Zm.isWrapped)(b===null||b===void 0?void 0:b.attachCommands))this._unwrap(b,"attachCommands")}),Z=new Zm.InstrumentationNodeModuleFile(`${I}/dist/lib/client/multi-command.js`,["^1.0.0"],(b)=>{var W;let N=(W=b===null||b===void 0?void 0:b.default)===null||W===void 0?void 0:W.prototype;if((0,Zm.isWrapped)(N===null||N===void 0?void 0:N.exec))this._unwrap(N,"exec");if(this._wrap(N,"exec",this._getPatchMultiCommandsExec()),(0,Zm.isWrapped)(N===null||N===void 0?void 0:N.addCommand))this._unwrap(N,"addCommand");return this._wrap(N,"addCommand",this._getPatchMultiCommandsAddCommand()),b},(b)=>{var W;let N=(W=b===null||b===void 0?void 0:b.default)===null||W===void 0?void 0:W.prototype;if((0,Zm.isWrapped)(N===null||N===void 0?void 0:N.exec))this._unwrap(N,"exec");if((0,Zm.isWrapped)(N===null||N===void 0?void 0:N.addCommand))this._unwrap(N,"addCommand")}),l=new Zm.InstrumentationNodeModuleFile(`${I}/dist/lib/client/index.js`,["^1.0.0"],(b)=>{var W;let N=(W=b===null||b===void 0?void 0:b.default)===null||W===void 0?void 0:W.prototype;if(N===null||N===void 0?void 0:N.multi){if((0,Zm.isWrapped)(N===null||N===void 0?void 0:N.multi))this._unwrap(N,"multi");this._wrap(N,"multi",this._getPatchRedisClientMulti())}if(N===null||N===void 0?void 0:N.MULTI){if((0,Zm.isWrapped)(N===null||N===void 0?void 0:N.MULTI))this._unwrap(N,"MULTI");this._wrap(N,"MULTI",this._getPatchRedisClientMulti())}if((0,Zm.isWrapped)(N===null||N===void 0?void 0:N.sendCommand))this._unwrap(N,"sendCommand");return this._wrap(N,"sendCommand",this._getPatchRedisClientSendCommand()),this._wrap(N,"connect",this._getPatchedClientConnect()),b},(b)=>{var W;let N=(W=b===null||b===void 0?void 0:b.default)===null||W===void 0?void 0:W.prototype;if((0,Zm.isWrapped)(N===null||N===void 0?void 0:N.multi))this._unwrap(N,"multi");if((0,Zm.isWrapped)(N===null||N===void 0?void 0:N.MULTI))this._unwrap(N,"MULTI");if((0,Zm.isWrapped)(N===null||N===void 0?void 0:N.sendCommand))this._unwrap(N,"sendCommand")});return new Zm.InstrumentationNodeModuleDefinition(I,["^1.0.0"],(b)=>{return b},()=>{},[G,Z,l])}_getPatchExtendWithCommands(I){let G=this;return function(l){return function(W){var N;if(((N=W===null||W===void 0?void 0:W.BaseClass)===null||N===void 0?void 0:N.name)!=="RedisClient")return l.apply(this,arguments);let Y=W.executor;return W.executor=function(c,V){let d=I(c,V).args;return G._traceClientCommand(Y,this,arguments,d)},l.apply(this,arguments)}}}_getPatchMultiCommandsExec(){let I=this;return function(Z){return function(){let b=Z.apply(this,arguments);if(typeof(b===null||b===void 0?void 0:b.then)!=="function")return I._diag.error("got non promise result when patching RedisClientMultiCommand.exec"),b;return b.then((W)=>{let N=this[ZS];return I._endSpansWithRedisReplies(N,W),W}).catch((W)=>{let N=this[ZS];if(!N)I._diag.error("cannot find open spans to end for redis multi command");else{let Y=W.constructor.name==="MultiErrorReply"?W.replies:Array(N.length).fill(W);I._endSpansWithRedisReplies(N,Y)}return Promise.reject(W)})}}}_getPatchMultiCommandsAddCommand(){let I=this;return function(Z){return function(b){return I._traceClientCommand(Z,this,arguments,b)}}}_getPatchRedisClientMulti(){return function(G){return function(){let l=G.apply(this,arguments);return l[w9G]=this.options,l}}}_getPatchRedisClientSendCommand(){let I=this;return function(Z){return function(b){return I._traceClientCommand(Z,this,arguments,b)}}}_getPatchedClientConnect(){let I=this;return function(Z){return function(){let b=this.options,W=(0,H9G.getClientAttributes)(I._diag,b),N=I.tracer.startSpan(`${lS.COMPONENT}-connect`,{kind:vh.SpanKind.CLIENT,attributes:W});return vh.context.with(vh.trace.setSpan(vh.context.active(),N),()=>{return Z.apply(this)}).then((c)=>{return N.end(),c}).catch((c)=>{return N.recordException(c),N.setStatus({code:vh.SpanStatusCode.ERROR,message:c.message}),N.end(),Promise.reject(c)})}}}_traceClientCommand(I,G,Z,l){if(vh.trace.getSpan(vh.context.active())===void 0&&this.getConfig().requireParentSpan)return I.apply(G,Z);let W=G.options||G[w9G],N=l[0],Y=l.slice(1),c=this.getConfig().dbStatementSerializer||wIb.defaultDbStatementSerializer,V=(0,H9G.getClientAttributes)(this._diag,W);try{let X=c(N,Y);if(X!=null)V[JIb.SEMATTRS_DB_STATEMENT]=X}catch(X){this._diag.error("dbStatementSerializer throw an exception",X,{commandName:N})}let d=this.tracer.startSpan(`${lS.COMPONENT}-${N}`,{kind:vh.SpanKind.CLIENT,attributes:V}),Q=vh.context.with(vh.trace.setSpan(vh.context.active(),d),()=>{return I.apply(G,Z)});if(typeof(Q===null||Q===void 0?void 0:Q.then)==="function")Q.then((X)=>{this._endSpanWithResponse(d,N,Y,X,void 0)},(X)=>{this._endSpanWithResponse(d,N,Y,null,X)});else{let X=Q;X[ZS]=X[ZS]||[],X[ZS].push({span:d,commandName:N,commandArgs:Y})}return Q}_endSpansWithRedisReplies(I,G){if(!I)return this._diag.error("cannot find open spans to end for redis multi command");if(G.length!==I.length)return this._diag.error("number of multi command spans does not match response from redis");for(let Z=0;Z<I.length;Z++){let{span:l,commandName:b,commandArgs:W}=I[Z],N=G[Z],[Y,c]=N instanceof Error?[null,N]:[N,void 0];this._endSpanWithResponse(l,b,W,Y,c)}}_endSpanWithResponse(I,G,Z,l,b){let{responseHook:W}=this.getConfig();if(!b&&W)try{W(I,G,Z,l)}catch(N){this._diag.error("responseHook throw an exception",N)}if(b)I.recordException(b),I.setStatus({code:vh.SpanStatusCode.ERROR,message:b===null||b===void 0?void 0:b.message});I.end()}}A9G.RedisInstrumentation=lS;lS.COMPONENT="redis"});var p9G=w((C9G)=>{Object.defineProperty(C9G,"__esModule",{value:!0})});var u9G=w((iy)=>{var AIb=iy&&iy.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),y9G=iy&&iy.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))AIb(G,I,Z)};Object.defineProperty(iy,"__esModule",{value:!0});y9G(v9G(),iy);y9G(p9G(),iy)});function bS(I,G){return I.includes(G.toLowerCase())}function tEI(I){if(bS(oEI,I))return"cache.get";else if(bS(vIb,I))return"cache.put";else return}function CIb(I,G){return G.some((Z)=>I.startsWith(Z))}function g9G(I,G){try{if(G.length===0)return;let Z=(b)=>{if(typeof b==="string"||typeof b==="number"||Buffer.isBuffer(b))return[b.toString()];else if(Array.isArray(b))return L9G(b.map((W)=>Z(W)));else return["<unknown>"]},l=G[0];if(bS(EIb,I)&&l!=null)return Z(l);return L9G(G.map((b)=>Z(b)))}catch{return}}function a9G(I,G,Z){if(!tEI(I))return!1;for(let l of G)if(CIb(l,Z))return!0;return!1}function z9G(I){let G=(Z)=>{try{if(Buffer.isBuffer(Z))return Z.byteLength;else if(typeof Z==="string")return Z.length;else if(typeof Z==="number")return Z.toString().length;else if(Z===null||Z===void 0)return 0;return JSON.stringify(Z).length}catch{return}};return Array.isArray(I)?I.reduce((Z,l)=>{let b=G(l);return typeof b==="number"?Z!==void 0?Z+b:b:Z},0):G(I)}function L9G(I){let G=[],Z=(l)=>{l.forEach((b)=>{if(Array.isArray(b))Z(b);else G.push(b)})};return Z(I),G}var EIb,oEI,vIb;var B9G=a(()=>{EIb=["get","set","setex"],oEI=["get","mget"],vIb=["set","setex"]});var k9G,U9G,x9G="Redis",rEI,O9G=(I,G,Z,l)=>{I.setAttribute(bY,"auto.db.otel.redis");let b=g9G(G,Z),W=tEI(G);if(!b||!W||!rEI.cachePrefixes||!a9G(G,b,rEI.cachePrefixes))return;let N=Bb(I).data["net.peer.name"],Y=Bb(I).data["net.peer.port"];if(Y&&N)I.setAttributes({"network.peer.address":N,"network.peer.port":Y});let c=z9G(l);if(c)I.setAttribute(xJI,c);if(bS(oEI,G)&&c!==void 0)I.setAttribute(kJI,c>0);I.setAttributes({[JW]:W,[UJI]:b});let V=b.join(", ");I.updateName(oA(V,1024))},pIb,yIb,M9G,uIb=(I={})=>{return{name:x9G,setupOnce(){rEI=I,M9G()}}},K9G;var D9G=a(()=>{Qb();vc();B9G();k9G=hI(V9G(),1),U9G=hI(u9G(),1),rEI={},pIb=Rb("IORedis",()=>{return new k9G.IORedisInstrumentation({responseHook:O9G})}),yIb=Rb("Redis-4",()=>{return new U9G.RedisInstrumentation({responseHook:O9G})}),M9G=Object.assign(()=>{pIb(),yIb()},{id:x9G}),K9G=Gl(uIb)});var q9G=w((j9G)=>{Object.defineProperty(j9G,"__esModule",{value:!0});j9G.EVENT_LISTENERS_SET=void 0;j9G.EVENT_LISTENERS_SET=Symbol("opentelemetry.instrumentation.pg.eventListenersSet")});var IvI=w((T9G)=>{Object.defineProperty(T9G,"__esModule",{value:!0});T9G.AttributeNames=void 0;var LIb;(function(I){I.PG_VALUES="db.postgresql.values",I.PG_PLAN="db.postgresql.plan",I.IDLE_TIMEOUT_MILLIS="db.postgresql.idle.timeout.millis",I.MAX_CLIENT="db.postgresql.max.client"})(LIb=T9G.AttributeNames||(T9G.AttributeNames={}))});var GvI=w((S9G)=>{Object.defineProperty(S9G,"__esModule",{value:!0});S9G.METRIC_DB_CLIENT_OPERATION_DURATION=S9G.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS=S9G.METRIC_DB_CLIENT_CONNECTION_COUNT=S9G.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE=S9G.DB_CLIENT_CONNECTION_STATE_VALUE_USED=S9G.ATTR_DB_OPERATION_NAME=S9G.ATTR_DB_NAMESPACE=S9G.ATTR_DB_CLIENT_CONNECTION_STATE=S9G.ATTR_DB_CLIENT_CONNECTION_POOL_NAME=void 0;S9G.ATTR_DB_CLIENT_CONNECTION_POOL_NAME="db.client.connection.pool.name";S9G.ATTR_DB_CLIENT_CONNECTION_STATE="db.client.connection.state";S9G.ATTR_DB_NAMESPACE="db.namespace";S9G.ATTR_DB_OPERATION_NAME="db.operation.name";S9G.DB_CLIENT_CONNECTION_STATE_VALUE_USED="used";S9G.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE="idle";S9G.METRIC_DB_CLIENT_CONNECTION_COUNT="db.client.connection.count";S9G.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS="db.client.connection.pending_requests";S9G.METRIC_DB_CLIENT_OPERATION_DURATION="db.client.operation.duration"});var lvI=w((P9G)=>{Object.defineProperty(P9G,"__esModule",{value:!0});P9G.SpanNames=void 0;var MIb;(function(I){I.QUERY_PREFIX="pg.query",I.CONNECT="pg.connect",I.POOL_CONNECT="pg-pool.connect"})(MIb=P9G.SpanNames||(P9G.SpanNames={}))});var ILG=w((r9G)=>{Object.defineProperty(r9G,"__esModule",{value:!0});r9G.isObjectWithTextString=r9G.getErrorMessage=r9G.patchClientConnectCallback=r9G.patchCallbackPGPool=r9G.updateCounter=r9G.getPoolName=r9G.patchCallback=r9G.handleExecutionResult=r9G.handleConfigQuery=r9G.shouldSkipInstrumentation=r9G.getSemanticAttributesFromPool=r9G.getSemanticAttributesFromConnection=r9G.getConnectionString=r9G.parseNormalizedOperationName=r9G.getQuerySpanName=void 0;var Py=bl(),GZI=IvI(),lX=Nc(),Wz=GvI(),KIb=jN(),_9G=lvI();function f9G(I,G){if(!G)return _9G.SpanNames.QUERY_PREFIX;let Z=typeof G.name==="string"&&G.name?G.name:s9G(G.text);return`${_9G.SpanNames.QUERY_PREFIX}:${Z}${I?` ${I}`:""}`}r9G.getQuerySpanName=f9G;function s9G(I){let G=I.indexOf(" "),Z=G===-1?I:I.slice(0,G);return Z=Z.toUpperCase(),Z.endsWith(";")?Z.slice(0,-1):Z}r9G.parseNormalizedOperationName=s9G;function bvI(I){let G=I.host||"localhost",Z=I.port||5432,l=I.database||"";return`postgresql://${G}:${Z}/${l}`}r9G.getConnectionString=bvI;function $9G(I){if(Number.isInteger(I))return I;return}function o9G(I){return{[lX.SEMATTRS_DB_SYSTEM]:lX.DBSYSTEMVALUES_POSTGRESQL,[lX.SEMATTRS_DB_NAME]:I.database,[lX.SEMATTRS_DB_CONNECTION_STRING]:bvI(I),[lX.SEMATTRS_NET_PEER_NAME]:I.host,[lX.SEMATTRS_NET_PEER_PORT]:$9G(I.port),[lX.SEMATTRS_DB_USER]:I.user}}r9G.getSemanticAttributesFromConnection=o9G;function DIb(I){return{[lX.SEMATTRS_DB_SYSTEM]:lX.DBSYSTEMVALUES_POSTGRESQL,[lX.SEMATTRS_DB_NAME]:I.database,[lX.SEMATTRS_DB_CONNECTION_STRING]:bvI(I),[lX.SEMATTRS_NET_PEER_NAME]:I.host,[lX.SEMATTRS_NET_PEER_PORT]:$9G(I.port),[lX.SEMATTRS_DB_USER]:I.user,[GZI.AttributeNames.IDLE_TIMEOUT_MILLIS]:I.idleTimeoutMillis,[GZI.AttributeNames.MAX_CLIENT]:I.maxClient}}r9G.getSemanticAttributesFromPool=DIb;function jIb(I){return I.requireParentSpan===!0&&Py.trace.getSpan(Py.context.active())===void 0}r9G.shouldSkipInstrumentation=jIb;function nIb(I,G,Z){let{connectionParameters:l}=this,b=l.database,W=f9G(b,Z),N=I.startSpan(W,{kind:Py.SpanKind.CLIENT,attributes:o9G(l)});if(!Z)return N;if(Z.text)N.setAttribute(lX.SEMATTRS_DB_STATEMENT,Z.text);if(G.enhancedDatabaseReporting&&Array.isArray(Z.values))try{let Y=Z.values.map((c)=>{if(c==null)return"null";else if(c instanceof Buffer)return c.toString();else if(typeof c==="object"){if(typeof c.toPostgres==="function")return c.toPostgres();return JSON.stringify(c)}else return c.toString()});N.setAttribute(GZI.AttributeNames.PG_VALUES,Y)}catch(Y){Py.diag.error("failed to stringify ",Z.values,Y)}if(typeof Z.name==="string")N.setAttribute(GZI.AttributeNames.PG_PLAN,Z.name);return N}r9G.handleConfigQuery=nIb;function t9G(I,G,Z){if(typeof I.responseHook==="function")(0,KIb.safeExecuteInTheMiddle)(()=>{I.responseHook(G,{data:Z})},(l)=>{if(l)Py.diag.error("Error running response hook",l)},!0)}r9G.handleExecutionResult=t9G;function qIb(I,G,Z,l,b){return function(N,Y){if(N){if(Object.prototype.hasOwnProperty.call(N,"code"))l[lX.ATTR_ERROR_TYPE]=N.code;G.setStatus({code:Py.SpanStatusCode.ERROR,message:N.message})}else t9G(I,G,Y);b(),G.end(),Z.call(this,N,Y)}}r9G.patchCallback=qIb;function TIb(I){let G="";return G+=((I===null||I===void 0?void 0:I.host)?`${I.host}`:"unknown_host")+":",G+=((I===null||I===void 0?void 0:I.port)?`${I.port}`:"unknown_port")+"/",G+=(I===null||I===void 0?void 0:I.database)?`${I.database}`:"unknown_database",G.trim()}r9G.getPoolName=TIb;function SIb(I,G,Z,l,b){let{totalCount:W,waitingCount:N,idleCount:Y}=G,c=W-Y;return Z.add(c-b.used,{[Wz.ATTR_DB_CLIENT_CONNECTION_STATE]:Wz.DB_CLIENT_CONNECTION_STATE_VALUE_USED,[Wz.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:I}),Z.add(Y-b.idle,{[Wz.ATTR_DB_CLIENT_CONNECTION_STATE]:Wz.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE,[Wz.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:I}),l.add(N-b.pending,{[Wz.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:I}),{used:c,idle:Y,pending:N}}r9G.updateCounter=SIb;function iIb(I,G){return function(l,b,W){if(l)I.setStatus({code:Py.SpanStatusCode.ERROR,message:l.message});I.end(),G.call(this,l,b,W)}}r9G.patchCallbackPGPool=iIb;function PIb(I,G){return function(l){if(l)I.setStatus({code:Py.SpanStatusCode.ERROR,message:l.message});I.end(),G.apply(this,arguments)}}r9G.patchClientConnectCallback=PIb;function _Ib(I){return typeof I==="object"&&I!==null&&"message"in I?String(I.message):void 0}r9G.getErrorMessage=_Ib;function fIb(I){var G;return typeof I==="object"&&typeof((G=I)===null||G===void 0?void 0:G.text)==="string"}r9G.isObjectWithTextString=fIb});var lLG=w((GLG)=>{Object.defineProperty(GLG,"__esModule",{value:!0});GLG.PACKAGE_NAME=GLG.PACKAGE_VERSION=void 0;GLG.PACKAGE_VERSION="0.51.1";GLG.PACKAGE_NAME="@opentelemetry/instrumentation-pg"});var QLG=w((dLG)=>{Object.defineProperty(dLG,"__esModule",{value:!0});dLG.PgInstrumentation=void 0;var Ch=jN(),Yc=bl(),bLG=q9G(),Td=ILG(),WLG=_EI(),NLG=lLG(),YLG=lvI(),ZZI=lY(),_y=Nc(),Nz=GvI();function lZI(I){return I[Symbol.toStringTag]==="Module"?I.default:I}class VLG extends Ch.InstrumentationBase{constructor(I={}){super(NLG.PACKAGE_NAME,NLG.PACKAGE_VERSION,I);this._connectionsCounter={used:0,idle:0,pending:0}}_updateMetricInstruments(){this._operationDuration=this.meter.createHistogram(Nz.METRIC_DB_CLIENT_OPERATION_DURATION,{description:"Duration of database client operations.",unit:"s",valueType:Yc.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.001,0.005,0.01,0.05,0.1,0.5,1,5,10]}}),this._connectionsCounter={idle:0,pending:0,used:0},this._connectionsCount=this.meter.createUpDownCounter(Nz.METRIC_DB_CLIENT_CONNECTION_COUNT,{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"}),this._connectionPendingRequests=this.meter.createUpDownCounter(Nz.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS,{description:"The number of current pending requests for an open connection.",unit:"{connection}"})}init(){let I=[">=8.0.3 <9"],G=new Ch.InstrumentationNodeModuleFile("pg/lib/native/client.js",I,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),Z=new Ch.InstrumentationNodeModuleFile("pg/lib/client.js",I,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),l=new Ch.InstrumentationNodeModuleDefinition("pg",I,(W)=>{let N=lZI(W);return this._patchPgClient(N.Client),W},(W)=>{let N=lZI(W);return this._unpatchPgClient(N.Client),W},[Z,G]),b=new Ch.InstrumentationNodeModuleDefinition("pg-pool",[">=2.0.0 <4"],(W)=>{if((0,Ch.isWrapped)(W.prototype.connect))this._unwrap(W.prototype,"connect");return this._wrap(W.prototype,"connect",this._getPoolConnectPatch()),W},(W)=>{if((0,Ch.isWrapped)(W.prototype.connect))this._unwrap(W.prototype,"connect")});return[l,b]}_patchPgClient(I){if(!I)return;let G=lZI(I);if((0,Ch.isWrapped)(G.prototype.query))this._unwrap(G.prototype,"query");if((0,Ch.isWrapped)(G.prototype.connect))this._unwrap(G.prototype,"connect");return this._wrap(G.prototype,"query",this._getClientQueryPatch()),this._wrap(G.prototype,"connect",this._getClientConnectPatch()),I}_unpatchPgClient(I){let G=lZI(I);if((0,Ch.isWrapped)(G.prototype.query))this._unwrap(G.prototype,"query");if((0,Ch.isWrapped)(G.prototype.connect))this._unwrap(G.prototype,"connect");return I}_getClientConnectPatch(){let I=this;return(G)=>{return function(l){if(Td.shouldSkipInstrumentation(I.getConfig()))return G.call(this,l);let b=I.tracer.startSpan(YLG.SpanNames.CONNECT,{kind:Yc.SpanKind.CLIENT,attributes:Td.getSemanticAttributesFromConnection(this)});if(l){let N=Yc.trace.getSpan(Yc.context.active());if(l=Td.patchClientConnectCallback(b,l),N)l=Yc.context.bind(Yc.context.active(),l)}let W=Yc.context.with(Yc.trace.setSpan(Yc.context.active(),b),()=>{return G.call(this,l)});return cLG(b,W)}}}recordOperationDuration(I,G){let Z={};[_y.SEMATTRS_DB_SYSTEM,Nz.ATTR_DB_NAMESPACE,_y.ATTR_ERROR_TYPE,_y.ATTR_SERVER_PORT,_y.ATTR_SERVER_ADDRESS,Nz.ATTR_DB_OPERATION_NAME].forEach((W)=>{if(W in I)Z[W]=I[W]});let b=(0,ZZI.hrTimeToMilliseconds)((0,ZZI.hrTimeDuration)(G,(0,ZZI.hrTime)()))/1000;this._operationDuration.record(b,Z)}_getClientQueryPatch(){let I=this;return(G)=>{return this._diag.debug("Patching pg.Client.prototype.query"),function(...l){if(Td.shouldSkipInstrumentation(I.getConfig()))return G.apply(this,l);let b=(0,ZZI.hrTime)(),W=l[0],N=typeof W==="string",Y=Td.isObjectWithTextString(W),c=N?{text:W,values:Array.isArray(l[1])?l[1]:void 0}:Y?W:void 0,V={[_y.SEMATTRS_DB_SYSTEM]:_y.DBSYSTEMVALUES_POSTGRESQL,[Nz.ATTR_DB_NAMESPACE]:this.database,[_y.ATTR_SERVER_PORT]:this.connectionParameters.port,[_y.ATTR_SERVER_ADDRESS]:this.connectionParameters.host};if(c===null||c===void 0?void 0:c.text)V[Nz.ATTR_DB_OPERATION_NAME]=Td.parseNormalizedOperationName(c===null||c===void 0?void 0:c.text);let d=()=>{I.recordOperationDuration(V,b)},Q=I.getConfig(),X=Td.handleConfigQuery.call(this,I.tracer,Q,c);if(Q.addSqlCommenterCommentToQueries){if(N)l[0]=(0,WLG.addSqlCommenterComment)(X,W);else if(Y&&!("name"in W))l[0]=Object.assign(Object.assign({},W),{text:(0,WLG.addSqlCommenterComment)(X,W.text)})}if(l.length>0){let h=Yc.trace.getSpan(Yc.context.active());if(typeof l[l.length-1]==="function"){if(l[l.length-1]=Td.patchCallback(Q,X,l[l.length-1],V,d),h)l[l.length-1]=Yc.context.bind(Yc.context.active(),l[l.length-1])}else if(typeof(c===null||c===void 0?void 0:c.callback)==="function"){let A=Td.patchCallback(I.getConfig(),X,c.callback,V,d);if(h)A=Yc.context.bind(Yc.context.active(),A);l[0].callback=A}}let{requestHook:R}=Q;if(typeof R==="function"&&c)(0,Ch.safeExecuteInTheMiddle)(()=>{let{database:h,host:A,port:C,user:g}=this.connectionParameters;R(X,{connection:{database:h,host:A,port:C,user:g},query:{text:c.text,values:c.values,name:c.name}})},(h)=>{if(h)I._diag.error("Error running query hook",h)},!0);let H;try{H=G.apply(this,l)}catch(h){throw X.setStatus({code:Yc.SpanStatusCode.ERROR,message:Td.getErrorMessage(h)}),X.end(),h}if(H instanceof Promise)return H.then((h)=>{return new Promise((A)=>{Td.handleExecutionResult(I.getConfig(),X,h),d(),X.end(),A(h)})}).catch((h)=>{return new Promise((A,C)=>{X.setStatus({code:Yc.SpanStatusCode.ERROR,message:h.message}),d(),X.end(),C(h)})});return H}}}_setPoolConnectEventListeners(I){if(I[bLG.EVENT_LISTENERS_SET])return;let G=Td.getPoolName(I.options);I.on("connect",()=>{this._connectionsCounter=Td.updateCounter(G,I,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),I.on("acquire",()=>{this._connectionsCounter=Td.updateCounter(G,I,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),I.on("remove",()=>{this._connectionsCounter=Td.updateCounter(G,I,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),I.on("release",()=>{this._connectionsCounter=Td.updateCounter(G,I,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),I[bLG.EVENT_LISTENERS_SET]=!0}_getPoolConnectPatch(){let I=this;return(G)=>{return function(l){if(Td.shouldSkipInstrumentation(I.getConfig()))return G.call(this,l);let b=I.tracer.startSpan(YLG.SpanNames.POOL_CONNECT,{kind:Yc.SpanKind.CLIENT,attributes:Td.getSemanticAttributesFromPool(this.options)});if(I._setPoolConnectEventListeners(this),l){let N=Yc.trace.getSpan(Yc.context.active());if(l=Td.patchCallbackPGPool(b,l),N)l=Yc.context.bind(Yc.context.active(),l)}let W=Yc.context.with(Yc.trace.setSpan(Yc.context.active(),b),()=>{return G.call(this,l)});return cLG(b,W)}}}}dLG.PgInstrumentation=VLG;function cLG(I,G){if(!(G instanceof Promise))return G;let Z=G;return Yc.context.bind(Yc.context.active(),Z.then((l)=>{return I.end(),l}).catch((l)=>{return I.setStatus({code:Yc.SpanStatusCode.ERROR,message:Td.getErrorMessage(l)}),I.end(),Promise.reject(l)}))}});var FLG=w((XLG)=>{Object.defineProperty(XLG,"__esModule",{value:!0})});var RLG=w((sv)=>{var VGb=sv&&sv.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),WvI=sv&&sv.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))VGb(G,I,Z)};Object.defineProperty(sv,"__esModule",{value:!0});WvI(QLG(),sv);WvI(FLG(),sv);WvI(IvI(),sv)});var HLG,hLG="Postgres",wLG,dGb=()=>{return{name:hLG,setupOnce(){wLG()}}},JLG;var ALG=a(()=>{Qb();vc();HLG=hI(RLG(),1),wLG=Rb(hLG,()=>new HLG.PgInstrumentation({requireParentSpan:!0,requestHook(I){IV(I,"auto.db.otel.postgres")}})),JLG=Gl(dGb)});var IM,$v,bX,NvI="PostgresJs",ELG,vLG,CLG,mGb=()=>{return{name:NvI,setupOnce(){vLG()}}},pLG;var yLG=a(()=>{Qb();vc();IM=hI(bl(),1),$v=hI(jN(),1),bX=hI(Nc(),1),ELG=[">=3.0.0 <4"],vLG=Rb(NvI,(I)=>new CLG({requireParentSpan:I?.requireParentSpan??!0,requestHook:I?.requestHook}));CLG=class CLG extends $v.InstrumentationBase{constructor(I){super("sentry-postgres-js",Wc,I)}init(){let I=new $v.InstrumentationNodeModuleDefinition("postgres",ELG);return["src","cf/src","cjs/src"].forEach((G)=>{I.files.push(new $v.InstrumentationNodeModuleFile(`postgres/${G}/connection.js`,["*"],this._patchConnection.bind(this),this._unwrap.bind(this))),I.files.push(new $v.InstrumentationNodeModuleFile(`postgres/${G}/query.js`,ELG,this._patchQuery.bind(this),this._unwrap.bind(this)))}),[I]}_shouldCreateSpans(){let I=this.getConfig();return IM.trace.getSpan(IM.context.active())!==void 0||!I.requireParentSpan}_patchReject(I,G){return new Proxy(I,{apply:(Z,l,b)=>{G.setStatus({code:A1,message:b?.[0]?.message||"unknown_error"});let W=Reflect.apply(Z,l,b);return G.setAttribute(bX.ATTR_DB_RESPONSE_STATUS_CODE,b?.[0]?.code||"Unknown error"),G.setAttribute(bX.ATTR_ERROR_TYPE,b?.[0]?.name||"Unknown error"),G.end(),W}})}_patchResolve(I,G){return new Proxy(I,{apply:(Z,l,b)=>{let W=Reflect.apply(Z,l,b),N=b?.[0]?.command;if(N)G.setAttribute(bX.ATTR_DB_OPERATION_NAME,N);return G.end(),W}})}_patchQuery(I){return I.Query.prototype.handle=new Proxy(I.Query.prototype.handle,{apply:async(G,Z,l)=>{if(!this._shouldCreateSpans())return Reflect.apply(G,Z,l);let b=this._sanitizeSqlQuery(Z.strings?.[0]);return OII({name:b||"postgresjs.query",op:"db"},(W)=>{let Y=$W().getScopeData().contexts.postgresjsConnection;IV(W,"auto.db.otel.postgres");let{requestHook:c}=this.getConfig();if(c)$v.safeExecuteInTheMiddle(()=>c(W,b,Y),(X)=>{if(X)LG.error(`Error in requestHook for ${NvI} integration:`,X)});let V=Y?.ATTR_DB_NAMESPACE||"<unknown database>",d=Y?.ATTR_SERVER_ADDRESS||"<unknown host>",Q=Y?.ATTR_SERVER_PORT||"<unknown port>";W.setAttribute(bX.ATTR_DB_SYSTEM_NAME,"postgres"),W.setAttribute(bX.ATTR_DB_NAMESPACE,V),W.setAttribute(bX.ATTR_SERVER_ADDRESS,d),W.setAttribute(bX.ATTR_SERVER_PORT,Q),W.setAttribute(bX.ATTR_DB_QUERY_TEXT,b),Z.resolve=this._patchResolve(Z.resolve,W),Z.reject=this._patchReject(Z.reject,W);try{return Reflect.apply(G,Z,l)}catch(X){throw W.setStatus({code:A1}),W.end(),X}})}}),I}_patchConnection(I){return new Proxy(I,{apply:(G,Z,l)=>{let b=l[0]?.database||"<unknown database>",W=l[0]?.host?.[0]||"<unknown host>",N=l[0]?.port?.[0]||"<unknown port>";return $W().setContext("postgresjsConnection",{ATTR_DB_NAMESPACE:b,ATTR_SERVER_ADDRESS:W,ATTR_SERVER_PORT:N}),Reflect.apply(G,Z,l)}})}_sanitizeSqlQuery(I){if(!I)return"Unknown SQL Query";return I.replace(/\s+/g," ").trim().substring(0,1024).replace(/--.*?(\r?\n|$)/g,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/;\s*$/,"").replace(/\b\d+\b/g,"?").replace(/\s+/g," ").replace(/\bIN\b\s*\(\s*\?(?:\s*,\s*\?)*\s*\)/g,"IN (?)")}};pLG=Gl(mGb)});function FGb(I){switch(I){case"client":return fy.SpanKind.CLIENT;case"internal":default:return fy.SpanKind.INTERNAL}}function aLG(I,G,Z,l,b){if(zLG(G.name,b))return;let W={attributes:G.attributes,kind:FGb(G.kind),startTime:G.startTime};I.startActiveSpan(G.name,W,(N)=>{if(l.set(G.id,N.spanContext().spanId),G.links)N.addLinks(G.links.flatMap((c)=>{let V=l.get(c);if(!V)return[];return{context:{spanId:V,traceId:N.spanContext().traceId,traceFlags:N.spanContext().traceFlags}}}));let Y=Z.filter((c)=>c.parentId===G.id);for(let c of Y)aLG(I,c,Z,l,b);N.end(G.endTime)})}function uLG(I,G){if(HGb(G))return G.then((Z)=>{return I.end(),Z},(Z)=>{throw I.end(),Z});return I.end(),G}function HGb(I){return I!=null&&typeof I.then==="function"}function zLG(I,G){return G.some((Z)=>typeof Z==="string"?Z===I:Z.test(I))}var gLG,bZI,fy,QGb,XGb="00-10-10-00",RGb=class{traceMiddleware;tracerProvider;ignoreSpanTypes;constructor({traceMiddleware:I,tracerProvider:G,ignoreSpanTypes:Z}){this.traceMiddleware=I,this.tracerProvider=G,this.ignoreSpanTypes=Z}isEnabled(){return!0}getTraceParent(I){let G=fy.trace.getSpanContext(I??fy.context.active());if(G)return`00-${G.traceId}-${G.spanId}-0${G.traceFlags}`;return XGb}dispatchEngineSpans(I){let G=this.tracerProvider.getTracer("prisma"),Z=new Map,l=I.filter((b)=>b.parentId===null);for(let b of l)aLG(G,b,I,Z,this.ignoreSpanTypes)}getActiveContext(){return fy.context.active()}runInChildSpan(I,G){if(typeof I==="string")I={name:I};if(I.internal&&!QGb)return G();if(I.middleware&&!this.traceMiddleware)return G();let Z=this.tracerProvider.getTracer("prisma"),l=I.context??this.getActiveContext(),b=`prisma:client:${I.name}`;if(zLG(b,this.ignoreSpanTypes))return G();if(I.active===!1){let W=Z.startSpan(b,I,l);return uLG(W,G(W,l))}return Z.startActiveSpan(b,I,(W)=>uLG(W,G(W,l)))}},BLG,cvI,hGb,LLG="PRISMA_INSTRUMENTATION",YvI,wGb,JGb="@prisma/client",kLG;var ULG=a(()=>{gLG=hI(bl(),1),bZI=hI(jN(),1),fy=hI(bl(),1),QGb=process.env.PRISMA_SHOW_ALL_TRACES==="true";BLG={name:"@prisma/instrumentation",version:"6.11.1",description:"OpenTelemetry compliant instrumentation for Prisma Client",main:"dist/index.js",module:"dist/index.mjs",types:"dist/index.d.ts",exports:{".":{require:{types:"./dist/index.d.ts",default:"./dist/index.js"},import:{types:"./dist/index.d.ts",default:"./dist/index.mjs"}}},license:"Apache-2.0",homepage:"https://www.prisma.io",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/instrumentation"},bugs:"https://github.com/prisma/prisma/issues",devDependencies:{"@prisma/internals":"workspace:*","@swc/core":"1.11.5","@types/jest":"29.5.14","@types/node":"18.19.76","@opentelemetry/api":"1.9.0",jest:"29.7.0","jest-junit":"16.0.0",typescript:"5.4.5"},dependencies:{"@opentelemetry/instrumentation":"^0.52.0 || ^0.53.0 || ^0.54.0 || ^0.55.0 || ^0.56.0 || ^0.57.0"},peerDependencies:{"@opentelemetry/api":"^1.8"},files:["dist"],keywords:["prisma","instrumentation","opentelemetry","otel"],scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",prepublishOnly:"pnpm run build",test:"jest"},sideEffects:!1},cvI=BLG.version,hGb=cvI.split(".")[0],YvI=`V${hGb}_PRISMA_INSTRUMENTATION`,wGb=BLG.name,kLG=class extends bZI.InstrumentationBase{tracerProvider;constructor(I={}){super(wGb,cvI,I)}setTracerProvider(I){this.tracerProvider=I}init(){return[new bZI.InstrumentationNodeModuleDefinition(JGb,[cvI])]}enable(){let I=this._config,G={helper:new RGb({traceMiddleware:I.middleware??!1,tracerProvider:this.tracerProvider??gLG.trace.getTracerProvider(),ignoreSpanTypes:I.ignoreSpanTypes??[]})};global[LLG]=G,global[YvI]=G}disable(){delete global[LLG],delete global[YvI]}isEnabled(){return Boolean(global[YvI])}}});function AGb(I){return!!I&&typeof I==="object"&&"dispatchEngineSpans"in I}function OLG(){let I=globalThis.PRISMA_INSTRUMENTATION;return I&&typeof I==="object"&&"helper"in I?I.helper:void 0}var xLG="Prisma",MLG,EGb,KLG;var DLG=a(()=>{ULG();Qb();vc();MLG=class MLG extends kLG{constructor(){super()}enable(){super.enable();let I=OLG(),G=!1;if(AGb(I))I.createEngineSpan=()=>{u2(()=>{if(!G)G=!0,console.warn("[Sentry] The Sentry SDK supports tracing with Prisma version 5 only with limited capabilities. For full tracing capabilities pass `prismaInstrumentation` for version 5 to the Sentry `prismaIntegration`. Read more: https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/prisma/")})}}};EGb=Rb(xLG,(I)=>{if(I?.prismaInstrumentation)return I.prismaInstrumentation;return new MLG}),KLG=Gl(({prismaInstrumentation:I}={})=>{return{name:xLG,setupOnce(){EGb({prismaInstrumentation:I})},setup(G){if(!OLG())return;G.on("spanStart",(Z)=>{let l=Bb(Z);if(l.description?.startsWith("prisma:"))Z.setAttribute(bY,"auto.db.otel.prisma");if(l.description==="prisma:engine:db_query"&&l.data["db.query.text"])Z.updateName(l.data["db.query.text"]);if(l.description==="prisma:engine:db_query"&&!l.data["db.system"])Z.setAttribute("db.system","prisma")})}}})});var qLG=w((jLG)=>{Object.defineProperty(jLG,"__esModule",{value:!0});jLG.PACKAGE_NAME=jLG.PACKAGE_VERSION=void 0;jLG.PACKAGE_VERSION="0.45.2";jLG.PACKAGE_NAME="@opentelemetry/instrumentation-hapi"});var VvI=w((TLG)=>{Object.defineProperty(TLG,"__esModule",{value:!0});TLG.HapiLifecycleMethodNames=TLG.HapiLayerType=TLG.handlerPatched=TLG.HapiComponentName=void 0;TLG.HapiComponentName="@hapi/hapi";TLG.handlerPatched=Symbol("hapi-handler-patched");TLG.HapiLayerType={ROUTER:"router",PLUGIN:"plugin",EXT:"server.ext"};TLG.HapiLifecycleMethodNames=new Set(["onPreAuth","onCredentials","onPostAuth","onPreHandler","onPostHandler","onPreResponse","onRequest"])});var mvI=w((iLG)=>{Object.defineProperty(iLG,"__esModule",{value:!0});iLG.AttributeNames=void 0;var uGb;(function(I){I.HAPI_TYPE="hapi.type",I.PLUGIN_NAME="hapi.plugin.name",I.EXT_TYPE="server.ext.type"})(uGb=iLG.AttributeNames||(iLG.AttributeNames={}))});var fLG=w((PLG)=>{Object.defineProperty(PLG,"__esModule",{value:!0});PLG.getPluginFromInput=PLG.getExtMetadata=PLG.getRouteMetadata=PLG.isPatchableExtMethod=PLG.isDirectExtInput=PLG.isLifecycleExtEventObj=PLG.isLifecycleExtType=PLG.getPluginName=void 0;var WZI=Nc(),WS=VvI(),sy=mvI();function LGb(I){if(I.name)return I.name;else return I.pkg.name}PLG.getPluginName=LGb;var gGb=(I)=>{return typeof I==="string"&&WS.HapiLifecycleMethodNames.has(I)};PLG.isLifecycleExtType=gGb;var aGb=(I)=>{var G;let Z=(G=I)===null||G===void 0?void 0:G.type;return Z!==void 0&&PLG.isLifecycleExtType(Z)};PLG.isLifecycleExtEventObj=aGb;var zGb=(I)=>{return Array.isArray(I)&&I.length<=3&&PLG.isLifecycleExtType(I[0])&&typeof I[1]==="function"};PLG.isDirectExtInput=zGb;var BGb=(I)=>{return!Array.isArray(I)};PLG.isPatchableExtMethod=BGb;var kGb=(I,G)=>{if(G)return{attributes:{[WZI.SEMATTRS_HTTP_ROUTE]:I.path,[WZI.SEMATTRS_HTTP_METHOD]:I.method,[sy.AttributeNames.HAPI_TYPE]:WS.HapiLayerType.PLUGIN,[sy.AttributeNames.PLUGIN_NAME]:G},name:`${G}: route - ${I.path}`};return{attributes:{[WZI.SEMATTRS_HTTP_ROUTE]:I.path,[WZI.SEMATTRS_HTTP_METHOD]:I.method,[sy.AttributeNames.HAPI_TYPE]:WS.HapiLayerType.ROUTER},name:`route - ${I.path}`}};PLG.getRouteMetadata=kGb;var UGb=(I,G)=>{if(G)return{attributes:{[sy.AttributeNames.EXT_TYPE]:I,[sy.AttributeNames.HAPI_TYPE]:WS.HapiLayerType.EXT,[sy.AttributeNames.PLUGIN_NAME]:G},name:`${G}: ext - ${I}`};return{attributes:{[sy.AttributeNames.EXT_TYPE]:I,[sy.AttributeNames.HAPI_TYPE]:WS.HapiLayerType.EXT},name:`ext - ${I}`}};PLG.getExtMetadata=UGb;var xGb=(I)=>{if("plugin"in I){if("plugin"in I.plugin)return I.plugin.plugin;return I.plugin}return I};PLG.getPluginFromInput=xGb});var eLG=w((tLG)=>{Object.defineProperty(tLG,"__esModule",{value:!0});tLG.HapiInstrumentation=void 0;var qR=bl(),sLG=lY(),NZI=jN(),$LG=qLG(),NS=VvI(),ov=fLG();class oLG extends NZI.InstrumentationBase{constructor(I={}){super($LG.PACKAGE_NAME,$LG.PACKAGE_VERSION,I)}init(){return new NZI.InstrumentationNodeModuleDefinition(NS.HapiComponentName,[">=17.0.0 <22"],(I)=>{let G=I[Symbol.toStringTag]==="Module"?I.default:I;if(!(0,NZI.isWrapped)(G.server))this._wrap(G,"server",this._getServerPatch.bind(this));if(!(0,NZI.isWrapped)(G.Server))this._wrap(G,"Server",this._getServerPatch.bind(this));return G},(I)=>{let G=I[Symbol.toStringTag]==="Module"?I.default:I;this._massUnwrap([G],["server","Server"])})}_getServerPatch(I){let G=this,Z=this;return function(b){let W=I.apply(this,[b]);return Z._wrap(W,"route",(N)=>{return G._getServerRoutePatch.bind(G)(N)}),Z._wrap(W,"ext",(N)=>{return G._getServerExtPatch.bind(G)(N)}),Z._wrap(W,"register",G._getServerRegisterPatch.bind(G)),W}}_getServerRegisterPatch(I){let G=this;return function(l,b){if(Array.isArray(l))for(let W of l){let N=(0,ov.getPluginFromInput)(W);G._wrapRegisterHandler(N)}else{let W=(0,ov.getPluginFromInput)(l);G._wrapRegisterHandler(W)}return I.apply(this,[l,b])}}_getServerExtPatch(I,G){let Z=this;return function(...b){if(Array.isArray(b[0])){let W=b[0];for(let N=0;N<W.length;N++){let Y=W[N];if((0,ov.isLifecycleExtType)(Y.type)){let c=Y,V=Z._wrapExtMethods(c.method,Y.type,G);c.method=V,W[N]=c}}return I.apply(this,b)}else if((0,ov.isDirectExtInput)(b)){let W=b,N=W[1],Y=Z._wrapExtMethods(N,W[0],G);return I.apply(this,[W[0],Y,W[2]])}else if((0,ov.isLifecycleExtEventObj)(b[0])){let W=b[0],N=Z._wrapExtMethods(W.method,W.type,G);return W.method=N,I.call(this,W)}return I.apply(this,b)}}_getServerRoutePatch(I,G){let Z=this;return function(l){if(Array.isArray(l))for(let b=0;b<l.length;b++){let W=Z._wrapRouteHandler.call(Z,l[b],G);l[b]=W}else l=Z._wrapRouteHandler.call(Z,l,G);return I.apply(this,[l])}}_wrapRegisterHandler(I){let G=this,Z=(0,ov.getPluginName)(I),l=I.register,b=this,W=function(N,Y){return b._wrap(N,"route",(c)=>{return G._getServerRoutePatch.bind(G)(c,Z)}),b._wrap(N,"ext",(c)=>{return G._getServerExtPatch.bind(G)(c,Z)}),l.call(this,N,Y)};I.register=W}_wrapExtMethods(I,G,Z){let l=this;if(I instanceof Array){for(let b=0;b<I.length;b++)I[b]=l._wrapExtMethods(I[b],G);return I}else if((0,ov.isPatchableExtMethod)(I)){if(I[NS.handlerPatched]===!0)return I;return I[NS.handlerPatched]=!0,async function(...W){if(qR.trace.getSpan(qR.context.active())===void 0)return await I.apply(this,W);let N=(0,ov.getExtMetadata)(G,Z),Y=l.tracer.startSpan(N.name,{attributes:N.attributes});try{return await qR.context.with(qR.trace.setSpan(qR.context.active(),Y),I,void 0,...W)}catch(c){throw Y.recordException(c),Y.setStatus({code:qR.SpanStatusCode.ERROR,message:c.message}),c}finally{Y.end()}}}return I}_wrapRouteHandler(I,G){var Z;let l=this;if(I[NS.handlerPatched]===!0)return I;I[NS.handlerPatched]=!0;let b=(W)=>{return async function(...N){if(qR.trace.getSpan(qR.context.active())===void 0)return await W.call(this,...N);let Y=(0,sLG.getRPCMetadata)(qR.context.active());if((Y===null||Y===void 0?void 0:Y.type)===sLG.RPCType.HTTP)Y.route=I.path;let c=(0,ov.getRouteMetadata)(I,G),V=l.tracer.startSpan(c.name,{attributes:c.attributes});try{return await qR.context.with(qR.trace.setSpan(qR.context.active(),V),()=>W.call(this,...N))}catch(d){throw V.recordException(d),V.setStatus({code:qR.SpanStatusCode.ERROR,message:d.message}),d}finally{V.end()}}};if(typeof I.handler==="function")I.handler=b(I.handler);else if(typeof I.options==="function"){let W=I.options;I.options=function(N){let Y=W(N);if(typeof Y.handler==="function")Y.handler=b(Y.handler);return Y}}else if(typeof((Z=I.options)===null||Z===void 0?void 0:Z.handler)==="function")I.options.handler=b(I.options.handler);return I}}tLG.HapiInstrumentation=oLG});var GgG=w(($y)=>{var qGb=$y&&$y.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),IgG=$y&&$y.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))qGb(G,I,Z)};Object.defineProperty($y,"__esModule",{value:!0});IgG(eLG(),$y);IgG(mvI(),$y)});var ZgG,lgG="Hapi",bgG,TGb=()=>{return{name:lgG,setupOnce(){bgG()}}},WgG;var NgG=a(()=>{Qb();vc();ZgG=hI(GgG(),1),bgG=Rb(lgG,()=>new ZgG.HapiInstrumentation),WgG=Gl(TGb)});var YZI=w((YgG)=>{Object.defineProperty(YgG,"__esModule",{value:!0});YgG.KoaLayerType=void 0;var SGb;(function(I){I.ROUTER="router",I.MIDDLEWARE="middleware"})(SGb=YgG.KoaLayerType||(YgG.KoaLayerType={}))});var dgG=w((cgG)=>{Object.defineProperty(cgG,"__esModule",{value:!0});cgG.PACKAGE_NAME=cgG.PACKAGE_VERSION=void 0;cgG.PACKAGE_VERSION="0.47.1";cgG.PACKAGE_NAME="@opentelemetry/instrumentation-koa"});var RvI=w((mgG)=>{Object.defineProperty(mgG,"__esModule",{value:!0});mgG.AttributeNames=void 0;var PGb;(function(I){I.KOA_TYPE="koa.type",I.KOA_NAME="koa.name"})(PGb=mgG.AttributeNames||(mgG.AttributeNames={}))});var RgG=w((XgG)=>{Object.defineProperty(XgG,"__esModule",{value:!0});XgG.isLayerIgnored=XgG.getMiddlewareMetadata=void 0;var QgG=YZI(),cZI=RvI(),_Gb=Nc(),fGb=(I,G,Z,l)=>{var b;if(Z)return{attributes:{[cZI.AttributeNames.KOA_NAME]:l===null||l===void 0?void 0:l.toString(),[cZI.AttributeNames.KOA_TYPE]:QgG.KoaLayerType.ROUTER,[_Gb.SEMATTRS_HTTP_ROUTE]:l===null||l===void 0?void 0:l.toString()},name:I._matchedRouteName||`router - ${l}`};else return{attributes:{[cZI.AttributeNames.KOA_NAME]:(b=G.name)!==null&&b!==void 0?b:"middleware",[cZI.AttributeNames.KOA_TYPE]:QgG.KoaLayerType.MIDDLEWARE},name:`middleware - ${G.name}`}};XgG.getMiddlewareMetadata=fGb;var sGb=(I,G)=>{var Z;return!!(Array.isArray(G===null||G===void 0?void 0:G.ignoreLayersType)&&((Z=G===null||G===void 0?void 0:G.ignoreLayersType)===null||Z===void 0?void 0:Z.includes(I)))};XgG.isLayerIgnored=sGb});var wgG=w((HgG)=>{Object.defineProperty(HgG,"__esModule",{value:!0});HgG.kLayerPatched=void 0;HgG.kLayerPatched=Symbol("koa-layer-patched")});var LgG=w((ygG)=>{Object.defineProperty(ygG,"__esModule",{value:!0});ygG.KoaInstrumentation=void 0;var c4=bl(),YS=jN(),JgG=YZI(),AgG=dgG(),EgG=RgG(),vgG=lY(),CgG=wgG();class pgG extends YS.InstrumentationBase{constructor(I={}){super(AgG.PACKAGE_NAME,AgG.PACKAGE_VERSION,I)}init(){return new YS.InstrumentationNodeModuleDefinition("koa",[">=2.0.0 <3"],(I)=>{let G=I[Symbol.toStringTag]==="Module"?I.default:I;if(G==null)return G;if((0,YS.isWrapped)(G.prototype.use))this._unwrap(G.prototype,"use");return this._wrap(G.prototype,"use",this._getKoaUsePatch.bind(this)),I},(I)=>{let G=I[Symbol.toStringTag]==="Module"?I.default:I;if((0,YS.isWrapped)(G.prototype.use))this._unwrap(G.prototype,"use")})}_getKoaUsePatch(I){let G=this;return function(l){let b;if(l.router)b=G._patchRouterDispatch(l);else b=G._patchLayer(l,!1);return I.apply(this,[b])}}_patchRouterDispatch(I){var G;c4.diag.debug("Patching @koa/router dispatch");let Z=I.router,l=(G=Z===null||Z===void 0?void 0:Z.stack)!==null&&G!==void 0?G:[];for(let b of l){let{path:W,stack:N}=b;for(let Y=0;Y<N.length;Y++){let c=N[Y];N[Y]=this._patchLayer(c,!0,W)}}return I}_patchLayer(I,G,Z){let l=G?JgG.KoaLayerType.ROUTER:JgG.KoaLayerType.MIDDLEWARE;if(I[CgG.kLayerPatched]===!0||(0,EgG.isLayerIgnored)(l,this.getConfig()))return I;if(I.constructor.name==="GeneratorFunction"||I.constructor.name==="AsyncGeneratorFunction")return c4.diag.debug("ignoring generator-based Koa middleware layer"),I;return I[CgG.kLayerPatched]=!0,c4.diag.debug("patching Koa middleware layer"),async(b,W)=>{if(c4.trace.getSpan(c4.context.active())===void 0)return I(b,W);let Y=(0,EgG.getMiddlewareMetadata)(b,I,G,Z),c=this.tracer.startSpan(Y.name,{attributes:Y.attributes}),V=(0,vgG.getRPCMetadata)(c4.context.active());if((V===null||V===void 0?void 0:V.type)===vgG.RPCType.HTTP&&b._matchedRoute)V.route=b._matchedRoute.toString();let{requestHook:d}=this.getConfig();if(d)(0,YS.safeExecuteInTheMiddle)(()=>d(c,{context:b,middlewareLayer:I,layerType:l}),(X)=>{if(X)c4.diag.error("koa instrumentation: request hook failed",X)},!0);let Q=c4.trace.setSpan(c4.context.active(),c);return c4.context.with(Q,async()=>{try{return await I(b,W)}catch(X){throw c.recordException(X),X}finally{c.end()}})}}}ygG.KoaInstrumentation=pgG});var ggG=w((tv)=>{var oGb=tv&&tv.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),HvI=tv&&tv.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))oGb(G,I,Z)};Object.defineProperty(tv,"__esModule",{value:!0});HvI(LgG(),tv);HvI(YZI(),tv);HvI(RvI(),tv)});var agG,zgG,BgG="Koa",kgG,tGb=(I={})=>{return{name:BgG,setupOnce(){kgG(I)}}},UgG;var xgG=a(()=>{Qb();vc();qT();agG=hI(ggG(),1),zgG=hI(Nc(),1),kgG=Rb(BgG,agG.KoaInstrumentation,(I={})=>{return{ignoreLayersType:I.ignoreLayersType,requestHook(G,Z){IV(G,"auto.http.otel.koa");let l=Bb(G).data,b=l["koa.type"];if(b)G.setAttribute(JW,`${b}.koa`);let W=l["koa.name"];if(typeof W==="string")G.updateName(W||"< unknown >");if(nN()===Q5()){N4&&LG.warn("Isolation scope is default isolation scope - skipping setting transactionName");return}let N=l[zgG.ATTR_HTTP_ROUTE],Y=Z.context?.request?.method?.toUpperCase()||"GET";if(N)nN().setTransactionName(`${Y} ${N}`)}}}),UgG=Gl(tGb)});var wvI=w((KgG)=>{Object.defineProperty(KgG,"__esModule",{value:!0});KgG.ConnectNames=KgG.ConnectTypes=KgG.AttributeNames=void 0;var rGb;(function(I){I.CONNECT_TYPE="connect.type",I.CONNECT_NAME="connect.name"})(rGb=KgG.AttributeNames||(KgG.AttributeNames={}));var eGb;(function(I){I.MIDDLEWARE="middleware",I.REQUEST_HANDLER="request_handler"})(eGb=KgG.ConnectTypes||(KgG.ConnectTypes={}));var IZb;(function(I){I.MIDDLEWARE="middleware",I.REQUEST_HANDLER="request handler"})(IZb=KgG.ConnectNames||(KgG.ConnectNames={}))});var ngG=w((DgG)=>{Object.defineProperty(DgG,"__esModule",{value:!0});DgG.PACKAGE_NAME=DgG.PACKAGE_VERSION=void 0;DgG.PACKAGE_VERSION="0.43.1";DgG.PACKAGE_NAME="@opentelemetry/instrumentation-connect"});var SgG=w((qgG)=>{Object.defineProperty(qgG,"__esModule",{value:!0});qgG._LAYERS_STORE_PROPERTY=void 0;qgG._LAYERS_STORE_PROPERTY=Symbol("opentelemetry.instrumentation-connect.request-route-stack")});var _gG=w((igG)=>{Object.defineProperty(igG,"__esModule",{value:!0});igG.generateRoute=igG.replaceCurrentStackRoute=igG.addNewStackLayer=void 0;var ZZb=bl(),oy=SgG(),lZb=(I)=>{if(Array.isArray(I[oy._LAYERS_STORE_PROPERTY])===!1)Object.defineProperty(I,oy._LAYERS_STORE_PROPERTY,{enumerable:!1,value:[]});I[oy._LAYERS_STORE_PROPERTY].push("/");let G=I[oy._LAYERS_STORE_PROPERTY].length;return()=>{if(G===I[oy._LAYERS_STORE_PROPERTY].length)I[oy._LAYERS_STORE_PROPERTY].pop();else ZZb.diag.warn("Connect: Trying to pop the stack multiple time")}};igG.addNewStackLayer=lZb;var bZb=(I,G)=>{if(G)I[oy._LAYERS_STORE_PROPERTY].splice(-1,1,G)};igG.replaceCurrentStackRoute=bZb;var WZb=(I)=>{return I[oy._LAYERS_STORE_PROPERTY].reduce((G,Z)=>G.replace(/\/+$/,"")+Z)};igG.generateRoute=WZb});var rgG=w((ogG)=>{Object.defineProperty(ogG,"__esModule",{value:!0});ogG.ConnectInstrumentation=ogG.ANONYMOUS_NAME=void 0;var cZb=bl(),fgG=lY(),GM=wvI(),sgG=ngG(),VZI=jN(),VZb=Nc(),JvI=_gG();ogG.ANONYMOUS_NAME="anonymous";class $gG extends VZI.InstrumentationBase{constructor(I={}){super(sgG.PACKAGE_NAME,sgG.PACKAGE_VERSION,I)}init(){return[new VZI.InstrumentationNodeModuleDefinition("connect",[">=3.0.0 <4"],(I)=>{return this._patchConstructor(I)})]}_patchApp(I){if(!(0,VZI.isWrapped)(I.use))this._wrap(I,"use",this._patchUse.bind(this));if(!(0,VZI.isWrapped)(I.handle))this._wrap(I,"handle",this._patchHandle.bind(this))}_patchConstructor(I){let G=this;return function(...Z){let l=I.apply(this,Z);return G._patchApp(l),l}}_patchNext(I,G){return function(l){let b=I.apply(this,[l]);return G(),b}}_startSpan(I,G){let Z,l,b;if(I)Z=GM.ConnectTypes.REQUEST_HANDLER,b=GM.ConnectNames.REQUEST_HANDLER,l=I;else Z=GM.ConnectTypes.MIDDLEWARE,b=GM.ConnectNames.MIDDLEWARE,l=G.name||ogG.ANONYMOUS_NAME;let W=`${b} - ${l}`,N={attributes:{[VZb.SEMATTRS_HTTP_ROUTE]:I.length>0?I:"/",[GM.AttributeNames.CONNECT_TYPE]:Z,[GM.AttributeNames.CONNECT_NAME]:l}};return this.tracer.startSpan(W,N)}_patchMiddleware(I,G){let Z=this,l=G.length===4;function b(){if(!Z.isEnabled())return G.apply(this,arguments);let[W,N,Y]=l?[1,2,3]:[0,1,2],c=arguments[W],V=arguments[N],d=arguments[Y];(0,JvI.replaceCurrentStackRoute)(c,I);let Q=(0,fgG.getRPCMetadata)(cZb.context.active());if(I&&(Q===null||Q===void 0?void 0:Q.type)===fgG.RPCType.HTTP)Q.route=(0,JvI.generateRoute)(c);let X="";if(I)X=`request handler - ${I}`;else X=`middleware - ${G.name||ogG.ANONYMOUS_NAME}`;let R=Z._startSpan(I,G);Z._diag.debug("start span",X);let H=!1;function h(){if(!H)H=!0,Z._diag.debug(`finishing span ${R.name}`),R.end();else Z._diag.debug(`span ${R.name} - already finished`);V.removeListener("close",h)}return V.addListener("close",h),arguments[Y]=Z._patchNext(d,h),G.apply(this,arguments)}return Object.defineProperty(b,"length",{value:G.length,writable:!1,configurable:!0}),b}_patchUse(I){let G=this;return function(...Z){let l=Z[Z.length-1],b=Z[Z.length-2]||"";return Z[Z.length-1]=G._patchMiddleware(b,l),I.apply(this,Z)}}_patchHandle(I){let G=this;return function(){let[Z,l]=[0,2],b=arguments[Z],W=arguments[l],N=(0,JvI.addNewStackLayer)(b);if(typeof W==="function")arguments[l]=G._patchOut(W,N);return I.apply(this,arguments)}}_patchOut(I,G){return function(...l){return G(),Reflect.apply(I,this,l)}}}ogG.ConnectInstrumentation=$gG});var IaG=w((ty)=>{var dZb=ty&&ty.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),egG=ty&&ty.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))dZb(G,I,Z)};Object.defineProperty(ty,"__esModule",{value:!0});egG(wvI(),ty);egG(rgG(),ty)});var GaG,ZaG="Connect",laG,mZb=()=>{return{name:ZaG,setupOnce(){laG()}}},baG;var WaG=a(()=>{Qb();vc();GaG=hI(IaG(),1),laG=Rb(ZaG,()=>new GaG.ConnectInstrumentation),baG=Gl(mZb)});var caG=w((NaG)=>{Object.defineProperty(NaG,"__esModule",{value:!0});NaG.once=NaG.getSpanName=void 0;function QZb(I,G,Z,l){if(I==="execBulkLoad"&&l&&G)return`${I} ${l} ${G}`;if(I==="callProcedure"){if(G)return`${I} ${Z} ${G}`;return`${I} ${Z}`}if(G)return`${I} ${G}`;return`${I}`}NaG.getSpanName=QZb;var XZb=(I)=>{let G=!1;return(...Z)=>{if(G)return;return G=!0,I(...Z)}};NaG.once=XZb});var maG=w((VaG)=>{Object.defineProperty(VaG,"__esModule",{value:!0});VaG.PACKAGE_NAME=VaG.PACKAGE_VERSION=void 0;VaG.PACKAGE_VERSION="0.18.1";VaG.PACKAGE_NAME="@opentelemetry/instrumentation-tedious"});var waG=w((HaG)=>{Object.defineProperty(HaG,"__esModule",{value:!0});HaG.TediousInstrumentation=void 0;var cS=bl(),HZb=KI("events"),dZI=jN(),ry=Nc(),QaG=caG(),XaG=maG(),RaG=Symbol("opentelemetry.instrumentation-tedious.current-database"),FaG=["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"];function mZI(I){Object.defineProperty(this,RaG,{value:I,writable:!0})}class QZI extends dZI.InstrumentationBase{constructor(I={}){super(XaG.PACKAGE_NAME,XaG.PACKAGE_VERSION,I)}init(){return[new dZI.InstrumentationNodeModuleDefinition(QZI.COMPONENT,[">=1.11.0 <20"],(I)=>{let G=I.Connection.prototype;for(let Z of FaG){if((0,dZI.isWrapped)(G[Z]))this._unwrap(G,Z);this._wrap(G,Z,this._patchQuery(Z))}if((0,dZI.isWrapped)(G.connect))this._unwrap(G,"connect");return this._wrap(G,"connect",this._patchConnect),I},(I)=>{if(I===void 0)return;let G=I.Connection.prototype;for(let Z of FaG)this._unwrap(G,Z);this._unwrap(G,"connect")})]}_patchConnect(I){return function(){var Z,l;return mZI.call(this,(l=(Z=this.config)===null||Z===void 0?void 0:Z.options)===null||l===void 0?void 0:l.database),this.removeListener("databaseChange",mZI),this.on("databaseChange",mZI),this.once("end",()=>{this.removeListener("databaseChange",mZI)}),I.apply(this,arguments)}}_patchQuery(I){return(G)=>{let Z=this;function l(b){var W,N,Y,c,V,d,Q,X;if(!(b instanceof HZb.EventEmitter))return Z._diag.warn(`Unexpected invocation of patched ${I} method. Span not recorded`),G.apply(this,arguments);let R=0,H=0,h=()=>H++,A=()=>R++,C=this[RaG],g=((x)=>{var n,_;if(x.sqlTextOrProcedure==="sp_prepare"&&((_=(n=x.parametersByName)===null||n===void 0?void 0:n.stmt)===null||_===void 0?void 0:_.value))return x.parametersByName.stmt.value;return x.sqlTextOrProcedure})(b),z=Z.tracer.startSpan((0,QaG.getSpanName)(I,C,g,b.table),{kind:cS.SpanKind.CLIENT,attributes:{[ry.SEMATTRS_DB_SYSTEM]:ry.DBSYSTEMVALUES_MSSQL,[ry.SEMATTRS_DB_NAME]:C,[ry.SEMATTRS_NET_PEER_PORT]:(N=(W=this.config)===null||W===void 0?void 0:W.options)===null||N===void 0?void 0:N.port,[ry.SEMATTRS_NET_PEER_NAME]:(Y=this.config)===null||Y===void 0?void 0:Y.server,[ry.SEMATTRS_DB_USER]:(V=(c=this.config)===null||c===void 0?void 0:c.userName)!==null&&V!==void 0?V:(X=(Q=(d=this.config)===null||d===void 0?void 0:d.authentication)===null||Q===void 0?void 0:Q.options)===null||X===void 0?void 0:X.userName,[ry.SEMATTRS_DB_STATEMENT]:g,[ry.SEMATTRS_DB_SQL_TABLE]:b.table}}),k=(0,QaG.once)((x)=>{if(b.removeListener("done",h),b.removeListener("doneInProc",h),b.removeListener("doneProc",A),b.removeListener("error",k),this.removeListener("end",k),z.setAttribute("tedious.procedure_count",R),z.setAttribute("tedious.statement_count",H),x)z.setStatus({code:cS.SpanStatusCode.ERROR,message:x.message});z.end()});if(b.on("done",h),b.on("doneInProc",h),b.on("doneProc",A),b.once("error",k),this.on("end",k),typeof b.callback==="function")Z._wrap(b,"callback",Z._patchCallbackQuery(k));else Z._diag.error("Expected request.callback to be a function");return cS.context.with(cS.trace.setSpan(cS.context.active(),z),G,this,...arguments)}return Object.defineProperty(l,"length",{value:G.length,writable:!1}),l}}_patchCallbackQuery(I){return(G)=>{return function(Z,l,b){return I(Z),G.apply(this,arguments)}}}}HaG.TediousInstrumentation=QZI;QZI.COMPONENT="tedious"});var AaG=w((JaG)=>{Object.defineProperty(JaG,"__esModule",{value:!0})});var vaG=w((ey)=>{var hZb=ey&&ey.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),EaG=ey&&ey.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))hZb(G,I,Z)};Object.defineProperty(ey,"__esModule",{value:!0});EaG(waG(),ey);EaG(AaG(),ey)});var CaG,wZb,paG="Tedious",yaG,JZb=()=>{let I;return{name:paG,setupOnce(){let G=yaG();I=OT(G)},setup(G){I?.(()=>G.on("spanStart",(Z)=>{let{description:l,data:b}=Bb(Z);if(!l||b["db.system"]!=="mssql")return;let W=l.split(" ")[0]||"";if(wZb.has(W))Z.setAttribute(bY,"auto.db.otel.tedious")}))}}},uaG;var LaG=a(()=>{Qb();vc();CaG=hI(vaG(),1),wZb=new Set(["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"]),yaG=Rb(paG,()=>new CaG.TediousInstrumentation({})),uaG=Gl(JZb)});var zaG=w((gaG)=>{Object.defineProperty(gaG,"__esModule",{value:!0});gaG.PACKAGE_NAME=gaG.PACKAGE_VERSION=void 0;gaG.PACKAGE_VERSION="0.43.1";gaG.PACKAGE_NAME="@opentelemetry/instrumentation-generic-pool"});var OaG=w((UaG)=>{Object.defineProperty(UaG,"__esModule",{value:!0});UaG.GenericPoolInstrumentation=void 0;var ZM=bl(),Yz=jN(),BaG=zaG(),EvI="generic-pool";class kaG extends Yz.InstrumentationBase{constructor(I={}){super(BaG.PACKAGE_NAME,BaG.PACKAGE_VERSION,I);this._isDisabled=!1}init(){return[new Yz.InstrumentationNodeModuleDefinition(EvI,[">=3.0.0 <4"],(I)=>{let G=I.Pool;if((0,Yz.isWrapped)(G.prototype.acquire))this._unwrap(G.prototype,"acquire");return this._wrap(G.prototype,"acquire",this._acquirePatcher.bind(this)),I},(I)=>{let G=I.Pool;return this._unwrap(G.prototype,"acquire"),I}),new Yz.InstrumentationNodeModuleDefinition(EvI,[">=2.4.0 <3"],(I)=>{let G=I.Pool;if((0,Yz.isWrapped)(G.prototype.acquire))this._unwrap(G.prototype,"acquire");return this._wrap(G.prototype,"acquire",this._acquireWithCallbacksPatcher.bind(this)),I},(I)=>{let G=I.Pool;return this._unwrap(G.prototype,"acquire"),I}),new Yz.InstrumentationNodeModuleDefinition(EvI,[">=2.0.0 <2.4"],(I)=>{if(this._isDisabled=!1,(0,Yz.isWrapped)(I.Pool))this._unwrap(I,"Pool");return this._wrap(I,"Pool",this._poolWrapper.bind(this)),I},(I)=>{return this._isDisabled=!0,I})]}_acquirePatcher(I){let G=this;return function(...l){let b=ZM.context.active(),W=G.tracer.startSpan("generic-pool.acquire",{},b);return ZM.context.with(ZM.trace.setSpan(b,W),()=>{return I.call(this,...l).then((N)=>{return W.end(),N},(N)=>{throw W.recordException(N),W.end(),N})})}}_poolWrapper(I){let G=this;return function(){let l=I.apply(this,arguments);return G._wrap(l,"acquire",G._acquireWithCallbacksPatcher.bind(G)),l}}_acquireWithCallbacksPatcher(I){let G=this;return function(l,b){if(G._isDisabled)return I.call(this,l,b);let W=ZM.context.active(),N=G.tracer.startSpan("generic-pool.acquire",{},W);return ZM.context.with(ZM.trace.setSpan(W,N),()=>{I.call(this,(Y,c)=>{if(N.end(),l)return l(Y,c)},b)})}}}UaG.GenericPoolInstrumentation=kaG});var MaG=w((cz)=>{var EZb=cz&&cz.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),vZb=cz&&cz.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))EZb(G,I,Z)};Object.defineProperty(cz,"__esModule",{value:!0});vZb(OaG(),cz)});var KaG,DaG="GenericPool",jaG,CZb=()=>{let I;return{name:DaG,setupOnce(){let G=jaG();I=OT(G)},setup(G){I?.(()=>G.on("spanStart",(Z)=>{let b=Bb(Z).description;if(b==="generic-pool.aquire"||b==="generic-pool.acquire")Z.setAttribute(bY,"auto.db.otel.generic_pool")}))}}},naG;var qaG=a(()=>{Qb();vc();KaG=hI(MaG(),1),jaG=Rb(DaG,()=>new KaG.GenericPoolInstrumentation({})),naG=Gl(CZb)});var vvI=w((SaG)=>{Object.defineProperty(SaG,"__esModule",{value:!0});SaG.DEFAULT_CONFIG=SaG.EndOperation=void 0;var pZb;(function(I){I.AutoAck="auto ack",I.Ack="ack",I.AckAll="ackAll",I.Reject="reject",I.Nack="nack",I.NackAll="nackAll",I.ChannelClosed="channel closed",I.ChannelError="channel error",I.InstrumentationTimeout="instrumentation timeout"})(pZb=SaG.EndOperation||(SaG.EndOperation={}));SaG.DEFAULT_CONFIG={consumeTimeoutMs:60000,useLinksForConsume:!1}});var oaG=w((saG)=>{Object.defineProperty(saG,"__esModule",{value:!0});saG.isConfirmChannelTracing=saG.unmarkConfirmChannelTracing=saG.markConfirmChannelTracing=saG.getConnectionAttributesFromUrl=saG.getConnectionAttributesFromServer=saG.normalizeExchange=saG.CONNECTION_ATTRIBUTES=saG.CHANNEL_CONSUME_TIMEOUT_TIMER=saG.CHANNEL_SPANS_NOT_ENDED=saG.MESSAGE_STORED_SPAN=void 0;var CvI=bl(),rv=Nc();saG.MESSAGE_STORED_SPAN=Symbol("opentelemetry.amqplib.message.stored-span");saG.CHANNEL_SPANS_NOT_ENDED=Symbol("opentelemetry.amqplib.channel.spans-not-ended");saG.CHANNEL_CONSUME_TIMEOUT_TIMER=Symbol("opentelemetry.amqplib.channel.consumer-timeout-timer");saG.CONNECTION_ATTRIBUTES=Symbol("opentelemetry.amqplib.connection.attributes");var pvI=(0,CvI.createContextKey)("opentelemetry.amqplib.channel.is-confirm-channel"),yZb=(I)=>I!==""?I:"<default>";saG.normalizeExchange=yZb;var uZb=(I)=>{return I.replace(/:[^:@/]*@/,":***@")},PaG=(I,G)=>{return I||(G==="AMQP"?5672:5671)},_aG=(I)=>{let G=I||"amqp";return(G.endsWith(":")?G.substring(0,G.length-1):G).toUpperCase()},faG=(I)=>{return I||"localhost"},lM=(I,G,Z,l)=>{if(Z)return{[G]:Z};else return CvI.diag.error(`amqplib instrumentation: could not extract connection attribute ${l} from user supplied url`,{url:I}),{}},LZb=(I)=>{var G,Z;let l=(Z=(G=I.serverProperties.product)===null||G===void 0?void 0:G.toLowerCase)===null||Z===void 0?void 0:Z.call(G);if(l)return{[rv.SEMATTRS_MESSAGING_SYSTEM]:l};else return{}};saG.getConnectionAttributesFromServer=LZb;var gZb=(I)=>{let G={[rv.SEMATTRS_MESSAGING_PROTOCOL_VERSION]:"0.9.1"};if(I=I||"amqp://localhost",typeof I==="object"){let Z=I,l=_aG(Z===null||Z===void 0?void 0:Z.protocol);Object.assign(G,Object.assign({},lM(I,rv.SEMATTRS_MESSAGING_PROTOCOL,l,"protocol")));let b=faG(Z===null||Z===void 0?void 0:Z.hostname);Object.assign(G,Object.assign({},lM(I,rv.SEMATTRS_NET_PEER_NAME,b,"hostname")));let W=PaG(Z.port,l);Object.assign(G,Object.assign({},lM(I,rv.SEMATTRS_NET_PEER_PORT,W,"port")))}else{let Z=uZb(I);G[rv.SEMATTRS_MESSAGING_URL]=Z;try{let l=new URL(Z),b=_aG(l.protocol);Object.assign(G,Object.assign({},lM(Z,rv.SEMATTRS_MESSAGING_PROTOCOL,b,"protocol")));let W=faG(l.hostname);Object.assign(G,Object.assign({},lM(Z,rv.SEMATTRS_NET_PEER_NAME,W,"hostname")));let N=PaG(l.port?parseInt(l.port):void 0,b);Object.assign(G,Object.assign({},lM(Z,rv.SEMATTRS_NET_PEER_PORT,N,"port")))}catch(l){CvI.diag.error("amqplib instrumentation: error while extracting connection details from connection url",{censoredUrl:Z,err:l})}}return G};saG.getConnectionAttributesFromUrl=gZb;var aZb=(I)=>{return I.setValue(pvI,!0)};saG.markConfirmChannelTracing=aZb;var zZb=(I)=>{return I.deleteValue(pvI)};saG.unmarkConfirmChannelTracing=zZb;var BZb=(I)=>{return I.getValue(pvI)===!0};saG.isConfirmChannelTracing=BZb});var eaG=w((taG)=>{Object.defineProperty(taG,"__esModule",{value:!0});taG.PACKAGE_NAME=taG.PACKAGE_VERSION=void 0;taG.PACKAGE_VERSION="0.46.1";taG.PACKAGE_NAME="@opentelemetry/instrumentation-amqplib"});var bzG=w((ZzG)=>{Object.defineProperty(ZzG,"__esModule",{value:!0});ZzG.AmqplibInstrumentation=void 0;var eV=bl(),XZI=lY(),gY=jN(),y1=Nc(),NF=vvI(),g2=oaG(),IzG=eaG(),FZI=[">=0.5.5 <1"];class GzG extends gY.InstrumentationBase{constructor(I={}){super(IzG.PACKAGE_NAME,IzG.PACKAGE_VERSION,Object.assign(Object.assign({},NF.DEFAULT_CONFIG),I))}setConfig(I={}){super.setConfig(Object.assign(Object.assign({},NF.DEFAULT_CONFIG),I))}init(){let I=new gY.InstrumentationNodeModuleFile("amqplib/lib/channel_model.js",FZI,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),G=new gY.InstrumentationNodeModuleFile("amqplib/lib/callback_model.js",FZI,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),Z=new gY.InstrumentationNodeModuleFile("amqplib/lib/connect.js",FZI,this.patchConnect.bind(this),this.unpatchConnect.bind(this));return new gY.InstrumentationNodeModuleDefinition("amqplib",FZI,void 0,void 0,[I,Z,G])}patchConnect(I){if(I=this.unpatchConnect(I),!(0,gY.isWrapped)(I.connect))this._wrap(I,"connect",this.getConnectPatch.bind(this));return I}unpatchConnect(I){if((0,gY.isWrapped)(I.connect))this._unwrap(I,"connect");return I}patchChannelModel(I,G){if(!(0,gY.isWrapped)(I.Channel.prototype.publish))this._wrap(I.Channel.prototype,"publish",this.getPublishPatch.bind(this,G));if(!(0,gY.isWrapped)(I.Channel.prototype.consume))this._wrap(I.Channel.prototype,"consume",this.getConsumePatch.bind(this,G));if(!(0,gY.isWrapped)(I.Channel.prototype.ack))this._wrap(I.Channel.prototype,"ack",this.getAckPatch.bind(this,!1,NF.EndOperation.Ack));if(!(0,gY.isWrapped)(I.Channel.prototype.nack))this._wrap(I.Channel.prototype,"nack",this.getAckPatch.bind(this,!0,NF.EndOperation.Nack));if(!(0,gY.isWrapped)(I.Channel.prototype.reject))this._wrap(I.Channel.prototype,"reject",this.getAckPatch.bind(this,!0,NF.EndOperation.Reject));if(!(0,gY.isWrapped)(I.Channel.prototype.ackAll))this._wrap(I.Channel.prototype,"ackAll",this.getAckAllPatch.bind(this,!1,NF.EndOperation.AckAll));if(!(0,gY.isWrapped)(I.Channel.prototype.nackAll))this._wrap(I.Channel.prototype,"nackAll",this.getAckAllPatch.bind(this,!0,NF.EndOperation.NackAll));if(!(0,gY.isWrapped)(I.Channel.prototype.emit))this._wrap(I.Channel.prototype,"emit",this.getChannelEmitPatch.bind(this));if(!(0,gY.isWrapped)(I.ConfirmChannel.prototype.publish))this._wrap(I.ConfirmChannel.prototype,"publish",this.getConfirmedPublishPatch.bind(this,G));return I}unpatchChannelModel(I){if((0,gY.isWrapped)(I.Channel.prototype.publish))this._unwrap(I.Channel.prototype,"publish");if((0,gY.isWrapped)(I.Channel.prototype.consume))this._unwrap(I.Channel.prototype,"consume");if((0,gY.isWrapped)(I.Channel.prototype.ack))this._unwrap(I.Channel.prototype,"ack");if((0,gY.isWrapped)(I.Channel.prototype.nack))this._unwrap(I.Channel.prototype,"nack");if((0,gY.isWrapped)(I.Channel.prototype.reject))this._unwrap(I.Channel.prototype,"reject");if((0,gY.isWrapped)(I.Channel.prototype.ackAll))this._unwrap(I.Channel.prototype,"ackAll");if((0,gY.isWrapped)(I.Channel.prototype.nackAll))this._unwrap(I.Channel.prototype,"nackAll");if((0,gY.isWrapped)(I.Channel.prototype.emit))this._unwrap(I.Channel.prototype,"emit");if((0,gY.isWrapped)(I.ConfirmChannel.prototype.publish))this._unwrap(I.ConfirmChannel.prototype,"publish");return I}getConnectPatch(I){return function(Z,l,b){return I.call(this,Z,l,function(W,N){if(W==null){let Y=(0,g2.getConnectionAttributesFromUrl)(Z),c=(0,g2.getConnectionAttributesFromServer)(N);N[g2.CONNECTION_ATTRIBUTES]=Object.assign(Object.assign({},Y),c)}b.apply(this,arguments)})}}getChannelEmitPatch(I){let G=this;return function(l){if(l==="close"){G.endAllSpansOnChannel(this,!0,NF.EndOperation.ChannelClosed,void 0);let b=this[g2.CHANNEL_CONSUME_TIMEOUT_TIMER];if(b)clearInterval(b);this[g2.CHANNEL_CONSUME_TIMEOUT_TIMER]=void 0}else if(l==="error")G.endAllSpansOnChannel(this,!0,NF.EndOperation.ChannelError,void 0);return I.apply(this,arguments)}}getAckAllPatch(I,G,Z){let l=this;return function(W){return l.endAllSpansOnChannel(this,I,G,W),Z.apply(this,arguments)}}getAckPatch(I,G,Z){let l=this;return function(W,N,Y){var c;let V=this,d=G===NF.EndOperation.Reject?N:Y,Q=(c=V[g2.CHANNEL_SPANS_NOT_ENDED])!==null&&c!==void 0?c:[],X=Q.findIndex((R)=>R.msg===W);if(X<0)l.endConsumerSpan(W,I,G,d);else if(G!==NF.EndOperation.Reject&&N){for(let R=0;R<=X;R++)l.endConsumerSpan(Q[R].msg,I,G,d);Q.splice(0,X+1)}else l.endConsumerSpan(W,I,G,d),Q.splice(X,1);return Z.apply(this,arguments)}}getConsumePatch(I,G){let Z=this;return function(b,W,N){let Y=this;if(!Object.prototype.hasOwnProperty.call(Y,g2.CHANNEL_SPANS_NOT_ENDED)){let{consumeTimeoutMs:V}=Z.getConfig();if(V){let d=setInterval(()=>{Z.checkConsumeTimeoutOnChannel(Y)},V);d.unref(),Y[g2.CHANNEL_CONSUME_TIMEOUT_TIMER]=d}Y[g2.CHANNEL_SPANS_NOT_ENDED]=[]}let c=function(V){var d,Q,X,R,H;if(!V)return W.call(this,V);let h=(d=V.properties.headers)!==null&&d!==void 0?d:{},A=eV.propagation.extract(eV.ROOT_CONTEXT,h),C=(Q=V.fields)===null||Q===void 0?void 0:Q.exchange,g;if(Z._config.useLinksForConsume){let n=A?(X=eV.trace.getSpan(A))===null||X===void 0?void 0:X.spanContext():void 0;if(A=void 0,n)g=[{context:n}]}let z=Z.tracer.startSpan(`${b} process`,{kind:eV.SpanKind.CONSUMER,attributes:Object.assign(Object.assign({},(R=Y===null||Y===void 0?void 0:Y.connection)===null||R===void 0?void 0:R[g2.CONNECTION_ATTRIBUTES]),{[y1.SEMATTRS_MESSAGING_DESTINATION]:C,[y1.SEMATTRS_MESSAGING_DESTINATION_KIND]:y1.MESSAGINGDESTINATIONKINDVALUES_TOPIC,[y1.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]:(H=V.fields)===null||H===void 0?void 0:H.routingKey,[y1.SEMATTRS_MESSAGING_OPERATION]:y1.MESSAGINGOPERATIONVALUES_PROCESS,[y1.SEMATTRS_MESSAGING_MESSAGE_ID]:V===null||V===void 0?void 0:V.properties.messageId,[y1.SEMATTRS_MESSAGING_CONVERSATION_ID]:V===null||V===void 0?void 0:V.properties.correlationId}),links:g},A),{consumeHook:k}=Z.getConfig();if(k)(0,gY.safeExecuteInTheMiddle)(()=>k(z,{moduleVersion:I,msg:V}),(n)=>{if(n)eV.diag.error("amqplib instrumentation: consumerHook error",n)},!0);if(!(N===null||N===void 0?void 0:N.noAck))Y[g2.CHANNEL_SPANS_NOT_ENDED].push({msg:V,timeOfConsume:(0,XZI.hrTime)()}),V[g2.MESSAGE_STORED_SPAN]=z;let x=A?A:eV.ROOT_CONTEXT;if(eV.context.with(eV.trace.setSpan(x,z),()=>{W.call(this,V)}),N===null||N===void 0?void 0:N.noAck)Z.callConsumeEndHook(z,V,!1,NF.EndOperation.AutoAck),z.end()};return arguments[1]=c,G.apply(this,arguments)}}getConfirmedPublishPatch(I,G){let Z=this;return function(b,W,N,Y,c){let V=this,{span:d,modifiedOptions:Q}=Z.createPublishSpan(Z,b,W,V,Y),{publishHook:X}=Z.getConfig();if(X)(0,gY.safeExecuteInTheMiddle)(()=>X(d,{moduleVersion:I,exchange:b,routingKey:W,content:N,options:Q,isConfirmChannel:!0}),(A)=>{if(A)eV.diag.error("amqplib instrumentation: publishHook error",A)},!0);let R=function(A,C){try{c===null||c===void 0||c.call(this,A,C)}finally{let{publishConfirmHook:g}=Z.getConfig();if(g)(0,gY.safeExecuteInTheMiddle)(()=>g(d,{moduleVersion:I,exchange:b,routingKey:W,content:N,options:Y,isConfirmChannel:!0,confirmError:A}),(z)=>{if(z)eV.diag.error("amqplib instrumentation: publishConfirmHook error",z)},!0);if(A)d.setStatus({code:eV.SpanStatusCode.ERROR,message:"message confirmation has been nack'ed"});d.end()}},H=(0,g2.markConfirmChannelTracing)(eV.context.active()),h=[...arguments];return h[3]=Q,h[4]=eV.context.bind((0,g2.unmarkConfirmChannelTracing)(eV.trace.setSpan(H,d)),R),eV.context.with(H,G.bind(this,...h))}}getPublishPatch(I,G){let Z=this;return function(b,W,N,Y){if((0,g2.isConfirmChannelTracing)(eV.context.active()))return G.apply(this,arguments);else{let c=this,{span:V,modifiedOptions:d}=Z.createPublishSpan(Z,b,W,c,Y),{publishHook:Q}=Z.getConfig();if(Q)(0,gY.safeExecuteInTheMiddle)(()=>Q(V,{moduleVersion:I,exchange:b,routingKey:W,content:N,options:d,isConfirmChannel:!1}),(H)=>{if(H)eV.diag.error("amqplib instrumentation: publishHook error",H)},!0);let X=[...arguments];X[3]=d;let R=G.apply(this,X);return V.end(),R}}}createPublishSpan(I,G,Z,l,b){var W;let N=(0,g2.normalizeExchange)(G),Y=I.tracer.startSpan(`publish ${N}`,{kind:eV.SpanKind.PRODUCER,attributes:Object.assign(Object.assign({},l.connection[g2.CONNECTION_ATTRIBUTES]),{[y1.SEMATTRS_MESSAGING_DESTINATION]:G,[y1.SEMATTRS_MESSAGING_DESTINATION_KIND]:y1.MESSAGINGDESTINATIONKINDVALUES_TOPIC,[y1.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]:Z,[y1.SEMATTRS_MESSAGING_MESSAGE_ID]:b===null||b===void 0?void 0:b.messageId,[y1.SEMATTRS_MESSAGING_CONVERSATION_ID]:b===null||b===void 0?void 0:b.correlationId})}),c=b!==null&&b!==void 0?b:{};return c.headers=(W=c.headers)!==null&&W!==void 0?W:{},eV.propagation.inject(eV.trace.setSpan(eV.context.active(),Y),c.headers),{span:Y,modifiedOptions:c}}endConsumerSpan(I,G,Z,l){let b=I[g2.MESSAGE_STORED_SPAN];if(!b)return;if(G!==!1)b.setStatus({code:eV.SpanStatusCode.ERROR,message:Z!==NF.EndOperation.ChannelClosed&&Z!==NF.EndOperation.ChannelError?`${Z} called on message${l===!0?" with requeue":l===!1?" without requeue":""}`:Z});this.callConsumeEndHook(b,I,G,Z),b.end(),I[g2.MESSAGE_STORED_SPAN]=void 0}endAllSpansOnChannel(I,G,Z,l){var b;((b=I[g2.CHANNEL_SPANS_NOT_ENDED])!==null&&b!==void 0?b:[]).forEach((N)=>{this.endConsumerSpan(N.msg,G,Z,l)}),I[g2.CHANNEL_SPANS_NOT_ENDED]=[]}callConsumeEndHook(I,G,Z,l){let{consumeEndHook:b}=this.getConfig();if(!b)return;(0,gY.safeExecuteInTheMiddle)(()=>b(I,{msg:G,rejected:Z,endOperation:l}),(W)=>{if(W)eV.diag.error("amqplib instrumentation: consumerEndHook error",W)},!0)}checkConsumeTimeoutOnChannel(I){var G;let Z=(0,XZI.hrTime)(),l=(G=I[g2.CHANNEL_SPANS_NOT_ENDED])!==null&&G!==void 0?G:[],b,{consumeTimeoutMs:W}=this.getConfig();for(b=0;b<l.length;b++){let N=l[b],Y=(0,XZI.hrTimeDuration)(N.timeOfConsume,Z);if((0,XZI.hrTimeToMilliseconds)(Y)<W)break;this.endConsumerSpan(N.msg,null,NF.EndOperation.InstrumentationTimeout,!0)}l.splice(0,b)}}ZzG.AmqplibInstrumentation=GzG});var NzG=w((Iu)=>{var TZb=Iu&&Iu.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),WzG=Iu&&Iu.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))TZb(G,I,Z)};Object.defineProperty(Iu,"__esModule",{value:!0});WzG(bzG(),Iu);WzG(vvI(),Iu)});var YzG,czG="Amqplib",SZb,VzG,iZb=()=>{return{name:czG,setupOnce(){VzG()}}},dzG;var mzG=a(()=>{Qb();vc();YzG=hI(NzG(),1),SZb={consumeEndHook:(I)=>{IV(I,"auto.amqplib.otel.consumer")},publishHook:(I)=>{IV(I,"auto.amqplib.otel.publisher")}},VzG=Rb(czG,()=>new YzG.AmqplibInstrumentation(SZb)),dzG=Gl(iZb)});var VS="VercelAI";var yvI=()=>{};function PZb(I,G,Z,l){let b=I?.recordInputs!==void 0?I.recordInputs:G.recordInputs!==void 0?G.recordInputs:Z===!0?!0:l,W=I?.recordOutputs!==void 0?I.recordOutputs:G.recordOutputs!==void 0?G.recordOutputs:Z===!0?!0:l;return{recordInputs:b,recordOutputs:W}}var RZI,QzG,dS;var XzG=a(()=>{Qb();yvI();RZI=hI(jN(),1),QzG=["generateText","streamText","generateObject","streamObject","embed","embedMany"];dS=class dS extends RZI.InstrumentationBase{__init(){this._isPatched=!1}__init2(){this._callbacks=[]}constructor(I={}){super("@sentry/instrumentation-vercel-ai",Wc,I);dS.prototype.__init.call(this),dS.prototype.__init2.call(this)}init(){return new RZI.InstrumentationNodeModuleDefinition("ai",[">=3.0.0 <5"],this._patch.bind(this))}callWhenPatched(I){if(this._isPatched)I();else this._callbacks.push(I)}_patch(I){this._isPatched=!0,this._callbacks.forEach((Z)=>Z()),this._callbacks=[];function G(Z){return(...l)=>{let b=l[0].experimental_telemetry||{},W=b.isEnabled,N=$W().getClient(),Y=N?.getIntegrationByName(VS),c=Y?.options,V=Y?Boolean(N?.getOptions().sendDefaultPii):!1,{recordInputs:d,recordOutputs:Q}=PZb(c,b,W,V);return l[0].experimental_telemetry={...b,isEnabled:W!==void 0?W:!0,recordInputs:d,recordOutputs:Q},kv(()=>{return Z.apply(this,l)},(X)=>{if(X&&typeof X==="object")nd(X,"_sentry_active_span",I4())})}}if(Object.prototype.toString.call(I)==="[object Module]"){for(let Z of QzG)I[Z]=G(I[Z]);return I}else{let Z=QzG.reduce((l,b)=>{return l[b]=G(I[b]),l},{});return{...I,...Z}}}}});function _Zb(I){return!!I.getIntegrationByName("Modules")?.getModules?.()?.ai}var FzG,fZb=(I={})=>{let G;return{name:VS,options:I,setupOnce(){G=FzG()},afterAllSetup(Z){if(I.force??_Zb(Z))WGI(Z);else G?.callWhenPatched(()=>WGI(Z))}}},RzG;var HzG=a(()=>{Qb();vc();yvI();XzG();FzG=Rb(VS,()=>new dS({}));RzG=Gl(fZb)});function $Zb(I,G){let Z=I?.recordInputs??G,l=I?.recordOutputs??G;return{recordInputs:Z,recordOutputs:l}}var HZI,sZb,uvI;var hzG=a(()=>{Qb();HZI=hI(jN(),1),sZb=[">=4.0.0 <6"];uvI=class uvI extends HZI.InstrumentationBase{constructor(I={}){super("@sentry/instrumentation-openai",Wc,I)}init(){return new HZI.InstrumentationNodeModuleDefinition("openai",sZb,this._patch.bind(this))}_patch(I){let G=I.OpenAI,Z=function(...l){let b=Reflect.construct(G,l),W=$W().getClient(),Y=W?.getIntegrationByName(vy)?.options,c=Boolean(W?.getOptions().sendDefaultPii),{recordInputs:V,recordOutputs:d}=$Zb(Y,c);return aAI(b,{recordInputs:V,recordOutputs:d})};Object.setPrototypeOf(Z,G),Object.setPrototypeOf(Z.prototype,G.prototype);for(let l of Object.getOwnPropertyNames(G))if(!["length","name","prototype"].includes(l)){let b=Object.getOwnPropertyDescriptor(G,l);if(b)Object.defineProperty(Z,l,b)}try{I.OpenAI=Z}catch(l){Object.defineProperty(I,"OpenAI",{value:Z,writable:!0,configurable:!0,enumerable:!0})}if(I.default===G)try{I.default=Z}catch(l){Object.defineProperty(I,"default",{value:Z,writable:!0,configurable:!0,enumerable:!0})}return I}}});var wzG,oZb=(I={})=>{return{name:vy,options:I,setupOnce(){wzG()}}},JzG;var AzG=a(()=>{Qb();vc();hzG();wzG=Rb(vy,()=>new uvI({})),JzG=Gl(oZb)});function EzG(){return[MCG(),k3G(),CpG(),uyG(),tyG(),JuG(),SuG(),K9G(),JLG(),KLG(),WgG(),UgG(),baG(),uaG(),naG(),PpG(),dzG(),YyG(),RzG(),JzG(),pLG()]}var vzG=a(()=>{mzG();WaG();KCG();O3G();qaG();ypG();NgG();_pG();xgG();cyG();LyG();ryG();AuG();iuG();AzG();ALG();yLG();DLG();D9G();LaG();HzG()});function yzG(I,G={}){if(I.getOptions().debug)o4I();let Z=rZb(I,G);I.traceProvider=Z}function rZb(I,G={}){let Z=new pzG.BasicTracerProvider({sampler:new C4I(I),resource:new CzG.Resource({[WM.ATTR_SERVICE_NAME]:"node",[WM.SEMRESATTRS_SERVICE_NAMESPACE]:"sentry",[WM.ATTR_SERVICE_VERSION]:Wc}),forceFlushTimeoutMillis:500,spanProcessors:[new v4I({timeout:eZb(I.getOptions().maxSpanWaitDuration)}),...G.spanProcessors||[]]});return bM.trace.setGlobalTracerProvider(Z),bM.propagation.setGlobalPropagator(new h4I),bM.context.setGlobalContextManager(new aGI),Z}function eZb(I){if(I==null)return;if(I>LvI)return N4&&LG.warn(`\`maxSpanWaitDuration\` is too high, using the maximum value of ${LvI}`),LvI;else if(I<=0||Number.isNaN(I)){N4&&LG.warn("`maxSpanWaitDuration` must be a positive number, using default value instead.");return}return I}var bM,CzG,pzG,WM,tZb,LvI=1e6;var uzG=a(()=>{Qb();vc();yy();qT();bM=hI(bl(),1),CzG=hI(G4I(),1),pzG=hI(b4I(),1),WM=hI(Nc(),1),tZb=hI(bII(),1)});function LzG(){return OGI().filter((G)=>G.name!=="Http"&&G.name!=="NodeFetch").concat(KT(),rvG())}function gzG(I){return[...LzG(),...e0(I)?EzG():[]]}function gvI(I={}){return Ilb(I,gzG)}function Ilb(I={},G){ia(I,"node");let Z=WEI({...I,defaultIntegrations:I.defaultIntegrations??G(I)});if(Z&&!I.skipOpenTelemetrySetup)yzG(Z,{spanProcessors:I.openTelemetrySpanProcessors}),MGI();return Z}var azG=a(()=>{Qb();vc();YEI();evG();vzG();uzG()});var avI=a(()=>{YEI();azG();Qb();vc()});function Zlb(){this.__data__=[],this.size=0}var zzG;var BzG=a(()=>{zzG=Zlb});function llb(I,G){return I===G||I!==I&&G!==G}var NM;var hZI=a(()=>{NM=llb});function blb(I,G){var Z=I.length;while(Z--)if(NM(I[Z][0],G))return Z;return-1}var Gu;var mS=a(()=>{hZI();Gu=blb});function Ylb(I){var G=this.__data__,Z=Gu(G,I);if(Z<0)return!1;var l=G.length-1;if(Z==l)G.pop();else Nlb.call(G,Z,1);return--this.size,!0}var Wlb,Nlb,kzG;var UzG=a(()=>{mS();Wlb=Array.prototype,Nlb=Wlb.splice;kzG=Ylb});function clb(I){var G=this.__data__,Z=Gu(G,I);return Z<0?void 0:G[Z][1]}var xzG;var OzG=a(()=>{mS();xzG=clb});function Vlb(I){return Gu(this.__data__,I)>-1}var MzG;var KzG=a(()=>{mS();MzG=Vlb});function dlb(I,G){var Z=this.__data__,l=Gu(Z,I);if(l<0)++this.size,Z.push([I,G]);else Z[l][1]=G;return this}var DzG;var jzG=a(()=>{mS();DzG=dlb});function YM(I){var G=-1,Z=I==null?0:I.length;this.clear();while(++G<Z){var l=I[G];this.set(l[0],l[1])}}var Zu;var QS=a(()=>{BzG();UzG();OzG();KzG();jzG();YM.prototype.clear=zzG;YM.prototype.delete=kzG;YM.prototype.get=xzG;YM.prototype.has=MzG;YM.prototype.set=DzG;Zu=YM});function mlb(){this.__data__=new Zu,this.size=0}var nzG;var qzG=a(()=>{QS();nzG=mlb});function Qlb(I){var G=this.__data__,Z=G.delete(I);return this.size=G.size,Z}var TzG;var SzG=a(()=>{TzG=Qlb});function Xlb(I){return this.__data__.get(I)}var izG;var PzG=a(()=>{izG=Xlb});function Flb(I){return this.__data__.has(I)}var _zG;var fzG=a(()=>{_zG=Flb});var Rlb,wZI;var zvI=a(()=>{Rlb=typeof global=="object"&&global&&global.Object===Object&&global,wZI=Rlb});var Hlb,hlb,Sd;var y5=a(()=>{zvI();Hlb=typeof self=="object"&&self&&self.Object===Object&&self,hlb=wZI||Hlb||Function("return this")(),Sd=hlb});var wlb,lm;var Vz=a(()=>{y5();wlb=Sd.Symbol,lm=wlb});function Elb(I){var G=Jlb.call(I,XS),Z=I[XS];try{I[XS]=void 0;var l=!0}catch(W){}var b=Alb.call(I);if(l)if(G)I[XS]=Z;else delete I[XS];return b}var szG,Jlb,Alb,XS,$zG;var ozG=a(()=>{Vz();szG=Object.prototype,Jlb=szG.hasOwnProperty,Alb=szG.toString,XS=lm?lm.toStringTag:void 0;$zG=Elb});function plb(I){return Clb.call(I)}var vlb,Clb,tzG;var rzG=a(()=>{vlb=Object.prototype,Clb=vlb.toString;tzG=plb});function Llb(I){if(I==null)return I===void 0?ulb:ylb;return ezG&&ezG in Object(I)?$zG(I):tzG(I)}var ylb="[object Null]",ulb="[object Undefined]",ezG,TR;var dz=a(()=>{Vz();ozG();rzG();ezG=lm?lm.toStringTag:void 0;TR=Llb});function glb(I){var G=typeof I;return I!=null&&(G=="object"||G=="function")}var YF;var lu=a(()=>{YF=glb});function Ulb(I){if(!YF(I))return!1;var G=TR(I);return G==zlb||G==Blb||G==alb||G==klb}var alb="[object AsyncFunction]",zlb="[object Function]",Blb="[object GeneratorFunction]",klb="[object Proxy]",JZI;var BvI=a(()=>{dz();lu();JZI=Ulb});var xlb,AZI;var IBG=a(()=>{y5();xlb=Sd["__core-js_shared__"],AZI=xlb});function Olb(I){return!!GBG&&GBG in I}var GBG,ZBG;var lBG=a(()=>{IBG();GBG=function(){var I=/[^.]+$/.exec(AZI&&AZI.keys&&AZI.keys.IE_PROTO||"");return I?"Symbol(src)_1."+I:""}();ZBG=Olb});function Dlb(I){if(I!=null){try{return Klb.call(I)}catch(G){}try{return I+""}catch(G){}}return""}var Mlb,Klb,ev;var kvI=a(()=>{Mlb=Function.prototype,Klb=Mlb.toString;ev=Dlb});function _lb(I){if(!YF(I)||ZBG(I))return!1;var G=JZI(I)?Plb:nlb;return G.test(ev(I))}var jlb,nlb,qlb,Tlb,Slb,ilb,Plb,bBG;var WBG=a(()=>{BvI();lBG();lu();kvI();jlb=/[\\^$.*+?()[\]{}|]/g,nlb=/^\[object .+?Constructor\]$/,qlb=Function.prototype,Tlb=Object.prototype,Slb=qlb.toString,ilb=Tlb.hasOwnProperty,Plb=RegExp("^"+Slb.call(ilb).replace(jlb,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");bBG=_lb});function flb(I,G){return I==null?void 0:I[G]}var NBG;var YBG=a(()=>{NBG=flb});function slb(I,G){var Z=NBG(I,G);return bBG(Z)?Z:void 0}var u1;var bu=a(()=>{WBG();YBG();u1=slb});var $lb,Wu;var EZI=a(()=>{bu();y5();$lb=u1(Sd,"Map"),Wu=$lb});var olb,IC;var FS=a(()=>{bu();olb=u1(Object,"create"),IC=olb});function tlb(){this.__data__=IC?IC(null):{},this.size=0}var cBG;var VBG=a(()=>{FS();cBG=tlb});function rlb(I){var G=this.has(I)&&delete this.__data__[I];return this.size-=G?1:0,G}var dBG;var mBG=a(()=>{dBG=rlb});function Zbb(I){var G=this.__data__;if(IC){var Z=G[I];return Z===elb?void 0:Z}return Gbb.call(G,I)?G[I]:void 0}var elb="__lodash_hash_undefined__",Ibb,Gbb,QBG;var XBG=a(()=>{FS();Ibb=Object.prototype,Gbb=Ibb.hasOwnProperty;QBG=Zbb});function Wbb(I){var G=this.__data__;return IC?G[I]!==void 0:bbb.call(G,I)}var lbb,bbb,FBG;var RBG=a(()=>{FS();lbb=Object.prototype,bbb=lbb.hasOwnProperty;FBG=Wbb});function Ybb(I,G){var Z=this.__data__;return this.size+=this.has(I)?0:1,Z[I]=IC&&G===void 0?Nbb:G,this}var Nbb="__lodash_hash_undefined__",HBG;var hBG=a(()=>{FS();HBG=Ybb});function cM(I){var G=-1,Z=I==null?0:I.length;this.clear();while(++G<Z){var l=I[G];this.set(l[0],l[1])}}var UvI;var wBG=a(()=>{VBG();mBG();XBG();RBG();hBG();cM.prototype.clear=cBG;cM.prototype.delete=dBG;cM.prototype.get=QBG;cM.prototype.has=FBG;cM.prototype.set=HBG;UvI=cM});function cbb(){this.size=0,this.__data__={hash:new UvI,map:new(Wu||Zu),string:new UvI}}var JBG;var ABG=a(()=>{wBG();QS();EZI();JBG=cbb});function Vbb(I){var G=typeof I;return G=="string"||G=="number"||G=="symbol"||G=="boolean"?I!=="__proto__":I===null}var EBG;var vBG=a(()=>{EBG=Vbb});function dbb(I,G){var Z=I.__data__;return EBG(G)?Z[typeof G=="string"?"string":"hash"]:Z.map}var Nu;var RS=a(()=>{vBG();Nu=dbb});function mbb(I){var G=Nu(this,I).delete(I);return this.size-=G?1:0,G}var CBG;var pBG=a(()=>{RS();CBG=mbb});function Qbb(I){return Nu(this,I).get(I)}var yBG;var uBG=a(()=>{RS();yBG=Qbb});function Xbb(I){return Nu(this,I).has(I)}var LBG;var gBG=a(()=>{RS();LBG=Xbb});function Fbb(I,G){var Z=Nu(this,I),l=Z.size;return Z.set(I,G),this.size+=Z.size==l?0:1,this}var aBG;var zBG=a(()=>{RS();aBG=Fbb});function VM(I){var G=-1,Z=I==null?0:I.length;this.clear();while(++G<Z){var l=I[G];this.set(l[0],l[1])}}var mz;var vZI=a(()=>{ABG();pBG();uBG();gBG();zBG();VM.prototype.clear=JBG;VM.prototype.delete=CBG;VM.prototype.get=yBG;VM.prototype.has=LBG;VM.prototype.set=aBG;mz=VM});function Hbb(I,G){var Z=this.__data__;if(Z instanceof Zu){var l=Z.__data__;if(!Wu||l.length<Rbb-1)return l.push([I,G]),this.size=++Z.size,this;Z=this.__data__=new mz(l)}return Z.set(I,G),this.size=Z.size,this}var Rbb=200,BBG;var kBG=a(()=>{QS();EZI();vZI();BBG=Hbb});function dM(I){var G=this.__data__=new Zu(I);this.size=G.size}var Yu;var CZI=a(()=>{QS();qzG();SzG();PzG();fzG();kBG();dM.prototype.clear=nzG;dM.prototype.delete=TzG;dM.prototype.get=izG;dM.prototype.has=_zG;dM.prototype.set=BBG;Yu=dM});function hbb(I,G){var Z=-1,l=I==null?0:I.length;while(++Z<l)if(G(I[Z],Z,I)===!1)break;return I}var UBG;var xBG=a(()=>{UBG=hbb});var wbb,mM;var xvI=a(()=>{bu();wbb=function(){try{var I=u1(Object,"defineProperty");return I({},"",{}),I}catch(G){}}(),mM=wbb});function Jbb(I,G,Z){if(G=="__proto__"&&mM)mM(I,G,{configurable:!0,enumerable:!0,value:Z,writable:!0});else I[G]=Z}var QM;var pZI=a(()=>{xvI();QM=Jbb});function vbb(I,G,Z){var l=I[G];if(!(Ebb.call(I,G)&&NM(l,Z))||Z===void 0&&!(G in I))QM(I,G,Z)}var Abb,Ebb,cu;var HS=a(()=>{pZI();hZI();Abb=Object.prototype,Ebb=Abb.hasOwnProperty;cu=vbb});function Cbb(I,G,Z,l){var b=!Z;Z||(Z={});var W=-1,N=G.length;while(++W<N){var Y=G[W],c=l?l(Z[Y],I[Y],Y,Z,I):void 0;if(c===void 0)c=I[Y];if(b)QM(Z,Y,c);else cu(Z,Y,c)}return Z}var V4;var XM=a(()=>{HS();pZI();V4=Cbb});function pbb(I,G){var Z=-1,l=Array(I);while(++Z<I)l[Z]=G(Z);return l}var yZI;var OvI=a(()=>{yZI=pbb});function ybb(I){return I!=null&&typeof I=="object"}var p0;var d4=a(()=>{p0=ybb});function Lbb(I){return p0(I)&&TR(I)==ubb}var ubb="[object Arguments]",MvI;var OBG=a(()=>{dz();d4();MvI=Lbb});var MBG,gbb,abb,zbb,FM;var uZI=a(()=>{OBG();d4();MBG=Object.prototype,gbb=MBG.hasOwnProperty,abb=MBG.propertyIsEnumerable,zbb=MvI(function(){return arguments}())?MvI:function(I){return p0(I)&&gbb.call(I,"callee")&&!abb.call(I,"callee")},FM=zbb});var Bbb,lV;var SR=a(()=>{Bbb=Array.isArray,lV=Bbb});function kbb(){return!1}var KBG;var DBG=a(()=>{KBG=kbb});var gZI={};w1(gZI,{default:()=>Vu});var qBG,jBG,Ubb,nBG,xbb,Obb,Vu;var aZI=a(()=>{y5();DBG();qBG=typeof gZI=="object"&&gZI&&!gZI.nodeType&&gZI,jBG=qBG&&typeof LZI=="object"&&LZI&&!LZI.nodeType&&LZI,Ubb=jBG&&jBG.exports===qBG,nBG=Ubb?Sd.Buffer:void 0,xbb=nBG?nBG.isBuffer:void 0,Obb=xbb||KBG,Vu=Obb});function Dbb(I,G){var Z=typeof I;return G=G==null?Mbb:G,!!G&&(Z=="number"||Z!="symbol"&&Kbb.test(I))&&(I>-1&&I%1==0&&I<G)}var Mbb=9007199254740991,Kbb,RM;var zZI=a(()=>{Kbb=/^(?:0|[1-9]\d*)$/;RM=Dbb});function nbb(I){return typeof I=="number"&&I>-1&&I%1==0&&I<=jbb}var jbb=9007199254740991,HM;var BZI=a(()=>{HM=nbb});function mWb(I){return p0(I)&&HM(I.length)&&!!bV[TR(I)]}var qbb="[object Arguments]",Tbb="[object Array]",Sbb="[object Boolean]",ibb="[object Date]",Pbb="[object Error]",_bb="[object Function]",fbb="[object Map]",sbb="[object Number]",$bb="[object Object]",obb="[object RegExp]",tbb="[object Set]",rbb="[object String]",ebb="[object WeakMap]",IWb="[object ArrayBuffer]",GWb="[object DataView]",ZWb="[object Float32Array]",lWb="[object Float64Array]",bWb="[object Int8Array]",WWb="[object Int16Array]",NWb="[object Int32Array]",YWb="[object Uint8Array]",cWb="[object Uint8ClampedArray]",VWb="[object Uint16Array]",dWb="[object Uint32Array]",bV,TBG;var SBG=a(()=>{dz();BZI();d4();bV={};bV[ZWb]=bV[lWb]=bV[bWb]=bV[WWb]=bV[NWb]=bV[YWb]=bV[cWb]=bV[VWb]=bV[dWb]=!0;bV[qbb]=bV[Tbb]=bV[IWb]=bV[Sbb]=bV[GWb]=bV[ibb]=bV[Pbb]=bV[_bb]=bV[fbb]=bV[sbb]=bV[$bb]=bV[obb]=bV[tbb]=bV[rbb]=bV[ebb]=!1;TBG=mWb});function QWb(I){return function(G){return I(G)}}var hM;var kZI=a(()=>{hM=QWb});var xZI={};w1(xZI,{default:()=>m4});var iBG,hS,XWb,KvI,FWb,m4;var OZI=a(()=>{zvI();iBG=typeof xZI=="object"&&xZI&&!xZI.nodeType&&xZI,hS=iBG&&typeof UZI=="object"&&UZI&&!UZI.nodeType&&UZI,XWb=hS&&hS.exports===iBG,KvI=XWb&&wZI.process,FWb=function(){try{var I=hS&&hS.require&&hS.require("util").types;if(I)return I;return KvI&&KvI.binding&&KvI.binding("util")}catch(G){}}(),m4=FWb});var PBG,RWb,MZI;var DvI=a(()=>{SBG();kZI();OZI();PBG=m4&&m4.isTypedArray,RWb=PBG?hM(PBG):TBG,MZI=RWb});function wWb(I,G){var Z=lV(I),l=!Z&&FM(I),b=!Z&&!l&&Vu(I),W=!Z&&!l&&!b&&MZI(I),N=Z||l||b||W,Y=N?yZI(I.length,String):[],c=Y.length;for(var V in I)if((G||hWb.call(I,V))&&!(N&&(V=="length"||b&&(V=="offset"||V=="parent")||W&&(V=="buffer"||V=="byteLength"||V=="byteOffset")||RM(V,c))))Y.push(V);return Y}var HWb,hWb,KZI;var jvI=a(()=>{OvI();uZI();SR();aZI();zZI();DvI();HWb=Object.prototype,hWb=HWb.hasOwnProperty;KZI=wWb});function AWb(I){var G=I&&I.constructor,Z=typeof G=="function"&&G.prototype||JWb;return I===Z}var JWb,wM;var DZI=a(()=>{JWb=Object.prototype;wM=AWb});function EWb(I,G){return function(Z){return I(G(Z))}}var jZI;var nvI=a(()=>{jZI=EWb});var vWb,_BG;var fBG=a(()=>{nvI();vWb=jZI(Object.keys,Object),_BG=vWb});function yWb(I){if(!wM(I))return _BG(I);var G=[];for(var Z in Object(I))if(pWb.call(I,Z)&&Z!="constructor")G.push(Z);return G}var CWb,pWb,sBG;var $BG=a(()=>{DZI();fBG();CWb=Object.prototype,pWb=CWb.hasOwnProperty;sBG=yWb});function uWb(I){return I!=null&&HM(I.length)&&!JZI(I)}var du;var wS=a(()=>{BvI();BZI();du=uWb});function LWb(I){return du(I)?KZI(I):sBG(I)}var ph;var Qz=a(()=>{jvI();$BG();wS();ph=LWb});function gWb(I,G){return I&&V4(G,ph(G),I)}var oBG;var tBG=a(()=>{XM();Qz();oBG=gWb});function aWb(I){var G=[];if(I!=null)for(var Z in Object(I))G.push(Z);return G}var rBG;var eBG=a(()=>{rBG=aWb});function kWb(I){if(!YF(I))return rBG(I);var G=wM(I),Z=[];for(var l in I)if(!(l=="constructor"&&(G||!BWb.call(I,l))))Z.push(l);return Z}var zWb,BWb,IkG;var GkG=a(()=>{lu();DZI();eBG();zWb=Object.prototype,BWb=zWb.hasOwnProperty;IkG=kWb});function UWb(I){return du(I)?KZI(I,!0):IkG(I)}var JM;var nZI=a(()=>{jvI();GkG();wS();JM=UWb});function xWb(I,G){return I&&V4(G,JM(G),I)}var ZkG;var lkG=a(()=>{XM();nZI();ZkG=xWb});var TZI={};w1(TZI,{default:()=>qvI});function MWb(I,G){if(G)return I.slice();var Z=I.length,l=NkG?NkG(Z):new I.constructor(Z);return I.copy(l),l}var YkG,bkG,OWb,WkG,NkG,qvI;var ckG=a(()=>{y5();YkG=typeof TZI=="object"&&TZI&&!TZI.nodeType&&TZI,bkG=YkG&&typeof qZI=="object"&&qZI&&!qZI.nodeType&&qZI,OWb=bkG&&bkG.exports===YkG,WkG=OWb?Sd.Buffer:void 0,NkG=WkG?WkG.allocUnsafe:void 0;qvI=MWb});function KWb(I,G){var Z=-1,l=I.length;G||(G=Array(l));while(++Z<l)G[Z]=I[Z];return G}var VkG;var dkG=a(()=>{VkG=KWb});function DWb(I,G){var Z=-1,l=I==null?0:I.length,b=0,W=[];while(++Z<l){var N=I[Z];if(G(N,Z,I))W[b++]=N}return W}var SZI;var TvI=a(()=>{SZI=DWb});function jWb(){return[]}var iZI;var SvI=a(()=>{iZI=jWb});var nWb,qWb,mkG,TWb,AM;var PZI=a(()=>{TvI();SvI();nWb=Object.prototype,qWb=nWb.propertyIsEnumerable,mkG=Object.getOwnPropertySymbols,TWb=!mkG?iZI:function(I){if(I==null)return[];return I=Object(I),SZI(mkG(I),function(G){return qWb.call(I,G)})},AM=TWb});function SWb(I,G){return V4(I,AM(I),G)}var QkG;var XkG=a(()=>{XM();PZI();QkG=SWb});function iWb(I,G){var Z=-1,l=G.length,b=I.length;while(++Z<l)I[b+Z]=G[Z];return I}var EM;var _ZI=a(()=>{EM=iWb});var PWb,vM;var fZI=a(()=>{nvI();PWb=jZI(Object.getPrototypeOf,Object),vM=PWb});var _Wb,fWb,sZI;var ivI=a(()=>{_ZI();fZI();PZI();SvI();_Wb=Object.getOwnPropertySymbols,fWb=!_Wb?iZI:function(I){var G=[];while(I)EM(G,AM(I)),I=vM(I);return G},sZI=fWb});function sWb(I,G){return V4(I,sZI(I),G)}var FkG;var RkG=a(()=>{XM();ivI();FkG=sWb});function $Wb(I,G,Z){var l=G(I);return lV(I)?l:EM(l,Z(I))}var $ZI;var PvI=a(()=>{_ZI();SR();$ZI=$Wb});function oWb(I){return $ZI(I,ph,AM)}var JS;var _vI=a(()=>{PvI();PZI();Qz();JS=oWb});function tWb(I){return $ZI(I,JM,sZI)}var CM;var oZI=a(()=>{PvI();ivI();nZI();CM=tWb});var rWb,tZI;var HkG=a(()=>{bu();y5();rWb=u1(Sd,"DataView"),tZI=rWb});var eWb,rZI;var hkG=a(()=>{bu();y5();eWb=u1(Sd,"Promise"),rZI=eWb});var INb,eZI;var wkG=a(()=>{bu();y5();INb=u1(Sd,"Set"),eZI=INb});var GNb,IlI;var JkG=a(()=>{bu();y5();GNb=u1(Sd,"WeakMap"),IlI=GNb});var AkG="[object Map]",ZNb="[object Object]",EkG="[object Promise]",vkG="[object Set]",CkG="[object WeakMap]",pkG="[object DataView]",lNb,bNb,WNb,NNb,YNb,Xz,GC;var AS=a(()=>{HkG();EZI();hkG();wkG();JkG();dz();kvI();lNb=ev(tZI),bNb=ev(Wu),WNb=ev(rZI),NNb=ev(eZI),YNb=ev(IlI),Xz=TR;if(tZI&&Xz(new tZI(new ArrayBuffer(1)))!=pkG||Wu&&Xz(new Wu)!=AkG||rZI&&Xz(rZI.resolve())!=EkG||eZI&&Xz(new eZI)!=vkG||IlI&&Xz(new IlI)!=CkG)Xz=function(I){var G=TR(I),Z=G==ZNb?I.constructor:void 0,l=Z?ev(Z):"";if(l)switch(l){case lNb:return pkG;case bNb:return AkG;case WNb:return EkG;case NNb:return vkG;case YNb:return CkG}return G};GC=Xz});function dNb(I){var G=I.length,Z=new I.constructor(G);if(G&&typeof I[0]=="string"&&VNb.call(I,"index"))Z.index=I.index,Z.input=I.input;return Z}var cNb,VNb,ykG;var ukG=a(()=>{cNb=Object.prototype,VNb=cNb.hasOwnProperty;ykG=dNb});var mNb,pM;var fvI=a(()=>{y5();mNb=Sd.Uint8Array,pM=mNb});function QNb(I){var G=new I.constructor(I.byteLength);return new pM(G).set(new pM(I)),G}var yM;var GlI=a(()=>{fvI();yM=QNb});function XNb(I,G){var Z=G?yM(I.buffer):I.buffer;return new I.constructor(Z,I.byteOffset,I.byteLength)}var LkG;var gkG=a(()=>{GlI();LkG=XNb});function RNb(I){var G=new I.constructor(I.source,FNb.exec(I));return G.lastIndex=I.lastIndex,G}var FNb,akG;var zkG=a(()=>{FNb=/\w*$/;akG=RNb});function HNb(I){return kkG?Object(kkG.call(I)):{}}var BkG,kkG,UkG;var xkG=a(()=>{Vz();BkG=lm?lm.prototype:void 0,kkG=BkG?BkG.valueOf:void 0;UkG=HNb});function hNb(I,G){var Z=G?yM(I.buffer):I.buffer;return new I.constructor(Z,I.byteOffset,I.length)}var OkG;var MkG=a(()=>{GlI();OkG=hNb});function KNb(I,G,Z){var l=I.constructor;switch(G){case uNb:return yM(I);case wNb:case JNb:return new l(+I);case LNb:return LkG(I,Z);case gNb:case aNb:case zNb:case BNb:case kNb:case UNb:case xNb:case ONb:case MNb:return OkG(I,Z);case ANb:return new l;case ENb:case pNb:return new l(I);case vNb:return akG(I);case CNb:return new l;case yNb:return UkG(I)}}var wNb="[object Boolean]",JNb="[object Date]",ANb="[object Map]",ENb="[object Number]",vNb="[object RegExp]",CNb="[object Set]",pNb="[object String]",yNb="[object Symbol]",uNb="[object ArrayBuffer]",LNb="[object DataView]",gNb="[object Float32Array]",aNb="[object Float64Array]",zNb="[object Int8Array]",BNb="[object Int16Array]",kNb="[object Int32Array]",UNb="[object Uint8Array]",xNb="[object Uint8ClampedArray]",ONb="[object Uint16Array]",MNb="[object Uint32Array]",KkG;var DkG=a(()=>{GlI();gkG();zkG();xkG();MkG();KkG=KNb});var jkG,DNb,nkG;var qkG=a(()=>{lu();jkG=Object.create,DNb=function(){function I(){}return function(G){if(!YF(G))return{};if(jkG)return jkG(G);I.prototype=G;var Z=new I;return I.prototype=void 0,Z}}(),nkG=DNb});function jNb(I){return typeof I.constructor=="function"&&!wM(I)?nkG(vM(I)):{}}var TkG;var SkG=a(()=>{qkG();fZI();DZI();TkG=jNb});function qNb(I){return p0(I)&&GC(I)==nNb}var nNb="[object Map]",ikG;var PkG=a(()=>{AS();d4();ikG=qNb});var _kG,TNb,fkG;var skG=a(()=>{PkG();kZI();OZI();_kG=m4&&m4.isMap,TNb=_kG?hM(_kG):ikG,fkG=TNb});function iNb(I){return p0(I)&&GC(I)==SNb}var SNb="[object Set]",$kG;var okG=a(()=>{AS();d4();$kG=iNb});var tkG,PNb,rkG;var ekG=a(()=>{okG();kZI();OZI();tkG=m4&&m4.isSet,PNb=tkG?hM(tkG):$kG,rkG=PNb});function ZlI(I,G,Z,l,b,W){var N,Y=G&_Nb,c=G&fNb,V=G&sNb;if(Z)N=b?Z(I,l,b,W):Z(I);if(N!==void 0)return N;if(!YF(I))return I;var d=lV(I);if(d){if(N=ykG(I),!Y)return VkG(I,N)}else{var Q=GC(I),X=Q==GUG||Q==eNb;if(Vu(I))return qvI(I,Y);if(Q==ZUG||Q==IUG||X&&!b){if(N=c||X?{}:TkG(I),!Y)return c?FkG(I,ZkG(N,I)):QkG(I,oBG(N,I))}else{if(!Oc[Q])return b?I:{};N=KkG(I,Q,Y)}}W||(W=new Yu);var R=W.get(I);if(R)return R;if(W.set(I,N),rkG(I))I.forEach(function(A){N.add(ZlI(A,G,Z,A,I,W))});else if(fkG(I))I.forEach(function(A,C){N.set(C,ZlI(A,G,Z,C,I,W))});var H=V?c?CM:JS:c?JM:ph,h=d?void 0:H(I);return UBG(h||I,function(A,C){if(h)C=A,A=I[C];cu(N,C,ZlI(A,G,Z,C,I,W))}),N}var _Nb=1,fNb=2,sNb=4,IUG="[object Arguments]",$Nb="[object Array]",oNb="[object Boolean]",tNb="[object Date]",rNb="[object Error]",GUG="[object Function]",eNb="[object GeneratorFunction]",IYb="[object Map]",GYb="[object Number]",ZUG="[object Object]",ZYb="[object RegExp]",lYb="[object Set]",bYb="[object String]",WYb="[object Symbol]",NYb="[object WeakMap]",YYb="[object ArrayBuffer]",cYb="[object DataView]",VYb="[object Float32Array]",dYb="[object Float64Array]",mYb="[object Int8Array]",QYb="[object Int16Array]",XYb="[object Int32Array]",FYb="[object Uint8Array]",RYb="[object Uint8ClampedArray]",HYb="[object Uint16Array]",hYb="[object Uint32Array]",Oc,llI;var svI=a(()=>{CZI();xBG();HS();tBG();lkG();ckG();dkG();XkG();RkG();_vI();oZI();AS();ukG();DkG();SkG();SR();aZI();skG();lu();ekG();Qz();nZI();Oc={};Oc[IUG]=Oc[$Nb]=Oc[YYb]=Oc[cYb]=Oc[oNb]=Oc[tNb]=Oc[VYb]=Oc[dYb]=Oc[mYb]=Oc[QYb]=Oc[XYb]=Oc[IYb]=Oc[GYb]=Oc[ZUG]=Oc[ZYb]=Oc[lYb]=Oc[bYb]=Oc[WYb]=Oc[FYb]=Oc[RYb]=Oc[HYb]=Oc[hYb]=!0;Oc[rNb]=Oc[GUG]=Oc[NYb]=!1;llI=ZlI});function AYb(I){return llI(I,wYb|JYb)}var wYb=1,JYb=4,ES;var lUG=a(()=>{svI();ES=AYb});function vYb(I){return this.__data__.set(I,EYb),this}var EYb="__lodash_hash_undefined__",bUG;var WUG=a(()=>{bUG=vYb});function CYb(I){return this.__data__.has(I)}var NUG;var YUG=a(()=>{NUG=CYb});function blI(I){var G=-1,Z=I==null?0:I.length;this.__data__=new mz;while(++G<Z)this.add(I[G])}var cUG;var VUG=a(()=>{vZI();WUG();YUG();blI.prototype.add=blI.prototype.push=bUG;blI.prototype.has=NUG;cUG=blI});function pYb(I,G){var Z=-1,l=I==null?0:I.length;while(++Z<l)if(G(I[Z],Z,I))return!0;return!1}var dUG;var mUG=a(()=>{dUG=pYb});function yYb(I,G){return I.has(G)}var QUG;var XUG=a(()=>{QUG=yYb});function gYb(I,G,Z,l,b,W){var N=Z&uYb,Y=I.length,c=G.length;if(Y!=c&&!(N&&c>Y))return!1;var V=W.get(I),d=W.get(G);if(V&&d)return V==G&&d==I;var Q=-1,X=!0,R=Z&LYb?new cUG:void 0;W.set(I,G),W.set(G,I);while(++Q<Y){var H=I[Q],h=G[Q];if(l)var A=N?l(h,H,Q,G,I,W):l(H,h,Q,I,G,W);if(A!==void 0){if(A)continue;X=!1;break}if(R){if(!dUG(G,function(C,g){if(!QUG(R,g)&&(H===C||b(H,C,Z,l,W)))return R.push(g)})){X=!1;break}}else if(!(H===h||b(H,h,Z,l,W))){X=!1;break}}return W.delete(I),W.delete(G),X}var uYb=1,LYb=2,WlI;var $vI=a(()=>{VUG();mUG();XUG();WlI=gYb});function aYb(I){var G=-1,Z=Array(I.size);return I.forEach(function(l,b){Z[++G]=[b,l]}),Z}var FUG;var RUG=a(()=>{FUG=aYb});function zYb(I){var G=-1,Z=Array(I.size);return I.forEach(function(l){Z[++G]=l}),Z}var HUG;var hUG=a(()=>{HUG=zYb});function iYb(I,G,Z,l,b,W,N){switch(Z){case SYb:if(I.byteLength!=G.byteLength||I.byteOffset!=G.byteOffset)return!1;I=I.buffer,G=G.buffer;case TYb:if(I.byteLength!=G.byteLength||!W(new pM(I),new pM(G)))return!1;return!0;case UYb:case xYb:case KYb:return NM(+I,+G);case OYb:return I.name==G.name&&I.message==G.message;case DYb:case nYb:return I==G+"";case MYb:var Y=FUG;case jYb:var c=l&BYb;if(Y||(Y=HUG),I.size!=G.size&&!c)return!1;var V=N.get(I);if(V)return V==G;l|=kYb,N.set(I,G);var d=WlI(Y(I),Y(G),l,b,W,N);return N.delete(I),d;case qYb:if(ovI)return ovI.call(I)==ovI.call(G)}return!1}var BYb=1,kYb=2,UYb="[object Boolean]",xYb="[object Date]",OYb="[object Error]",MYb="[object Map]",KYb="[object Number]",DYb="[object RegExp]",jYb="[object Set]",nYb="[object String]",qYb="[object Symbol]",TYb="[object ArrayBuffer]",SYb="[object DataView]",wUG,ovI,JUG;var AUG=a(()=>{Vz();fvI();hZI();$vI();RUG();hUG();wUG=lm?lm.prototype:void 0,ovI=wUG?wUG.valueOf:void 0;JUG=iYb});function sYb(I,G,Z,l,b,W){var N=Z&PYb,Y=JS(I),c=Y.length,V=JS(G),d=V.length;if(c!=d&&!N)return!1;var Q=c;while(Q--){var X=Y[Q];if(!(N?X in G:fYb.call(G,X)))return!1}var R=W.get(I),H=W.get(G);if(R&&H)return R==G&&H==I;var h=!0;W.set(I,G),W.set(G,I);var A=N;while(++Q<c){X=Y[Q];var C=I[X],g=G[X];if(l)var z=N?l(g,C,X,G,I,W):l(C,g,X,I,G,W);if(!(z===void 0?C===g||b(C,g,Z,l,W):z)){h=!1;break}A||(A=X=="constructor")}if(h&&!A){var k=I.constructor,x=G.constructor;if(k!=x&&(("constructor"in I)&&("constructor"in G))&&!(typeof k=="function"&&k instanceof k&&typeof x=="function"&&x instanceof x))h=!1}return W.delete(I),W.delete(G),h}var PYb=1,_Yb,fYb,EUG;var vUG=a(()=>{_vI();_Yb=Object.prototype,fYb=_Yb.hasOwnProperty;EUG=sYb});function tYb(I,G,Z,l,b,W){var N=lV(I),Y=lV(G),c=N?pUG:GC(I),V=Y?pUG:GC(G);c=c==CUG?NlI:c,V=V==CUG?NlI:V;var d=c==NlI,Q=V==NlI,X=c==V;if(X&&Vu(I)){if(!Vu(G))return!1;N=!0,d=!1}if(X&&!d)return W||(W=new Yu),N||MZI(I)?WlI(I,G,Z,l,b,W):JUG(I,G,c,Z,l,b,W);if(!(Z&$Yb)){var R=d&&yUG.call(I,"__wrapped__"),H=Q&&yUG.call(G,"__wrapped__");if(R||H){var h=R?I.value():I,A=H?G.value():G;return W||(W=new Yu),b(h,A,Z,l,W)}}if(!X)return!1;return W||(W=new Yu),EUG(I,G,Z,l,b,W)}var $Yb=1,CUG="[object Arguments]",pUG="[object Array]",NlI="[object Object]",oYb,yUG,uUG;var LUG=a(()=>{CZI();$vI();AUG();vUG();AS();SR();aZI();DvI();oYb=Object.prototype,yUG=oYb.hasOwnProperty;uUG=tYb});function gUG(I,G,Z,l,b){if(I===G)return!0;if(I==null||G==null||!p0(I)&&!p0(G))return I!==I&&G!==G;return uUG(I,G,Z,l,gUG,b)}var uM;var YlI=a(()=>{LUG();d4();uM=gUG});function rYb(I,G){return uM(I,G)}var clI;var aUG=a(()=>{YlI();clI=rYb});function eYb(I){var G=I==null?0:I.length;return G?I[G-1]:void 0}var u5;var tvI=a(()=>{u5=eYb});function Icb(I){return function(G,Z,l){var b=-1,W=Object(G),N=l(G),Y=N.length;while(Y--){var c=N[I?Y:++b];if(Z(W[c],c,W)===!1)break}return G}}var zUG;var BUG=a(()=>{zUG=Icb});var Gcb,kUG;var UUG=a(()=>{BUG();Gcb=zUG(),kUG=Gcb});function Zcb(I,G){return I&&kUG(I,G,ph)}var VlI;var rvI=a(()=>{UUG();Qz();VlI=Zcb});function Wcb(I,G,Z,l){var b=Z.length,W=b,N=!l;if(I==null)return!W;I=Object(I);while(b--){var Y=Z[b];if(N&&Y[2]?Y[1]!==I[Y[0]]:!(Y[0]in I))return!1}while(++b<W){Y=Z[b];var c=Y[0],V=I[c],d=Y[1];if(N&&Y[2]){if(V===void 0&&!(c in I))return!1}else{var Q=new Yu;if(l)var X=l(V,d,c,I,G,Q);if(!(X===void 0?uM(d,V,lcb|bcb,l,Q):X))return!1}}return!0}var lcb=1,bcb=2,xUG;var OUG=a(()=>{CZI();YlI();xUG=Wcb});function Ncb(I){return I===I&&!YF(I)}var dlI;var evI=a(()=>{lu();dlI=Ncb});function Ycb(I){var G=ph(I),Z=G.length;while(Z--){var l=G[Z],b=I[l];G[Z]=[l,b,dlI(b)]}return G}var MUG;var KUG=a(()=>{evI();Qz();MUG=Ycb});function ccb(I,G){return function(Z){if(Z==null)return!1;return Z[I]===G&&(G!==void 0||(I in Object(Z)))}}var mlI;var ICI=a(()=>{mlI=ccb});function Vcb(I){var G=MUG(I);if(G.length==1&&G[0][2])return mlI(G[0][0],G[0][1]);return function(Z){return Z===I||xUG(Z,I,G)}}var DUG;var jUG=a(()=>{OUG();KUG();ICI();DUG=Vcb});function mcb(I){return typeof I=="symbol"||p0(I)&&TR(I)==dcb}var dcb="[object Symbol]",LM;var QlI=a(()=>{dz();d4();LM=mcb});function Fcb(I,G){if(lV(I))return!1;var Z=typeof I;if(Z=="number"||Z=="symbol"||Z=="boolean"||I==null||LM(I))return!0;return Xcb.test(I)||!Qcb.test(I)||G!=null&&I in Object(G)}var Qcb,Xcb,gM;var XlI=a(()=>{SR();QlI();Qcb=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Xcb=/^\w*$/;gM=Fcb});function GCI(I,G){if(typeof I!="function"||G!=null&&typeof G!="function")throw TypeError(Rcb);var Z=function(){var l=arguments,b=G?G.apply(this,l):l[0],W=Z.cache;if(W.has(b))return W.get(b);var N=I.apply(this,l);return Z.cache=W.set(b,N)||W,N};return Z.cache=new(GCI.Cache||mz),Z}var Rcb="Expected a function",cb;var ZCI=a(()=>{vZI();GCI.Cache=mz;cb=GCI});function hcb(I){var G=cb(I,function(l){if(Z.size===Hcb)Z.clear();return l}),Z=G.cache;return G}var Hcb=500,nUG;var qUG=a(()=>{ZCI();nUG=hcb});var wcb,Jcb,Acb,TUG;var SUG=a(()=>{qUG();wcb=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Jcb=/\\(\\)?/g,Acb=nUG(function(I){var G=[];if(I.charCodeAt(0)===46)G.push("");return I.replace(wcb,function(Z,l,b,W){G.push(b?W.replace(Jcb,"$1"):l||Z)}),G}),TUG=Acb});function Ecb(I,G){var Z=-1,l=I==null?0:I.length,b=Array(l);while(++Z<l)b[Z]=G(I[Z],Z,I);return b}var Q4;var aM=a(()=>{Q4=Ecb});function _UG(I){if(typeof I=="string")return I;if(lV(I))return Q4(I,_UG)+"";if(LM(I))return PUG?PUG.call(I):"";var G=I+"";return G=="0"&&1/I==-vcb?"-0":G}var vcb=1/0,iUG,PUG,fUG;var sUG=a(()=>{Vz();aM();SR();QlI();iUG=lm?lm.prototype:void 0,PUG=iUG?iUG.toString:void 0;fUG=_UG});function Ccb(I){return I==null?"":fUG(I)}var $UG;var oUG=a(()=>{sUG();$UG=Ccb});function pcb(I,G){if(lV(I))return I;return gM(I,G)?[I]:TUG($UG(I))}var yh;var Fz=a(()=>{SR();XlI();SUG();oUG();yh=pcb});function ucb(I){if(typeof I=="string"||LM(I))return I;var G=I+"";return G=="0"&&1/I==-ycb?"-0":G}var ycb=1/0,uh;var Rz=a(()=>{QlI();uh=ucb});function Lcb(I,G){G=yh(G,I);var Z=0,l=G.length;while(I!=null&&Z<l)I=I[uh(G[Z++])];return Z&&Z==l?I:void 0}var mu;var vS=a(()=>{Fz();Rz();mu=Lcb});function gcb(I,G,Z){var l=I==null?void 0:mu(I,G);return l===void 0?Z:l}var tUG;var rUG=a(()=>{vS();tUG=gcb});function acb(I,G){return I!=null&&G in Object(I)}var eUG;var IxG=a(()=>{eUG=acb});function zcb(I,G,Z){G=yh(G,I);var l=-1,b=G.length,W=!1;while(++l<b){var N=uh(G[l]);if(!(W=I!=null&&Z(I,N)))break;I=I[N]}if(W||++l!=b)return W;return b=I==null?0:I.length,!!b&&HM(b)&&RM(N,b)&&(lV(I)||FM(I))}var GxG;var ZxG=a(()=>{Fz();uZI();SR();zZI();BZI();Rz();GxG=zcb});function Bcb(I,G){return I!=null&&GxG(I,G,eUG)}var FlI;var lCI=a(()=>{IxG();ZxG();FlI=Bcb});function xcb(I,G){if(gM(I)&&dlI(G))return mlI(uh(I),G);return function(Z){var l=tUG(Z,I);return l===void 0&&l===G?FlI(Z,I):uM(G,l,kcb|Ucb)}}var kcb=1,Ucb=2,lxG;var bxG=a(()=>{YlI();rUG();lCI();XlI();evI();ICI();Rz();lxG=xcb});function Ocb(I){return I}var zM;var RlI=a(()=>{zM=Ocb});function Mcb(I){return function(G){return G==null?void 0:G[I]}}var HlI;var bCI=a(()=>{HlI=Mcb});function Kcb(I){return function(G){return mu(G,I)}}var WxG;var NxG=a(()=>{vS();WxG=Kcb});function Dcb(I){return gM(I)?HlI(uh(I)):WxG(I)}var YxG;var cxG=a(()=>{bCI();NxG();XlI();Rz();YxG=Dcb});function jcb(I){if(typeof I=="function")return I;if(I==null)return zM;if(typeof I=="object")return lV(I)?lxG(I[0],I[1]):DUG(I);return YxG(I)}var BM;var hlI=a(()=>{jUG();bxG();RlI();SR();cxG();BM=jcb});function ncb(I,G){var Z={};return G=BM(G,3),VlI(I,function(l,b,W){QM(Z,b,G(l,b,W))}),Z}var wlI;var VxG=a(()=>{pZI();rvI();hlI();wlI=ncb});function qcb(I,G,Z){var l=-1,b=I.length;if(G<0)G=-G>b?0:b+G;if(Z=Z>b?b:Z,Z<0)Z+=b;b=G>Z?0:Z-G>>>0,G>>>=0;var W=Array(b);while(++l<b)W[l]=I[l+G];return W}var dxG;var mxG=a(()=>{dxG=qcb});function Tcb(I,G){return G.length<2?I:mu(I,dxG(G,0,-1))}var QxG;var XxG=a(()=>{vS();mxG();QxG=Tcb});function Pcb(I,G){G=yh(G,I);var Z=-1,l=G.length;if(!l)return!0;var b=I==null||typeof I!=="object"&&typeof I!=="function";while(++Z<l){var W=G[Z];if(typeof W!=="string")continue;if(W==="__proto__"&&!icb.call(I,"__proto__"))return!1;if(W==="constructor"&&Z+1<l&&typeof G[Z+1]==="string"&&G[Z+1]==="prototype"){if(b&&Z===0)continue;return!1}}var N=QxG(I,G);return N==null||delete N[uh(u5(G))]}var Scb,icb,FxG;var RxG=a(()=>{Fz();tvI();XxG();Rz();Scb=Object.prototype,icb=Scb.hasOwnProperty;FxG=Pcb});function tcb(I){if(!p0(I)||TR(I)!=_cb)return!1;var G=vM(I);if(G===null)return!0;var Z=$cb.call(G,"constructor")&&G.constructor;return typeof Z=="function"&&Z instanceof Z&&HxG.call(Z)==ocb}var _cb="[object Object]",fcb,scb,HxG,$cb,ocb,hxG;var wxG=a(()=>{dz();fZI();d4();fcb=Function.prototype,scb=Object.prototype,HxG=fcb.toString,$cb=scb.hasOwnProperty,ocb=HxG.call(Object);hxG=tcb});function rcb(I){return hxG(I)?void 0:I}var JxG;var AxG=a(()=>{wxG();JxG=rcb});function ecb(I){return lV(I)||FM(I)||!!(ExG&&I&&I[ExG])}var ExG,vxG;var CxG=a(()=>{Vz();uZI();SR();ExG=lm?lm.isConcatSpreadable:void 0;vxG=ecb});function pxG(I,G,Z,l,b){var W=-1,N=I.length;Z||(Z=vxG),b||(b=[]);while(++W<N){var Y=I[W];if(G>0&&Z(Y))if(G>1)pxG(Y,G-1,Z,l,b);else EM(b,Y);else if(!l)b[b.length]=Y}return b}var yxG;var uxG=a(()=>{_ZI();CxG();yxG=pxG});function IVb(I){var G=I==null?0:I.length;return G?yxG(I,1):[]}var LxG;var gxG=a(()=>{uxG();LxG=IVb});function GVb(I,G,Z){switch(Z.length){case 0:return I.call(G);case 1:return I.call(G,Z[0]);case 2:return I.call(G,Z[0],Z[1]);case 3:return I.call(G,Z[0],Z[1],Z[2])}return I.apply(G,Z)}var axG;var zxG=a(()=>{axG=GVb});function ZVb(I,G,Z){return G=BxG(G===void 0?I.length-1:G,0),function(){var l=arguments,b=-1,W=BxG(l.length-G,0),N=Array(W);while(++b<W)N[b]=l[G+b];b=-1;var Y=Array(G+1);while(++b<G)Y[b]=l[b];return Y[G]=Z(N),axG(I,this,Y)}}var BxG,JlI;var WCI=a(()=>{zxG();BxG=Math.max;JlI=ZVb});function lVb(I){return function(){return I}}var kxG;var UxG=a(()=>{kxG=lVb});var bVb,xxG;var OxG=a(()=>{UxG();xvI();RlI();bVb=!mM?zM:function(I,G){return mM(I,"toString",{configurable:!0,enumerable:!1,value:kxG(G),writable:!0})},xxG=bVb});function cVb(I){var G=0,Z=0;return function(){var l=YVb(),b=NVb-(l-Z);if(Z=l,b>0){if(++G>=WVb)return arguments[0]}else G=0;return I.apply(void 0,arguments)}}var WVb=800,NVb=16,YVb,MxG;var KxG=a(()=>{YVb=Date.now;MxG=cVb});var VVb,AlI;var NCI=a(()=>{OxG();KxG();VVb=MxG(xxG),AlI=VVb});function dVb(I){return AlI(JlI(I,void 0,LxG),I+"")}var ElI;var YCI=a(()=>{gxG();WCI();NCI();ElI=dVb});var mVb=1,QVb=2,XVb=4,FVb,vlI;var DxG=a(()=>{aM();svI();RxG();Fz();XM();AxG();YCI();oZI();FVb=ElI(function(I,G){var Z={};if(I==null)return Z;var l=!1;if(G=Q4(G,function(W){return W=yh(W,I),l||(l=W.length>1),W}),V4(I,CM(I),Z),l)Z=llI(Z,mVb|QVb|XVb,JxG);var b=G.length;while(b--)FxG(Z,G[b]);return Z}),vlI=FVb});function RVb(I,G,Z,l){var b=-1,W=I==null?0:I.length;while(++b<W){var N=I[b];G(l,N,Z(N),I)}return l}var jxG;var nxG=a(()=>{jxG=RVb});function HVb(I,G){return function(Z,l){if(Z==null)return Z;if(!du(Z))return I(Z,l);var b=Z.length,W=G?b:-1,N=Object(Z);while(G?W--:++W<b)if(l(N[W],W,N)===!1)break;return Z}}var qxG;var TxG=a(()=>{wS();qxG=HVb});var hVb,SxG;var ixG=a(()=>{rvI();TxG();hVb=qxG(VlI),SxG=hVb});function wVb(I,G,Z,l){return SxG(I,function(b,W,N){G(l,b,Z(b),N)}),l}var PxG;var _xG=a(()=>{ixG();PxG=wVb});function JVb(I,G){return function(Z,l){var b=lV(Z)?jxG:PxG,W=G?G():{};return b(Z,I,BM(l,2),W)}}var fxG;var sxG=a(()=>{nxG();_xG();hlI();SR();fxG=JVb});var AVb,cCI;var $xG=a(()=>{sxG();AVb=fxG(function(I,G,Z){I[Z?0:1].push(G)},function(){return[[],[]]}),cCI=AVb});function EVb(I,G,Z,l){if(!YF(I))return I;G=yh(G,I);var b=-1,W=G.length,N=W-1,Y=I;while(Y!=null&&++b<W){var c=uh(G[b]),V=Z;if(c==="__proto__"||c==="constructor"||c==="prototype")return I;if(b!=N){var d=Y[c];if(V=l?l(d,c,Y):void 0,V===void 0)V=YF(d)?d:RM(G[b+1])?[]:{}}cu(Y,c,V),Y=Y[c]}return I}var oxG;var txG=a(()=>{HS();Fz();zZI();lu();Rz();oxG=EVb});function vVb(I,G,Z){var l=-1,b=G.length,W={};while(++l<b){var N=G[l],Y=mu(I,N);if(Z(Y,N))oxG(W,yh(N,I),Y)}return W}var ClI;var VCI=a(()=>{vS();txG();Fz();ClI=vVb});function CVb(I,G){return ClI(I,G,function(Z,l){return FlI(I,l)})}var rxG;var exG=a(()=>{VCI();lCI();rxG=CVb});var pVb,plI;var IOG=a(()=>{exG();YCI();pVb=ElI(function(I,G){return I==null?{}:rxG(I,G)}),plI=pVb});function yVb(I,G){if(I==null)return{};var Z=Q4(CM(I),function(l){return[l]});return G=BM(G),ClI(I,Z,function(l,b){return G(l,b[0])})}var ylI;var GOG=a(()=>{aM();hlI();VCI();oZI();ylI=yVb});function gVb(I,G){return I+uVb(LVb()*(G-I+1))}var uVb,LVb,ZOG;var lOG=a(()=>{uVb=Math.floor,LVb=Math.random;ZOG=gVb});function aVb(I){var G=I.length;return G?I[ZOG(0,G-1)]:void 0}var ulI;var dCI=a(()=>{lOG();ulI=aVb});function zVb(I,G){return Q4(G,function(Z){return I[Z]})}var bOG;var WOG=a(()=>{aM();bOG=zVb});function BVb(I){return I==null?[]:bOG(I,ph(I))}var NOG;var YOG=a(()=>{WOG();Qz();NOG=BVb});function kVb(I){return ulI(NOG(I))}var cOG;var VOG=a(()=>{dCI();YOG();cOG=kVb});function UVb(I){var G=lV(I)?ulI:cOG;return G(I)}var Hz;var dOG=a(()=>{dCI();VOG();SR();Hz=UVb});function xVb(I,G){return AlI(JlI(I,G,zM),I+"")}var mOG;var QOG=a(()=>{RlI();WCI();NCI();mOG=xVb});function OVb(I){return p0(I)&&du(I)}var XOG;var FOG=a(()=>{wS();d4();XOG=OVb});function KVb(I){if(!(I&&I.length))return[];var G=0;return I=SZI(I,function(Z){if(XOG(Z))return G=MVb(Z.length,G),!0}),yZI(G,function(Z){return Q4(I,HlI(Z))})}var MVb,ROG;var HOG=a(()=>{TvI();aM();bCI();OvI();FOG();MVb=Math.max;ROG=KVb});var DVb,mCI;var hOG=a(()=>{QOG();HOG();DVb=mOG(ROG),mCI=DVb});function jVb(I,G,Z){var l=-1,b=I.length,W=G.length,N={};while(++l<b){var Y=l<W?G[l]:void 0;Z(N,I[l],Y)}return N}var wOG;var JOG=a(()=>{wOG=jVb});function nVb(I,G){return wOG(I||[],G||[],cu)}var QCI;var AOG=a(()=>{HS();JOG();QCI=nVb});var wY=a(()=>{lUG();aUG();tvI();VxG();ZCI();DxG();$xG();IOG();GOG();dOG();hOG();AOG()});var vOG=w(($FY,EOG)=>{EOG.exports=function(G){return G.map(function(Z){if(Z==="")return"''";if(Z&&typeof Z==="object")return Z.op.replace(/(.)/g,"\\$1");if(/["\s\\]/.test(Z)&&!/'/.test(Z))return"'"+Z.replace(/(['])/g,"\\$1")+"'";if(/["'\s]/.test(Z))return'"'+Z.replace(/(["\\$`!])/g,"\\$1")+'"';return String(Z).replace(/([A-Za-z]:)?([#!"$&'()*,:;<=>?@[\\\]^`{|}])/g,"$1\\$2")}).join(" ")}});var aOG=w((oFY,gOG)=>{var LOG="(?:"+["\\|\\|","\\&\\&",";;","\\|\\&","\\<\\(","\\<\\<\\<",">>",">\\&","<\\&","[&;()|<>]"].join("|")+")",COG=new RegExp("^"+LOG+"$"),pOG="|&;()<> \\t",qVb='"((\\\\"|[^"])*?)"',TVb="'((\\\\'|[^'])*?)'",SVb=/^#$/,yOG="'",uOG='"',XCI="$",hz="",iVb=4294967296;for(LlI=0;LlI<4;LlI++)hz+=(iVb*Math.random()).toString(16);var LlI,PVb=new RegExp("^"+hz);function _Vb(I,G){var Z=G.lastIndex,l=[],b;while(b=G.exec(I))if(l.push(b),G.lastIndex===b.index)G.lastIndex+=1;return G.lastIndex=Z,l}function fVb(I,G,Z){var l=typeof I==="function"?I(Z):I[Z];if(typeof l>"u"&&Z!="")l="";else if(typeof l>"u")l="$";if(typeof l==="object")return G+hz+JSON.stringify(l)+hz;return G+l}function sVb(I,G,Z){if(!Z)Z={};var l=Z.escape||"\\",b="(\\"+l+`['"`+pOG+`]|[^\\s'"`+pOG+"])+",W=new RegExp(["("+LOG+")","("+b+"|"+qVb+"|"+TVb+")+"].join("|"),"g"),N=_Vb(I,W);if(N.length===0)return[];if(!G)G={};var Y=!1;return N.map(function(c){var V=c[0];if(!V||Y)return;if(COG.test(V))return{op:V};var d=!1,Q=!1,X="",R=!1,H;function h(){H+=1;var g,z,k=V.charAt(H);if(k==="{"){if(H+=1,V.charAt(H)==="}")throw Error("Bad substitution: "+V.slice(H-2,H+1));if(g=V.indexOf("}",H),g<0)throw Error("Bad substitution: "+V.slice(H));z=V.slice(H,g),H=g}else if(/[*@#?$!_-]/.test(k))z=k,H+=1;else{var x=V.slice(H);if(g=x.match(/[^\w\d_]/),!g)z=x,H=V.length;else z=x.slice(0,g.index),H+=g.index-1}return fVb(G,"",z)}for(H=0;H<V.length;H++){var A=V.charAt(H);if(R=R||!d&&(A==="*"||A==="?"),Q)X+=A,Q=!1;else if(d)if(A===d)d=!1;else if(d==yOG)X+=A;else if(A===l)if(H+=1,A=V.charAt(H),A===uOG||A===l||A===XCI)X+=A;else X+=l+A;else if(A===XCI)X+=h();else X+=A;else if(A===uOG||A===yOG)d=A;else if(COG.test(A))return{op:V};else if(SVb.test(A)){Y=!0;var C={comment:I.slice(c.index+H+1)};if(X.length)return[X,C];return[C]}else if(A===l)Q=!0;else if(A===XCI)X+=h();else X+=A}if(R)return{op:"glob",pattern:X};return X}).reduce(function(c,V){return typeof V>"u"?c:c.concat(V)},[])}gOG.exports=function(G,Z,l){var b=sVb(G,Z,l);if(typeof Z!=="function")return b;return b.reduce(function(W,N){if(typeof N==="object")return W.concat(N);var Y=N.split(RegExp("("+hz+".*?"+hz+")","g"));if(Y.length===1)return W.concat(Y[0]);return W.concat(Y.filter(Boolean).map(function(c){if(PVb.test(c))return JSON.parse(c.split(hz)[1]);return c}))},[])}});var FCI=w(($Vb)=>{$Vb.quote=vOG();$Vb.parse=aOG()});import I2 from"node:path";import zOG from"node:os";import RCI from"node:process";function hCI(I,{suffix:G="nodejs"}={}){if(typeof I!=="string")throw TypeError(`Expected a string, got ${typeof I}`);if(G)I+=`-${G}`;if(RCI.platform==="darwin")return rVb(I);if(RCI.platform==="win32")return eVb(I);return I2b(I)}var Qu,HCI,kM,rVb=(I)=>{let G=I2.join(Qu,"Library");return{data:I2.join(G,"Application Support",I),config:I2.join(G,"Preferences",I),cache:I2.join(G,"Caches",I),log:I2.join(G,"Logs",I),temp:I2.join(HCI,I)}},eVb=(I)=>{let G=kM.APPDATA||I2.join(Qu,"AppData","Roaming"),Z=kM.LOCALAPPDATA||I2.join(Qu,"AppData","Local");return{data:I2.join(Z,I,"Data"),config:I2.join(G,I,"Config"),cache:I2.join(Z,I,"Cache"),log:I2.join(Z,I,"Log"),temp:I2.join(HCI,I)}},I2b=(I)=>{let G=I2.basename(Qu);return{data:I2.join(kM.XDG_DATA_HOME||I2.join(Qu,".local","share"),I),config:I2.join(kM.XDG_CONFIG_HOME||I2.join(Qu,".config"),I),cache:I2.join(kM.XDG_CACHE_HOME||I2.join(Qu,".cache"),I),log:I2.join(kM.XDG_STATE_HOME||I2.join(Qu,".local","state"),I),temp:I2.join(HCI,G,I)}};var BOG=a(()=>{Qu=zOG.homedir(),HCI=zOG.tmpdir(),{env:kM}=RCI});import{existsSync as L5,mkdirSync as alI}from"fs";import{dirname as ECI,join as Xu}from"path";import{writeFileSync as UM,readFileSync as UOG}from"fs";import{randomUUID as G2b}from"crypto";import{promises as kOG}from"fs";function JCI(I){return I.replace(/[^a-zA-Z0-9]/g,"-")}function zlI(I){return I.toISOString().replace(/[:.]/g,"-")}function l2b(){return Xu(VF.errors(),xOG+".txt")}function Fu(I,G,Z){return Xu(VF.messages(),`${I}${G>0?`-${G}`:""}${Z>0?`-sidechain-${Z}`:""}.json`)}function DG(I){try{let G=I instanceof Error?I.stack||I.message:String(I),Z={error:G,timestamp:new Date().toISOString()};if(glI.length>=Z2b)glI.shift();glI.push(Z),b2b(l2b(),{error:G})}catch{}BlI(I)}function OOG(){return[...glI]}function MOG(I){if(!L5(I))return[];try{return JSON.parse(UOG(I,"utf8"))}catch{return[]}}function b2b(I,G){if(process.env.USER_TYPE==="external")return;let Z=ECI(I);if(!L5(Z))alI(Z,{recursive:!0});if(!L5(I))UM(I,"[]","utf8");let l=MOG(I),b={...G,cwd:process.cwd(),userType:process.env.USER_TYPE,sessionId:cF,timestamp:new Date().toISOString(),version:"1.3.2"};l.push(b),UM(I,JSON.stringify(l,null,2),"utf8")}function xM(I,G){if(process.env.USER_TYPE==="external")return;if(!G.length)return;let Z=ECI(I);if(!L5(Z))alI(Z,{recursive:!0});let l=G.map((b)=>({...b,cwd:process.cwd(),userType:process.env.USER_TYPE,sessionId:cF,timestamp:new Date().toISOString(),version:"1.3.2"}));UM(I,JSON.stringify(l,null,2),"utf8")}async function OM(I=VF.messages()){if(!L5(I))return DG(`No logs found at ${I}`),[];let G=pCI(),Z=await kOG.readdir(I),l=await Promise.all(Z.filter((b)=>b.endsWith(".json")&&!b.startsWith("_")).map(async(b,W)=>{let N=Xu(I,b),Y=await kOG.readFile(N,"utf8"),c=JSON.parse(Y),V=c[0],d=c[c.length-1],Q=V?.type==="user"&&typeof V?.message?.content==="string"?V?.message?.content:"No prompt",{date:X,forkNumber:R,sidechainNumber:H}=vCI(b);return{date:X,forkNumber:R,fullPath:N,messages:c,value:W,created:ACI(V?.timestamp||X),modified:d?.timestamp?ACI(d.timestamp):ACI(X),firstPrompt:Q.split(`
42
+ Mongoose Error Code: ${G.code}`:""}`})}function nEI(I,G,Z,l=void 0){if(!Z)return;(0,Hel.safeExecuteInTheMiddle)(()=>Z(I,{moduleVersion:l,response:G}),(b)=>{if(b)gyG.diag.error("mongoose instrumentation: responseHook error",b)},!0)}function wel(I,G,Z,l=void 0){if(!(I instanceof Promise))return nEI(G,I,Z,l),G.end(),I;return I.then((b)=>{return nEI(G,b,Z,l),b}).catch((b)=>{throw ayG(G,b),b}).finally(()=>G.end())}zyG.handlePromiseResponse=wel;function Jel(I,G,Z,l,b,W,N=void 0){let Y=0;if(b.length===2)Y=1;return b[Y]=(c,V)=>{return c?ayG(l,c):nEI(l,V,W,N),l.end(),I(c,V)},G.apply(Z,b)}zyG.handleCallbackResponse=Jel});var OyG=w((UyG)=>{Object.defineProperty(UyG,"__esModule",{value:!0});UyG.PACKAGE_NAME=UyG.PACKAGE_VERSION=void 0;UyG.PACKAGE_VERSION="0.46.1";UyG.PACKAGE_NAME="@opentelemetry/instrumentation-mongoose"});var SyG=w((qyG)=>{Object.defineProperty(qyG,"__esModule",{value:!0});qyG.MongooseInstrumentation=qyG._STORED_PARENT_SPAN=void 0;var WF=bl(),Cel=lY(),qEI=kyG(),MyG=jN(),KyG=OyG(),rT=Nc(),tGI=["deleteOne","deleteMany","find","findOne","estimatedDocumentCount","countDocuments","distinct","where","$where","findOneAndUpdate","findOneAndDelete","findOneAndReplace"],pel=["remove","count","findOneAndRemove",...tGI],yel=["count","findOneAndRemove",...tGI],uel=[...tGI];function DyG(I){if(!I)return tGI;else if(I.startsWith("6.")||I.startsWith("5."))return pel;else if(I.startsWith("7."))return yel;else return uel}function jyG(I){return I&&(I.startsWith("5.")||I.startsWith("6."))||!1}qyG._STORED_PARENT_SPAN=Symbol("stored-parent-span");class nyG extends MyG.InstrumentationBase{constructor(I={}){super(KyG.PACKAGE_NAME,KyG.PACKAGE_VERSION,I)}init(){return new MyG.InstrumentationNodeModuleDefinition("mongoose",[">=5.9.7 <9"],this.patch.bind(this),this.unpatch.bind(this))}patch(I,G){if(this._wrap(I.Model.prototype,"save",this.patchOnModelMethods("save",G)),I.Model.prototype.$save=I.Model.prototype.save,jyG(G))this._wrap(I.Model.prototype,"remove",this.patchOnModelMethods("remove",G));return this._wrap(I.Query.prototype,"exec",this.patchQueryExec(G)),this._wrap(I.Aggregate.prototype,"exec",this.patchAggregateExec(G)),DyG(G).forEach((l)=>{this._wrap(I.Query.prototype,l,this.patchAndCaptureSpanContext(l))}),this._wrap(I.Model,"aggregate",this.patchModelAggregate()),I}unpatch(I,G){let Z=DyG(G);if(this._unwrap(I.Model.prototype,"save"),I.Model.prototype.$save=I.Model.prototype.save,jyG(G))this._unwrap(I.Model.prototype,"remove");this._unwrap(I.Query.prototype,"exec"),this._unwrap(I.Aggregate.prototype,"exec"),Z.forEach((l)=>{this._unwrap(I.Query.prototype,l)}),this._unwrap(I.Model,"aggregate")}patchAggregateExec(I){let G=this;return(Z)=>{return function(b){var W;if(G.getConfig().requireParentSpan&&WF.trace.getSpan(WF.context.active())===void 0)return Z.apply(this,arguments);let N=this[qyG._STORED_PARENT_SPAN],Y={},{dbStatementSerializer:c}=G.getConfig();if(c)Y[rT.SEMATTRS_DB_STATEMENT]=c("aggregate",{options:this.options,aggregatePipeline:this._pipeline});let V=G._startSpan(this._model.collection,(W=this._model)===null||W===void 0?void 0:W.modelName,"aggregate",Y,N);return G._handleResponse(V,Z,this,arguments,b,I)}}}patchQueryExec(I){let G=this;return(Z)=>{return function(b){if(G.getConfig().requireParentSpan&&WF.trace.getSpan(WF.context.active())===void 0)return Z.apply(this,arguments);let W=this[qyG._STORED_PARENT_SPAN],N={},{dbStatementSerializer:Y}=G.getConfig();if(Y)N[rT.SEMATTRS_DB_STATEMENT]=Y(this.op,{condition:this._conditions,updates:this._update,options:this.options,fields:this._fields});let c=G._startSpan(this.mongooseCollection,this.model.modelName,this.op,N,W);return G._handleResponse(c,Z,this,arguments,b,I)}}}patchOnModelMethods(I,G){let Z=this;return(l)=>{return function(W,N){if(Z.getConfig().requireParentSpan&&WF.trace.getSpan(WF.context.active())===void 0)return l.apply(this,arguments);let Y={document:this};if(W&&!(W instanceof Function))Y.options=W;let c={},{dbStatementSerializer:V}=Z.getConfig();if(V)c[rT.SEMATTRS_DB_STATEMENT]=V(I,Y);let d=Z._startSpan(this.constructor.collection,this.constructor.modelName,I,c);if(W instanceof Function)N=W,W=void 0;return Z._handleResponse(d,l,this,arguments,N,G)}}}patchModelAggregate(){let I=this;return(G)=>{return function(){let l=WF.trace.getSpan(WF.context.active()),b=I._callOriginalFunction(()=>G.apply(this,arguments));if(b)b[qyG._STORED_PARENT_SPAN]=l;return b}}}patchAndCaptureSpanContext(I){let G=this;return(Z)=>{return function(){return this[qyG._STORED_PARENT_SPAN]=WF.trace.getSpan(WF.context.active()),G._callOriginalFunction(()=>Z.apply(this,arguments))}}}_startSpan(I,G,Z,l,b){return this.tracer.startSpan(`mongoose.${G}.${Z}`,{kind:WF.SpanKind.CLIENT,attributes:Object.assign(Object.assign(Object.assign({},l),(0,qEI.getAttributesFromCollection)(I)),{[rT.SEMATTRS_DB_OPERATION]:Z,[rT.SEMATTRS_DB_SYSTEM]:"mongoose"})},b?WF.trace.setSpan(WF.context.active(),b):void 0)}_handleResponse(I,G,Z,l,b,W=void 0){let N=this;if(b instanceof Function)return N._callOriginalFunction(()=>(0,qEI.handleCallbackResponse)(b,G,Z,I,l,N.getConfig().responseHook,W));else{let Y=N._callOriginalFunction(()=>G.apply(Z,l));return(0,qEI.handlePromiseResponse)(Y,I,N.getConfig().responseHook,W)}}_callOriginalFunction(I){if(this.getConfig().suppressInternalInstrumentation)return WF.context.with((0,Cel.suppressTracing)(WF.context.active()),I);else return I()}}qyG.MongooseInstrumentation=nyG});var PyG=w((iyG)=>{Object.defineProperty(iyG,"__esModule",{value:!0})});var fyG=w((jy)=>{var Lel=jy&&jy.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),_yG=jy&&jy.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))Lel(G,I,Z)};Object.defineProperty(jy,"__esModule",{value:!0});_yG(SyG(),jy);_yG(PyG(),jy)});var syG,$yG="Mongoose",oyG,gel=()=>{return{name:$yG,setupOnce(){oyG()}}},tyG;var ryG=a(()=>{Qb();vc();syG=hI(fyG(),1),oyG=Rb($yG,()=>new syG.MongooseInstrumentation({responseHook(I){IV(I,"auto.db.otel.mongoose")}})),tyG=Gl(gel)});var IuG=w((eyG)=>{Object.defineProperty(eyG,"__esModule",{value:!0});eyG.AttributeNames=void 0;var ael;(function(I){I.MYSQL_VALUES="db.mysql.values"})(ael=eyG.AttributeNames||(eyG.AttributeNames={}))});var buG=w((ZuG)=>{Object.defineProperty(ZuG,"__esModule",{value:!0});ZuG.getPoolName=ZuG.arrayStringifyHelper=ZuG.getSpanName=ZuG.getDbValues=ZuG.getDbStatement=ZuG.getConnectionAttributes=void 0;var _v=Nc();function zel(I){let{host:G,port:Z,database:l,user:b}=Bel(I),W=parseInt(Z,10);if(!isNaN(W))return{[_v.SEMATTRS_NET_PEER_NAME]:G,[_v.SEMATTRS_NET_PEER_PORT]:W,[_v.SEMATTRS_DB_CONNECTION_STRING]:GuG(G,Z,l),[_v.SEMATTRS_DB_NAME]:l,[_v.SEMATTRS_DB_USER]:b};return{[_v.SEMATTRS_NET_PEER_NAME]:G,[_v.SEMATTRS_DB_CONNECTION_STRING]:GuG(G,Z,l),[_v.SEMATTRS_DB_NAME]:l,[_v.SEMATTRS_DB_USER]:b}}ZuG.getConnectionAttributes=zel;function Bel(I){let{host:G,port:Z,database:l,user:b}=I&&I.connectionConfig||I||{};return{host:G,port:Z,database:l,user:b}}function GuG(I,G,Z){let l=`jdbc:mysql://${I||"localhost"}`;if(typeof G==="number")l+=`:${G}`;if(typeof Z==="string")l+=`/${Z}`;return l}function kel(I){if(typeof I==="string")return I;else return I.sql}ZuG.getDbStatement=kel;function Uel(I,G){if(typeof I==="string")return SEI(G);else return SEI(G||I.values)}ZuG.getDbValues=Uel;function xel(I){let G=typeof I==="object"?I.sql:I,Z=G===null||G===void 0?void 0:G.indexOf(" ");if(typeof Z==="number"&&Z!==-1)return G===null||G===void 0?void 0:G.substring(0,Z);return G}ZuG.getSpanName=xel;function SEI(I){if(I)return`[${I.toString()}]`;return""}ZuG.arrayStringifyHelper=SEI;function Oel(I){let G=I.config.connectionConfig,Z="";if(Z+=G.host?`host: '${G.host}', `:"",Z+=G.port?`port: ${G.port}, `:"",Z+=G.database?`database: '${G.database}', `:"",Z+=G.user?`user: '${G.user}'`:"",!G.user)Z=Z.substring(0,Z.length-2);return Z.trim()}ZuG.getPoolName=Oel});var YuG=w((WuG)=>{Object.defineProperty(WuG,"__esModule",{value:!0});WuG.PACKAGE_NAME=WuG.PACKAGE_VERSION=void 0;WuG.PACKAGE_VERSION="0.45.1";WuG.PACKAGE_NAME="@opentelemetry/instrumentation-mysql"});var muG=w((VuG)=>{Object.defineProperty(VuG,"__esModule",{value:!0});VuG.MySQLInstrumentation=void 0;var p1=bl(),tO=jN(),iEI=Nc(),Tel=IuG(),rO=buG(),cuG=YuG();class rGI extends tO.InstrumentationBase{constructor(I={}){super(cuG.PACKAGE_NAME,cuG.PACKAGE_VERSION,I);this._setMetricInstruments()}setMeterProvider(I){super.setMeterProvider(I),this._setMetricInstruments()}_setMetricInstruments(){this._connectionsUsage=this.meter.createUpDownCounter("db.client.connections.usage",{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}init(){return[new tO.InstrumentationNodeModuleDefinition("mysql",[">=2.0.0 <3"],(I)=>{if((0,tO.isWrapped)(I.createConnection))this._unwrap(I,"createConnection");if(this._wrap(I,"createConnection",this._patchCreateConnection()),(0,tO.isWrapped)(I.createPool))this._unwrap(I,"createPool");if(this._wrap(I,"createPool",this._patchCreatePool()),(0,tO.isWrapped)(I.createPoolCluster))this._unwrap(I,"createPoolCluster");return this._wrap(I,"createPoolCluster",this._patchCreatePoolCluster()),I},(I)=>{if(I===void 0)return;this._unwrap(I,"createConnection"),this._unwrap(I,"createPool"),this._unwrap(I,"createPoolCluster")})]}_patchCreateConnection(){return(I)=>{let G=this;return function(l){let b=I(...arguments);return G._wrap(b,"query",G._patchQuery(b)),b}}}_patchCreatePool(){return(I)=>{let G=this;return function(l){let b=I(...arguments);return G._wrap(b,"query",G._patchQuery(b)),G._wrap(b,"getConnection",G._patchGetConnection(b)),G._wrap(b,"end",G._patchPoolEnd(b)),G._setPoolcallbacks(b,G,""),b}}}_patchPoolEnd(I){return(G)=>{let Z=this;return function(b){let W=I._allConnections.length,N=I._freeConnections.length,Y=W-N,c=(0,rO.getPoolName)(I);Z._connectionsUsage.add(-Y,{state:"used",name:c}),Z._connectionsUsage.add(-N,{state:"idle",name:c}),G.apply(I,arguments)}}}_patchCreatePoolCluster(){return(I)=>{let G=this;return function(l){let b=I(...arguments);return G._wrap(b,"getConnection",G._patchGetConnection(b)),G._wrap(b,"add",G._patchAdd(b)),b}}}_patchAdd(I){return(G)=>{let Z=this;return function(b,W){if(!Z._enabled)return Z._unwrap(I,"add"),G.apply(I,arguments);G.apply(I,arguments);let N=I._nodes;if(N){let Y=typeof b==="object"?"CLUSTER::"+I._lastId:String(b),c=N[Y].pool;Z._setPoolcallbacks(c,Z,b)}}}}_patchGetConnection(I){return(G)=>{let Z=this;return function(b,W,N){if(!Z._enabled)return Z._unwrap(I,"getConnection"),G.apply(I,arguments);if(arguments.length===1&&typeof b==="function"){let Y=Z._getConnectionCallbackPatchFn(b);return G.call(I,Y)}if(arguments.length===2&&typeof W==="function"){let Y=Z._getConnectionCallbackPatchFn(W);return G.call(I,b,Y)}if(arguments.length===3&&typeof N==="function"){let Y=Z._getConnectionCallbackPatchFn(N);return G.call(I,b,W,Y)}return G.apply(I,arguments)}}}_getConnectionCallbackPatchFn(I){let G=this,Z=p1.context.active();return function(l,b){if(b){if(!(0,tO.isWrapped)(b.query))G._wrap(b,"query",G._patchQuery(b))}if(typeof I==="function")p1.context.with(Z,I,this,l,b)}}_patchQuery(I){return(G)=>{let Z=this;return function(l,b,W){if(!Z._enabled)return Z._unwrap(I,"query"),G.apply(I,arguments);let N=Z.tracer.startSpan((0,rO.getSpanName)(l),{kind:p1.SpanKind.CLIENT,attributes:Object.assign(Object.assign({},rGI.COMMON_ATTRIBUTES),(0,rO.getConnectionAttributes)(I.config))});if(N.setAttribute(iEI.SEMATTRS_DB_STATEMENT,(0,rO.getDbStatement)(l)),Z.getConfig().enhancedDatabaseReporting){let V;if(Array.isArray(b))V=b;else if(arguments[2])V=[b];N.setAttribute(Tel.AttributeNames.MYSQL_VALUES,(0,rO.getDbValues)(l,V))}let Y=Array.from(arguments).findIndex((V)=>typeof V==="function"),c=p1.context.active();if(Y===-1){let V=p1.context.with(p1.trace.setSpan(p1.context.active(),N),()=>{return G.apply(I,arguments)});return p1.context.bind(c,V),V.on("error",(d)=>N.setStatus({code:p1.SpanStatusCode.ERROR,message:d.message})).on("end",()=>{N.end()})}else return Z._wrap(arguments,Y,Z._patchCallbackQuery(N,c)),p1.context.with(p1.trace.setSpan(p1.context.active(),N),()=>{return G.apply(I,arguments)})}}}_patchCallbackQuery(I,G){return(Z)=>{return function(l,b,W){if(l)I.setStatus({code:p1.SpanStatusCode.ERROR,message:l.message});return I.end(),p1.context.with(G,()=>Z(...arguments))}}}_setPoolcallbacks(I,G,Z){let l=Z||(0,rO.getPoolName)(I);I.on("connection",(b)=>{G._connectionsUsage.add(1,{state:"idle",name:l})}),I.on("acquire",(b)=>{G._connectionsUsage.add(-1,{state:"idle",name:l}),G._connectionsUsage.add(1,{state:"used",name:l})}),I.on("release",(b)=>{G._connectionsUsage.add(-1,{state:"used",name:l}),G._connectionsUsage.add(1,{state:"idle",name:l})})}}VuG.MySQLInstrumentation=rGI;rGI.COMMON_ATTRIBUTES={[iEI.SEMATTRS_DB_SYSTEM]:iEI.DBSYSTEMVALUES_MYSQL}});var XuG=w((QuG)=>{Object.defineProperty(QuG,"__esModule",{value:!0})});var RuG=w((ny)=>{var Sel=ny&&ny.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),FuG=ny&&ny.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))Sel(G,I,Z)};Object.defineProperty(ny,"__esModule",{value:!0});FuG(muG(),ny);FuG(XuG(),ny)});var HuG,huG="Mysql",wuG,iel=()=>{return{name:huG,setupOnce(){wuG()}}},JuG;var AuG=a(()=>{Qb();vc();HuG=hI(RuG(),1),wuG=Rb(huG,()=>new HuG.MySQLInstrumentation({})),JuG=Gl(iel)});var _EI=w((EuG)=>{Object.defineProperty(EuG,"__esModule",{value:!0});EuG.addSqlCommenterComment=void 0;var PEI=bl(),Pel=lY();function _el(I){let G=I.indexOf("--");if(G>=0)return!0;if(I.indexOf("/*")<0)return!1;let l=I.indexOf("*/");return G<l}function fel(I){return encodeURIComponent(I).replace(/[!'()*]/g,(G)=>`%${G.charCodeAt(0).toString(16).toUpperCase()}`)}function sel(I,G){if(typeof G!=="string"||G.length===0)return G;if(_el(G))return G;let Z=new Pel.W3CTraceContextPropagator,l={};Z.inject(PEI.trace.setSpan(PEI.ROOT_CONTEXT,I),l,PEI.defaultTextMapSetter);let b=Object.keys(l).sort();if(b.length===0)return G;let W=b.map((N)=>{let Y=fel(l[N]);return`${N}='${Y}'`}).join(",");return`${G} /*${W}*/`}EuG.addSqlCommenterComment=sel});var uuG=w((puG)=>{Object.defineProperty(puG,"__esModule",{value:!0});puG.getConnectionPrototypeToInstrument=puG.once=puG.getSpanName=puG.getDbStatement=puG.getConnectionAttributes=void 0;var fv=Nc();function $el(I){let{host:G,port:Z,database:l,user:b}=oel(I),W=parseInt(Z,10);if(!isNaN(W))return{[fv.SEMATTRS_NET_PEER_NAME]:G,[fv.SEMATTRS_NET_PEER_PORT]:W,[fv.SEMATTRS_DB_CONNECTION_STRING]:CuG(G,Z,l),[fv.SEMATTRS_DB_NAME]:l,[fv.SEMATTRS_DB_USER]:b};return{[fv.SEMATTRS_NET_PEER_NAME]:G,[fv.SEMATTRS_DB_CONNECTION_STRING]:CuG(G,Z,l),[fv.SEMATTRS_DB_NAME]:l,[fv.SEMATTRS_DB_USER]:b}}puG.getConnectionAttributes=$el;function oel(I){let{host:G,port:Z,database:l,user:b}=I&&I.connectionConfig||I||{};return{host:G,port:Z,database:l,user:b}}function CuG(I,G,Z){let l=`jdbc:mysql://${I||"localhost"}`;if(typeof G==="number")l+=`:${G}`;if(typeof Z==="string")l+=`/${Z}`;return l}function tel(I,G,Z){if(!G)return typeof I==="string"?I:I.sql;if(typeof I==="string")return Z?G(I,Z):I;else return Z||I.values?G(I.sql,Z||I.values):I.sql}puG.getDbStatement=tel;function rel(I){let G=typeof I==="object"?I.sql:I,Z=G===null||G===void 0?void 0:G.indexOf(" ");if(typeof Z==="number"&&Z!==-1)return G===null||G===void 0?void 0:G.substring(0,Z);return G}puG.getSpanName=rel;var eel=(I)=>{let G=!1;return(...Z)=>{if(G)return;return G=!0,I(...Z)}};puG.once=eel;function IIb(I){let G=I.prototype,Z=Object.getPrototypeOf(G);if(typeof(Z===null||Z===void 0?void 0:Z.query)==="function"&&typeof(Z===null||Z===void 0?void 0:Z.execute)==="function")return Z;return G}puG.getConnectionPrototypeToInstrument=IIb});var auG=w((LuG)=>{Object.defineProperty(LuG,"__esModule",{value:!0});LuG.PACKAGE_NAME=LuG.PACKAGE_VERSION=void 0;LuG.PACKAGE_VERSION="0.45.2";LuG.PACKAGE_NAME="@opentelemetry/instrumentation-mysql2"});var OuG=w((UuG)=>{Object.defineProperty(UuG,"__esModule",{value:!0});UuG.MySQL2Instrumentation=void 0;var zuG=bl(),bz=jN(),sEI=Nc(),BuG=_EI(),eO=uuG(),kuG=auG(),fEI=[">=1.4.2 <4"];class eGI extends bz.InstrumentationBase{constructor(I={}){super(kuG.PACKAGE_NAME,kuG.PACKAGE_VERSION,I)}init(){let I;function G(b){if(!I&&b.format)I=b.format}let Z=(b)=>{if((0,bz.isWrapped)(b.query))this._unwrap(b,"query");if(this._wrap(b,"query",this._patchQuery(I,!1)),(0,bz.isWrapped)(b.execute))this._unwrap(b,"execute");this._wrap(b,"execute",this._patchQuery(I,!0))},l=(b)=>{this._unwrap(b,"query"),this._unwrap(b,"execute")};return[new bz.InstrumentationNodeModuleDefinition("mysql2",fEI,(b)=>{return G(b),b},()=>{},[new bz.InstrumentationNodeModuleFile("mysql2/promise.js",fEI,(b)=>{return G(b),b},()=>{}),new bz.InstrumentationNodeModuleFile("mysql2/lib/connection.js",fEI,(b)=>{let W=(0,eO.getConnectionPrototypeToInstrument)(b);return Z(W),b},(b)=>{if(b===void 0)return;let W=(0,eO.getConnectionPrototypeToInstrument)(b);l(W)})])]}_patchQuery(I,G){return(Z)=>{let l=this;return function(b,W,N){let Y;if(Array.isArray(W))Y=W;else if(arguments[2])Y=[W];let c=l.tracer.startSpan((0,eO.getSpanName)(b),{kind:zuG.SpanKind.CLIENT,attributes:Object.assign(Object.assign(Object.assign({},eGI.COMMON_ATTRIBUTES),(0,eO.getConnectionAttributes)(this.config)),{[sEI.SEMATTRS_DB_STATEMENT]:(0,eO.getDbStatement)(b,I,Y)})});if(!G&&l.getConfig().addSqlCommenterCommentToQueries)arguments[0]=b=typeof b==="string"?(0,BuG.addSqlCommenterComment)(c,b):Object.assign(b,{sql:(0,BuG.addSqlCommenterComment)(c,b.sql)});let V=(0,eO.once)((d,Q)=>{if(d)c.setStatus({code:zuG.SpanStatusCode.ERROR,message:d.message});else{let{responseHook:X}=l.getConfig();if(typeof X==="function")(0,bz.safeExecuteInTheMiddle)(()=>{X(c,{queryResults:Q})},(R)=>{if(R)l._diag.warn("Failed executing responseHook",R)},!0)}c.end()});if(arguments.length===1){if(typeof b.onResult==="function")l._wrap(b,"onResult",l._patchCallbackQuery(V));let d=Z.apply(this,arguments);return d.once("error",(Q)=>{V(Q)}).once("result",(Q)=>{V(void 0,Q)}),d}if(typeof arguments[1]==="function")l._wrap(arguments,1,l._patchCallbackQuery(V));else if(typeof arguments[2]==="function")l._wrap(arguments,2,l._patchCallbackQuery(V));return Z.apply(this,arguments)}}}_patchCallbackQuery(I){return(G)=>{return function(Z,l,b){return I(Z,l),G(...arguments)}}}}UuG.MySQL2Instrumentation=eGI;eGI.COMMON_ATTRIBUTES={[sEI.SEMATTRS_DB_SYSTEM]:sEI.DBSYSTEMVALUES_MYSQL}});var KuG=w((MuG)=>{Object.defineProperty(MuG,"__esModule",{value:!0})});var juG=w((qy)=>{var NIb=qy&&qy.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),DuG=qy&&qy.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))NIb(G,I,Z)};Object.defineProperty(qy,"__esModule",{value:!0});DuG(OuG(),qy);DuG(KuG(),qy)});var nuG,quG="Mysql2",TuG,YIb=()=>{return{name:quG,setupOnce(){TuG()}}},SuG;var iuG=a(()=>{Qb();vc();nuG=hI(juG(),1),TuG=Rb(quG,()=>new nuG.MySQL2Instrumentation({responseHook(I){IV(I,"auto.db.otel.mysql2")}})),SuG=Gl(YIb)});var fuG=w((PuG)=>{Object.defineProperty(PuG,"__esModule",{value:!0});PuG.endSpan=void 0;var cIb=bl(),VIb=(I,G)=>{if(G)I.recordException(G),I.setStatus({code:cIb.SpanStatusCode.ERROR,message:G.message});I.end()};PuG.endSpan=VIb});var $EI=w((suG)=>{Object.defineProperty(suG,"__esModule",{value:!0});suG.defaultDbStatementSerializer=void 0;var dIb=[{regex:/^ECHO/i,args:0},{regex:/^(LPUSH|MSET|PFA|PUBLISH|RPUSH|SADD|SET|SPUBLISH|XADD|ZADD)/i,args:1},{regex:/^(HSET|HMSET|LSET|LINSERT)/i,args:2},{regex:/^(ACL|BIT|B[LRZ]|CLIENT|CLUSTER|CONFIG|COMMAND|DECR|DEL|EVAL|EX|FUNCTION|GEO|GET|HINCR|HMGET|HSCAN|INCR|L[TRLM]|MEMORY|P[EFISTU]|RPOP|S[CDIMORSU]|XACK|X[CDGILPRT]|Z[CDILMPRS])/i,args:-1}],mIb=(I,G)=>{var Z,l;if(Array.isArray(G)&&G.length){let b=(l=(Z=dIb.find(({regex:N})=>{return N.test(I)}))===null||Z===void 0?void 0:Z.args)!==null&&l!==void 0?l:0,W=b>=0?G.slice(0,b):G;if(G.length>W.length)W.push(`[${G.length-b} other arguments]`);return`${I} ${W.join(" ")}`}return I};suG.defaultDbStatementSerializer=mIb});var ruG=w((ouG)=>{Object.defineProperty(ouG,"__esModule",{value:!0});ouG.PACKAGE_NAME=ouG.PACKAGE_VERSION=void 0;ouG.PACKAGE_VERSION="0.47.1";ouG.PACKAGE_NAME="@opentelemetry/instrumentation-ioredis"});var W9G=w((l9G)=>{Object.defineProperty(l9G,"__esModule",{value:!0});l9G.IORedisInstrumentation=void 0;var Ty=bl(),IZI=jN(),Eh=Nc(),euG=jN(),IS=fuG(),XIb=$EI(),I9G=ruG(),G9G={requireParentSpan:!0};class Z9G extends IZI.InstrumentationBase{constructor(I={}){super(I9G.PACKAGE_NAME,I9G.PACKAGE_VERSION,Object.assign(Object.assign({},G9G),I))}setConfig(I={}){super.setConfig(Object.assign(Object.assign({},G9G),I))}init(){return[new IZI.InstrumentationNodeModuleDefinition("ioredis",[">=2.0.0 <6"],(I,G)=>{let Z=I[Symbol.toStringTag]==="Module"?I.default:I;if((0,IZI.isWrapped)(Z.prototype.sendCommand))this._unwrap(Z.prototype,"sendCommand");if(this._wrap(Z.prototype,"sendCommand",this._patchSendCommand(G)),(0,IZI.isWrapped)(Z.prototype.connect))this._unwrap(Z.prototype,"connect");return this._wrap(Z.prototype,"connect",this._patchConnection()),I},(I)=>{if(I===void 0)return;let G=I[Symbol.toStringTag]==="Module"?I.default:I;this._unwrap(G.prototype,"sendCommand"),this._unwrap(G.prototype,"connect")})]}_patchSendCommand(I){return(G)=>{return this._traceSendCommand(G,I)}}_patchConnection(){return(I)=>{return this._traceConnection(I)}}_traceSendCommand(I,G){let Z=this;return function(l){if(arguments.length<1||typeof l!=="object")return I.apply(this,arguments);let b=Z.getConfig(),W=b.dbStatementSerializer||XIb.defaultDbStatementSerializer,N=Ty.trace.getSpan(Ty.context.active())===void 0;if(b.requireParentSpan===!0&&N)return I.apply(this,arguments);let Y=Z.tracer.startSpan(l.name,{kind:Ty.SpanKind.CLIENT,attributes:{[Eh.SEMATTRS_DB_SYSTEM]:Eh.DBSYSTEMVALUES_REDIS,[Eh.SEMATTRS_DB_STATEMENT]:W(l.name,l.args)}}),{requestHook:c}=b;if(c)(0,euG.safeExecuteInTheMiddle)(()=>c(Y,{moduleVersion:G,cmdName:l.name,cmdArgs:l.args}),(Q)=>{if(Q)Ty.diag.error("ioredis instrumentation: request hook failed",Q)},!0);let{host:V,port:d}=this.options;Y.setAttributes({[Eh.SEMATTRS_NET_PEER_NAME]:V,[Eh.SEMATTRS_NET_PEER_PORT]:d,[Eh.SEMATTRS_DB_CONNECTION_STRING]:`redis://${V}:${d}`});try{let Q=I.apply(this,arguments),X=l.resolve;l.resolve=function(H){(0,euG.safeExecuteInTheMiddle)(()=>{var h;return(h=b.responseHook)===null||h===void 0?void 0:h.call(b,Y,l.name,l.args,H)},(h)=>{if(h)Ty.diag.error("ioredis instrumentation: response hook failed",h)},!0),(0,IS.endSpan)(Y,null),X(H)};let R=l.reject;return l.reject=function(H){(0,IS.endSpan)(Y,H),R(H)},Q}catch(Q){throw(0,IS.endSpan)(Y,Q),Q}}}_traceConnection(I){let G=this;return function(){let Z=Ty.trace.getSpan(Ty.context.active())===void 0;if(G.getConfig().requireParentSpan===!0&&Z)return I.apply(this,arguments);let l=G.tracer.startSpan("connect",{kind:Ty.SpanKind.CLIENT,attributes:{[Eh.SEMATTRS_DB_SYSTEM]:Eh.DBSYSTEMVALUES_REDIS,[Eh.SEMATTRS_DB_STATEMENT]:"connect"}}),{host:b,port:W}=this.options;l.setAttributes({[Eh.SEMATTRS_NET_PEER_NAME]:b,[Eh.SEMATTRS_NET_PEER_PORT]:W,[Eh.SEMATTRS_DB_CONNECTION_STRING]:`redis://${b}:${W}`});try{let N=I.apply(this,arguments);return(0,IS.endSpan)(l,null),N}catch(N){throw(0,IS.endSpan)(l,N),N}}}}l9G.IORedisInstrumentation=Z9G});var Y9G=w((N9G)=>{Object.defineProperty(N9G,"__esModule",{value:!0})});var V9G=w((Sy)=>{var FIb=Sy&&Sy.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),c9G=Sy&&Sy.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))FIb(G,I,Z)};Object.defineProperty(Sy,"__esModule",{value:!0});c9G(W9G(),Sy);c9G(Y9G(),Sy)});var Q9G=w((d9G)=>{Object.defineProperty(d9G,"__esModule",{value:!0});d9G.getClientAttributes=void 0;var GS=Nc();function RIb(I,G){var Z,l;return{[GS.SEMATTRS_DB_SYSTEM]:GS.DBSYSTEMVALUES_REDIS,[GS.SEMATTRS_NET_PEER_NAME]:(Z=G===null||G===void 0?void 0:G.socket)===null||Z===void 0?void 0:Z.host,[GS.SEMATTRS_NET_PEER_PORT]:(l=G===null||G===void 0?void 0:G.socket)===null||l===void 0?void 0:l.port,[GS.SEMATTRS_DB_CONNECTION_STRING]:HIb(I,G===null||G===void 0?void 0:G.url)}}d9G.getClientAttributes=RIb;function HIb(I,G){if(typeof G!=="string"||!G)return;try{let Z=new URL(G);return Z.searchParams.delete("user_pwd"),Z.username="",Z.password="",Z.href}catch(Z){I.error("failed to sanitize redis connection url",Z)}return}});var R9G=w((X9G)=>{Object.defineProperty(X9G,"__esModule",{value:!0});X9G.PACKAGE_NAME=X9G.PACKAGE_VERSION=void 0;X9G.PACKAGE_VERSION="0.46.1";X9G.PACKAGE_NAME="@opentelemetry/instrumentation-redis-4"});var v9G=w((A9G)=>{Object.defineProperty(A9G,"__esModule",{value:!0});A9G.RedisInstrumentation=void 0;var vh=bl(),Zm=jN(),H9G=Q9G(),wIb=$EI(),h9G=R9G(),JIb=Nc(),ZS=Symbol("opentelemetry.instrumentation.redis.open_spans"),w9G=Symbol("opentelemetry.instrumentation.redis.multi_command_options"),J9G={requireParentSpan:!1};class lS extends Zm.InstrumentationBase{constructor(I={}){super(h9G.PACKAGE_NAME,h9G.PACKAGE_VERSION,Object.assign(Object.assign({},J9G),I))}setConfig(I={}){super.setConfig(Object.assign(Object.assign({},J9G),I))}init(){return[this._getInstrumentationNodeModuleDefinition("@redis/client"),this._getInstrumentationNodeModuleDefinition("@node-redis/client")]}_getInstrumentationNodeModuleDefinition(I){let G=new Zm.InstrumentationNodeModuleFile(`${I}/dist/lib/commander.js`,["^1.0.0"],(b,W)=>{let N=b.transformCommandArguments;if(!N)return this._diag.error("internal instrumentation error, missing transformCommandArguments function"),b;let Y=(W===null||W===void 0?void 0:W.startsWith("1.0."))?"extendWithCommands":"attachCommands";if((0,Zm.isWrapped)(b===null||b===void 0?void 0:b[Y]))this._unwrap(b,Y);return this._wrap(b,Y,this._getPatchExtendWithCommands(N)),b},(b)=>{if((0,Zm.isWrapped)(b===null||b===void 0?void 0:b.extendWithCommands))this._unwrap(b,"extendWithCommands");if((0,Zm.isWrapped)(b===null||b===void 0?void 0:b.attachCommands))this._unwrap(b,"attachCommands")}),Z=new Zm.InstrumentationNodeModuleFile(`${I}/dist/lib/client/multi-command.js`,["^1.0.0"],(b)=>{var W;let N=(W=b===null||b===void 0?void 0:b.default)===null||W===void 0?void 0:W.prototype;if((0,Zm.isWrapped)(N===null||N===void 0?void 0:N.exec))this._unwrap(N,"exec");if(this._wrap(N,"exec",this._getPatchMultiCommandsExec()),(0,Zm.isWrapped)(N===null||N===void 0?void 0:N.addCommand))this._unwrap(N,"addCommand");return this._wrap(N,"addCommand",this._getPatchMultiCommandsAddCommand()),b},(b)=>{var W;let N=(W=b===null||b===void 0?void 0:b.default)===null||W===void 0?void 0:W.prototype;if((0,Zm.isWrapped)(N===null||N===void 0?void 0:N.exec))this._unwrap(N,"exec");if((0,Zm.isWrapped)(N===null||N===void 0?void 0:N.addCommand))this._unwrap(N,"addCommand")}),l=new Zm.InstrumentationNodeModuleFile(`${I}/dist/lib/client/index.js`,["^1.0.0"],(b)=>{var W;let N=(W=b===null||b===void 0?void 0:b.default)===null||W===void 0?void 0:W.prototype;if(N===null||N===void 0?void 0:N.multi){if((0,Zm.isWrapped)(N===null||N===void 0?void 0:N.multi))this._unwrap(N,"multi");this._wrap(N,"multi",this._getPatchRedisClientMulti())}if(N===null||N===void 0?void 0:N.MULTI){if((0,Zm.isWrapped)(N===null||N===void 0?void 0:N.MULTI))this._unwrap(N,"MULTI");this._wrap(N,"MULTI",this._getPatchRedisClientMulti())}if((0,Zm.isWrapped)(N===null||N===void 0?void 0:N.sendCommand))this._unwrap(N,"sendCommand");return this._wrap(N,"sendCommand",this._getPatchRedisClientSendCommand()),this._wrap(N,"connect",this._getPatchedClientConnect()),b},(b)=>{var W;let N=(W=b===null||b===void 0?void 0:b.default)===null||W===void 0?void 0:W.prototype;if((0,Zm.isWrapped)(N===null||N===void 0?void 0:N.multi))this._unwrap(N,"multi");if((0,Zm.isWrapped)(N===null||N===void 0?void 0:N.MULTI))this._unwrap(N,"MULTI");if((0,Zm.isWrapped)(N===null||N===void 0?void 0:N.sendCommand))this._unwrap(N,"sendCommand")});return new Zm.InstrumentationNodeModuleDefinition(I,["^1.0.0"],(b)=>{return b},()=>{},[G,Z,l])}_getPatchExtendWithCommands(I){let G=this;return function(l){return function(W){var N;if(((N=W===null||W===void 0?void 0:W.BaseClass)===null||N===void 0?void 0:N.name)!=="RedisClient")return l.apply(this,arguments);let Y=W.executor;return W.executor=function(c,V){let d=I(c,V).args;return G._traceClientCommand(Y,this,arguments,d)},l.apply(this,arguments)}}}_getPatchMultiCommandsExec(){let I=this;return function(Z){return function(){let b=Z.apply(this,arguments);if(typeof(b===null||b===void 0?void 0:b.then)!=="function")return I._diag.error("got non promise result when patching RedisClientMultiCommand.exec"),b;return b.then((W)=>{let N=this[ZS];return I._endSpansWithRedisReplies(N,W),W}).catch((W)=>{let N=this[ZS];if(!N)I._diag.error("cannot find open spans to end for redis multi command");else{let Y=W.constructor.name==="MultiErrorReply"?W.replies:Array(N.length).fill(W);I._endSpansWithRedisReplies(N,Y)}return Promise.reject(W)})}}}_getPatchMultiCommandsAddCommand(){let I=this;return function(Z){return function(b){return I._traceClientCommand(Z,this,arguments,b)}}}_getPatchRedisClientMulti(){return function(G){return function(){let l=G.apply(this,arguments);return l[w9G]=this.options,l}}}_getPatchRedisClientSendCommand(){let I=this;return function(Z){return function(b){return I._traceClientCommand(Z,this,arguments,b)}}}_getPatchedClientConnect(){let I=this;return function(Z){return function(){let b=this.options,W=(0,H9G.getClientAttributes)(I._diag,b),N=I.tracer.startSpan(`${lS.COMPONENT}-connect`,{kind:vh.SpanKind.CLIENT,attributes:W});return vh.context.with(vh.trace.setSpan(vh.context.active(),N),()=>{return Z.apply(this)}).then((c)=>{return N.end(),c}).catch((c)=>{return N.recordException(c),N.setStatus({code:vh.SpanStatusCode.ERROR,message:c.message}),N.end(),Promise.reject(c)})}}}_traceClientCommand(I,G,Z,l){if(vh.trace.getSpan(vh.context.active())===void 0&&this.getConfig().requireParentSpan)return I.apply(G,Z);let W=G.options||G[w9G],N=l[0],Y=l.slice(1),c=this.getConfig().dbStatementSerializer||wIb.defaultDbStatementSerializer,V=(0,H9G.getClientAttributes)(this._diag,W);try{let X=c(N,Y);if(X!=null)V[JIb.SEMATTRS_DB_STATEMENT]=X}catch(X){this._diag.error("dbStatementSerializer throw an exception",X,{commandName:N})}let d=this.tracer.startSpan(`${lS.COMPONENT}-${N}`,{kind:vh.SpanKind.CLIENT,attributes:V}),Q=vh.context.with(vh.trace.setSpan(vh.context.active(),d),()=>{return I.apply(G,Z)});if(typeof(Q===null||Q===void 0?void 0:Q.then)==="function")Q.then((X)=>{this._endSpanWithResponse(d,N,Y,X,void 0)},(X)=>{this._endSpanWithResponse(d,N,Y,null,X)});else{let X=Q;X[ZS]=X[ZS]||[],X[ZS].push({span:d,commandName:N,commandArgs:Y})}return Q}_endSpansWithRedisReplies(I,G){if(!I)return this._diag.error("cannot find open spans to end for redis multi command");if(G.length!==I.length)return this._diag.error("number of multi command spans does not match response from redis");for(let Z=0;Z<I.length;Z++){let{span:l,commandName:b,commandArgs:W}=I[Z],N=G[Z],[Y,c]=N instanceof Error?[null,N]:[N,void 0];this._endSpanWithResponse(l,b,W,Y,c)}}_endSpanWithResponse(I,G,Z,l,b){let{responseHook:W}=this.getConfig();if(!b&&W)try{W(I,G,Z,l)}catch(N){this._diag.error("responseHook throw an exception",N)}if(b)I.recordException(b),I.setStatus({code:vh.SpanStatusCode.ERROR,message:b===null||b===void 0?void 0:b.message});I.end()}}A9G.RedisInstrumentation=lS;lS.COMPONENT="redis"});var p9G=w((C9G)=>{Object.defineProperty(C9G,"__esModule",{value:!0})});var u9G=w((iy)=>{var AIb=iy&&iy.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),y9G=iy&&iy.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))AIb(G,I,Z)};Object.defineProperty(iy,"__esModule",{value:!0});y9G(v9G(),iy);y9G(p9G(),iy)});function bS(I,G){return I.includes(G.toLowerCase())}function tEI(I){if(bS(oEI,I))return"cache.get";else if(bS(vIb,I))return"cache.put";else return}function CIb(I,G){return G.some((Z)=>I.startsWith(Z))}function g9G(I,G){try{if(G.length===0)return;let Z=(b)=>{if(typeof b==="string"||typeof b==="number"||Buffer.isBuffer(b))return[b.toString()];else if(Array.isArray(b))return L9G(b.map((W)=>Z(W)));else return["<unknown>"]},l=G[0];if(bS(EIb,I)&&l!=null)return Z(l);return L9G(G.map((b)=>Z(b)))}catch{return}}function a9G(I,G,Z){if(!tEI(I))return!1;for(let l of G)if(CIb(l,Z))return!0;return!1}function z9G(I){let G=(Z)=>{try{if(Buffer.isBuffer(Z))return Z.byteLength;else if(typeof Z==="string")return Z.length;else if(typeof Z==="number")return Z.toString().length;else if(Z===null||Z===void 0)return 0;return JSON.stringify(Z).length}catch{return}};return Array.isArray(I)?I.reduce((Z,l)=>{let b=G(l);return typeof b==="number"?Z!==void 0?Z+b:b:Z},0):G(I)}function L9G(I){let G=[],Z=(l)=>{l.forEach((b)=>{if(Array.isArray(b))Z(b);else G.push(b)})};return Z(I),G}var EIb,oEI,vIb;var B9G=a(()=>{EIb=["get","set","setex"],oEI=["get","mget"],vIb=["set","setex"]});var k9G,U9G,x9G="Redis",rEI,O9G=(I,G,Z,l)=>{I.setAttribute(bY,"auto.db.otel.redis");let b=g9G(G,Z),W=tEI(G);if(!b||!W||!rEI.cachePrefixes||!a9G(G,b,rEI.cachePrefixes))return;let N=Bb(I).data["net.peer.name"],Y=Bb(I).data["net.peer.port"];if(Y&&N)I.setAttributes({"network.peer.address":N,"network.peer.port":Y});let c=z9G(l);if(c)I.setAttribute(xJI,c);if(bS(oEI,G)&&c!==void 0)I.setAttribute(kJI,c>0);I.setAttributes({[JW]:W,[UJI]:b});let V=b.join(", ");I.updateName(oA(V,1024))},pIb,yIb,M9G,uIb=(I={})=>{return{name:x9G,setupOnce(){rEI=I,M9G()}}},K9G;var D9G=a(()=>{Qb();vc();B9G();k9G=hI(V9G(),1),U9G=hI(u9G(),1),rEI={},pIb=Rb("IORedis",()=>{return new k9G.IORedisInstrumentation({responseHook:O9G})}),yIb=Rb("Redis-4",()=>{return new U9G.RedisInstrumentation({responseHook:O9G})}),M9G=Object.assign(()=>{pIb(),yIb()},{id:x9G}),K9G=Gl(uIb)});var q9G=w((j9G)=>{Object.defineProperty(j9G,"__esModule",{value:!0});j9G.EVENT_LISTENERS_SET=void 0;j9G.EVENT_LISTENERS_SET=Symbol("opentelemetry.instrumentation.pg.eventListenersSet")});var IvI=w((T9G)=>{Object.defineProperty(T9G,"__esModule",{value:!0});T9G.AttributeNames=void 0;var LIb;(function(I){I.PG_VALUES="db.postgresql.values",I.PG_PLAN="db.postgresql.plan",I.IDLE_TIMEOUT_MILLIS="db.postgresql.idle.timeout.millis",I.MAX_CLIENT="db.postgresql.max.client"})(LIb=T9G.AttributeNames||(T9G.AttributeNames={}))});var GvI=w((S9G)=>{Object.defineProperty(S9G,"__esModule",{value:!0});S9G.METRIC_DB_CLIENT_OPERATION_DURATION=S9G.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS=S9G.METRIC_DB_CLIENT_CONNECTION_COUNT=S9G.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE=S9G.DB_CLIENT_CONNECTION_STATE_VALUE_USED=S9G.ATTR_DB_OPERATION_NAME=S9G.ATTR_DB_NAMESPACE=S9G.ATTR_DB_CLIENT_CONNECTION_STATE=S9G.ATTR_DB_CLIENT_CONNECTION_POOL_NAME=void 0;S9G.ATTR_DB_CLIENT_CONNECTION_POOL_NAME="db.client.connection.pool.name";S9G.ATTR_DB_CLIENT_CONNECTION_STATE="db.client.connection.state";S9G.ATTR_DB_NAMESPACE="db.namespace";S9G.ATTR_DB_OPERATION_NAME="db.operation.name";S9G.DB_CLIENT_CONNECTION_STATE_VALUE_USED="used";S9G.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE="idle";S9G.METRIC_DB_CLIENT_CONNECTION_COUNT="db.client.connection.count";S9G.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS="db.client.connection.pending_requests";S9G.METRIC_DB_CLIENT_OPERATION_DURATION="db.client.operation.duration"});var lvI=w((P9G)=>{Object.defineProperty(P9G,"__esModule",{value:!0});P9G.SpanNames=void 0;var MIb;(function(I){I.QUERY_PREFIX="pg.query",I.CONNECT="pg.connect",I.POOL_CONNECT="pg-pool.connect"})(MIb=P9G.SpanNames||(P9G.SpanNames={}))});var ILG=w((r9G)=>{Object.defineProperty(r9G,"__esModule",{value:!0});r9G.isObjectWithTextString=r9G.getErrorMessage=r9G.patchClientConnectCallback=r9G.patchCallbackPGPool=r9G.updateCounter=r9G.getPoolName=r9G.patchCallback=r9G.handleExecutionResult=r9G.handleConfigQuery=r9G.shouldSkipInstrumentation=r9G.getSemanticAttributesFromPool=r9G.getSemanticAttributesFromConnection=r9G.getConnectionString=r9G.parseNormalizedOperationName=r9G.getQuerySpanName=void 0;var Py=bl(),GZI=IvI(),lX=Nc(),Wz=GvI(),KIb=jN(),_9G=lvI();function f9G(I,G){if(!G)return _9G.SpanNames.QUERY_PREFIX;let Z=typeof G.name==="string"&&G.name?G.name:s9G(G.text);return`${_9G.SpanNames.QUERY_PREFIX}:${Z}${I?` ${I}`:""}`}r9G.getQuerySpanName=f9G;function s9G(I){let G=I.indexOf(" "),Z=G===-1?I:I.slice(0,G);return Z=Z.toUpperCase(),Z.endsWith(";")?Z.slice(0,-1):Z}r9G.parseNormalizedOperationName=s9G;function bvI(I){let G=I.host||"localhost",Z=I.port||5432,l=I.database||"";return`postgresql://${G}:${Z}/${l}`}r9G.getConnectionString=bvI;function $9G(I){if(Number.isInteger(I))return I;return}function o9G(I){return{[lX.SEMATTRS_DB_SYSTEM]:lX.DBSYSTEMVALUES_POSTGRESQL,[lX.SEMATTRS_DB_NAME]:I.database,[lX.SEMATTRS_DB_CONNECTION_STRING]:bvI(I),[lX.SEMATTRS_NET_PEER_NAME]:I.host,[lX.SEMATTRS_NET_PEER_PORT]:$9G(I.port),[lX.SEMATTRS_DB_USER]:I.user}}r9G.getSemanticAttributesFromConnection=o9G;function DIb(I){return{[lX.SEMATTRS_DB_SYSTEM]:lX.DBSYSTEMVALUES_POSTGRESQL,[lX.SEMATTRS_DB_NAME]:I.database,[lX.SEMATTRS_DB_CONNECTION_STRING]:bvI(I),[lX.SEMATTRS_NET_PEER_NAME]:I.host,[lX.SEMATTRS_NET_PEER_PORT]:$9G(I.port),[lX.SEMATTRS_DB_USER]:I.user,[GZI.AttributeNames.IDLE_TIMEOUT_MILLIS]:I.idleTimeoutMillis,[GZI.AttributeNames.MAX_CLIENT]:I.maxClient}}r9G.getSemanticAttributesFromPool=DIb;function jIb(I){return I.requireParentSpan===!0&&Py.trace.getSpan(Py.context.active())===void 0}r9G.shouldSkipInstrumentation=jIb;function nIb(I,G,Z){let{connectionParameters:l}=this,b=l.database,W=f9G(b,Z),N=I.startSpan(W,{kind:Py.SpanKind.CLIENT,attributes:o9G(l)});if(!Z)return N;if(Z.text)N.setAttribute(lX.SEMATTRS_DB_STATEMENT,Z.text);if(G.enhancedDatabaseReporting&&Array.isArray(Z.values))try{let Y=Z.values.map((c)=>{if(c==null)return"null";else if(c instanceof Buffer)return c.toString();else if(typeof c==="object"){if(typeof c.toPostgres==="function")return c.toPostgres();return JSON.stringify(c)}else return c.toString()});N.setAttribute(GZI.AttributeNames.PG_VALUES,Y)}catch(Y){Py.diag.error("failed to stringify ",Z.values,Y)}if(typeof Z.name==="string")N.setAttribute(GZI.AttributeNames.PG_PLAN,Z.name);return N}r9G.handleConfigQuery=nIb;function t9G(I,G,Z){if(typeof I.responseHook==="function")(0,KIb.safeExecuteInTheMiddle)(()=>{I.responseHook(G,{data:Z})},(l)=>{if(l)Py.diag.error("Error running response hook",l)},!0)}r9G.handleExecutionResult=t9G;function qIb(I,G,Z,l,b){return function(N,Y){if(N){if(Object.prototype.hasOwnProperty.call(N,"code"))l[lX.ATTR_ERROR_TYPE]=N.code;G.setStatus({code:Py.SpanStatusCode.ERROR,message:N.message})}else t9G(I,G,Y);b(),G.end(),Z.call(this,N,Y)}}r9G.patchCallback=qIb;function TIb(I){let G="";return G+=((I===null||I===void 0?void 0:I.host)?`${I.host}`:"unknown_host")+":",G+=((I===null||I===void 0?void 0:I.port)?`${I.port}`:"unknown_port")+"/",G+=(I===null||I===void 0?void 0:I.database)?`${I.database}`:"unknown_database",G.trim()}r9G.getPoolName=TIb;function SIb(I,G,Z,l,b){let{totalCount:W,waitingCount:N,idleCount:Y}=G,c=W-Y;return Z.add(c-b.used,{[Wz.ATTR_DB_CLIENT_CONNECTION_STATE]:Wz.DB_CLIENT_CONNECTION_STATE_VALUE_USED,[Wz.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:I}),Z.add(Y-b.idle,{[Wz.ATTR_DB_CLIENT_CONNECTION_STATE]:Wz.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE,[Wz.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:I}),l.add(N-b.pending,{[Wz.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:I}),{used:c,idle:Y,pending:N}}r9G.updateCounter=SIb;function iIb(I,G){return function(l,b,W){if(l)I.setStatus({code:Py.SpanStatusCode.ERROR,message:l.message});I.end(),G.call(this,l,b,W)}}r9G.patchCallbackPGPool=iIb;function PIb(I,G){return function(l){if(l)I.setStatus({code:Py.SpanStatusCode.ERROR,message:l.message});I.end(),G.apply(this,arguments)}}r9G.patchClientConnectCallback=PIb;function _Ib(I){return typeof I==="object"&&I!==null&&"message"in I?String(I.message):void 0}r9G.getErrorMessage=_Ib;function fIb(I){var G;return typeof I==="object"&&typeof((G=I)===null||G===void 0?void 0:G.text)==="string"}r9G.isObjectWithTextString=fIb});var lLG=w((GLG)=>{Object.defineProperty(GLG,"__esModule",{value:!0});GLG.PACKAGE_NAME=GLG.PACKAGE_VERSION=void 0;GLG.PACKAGE_VERSION="0.51.1";GLG.PACKAGE_NAME="@opentelemetry/instrumentation-pg"});var QLG=w((dLG)=>{Object.defineProperty(dLG,"__esModule",{value:!0});dLG.PgInstrumentation=void 0;var Ch=jN(),Yc=bl(),bLG=q9G(),Td=ILG(),WLG=_EI(),NLG=lLG(),YLG=lvI(),ZZI=lY(),_y=Nc(),Nz=GvI();function lZI(I){return I[Symbol.toStringTag]==="Module"?I.default:I}class VLG extends Ch.InstrumentationBase{constructor(I={}){super(NLG.PACKAGE_NAME,NLG.PACKAGE_VERSION,I);this._connectionsCounter={used:0,idle:0,pending:0}}_updateMetricInstruments(){this._operationDuration=this.meter.createHistogram(Nz.METRIC_DB_CLIENT_OPERATION_DURATION,{description:"Duration of database client operations.",unit:"s",valueType:Yc.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.001,0.005,0.01,0.05,0.1,0.5,1,5,10]}}),this._connectionsCounter={idle:0,pending:0,used:0},this._connectionsCount=this.meter.createUpDownCounter(Nz.METRIC_DB_CLIENT_CONNECTION_COUNT,{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"}),this._connectionPendingRequests=this.meter.createUpDownCounter(Nz.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS,{description:"The number of current pending requests for an open connection.",unit:"{connection}"})}init(){let I=[">=8.0.3 <9"],G=new Ch.InstrumentationNodeModuleFile("pg/lib/native/client.js",I,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),Z=new Ch.InstrumentationNodeModuleFile("pg/lib/client.js",I,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),l=new Ch.InstrumentationNodeModuleDefinition("pg",I,(W)=>{let N=lZI(W);return this._patchPgClient(N.Client),W},(W)=>{let N=lZI(W);return this._unpatchPgClient(N.Client),W},[Z,G]),b=new Ch.InstrumentationNodeModuleDefinition("pg-pool",[">=2.0.0 <4"],(W)=>{if((0,Ch.isWrapped)(W.prototype.connect))this._unwrap(W.prototype,"connect");return this._wrap(W.prototype,"connect",this._getPoolConnectPatch()),W},(W)=>{if((0,Ch.isWrapped)(W.prototype.connect))this._unwrap(W.prototype,"connect")});return[l,b]}_patchPgClient(I){if(!I)return;let G=lZI(I);if((0,Ch.isWrapped)(G.prototype.query))this._unwrap(G.prototype,"query");if((0,Ch.isWrapped)(G.prototype.connect))this._unwrap(G.prototype,"connect");return this._wrap(G.prototype,"query",this._getClientQueryPatch()),this._wrap(G.prototype,"connect",this._getClientConnectPatch()),I}_unpatchPgClient(I){let G=lZI(I);if((0,Ch.isWrapped)(G.prototype.query))this._unwrap(G.prototype,"query");if((0,Ch.isWrapped)(G.prototype.connect))this._unwrap(G.prototype,"connect");return I}_getClientConnectPatch(){let I=this;return(G)=>{return function(l){if(Td.shouldSkipInstrumentation(I.getConfig()))return G.call(this,l);let b=I.tracer.startSpan(YLG.SpanNames.CONNECT,{kind:Yc.SpanKind.CLIENT,attributes:Td.getSemanticAttributesFromConnection(this)});if(l){let N=Yc.trace.getSpan(Yc.context.active());if(l=Td.patchClientConnectCallback(b,l),N)l=Yc.context.bind(Yc.context.active(),l)}let W=Yc.context.with(Yc.trace.setSpan(Yc.context.active(),b),()=>{return G.call(this,l)});return cLG(b,W)}}}recordOperationDuration(I,G){let Z={};[_y.SEMATTRS_DB_SYSTEM,Nz.ATTR_DB_NAMESPACE,_y.ATTR_ERROR_TYPE,_y.ATTR_SERVER_PORT,_y.ATTR_SERVER_ADDRESS,Nz.ATTR_DB_OPERATION_NAME].forEach((W)=>{if(W in I)Z[W]=I[W]});let b=(0,ZZI.hrTimeToMilliseconds)((0,ZZI.hrTimeDuration)(G,(0,ZZI.hrTime)()))/1000;this._operationDuration.record(b,Z)}_getClientQueryPatch(){let I=this;return(G)=>{return this._diag.debug("Patching pg.Client.prototype.query"),function(...l){if(Td.shouldSkipInstrumentation(I.getConfig()))return G.apply(this,l);let b=(0,ZZI.hrTime)(),W=l[0],N=typeof W==="string",Y=Td.isObjectWithTextString(W),c=N?{text:W,values:Array.isArray(l[1])?l[1]:void 0}:Y?W:void 0,V={[_y.SEMATTRS_DB_SYSTEM]:_y.DBSYSTEMVALUES_POSTGRESQL,[Nz.ATTR_DB_NAMESPACE]:this.database,[_y.ATTR_SERVER_PORT]:this.connectionParameters.port,[_y.ATTR_SERVER_ADDRESS]:this.connectionParameters.host};if(c===null||c===void 0?void 0:c.text)V[Nz.ATTR_DB_OPERATION_NAME]=Td.parseNormalizedOperationName(c===null||c===void 0?void 0:c.text);let d=()=>{I.recordOperationDuration(V,b)},Q=I.getConfig(),X=Td.handleConfigQuery.call(this,I.tracer,Q,c);if(Q.addSqlCommenterCommentToQueries){if(N)l[0]=(0,WLG.addSqlCommenterComment)(X,W);else if(Y&&!("name"in W))l[0]=Object.assign(Object.assign({},W),{text:(0,WLG.addSqlCommenterComment)(X,W.text)})}if(l.length>0){let h=Yc.trace.getSpan(Yc.context.active());if(typeof l[l.length-1]==="function"){if(l[l.length-1]=Td.patchCallback(Q,X,l[l.length-1],V,d),h)l[l.length-1]=Yc.context.bind(Yc.context.active(),l[l.length-1])}else if(typeof(c===null||c===void 0?void 0:c.callback)==="function"){let A=Td.patchCallback(I.getConfig(),X,c.callback,V,d);if(h)A=Yc.context.bind(Yc.context.active(),A);l[0].callback=A}}let{requestHook:R}=Q;if(typeof R==="function"&&c)(0,Ch.safeExecuteInTheMiddle)(()=>{let{database:h,host:A,port:C,user:g}=this.connectionParameters;R(X,{connection:{database:h,host:A,port:C,user:g},query:{text:c.text,values:c.values,name:c.name}})},(h)=>{if(h)I._diag.error("Error running query hook",h)},!0);let H;try{H=G.apply(this,l)}catch(h){throw X.setStatus({code:Yc.SpanStatusCode.ERROR,message:Td.getErrorMessage(h)}),X.end(),h}if(H instanceof Promise)return H.then((h)=>{return new Promise((A)=>{Td.handleExecutionResult(I.getConfig(),X,h),d(),X.end(),A(h)})}).catch((h)=>{return new Promise((A,C)=>{X.setStatus({code:Yc.SpanStatusCode.ERROR,message:h.message}),d(),X.end(),C(h)})});return H}}}_setPoolConnectEventListeners(I){if(I[bLG.EVENT_LISTENERS_SET])return;let G=Td.getPoolName(I.options);I.on("connect",()=>{this._connectionsCounter=Td.updateCounter(G,I,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),I.on("acquire",()=>{this._connectionsCounter=Td.updateCounter(G,I,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),I.on("remove",()=>{this._connectionsCounter=Td.updateCounter(G,I,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),I.on("release",()=>{this._connectionsCounter=Td.updateCounter(G,I,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),I[bLG.EVENT_LISTENERS_SET]=!0}_getPoolConnectPatch(){let I=this;return(G)=>{return function(l){if(Td.shouldSkipInstrumentation(I.getConfig()))return G.call(this,l);let b=I.tracer.startSpan(YLG.SpanNames.POOL_CONNECT,{kind:Yc.SpanKind.CLIENT,attributes:Td.getSemanticAttributesFromPool(this.options)});if(I._setPoolConnectEventListeners(this),l){let N=Yc.trace.getSpan(Yc.context.active());if(l=Td.patchCallbackPGPool(b,l),N)l=Yc.context.bind(Yc.context.active(),l)}let W=Yc.context.with(Yc.trace.setSpan(Yc.context.active(),b),()=>{return G.call(this,l)});return cLG(b,W)}}}}dLG.PgInstrumentation=VLG;function cLG(I,G){if(!(G instanceof Promise))return G;let Z=G;return Yc.context.bind(Yc.context.active(),Z.then((l)=>{return I.end(),l}).catch((l)=>{return I.setStatus({code:Yc.SpanStatusCode.ERROR,message:Td.getErrorMessage(l)}),I.end(),Promise.reject(l)}))}});var FLG=w((XLG)=>{Object.defineProperty(XLG,"__esModule",{value:!0})});var RLG=w((sv)=>{var VGb=sv&&sv.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),WvI=sv&&sv.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))VGb(G,I,Z)};Object.defineProperty(sv,"__esModule",{value:!0});WvI(QLG(),sv);WvI(FLG(),sv);WvI(IvI(),sv)});var HLG,hLG="Postgres",wLG,dGb=()=>{return{name:hLG,setupOnce(){wLG()}}},JLG;var ALG=a(()=>{Qb();vc();HLG=hI(RLG(),1),wLG=Rb(hLG,()=>new HLG.PgInstrumentation({requireParentSpan:!0,requestHook(I){IV(I,"auto.db.otel.postgres")}})),JLG=Gl(dGb)});var IM,$v,bX,NvI="PostgresJs",ELG,vLG,CLG,mGb=()=>{return{name:NvI,setupOnce(){vLG()}}},pLG;var yLG=a(()=>{Qb();vc();IM=hI(bl(),1),$v=hI(jN(),1),bX=hI(Nc(),1),ELG=[">=3.0.0 <4"],vLG=Rb(NvI,(I)=>new CLG({requireParentSpan:I?.requireParentSpan??!0,requestHook:I?.requestHook}));CLG=class CLG extends $v.InstrumentationBase{constructor(I){super("sentry-postgres-js",Wc,I)}init(){let I=new $v.InstrumentationNodeModuleDefinition("postgres",ELG);return["src","cf/src","cjs/src"].forEach((G)=>{I.files.push(new $v.InstrumentationNodeModuleFile(`postgres/${G}/connection.js`,["*"],this._patchConnection.bind(this),this._unwrap.bind(this))),I.files.push(new $v.InstrumentationNodeModuleFile(`postgres/${G}/query.js`,ELG,this._patchQuery.bind(this),this._unwrap.bind(this)))}),[I]}_shouldCreateSpans(){let I=this.getConfig();return IM.trace.getSpan(IM.context.active())!==void 0||!I.requireParentSpan}_patchReject(I,G){return new Proxy(I,{apply:(Z,l,b)=>{G.setStatus({code:A1,message:b?.[0]?.message||"unknown_error"});let W=Reflect.apply(Z,l,b);return G.setAttribute(bX.ATTR_DB_RESPONSE_STATUS_CODE,b?.[0]?.code||"Unknown error"),G.setAttribute(bX.ATTR_ERROR_TYPE,b?.[0]?.name||"Unknown error"),G.end(),W}})}_patchResolve(I,G){return new Proxy(I,{apply:(Z,l,b)=>{let W=Reflect.apply(Z,l,b),N=b?.[0]?.command;if(N)G.setAttribute(bX.ATTR_DB_OPERATION_NAME,N);return G.end(),W}})}_patchQuery(I){return I.Query.prototype.handle=new Proxy(I.Query.prototype.handle,{apply:async(G,Z,l)=>{if(!this._shouldCreateSpans())return Reflect.apply(G,Z,l);let b=this._sanitizeSqlQuery(Z.strings?.[0]);return OII({name:b||"postgresjs.query",op:"db"},(W)=>{let Y=$W().getScopeData().contexts.postgresjsConnection;IV(W,"auto.db.otel.postgres");let{requestHook:c}=this.getConfig();if(c)$v.safeExecuteInTheMiddle(()=>c(W,b,Y),(X)=>{if(X)LG.error(`Error in requestHook for ${NvI} integration:`,X)});let V=Y?.ATTR_DB_NAMESPACE||"<unknown database>",d=Y?.ATTR_SERVER_ADDRESS||"<unknown host>",Q=Y?.ATTR_SERVER_PORT||"<unknown port>";W.setAttribute(bX.ATTR_DB_SYSTEM_NAME,"postgres"),W.setAttribute(bX.ATTR_DB_NAMESPACE,V),W.setAttribute(bX.ATTR_SERVER_ADDRESS,d),W.setAttribute(bX.ATTR_SERVER_PORT,Q),W.setAttribute(bX.ATTR_DB_QUERY_TEXT,b),Z.resolve=this._patchResolve(Z.resolve,W),Z.reject=this._patchReject(Z.reject,W);try{return Reflect.apply(G,Z,l)}catch(X){throw W.setStatus({code:A1}),W.end(),X}})}}),I}_patchConnection(I){return new Proxy(I,{apply:(G,Z,l)=>{let b=l[0]?.database||"<unknown database>",W=l[0]?.host?.[0]||"<unknown host>",N=l[0]?.port?.[0]||"<unknown port>";return $W().setContext("postgresjsConnection",{ATTR_DB_NAMESPACE:b,ATTR_SERVER_ADDRESS:W,ATTR_SERVER_PORT:N}),Reflect.apply(G,Z,l)}})}_sanitizeSqlQuery(I){if(!I)return"Unknown SQL Query";return I.replace(/\s+/g," ").trim().substring(0,1024).replace(/--.*?(\r?\n|$)/g,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/;\s*$/,"").replace(/\b\d+\b/g,"?").replace(/\s+/g," ").replace(/\bIN\b\s*\(\s*\?(?:\s*,\s*\?)*\s*\)/g,"IN (?)")}};pLG=Gl(mGb)});function FGb(I){switch(I){case"client":return fy.SpanKind.CLIENT;case"internal":default:return fy.SpanKind.INTERNAL}}function aLG(I,G,Z,l,b){if(zLG(G.name,b))return;let W={attributes:G.attributes,kind:FGb(G.kind),startTime:G.startTime};I.startActiveSpan(G.name,W,(N)=>{if(l.set(G.id,N.spanContext().spanId),G.links)N.addLinks(G.links.flatMap((c)=>{let V=l.get(c);if(!V)return[];return{context:{spanId:V,traceId:N.spanContext().traceId,traceFlags:N.spanContext().traceFlags}}}));let Y=Z.filter((c)=>c.parentId===G.id);for(let c of Y)aLG(I,c,Z,l,b);N.end(G.endTime)})}function uLG(I,G){if(HGb(G))return G.then((Z)=>{return I.end(),Z},(Z)=>{throw I.end(),Z});return I.end(),G}function HGb(I){return I!=null&&typeof I.then==="function"}function zLG(I,G){return G.some((Z)=>typeof Z==="string"?Z===I:Z.test(I))}var gLG,bZI,fy,QGb,XGb="00-10-10-00",RGb=class{traceMiddleware;tracerProvider;ignoreSpanTypes;constructor({traceMiddleware:I,tracerProvider:G,ignoreSpanTypes:Z}){this.traceMiddleware=I,this.tracerProvider=G,this.ignoreSpanTypes=Z}isEnabled(){return!0}getTraceParent(I){let G=fy.trace.getSpanContext(I??fy.context.active());if(G)return`00-${G.traceId}-${G.spanId}-0${G.traceFlags}`;return XGb}dispatchEngineSpans(I){let G=this.tracerProvider.getTracer("prisma"),Z=new Map,l=I.filter((b)=>b.parentId===null);for(let b of l)aLG(G,b,I,Z,this.ignoreSpanTypes)}getActiveContext(){return fy.context.active()}runInChildSpan(I,G){if(typeof I==="string")I={name:I};if(I.internal&&!QGb)return G();if(I.middleware&&!this.traceMiddleware)return G();let Z=this.tracerProvider.getTracer("prisma"),l=I.context??this.getActiveContext(),b=`prisma:client:${I.name}`;if(zLG(b,this.ignoreSpanTypes))return G();if(I.active===!1){let W=Z.startSpan(b,I,l);return uLG(W,G(W,l))}return Z.startActiveSpan(b,I,(W)=>uLG(W,G(W,l)))}},BLG,cvI,hGb,LLG="PRISMA_INSTRUMENTATION",YvI,wGb,JGb="@prisma/client",kLG;var ULG=a(()=>{gLG=hI(bl(),1),bZI=hI(jN(),1),fy=hI(bl(),1),QGb=process.env.PRISMA_SHOW_ALL_TRACES==="true";BLG={name:"@prisma/instrumentation",version:"6.11.1",description:"OpenTelemetry compliant instrumentation for Prisma Client",main:"dist/index.js",module:"dist/index.mjs",types:"dist/index.d.ts",exports:{".":{require:{types:"./dist/index.d.ts",default:"./dist/index.js"},import:{types:"./dist/index.d.ts",default:"./dist/index.mjs"}}},license:"Apache-2.0",homepage:"https://www.prisma.io",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/instrumentation"},bugs:"https://github.com/prisma/prisma/issues",devDependencies:{"@prisma/internals":"workspace:*","@swc/core":"1.11.5","@types/jest":"29.5.14","@types/node":"18.19.76","@opentelemetry/api":"1.9.0",jest:"29.7.0","jest-junit":"16.0.0",typescript:"5.4.5"},dependencies:{"@opentelemetry/instrumentation":"^0.52.0 || ^0.53.0 || ^0.54.0 || ^0.55.0 || ^0.56.0 || ^0.57.0"},peerDependencies:{"@opentelemetry/api":"^1.8"},files:["dist"],keywords:["prisma","instrumentation","opentelemetry","otel"],scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",prepublishOnly:"pnpm run build",test:"jest"},sideEffects:!1},cvI=BLG.version,hGb=cvI.split(".")[0],YvI=`V${hGb}_PRISMA_INSTRUMENTATION`,wGb=BLG.name,kLG=class extends bZI.InstrumentationBase{tracerProvider;constructor(I={}){super(wGb,cvI,I)}setTracerProvider(I){this.tracerProvider=I}init(){return[new bZI.InstrumentationNodeModuleDefinition(JGb,[cvI])]}enable(){let I=this._config,G={helper:new RGb({traceMiddleware:I.middleware??!1,tracerProvider:this.tracerProvider??gLG.trace.getTracerProvider(),ignoreSpanTypes:I.ignoreSpanTypes??[]})};global[LLG]=G,global[YvI]=G}disable(){delete global[LLG],delete global[YvI]}isEnabled(){return Boolean(global[YvI])}}});function AGb(I){return!!I&&typeof I==="object"&&"dispatchEngineSpans"in I}function OLG(){let I=globalThis.PRISMA_INSTRUMENTATION;return I&&typeof I==="object"&&"helper"in I?I.helper:void 0}var xLG="Prisma",MLG,EGb,KLG;var DLG=a(()=>{ULG();Qb();vc();MLG=class MLG extends kLG{constructor(){super()}enable(){super.enable();let I=OLG(),G=!1;if(AGb(I))I.createEngineSpan=()=>{u2(()=>{if(!G)G=!0,console.warn("[Sentry] The Sentry SDK supports tracing with Prisma version 5 only with limited capabilities. For full tracing capabilities pass `prismaInstrumentation` for version 5 to the Sentry `prismaIntegration`. Read more: https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/prisma/")})}}};EGb=Rb(xLG,(I)=>{if(I?.prismaInstrumentation)return I.prismaInstrumentation;return new MLG}),KLG=Gl(({prismaInstrumentation:I}={})=>{return{name:xLG,setupOnce(){EGb({prismaInstrumentation:I})},setup(G){if(!OLG())return;G.on("spanStart",(Z)=>{let l=Bb(Z);if(l.description?.startsWith("prisma:"))Z.setAttribute(bY,"auto.db.otel.prisma");if(l.description==="prisma:engine:db_query"&&l.data["db.query.text"])Z.updateName(l.data["db.query.text"]);if(l.description==="prisma:engine:db_query"&&!l.data["db.system"])Z.setAttribute("db.system","prisma")})}}})});var qLG=w((jLG)=>{Object.defineProperty(jLG,"__esModule",{value:!0});jLG.PACKAGE_NAME=jLG.PACKAGE_VERSION=void 0;jLG.PACKAGE_VERSION="0.45.2";jLG.PACKAGE_NAME="@opentelemetry/instrumentation-hapi"});var VvI=w((TLG)=>{Object.defineProperty(TLG,"__esModule",{value:!0});TLG.HapiLifecycleMethodNames=TLG.HapiLayerType=TLG.handlerPatched=TLG.HapiComponentName=void 0;TLG.HapiComponentName="@hapi/hapi";TLG.handlerPatched=Symbol("hapi-handler-patched");TLG.HapiLayerType={ROUTER:"router",PLUGIN:"plugin",EXT:"server.ext"};TLG.HapiLifecycleMethodNames=new Set(["onPreAuth","onCredentials","onPostAuth","onPreHandler","onPostHandler","onPreResponse","onRequest"])});var mvI=w((iLG)=>{Object.defineProperty(iLG,"__esModule",{value:!0});iLG.AttributeNames=void 0;var uGb;(function(I){I.HAPI_TYPE="hapi.type",I.PLUGIN_NAME="hapi.plugin.name",I.EXT_TYPE="server.ext.type"})(uGb=iLG.AttributeNames||(iLG.AttributeNames={}))});var fLG=w((PLG)=>{Object.defineProperty(PLG,"__esModule",{value:!0});PLG.getPluginFromInput=PLG.getExtMetadata=PLG.getRouteMetadata=PLG.isPatchableExtMethod=PLG.isDirectExtInput=PLG.isLifecycleExtEventObj=PLG.isLifecycleExtType=PLG.getPluginName=void 0;var WZI=Nc(),WS=VvI(),sy=mvI();function LGb(I){if(I.name)return I.name;else return I.pkg.name}PLG.getPluginName=LGb;var gGb=(I)=>{return typeof I==="string"&&WS.HapiLifecycleMethodNames.has(I)};PLG.isLifecycleExtType=gGb;var aGb=(I)=>{var G;let Z=(G=I)===null||G===void 0?void 0:G.type;return Z!==void 0&&PLG.isLifecycleExtType(Z)};PLG.isLifecycleExtEventObj=aGb;var zGb=(I)=>{return Array.isArray(I)&&I.length<=3&&PLG.isLifecycleExtType(I[0])&&typeof I[1]==="function"};PLG.isDirectExtInput=zGb;var BGb=(I)=>{return!Array.isArray(I)};PLG.isPatchableExtMethod=BGb;var kGb=(I,G)=>{if(G)return{attributes:{[WZI.SEMATTRS_HTTP_ROUTE]:I.path,[WZI.SEMATTRS_HTTP_METHOD]:I.method,[sy.AttributeNames.HAPI_TYPE]:WS.HapiLayerType.PLUGIN,[sy.AttributeNames.PLUGIN_NAME]:G},name:`${G}: route - ${I.path}`};return{attributes:{[WZI.SEMATTRS_HTTP_ROUTE]:I.path,[WZI.SEMATTRS_HTTP_METHOD]:I.method,[sy.AttributeNames.HAPI_TYPE]:WS.HapiLayerType.ROUTER},name:`route - ${I.path}`}};PLG.getRouteMetadata=kGb;var UGb=(I,G)=>{if(G)return{attributes:{[sy.AttributeNames.EXT_TYPE]:I,[sy.AttributeNames.HAPI_TYPE]:WS.HapiLayerType.EXT,[sy.AttributeNames.PLUGIN_NAME]:G},name:`${G}: ext - ${I}`};return{attributes:{[sy.AttributeNames.EXT_TYPE]:I,[sy.AttributeNames.HAPI_TYPE]:WS.HapiLayerType.EXT},name:`ext - ${I}`}};PLG.getExtMetadata=UGb;var xGb=(I)=>{if("plugin"in I){if("plugin"in I.plugin)return I.plugin.plugin;return I.plugin}return I};PLG.getPluginFromInput=xGb});var eLG=w((tLG)=>{Object.defineProperty(tLG,"__esModule",{value:!0});tLG.HapiInstrumentation=void 0;var qR=bl(),sLG=lY(),NZI=jN(),$LG=qLG(),NS=VvI(),ov=fLG();class oLG extends NZI.InstrumentationBase{constructor(I={}){super($LG.PACKAGE_NAME,$LG.PACKAGE_VERSION,I)}init(){return new NZI.InstrumentationNodeModuleDefinition(NS.HapiComponentName,[">=17.0.0 <22"],(I)=>{let G=I[Symbol.toStringTag]==="Module"?I.default:I;if(!(0,NZI.isWrapped)(G.server))this._wrap(G,"server",this._getServerPatch.bind(this));if(!(0,NZI.isWrapped)(G.Server))this._wrap(G,"Server",this._getServerPatch.bind(this));return G},(I)=>{let G=I[Symbol.toStringTag]==="Module"?I.default:I;this._massUnwrap([G],["server","Server"])})}_getServerPatch(I){let G=this,Z=this;return function(b){let W=I.apply(this,[b]);return Z._wrap(W,"route",(N)=>{return G._getServerRoutePatch.bind(G)(N)}),Z._wrap(W,"ext",(N)=>{return G._getServerExtPatch.bind(G)(N)}),Z._wrap(W,"register",G._getServerRegisterPatch.bind(G)),W}}_getServerRegisterPatch(I){let G=this;return function(l,b){if(Array.isArray(l))for(let W of l){let N=(0,ov.getPluginFromInput)(W);G._wrapRegisterHandler(N)}else{let W=(0,ov.getPluginFromInput)(l);G._wrapRegisterHandler(W)}return I.apply(this,[l,b])}}_getServerExtPatch(I,G){let Z=this;return function(...b){if(Array.isArray(b[0])){let W=b[0];for(let N=0;N<W.length;N++){let Y=W[N];if((0,ov.isLifecycleExtType)(Y.type)){let c=Y,V=Z._wrapExtMethods(c.method,Y.type,G);c.method=V,W[N]=c}}return I.apply(this,b)}else if((0,ov.isDirectExtInput)(b)){let W=b,N=W[1],Y=Z._wrapExtMethods(N,W[0],G);return I.apply(this,[W[0],Y,W[2]])}else if((0,ov.isLifecycleExtEventObj)(b[0])){let W=b[0],N=Z._wrapExtMethods(W.method,W.type,G);return W.method=N,I.call(this,W)}return I.apply(this,b)}}_getServerRoutePatch(I,G){let Z=this;return function(l){if(Array.isArray(l))for(let b=0;b<l.length;b++){let W=Z._wrapRouteHandler.call(Z,l[b],G);l[b]=W}else l=Z._wrapRouteHandler.call(Z,l,G);return I.apply(this,[l])}}_wrapRegisterHandler(I){let G=this,Z=(0,ov.getPluginName)(I),l=I.register,b=this,W=function(N,Y){return b._wrap(N,"route",(c)=>{return G._getServerRoutePatch.bind(G)(c,Z)}),b._wrap(N,"ext",(c)=>{return G._getServerExtPatch.bind(G)(c,Z)}),l.call(this,N,Y)};I.register=W}_wrapExtMethods(I,G,Z){let l=this;if(I instanceof Array){for(let b=0;b<I.length;b++)I[b]=l._wrapExtMethods(I[b],G);return I}else if((0,ov.isPatchableExtMethod)(I)){if(I[NS.handlerPatched]===!0)return I;return I[NS.handlerPatched]=!0,async function(...W){if(qR.trace.getSpan(qR.context.active())===void 0)return await I.apply(this,W);let N=(0,ov.getExtMetadata)(G,Z),Y=l.tracer.startSpan(N.name,{attributes:N.attributes});try{return await qR.context.with(qR.trace.setSpan(qR.context.active(),Y),I,void 0,...W)}catch(c){throw Y.recordException(c),Y.setStatus({code:qR.SpanStatusCode.ERROR,message:c.message}),c}finally{Y.end()}}}return I}_wrapRouteHandler(I,G){var Z;let l=this;if(I[NS.handlerPatched]===!0)return I;I[NS.handlerPatched]=!0;let b=(W)=>{return async function(...N){if(qR.trace.getSpan(qR.context.active())===void 0)return await W.call(this,...N);let Y=(0,sLG.getRPCMetadata)(qR.context.active());if((Y===null||Y===void 0?void 0:Y.type)===sLG.RPCType.HTTP)Y.route=I.path;let c=(0,ov.getRouteMetadata)(I,G),V=l.tracer.startSpan(c.name,{attributes:c.attributes});try{return await qR.context.with(qR.trace.setSpan(qR.context.active(),V),()=>W.call(this,...N))}catch(d){throw V.recordException(d),V.setStatus({code:qR.SpanStatusCode.ERROR,message:d.message}),d}finally{V.end()}}};if(typeof I.handler==="function")I.handler=b(I.handler);else if(typeof I.options==="function"){let W=I.options;I.options=function(N){let Y=W(N);if(typeof Y.handler==="function")Y.handler=b(Y.handler);return Y}}else if(typeof((Z=I.options)===null||Z===void 0?void 0:Z.handler)==="function")I.options.handler=b(I.options.handler);return I}}tLG.HapiInstrumentation=oLG});var GgG=w(($y)=>{var qGb=$y&&$y.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),IgG=$y&&$y.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))qGb(G,I,Z)};Object.defineProperty($y,"__esModule",{value:!0});IgG(eLG(),$y);IgG(mvI(),$y)});var ZgG,lgG="Hapi",bgG,TGb=()=>{return{name:lgG,setupOnce(){bgG()}}},WgG;var NgG=a(()=>{Qb();vc();ZgG=hI(GgG(),1),bgG=Rb(lgG,()=>new ZgG.HapiInstrumentation),WgG=Gl(TGb)});var YZI=w((YgG)=>{Object.defineProperty(YgG,"__esModule",{value:!0});YgG.KoaLayerType=void 0;var SGb;(function(I){I.ROUTER="router",I.MIDDLEWARE="middleware"})(SGb=YgG.KoaLayerType||(YgG.KoaLayerType={}))});var dgG=w((cgG)=>{Object.defineProperty(cgG,"__esModule",{value:!0});cgG.PACKAGE_NAME=cgG.PACKAGE_VERSION=void 0;cgG.PACKAGE_VERSION="0.47.1";cgG.PACKAGE_NAME="@opentelemetry/instrumentation-koa"});var RvI=w((mgG)=>{Object.defineProperty(mgG,"__esModule",{value:!0});mgG.AttributeNames=void 0;var PGb;(function(I){I.KOA_TYPE="koa.type",I.KOA_NAME="koa.name"})(PGb=mgG.AttributeNames||(mgG.AttributeNames={}))});var RgG=w((XgG)=>{Object.defineProperty(XgG,"__esModule",{value:!0});XgG.isLayerIgnored=XgG.getMiddlewareMetadata=void 0;var QgG=YZI(),cZI=RvI(),_Gb=Nc(),fGb=(I,G,Z,l)=>{var b;if(Z)return{attributes:{[cZI.AttributeNames.KOA_NAME]:l===null||l===void 0?void 0:l.toString(),[cZI.AttributeNames.KOA_TYPE]:QgG.KoaLayerType.ROUTER,[_Gb.SEMATTRS_HTTP_ROUTE]:l===null||l===void 0?void 0:l.toString()},name:I._matchedRouteName||`router - ${l}`};else return{attributes:{[cZI.AttributeNames.KOA_NAME]:(b=G.name)!==null&&b!==void 0?b:"middleware",[cZI.AttributeNames.KOA_TYPE]:QgG.KoaLayerType.MIDDLEWARE},name:`middleware - ${G.name}`}};XgG.getMiddlewareMetadata=fGb;var sGb=(I,G)=>{var Z;return!!(Array.isArray(G===null||G===void 0?void 0:G.ignoreLayersType)&&((Z=G===null||G===void 0?void 0:G.ignoreLayersType)===null||Z===void 0?void 0:Z.includes(I)))};XgG.isLayerIgnored=sGb});var wgG=w((HgG)=>{Object.defineProperty(HgG,"__esModule",{value:!0});HgG.kLayerPatched=void 0;HgG.kLayerPatched=Symbol("koa-layer-patched")});var LgG=w((ygG)=>{Object.defineProperty(ygG,"__esModule",{value:!0});ygG.KoaInstrumentation=void 0;var c4=bl(),YS=jN(),JgG=YZI(),AgG=dgG(),EgG=RgG(),vgG=lY(),CgG=wgG();class pgG extends YS.InstrumentationBase{constructor(I={}){super(AgG.PACKAGE_NAME,AgG.PACKAGE_VERSION,I)}init(){return new YS.InstrumentationNodeModuleDefinition("koa",[">=2.0.0 <3"],(I)=>{let G=I[Symbol.toStringTag]==="Module"?I.default:I;if(G==null)return G;if((0,YS.isWrapped)(G.prototype.use))this._unwrap(G.prototype,"use");return this._wrap(G.prototype,"use",this._getKoaUsePatch.bind(this)),I},(I)=>{let G=I[Symbol.toStringTag]==="Module"?I.default:I;if((0,YS.isWrapped)(G.prototype.use))this._unwrap(G.prototype,"use")})}_getKoaUsePatch(I){let G=this;return function(l){let b;if(l.router)b=G._patchRouterDispatch(l);else b=G._patchLayer(l,!1);return I.apply(this,[b])}}_patchRouterDispatch(I){var G;c4.diag.debug("Patching @koa/router dispatch");let Z=I.router,l=(G=Z===null||Z===void 0?void 0:Z.stack)!==null&&G!==void 0?G:[];for(let b of l){let{path:W,stack:N}=b;for(let Y=0;Y<N.length;Y++){let c=N[Y];N[Y]=this._patchLayer(c,!0,W)}}return I}_patchLayer(I,G,Z){let l=G?JgG.KoaLayerType.ROUTER:JgG.KoaLayerType.MIDDLEWARE;if(I[CgG.kLayerPatched]===!0||(0,EgG.isLayerIgnored)(l,this.getConfig()))return I;if(I.constructor.name==="GeneratorFunction"||I.constructor.name==="AsyncGeneratorFunction")return c4.diag.debug("ignoring generator-based Koa middleware layer"),I;return I[CgG.kLayerPatched]=!0,c4.diag.debug("patching Koa middleware layer"),async(b,W)=>{if(c4.trace.getSpan(c4.context.active())===void 0)return I(b,W);let Y=(0,EgG.getMiddlewareMetadata)(b,I,G,Z),c=this.tracer.startSpan(Y.name,{attributes:Y.attributes}),V=(0,vgG.getRPCMetadata)(c4.context.active());if((V===null||V===void 0?void 0:V.type)===vgG.RPCType.HTTP&&b._matchedRoute)V.route=b._matchedRoute.toString();let{requestHook:d}=this.getConfig();if(d)(0,YS.safeExecuteInTheMiddle)(()=>d(c,{context:b,middlewareLayer:I,layerType:l}),(X)=>{if(X)c4.diag.error("koa instrumentation: request hook failed",X)},!0);let Q=c4.trace.setSpan(c4.context.active(),c);return c4.context.with(Q,async()=>{try{return await I(b,W)}catch(X){throw c.recordException(X),X}finally{c.end()}})}}}ygG.KoaInstrumentation=pgG});var ggG=w((tv)=>{var oGb=tv&&tv.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),HvI=tv&&tv.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))oGb(G,I,Z)};Object.defineProperty(tv,"__esModule",{value:!0});HvI(LgG(),tv);HvI(YZI(),tv);HvI(RvI(),tv)});var agG,zgG,BgG="Koa",kgG,tGb=(I={})=>{return{name:BgG,setupOnce(){kgG(I)}}},UgG;var xgG=a(()=>{Qb();vc();qT();agG=hI(ggG(),1),zgG=hI(Nc(),1),kgG=Rb(BgG,agG.KoaInstrumentation,(I={})=>{return{ignoreLayersType:I.ignoreLayersType,requestHook(G,Z){IV(G,"auto.http.otel.koa");let l=Bb(G).data,b=l["koa.type"];if(b)G.setAttribute(JW,`${b}.koa`);let W=l["koa.name"];if(typeof W==="string")G.updateName(W||"< unknown >");if(nN()===Q5()){N4&&LG.warn("Isolation scope is default isolation scope - skipping setting transactionName");return}let N=l[zgG.ATTR_HTTP_ROUTE],Y=Z.context?.request?.method?.toUpperCase()||"GET";if(N)nN().setTransactionName(`${Y} ${N}`)}}}),UgG=Gl(tGb)});var wvI=w((KgG)=>{Object.defineProperty(KgG,"__esModule",{value:!0});KgG.ConnectNames=KgG.ConnectTypes=KgG.AttributeNames=void 0;var rGb;(function(I){I.CONNECT_TYPE="connect.type",I.CONNECT_NAME="connect.name"})(rGb=KgG.AttributeNames||(KgG.AttributeNames={}));var eGb;(function(I){I.MIDDLEWARE="middleware",I.REQUEST_HANDLER="request_handler"})(eGb=KgG.ConnectTypes||(KgG.ConnectTypes={}));var IZb;(function(I){I.MIDDLEWARE="middleware",I.REQUEST_HANDLER="request handler"})(IZb=KgG.ConnectNames||(KgG.ConnectNames={}))});var ngG=w((DgG)=>{Object.defineProperty(DgG,"__esModule",{value:!0});DgG.PACKAGE_NAME=DgG.PACKAGE_VERSION=void 0;DgG.PACKAGE_VERSION="0.43.1";DgG.PACKAGE_NAME="@opentelemetry/instrumentation-connect"});var SgG=w((qgG)=>{Object.defineProperty(qgG,"__esModule",{value:!0});qgG._LAYERS_STORE_PROPERTY=void 0;qgG._LAYERS_STORE_PROPERTY=Symbol("opentelemetry.instrumentation-connect.request-route-stack")});var _gG=w((igG)=>{Object.defineProperty(igG,"__esModule",{value:!0});igG.generateRoute=igG.replaceCurrentStackRoute=igG.addNewStackLayer=void 0;var ZZb=bl(),oy=SgG(),lZb=(I)=>{if(Array.isArray(I[oy._LAYERS_STORE_PROPERTY])===!1)Object.defineProperty(I,oy._LAYERS_STORE_PROPERTY,{enumerable:!1,value:[]});I[oy._LAYERS_STORE_PROPERTY].push("/");let G=I[oy._LAYERS_STORE_PROPERTY].length;return()=>{if(G===I[oy._LAYERS_STORE_PROPERTY].length)I[oy._LAYERS_STORE_PROPERTY].pop();else ZZb.diag.warn("Connect: Trying to pop the stack multiple time")}};igG.addNewStackLayer=lZb;var bZb=(I,G)=>{if(G)I[oy._LAYERS_STORE_PROPERTY].splice(-1,1,G)};igG.replaceCurrentStackRoute=bZb;var WZb=(I)=>{return I[oy._LAYERS_STORE_PROPERTY].reduce((G,Z)=>G.replace(/\/+$/,"")+Z)};igG.generateRoute=WZb});var rgG=w((ogG)=>{Object.defineProperty(ogG,"__esModule",{value:!0});ogG.ConnectInstrumentation=ogG.ANONYMOUS_NAME=void 0;var cZb=bl(),fgG=lY(),GM=wvI(),sgG=ngG(),VZI=jN(),VZb=Nc(),JvI=_gG();ogG.ANONYMOUS_NAME="anonymous";class $gG extends VZI.InstrumentationBase{constructor(I={}){super(sgG.PACKAGE_NAME,sgG.PACKAGE_VERSION,I)}init(){return[new VZI.InstrumentationNodeModuleDefinition("connect",[">=3.0.0 <4"],(I)=>{return this._patchConstructor(I)})]}_patchApp(I){if(!(0,VZI.isWrapped)(I.use))this._wrap(I,"use",this._patchUse.bind(this));if(!(0,VZI.isWrapped)(I.handle))this._wrap(I,"handle",this._patchHandle.bind(this))}_patchConstructor(I){let G=this;return function(...Z){let l=I.apply(this,Z);return G._patchApp(l),l}}_patchNext(I,G){return function(l){let b=I.apply(this,[l]);return G(),b}}_startSpan(I,G){let Z,l,b;if(I)Z=GM.ConnectTypes.REQUEST_HANDLER,b=GM.ConnectNames.REQUEST_HANDLER,l=I;else Z=GM.ConnectTypes.MIDDLEWARE,b=GM.ConnectNames.MIDDLEWARE,l=G.name||ogG.ANONYMOUS_NAME;let W=`${b} - ${l}`,N={attributes:{[VZb.SEMATTRS_HTTP_ROUTE]:I.length>0?I:"/",[GM.AttributeNames.CONNECT_TYPE]:Z,[GM.AttributeNames.CONNECT_NAME]:l}};return this.tracer.startSpan(W,N)}_patchMiddleware(I,G){let Z=this,l=G.length===4;function b(){if(!Z.isEnabled())return G.apply(this,arguments);let[W,N,Y]=l?[1,2,3]:[0,1,2],c=arguments[W],V=arguments[N],d=arguments[Y];(0,JvI.replaceCurrentStackRoute)(c,I);let Q=(0,fgG.getRPCMetadata)(cZb.context.active());if(I&&(Q===null||Q===void 0?void 0:Q.type)===fgG.RPCType.HTTP)Q.route=(0,JvI.generateRoute)(c);let X="";if(I)X=`request handler - ${I}`;else X=`middleware - ${G.name||ogG.ANONYMOUS_NAME}`;let R=Z._startSpan(I,G);Z._diag.debug("start span",X);let H=!1;function h(){if(!H)H=!0,Z._diag.debug(`finishing span ${R.name}`),R.end();else Z._diag.debug(`span ${R.name} - already finished`);V.removeListener("close",h)}return V.addListener("close",h),arguments[Y]=Z._patchNext(d,h),G.apply(this,arguments)}return Object.defineProperty(b,"length",{value:G.length,writable:!1,configurable:!0}),b}_patchUse(I){let G=this;return function(...Z){let l=Z[Z.length-1],b=Z[Z.length-2]||"";return Z[Z.length-1]=G._patchMiddleware(b,l),I.apply(this,Z)}}_patchHandle(I){let G=this;return function(){let[Z,l]=[0,2],b=arguments[Z],W=arguments[l],N=(0,JvI.addNewStackLayer)(b);if(typeof W==="function")arguments[l]=G._patchOut(W,N);return I.apply(this,arguments)}}_patchOut(I,G){return function(...l){return G(),Reflect.apply(I,this,l)}}}ogG.ConnectInstrumentation=$gG});var IaG=w((ty)=>{var dZb=ty&&ty.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),egG=ty&&ty.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))dZb(G,I,Z)};Object.defineProperty(ty,"__esModule",{value:!0});egG(wvI(),ty);egG(rgG(),ty)});var GaG,ZaG="Connect",laG,mZb=()=>{return{name:ZaG,setupOnce(){laG()}}},baG;var WaG=a(()=>{Qb();vc();GaG=hI(IaG(),1),laG=Rb(ZaG,()=>new GaG.ConnectInstrumentation),baG=Gl(mZb)});var caG=w((NaG)=>{Object.defineProperty(NaG,"__esModule",{value:!0});NaG.once=NaG.getSpanName=void 0;function QZb(I,G,Z,l){if(I==="execBulkLoad"&&l&&G)return`${I} ${l} ${G}`;if(I==="callProcedure"){if(G)return`${I} ${Z} ${G}`;return`${I} ${Z}`}if(G)return`${I} ${G}`;return`${I}`}NaG.getSpanName=QZb;var XZb=(I)=>{let G=!1;return(...Z)=>{if(G)return;return G=!0,I(...Z)}};NaG.once=XZb});var maG=w((VaG)=>{Object.defineProperty(VaG,"__esModule",{value:!0});VaG.PACKAGE_NAME=VaG.PACKAGE_VERSION=void 0;VaG.PACKAGE_VERSION="0.18.1";VaG.PACKAGE_NAME="@opentelemetry/instrumentation-tedious"});var waG=w((HaG)=>{Object.defineProperty(HaG,"__esModule",{value:!0});HaG.TediousInstrumentation=void 0;var cS=bl(),HZb=KI("events"),dZI=jN(),ry=Nc(),QaG=caG(),XaG=maG(),RaG=Symbol("opentelemetry.instrumentation-tedious.current-database"),FaG=["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"];function mZI(I){Object.defineProperty(this,RaG,{value:I,writable:!0})}class QZI extends dZI.InstrumentationBase{constructor(I={}){super(XaG.PACKAGE_NAME,XaG.PACKAGE_VERSION,I)}init(){return[new dZI.InstrumentationNodeModuleDefinition(QZI.COMPONENT,[">=1.11.0 <20"],(I)=>{let G=I.Connection.prototype;for(let Z of FaG){if((0,dZI.isWrapped)(G[Z]))this._unwrap(G,Z);this._wrap(G,Z,this._patchQuery(Z))}if((0,dZI.isWrapped)(G.connect))this._unwrap(G,"connect");return this._wrap(G,"connect",this._patchConnect),I},(I)=>{if(I===void 0)return;let G=I.Connection.prototype;for(let Z of FaG)this._unwrap(G,Z);this._unwrap(G,"connect")})]}_patchConnect(I){return function(){var Z,l;return mZI.call(this,(l=(Z=this.config)===null||Z===void 0?void 0:Z.options)===null||l===void 0?void 0:l.database),this.removeListener("databaseChange",mZI),this.on("databaseChange",mZI),this.once("end",()=>{this.removeListener("databaseChange",mZI)}),I.apply(this,arguments)}}_patchQuery(I){return(G)=>{let Z=this;function l(b){var W,N,Y,c,V,d,Q,X;if(!(b instanceof HZb.EventEmitter))return Z._diag.warn(`Unexpected invocation of patched ${I} method. Span not recorded`),G.apply(this,arguments);let R=0,H=0,h=()=>H++,A=()=>R++,C=this[RaG],g=((x)=>{var n,_;if(x.sqlTextOrProcedure==="sp_prepare"&&((_=(n=x.parametersByName)===null||n===void 0?void 0:n.stmt)===null||_===void 0?void 0:_.value))return x.parametersByName.stmt.value;return x.sqlTextOrProcedure})(b),z=Z.tracer.startSpan((0,QaG.getSpanName)(I,C,g,b.table),{kind:cS.SpanKind.CLIENT,attributes:{[ry.SEMATTRS_DB_SYSTEM]:ry.DBSYSTEMVALUES_MSSQL,[ry.SEMATTRS_DB_NAME]:C,[ry.SEMATTRS_NET_PEER_PORT]:(N=(W=this.config)===null||W===void 0?void 0:W.options)===null||N===void 0?void 0:N.port,[ry.SEMATTRS_NET_PEER_NAME]:(Y=this.config)===null||Y===void 0?void 0:Y.server,[ry.SEMATTRS_DB_USER]:(V=(c=this.config)===null||c===void 0?void 0:c.userName)!==null&&V!==void 0?V:(X=(Q=(d=this.config)===null||d===void 0?void 0:d.authentication)===null||Q===void 0?void 0:Q.options)===null||X===void 0?void 0:X.userName,[ry.SEMATTRS_DB_STATEMENT]:g,[ry.SEMATTRS_DB_SQL_TABLE]:b.table}}),k=(0,QaG.once)((x)=>{if(b.removeListener("done",h),b.removeListener("doneInProc",h),b.removeListener("doneProc",A),b.removeListener("error",k),this.removeListener("end",k),z.setAttribute("tedious.procedure_count",R),z.setAttribute("tedious.statement_count",H),x)z.setStatus({code:cS.SpanStatusCode.ERROR,message:x.message});z.end()});if(b.on("done",h),b.on("doneInProc",h),b.on("doneProc",A),b.once("error",k),this.on("end",k),typeof b.callback==="function")Z._wrap(b,"callback",Z._patchCallbackQuery(k));else Z._diag.error("Expected request.callback to be a function");return cS.context.with(cS.trace.setSpan(cS.context.active(),z),G,this,...arguments)}return Object.defineProperty(l,"length",{value:G.length,writable:!1}),l}}_patchCallbackQuery(I){return(G)=>{return function(Z,l,b){return I(Z),G.apply(this,arguments)}}}}HaG.TediousInstrumentation=QZI;QZI.COMPONENT="tedious"});var AaG=w((JaG)=>{Object.defineProperty(JaG,"__esModule",{value:!0})});var vaG=w((ey)=>{var hZb=ey&&ey.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),EaG=ey&&ey.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))hZb(G,I,Z)};Object.defineProperty(ey,"__esModule",{value:!0});EaG(waG(),ey);EaG(AaG(),ey)});var CaG,wZb,paG="Tedious",yaG,JZb=()=>{let I;return{name:paG,setupOnce(){let G=yaG();I=OT(G)},setup(G){I?.(()=>G.on("spanStart",(Z)=>{let{description:l,data:b}=Bb(Z);if(!l||b["db.system"]!=="mssql")return;let W=l.split(" ")[0]||"";if(wZb.has(W))Z.setAttribute(bY,"auto.db.otel.tedious")}))}}},uaG;var LaG=a(()=>{Qb();vc();CaG=hI(vaG(),1),wZb=new Set(["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"]),yaG=Rb(paG,()=>new CaG.TediousInstrumentation({})),uaG=Gl(JZb)});var zaG=w((gaG)=>{Object.defineProperty(gaG,"__esModule",{value:!0});gaG.PACKAGE_NAME=gaG.PACKAGE_VERSION=void 0;gaG.PACKAGE_VERSION="0.43.1";gaG.PACKAGE_NAME="@opentelemetry/instrumentation-generic-pool"});var OaG=w((UaG)=>{Object.defineProperty(UaG,"__esModule",{value:!0});UaG.GenericPoolInstrumentation=void 0;var ZM=bl(),Yz=jN(),BaG=zaG(),EvI="generic-pool";class kaG extends Yz.InstrumentationBase{constructor(I={}){super(BaG.PACKAGE_NAME,BaG.PACKAGE_VERSION,I);this._isDisabled=!1}init(){return[new Yz.InstrumentationNodeModuleDefinition(EvI,[">=3.0.0 <4"],(I)=>{let G=I.Pool;if((0,Yz.isWrapped)(G.prototype.acquire))this._unwrap(G.prototype,"acquire");return this._wrap(G.prototype,"acquire",this._acquirePatcher.bind(this)),I},(I)=>{let G=I.Pool;return this._unwrap(G.prototype,"acquire"),I}),new Yz.InstrumentationNodeModuleDefinition(EvI,[">=2.4.0 <3"],(I)=>{let G=I.Pool;if((0,Yz.isWrapped)(G.prototype.acquire))this._unwrap(G.prototype,"acquire");return this._wrap(G.prototype,"acquire",this._acquireWithCallbacksPatcher.bind(this)),I},(I)=>{let G=I.Pool;return this._unwrap(G.prototype,"acquire"),I}),new Yz.InstrumentationNodeModuleDefinition(EvI,[">=2.0.0 <2.4"],(I)=>{if(this._isDisabled=!1,(0,Yz.isWrapped)(I.Pool))this._unwrap(I,"Pool");return this._wrap(I,"Pool",this._poolWrapper.bind(this)),I},(I)=>{return this._isDisabled=!0,I})]}_acquirePatcher(I){let G=this;return function(...l){let b=ZM.context.active(),W=G.tracer.startSpan("generic-pool.acquire",{},b);return ZM.context.with(ZM.trace.setSpan(b,W),()=>{return I.call(this,...l).then((N)=>{return W.end(),N},(N)=>{throw W.recordException(N),W.end(),N})})}}_poolWrapper(I){let G=this;return function(){let l=I.apply(this,arguments);return G._wrap(l,"acquire",G._acquireWithCallbacksPatcher.bind(G)),l}}_acquireWithCallbacksPatcher(I){let G=this;return function(l,b){if(G._isDisabled)return I.call(this,l,b);let W=ZM.context.active(),N=G.tracer.startSpan("generic-pool.acquire",{},W);return ZM.context.with(ZM.trace.setSpan(W,N),()=>{I.call(this,(Y,c)=>{if(N.end(),l)return l(Y,c)},b)})}}}UaG.GenericPoolInstrumentation=kaG});var MaG=w((cz)=>{var EZb=cz&&cz.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),vZb=cz&&cz.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))EZb(G,I,Z)};Object.defineProperty(cz,"__esModule",{value:!0});vZb(OaG(),cz)});var KaG,DaG="GenericPool",jaG,CZb=()=>{let I;return{name:DaG,setupOnce(){let G=jaG();I=OT(G)},setup(G){I?.(()=>G.on("spanStart",(Z)=>{let b=Bb(Z).description;if(b==="generic-pool.aquire"||b==="generic-pool.acquire")Z.setAttribute(bY,"auto.db.otel.generic_pool")}))}}},naG;var qaG=a(()=>{Qb();vc();KaG=hI(MaG(),1),jaG=Rb(DaG,()=>new KaG.GenericPoolInstrumentation({})),naG=Gl(CZb)});var vvI=w((SaG)=>{Object.defineProperty(SaG,"__esModule",{value:!0});SaG.DEFAULT_CONFIG=SaG.EndOperation=void 0;var pZb;(function(I){I.AutoAck="auto ack",I.Ack="ack",I.AckAll="ackAll",I.Reject="reject",I.Nack="nack",I.NackAll="nackAll",I.ChannelClosed="channel closed",I.ChannelError="channel error",I.InstrumentationTimeout="instrumentation timeout"})(pZb=SaG.EndOperation||(SaG.EndOperation={}));SaG.DEFAULT_CONFIG={consumeTimeoutMs:60000,useLinksForConsume:!1}});var oaG=w((saG)=>{Object.defineProperty(saG,"__esModule",{value:!0});saG.isConfirmChannelTracing=saG.unmarkConfirmChannelTracing=saG.markConfirmChannelTracing=saG.getConnectionAttributesFromUrl=saG.getConnectionAttributesFromServer=saG.normalizeExchange=saG.CONNECTION_ATTRIBUTES=saG.CHANNEL_CONSUME_TIMEOUT_TIMER=saG.CHANNEL_SPANS_NOT_ENDED=saG.MESSAGE_STORED_SPAN=void 0;var CvI=bl(),rv=Nc();saG.MESSAGE_STORED_SPAN=Symbol("opentelemetry.amqplib.message.stored-span");saG.CHANNEL_SPANS_NOT_ENDED=Symbol("opentelemetry.amqplib.channel.spans-not-ended");saG.CHANNEL_CONSUME_TIMEOUT_TIMER=Symbol("opentelemetry.amqplib.channel.consumer-timeout-timer");saG.CONNECTION_ATTRIBUTES=Symbol("opentelemetry.amqplib.connection.attributes");var pvI=(0,CvI.createContextKey)("opentelemetry.amqplib.channel.is-confirm-channel"),yZb=(I)=>I!==""?I:"<default>";saG.normalizeExchange=yZb;var uZb=(I)=>{return I.replace(/:[^:@/]*@/,":***@")},PaG=(I,G)=>{return I||(G==="AMQP"?5672:5671)},_aG=(I)=>{let G=I||"amqp";return(G.endsWith(":")?G.substring(0,G.length-1):G).toUpperCase()},faG=(I)=>{return I||"localhost"},lM=(I,G,Z,l)=>{if(Z)return{[G]:Z};else return CvI.diag.error(`amqplib instrumentation: could not extract connection attribute ${l} from user supplied url`,{url:I}),{}},LZb=(I)=>{var G,Z;let l=(Z=(G=I.serverProperties.product)===null||G===void 0?void 0:G.toLowerCase)===null||Z===void 0?void 0:Z.call(G);if(l)return{[rv.SEMATTRS_MESSAGING_SYSTEM]:l};else return{}};saG.getConnectionAttributesFromServer=LZb;var gZb=(I)=>{let G={[rv.SEMATTRS_MESSAGING_PROTOCOL_VERSION]:"0.9.1"};if(I=I||"amqp://localhost",typeof I==="object"){let Z=I,l=_aG(Z===null||Z===void 0?void 0:Z.protocol);Object.assign(G,Object.assign({},lM(I,rv.SEMATTRS_MESSAGING_PROTOCOL,l,"protocol")));let b=faG(Z===null||Z===void 0?void 0:Z.hostname);Object.assign(G,Object.assign({},lM(I,rv.SEMATTRS_NET_PEER_NAME,b,"hostname")));let W=PaG(Z.port,l);Object.assign(G,Object.assign({},lM(I,rv.SEMATTRS_NET_PEER_PORT,W,"port")))}else{let Z=uZb(I);G[rv.SEMATTRS_MESSAGING_URL]=Z;try{let l=new URL(Z),b=_aG(l.protocol);Object.assign(G,Object.assign({},lM(Z,rv.SEMATTRS_MESSAGING_PROTOCOL,b,"protocol")));let W=faG(l.hostname);Object.assign(G,Object.assign({},lM(Z,rv.SEMATTRS_NET_PEER_NAME,W,"hostname")));let N=PaG(l.port?parseInt(l.port):void 0,b);Object.assign(G,Object.assign({},lM(Z,rv.SEMATTRS_NET_PEER_PORT,N,"port")))}catch(l){CvI.diag.error("amqplib instrumentation: error while extracting connection details from connection url",{censoredUrl:Z,err:l})}}return G};saG.getConnectionAttributesFromUrl=gZb;var aZb=(I)=>{return I.setValue(pvI,!0)};saG.markConfirmChannelTracing=aZb;var zZb=(I)=>{return I.deleteValue(pvI)};saG.unmarkConfirmChannelTracing=zZb;var BZb=(I)=>{return I.getValue(pvI)===!0};saG.isConfirmChannelTracing=BZb});var eaG=w((taG)=>{Object.defineProperty(taG,"__esModule",{value:!0});taG.PACKAGE_NAME=taG.PACKAGE_VERSION=void 0;taG.PACKAGE_VERSION="0.46.1";taG.PACKAGE_NAME="@opentelemetry/instrumentation-amqplib"});var bzG=w((ZzG)=>{Object.defineProperty(ZzG,"__esModule",{value:!0});ZzG.AmqplibInstrumentation=void 0;var eV=bl(),XZI=lY(),gY=jN(),y1=Nc(),NF=vvI(),g2=oaG(),IzG=eaG(),FZI=[">=0.5.5 <1"];class GzG extends gY.InstrumentationBase{constructor(I={}){super(IzG.PACKAGE_NAME,IzG.PACKAGE_VERSION,Object.assign(Object.assign({},NF.DEFAULT_CONFIG),I))}setConfig(I={}){super.setConfig(Object.assign(Object.assign({},NF.DEFAULT_CONFIG),I))}init(){let I=new gY.InstrumentationNodeModuleFile("amqplib/lib/channel_model.js",FZI,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),G=new gY.InstrumentationNodeModuleFile("amqplib/lib/callback_model.js",FZI,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),Z=new gY.InstrumentationNodeModuleFile("amqplib/lib/connect.js",FZI,this.patchConnect.bind(this),this.unpatchConnect.bind(this));return new gY.InstrumentationNodeModuleDefinition("amqplib",FZI,void 0,void 0,[I,Z,G])}patchConnect(I){if(I=this.unpatchConnect(I),!(0,gY.isWrapped)(I.connect))this._wrap(I,"connect",this.getConnectPatch.bind(this));return I}unpatchConnect(I){if((0,gY.isWrapped)(I.connect))this._unwrap(I,"connect");return I}patchChannelModel(I,G){if(!(0,gY.isWrapped)(I.Channel.prototype.publish))this._wrap(I.Channel.prototype,"publish",this.getPublishPatch.bind(this,G));if(!(0,gY.isWrapped)(I.Channel.prototype.consume))this._wrap(I.Channel.prototype,"consume",this.getConsumePatch.bind(this,G));if(!(0,gY.isWrapped)(I.Channel.prototype.ack))this._wrap(I.Channel.prototype,"ack",this.getAckPatch.bind(this,!1,NF.EndOperation.Ack));if(!(0,gY.isWrapped)(I.Channel.prototype.nack))this._wrap(I.Channel.prototype,"nack",this.getAckPatch.bind(this,!0,NF.EndOperation.Nack));if(!(0,gY.isWrapped)(I.Channel.prototype.reject))this._wrap(I.Channel.prototype,"reject",this.getAckPatch.bind(this,!0,NF.EndOperation.Reject));if(!(0,gY.isWrapped)(I.Channel.prototype.ackAll))this._wrap(I.Channel.prototype,"ackAll",this.getAckAllPatch.bind(this,!1,NF.EndOperation.AckAll));if(!(0,gY.isWrapped)(I.Channel.prototype.nackAll))this._wrap(I.Channel.prototype,"nackAll",this.getAckAllPatch.bind(this,!0,NF.EndOperation.NackAll));if(!(0,gY.isWrapped)(I.Channel.prototype.emit))this._wrap(I.Channel.prototype,"emit",this.getChannelEmitPatch.bind(this));if(!(0,gY.isWrapped)(I.ConfirmChannel.prototype.publish))this._wrap(I.ConfirmChannel.prototype,"publish",this.getConfirmedPublishPatch.bind(this,G));return I}unpatchChannelModel(I){if((0,gY.isWrapped)(I.Channel.prototype.publish))this._unwrap(I.Channel.prototype,"publish");if((0,gY.isWrapped)(I.Channel.prototype.consume))this._unwrap(I.Channel.prototype,"consume");if((0,gY.isWrapped)(I.Channel.prototype.ack))this._unwrap(I.Channel.prototype,"ack");if((0,gY.isWrapped)(I.Channel.prototype.nack))this._unwrap(I.Channel.prototype,"nack");if((0,gY.isWrapped)(I.Channel.prototype.reject))this._unwrap(I.Channel.prototype,"reject");if((0,gY.isWrapped)(I.Channel.prototype.ackAll))this._unwrap(I.Channel.prototype,"ackAll");if((0,gY.isWrapped)(I.Channel.prototype.nackAll))this._unwrap(I.Channel.prototype,"nackAll");if((0,gY.isWrapped)(I.Channel.prototype.emit))this._unwrap(I.Channel.prototype,"emit");if((0,gY.isWrapped)(I.ConfirmChannel.prototype.publish))this._unwrap(I.ConfirmChannel.prototype,"publish");return I}getConnectPatch(I){return function(Z,l,b){return I.call(this,Z,l,function(W,N){if(W==null){let Y=(0,g2.getConnectionAttributesFromUrl)(Z),c=(0,g2.getConnectionAttributesFromServer)(N);N[g2.CONNECTION_ATTRIBUTES]=Object.assign(Object.assign({},Y),c)}b.apply(this,arguments)})}}getChannelEmitPatch(I){let G=this;return function(l){if(l==="close"){G.endAllSpansOnChannel(this,!0,NF.EndOperation.ChannelClosed,void 0);let b=this[g2.CHANNEL_CONSUME_TIMEOUT_TIMER];if(b)clearInterval(b);this[g2.CHANNEL_CONSUME_TIMEOUT_TIMER]=void 0}else if(l==="error")G.endAllSpansOnChannel(this,!0,NF.EndOperation.ChannelError,void 0);return I.apply(this,arguments)}}getAckAllPatch(I,G,Z){let l=this;return function(W){return l.endAllSpansOnChannel(this,I,G,W),Z.apply(this,arguments)}}getAckPatch(I,G,Z){let l=this;return function(W,N,Y){var c;let V=this,d=G===NF.EndOperation.Reject?N:Y,Q=(c=V[g2.CHANNEL_SPANS_NOT_ENDED])!==null&&c!==void 0?c:[],X=Q.findIndex((R)=>R.msg===W);if(X<0)l.endConsumerSpan(W,I,G,d);else if(G!==NF.EndOperation.Reject&&N){for(let R=0;R<=X;R++)l.endConsumerSpan(Q[R].msg,I,G,d);Q.splice(0,X+1)}else l.endConsumerSpan(W,I,G,d),Q.splice(X,1);return Z.apply(this,arguments)}}getConsumePatch(I,G){let Z=this;return function(b,W,N){let Y=this;if(!Object.prototype.hasOwnProperty.call(Y,g2.CHANNEL_SPANS_NOT_ENDED)){let{consumeTimeoutMs:V}=Z.getConfig();if(V){let d=setInterval(()=>{Z.checkConsumeTimeoutOnChannel(Y)},V);d.unref(),Y[g2.CHANNEL_CONSUME_TIMEOUT_TIMER]=d}Y[g2.CHANNEL_SPANS_NOT_ENDED]=[]}let c=function(V){var d,Q,X,R,H;if(!V)return W.call(this,V);let h=(d=V.properties.headers)!==null&&d!==void 0?d:{},A=eV.propagation.extract(eV.ROOT_CONTEXT,h),C=(Q=V.fields)===null||Q===void 0?void 0:Q.exchange,g;if(Z._config.useLinksForConsume){let n=A?(X=eV.trace.getSpan(A))===null||X===void 0?void 0:X.spanContext():void 0;if(A=void 0,n)g=[{context:n}]}let z=Z.tracer.startSpan(`${b} process`,{kind:eV.SpanKind.CONSUMER,attributes:Object.assign(Object.assign({},(R=Y===null||Y===void 0?void 0:Y.connection)===null||R===void 0?void 0:R[g2.CONNECTION_ATTRIBUTES]),{[y1.SEMATTRS_MESSAGING_DESTINATION]:C,[y1.SEMATTRS_MESSAGING_DESTINATION_KIND]:y1.MESSAGINGDESTINATIONKINDVALUES_TOPIC,[y1.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]:(H=V.fields)===null||H===void 0?void 0:H.routingKey,[y1.SEMATTRS_MESSAGING_OPERATION]:y1.MESSAGINGOPERATIONVALUES_PROCESS,[y1.SEMATTRS_MESSAGING_MESSAGE_ID]:V===null||V===void 0?void 0:V.properties.messageId,[y1.SEMATTRS_MESSAGING_CONVERSATION_ID]:V===null||V===void 0?void 0:V.properties.correlationId}),links:g},A),{consumeHook:k}=Z.getConfig();if(k)(0,gY.safeExecuteInTheMiddle)(()=>k(z,{moduleVersion:I,msg:V}),(n)=>{if(n)eV.diag.error("amqplib instrumentation: consumerHook error",n)},!0);if(!(N===null||N===void 0?void 0:N.noAck))Y[g2.CHANNEL_SPANS_NOT_ENDED].push({msg:V,timeOfConsume:(0,XZI.hrTime)()}),V[g2.MESSAGE_STORED_SPAN]=z;let x=A?A:eV.ROOT_CONTEXT;if(eV.context.with(eV.trace.setSpan(x,z),()=>{W.call(this,V)}),N===null||N===void 0?void 0:N.noAck)Z.callConsumeEndHook(z,V,!1,NF.EndOperation.AutoAck),z.end()};return arguments[1]=c,G.apply(this,arguments)}}getConfirmedPublishPatch(I,G){let Z=this;return function(b,W,N,Y,c){let V=this,{span:d,modifiedOptions:Q}=Z.createPublishSpan(Z,b,W,V,Y),{publishHook:X}=Z.getConfig();if(X)(0,gY.safeExecuteInTheMiddle)(()=>X(d,{moduleVersion:I,exchange:b,routingKey:W,content:N,options:Q,isConfirmChannel:!0}),(A)=>{if(A)eV.diag.error("amqplib instrumentation: publishHook error",A)},!0);let R=function(A,C){try{c===null||c===void 0||c.call(this,A,C)}finally{let{publishConfirmHook:g}=Z.getConfig();if(g)(0,gY.safeExecuteInTheMiddle)(()=>g(d,{moduleVersion:I,exchange:b,routingKey:W,content:N,options:Y,isConfirmChannel:!0,confirmError:A}),(z)=>{if(z)eV.diag.error("amqplib instrumentation: publishConfirmHook error",z)},!0);if(A)d.setStatus({code:eV.SpanStatusCode.ERROR,message:"message confirmation has been nack'ed"});d.end()}},H=(0,g2.markConfirmChannelTracing)(eV.context.active()),h=[...arguments];return h[3]=Q,h[4]=eV.context.bind((0,g2.unmarkConfirmChannelTracing)(eV.trace.setSpan(H,d)),R),eV.context.with(H,G.bind(this,...h))}}getPublishPatch(I,G){let Z=this;return function(b,W,N,Y){if((0,g2.isConfirmChannelTracing)(eV.context.active()))return G.apply(this,arguments);else{let c=this,{span:V,modifiedOptions:d}=Z.createPublishSpan(Z,b,W,c,Y),{publishHook:Q}=Z.getConfig();if(Q)(0,gY.safeExecuteInTheMiddle)(()=>Q(V,{moduleVersion:I,exchange:b,routingKey:W,content:N,options:d,isConfirmChannel:!1}),(H)=>{if(H)eV.diag.error("amqplib instrumentation: publishHook error",H)},!0);let X=[...arguments];X[3]=d;let R=G.apply(this,X);return V.end(),R}}}createPublishSpan(I,G,Z,l,b){var W;let N=(0,g2.normalizeExchange)(G),Y=I.tracer.startSpan(`publish ${N}`,{kind:eV.SpanKind.PRODUCER,attributes:Object.assign(Object.assign({},l.connection[g2.CONNECTION_ATTRIBUTES]),{[y1.SEMATTRS_MESSAGING_DESTINATION]:G,[y1.SEMATTRS_MESSAGING_DESTINATION_KIND]:y1.MESSAGINGDESTINATIONKINDVALUES_TOPIC,[y1.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]:Z,[y1.SEMATTRS_MESSAGING_MESSAGE_ID]:b===null||b===void 0?void 0:b.messageId,[y1.SEMATTRS_MESSAGING_CONVERSATION_ID]:b===null||b===void 0?void 0:b.correlationId})}),c=b!==null&&b!==void 0?b:{};return c.headers=(W=c.headers)!==null&&W!==void 0?W:{},eV.propagation.inject(eV.trace.setSpan(eV.context.active(),Y),c.headers),{span:Y,modifiedOptions:c}}endConsumerSpan(I,G,Z,l){let b=I[g2.MESSAGE_STORED_SPAN];if(!b)return;if(G!==!1)b.setStatus({code:eV.SpanStatusCode.ERROR,message:Z!==NF.EndOperation.ChannelClosed&&Z!==NF.EndOperation.ChannelError?`${Z} called on message${l===!0?" with requeue":l===!1?" without requeue":""}`:Z});this.callConsumeEndHook(b,I,G,Z),b.end(),I[g2.MESSAGE_STORED_SPAN]=void 0}endAllSpansOnChannel(I,G,Z,l){var b;((b=I[g2.CHANNEL_SPANS_NOT_ENDED])!==null&&b!==void 0?b:[]).forEach((N)=>{this.endConsumerSpan(N.msg,G,Z,l)}),I[g2.CHANNEL_SPANS_NOT_ENDED]=[]}callConsumeEndHook(I,G,Z,l){let{consumeEndHook:b}=this.getConfig();if(!b)return;(0,gY.safeExecuteInTheMiddle)(()=>b(I,{msg:G,rejected:Z,endOperation:l}),(W)=>{if(W)eV.diag.error("amqplib instrumentation: consumerEndHook error",W)},!0)}checkConsumeTimeoutOnChannel(I){var G;let Z=(0,XZI.hrTime)(),l=(G=I[g2.CHANNEL_SPANS_NOT_ENDED])!==null&&G!==void 0?G:[],b,{consumeTimeoutMs:W}=this.getConfig();for(b=0;b<l.length;b++){let N=l[b],Y=(0,XZI.hrTimeDuration)(N.timeOfConsume,Z);if((0,XZI.hrTimeToMilliseconds)(Y)<W)break;this.endConsumerSpan(N.msg,null,NF.EndOperation.InstrumentationTimeout,!0)}l.splice(0,b)}}ZzG.AmqplibInstrumentation=GzG});var NzG=w((Iu)=>{var TZb=Iu&&Iu.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;Object.defineProperty(I,l,{enumerable:!0,get:function(){return G[Z]}})}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),WzG=Iu&&Iu.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))TZb(G,I,Z)};Object.defineProperty(Iu,"__esModule",{value:!0});WzG(bzG(),Iu);WzG(vvI(),Iu)});var YzG,czG="Amqplib",SZb,VzG,iZb=()=>{return{name:czG,setupOnce(){VzG()}}},dzG;var mzG=a(()=>{Qb();vc();YzG=hI(NzG(),1),SZb={consumeEndHook:(I)=>{IV(I,"auto.amqplib.otel.consumer")},publishHook:(I)=>{IV(I,"auto.amqplib.otel.publisher")}},VzG=Rb(czG,()=>new YzG.AmqplibInstrumentation(SZb)),dzG=Gl(iZb)});var VS="VercelAI";var yvI=()=>{};function PZb(I,G,Z,l){let b=I?.recordInputs!==void 0?I.recordInputs:G.recordInputs!==void 0?G.recordInputs:Z===!0?!0:l,W=I?.recordOutputs!==void 0?I.recordOutputs:G.recordOutputs!==void 0?G.recordOutputs:Z===!0?!0:l;return{recordInputs:b,recordOutputs:W}}var RZI,QzG,dS;var XzG=a(()=>{Qb();yvI();RZI=hI(jN(),1),QzG=["generateText","streamText","generateObject","streamObject","embed","embedMany"];dS=class dS extends RZI.InstrumentationBase{__init(){this._isPatched=!1}__init2(){this._callbacks=[]}constructor(I={}){super("@sentry/instrumentation-vercel-ai",Wc,I);dS.prototype.__init.call(this),dS.prototype.__init2.call(this)}init(){return new RZI.InstrumentationNodeModuleDefinition("ai",[">=3.0.0 <5"],this._patch.bind(this))}callWhenPatched(I){if(this._isPatched)I();else this._callbacks.push(I)}_patch(I){this._isPatched=!0,this._callbacks.forEach((Z)=>Z()),this._callbacks=[];function G(Z){return(...l)=>{let b=l[0].experimental_telemetry||{},W=b.isEnabled,N=$W().getClient(),Y=N?.getIntegrationByName(VS),c=Y?.options,V=Y?Boolean(N?.getOptions().sendDefaultPii):!1,{recordInputs:d,recordOutputs:Q}=PZb(c,b,W,V);return l[0].experimental_telemetry={...b,isEnabled:W!==void 0?W:!0,recordInputs:d,recordOutputs:Q},kv(()=>{return Z.apply(this,l)},(X)=>{if(X&&typeof X==="object")nd(X,"_sentry_active_span",I4())})}}if(Object.prototype.toString.call(I)==="[object Module]"){for(let Z of QzG)I[Z]=G(I[Z]);return I}else{let Z=QzG.reduce((l,b)=>{return l[b]=G(I[b]),l},{});return{...I,...Z}}}}});function _Zb(I){return!!I.getIntegrationByName("Modules")?.getModules?.()?.ai}var FzG,fZb=(I={})=>{let G;return{name:VS,options:I,setupOnce(){G=FzG()},afterAllSetup(Z){if(I.force??_Zb(Z))WGI(Z);else G?.callWhenPatched(()=>WGI(Z))}}},RzG;var HzG=a(()=>{Qb();vc();yvI();XzG();FzG=Rb(VS,()=>new dS({}));RzG=Gl(fZb)});function $Zb(I,G){let Z=I?.recordInputs??G,l=I?.recordOutputs??G;return{recordInputs:Z,recordOutputs:l}}var HZI,sZb,uvI;var hzG=a(()=>{Qb();HZI=hI(jN(),1),sZb=[">=4.0.0 <6"];uvI=class uvI extends HZI.InstrumentationBase{constructor(I={}){super("@sentry/instrumentation-openai",Wc,I)}init(){return new HZI.InstrumentationNodeModuleDefinition("openai",sZb,this._patch.bind(this))}_patch(I){let G=I.OpenAI,Z=function(...l){let b=Reflect.construct(G,l),W=$W().getClient(),Y=W?.getIntegrationByName(vy)?.options,c=Boolean(W?.getOptions().sendDefaultPii),{recordInputs:V,recordOutputs:d}=$Zb(Y,c);return aAI(b,{recordInputs:V,recordOutputs:d})};Object.setPrototypeOf(Z,G),Object.setPrototypeOf(Z.prototype,G.prototype);for(let l of Object.getOwnPropertyNames(G))if(!["length","name","prototype"].includes(l)){let b=Object.getOwnPropertyDescriptor(G,l);if(b)Object.defineProperty(Z,l,b)}try{I.OpenAI=Z}catch(l){Object.defineProperty(I,"OpenAI",{value:Z,writable:!0,configurable:!0,enumerable:!0})}if(I.default===G)try{I.default=Z}catch(l){Object.defineProperty(I,"default",{value:Z,writable:!0,configurable:!0,enumerable:!0})}return I}}});var wzG,oZb=(I={})=>{return{name:vy,options:I,setupOnce(){wzG()}}},JzG;var AzG=a(()=>{Qb();vc();hzG();wzG=Rb(vy,()=>new uvI({})),JzG=Gl(oZb)});function EzG(){return[MCG(),k3G(),CpG(),uyG(),tyG(),JuG(),SuG(),K9G(),JLG(),KLG(),WgG(),UgG(),baG(),uaG(),naG(),PpG(),dzG(),YyG(),RzG(),JzG(),pLG()]}var vzG=a(()=>{mzG();WaG();KCG();O3G();qaG();ypG();NgG();_pG();xgG();cyG();LyG();ryG();AuG();iuG();AzG();ALG();yLG();DLG();D9G();LaG();HzG()});function yzG(I,G={}){if(I.getOptions().debug)o4I();let Z=rZb(I,G);I.traceProvider=Z}function rZb(I,G={}){let Z=new pzG.BasicTracerProvider({sampler:new C4I(I),resource:new CzG.Resource({[WM.ATTR_SERVICE_NAME]:"node",[WM.SEMRESATTRS_SERVICE_NAMESPACE]:"sentry",[WM.ATTR_SERVICE_VERSION]:Wc}),forceFlushTimeoutMillis:500,spanProcessors:[new v4I({timeout:eZb(I.getOptions().maxSpanWaitDuration)}),...G.spanProcessors||[]]});return bM.trace.setGlobalTracerProvider(Z),bM.propagation.setGlobalPropagator(new h4I),bM.context.setGlobalContextManager(new aGI),Z}function eZb(I){if(I==null)return;if(I>LvI)return N4&&LG.warn(`\`maxSpanWaitDuration\` is too high, using the maximum value of ${LvI}`),LvI;else if(I<=0||Number.isNaN(I)){N4&&LG.warn("`maxSpanWaitDuration` must be a positive number, using default value instead.");return}return I}var bM,CzG,pzG,WM,tZb,LvI=1e6;var uzG=a(()=>{Qb();vc();yy();qT();bM=hI(bl(),1),CzG=hI(G4I(),1),pzG=hI(b4I(),1),WM=hI(Nc(),1),tZb=hI(bII(),1)});function LzG(){return OGI().filter((G)=>G.name!=="Http"&&G.name!=="NodeFetch").concat(KT(),rvG())}function gzG(I){return[...LzG(),...e0(I)?EzG():[]]}function gvI(I={}){return Ilb(I,gzG)}function Ilb(I={},G){ia(I,"node");let Z=WEI({...I,defaultIntegrations:I.defaultIntegrations??G(I)});if(Z&&!I.skipOpenTelemetrySetup)yzG(Z,{spanProcessors:I.openTelemetrySpanProcessors}),MGI();return Z}var azG=a(()=>{Qb();vc();YEI();evG();vzG();uzG()});var avI=a(()=>{YEI();azG();Qb();vc()});function Zlb(){this.__data__=[],this.size=0}var zzG;var BzG=a(()=>{zzG=Zlb});function llb(I,G){return I===G||I!==I&&G!==G}var NM;var hZI=a(()=>{NM=llb});function blb(I,G){var Z=I.length;while(Z--)if(NM(I[Z][0],G))return Z;return-1}var Gu;var mS=a(()=>{hZI();Gu=blb});function Ylb(I){var G=this.__data__,Z=Gu(G,I);if(Z<0)return!1;var l=G.length-1;if(Z==l)G.pop();else Nlb.call(G,Z,1);return--this.size,!0}var Wlb,Nlb,kzG;var UzG=a(()=>{mS();Wlb=Array.prototype,Nlb=Wlb.splice;kzG=Ylb});function clb(I){var G=this.__data__,Z=Gu(G,I);return Z<0?void 0:G[Z][1]}var xzG;var OzG=a(()=>{mS();xzG=clb});function Vlb(I){return Gu(this.__data__,I)>-1}var MzG;var KzG=a(()=>{mS();MzG=Vlb});function dlb(I,G){var Z=this.__data__,l=Gu(Z,I);if(l<0)++this.size,Z.push([I,G]);else Z[l][1]=G;return this}var DzG;var jzG=a(()=>{mS();DzG=dlb});function YM(I){var G=-1,Z=I==null?0:I.length;this.clear();while(++G<Z){var l=I[G];this.set(l[0],l[1])}}var Zu;var QS=a(()=>{BzG();UzG();OzG();KzG();jzG();YM.prototype.clear=zzG;YM.prototype.delete=kzG;YM.prototype.get=xzG;YM.prototype.has=MzG;YM.prototype.set=DzG;Zu=YM});function mlb(){this.__data__=new Zu,this.size=0}var nzG;var qzG=a(()=>{QS();nzG=mlb});function Qlb(I){var G=this.__data__,Z=G.delete(I);return this.size=G.size,Z}var TzG;var SzG=a(()=>{TzG=Qlb});function Xlb(I){return this.__data__.get(I)}var izG;var PzG=a(()=>{izG=Xlb});function Flb(I){return this.__data__.has(I)}var _zG;var fzG=a(()=>{_zG=Flb});var Rlb,wZI;var zvI=a(()=>{Rlb=typeof global=="object"&&global&&global.Object===Object&&global,wZI=Rlb});var Hlb,hlb,Sd;var y5=a(()=>{zvI();Hlb=typeof self=="object"&&self&&self.Object===Object&&self,hlb=wZI||Hlb||Function("return this")(),Sd=hlb});var wlb,lm;var Vz=a(()=>{y5();wlb=Sd.Symbol,lm=wlb});function Elb(I){var G=Jlb.call(I,XS),Z=I[XS];try{I[XS]=void 0;var l=!0}catch(W){}var b=Alb.call(I);if(l)if(G)I[XS]=Z;else delete I[XS];return b}var szG,Jlb,Alb,XS,$zG;var ozG=a(()=>{Vz();szG=Object.prototype,Jlb=szG.hasOwnProperty,Alb=szG.toString,XS=lm?lm.toStringTag:void 0;$zG=Elb});function plb(I){return Clb.call(I)}var vlb,Clb,tzG;var rzG=a(()=>{vlb=Object.prototype,Clb=vlb.toString;tzG=plb});function Llb(I){if(I==null)return I===void 0?ulb:ylb;return ezG&&ezG in Object(I)?$zG(I):tzG(I)}var ylb="[object Null]",ulb="[object Undefined]",ezG,TR;var dz=a(()=>{Vz();ozG();rzG();ezG=lm?lm.toStringTag:void 0;TR=Llb});function glb(I){var G=typeof I;return I!=null&&(G=="object"||G=="function")}var YF;var lu=a(()=>{YF=glb});function Ulb(I){if(!YF(I))return!1;var G=TR(I);return G==zlb||G==Blb||G==alb||G==klb}var alb="[object AsyncFunction]",zlb="[object Function]",Blb="[object GeneratorFunction]",klb="[object Proxy]",JZI;var BvI=a(()=>{dz();lu();JZI=Ulb});var xlb,AZI;var IBG=a(()=>{y5();xlb=Sd["__core-js_shared__"],AZI=xlb});function Olb(I){return!!GBG&&GBG in I}var GBG,ZBG;var lBG=a(()=>{IBG();GBG=function(){var I=/[^.]+$/.exec(AZI&&AZI.keys&&AZI.keys.IE_PROTO||"");return I?"Symbol(src)_1."+I:""}();ZBG=Olb});function Dlb(I){if(I!=null){try{return Klb.call(I)}catch(G){}try{return I+""}catch(G){}}return""}var Mlb,Klb,ev;var kvI=a(()=>{Mlb=Function.prototype,Klb=Mlb.toString;ev=Dlb});function _lb(I){if(!YF(I)||ZBG(I))return!1;var G=JZI(I)?Plb:nlb;return G.test(ev(I))}var jlb,nlb,qlb,Tlb,Slb,ilb,Plb,bBG;var WBG=a(()=>{BvI();lBG();lu();kvI();jlb=/[\\^$.*+?()[\]{}|]/g,nlb=/^\[object .+?Constructor\]$/,qlb=Function.prototype,Tlb=Object.prototype,Slb=qlb.toString,ilb=Tlb.hasOwnProperty,Plb=RegExp("^"+Slb.call(ilb).replace(jlb,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");bBG=_lb});function flb(I,G){return I==null?void 0:I[G]}var NBG;var YBG=a(()=>{NBG=flb});function slb(I,G){var Z=NBG(I,G);return bBG(Z)?Z:void 0}var u1;var bu=a(()=>{WBG();YBG();u1=slb});var $lb,Wu;var EZI=a(()=>{bu();y5();$lb=u1(Sd,"Map"),Wu=$lb});var olb,IC;var FS=a(()=>{bu();olb=u1(Object,"create"),IC=olb});function tlb(){this.__data__=IC?IC(null):{},this.size=0}var cBG;var VBG=a(()=>{FS();cBG=tlb});function rlb(I){var G=this.has(I)&&delete this.__data__[I];return this.size-=G?1:0,G}var dBG;var mBG=a(()=>{dBG=rlb});function Zbb(I){var G=this.__data__;if(IC){var Z=G[I];return Z===elb?void 0:Z}return Gbb.call(G,I)?G[I]:void 0}var elb="__lodash_hash_undefined__",Ibb,Gbb,QBG;var XBG=a(()=>{FS();Ibb=Object.prototype,Gbb=Ibb.hasOwnProperty;QBG=Zbb});function Wbb(I){var G=this.__data__;return IC?G[I]!==void 0:bbb.call(G,I)}var lbb,bbb,FBG;var RBG=a(()=>{FS();lbb=Object.prototype,bbb=lbb.hasOwnProperty;FBG=Wbb});function Ybb(I,G){var Z=this.__data__;return this.size+=this.has(I)?0:1,Z[I]=IC&&G===void 0?Nbb:G,this}var Nbb="__lodash_hash_undefined__",HBG;var hBG=a(()=>{FS();HBG=Ybb});function cM(I){var G=-1,Z=I==null?0:I.length;this.clear();while(++G<Z){var l=I[G];this.set(l[0],l[1])}}var UvI;var wBG=a(()=>{VBG();mBG();XBG();RBG();hBG();cM.prototype.clear=cBG;cM.prototype.delete=dBG;cM.prototype.get=QBG;cM.prototype.has=FBG;cM.prototype.set=HBG;UvI=cM});function cbb(){this.size=0,this.__data__={hash:new UvI,map:new(Wu||Zu),string:new UvI}}var JBG;var ABG=a(()=>{wBG();QS();EZI();JBG=cbb});function Vbb(I){var G=typeof I;return G=="string"||G=="number"||G=="symbol"||G=="boolean"?I!=="__proto__":I===null}var EBG;var vBG=a(()=>{EBG=Vbb});function dbb(I,G){var Z=I.__data__;return EBG(G)?Z[typeof G=="string"?"string":"hash"]:Z.map}var Nu;var RS=a(()=>{vBG();Nu=dbb});function mbb(I){var G=Nu(this,I).delete(I);return this.size-=G?1:0,G}var CBG;var pBG=a(()=>{RS();CBG=mbb});function Qbb(I){return Nu(this,I).get(I)}var yBG;var uBG=a(()=>{RS();yBG=Qbb});function Xbb(I){return Nu(this,I).has(I)}var LBG;var gBG=a(()=>{RS();LBG=Xbb});function Fbb(I,G){var Z=Nu(this,I),l=Z.size;return Z.set(I,G),this.size+=Z.size==l?0:1,this}var aBG;var zBG=a(()=>{RS();aBG=Fbb});function VM(I){var G=-1,Z=I==null?0:I.length;this.clear();while(++G<Z){var l=I[G];this.set(l[0],l[1])}}var mz;var vZI=a(()=>{ABG();pBG();uBG();gBG();zBG();VM.prototype.clear=JBG;VM.prototype.delete=CBG;VM.prototype.get=yBG;VM.prototype.has=LBG;VM.prototype.set=aBG;mz=VM});function Hbb(I,G){var Z=this.__data__;if(Z instanceof Zu){var l=Z.__data__;if(!Wu||l.length<Rbb-1)return l.push([I,G]),this.size=++Z.size,this;Z=this.__data__=new mz(l)}return Z.set(I,G),this.size=Z.size,this}var Rbb=200,BBG;var kBG=a(()=>{QS();EZI();vZI();BBG=Hbb});function dM(I){var G=this.__data__=new Zu(I);this.size=G.size}var Yu;var CZI=a(()=>{QS();qzG();SzG();PzG();fzG();kBG();dM.prototype.clear=nzG;dM.prototype.delete=TzG;dM.prototype.get=izG;dM.prototype.has=_zG;dM.prototype.set=BBG;Yu=dM});function hbb(I,G){var Z=-1,l=I==null?0:I.length;while(++Z<l)if(G(I[Z],Z,I)===!1)break;return I}var UBG;var xBG=a(()=>{UBG=hbb});var wbb,mM;var xvI=a(()=>{bu();wbb=function(){try{var I=u1(Object,"defineProperty");return I({},"",{}),I}catch(G){}}(),mM=wbb});function Jbb(I,G,Z){if(G=="__proto__"&&mM)mM(I,G,{configurable:!0,enumerable:!0,value:Z,writable:!0});else I[G]=Z}var QM;var pZI=a(()=>{xvI();QM=Jbb});function vbb(I,G,Z){var l=I[G];if(!(Ebb.call(I,G)&&NM(l,Z))||Z===void 0&&!(G in I))QM(I,G,Z)}var Abb,Ebb,cu;var HS=a(()=>{pZI();hZI();Abb=Object.prototype,Ebb=Abb.hasOwnProperty;cu=vbb});function Cbb(I,G,Z,l){var b=!Z;Z||(Z={});var W=-1,N=G.length;while(++W<N){var Y=G[W],c=l?l(Z[Y],I[Y],Y,Z,I):void 0;if(c===void 0)c=I[Y];if(b)QM(Z,Y,c);else cu(Z,Y,c)}return Z}var V4;var XM=a(()=>{HS();pZI();V4=Cbb});function pbb(I,G){var Z=-1,l=Array(I);while(++Z<I)l[Z]=G(Z);return l}var yZI;var OvI=a(()=>{yZI=pbb});function ybb(I){return I!=null&&typeof I=="object"}var p0;var d4=a(()=>{p0=ybb});function Lbb(I){return p0(I)&&TR(I)==ubb}var ubb="[object Arguments]",MvI;var OBG=a(()=>{dz();d4();MvI=Lbb});var MBG,gbb,abb,zbb,FM;var uZI=a(()=>{OBG();d4();MBG=Object.prototype,gbb=MBG.hasOwnProperty,abb=MBG.propertyIsEnumerable,zbb=MvI(function(){return arguments}())?MvI:function(I){return p0(I)&&gbb.call(I,"callee")&&!abb.call(I,"callee")},FM=zbb});var Bbb,lV;var SR=a(()=>{Bbb=Array.isArray,lV=Bbb});function kbb(){return!1}var KBG;var DBG=a(()=>{KBG=kbb});var gZI={};w1(gZI,{default:()=>Vu});var qBG,jBG,Ubb,nBG,xbb,Obb,Vu;var aZI=a(()=>{y5();DBG();qBG=typeof gZI=="object"&&gZI&&!gZI.nodeType&&gZI,jBG=qBG&&typeof LZI=="object"&&LZI&&!LZI.nodeType&&LZI,Ubb=jBG&&jBG.exports===qBG,nBG=Ubb?Sd.Buffer:void 0,xbb=nBG?nBG.isBuffer:void 0,Obb=xbb||KBG,Vu=Obb});function Dbb(I,G){var Z=typeof I;return G=G==null?Mbb:G,!!G&&(Z=="number"||Z!="symbol"&&Kbb.test(I))&&(I>-1&&I%1==0&&I<G)}var Mbb=9007199254740991,Kbb,RM;var zZI=a(()=>{Kbb=/^(?:0|[1-9]\d*)$/;RM=Dbb});function nbb(I){return typeof I=="number"&&I>-1&&I%1==0&&I<=jbb}var jbb=9007199254740991,HM;var BZI=a(()=>{HM=nbb});function mWb(I){return p0(I)&&HM(I.length)&&!!bV[TR(I)]}var qbb="[object Arguments]",Tbb="[object Array]",Sbb="[object Boolean]",ibb="[object Date]",Pbb="[object Error]",_bb="[object Function]",fbb="[object Map]",sbb="[object Number]",$bb="[object Object]",obb="[object RegExp]",tbb="[object Set]",rbb="[object String]",ebb="[object WeakMap]",IWb="[object ArrayBuffer]",GWb="[object DataView]",ZWb="[object Float32Array]",lWb="[object Float64Array]",bWb="[object Int8Array]",WWb="[object Int16Array]",NWb="[object Int32Array]",YWb="[object Uint8Array]",cWb="[object Uint8ClampedArray]",VWb="[object Uint16Array]",dWb="[object Uint32Array]",bV,TBG;var SBG=a(()=>{dz();BZI();d4();bV={};bV[ZWb]=bV[lWb]=bV[bWb]=bV[WWb]=bV[NWb]=bV[YWb]=bV[cWb]=bV[VWb]=bV[dWb]=!0;bV[qbb]=bV[Tbb]=bV[IWb]=bV[Sbb]=bV[GWb]=bV[ibb]=bV[Pbb]=bV[_bb]=bV[fbb]=bV[sbb]=bV[$bb]=bV[obb]=bV[tbb]=bV[rbb]=bV[ebb]=!1;TBG=mWb});function QWb(I){return function(G){return I(G)}}var hM;var kZI=a(()=>{hM=QWb});var xZI={};w1(xZI,{default:()=>m4});var iBG,hS,XWb,KvI,FWb,m4;var OZI=a(()=>{zvI();iBG=typeof xZI=="object"&&xZI&&!xZI.nodeType&&xZI,hS=iBG&&typeof UZI=="object"&&UZI&&!UZI.nodeType&&UZI,XWb=hS&&hS.exports===iBG,KvI=XWb&&wZI.process,FWb=function(){try{var I=hS&&hS.require&&hS.require("util").types;if(I)return I;return KvI&&KvI.binding&&KvI.binding("util")}catch(G){}}(),m4=FWb});var PBG,RWb,MZI;var DvI=a(()=>{SBG();kZI();OZI();PBG=m4&&m4.isTypedArray,RWb=PBG?hM(PBG):TBG,MZI=RWb});function wWb(I,G){var Z=lV(I),l=!Z&&FM(I),b=!Z&&!l&&Vu(I),W=!Z&&!l&&!b&&MZI(I),N=Z||l||b||W,Y=N?yZI(I.length,String):[],c=Y.length;for(var V in I)if((G||hWb.call(I,V))&&!(N&&(V=="length"||b&&(V=="offset"||V=="parent")||W&&(V=="buffer"||V=="byteLength"||V=="byteOffset")||RM(V,c))))Y.push(V);return Y}var HWb,hWb,KZI;var jvI=a(()=>{OvI();uZI();SR();aZI();zZI();DvI();HWb=Object.prototype,hWb=HWb.hasOwnProperty;KZI=wWb});function AWb(I){var G=I&&I.constructor,Z=typeof G=="function"&&G.prototype||JWb;return I===Z}var JWb,wM;var DZI=a(()=>{JWb=Object.prototype;wM=AWb});function EWb(I,G){return function(Z){return I(G(Z))}}var jZI;var nvI=a(()=>{jZI=EWb});var vWb,_BG;var fBG=a(()=>{nvI();vWb=jZI(Object.keys,Object),_BG=vWb});function yWb(I){if(!wM(I))return _BG(I);var G=[];for(var Z in Object(I))if(pWb.call(I,Z)&&Z!="constructor")G.push(Z);return G}var CWb,pWb,sBG;var $BG=a(()=>{DZI();fBG();CWb=Object.prototype,pWb=CWb.hasOwnProperty;sBG=yWb});function uWb(I){return I!=null&&HM(I.length)&&!JZI(I)}var du;var wS=a(()=>{BvI();BZI();du=uWb});function LWb(I){return du(I)?KZI(I):sBG(I)}var ph;var Qz=a(()=>{jvI();$BG();wS();ph=LWb});function gWb(I,G){return I&&V4(G,ph(G),I)}var oBG;var tBG=a(()=>{XM();Qz();oBG=gWb});function aWb(I){var G=[];if(I!=null)for(var Z in Object(I))G.push(Z);return G}var rBG;var eBG=a(()=>{rBG=aWb});function kWb(I){if(!YF(I))return rBG(I);var G=wM(I),Z=[];for(var l in I)if(!(l=="constructor"&&(G||!BWb.call(I,l))))Z.push(l);return Z}var zWb,BWb,IkG;var GkG=a(()=>{lu();DZI();eBG();zWb=Object.prototype,BWb=zWb.hasOwnProperty;IkG=kWb});function UWb(I){return du(I)?KZI(I,!0):IkG(I)}var JM;var nZI=a(()=>{jvI();GkG();wS();JM=UWb});function xWb(I,G){return I&&V4(G,JM(G),I)}var ZkG;var lkG=a(()=>{XM();nZI();ZkG=xWb});var TZI={};w1(TZI,{default:()=>qvI});function MWb(I,G){if(G)return I.slice();var Z=I.length,l=NkG?NkG(Z):new I.constructor(Z);return I.copy(l),l}var YkG,bkG,OWb,WkG,NkG,qvI;var ckG=a(()=>{y5();YkG=typeof TZI=="object"&&TZI&&!TZI.nodeType&&TZI,bkG=YkG&&typeof qZI=="object"&&qZI&&!qZI.nodeType&&qZI,OWb=bkG&&bkG.exports===YkG,WkG=OWb?Sd.Buffer:void 0,NkG=WkG?WkG.allocUnsafe:void 0;qvI=MWb});function KWb(I,G){var Z=-1,l=I.length;G||(G=Array(l));while(++Z<l)G[Z]=I[Z];return G}var VkG;var dkG=a(()=>{VkG=KWb});function DWb(I,G){var Z=-1,l=I==null?0:I.length,b=0,W=[];while(++Z<l){var N=I[Z];if(G(N,Z,I))W[b++]=N}return W}var SZI;var TvI=a(()=>{SZI=DWb});function jWb(){return[]}var iZI;var SvI=a(()=>{iZI=jWb});var nWb,qWb,mkG,TWb,AM;var PZI=a(()=>{TvI();SvI();nWb=Object.prototype,qWb=nWb.propertyIsEnumerable,mkG=Object.getOwnPropertySymbols,TWb=!mkG?iZI:function(I){if(I==null)return[];return I=Object(I),SZI(mkG(I),function(G){return qWb.call(I,G)})},AM=TWb});function SWb(I,G){return V4(I,AM(I),G)}var QkG;var XkG=a(()=>{XM();PZI();QkG=SWb});function iWb(I,G){var Z=-1,l=G.length,b=I.length;while(++Z<l)I[b+Z]=G[Z];return I}var EM;var _ZI=a(()=>{EM=iWb});var PWb,vM;var fZI=a(()=>{nvI();PWb=jZI(Object.getPrototypeOf,Object),vM=PWb});var _Wb,fWb,sZI;var ivI=a(()=>{_ZI();fZI();PZI();SvI();_Wb=Object.getOwnPropertySymbols,fWb=!_Wb?iZI:function(I){var G=[];while(I)EM(G,AM(I)),I=vM(I);return G},sZI=fWb});function sWb(I,G){return V4(I,sZI(I),G)}var FkG;var RkG=a(()=>{XM();ivI();FkG=sWb});function $Wb(I,G,Z){var l=G(I);return lV(I)?l:EM(l,Z(I))}var $ZI;var PvI=a(()=>{_ZI();SR();$ZI=$Wb});function oWb(I){return $ZI(I,ph,AM)}var JS;var _vI=a(()=>{PvI();PZI();Qz();JS=oWb});function tWb(I){return $ZI(I,JM,sZI)}var CM;var oZI=a(()=>{PvI();ivI();nZI();CM=tWb});var rWb,tZI;var HkG=a(()=>{bu();y5();rWb=u1(Sd,"DataView"),tZI=rWb});var eWb,rZI;var hkG=a(()=>{bu();y5();eWb=u1(Sd,"Promise"),rZI=eWb});var INb,eZI;var wkG=a(()=>{bu();y5();INb=u1(Sd,"Set"),eZI=INb});var GNb,IlI;var JkG=a(()=>{bu();y5();GNb=u1(Sd,"WeakMap"),IlI=GNb});var AkG="[object Map]",ZNb="[object Object]",EkG="[object Promise]",vkG="[object Set]",CkG="[object WeakMap]",pkG="[object DataView]",lNb,bNb,WNb,NNb,YNb,Xz,GC;var AS=a(()=>{HkG();EZI();hkG();wkG();JkG();dz();kvI();lNb=ev(tZI),bNb=ev(Wu),WNb=ev(rZI),NNb=ev(eZI),YNb=ev(IlI),Xz=TR;if(tZI&&Xz(new tZI(new ArrayBuffer(1)))!=pkG||Wu&&Xz(new Wu)!=AkG||rZI&&Xz(rZI.resolve())!=EkG||eZI&&Xz(new eZI)!=vkG||IlI&&Xz(new IlI)!=CkG)Xz=function(I){var G=TR(I),Z=G==ZNb?I.constructor:void 0,l=Z?ev(Z):"";if(l)switch(l){case lNb:return pkG;case bNb:return AkG;case WNb:return EkG;case NNb:return vkG;case YNb:return CkG}return G};GC=Xz});function dNb(I){var G=I.length,Z=new I.constructor(G);if(G&&typeof I[0]=="string"&&VNb.call(I,"index"))Z.index=I.index,Z.input=I.input;return Z}var cNb,VNb,ykG;var ukG=a(()=>{cNb=Object.prototype,VNb=cNb.hasOwnProperty;ykG=dNb});var mNb,pM;var fvI=a(()=>{y5();mNb=Sd.Uint8Array,pM=mNb});function QNb(I){var G=new I.constructor(I.byteLength);return new pM(G).set(new pM(I)),G}var yM;var GlI=a(()=>{fvI();yM=QNb});function XNb(I,G){var Z=G?yM(I.buffer):I.buffer;return new I.constructor(Z,I.byteOffset,I.byteLength)}var LkG;var gkG=a(()=>{GlI();LkG=XNb});function RNb(I){var G=new I.constructor(I.source,FNb.exec(I));return G.lastIndex=I.lastIndex,G}var FNb,akG;var zkG=a(()=>{FNb=/\w*$/;akG=RNb});function HNb(I){return kkG?Object(kkG.call(I)):{}}var BkG,kkG,UkG;var xkG=a(()=>{Vz();BkG=lm?lm.prototype:void 0,kkG=BkG?BkG.valueOf:void 0;UkG=HNb});function hNb(I,G){var Z=G?yM(I.buffer):I.buffer;return new I.constructor(Z,I.byteOffset,I.length)}var OkG;var MkG=a(()=>{GlI();OkG=hNb});function KNb(I,G,Z){var l=I.constructor;switch(G){case uNb:return yM(I);case wNb:case JNb:return new l(+I);case LNb:return LkG(I,Z);case gNb:case aNb:case zNb:case BNb:case kNb:case UNb:case xNb:case ONb:case MNb:return OkG(I,Z);case ANb:return new l;case ENb:case pNb:return new l(I);case vNb:return akG(I);case CNb:return new l;case yNb:return UkG(I)}}var wNb="[object Boolean]",JNb="[object Date]",ANb="[object Map]",ENb="[object Number]",vNb="[object RegExp]",CNb="[object Set]",pNb="[object String]",yNb="[object Symbol]",uNb="[object ArrayBuffer]",LNb="[object DataView]",gNb="[object Float32Array]",aNb="[object Float64Array]",zNb="[object Int8Array]",BNb="[object Int16Array]",kNb="[object Int32Array]",UNb="[object Uint8Array]",xNb="[object Uint8ClampedArray]",ONb="[object Uint16Array]",MNb="[object Uint32Array]",KkG;var DkG=a(()=>{GlI();gkG();zkG();xkG();MkG();KkG=KNb});var jkG,DNb,nkG;var qkG=a(()=>{lu();jkG=Object.create,DNb=function(){function I(){}return function(G){if(!YF(G))return{};if(jkG)return jkG(G);I.prototype=G;var Z=new I;return I.prototype=void 0,Z}}(),nkG=DNb});function jNb(I){return typeof I.constructor=="function"&&!wM(I)?nkG(vM(I)):{}}var TkG;var SkG=a(()=>{qkG();fZI();DZI();TkG=jNb});function qNb(I){return p0(I)&&GC(I)==nNb}var nNb="[object Map]",ikG;var PkG=a(()=>{AS();d4();ikG=qNb});var _kG,TNb,fkG;var skG=a(()=>{PkG();kZI();OZI();_kG=m4&&m4.isMap,TNb=_kG?hM(_kG):ikG,fkG=TNb});function iNb(I){return p0(I)&&GC(I)==SNb}var SNb="[object Set]",$kG;var okG=a(()=>{AS();d4();$kG=iNb});var tkG,PNb,rkG;var ekG=a(()=>{okG();kZI();OZI();tkG=m4&&m4.isSet,PNb=tkG?hM(tkG):$kG,rkG=PNb});function ZlI(I,G,Z,l,b,W){var N,Y=G&_Nb,c=G&fNb,V=G&sNb;if(Z)N=b?Z(I,l,b,W):Z(I);if(N!==void 0)return N;if(!YF(I))return I;var d=lV(I);if(d){if(N=ykG(I),!Y)return VkG(I,N)}else{var Q=GC(I),X=Q==GUG||Q==eNb;if(Vu(I))return qvI(I,Y);if(Q==ZUG||Q==IUG||X&&!b){if(N=c||X?{}:TkG(I),!Y)return c?FkG(I,ZkG(N,I)):QkG(I,oBG(N,I))}else{if(!Oc[Q])return b?I:{};N=KkG(I,Q,Y)}}W||(W=new Yu);var R=W.get(I);if(R)return R;if(W.set(I,N),rkG(I))I.forEach(function(A){N.add(ZlI(A,G,Z,A,I,W))});else if(fkG(I))I.forEach(function(A,C){N.set(C,ZlI(A,G,Z,C,I,W))});var H=V?c?CM:JS:c?JM:ph,h=d?void 0:H(I);return UBG(h||I,function(A,C){if(h)C=A,A=I[C];cu(N,C,ZlI(A,G,Z,C,I,W))}),N}var _Nb=1,fNb=2,sNb=4,IUG="[object Arguments]",$Nb="[object Array]",oNb="[object Boolean]",tNb="[object Date]",rNb="[object Error]",GUG="[object Function]",eNb="[object GeneratorFunction]",IYb="[object Map]",GYb="[object Number]",ZUG="[object Object]",ZYb="[object RegExp]",lYb="[object Set]",bYb="[object String]",WYb="[object Symbol]",NYb="[object WeakMap]",YYb="[object ArrayBuffer]",cYb="[object DataView]",VYb="[object Float32Array]",dYb="[object Float64Array]",mYb="[object Int8Array]",QYb="[object Int16Array]",XYb="[object Int32Array]",FYb="[object Uint8Array]",RYb="[object Uint8ClampedArray]",HYb="[object Uint16Array]",hYb="[object Uint32Array]",Oc,llI;var svI=a(()=>{CZI();xBG();HS();tBG();lkG();ckG();dkG();XkG();RkG();_vI();oZI();AS();ukG();DkG();SkG();SR();aZI();skG();lu();ekG();Qz();nZI();Oc={};Oc[IUG]=Oc[$Nb]=Oc[YYb]=Oc[cYb]=Oc[oNb]=Oc[tNb]=Oc[VYb]=Oc[dYb]=Oc[mYb]=Oc[QYb]=Oc[XYb]=Oc[IYb]=Oc[GYb]=Oc[ZUG]=Oc[ZYb]=Oc[lYb]=Oc[bYb]=Oc[WYb]=Oc[FYb]=Oc[RYb]=Oc[HYb]=Oc[hYb]=!0;Oc[rNb]=Oc[GUG]=Oc[NYb]=!1;llI=ZlI});function AYb(I){return llI(I,wYb|JYb)}var wYb=1,JYb=4,ES;var lUG=a(()=>{svI();ES=AYb});function vYb(I){return this.__data__.set(I,EYb),this}var EYb="__lodash_hash_undefined__",bUG;var WUG=a(()=>{bUG=vYb});function CYb(I){return this.__data__.has(I)}var NUG;var YUG=a(()=>{NUG=CYb});function blI(I){var G=-1,Z=I==null?0:I.length;this.__data__=new mz;while(++G<Z)this.add(I[G])}var cUG;var VUG=a(()=>{vZI();WUG();YUG();blI.prototype.add=blI.prototype.push=bUG;blI.prototype.has=NUG;cUG=blI});function pYb(I,G){var Z=-1,l=I==null?0:I.length;while(++Z<l)if(G(I[Z],Z,I))return!0;return!1}var dUG;var mUG=a(()=>{dUG=pYb});function yYb(I,G){return I.has(G)}var QUG;var XUG=a(()=>{QUG=yYb});function gYb(I,G,Z,l,b,W){var N=Z&uYb,Y=I.length,c=G.length;if(Y!=c&&!(N&&c>Y))return!1;var V=W.get(I),d=W.get(G);if(V&&d)return V==G&&d==I;var Q=-1,X=!0,R=Z&LYb?new cUG:void 0;W.set(I,G),W.set(G,I);while(++Q<Y){var H=I[Q],h=G[Q];if(l)var A=N?l(h,H,Q,G,I,W):l(H,h,Q,I,G,W);if(A!==void 0){if(A)continue;X=!1;break}if(R){if(!dUG(G,function(C,g){if(!QUG(R,g)&&(H===C||b(H,C,Z,l,W)))return R.push(g)})){X=!1;break}}else if(!(H===h||b(H,h,Z,l,W))){X=!1;break}}return W.delete(I),W.delete(G),X}var uYb=1,LYb=2,WlI;var $vI=a(()=>{VUG();mUG();XUG();WlI=gYb});function aYb(I){var G=-1,Z=Array(I.size);return I.forEach(function(l,b){Z[++G]=[b,l]}),Z}var FUG;var RUG=a(()=>{FUG=aYb});function zYb(I){var G=-1,Z=Array(I.size);return I.forEach(function(l){Z[++G]=l}),Z}var HUG;var hUG=a(()=>{HUG=zYb});function iYb(I,G,Z,l,b,W,N){switch(Z){case SYb:if(I.byteLength!=G.byteLength||I.byteOffset!=G.byteOffset)return!1;I=I.buffer,G=G.buffer;case TYb:if(I.byteLength!=G.byteLength||!W(new pM(I),new pM(G)))return!1;return!0;case UYb:case xYb:case KYb:return NM(+I,+G);case OYb:return I.name==G.name&&I.message==G.message;case DYb:case nYb:return I==G+"";case MYb:var Y=FUG;case jYb:var c=l&BYb;if(Y||(Y=HUG),I.size!=G.size&&!c)return!1;var V=N.get(I);if(V)return V==G;l|=kYb,N.set(I,G);var d=WlI(Y(I),Y(G),l,b,W,N);return N.delete(I),d;case qYb:if(ovI)return ovI.call(I)==ovI.call(G)}return!1}var BYb=1,kYb=2,UYb="[object Boolean]",xYb="[object Date]",OYb="[object Error]",MYb="[object Map]",KYb="[object Number]",DYb="[object RegExp]",jYb="[object Set]",nYb="[object String]",qYb="[object Symbol]",TYb="[object ArrayBuffer]",SYb="[object DataView]",wUG,ovI,JUG;var AUG=a(()=>{Vz();fvI();hZI();$vI();RUG();hUG();wUG=lm?lm.prototype:void 0,ovI=wUG?wUG.valueOf:void 0;JUG=iYb});function sYb(I,G,Z,l,b,W){var N=Z&PYb,Y=JS(I),c=Y.length,V=JS(G),d=V.length;if(c!=d&&!N)return!1;var Q=c;while(Q--){var X=Y[Q];if(!(N?X in G:fYb.call(G,X)))return!1}var R=W.get(I),H=W.get(G);if(R&&H)return R==G&&H==I;var h=!0;W.set(I,G),W.set(G,I);var A=N;while(++Q<c){X=Y[Q];var C=I[X],g=G[X];if(l)var z=N?l(g,C,X,G,I,W):l(C,g,X,I,G,W);if(!(z===void 0?C===g||b(C,g,Z,l,W):z)){h=!1;break}A||(A=X=="constructor")}if(h&&!A){var k=I.constructor,x=G.constructor;if(k!=x&&(("constructor"in I)&&("constructor"in G))&&!(typeof k=="function"&&k instanceof k&&typeof x=="function"&&x instanceof x))h=!1}return W.delete(I),W.delete(G),h}var PYb=1,_Yb,fYb,EUG;var vUG=a(()=>{_vI();_Yb=Object.prototype,fYb=_Yb.hasOwnProperty;EUG=sYb});function tYb(I,G,Z,l,b,W){var N=lV(I),Y=lV(G),c=N?pUG:GC(I),V=Y?pUG:GC(G);c=c==CUG?NlI:c,V=V==CUG?NlI:V;var d=c==NlI,Q=V==NlI,X=c==V;if(X&&Vu(I)){if(!Vu(G))return!1;N=!0,d=!1}if(X&&!d)return W||(W=new Yu),N||MZI(I)?WlI(I,G,Z,l,b,W):JUG(I,G,c,Z,l,b,W);if(!(Z&$Yb)){var R=d&&yUG.call(I,"__wrapped__"),H=Q&&yUG.call(G,"__wrapped__");if(R||H){var h=R?I.value():I,A=H?G.value():G;return W||(W=new Yu),b(h,A,Z,l,W)}}if(!X)return!1;return W||(W=new Yu),EUG(I,G,Z,l,b,W)}var $Yb=1,CUG="[object Arguments]",pUG="[object Array]",NlI="[object Object]",oYb,yUG,uUG;var LUG=a(()=>{CZI();$vI();AUG();vUG();AS();SR();aZI();DvI();oYb=Object.prototype,yUG=oYb.hasOwnProperty;uUG=tYb});function gUG(I,G,Z,l,b){if(I===G)return!0;if(I==null||G==null||!p0(I)&&!p0(G))return I!==I&&G!==G;return uUG(I,G,Z,l,gUG,b)}var uM;var YlI=a(()=>{LUG();d4();uM=gUG});function rYb(I,G){return uM(I,G)}var clI;var aUG=a(()=>{YlI();clI=rYb});function eYb(I){var G=I==null?0:I.length;return G?I[G-1]:void 0}var u5;var tvI=a(()=>{u5=eYb});function Icb(I){return function(G,Z,l){var b=-1,W=Object(G),N=l(G),Y=N.length;while(Y--){var c=N[I?Y:++b];if(Z(W[c],c,W)===!1)break}return G}}var zUG;var BUG=a(()=>{zUG=Icb});var Gcb,kUG;var UUG=a(()=>{BUG();Gcb=zUG(),kUG=Gcb});function Zcb(I,G){return I&&kUG(I,G,ph)}var VlI;var rvI=a(()=>{UUG();Qz();VlI=Zcb});function Wcb(I,G,Z,l){var b=Z.length,W=b,N=!l;if(I==null)return!W;I=Object(I);while(b--){var Y=Z[b];if(N&&Y[2]?Y[1]!==I[Y[0]]:!(Y[0]in I))return!1}while(++b<W){Y=Z[b];var c=Y[0],V=I[c],d=Y[1];if(N&&Y[2]){if(V===void 0&&!(c in I))return!1}else{var Q=new Yu;if(l)var X=l(V,d,c,I,G,Q);if(!(X===void 0?uM(d,V,lcb|bcb,l,Q):X))return!1}}return!0}var lcb=1,bcb=2,xUG;var OUG=a(()=>{CZI();YlI();xUG=Wcb});function Ncb(I){return I===I&&!YF(I)}var dlI;var evI=a(()=>{lu();dlI=Ncb});function Ycb(I){var G=ph(I),Z=G.length;while(Z--){var l=G[Z],b=I[l];G[Z]=[l,b,dlI(b)]}return G}var MUG;var KUG=a(()=>{evI();Qz();MUG=Ycb});function ccb(I,G){return function(Z){if(Z==null)return!1;return Z[I]===G&&(G!==void 0||(I in Object(Z)))}}var mlI;var ICI=a(()=>{mlI=ccb});function Vcb(I){var G=MUG(I);if(G.length==1&&G[0][2])return mlI(G[0][0],G[0][1]);return function(Z){return Z===I||xUG(Z,I,G)}}var DUG;var jUG=a(()=>{OUG();KUG();ICI();DUG=Vcb});function mcb(I){return typeof I=="symbol"||p0(I)&&TR(I)==dcb}var dcb="[object Symbol]",LM;var QlI=a(()=>{dz();d4();LM=mcb});function Fcb(I,G){if(lV(I))return!1;var Z=typeof I;if(Z=="number"||Z=="symbol"||Z=="boolean"||I==null||LM(I))return!0;return Xcb.test(I)||!Qcb.test(I)||G!=null&&I in Object(G)}var Qcb,Xcb,gM;var XlI=a(()=>{SR();QlI();Qcb=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Xcb=/^\w*$/;gM=Fcb});function GCI(I,G){if(typeof I!="function"||G!=null&&typeof G!="function")throw TypeError(Rcb);var Z=function(){var l=arguments,b=G?G.apply(this,l):l[0],W=Z.cache;if(W.has(b))return W.get(b);var N=I.apply(this,l);return Z.cache=W.set(b,N)||W,N};return Z.cache=new(GCI.Cache||mz),Z}var Rcb="Expected a function",cb;var ZCI=a(()=>{vZI();GCI.Cache=mz;cb=GCI});function hcb(I){var G=cb(I,function(l){if(Z.size===Hcb)Z.clear();return l}),Z=G.cache;return G}var Hcb=500,nUG;var qUG=a(()=>{ZCI();nUG=hcb});var wcb,Jcb,Acb,TUG;var SUG=a(()=>{qUG();wcb=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Jcb=/\\(\\)?/g,Acb=nUG(function(I){var G=[];if(I.charCodeAt(0)===46)G.push("");return I.replace(wcb,function(Z,l,b,W){G.push(b?W.replace(Jcb,"$1"):l||Z)}),G}),TUG=Acb});function Ecb(I,G){var Z=-1,l=I==null?0:I.length,b=Array(l);while(++Z<l)b[Z]=G(I[Z],Z,I);return b}var Q4;var aM=a(()=>{Q4=Ecb});function _UG(I){if(typeof I=="string")return I;if(lV(I))return Q4(I,_UG)+"";if(LM(I))return PUG?PUG.call(I):"";var G=I+"";return G=="0"&&1/I==-vcb?"-0":G}var vcb=1/0,iUG,PUG,fUG;var sUG=a(()=>{Vz();aM();SR();QlI();iUG=lm?lm.prototype:void 0,PUG=iUG?iUG.toString:void 0;fUG=_UG});function Ccb(I){return I==null?"":fUG(I)}var $UG;var oUG=a(()=>{sUG();$UG=Ccb});function pcb(I,G){if(lV(I))return I;return gM(I,G)?[I]:TUG($UG(I))}var yh;var Fz=a(()=>{SR();XlI();SUG();oUG();yh=pcb});function ucb(I){if(typeof I=="string"||LM(I))return I;var G=I+"";return G=="0"&&1/I==-ycb?"-0":G}var ycb=1/0,uh;var Rz=a(()=>{QlI();uh=ucb});function Lcb(I,G){G=yh(G,I);var Z=0,l=G.length;while(I!=null&&Z<l)I=I[uh(G[Z++])];return Z&&Z==l?I:void 0}var mu;var vS=a(()=>{Fz();Rz();mu=Lcb});function gcb(I,G,Z){var l=I==null?void 0:mu(I,G);return l===void 0?Z:l}var tUG;var rUG=a(()=>{vS();tUG=gcb});function acb(I,G){return I!=null&&G in Object(I)}var eUG;var IxG=a(()=>{eUG=acb});function zcb(I,G,Z){G=yh(G,I);var l=-1,b=G.length,W=!1;while(++l<b){var N=uh(G[l]);if(!(W=I!=null&&Z(I,N)))break;I=I[N]}if(W||++l!=b)return W;return b=I==null?0:I.length,!!b&&HM(b)&&RM(N,b)&&(lV(I)||FM(I))}var GxG;var ZxG=a(()=>{Fz();uZI();SR();zZI();BZI();Rz();GxG=zcb});function Bcb(I,G){return I!=null&&GxG(I,G,eUG)}var FlI;var lCI=a(()=>{IxG();ZxG();FlI=Bcb});function xcb(I,G){if(gM(I)&&dlI(G))return mlI(uh(I),G);return function(Z){var l=tUG(Z,I);return l===void 0&&l===G?FlI(Z,I):uM(G,l,kcb|Ucb)}}var kcb=1,Ucb=2,lxG;var bxG=a(()=>{YlI();rUG();lCI();XlI();evI();ICI();Rz();lxG=xcb});function Ocb(I){return I}var zM;var RlI=a(()=>{zM=Ocb});function Mcb(I){return function(G){return G==null?void 0:G[I]}}var HlI;var bCI=a(()=>{HlI=Mcb});function Kcb(I){return function(G){return mu(G,I)}}var WxG;var NxG=a(()=>{vS();WxG=Kcb});function Dcb(I){return gM(I)?HlI(uh(I)):WxG(I)}var YxG;var cxG=a(()=>{bCI();NxG();XlI();Rz();YxG=Dcb});function jcb(I){if(typeof I=="function")return I;if(I==null)return zM;if(typeof I=="object")return lV(I)?lxG(I[0],I[1]):DUG(I);return YxG(I)}var BM;var hlI=a(()=>{jUG();bxG();RlI();SR();cxG();BM=jcb});function ncb(I,G){var Z={};return G=BM(G,3),VlI(I,function(l,b,W){QM(Z,b,G(l,b,W))}),Z}var wlI;var VxG=a(()=>{pZI();rvI();hlI();wlI=ncb});function qcb(I,G,Z){var l=-1,b=I.length;if(G<0)G=-G>b?0:b+G;if(Z=Z>b?b:Z,Z<0)Z+=b;b=G>Z?0:Z-G>>>0,G>>>=0;var W=Array(b);while(++l<b)W[l]=I[l+G];return W}var dxG;var mxG=a(()=>{dxG=qcb});function Tcb(I,G){return G.length<2?I:mu(I,dxG(G,0,-1))}var QxG;var XxG=a(()=>{vS();mxG();QxG=Tcb});function Pcb(I,G){G=yh(G,I);var Z=-1,l=G.length;if(!l)return!0;var b=I==null||typeof I!=="object"&&typeof I!=="function";while(++Z<l){var W=G[Z];if(typeof W!=="string")continue;if(W==="__proto__"&&!icb.call(I,"__proto__"))return!1;if(W==="constructor"&&Z+1<l&&typeof G[Z+1]==="string"&&G[Z+1]==="prototype"){if(b&&Z===0)continue;return!1}}var N=QxG(I,G);return N==null||delete N[uh(u5(G))]}var Scb,icb,FxG;var RxG=a(()=>{Fz();tvI();XxG();Rz();Scb=Object.prototype,icb=Scb.hasOwnProperty;FxG=Pcb});function tcb(I){if(!p0(I)||TR(I)!=_cb)return!1;var G=vM(I);if(G===null)return!0;var Z=$cb.call(G,"constructor")&&G.constructor;return typeof Z=="function"&&Z instanceof Z&&HxG.call(Z)==ocb}var _cb="[object Object]",fcb,scb,HxG,$cb,ocb,hxG;var wxG=a(()=>{dz();fZI();d4();fcb=Function.prototype,scb=Object.prototype,HxG=fcb.toString,$cb=scb.hasOwnProperty,ocb=HxG.call(Object);hxG=tcb});function rcb(I){return hxG(I)?void 0:I}var JxG;var AxG=a(()=>{wxG();JxG=rcb});function ecb(I){return lV(I)||FM(I)||!!(ExG&&I&&I[ExG])}var ExG,vxG;var CxG=a(()=>{Vz();uZI();SR();ExG=lm?lm.isConcatSpreadable:void 0;vxG=ecb});function pxG(I,G,Z,l,b){var W=-1,N=I.length;Z||(Z=vxG),b||(b=[]);while(++W<N){var Y=I[W];if(G>0&&Z(Y))if(G>1)pxG(Y,G-1,Z,l,b);else EM(b,Y);else if(!l)b[b.length]=Y}return b}var yxG;var uxG=a(()=>{_ZI();CxG();yxG=pxG});function IVb(I){var G=I==null?0:I.length;return G?yxG(I,1):[]}var LxG;var gxG=a(()=>{uxG();LxG=IVb});function GVb(I,G,Z){switch(Z.length){case 0:return I.call(G);case 1:return I.call(G,Z[0]);case 2:return I.call(G,Z[0],Z[1]);case 3:return I.call(G,Z[0],Z[1],Z[2])}return I.apply(G,Z)}var axG;var zxG=a(()=>{axG=GVb});function ZVb(I,G,Z){return G=BxG(G===void 0?I.length-1:G,0),function(){var l=arguments,b=-1,W=BxG(l.length-G,0),N=Array(W);while(++b<W)N[b]=l[G+b];b=-1;var Y=Array(G+1);while(++b<G)Y[b]=l[b];return Y[G]=Z(N),axG(I,this,Y)}}var BxG,JlI;var WCI=a(()=>{zxG();BxG=Math.max;JlI=ZVb});function lVb(I){return function(){return I}}var kxG;var UxG=a(()=>{kxG=lVb});var bVb,xxG;var OxG=a(()=>{UxG();xvI();RlI();bVb=!mM?zM:function(I,G){return mM(I,"toString",{configurable:!0,enumerable:!1,value:kxG(G),writable:!0})},xxG=bVb});function cVb(I){var G=0,Z=0;return function(){var l=YVb(),b=NVb-(l-Z);if(Z=l,b>0){if(++G>=WVb)return arguments[0]}else G=0;return I.apply(void 0,arguments)}}var WVb=800,NVb=16,YVb,MxG;var KxG=a(()=>{YVb=Date.now;MxG=cVb});var VVb,AlI;var NCI=a(()=>{OxG();KxG();VVb=MxG(xxG),AlI=VVb});function dVb(I){return AlI(JlI(I,void 0,LxG),I+"")}var ElI;var YCI=a(()=>{gxG();WCI();NCI();ElI=dVb});var mVb=1,QVb=2,XVb=4,FVb,vlI;var DxG=a(()=>{aM();svI();RxG();Fz();XM();AxG();YCI();oZI();FVb=ElI(function(I,G){var Z={};if(I==null)return Z;var l=!1;if(G=Q4(G,function(W){return W=yh(W,I),l||(l=W.length>1),W}),V4(I,CM(I),Z),l)Z=llI(Z,mVb|QVb|XVb,JxG);var b=G.length;while(b--)FxG(Z,G[b]);return Z}),vlI=FVb});function RVb(I,G,Z,l){var b=-1,W=I==null?0:I.length;while(++b<W){var N=I[b];G(l,N,Z(N),I)}return l}var jxG;var nxG=a(()=>{jxG=RVb});function HVb(I,G){return function(Z,l){if(Z==null)return Z;if(!du(Z))return I(Z,l);var b=Z.length,W=G?b:-1,N=Object(Z);while(G?W--:++W<b)if(l(N[W],W,N)===!1)break;return Z}}var qxG;var TxG=a(()=>{wS();qxG=HVb});var hVb,SxG;var ixG=a(()=>{rvI();TxG();hVb=qxG(VlI),SxG=hVb});function wVb(I,G,Z,l){return SxG(I,function(b,W,N){G(l,b,Z(b),N)}),l}var PxG;var _xG=a(()=>{ixG();PxG=wVb});function JVb(I,G){return function(Z,l){var b=lV(Z)?jxG:PxG,W=G?G():{};return b(Z,I,BM(l,2),W)}}var fxG;var sxG=a(()=>{nxG();_xG();hlI();SR();fxG=JVb});var AVb,cCI;var $xG=a(()=>{sxG();AVb=fxG(function(I,G,Z){I[Z?0:1].push(G)},function(){return[[],[]]}),cCI=AVb});function EVb(I,G,Z,l){if(!YF(I))return I;G=yh(G,I);var b=-1,W=G.length,N=W-1,Y=I;while(Y!=null&&++b<W){var c=uh(G[b]),V=Z;if(c==="__proto__"||c==="constructor"||c==="prototype")return I;if(b!=N){var d=Y[c];if(V=l?l(d,c,Y):void 0,V===void 0)V=YF(d)?d:RM(G[b+1])?[]:{}}cu(Y,c,V),Y=Y[c]}return I}var oxG;var txG=a(()=>{HS();Fz();zZI();lu();Rz();oxG=EVb});function vVb(I,G,Z){var l=-1,b=G.length,W={};while(++l<b){var N=G[l],Y=mu(I,N);if(Z(Y,N))oxG(W,yh(N,I),Y)}return W}var ClI;var VCI=a(()=>{vS();txG();Fz();ClI=vVb});function CVb(I,G){return ClI(I,G,function(Z,l){return FlI(I,l)})}var rxG;var exG=a(()=>{VCI();lCI();rxG=CVb});var pVb,plI;var IOG=a(()=>{exG();YCI();pVb=ElI(function(I,G){return I==null?{}:rxG(I,G)}),plI=pVb});function yVb(I,G){if(I==null)return{};var Z=Q4(CM(I),function(l){return[l]});return G=BM(G),ClI(I,Z,function(l,b){return G(l,b[0])})}var ylI;var GOG=a(()=>{aM();hlI();VCI();oZI();ylI=yVb});function gVb(I,G){return I+uVb(LVb()*(G-I+1))}var uVb,LVb,ZOG;var lOG=a(()=>{uVb=Math.floor,LVb=Math.random;ZOG=gVb});function aVb(I){var G=I.length;return G?I[ZOG(0,G-1)]:void 0}var ulI;var dCI=a(()=>{lOG();ulI=aVb});function zVb(I,G){return Q4(G,function(Z){return I[Z]})}var bOG;var WOG=a(()=>{aM();bOG=zVb});function BVb(I){return I==null?[]:bOG(I,ph(I))}var NOG;var YOG=a(()=>{WOG();Qz();NOG=BVb});function kVb(I){return ulI(NOG(I))}var cOG;var VOG=a(()=>{dCI();YOG();cOG=kVb});function UVb(I){var G=lV(I)?ulI:cOG;return G(I)}var Hz;var dOG=a(()=>{dCI();VOG();SR();Hz=UVb});function xVb(I,G){return AlI(JlI(I,G,zM),I+"")}var mOG;var QOG=a(()=>{RlI();WCI();NCI();mOG=xVb});function OVb(I){return p0(I)&&du(I)}var XOG;var FOG=a(()=>{wS();d4();XOG=OVb});function KVb(I){if(!(I&&I.length))return[];var G=0;return I=SZI(I,function(Z){if(XOG(Z))return G=MVb(Z.length,G),!0}),yZI(G,function(Z){return Q4(I,HlI(Z))})}var MVb,ROG;var HOG=a(()=>{TvI();aM();bCI();OvI();FOG();MVb=Math.max;ROG=KVb});var DVb,mCI;var hOG=a(()=>{QOG();HOG();DVb=mOG(ROG),mCI=DVb});function jVb(I,G,Z){var l=-1,b=I.length,W=G.length,N={};while(++l<b){var Y=l<W?G[l]:void 0;Z(N,I[l],Y)}return N}var wOG;var JOG=a(()=>{wOG=jVb});function nVb(I,G){return wOG(I||[],G||[],cu)}var QCI;var AOG=a(()=>{HS();JOG();QCI=nVb});var wY=a(()=>{lUG();aUG();tvI();VxG();ZCI();DxG();$xG();IOG();GOG();dOG();hOG();AOG()});var vOG=w(($FY,EOG)=>{EOG.exports=function(G){return G.map(function(Z){if(Z==="")return"''";if(Z&&typeof Z==="object")return Z.op.replace(/(.)/g,"\\$1");if(/["\s\\]/.test(Z)&&!/'/.test(Z))return"'"+Z.replace(/(['])/g,"\\$1")+"'";if(/["'\s]/.test(Z))return'"'+Z.replace(/(["\\$`!])/g,"\\$1")+'"';return String(Z).replace(/([A-Za-z]:)?([#!"$&'()*,:;<=>?@[\\\]^`{|}])/g,"$1\\$2")}).join(" ")}});var aOG=w((oFY,gOG)=>{var LOG="(?:"+["\\|\\|","\\&\\&",";;","\\|\\&","\\<\\(","\\<\\<\\<",">>",">\\&","<\\&","[&;()|<>]"].join("|")+")",COG=new RegExp("^"+LOG+"$"),pOG="|&;()<> \\t",qVb='"((\\\\"|[^"])*?)"',TVb="'((\\\\'|[^'])*?)'",SVb=/^#$/,yOG="'",uOG='"',XCI="$",hz="",iVb=4294967296;for(LlI=0;LlI<4;LlI++)hz+=(iVb*Math.random()).toString(16);var LlI,PVb=new RegExp("^"+hz);function _Vb(I,G){var Z=G.lastIndex,l=[],b;while(b=G.exec(I))if(l.push(b),G.lastIndex===b.index)G.lastIndex+=1;return G.lastIndex=Z,l}function fVb(I,G,Z){var l=typeof I==="function"?I(Z):I[Z];if(typeof l>"u"&&Z!="")l="";else if(typeof l>"u")l="$";if(typeof l==="object")return G+hz+JSON.stringify(l)+hz;return G+l}function sVb(I,G,Z){if(!Z)Z={};var l=Z.escape||"\\",b="(\\"+l+`['"`+pOG+`]|[^\\s'"`+pOG+"])+",W=new RegExp(["("+LOG+")","("+b+"|"+qVb+"|"+TVb+")+"].join("|"),"g"),N=_Vb(I,W);if(N.length===0)return[];if(!G)G={};var Y=!1;return N.map(function(c){var V=c[0];if(!V||Y)return;if(COG.test(V))return{op:V};var d=!1,Q=!1,X="",R=!1,H;function h(){H+=1;var g,z,k=V.charAt(H);if(k==="{"){if(H+=1,V.charAt(H)==="}")throw Error("Bad substitution: "+V.slice(H-2,H+1));if(g=V.indexOf("}",H),g<0)throw Error("Bad substitution: "+V.slice(H));z=V.slice(H,g),H=g}else if(/[*@#?$!_-]/.test(k))z=k,H+=1;else{var x=V.slice(H);if(g=x.match(/[^\w\d_]/),!g)z=x,H=V.length;else z=x.slice(0,g.index),H+=g.index-1}return fVb(G,"",z)}for(H=0;H<V.length;H++){var A=V.charAt(H);if(R=R||!d&&(A==="*"||A==="?"),Q)X+=A,Q=!1;else if(d)if(A===d)d=!1;else if(d==yOG)X+=A;else if(A===l)if(H+=1,A=V.charAt(H),A===uOG||A===l||A===XCI)X+=A;else X+=l+A;else if(A===XCI)X+=h();else X+=A;else if(A===uOG||A===yOG)d=A;else if(COG.test(A))return{op:V};else if(SVb.test(A)){Y=!0;var C={comment:I.slice(c.index+H+1)};if(X.length)return[X,C];return[C]}else if(A===l)Q=!0;else if(A===XCI)X+=h();else X+=A}if(R)return{op:"glob",pattern:X};return X}).reduce(function(c,V){return typeof V>"u"?c:c.concat(V)},[])}gOG.exports=function(G,Z,l){var b=sVb(G,Z,l);if(typeof Z!=="function")return b;return b.reduce(function(W,N){if(typeof N==="object")return W.concat(N);var Y=N.split(RegExp("("+hz+".*?"+hz+")","g"));if(Y.length===1)return W.concat(Y[0]);return W.concat(Y.filter(Boolean).map(function(c){if(PVb.test(c))return JSON.parse(c.split(hz)[1]);return c}))},[])}});var FCI=w(($Vb)=>{$Vb.quote=vOG();$Vb.parse=aOG()});import I2 from"node:path";import zOG from"node:os";import RCI from"node:process";function hCI(I,{suffix:G="nodejs"}={}){if(typeof I!=="string")throw TypeError(`Expected a string, got ${typeof I}`);if(G)I+=`-${G}`;if(RCI.platform==="darwin")return rVb(I);if(RCI.platform==="win32")return eVb(I);return I2b(I)}var Qu,HCI,kM,rVb=(I)=>{let G=I2.join(Qu,"Library");return{data:I2.join(G,"Application Support",I),config:I2.join(G,"Preferences",I),cache:I2.join(G,"Caches",I),log:I2.join(G,"Logs",I),temp:I2.join(HCI,I)}},eVb=(I)=>{let G=kM.APPDATA||I2.join(Qu,"AppData","Roaming"),Z=kM.LOCALAPPDATA||I2.join(Qu,"AppData","Local");return{data:I2.join(Z,I,"Data"),config:I2.join(G,I,"Config"),cache:I2.join(Z,I,"Cache"),log:I2.join(Z,I,"Log"),temp:I2.join(HCI,I)}},I2b=(I)=>{let G=I2.basename(Qu);return{data:I2.join(kM.XDG_DATA_HOME||I2.join(Qu,".local","share"),I),config:I2.join(kM.XDG_CONFIG_HOME||I2.join(Qu,".config"),I),cache:I2.join(kM.XDG_CACHE_HOME||I2.join(Qu,".cache"),I),log:I2.join(kM.XDG_STATE_HOME||I2.join(Qu,".local","state"),I),temp:I2.join(HCI,G,I)}};var BOG=a(()=>{Qu=zOG.homedir(),HCI=zOG.tmpdir(),{env:kM}=RCI});import{existsSync as L5,mkdirSync as alI}from"fs";import{dirname as ECI,join as Xu}from"path";import{writeFileSync as UM,readFileSync as UOG}from"fs";import{randomUUID as G2b}from"crypto";import{promises as kOG}from"fs";function JCI(I){return I.replace(/[^a-zA-Z0-9]/g,"-")}function zlI(I){return I.toISOString().replace(/[:.]/g,"-")}function l2b(){return Xu(VF.errors(),xOG+".txt")}function Fu(I,G,Z){return Xu(VF.messages(),`${I}${G>0?`-${G}`:""}${Z>0?`-sidechain-${Z}`:""}.json`)}function DG(I){try{let G=I instanceof Error?I.stack||I.message:String(I),Z={error:G,timestamp:new Date().toISOString()};if(glI.length>=Z2b)glI.shift();glI.push(Z),b2b(l2b(),{error:G})}catch{}BlI(I)}function OOG(){return[...glI]}function MOG(I){if(!L5(I))return[];try{return JSON.parse(UOG(I,"utf8"))}catch{return[]}}function b2b(I,G){if(process.env.USER_TYPE==="external")return;let Z=ECI(I);if(!L5(Z))alI(Z,{recursive:!0});if(!L5(I))UM(I,"[]","utf8");let l=MOG(I),b={...G,cwd:process.cwd(),userType:process.env.USER_TYPE,sessionId:cF,timestamp:new Date().toISOString(),version:"1.3.4"};l.push(b),UM(I,JSON.stringify(l,null,2),"utf8")}function xM(I,G){if(process.env.USER_TYPE==="external")return;if(!G.length)return;let Z=ECI(I);if(!L5(Z))alI(Z,{recursive:!0});let l=G.map((b)=>({...b,cwd:process.cwd(),userType:process.env.USER_TYPE,sessionId:cF,timestamp:new Date().toISOString(),version:"1.3.4"}));UM(I,JSON.stringify(l,null,2),"utf8")}async function OM(I=VF.messages()){if(!L5(I))return DG(`No logs found at ${I}`),[];let G=pCI(),Z=await kOG.readdir(I),l=await Promise.all(Z.filter((b)=>b.endsWith(".json")&&!b.startsWith("_")).map(async(b,W)=>{let N=Xu(I,b),Y=await kOG.readFile(N,"utf8"),c=JSON.parse(Y),V=c[0],d=c[c.length-1],Q=V?.type==="user"&&typeof V?.message?.content==="string"?V?.message?.content:"No prompt",{date:X,forkNumber:R,sidechainNumber:H}=vCI(b);return{date:X,forkNumber:R,fullPath:N,messages:c,value:W,created:ACI(V?.timestamp||X),modified:d?.timestamp?ACI(d.timestamp):ACI(X),firstPrompt:Q.split(`
43
43
  `)[0]?.slice(0,50)+(Q.length>50?"…":"")||"No prompt",messageCount:c.length,sidechainNumber:H,title:G[X]}}));return W2b(l.filter((b)=>b.messages.length)).map((b,W)=>({...b,value:W}))}function vCI(I){let G=I.split(".")[0],Z=G.split("-"),l=G.includes("-sidechain-"),b=G,W=void 0,N=void 0;if(l){let Y=Z.indexOf("sidechain");if(N=Number(Z[Y+1]),Y>6)W=Number(Z[Y-1]),b=Z.slice(0,6).join("-");else b=Z.slice(0,6).join("-")}else if(Z.length>6){let Y=Number(Z[Z.length-1]);W=Y>=0?Y:void 0,b=Z.slice(0,6).join("-")}else b=G;return{date:b,forkNumber:W,sidechainNumber:N}}function MM(I,G,Z){while(L5(Fu(I,G,Z)))G++;return G}function KOG(I,G){let Z=1;while(L5(Fu(I,G,Z)))Z++;return Z}function W2b(I){return I.sort((G,Z)=>{let l=Z.modified.getTime()-G.modified.getTime();if(l!==0)return l;let b=Z.created.getTime()-G.created.getTime();if(b!==0)return b;return(Z.forkNumber??0)-(G.forkNumber??0)})}function CCI(I){let G=new Date,Z=new Date(G);Z.setDate(Z.getDate()-1);let l=I.toDateString()===G.toDateString(),b=I.toDateString()===Z.toDateString(),W=I.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0}).toLowerCase();if(l)return`Today at ${W}`;else if(b)return`Yesterday at ${W}`;else return I.toLocaleDateString("en-US",{month:"short",day:"numeric"})+` at ${W}`}function ACI(I){let G=I.split(/\D+/);return new Date(Date.UTC(parseInt(G[0],10),parseInt(G[1],10)-1,parseInt(G[2],10),parseInt(G[3],10),parseInt(G[4],10),parseInt(G[5],10),parseInt(G[6],10)))}function DOG(){return Xu(VF.messages(),"_titles.json")}function pCI(){let I=DOG();if(!L5(I))return{};try{return JSON.parse(UOG(I,"utf8"))}catch{return{}}}function jOG(I,G){let Z=DOG(),l=ECI(Z);if(!L5(l))alI(l,{recursive:!0});let b=pCI();b[I]=G,UM(Z,JSON.stringify(b,null,2),"utf8")}function nOG(I){return pCI()[I]}function Lh(I,G){try{let Z=VF.mcpLogs(I),l=G instanceof Error?G.stack||G.message:String(G),b=new Date().toISOString(),W=Xu(Z,xOG+".txt");if(!L5(Z))alI(Z,{recursive:!0});if(!L5(W))UM(W,"[]","utf8");let N={error:l,timestamp:b,sessionId:cF,cwd:process.cwd()},Y=MOG(W);Y.push(N),UM(W,JSON.stringify(Y,null,2),"utf8")}catch{}}var glI,Z2b=100,cF,wCI,VF,xOG;var Ul=a(()=>{klI();BOG();glI=[],cF=G2b(),wCI=hCI("claude-cli");VF={errors:()=>Xu(wCI.cache,JCI(process.cwd()),"errors"),messages:()=>Xu(wCI.cache,JCI(process.cwd()),"messages"),mcpLogs:(I)=>Xu(wCI.cache,JCI(process.cwd()),`mcp-logs-${I}`)};xOG=zlI(new Date)});var YG=w((N2b,UlI)=>{(function(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==="function")__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var I="18.3.1",G=Symbol.for("react.element"),Z=Symbol.for("react.portal"),l=Symbol.for("react.fragment"),b=Symbol.for("react.strict_mode"),W=Symbol.for("react.profiler"),N=Symbol.for("react.provider"),Y=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),V=Symbol.for("react.suspense"),d=Symbol.for("react.suspense_list"),Q=Symbol.for("react.memo"),X=Symbol.for("react.lazy"),R=Symbol.for("react.offscreen"),H=Symbol.iterator,h="@@iterator";function A(WI){if(WI===null||typeof WI!=="object")return null;var iI=H&&WI[H]||WI[h];if(typeof iI==="function")return iI;return null}var C={current:null},g={transition:null},z={current:null,isBatchingLegacy:!1,didScheduleLegacyUpdate:!1},k={current:null},x={},n=null;function _(WI){n=WI}x.setExtraStackFrame=function(WI){n=WI},x.getCurrentStack=null,x.getStackAddendum=function(){var WI="";if(n)WI+=n;var iI=x.getCurrentStack;if(iI)WI+=iI()||"";return WI};var lI=!1,t=!1,aI=!1,QI=!1,lG=!1,uI={ReactCurrentDispatcher:C,ReactCurrentBatchConfig:g,ReactCurrentOwner:k};uI.ReactDebugCurrentFrame=x,uI.ReactCurrentActQueue=z;function ZI(WI){{for(var iI=arguments.length,MG=Array(iI>1?iI-1:0),nG=1;nG<iI;nG++)MG[nG-1]=arguments[nG];EI("warn",WI,MG)}}function zI(WI){{for(var iI=arguments.length,MG=Array(iI>1?iI-1:0),nG=1;nG<iI;nG++)MG[nG-1]=arguments[nG];EI("error",WI,MG)}}function EI(WI,iI,MG){{var nG=uI.ReactDebugCurrentFrame,zZ=nG.getStackAddendum();if(zZ!=="")iI+="%s",MG=MG.concat([zZ]);var il=MG.map(function(pl){return String(pl)});il.unshift("Warning: "+iI),Function.prototype.apply.call(console[WI],console,il)}}var VI={};function JI(WI,iI){{var MG=WI.constructor,nG=MG&&(MG.displayName||MG.name)||"ReactClass",zZ=nG+"."+iI;if(VI[zZ])return;zI("Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.",iI,nG),VI[zZ]=!0}}var LI={isMounted:function(WI){return!1},enqueueForceUpdate:function(WI,iI,MG){JI(WI,"forceUpdate")},enqueueReplaceState:function(WI,iI,MG,nG){JI(WI,"replaceState")},enqueueSetState:function(WI,iI,MG,nG){JI(WI,"setState")}},MI=Object.assign,BI={};Object.freeze(BI);function FG(WI,iI,MG){this.props=WI,this.context=iI,this.refs=BI,this.updater=MG||LI}FG.prototype.isReactComponent={},FG.prototype.setState=function(WI,iI){if(typeof WI!=="object"&&typeof WI!=="function"&&WI!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,WI,iI,"setState")},FG.prototype.forceUpdate=function(WI){this.updater.enqueueForceUpdate(this,WI,"forceUpdate")};{var f={isMounted:["isMounted","Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks."],replaceState:["replaceState","Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236)."]},P=function(WI,iI){Object.defineProperty(FG.prototype,WI,{get:function(){ZI("%s(...) is deprecated in plain JavaScript React classes. %s",iI[0],iI[1]);return}})};for(var NI in f)if(f.hasOwnProperty(NI))P(NI,f[NI])}function GG(){}GG.prototype=FG.prototype;function ZG(WI,iI,MG){this.props=WI,this.context=iI,this.refs=BI,this.updater=MG||LI}var cG=ZG.prototype=new GG;cG.constructor=ZG,MI(cG,FG.prototype),cG.isPureReactComponent=!0;function bI(){var WI={current:null};return Object.seal(WI),WI}var dI=Array.isArray;function CI(WI){return dI(WI)}function gI(WI){{var iI=typeof Symbol==="function"&&Symbol.toStringTag,MG=iI&&WI[Symbol.toStringTag]||WI.constructor.name||"Object";return MG}}function DI(WI){try{return UI(WI),!1}catch(iI){return!0}}function UI(WI){return""+WI}function sI(WI){if(DI(WI))return zI("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",gI(WI)),UI(WI)}function r(WI,iI,MG){var nG=WI.displayName;if(nG)return nG;var zZ=iI.displayName||iI.name||"";return zZ!==""?MG+"("+zZ+")":MG}function AI(WI){return WI.displayName||"Context"}function yI(WI){if(WI==null)return null;if(typeof WI.tag==="number")zI("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.");if(typeof WI==="function")return WI.displayName||WI.name||null;if(typeof WI==="string")return WI;switch(WI){case l:return"Fragment";case Z:return"Portal";case W:return"Profiler";case b:return"StrictMode";case V:return"Suspense";case d:return"SuspenseList"}if(typeof WI==="object")switch(WI.$$typeof){case Y:var iI=WI;return AI(iI)+".Consumer";case N:var MG=WI;return AI(MG._context)+".Provider";case c:return r(WI,WI.render,"ForwardRef");case Q:var nG=WI.displayName||null;if(nG!==null)return nG;return yI(WI.type)||"Memo";case X:{var zZ=WI,il=zZ._payload,pl=zZ._init;try{return yI(pl(il))}catch(Hb){return null}}}return null}var qI=Object.prototype.hasOwnProperty,rI={key:!0,ref:!0,__self:!0,__source:!0},BG,CG,NZ;NZ={};function jZ(WI){if(qI.call(WI,"ref")){var iI=Object.getOwnPropertyDescriptor(WI,"ref").get;if(iI&&iI.isReactWarning)return!1}return WI.ref!==void 0}function iG(WI){if(qI.call(WI,"key")){var iI=Object.getOwnPropertyDescriptor(WI,"key").get;if(iI&&iI.isReactWarning)return!1}return WI.key!==void 0}function hG(WI,iI){var MG=function(){if(!BG)BG=!0,zI("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",iI)};MG.isReactWarning=!0,Object.defineProperty(WI,"key",{get:MG,configurable:!0})}function vG(WI,iI){var MG=function(){if(!CG)CG=!0,zI("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",iI)};MG.isReactWarning=!0,Object.defineProperty(WI,"ref",{get:MG,configurable:!0})}function GZ(WI){if(typeof WI.ref==="string"&&k.current&&WI.__self&&k.current.stateNode!==WI.__self){var iI=yI(k.current.type);if(!NZ[iI])zI('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',iI,WI.ref),NZ[iI]=!0}}var xZ=function(WI,iI,MG,nG,zZ,il,pl){var Hb={$$typeof:G,type:WI,key:iI,ref:MG,props:pl,_owner:il};if(Hb._store={},Object.defineProperty(Hb._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(Hb,"_self",{configurable:!1,enumerable:!1,writable:!1,value:nG}),Object.defineProperty(Hb,"_source",{configurable:!1,enumerable:!1,writable:!1,value:zZ}),Object.freeze)Object.freeze(Hb.props),Object.freeze(Hb);return Hb};function tG(WI,iI,MG){var nG,zZ={},il=null,pl=null,Hb=null,pb=null;if(iI!=null){if(jZ(iI))pl=iI.ref,GZ(iI);if(iG(iI))sI(iI.key),il=""+iI.key;Hb=iI.__self===void 0?null:iI.__self,pb=iI.__source===void 0?null:iI.__source;for(nG in iI)if(qI.call(iI,nG)&&!rI.hasOwnProperty(nG))zZ[nG]=iI[nG]}var hb=arguments.length-2;if(hb===1)zZ.children=MG;else if(hb>1){var kN=Array(hb);for(var UN=0;UN<hb;UN++)kN[UN]=arguments[UN+2];if(Object.freeze)Object.freeze(kN);zZ.children=kN}if(WI&&WI.defaultProps){var _Z=WI.defaultProps;for(nG in _Z)if(zZ[nG]===void 0)zZ[nG]=_Z[nG]}if(il||pl){var JN=typeof WI==="function"?WI.displayName||WI.name||"Unknown":WI;if(il)hG(zZ,JN);if(pl)vG(zZ,JN)}return xZ(WI,il,pl,Hb,pb,k.current,zZ)}function EG(WI,iI){var MG=xZ(WI.type,iI,WI.ref,WI._self,WI._source,WI._owner,WI.props);return MG}function gG(WI,iI,MG){if(WI===null||WI===void 0)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+WI+".");var nG,zZ=MI({},WI.props),il=WI.key,pl=WI.ref,Hb=WI._self,pb=WI._source,hb=WI._owner;if(iI!=null){if(jZ(iI))pl=iI.ref,hb=k.current;if(iG(iI))sI(iI.key),il=""+iI.key;var kN;if(WI.type&&WI.type.defaultProps)kN=WI.type.defaultProps;for(nG in iI)if(qI.call(iI,nG)&&!rI.hasOwnProperty(nG))if(iI[nG]===void 0&&kN!==void 0)zZ[nG]=kN[nG];else zZ[nG]=iI[nG]}var UN=arguments.length-2;if(UN===1)zZ.children=MG;else if(UN>1){var _Z=Array(UN);for(var JN=0;JN<UN;JN++)_Z[JN]=arguments[JN+2];zZ.children=_Z}return xZ(WI.type,il,pl,Hb,pb,hb,zZ)}function _G(WI){return typeof WI==="object"&&WI!==null&&WI.$$typeof===G}var IZ=".",j=":";function S(WI){var iI=/[=:]/g,MG={"=":"=0",":":"=2"},nG=WI.replace(iI,function(zZ){return MG[zZ]});return"$"+nG}var xI=!1,_I=/\/+/g;function kI(WI){return WI.replace(_I,"$&/")}function SI(WI,iI){if(typeof WI==="object"&&WI!==null&&WI.key!=null)return sI(WI.key),S(""+WI.key);return iI.toString(36)}function jG(WI,iI,MG,nG,zZ){var il=typeof WI;if(il==="undefined"||il==="boolean")WI=null;var pl=!1;if(WI===null)pl=!0;else switch(il){case"string":case"number":pl=!0;break;case"object":switch(WI.$$typeof){case G:case Z:pl=!0}}if(pl){var Hb=WI,pb=zZ(Hb),hb=nG===""?IZ+SI(Hb,0):nG;if(CI(pb)){var kN="";if(hb!=null)kN=kI(hb)+"/";jG(pb,iI,kN,"",function(HR){return HR})}else if(pb!=null){if(_G(pb)){if(pb.key&&(!Hb||Hb.key!==pb.key))sI(pb.key);pb=EG(pb,MG+(pb.key&&(!Hb||Hb.key!==pb.key)?kI(""+pb.key)+"/":"")+hb)}iI.push(pb)}return 1}var UN,_Z,JN=0,cW=nG===""?IZ:nG+j;if(CI(WI))for(var i0=0;i0<WI.length;i0++)UN=WI[i0],_Z=cW+SI(UN,i0),JN+=jG(UN,iI,MG,_Z,zZ);else{var BQ=A(WI);if(typeof BQ==="function"){var nV=WI;if(BQ===nV.entries){if(!xI)ZI("Using Maps as children is not supported. Use an array of keyed ReactElements instead.");xI=!0}var am=BQ.call(nV),nX,kQ=0;while(!(nX=am.next()).done)UN=nX.value,_Z=cW+SI(UN,kQ++),JN+=jG(UN,iI,MG,_Z,zZ)}else if(il==="object"){var P0=String(WI);throw Error("Objects are not valid as a React child (found: "+(P0==="[object Object]"?"object with keys {"+Object.keys(WI).join(", ")+"}":P0)+"). If you meant to render a collection of children, use an array instead.")}}return JN}function yG(WI,iI,MG){if(WI==null)return WI;var nG=[],zZ=0;return jG(WI,nG,"","",function(il){return iI.call(MG,il,zZ++)}),nG}function UG(WI){var iI=0;return yG(WI,function(){iI++}),iI}function pZ(WI,iI,MG){yG(WI,function(){iI.apply(this,arguments)},MG)}function ul(WI){return yG(WI,function(iI){return iI})||[]}function ll(WI){if(!_G(WI))throw Error("React.Children.only expected to receive a single React element child.");return WI}function Nb(WI){var iI={$$typeof:Y,_currentValue:WI,_currentValue2:WI,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null};iI.Provider={$$typeof:N,_context:iI};var MG=!1,nG=!1,zZ=!1;{var il={$$typeof:Y,_context:iI};Object.defineProperties(il,{Provider:{get:function(){if(!nG)nG=!0,zI("Rendering <Context.Consumer.Provider> is not supported and will be removed in a future major release. Did you mean to render <Context.Provider> instead?");return iI.Provider},set:function(pl){iI.Provider=pl}},_currentValue:{get:function(){return iI._currentValue},set:function(pl){iI._currentValue=pl}},_currentValue2:{get:function(){return iI._currentValue2},set:function(pl){iI._currentValue2=pl}},_threadCount:{get:function(){return iI._threadCount},set:function(pl){iI._threadCount=pl}},Consumer:{get:function(){if(!MG)MG=!0,zI("Rendering <Context.Consumer.Consumer> is not supported and will be removed in a future major release. Did you mean to render <Context.Consumer> instead?");return iI.Consumer}},displayName:{get:function(){return iI.displayName},set:function(pl){if(!zZ)ZI("Setting `displayName` on Context.Consumer has no effect. You should set it directly on the context with Context.displayName = '%s'.",pl),zZ=!0}}}),iI.Consumer=il}return iI._currentRenderer=null,iI._currentRenderer2=null,iI}var db=-1,Ll=0,Db=1,hc=2;function KV(WI){if(WI._status===db){var iI=WI._result,MG=iI();if(MG.then(function(il){if(WI._status===Ll||WI._status===db){var pl=WI;pl._status=Db,pl._result=il}},function(il){if(WI._status===Ll||WI._status===db){var pl=WI;pl._status=hc,pl._result=il}}),WI._status===db){var nG=WI;nG._status=Ll,nG._result=MG}}if(WI._status===Db){var zZ=WI._result;if(zZ===void 0)zI(`lazy: Expected the result of a dynamic import() call. Instead received: %s
44
44
 
45
45
  Your code should look like:
@@ -66,12 +66,12 @@ Check the top-level render call using <`+MG+">."}return iI}function F2(WI,iI){if
66
66
  `:`
67
67
  `)+Z,b=l+1,l=I.indexOf(`
68
68
  `,b)}while(l!==-1);return W+=I.slice(b),W}function pS(I){return h2b(I)}var tOG,rOG,uCI,KM,CS,eOG,DM,H2b=(I,G={})=>{if(G.level&&!(Number.isInteger(G.level)&&G.level>=0&&G.level<=3))throw Error("The `level` option should be an integer from 0 to 3");let Z=tOG?tOG.level:0;I.level=G.level===void 0?Z:G.level},h2b=(I)=>{let G=(...Z)=>Z.join(" ");return H2b(G,I),Object.setPrototypeOf(G,pS.prototype),G},LCI=(I,G,Z,...l)=>{if(I==="rgb"){if(G==="ansi16m")return g5[Z].ansi16m(...l);if(G==="ansi256")return g5[Z].ansi256(g5.rgbToAnsi256(...l));return g5[Z].ansi(g5.rgbToAnsi(...l))}if(I==="hex")return LCI("rgb",G,Z,...g5.hexToRgb(...l));return g5[Z][I](...l)},w2b,J2b,gCI=(I,G,Z)=>{let l,b;if(Z===void 0)l=I,b=G;else l=Z.openAll+I,b=G+Z.closeAll;return{open:I,close:G,openAll:l,closeAll:b,parent:Z}},OlI=(I,G,Z)=>{let l=(...b)=>A2b(l,b.length===1?""+b[0]:b.join(" "));return Object.setPrototypeOf(l,J2b),l[uCI]=I,l[KM]=G,l[CS]=Z,l},A2b=(I,G)=>{if(I.level<=0||!G)return I[CS]?"":G;let Z=I[KM];if(Z===void 0)return G;let{openAll:l,closeAll:b}=Z;if(G.includes("\x1B"))while(Z!==void 0)G=$OG(G,Z.close,Z.open),Z=Z.parent;let W=G.indexOf(`
69
- `);if(W!==-1)G=oOG(G,b,l,W);return l+G+b},E2b,lRY,aZ;var Mc=a(()=>{iOG();sOG();({stdout:tOG,stderr:rOG}=fOG),uCI=Symbol("GENERATOR"),KM=Symbol("STYLER"),CS=Symbol("IS_EMPTY"),eOG=["ansi","ansi","ansi256","ansi16m"],DM=Object.create(null);Object.setPrototypeOf(pS.prototype,Function.prototype);for(let[I,G]of Object.entries(g5))DM[I]={get(){let Z=OlI(this,gCI(G.open,G.close,this[KM]),this[CS]);return Object.defineProperty(this,I,{value:Z}),Z}};DM.visible={get(){let I=OlI(this,this[KM],!0);return Object.defineProperty(this,"visible",{value:I}),I}};w2b=["rgb","hex","ansi256"];for(let I of w2b){DM[I]={get(){let{level:Z}=this;return function(...l){let b=gCI(LCI(I,eOG[Z],"color",...l),g5.color.close,this[KM]);return OlI(this,b,this[CS])}}};let G="bg"+I[0].toUpperCase()+I.slice(1);DM[G]={get(){let{level:Z}=this;return function(...l){let b=gCI(LCI(I,eOG[Z],"bgColor",...l),g5.bgColor.close,this[KM]);return OlI(this,b,this[CS])}}}}J2b=Object.defineProperties(()=>{},{...DM,level:{enumerable:!0,get(){return this[uCI].level},set(I){this[uCI].level=I}}});Object.defineProperties(pS.prototype,DM);E2b=pS(),lRY=pS({level:rOG?rOG.level:0}),aZ=E2b});var v2b,C2b,p2b;var IMG=a(()=>{v2b={visibilityState:"visible",documentElement:{lang:"en"},addEventListener:(I,G)=>{}},C2b={document:v2b,location:{href:"node://localhost",pathname:"/"},addEventListener:(I,G)=>{if(I==="beforeunload")process.on("exit",()=>{if(typeof G==="function")G({});else G.handleEvent({})})},focus:()=>{},innerHeight:768,innerWidth:1024},p2b={sendBeacon:(I,G)=>{return!0},userAgent:"Mozilla/5.0 (Node.js) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0",language:"en-US"};if(typeof window>"u")global.window=C2b;if(typeof navigator>"u")global.navigator=p2b});var GMG="tengu-token-efficient-tools",ZMG="token-efficient-tools-2024-12-11",lMG="tengu-use-external-updater",bMG="claude-code-20250219";var MlI;var aCI=a(()=>{wY();TW();MlI=cb(async()=>{let I=[bMG];if(process.env.USER_TYPE==="ant"||process.env.SWE_BENCH){if(await Ru(GMG))I.push(ZMG)}return I})});async function KlI(){try{let[I,G,Z,l,b]=await Promise.all([y2b(),u2b(),WMG(),L2b(),g2b()]);return{commitHash:I,branchName:G,remoteUrl:Z,isHeadOnRemote:l,isClean:b}}catch(I){return null}}var ah,y2b=async()=>{let{stdout:I}=await SW("git",["rev-parse","HEAD"]);return I.trim()},u2b=async()=>{let{stdout:I}=await SW("git",["rev-parse","--abbrev-ref","HEAD"],void 0,void 0,!1);return I.trim()},WMG=async()=>{let{stdout:I,code:G}=await SW("git",["remote","get-url","origin"],void 0,void 0,!1);return G===0?I.trim():null},L2b=async()=>{let{code:I}=await SW("git",["rev-parse","@{u}"],void 0,void 0,!1);return I===0},g2b=async()=>{let{stdout:I}=await SW("git",["status","--porcelain"],void 0,void 0,!1);return I.trim().length===0},jM=async()=>{let I=await WMG();if(I&&/github/i.test(I))return"github";return"gitlab"};var a5=a(()=>{wY();iR();ah=cb(async()=>{let{code:I}=await SW("git",["rev-parse","--is-inside-work-tree"]);return I===0})});var wz;var DlI=a(()=>{wz=`claude-cli/1.3.2 (${process.env.USER_TYPE})`});var dMG=w((VMG)=>{Object.defineProperty(VMG,"__esModule",{value:!0});var NMG=KI("buffer"),Jz={INVALID_ENCODING:"Invalid encoding provided. Please specify a valid encoding the internal Node.js Buffer supports.",INVALID_SMARTBUFFER_SIZE:"Invalid size provided. Size must be a valid integer greater than zero.",INVALID_SMARTBUFFER_BUFFER:"Invalid Buffer provided in SmartBufferOptions.",INVALID_SMARTBUFFER_OBJECT:"Invalid SmartBufferOptions object supplied to SmartBuffer constructor or factory methods.",INVALID_OFFSET:"An invalid offset value was provided.",INVALID_OFFSET_NON_NUMBER:"An invalid offset value was provided. A numeric value is required.",INVALID_LENGTH:"An invalid length value was provided.",INVALID_LENGTH_NON_NUMBER:"An invalid length value was provived. A numeric value is required.",INVALID_TARGET_OFFSET:"Target offset is beyond the bounds of the internal SmartBuffer data.",INVALID_TARGET_LENGTH:"Specified length value moves cursor beyong the bounds of the internal SmartBuffer data.",INVALID_READ_BEYOND_BOUNDS:"Attempted to read beyond the bounds of the managed data.",INVALID_WRITE_BEYOND_BOUNDS:"Attempted to write beyond the bounds of the managed data."};VMG.ERRORS=Jz;function a2b(I){if(!NMG.Buffer.isEncoding(I))throw Error(Jz.INVALID_ENCODING)}VMG.checkEncoding=a2b;function YMG(I){return typeof I==="number"&&isFinite(I)&&U2b(I)}VMG.isFiniteInteger=YMG;function cMG(I,G){if(typeof I==="number"){if(!YMG(I)||I<0)throw Error(G?Jz.INVALID_OFFSET:Jz.INVALID_LENGTH)}else throw Error(G?Jz.INVALID_OFFSET_NON_NUMBER:Jz.INVALID_LENGTH_NON_NUMBER)}function z2b(I){cMG(I,!1)}VMG.checkLengthValue=z2b;function B2b(I){cMG(I,!0)}VMG.checkOffsetValue=B2b;function k2b(I,G){if(I<0||I>G.length)throw Error(Jz.INVALID_TARGET_OFFSET)}VMG.checkTargetOffset=k2b;function U2b(I){return typeof I==="number"&&isFinite(I)&&Math.floor(I)===I}function x2b(I){if(typeof BigInt>"u")throw Error("Platform does not support JS BigInt type.");if(typeof NMG.Buffer.prototype[I]>"u")throw Error(`Platform does not support Buffer.prototype.${I}.`)}VMG.bigIntAndBufferInt64Check=x2b});var XMG=w((QMG)=>{Object.defineProperty(QMG,"__esModule",{value:!0});var iW=dMG(),mMG=4096,T2b="utf8";class zCI{constructor(I){if(this.length=0,this._encoding=T2b,this._writeOffset=0,this._readOffset=0,zCI.isSmartBufferOptions(I)){if(I.encoding)iW.checkEncoding(I.encoding),this._encoding=I.encoding;if(I.size)if(iW.isFiniteInteger(I.size)&&I.size>0)this._buff=Buffer.allocUnsafe(I.size);else throw Error(iW.ERRORS.INVALID_SMARTBUFFER_SIZE);else if(I.buff)if(Buffer.isBuffer(I.buff))this._buff=I.buff,this.length=I.buff.length;else throw Error(iW.ERRORS.INVALID_SMARTBUFFER_BUFFER);else this._buff=Buffer.allocUnsafe(mMG)}else{if(typeof I<"u")throw Error(iW.ERRORS.INVALID_SMARTBUFFER_OBJECT);this._buff=Buffer.allocUnsafe(mMG)}}static fromSize(I,G){return new this({size:I,encoding:G})}static fromBuffer(I,G){return new this({buff:I,encoding:G})}static fromOptions(I){return new this(I)}static isSmartBufferOptions(I){let G=I;return G&&(G.encoding!==void 0||G.size!==void 0||G.buff!==void 0)}readInt8(I){return this._readNumberValue(Buffer.prototype.readInt8,1,I)}readInt16BE(I){return this._readNumberValue(Buffer.prototype.readInt16BE,2,I)}readInt16LE(I){return this._readNumberValue(Buffer.prototype.readInt16LE,2,I)}readInt32BE(I){return this._readNumberValue(Buffer.prototype.readInt32BE,4,I)}readInt32LE(I){return this._readNumberValue(Buffer.prototype.readInt32LE,4,I)}readBigInt64BE(I){return iW.bigIntAndBufferInt64Check("readBigInt64BE"),this._readNumberValue(Buffer.prototype.readBigInt64BE,8,I)}readBigInt64LE(I){return iW.bigIntAndBufferInt64Check("readBigInt64LE"),this._readNumberValue(Buffer.prototype.readBigInt64LE,8,I)}writeInt8(I,G){return this._writeNumberValue(Buffer.prototype.writeInt8,1,I,G),this}insertInt8(I,G){return this._insertNumberValue(Buffer.prototype.writeInt8,1,I,G)}writeInt16BE(I,G){return this._writeNumberValue(Buffer.prototype.writeInt16BE,2,I,G)}insertInt16BE(I,G){return this._insertNumberValue(Buffer.prototype.writeInt16BE,2,I,G)}writeInt16LE(I,G){return this._writeNumberValue(Buffer.prototype.writeInt16LE,2,I,G)}insertInt16LE(I,G){return this._insertNumberValue(Buffer.prototype.writeInt16LE,2,I,G)}writeInt32BE(I,G){return this._writeNumberValue(Buffer.prototype.writeInt32BE,4,I,G)}insertInt32BE(I,G){return this._insertNumberValue(Buffer.prototype.writeInt32BE,4,I,G)}writeInt32LE(I,G){return this._writeNumberValue(Buffer.prototype.writeInt32LE,4,I,G)}insertInt32LE(I,G){return this._insertNumberValue(Buffer.prototype.writeInt32LE,4,I,G)}writeBigInt64BE(I,G){return iW.bigIntAndBufferInt64Check("writeBigInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigInt64BE,8,I,G)}insertBigInt64BE(I,G){return iW.bigIntAndBufferInt64Check("writeBigInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigInt64BE,8,I,G)}writeBigInt64LE(I,G){return iW.bigIntAndBufferInt64Check("writeBigInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigInt64LE,8,I,G)}insertBigInt64LE(I,G){return iW.bigIntAndBufferInt64Check("writeBigInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigInt64LE,8,I,G)}readUInt8(I){return this._readNumberValue(Buffer.prototype.readUInt8,1,I)}readUInt16BE(I){return this._readNumberValue(Buffer.prototype.readUInt16BE,2,I)}readUInt16LE(I){return this._readNumberValue(Buffer.prototype.readUInt16LE,2,I)}readUInt32BE(I){return this._readNumberValue(Buffer.prototype.readUInt32BE,4,I)}readUInt32LE(I){return this._readNumberValue(Buffer.prototype.readUInt32LE,4,I)}readBigUInt64BE(I){return iW.bigIntAndBufferInt64Check("readBigUInt64BE"),this._readNumberValue(Buffer.prototype.readBigUInt64BE,8,I)}readBigUInt64LE(I){return iW.bigIntAndBufferInt64Check("readBigUInt64LE"),this._readNumberValue(Buffer.prototype.readBigUInt64LE,8,I)}writeUInt8(I,G){return this._writeNumberValue(Buffer.prototype.writeUInt8,1,I,G)}insertUInt8(I,G){return this._insertNumberValue(Buffer.prototype.writeUInt8,1,I,G)}writeUInt16BE(I,G){return this._writeNumberValue(Buffer.prototype.writeUInt16BE,2,I,G)}insertUInt16BE(I,G){return this._insertNumberValue(Buffer.prototype.writeUInt16BE,2,I,G)}writeUInt16LE(I,G){return this._writeNumberValue(Buffer.prototype.writeUInt16LE,2,I,G)}insertUInt16LE(I,G){return this._insertNumberValue(Buffer.prototype.writeUInt16LE,2,I,G)}writeUInt32BE(I,G){return this._writeNumberValue(Buffer.prototype.writeUInt32BE,4,I,G)}insertUInt32BE(I,G){return this._insertNumberValue(Buffer.prototype.writeUInt32BE,4,I,G)}writeUInt32LE(I,G){return this._writeNumberValue(Buffer.prototype.writeUInt32LE,4,I,G)}insertUInt32LE(I,G){return this._insertNumberValue(Buffer.prototype.writeUInt32LE,4,I,G)}writeBigUInt64BE(I,G){return iW.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64BE,8,I,G)}insertBigUInt64BE(I,G){return iW.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64BE,8,I,G)}writeBigUInt64LE(I,G){return iW.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64LE,8,I,G)}insertBigUInt64LE(I,G){return iW.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64LE,8,I,G)}readFloatBE(I){return this._readNumberValue(Buffer.prototype.readFloatBE,4,I)}readFloatLE(I){return this._readNumberValue(Buffer.prototype.readFloatLE,4,I)}writeFloatBE(I,G){return this._writeNumberValue(Buffer.prototype.writeFloatBE,4,I,G)}insertFloatBE(I,G){return this._insertNumberValue(Buffer.prototype.writeFloatBE,4,I,G)}writeFloatLE(I,G){return this._writeNumberValue(Buffer.prototype.writeFloatLE,4,I,G)}insertFloatLE(I,G){return this._insertNumberValue(Buffer.prototype.writeFloatLE,4,I,G)}readDoubleBE(I){return this._readNumberValue(Buffer.prototype.readDoubleBE,8,I)}readDoubleLE(I){return this._readNumberValue(Buffer.prototype.readDoubleLE,8,I)}writeDoubleBE(I,G){return this._writeNumberValue(Buffer.prototype.writeDoubleBE,8,I,G)}insertDoubleBE(I,G){return this._insertNumberValue(Buffer.prototype.writeDoubleBE,8,I,G)}writeDoubleLE(I,G){return this._writeNumberValue(Buffer.prototype.writeDoubleLE,8,I,G)}insertDoubleLE(I,G){return this._insertNumberValue(Buffer.prototype.writeDoubleLE,8,I,G)}readString(I,G){let Z;if(typeof I==="number")iW.checkLengthValue(I),Z=Math.min(I,this.length-this._readOffset);else G=I,Z=this.length-this._readOffset;if(typeof G<"u")iW.checkEncoding(G);let l=this._buff.slice(this._readOffset,this._readOffset+Z).toString(G||this._encoding);return this._readOffset+=Z,l}insertString(I,G,Z){return iW.checkOffsetValue(G),this._handleString(I,!0,G,Z)}writeString(I,G,Z){return this._handleString(I,!1,G,Z)}readStringNT(I){if(typeof I<"u")iW.checkEncoding(I);let G=this.length;for(let l=this._readOffset;l<this.length;l++)if(this._buff[l]===0){G=l;break}let Z=this._buff.slice(this._readOffset,G);return this._readOffset=G+1,Z.toString(I||this._encoding)}insertStringNT(I,G,Z){return iW.checkOffsetValue(G),this.insertString(I,G,Z),this.insertUInt8(0,G+I.length),this}writeStringNT(I,G,Z){return this.writeString(I,G,Z),this.writeUInt8(0,typeof G==="number"?G+I.length:this.writeOffset),this}readBuffer(I){if(typeof I<"u")iW.checkLengthValue(I);let G=typeof I==="number"?I:this.length,Z=Math.min(this.length,this._readOffset+G),l=this._buff.slice(this._readOffset,Z);return this._readOffset=Z,l}insertBuffer(I,G){return iW.checkOffsetValue(G),this._handleBuffer(I,!0,G)}writeBuffer(I,G){return this._handleBuffer(I,!1,G)}readBufferNT(){let I=this.length;for(let Z=this._readOffset;Z<this.length;Z++)if(this._buff[Z]===0){I=Z;break}let G=this._buff.slice(this._readOffset,I);return this._readOffset=I+1,G}insertBufferNT(I,G){return iW.checkOffsetValue(G),this.insertBuffer(I,G),this.insertUInt8(0,G+I.length),this}writeBufferNT(I,G){if(typeof G<"u")iW.checkOffsetValue(G);return this.writeBuffer(I,G),this.writeUInt8(0,typeof G==="number"?G+I.length:this._writeOffset),this}clear(){return this._writeOffset=0,this._readOffset=0,this.length=0,this}remaining(){return this.length-this._readOffset}get readOffset(){return this._readOffset}set readOffset(I){iW.checkOffsetValue(I),iW.checkTargetOffset(I,this),this._readOffset=I}get writeOffset(){return this._writeOffset}set writeOffset(I){iW.checkOffsetValue(I),iW.checkTargetOffset(I,this),this._writeOffset=I}get encoding(){return this._encoding}set encoding(I){iW.checkEncoding(I),this._encoding=I}get internalBuffer(){return this._buff}toBuffer(){return this._buff.slice(0,this.length)}toString(I){let G=typeof I==="string"?I:this._encoding;return iW.checkEncoding(G),this._buff.toString(G,0,this.length)}destroy(){return this.clear(),this}_handleString(I,G,Z,l){let b=this._writeOffset,W=this._encoding;if(typeof Z==="number")b=Z;else if(typeof Z==="string")iW.checkEncoding(Z),W=Z;if(typeof l==="string")iW.checkEncoding(l),W=l;let N=Buffer.byteLength(I,W);if(G)this.ensureInsertable(N,b);else this._ensureWriteable(N,b);if(this._buff.write(I,b,N,W),G)this._writeOffset+=N;else if(typeof Z==="number")this._writeOffset=Math.max(this._writeOffset,b+N);else this._writeOffset+=N;return this}_handleBuffer(I,G,Z){let l=typeof Z==="number"?Z:this._writeOffset;if(G)this.ensureInsertable(I.length,l);else this._ensureWriteable(I.length,l);if(I.copy(this._buff,l),G)this._writeOffset+=I.length;else if(typeof Z==="number")this._writeOffset=Math.max(this._writeOffset,l+I.length);else this._writeOffset+=I.length;return this}ensureReadable(I,G){let Z=this._readOffset;if(typeof G<"u")iW.checkOffsetValue(G),Z=G;if(Z<0||Z+I>this.length)throw Error(iW.ERRORS.INVALID_READ_BEYOND_BOUNDS)}ensureInsertable(I,G){if(iW.checkOffsetValue(G),this._ensureCapacity(this.length+I),G<this.length)this._buff.copy(this._buff,G+I,G,this._buff.length);if(G+I>this.length)this.length=G+I;else this.length+=I}_ensureWriteable(I,G){let Z=typeof G==="number"?G:this._writeOffset;if(this._ensureCapacity(Z+I),Z+I>this.length)this.length=Z+I}_ensureCapacity(I){let G=this._buff.length;if(I>G){let Z=this._buff,l=G*3/2+1;if(l<I)l=I;this._buff=Buffer.allocUnsafe(l),Z.copy(this._buff,0,0,G)}}_readNumberValue(I,G,Z){this.ensureReadable(G,Z);let l=I.call(this._buff,typeof Z==="number"?Z:this._readOffset);if(typeof Z>"u")this._readOffset+=G;return l}_insertNumberValue(I,G,Z,l){return iW.checkOffsetValue(l),this.ensureInsertable(G,l),I.call(this._buff,Z,l),this._writeOffset+=G,this}_writeNumberValue(I,G,Z,l){if(typeof l==="number"){if(l<0)throw Error(iW.ERRORS.INVALID_WRITE_BEYOND_BOUNDS);iW.checkOffsetValue(l)}let b=typeof l==="number"?l:this._writeOffset;if(this._ensureWriteable(G,b),I.call(this._buff,Z,b),typeof l==="number")this._writeOffset=Math.max(this._writeOffset,b+G);else this._writeOffset+=G;return this}}QMG.SmartBuffer=zCI});var BCI=w((AMG)=>{Object.defineProperty(AMG,"__esModule",{value:!0});AMG.SOCKS5_NO_ACCEPTABLE_AUTH=AMG.SOCKS5_CUSTOM_AUTH_END=AMG.SOCKS5_CUSTOM_AUTH_START=AMG.SOCKS_INCOMING_PACKET_SIZES=AMG.SocksClientState=AMG.Socks5Response=AMG.Socks5HostType=AMG.Socks5Auth=AMG.Socks4Response=AMG.SocksCommand=AMG.ERRORS=AMG.DEFAULT_TIMEOUT=void 0;var i2b=30000;AMG.DEFAULT_TIMEOUT=i2b;var P2b={InvalidSocksCommand:"An invalid SOCKS command was provided. Valid options are connect, bind, and associate.",InvalidSocksCommandForOperation:"An invalid SOCKS command was provided. Only a subset of commands are supported for this operation.",InvalidSocksCommandChain:"An invalid SOCKS command was provided. Chaining currently only supports the connect command.",InvalidSocksClientOptionsDestination:"An invalid destination host was provided.",InvalidSocksClientOptionsExistingSocket:"An invalid existing socket was provided. This should be an instance of stream.Duplex.",InvalidSocksClientOptionsProxy:"Invalid SOCKS proxy details were provided.",InvalidSocksClientOptionsTimeout:"An invalid timeout value was provided. Please enter a value above 0 (in ms).",InvalidSocksClientOptionsProxiesLength:"At least two socks proxies must be provided for chaining.",InvalidSocksClientOptionsCustomAuthRange:"Custom auth must be a value between 0x80 and 0xFE.",InvalidSocksClientOptionsCustomAuthOptions:"When a custom_auth_method is provided, custom_auth_request_handler, custom_auth_response_size, and custom_auth_response_handler must also be provided and valid.",NegotiationError:"Negotiation error",SocketClosed:"Socket closed",ProxyConnectionTimedOut:"Proxy connection timed out",InternalError:"SocksClient internal error (this should not happen)",InvalidSocks4HandshakeResponse:"Received invalid Socks4 handshake response",Socks4ProxyRejectedConnection:"Socks4 Proxy rejected connection",InvalidSocks4IncomingConnectionResponse:"Socks4 invalid incoming connection response",Socks4ProxyRejectedIncomingBoundConnection:"Socks4 Proxy rejected incoming bound connection",InvalidSocks5InitialHandshakeResponse:"Received invalid Socks5 initial handshake response",InvalidSocks5IntiailHandshakeSocksVersion:"Received invalid Socks5 initial handshake (invalid socks version)",InvalidSocks5InitialHandshakeNoAcceptedAuthType:"Received invalid Socks5 initial handshake (no accepted authentication type)",InvalidSocks5InitialHandshakeUnknownAuthType:"Received invalid Socks5 initial handshake (unknown authentication type)",Socks5AuthenticationFailed:"Socks5 Authentication failed",InvalidSocks5FinalHandshake:"Received invalid Socks5 final handshake response",InvalidSocks5FinalHandshakeRejected:"Socks5 proxy rejected connection",InvalidSocks5IncomingConnectionResponse:"Received invalid Socks5 incoming connection response",Socks5ProxyRejectedIncomingBoundConnection:"Socks5 Proxy rejected incoming bound connection"};AMG.ERRORS=P2b;var _2b={Socks5InitialHandshakeResponse:2,Socks5UserPassAuthenticationResponse:2,Socks5ResponseHeader:5,Socks5ResponseIPv4:10,Socks5ResponseIPv6:22,Socks5ResponseHostname:(I)=>I+7,Socks4Response:8};AMG.SOCKS_INCOMING_PACKET_SIZES=_2b;var FMG;(function(I){I[I.connect=1]="connect",I[I.bind=2]="bind",I[I.associate=3]="associate"})(FMG||(AMG.SocksCommand=FMG={}));var RMG;(function(I){I[I.Granted=90]="Granted",I[I.Failed=91]="Failed",I[I.Rejected=92]="Rejected",I[I.RejectedIdent=93]="RejectedIdent"})(RMG||(AMG.Socks4Response=RMG={}));var HMG;(function(I){I[I.NoAuth=0]="NoAuth",I[I.GSSApi=1]="GSSApi",I[I.UserPass=2]="UserPass"})(HMG||(AMG.Socks5Auth=HMG={}));var f2b=128;AMG.SOCKS5_CUSTOM_AUTH_START=f2b;var s2b=254;AMG.SOCKS5_CUSTOM_AUTH_END=s2b;var $2b=255;AMG.SOCKS5_NO_ACCEPTABLE_AUTH=$2b;var hMG;(function(I){I[I.Granted=0]="Granted",I[I.Failure=1]="Failure",I[I.NotAllowed=2]="NotAllowed",I[I.NetworkUnreachable=3]="NetworkUnreachable",I[I.HostUnreachable=4]="HostUnreachable",I[I.ConnectionRefused=5]="ConnectionRefused",I[I.TTLExpired=6]="TTLExpired",I[I.CommandNotSupported=7]="CommandNotSupported",I[I.AddressNotSupported=8]="AddressNotSupported"})(hMG||(AMG.Socks5Response=hMG={}));var wMG;(function(I){I[I.IPv4=1]="IPv4",I[I.Hostname=3]="Hostname",I[I.IPv6=4]="IPv6"})(wMG||(AMG.Socks5HostType=wMG={}));var JMG;(function(I){I[I.Created=0]="Created",I[I.Connecting=1]="Connecting",I[I.Connected=2]="Connected",I[I.SentInitialHandshake=3]="SentInitialHandshake",I[I.ReceivedInitialHandshakeResponse=4]="ReceivedInitialHandshakeResponse",I[I.SentAuthentication=5]="SentAuthentication",I[I.ReceivedAuthenticationResponse=6]="ReceivedAuthenticationResponse",I[I.SentFinalHandshake=7]="SentFinalHandshake",I[I.ReceivedFinalResponse=8]="ReceivedFinalResponse",I[I.BoundWaitingForConnection=9]="BoundWaitingForConnection",I[I.Established=10]="Established",I[I.Disconnected=11]="Disconnected",I[I.Error=99]="Error"})(JMG||(AMG.SocksClientState=JMG={}))});var kCI=w((CMG)=>{Object.defineProperty(CMG,"__esModule",{value:!0});CMG.shuffleArray=CMG.SocksClientError=void 0;class vMG extends Error{constructor(I,G){super(I);this.options=G}}CMG.SocksClientError=vMG;function Ydb(I){for(let G=I.length-1;G>0;G--){let Z=Math.floor(Math.random()*(G+1));[I[G],I[Z]]=[I[Z],I[G]]}}CMG.shuffleArray=Ydb});var jlI=w((uMG)=>{Object.defineProperty(uMG,"__esModule",{value:!0});uMG.isInSubnet=Vdb;uMG.isCorrect=ddb;uMG.numberToPaddedHex=yMG;uMG.stringToPaddedHex=mdb;uMG.testBit=Qdb;function Vdb(I){if(this.subnetMask<I.subnetMask)return!1;if(this.mask(I.subnetMask)===I.mask())return!0;return!1}function ddb(I){return function(){if(this.addressMinusSuffix!==this.correctForm())return!1;if(this.subnetMask===I&&!this.parsedSubnet)return!0;return this.parsedSubnet===String(this.subnetMask)}}function yMG(I){return I.toString(16).padStart(2,"0")}function mdb(I){return yMG(parseInt(I,10))}function Qdb(I,G){let{length:Z}=I;if(G>Z)return!1;let l=Z-G;return I.substring(l,l+1)==="1"}});var UCI=w((LMG)=>{Object.defineProperty(LMG,"__esModule",{value:!0});LMG.RE_SUBNET_STRING=LMG.RE_ADDRESS=LMG.GROUPS=LMG.BITS=void 0;LMG.BITS=32;LMG.GROUPS=4;LMG.RE_ADDRESS=/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/g;LMG.RE_SUBNET_STRING=/\/\d{1,2}$/});var nlI=w((zMG)=>{Object.defineProperty(zMG,"__esModule",{value:!0});zMG.AddressError=void 0;class aMG extends Error{constructor(I,G){super(I);this.name="AddressError",this.parseMessage=G}}zMG.AddressError=aMG});var xCI=w((X4)=>{var Edb=X4&&X4.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;var b=Object.getOwnPropertyDescriptor(G,Z);if(!b||("get"in b?!G.__esModule:b.writable||b.configurable))b={enumerable:!0,get:function(){return G[Z]}};Object.defineProperty(I,l,b)}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),vdb=X4&&X4.__setModuleDefault||(Object.create?function(I,G){Object.defineProperty(I,"default",{enumerable:!0,value:G})}:function(I,G){I.default=G}),kMG=X4&&X4.__importStar||function(I){if(I&&I.__esModule)return I;var G={};if(I!=null){for(var Z in I)if(Z!=="default"&&Object.prototype.hasOwnProperty.call(I,Z))Edb(G,I,Z)}return vdb(G,I),G};Object.defineProperty(X4,"__esModule",{value:!0});X4.Address4=void 0;var nM=kMG(jlI()),z5=kMG(UCI()),yS=nlI();class PR{constructor(I){this.groups=z5.GROUPS,this.parsedAddress=[],this.parsedSubnet="",this.subnet="/32",this.subnetMask=32,this.v4=!0,this.isCorrect=nM.isCorrect(z5.BITS),this.isInSubnet=nM.isInSubnet,this.address=I;let G=z5.RE_SUBNET_STRING.exec(I);if(G){if(this.parsedSubnet=G[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,this.subnetMask<0||this.subnetMask>z5.BITS)throw new yS.AddressError("Invalid subnet mask.");I=I.replace(z5.RE_SUBNET_STRING,"")}this.addressMinusSuffix=I,this.parsedAddress=this.parse(I)}static isValid(I){try{return new PR(I),!0}catch(G){return!1}}parse(I){let G=I.split(".");if(!I.match(z5.RE_ADDRESS))throw new yS.AddressError("Invalid IPv4 address.");return G}correctForm(){return this.parsedAddress.map((I)=>parseInt(I,10)).join(".")}static fromHex(I){let G=I.replace(/:/g,"").padStart(8,"0"),Z=[],l;for(l=0;l<8;l+=2){let b=G.slice(l,l+2);Z.push(parseInt(b,16))}return new PR(Z.join("."))}static fromInteger(I){return PR.fromHex(I.toString(16))}static fromArpa(I){let Z=I.replace(/(\.in-addr\.arpa)?\.$/,"").split(".").reverse().join(".");return new PR(Z)}toHex(){return this.parsedAddress.map((I)=>nM.stringToPaddedHex(I)).join(":")}toArray(){return this.parsedAddress.map((I)=>parseInt(I,10))}toGroup6(){let I=[],G;for(G=0;G<z5.GROUPS;G+=2)I.push(`${nM.stringToPaddedHex(this.parsedAddress[G])}${nM.stringToPaddedHex(this.parsedAddress[G+1])}`);return I.join(":")}bigInt(){return BigInt(`0x${this.parsedAddress.map((I)=>nM.stringToPaddedHex(I)).join("")}`)}_startAddress(){return BigInt(`0b${this.mask()+"0".repeat(z5.BITS-this.subnetMask)}`)}startAddress(){return PR.fromBigInt(this._startAddress())}startAddressExclusive(){let I=BigInt("1");return PR.fromBigInt(this._startAddress()+I)}_endAddress(){return BigInt(`0b${this.mask()+"1".repeat(z5.BITS-this.subnetMask)}`)}endAddress(){return PR.fromBigInt(this._endAddress())}endAddressExclusive(){let I=BigInt("1");return PR.fromBigInt(this._endAddress()-I)}static fromBigInt(I){return PR.fromHex(I.toString(16))}static fromByteArray(I){if(I.length!==4)throw new yS.AddressError("IPv4 addresses require exactly 4 bytes");for(let G=0;G<I.length;G++)if(!Number.isInteger(I[G])||I[G]<0||I[G]>255)throw new yS.AddressError("All bytes must be integers between 0 and 255");return this.fromUnsignedByteArray(I)}static fromUnsignedByteArray(I){if(I.length!==4)throw new yS.AddressError("IPv4 addresses require exactly 4 bytes");let G=I.join(".");return new PR(G)}mask(I){if(I===void 0)I=this.subnetMask;return this.getBitsBase2(0,I)}getBitsBase2(I,G){return this.binaryZeroPad().slice(I,G)}reverseForm(I){if(!I)I={};let G=this.correctForm().split(".").reverse().join(".");if(I.omitSuffix)return G;return`${G}.in-addr.arpa.`}isMulticast(){return this.isInSubnet(new PR("224.0.0.0/4"))}binaryZeroPad(){return this.bigInt().toString(2).padStart(z5.BITS,"0")}groupForV6(){let I=this.parsedAddress;return this.address.replace(z5.RE_ADDRESS,`<span class="hover-group group-v4 group-6">${I.slice(0,2).join(".")}</span>.<span class="hover-group group-v4 group-7">${I.slice(2,4).join(".")}</span>`)}}X4.Address4=PR});var OCI=w((UMG)=>{Object.defineProperty(UMG,"__esModule",{value:!0});UMG.RE_URL_WITH_PORT=UMG.RE_URL=UMG.RE_ZONE_STRING=UMG.RE_SUBNET_STRING=UMG.RE_BAD_ADDRESS=UMG.RE_BAD_CHARACTERS=UMG.TYPES=UMG.SCOPES=UMG.GROUPS=UMG.BITS=void 0;UMG.BITS=128;UMG.GROUPS=8;UMG.SCOPES={0:"Reserved",1:"Interface local",2:"Link local",4:"Admin local",5:"Site local",8:"Organization local",14:"Global",15:"Reserved"};UMG.TYPES={"ff01::1/128":"Multicast (All nodes on this interface)","ff01::2/128":"Multicast (All routers on this interface)","ff02::1/128":"Multicast (All nodes on this link)","ff02::2/128":"Multicast (All routers on this link)","ff05::2/128":"Multicast (All routers in this site)","ff02::5/128":"Multicast (OSPFv3 AllSPF routers)","ff02::6/128":"Multicast (OSPFv3 AllDR routers)","ff02::9/128":"Multicast (RIP routers)","ff02::a/128":"Multicast (EIGRP routers)","ff02::d/128":"Multicast (PIM routers)","ff02::16/128":"Multicast (MLDv2 reports)","ff01::fb/128":"Multicast (mDNSv6)","ff02::fb/128":"Multicast (mDNSv6)","ff05::fb/128":"Multicast (mDNSv6)","ff02::1:2/128":"Multicast (All DHCP servers and relay agents on this link)","ff05::1:2/128":"Multicast (All DHCP servers and relay agents in this site)","ff02::1:3/128":"Multicast (All DHCP servers on this link)","ff05::1:3/128":"Multicast (All DHCP servers in this site)","::/128":"Unspecified","::1/128":"Loopback","ff00::/8":"Multicast","fe80::/10":"Link-local unicast"};UMG.RE_BAD_CHARACTERS=/([^0-9a-f:/%])/gi;UMG.RE_BAD_ADDRESS=/([0-9a-f]{5,}|:{3,}|[^:]:$|^:[^:]|\/$)/gi;UMG.RE_SUBNET_STRING=/\/\d{1,3}(?=%|$)/;UMG.RE_ZONE_STRING=/%.*$/;UMG.RE_URL=/^\[{0,1}([0-9a-f:]+)\]{0,1}/;UMG.RE_URL_WITH_PORT=/\[([0-9a-f:]+)\]:([0-9]{1,5})/});var MCI=w((KMG)=>{Object.defineProperty(KMG,"__esModule",{value:!0});KMG.spanAllZeroes=OMG;KMG.spanAll=kdb;KMG.spanLeadingZeroes=Udb;KMG.simpleGroup=xdb;function OMG(I){return I.replace(/(0+)/g,'<span class="zero">$1</span>')}function kdb(I,G=0){return I.split("").map((l,b)=>`<span class="digit value-${l} position-${b+G}">${OMG(l)}</span>`).join("")}function MMG(I){return I.replace(/^(0+)/,'<span class="zero">$1</span>')}function Udb(I){return I.split(":").map((Z)=>MMG(Z)).join(":")}function xdb(I,G=0){return I.split(":").map((l,b)=>{if(/group-v4/.test(l))return l;return`<span class="hover-group group-${b+G}">${MMG(l)}</span>`})}});var DMG=w((L1)=>{var jdb=L1&&L1.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;var b=Object.getOwnPropertyDescriptor(G,Z);if(!b||("get"in b?!G.__esModule:b.writable||b.configurable))b={enumerable:!0,get:function(){return G[Z]}};Object.defineProperty(I,l,b)}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),ndb=L1&&L1.__setModuleDefault||(Object.create?function(I,G){Object.defineProperty(I,"default",{enumerable:!0,value:G})}:function(I,G){I.default=G}),qdb=L1&&L1.__importStar||function(I){if(I&&I.__esModule)return I;var G={};if(I!=null){for(var Z in I)if(Z!=="default"&&Object.prototype.hasOwnProperty.call(I,Z))jdb(G,I,Z)}return ndb(G,I),G};Object.defineProperty(L1,"__esModule",{value:!0});L1.ADDRESS_BOUNDARY=void 0;L1.groupPossibilities=TlI;L1.padGroup=qlI;L1.simpleRegularExpression=Sdb;L1.possibleElisions=idb;var Tdb=qdb(OCI());function TlI(I){return`(${I.join("|")})`}function qlI(I){if(I.length<4)return`0{0,${4-I.length}}${I}`;return I}L1.ADDRESS_BOUNDARY="[^A-Fa-f0-9:]";function Sdb(I){let G=[];I.forEach((l,b)=>{if(parseInt(l,16)===0)G.push(b)});let Z=G.map((l)=>I.map((b,W)=>{if(W===l){let N=W===0||W===Tdb.GROUPS-1?":":"";return TlI([qlI(b),N])}return qlI(b)}).join(":"));return Z.push(I.map(qlI).join(":")),TlI(Z)}function idb(I,G,Z){let l=G?"":":",b=Z?"":":",W=[];if(!G&&!Z)W.push("::");if(G&&Z)W.push("");if(Z&&!G||!Z&&G)W.push(":");W.push(`${l}(:0{1,4}){1,${I-1}}`),W.push(`(0{1,4}:){1,${I-1}}${b}`),W.push(`(0{1,4}:){${I-1}}0{1,4}`);for(let N=1;N<I-1;N++)for(let Y=1;Y<I-N;Y++)W.push(`(0{1,4}:){${Y}}:(0{1,4}:){${I-Y-N-1}}0{1,4}`);return TlI(W)}});var TMG=w((F4)=>{var Pdb=F4&&F4.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;var b=Object.getOwnPropertyDescriptor(G,Z);if(!b||("get"in b?!G.__esModule:b.writable||b.configurable))b={enumerable:!0,get:function(){return G[Z]}};Object.defineProperty(I,l,b)}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),_db=F4&&F4.__setModuleDefault||(Object.create?function(I,G){Object.defineProperty(I,"default",{enumerable:!0,value:G})}:function(I,G){I.default=G}),PlI=F4&&F4.__importStar||function(I){if(I&&I.__esModule)return I;var G={};if(I!=null){for(var Z in I)if(Z!=="default"&&Object.prototype.hasOwnProperty.call(I,Z))Pdb(G,I,Z)}return _db(G,I),G};Object.defineProperty(F4,"__esModule",{value:!0});F4.Address6=void 0;var jMG=PlI(jlI()),KCI=PlI(UCI()),Kc=PlI(OCI()),DCI=PlI(MCI()),Az=xCI(),Ez=DMG(),ZC=nlI(),SlI=jlI();function ilI(I){if(!I)throw Error("Assertion failed.")}function fdb(I){let G=/(\d+)(\d{3})/;while(G.test(I))I=I.replace(G,"$1,$2");return I}function sdb(I){return I=I.replace(/^(0{1,})([1-9]+)$/,'<span class="parse-error">$1</span>$2'),I=I.replace(/^(0{1,})(0)$/,'<span class="parse-error">$1</span>$2'),I}function $db(I,G){let Z=[],l=[],b;for(b=0;b<I.length;b++)if(b<G[0])Z.push(I[b]);else if(b>G[1])l.push(I[b]);return Z.concat(["compact"]).concat(l)}function nMG(I){return parseInt(I,16).toString(16).padStart(4,"0")}function qMG(I){return I&255}class bm{constructor(I,G){if(this.addressMinusSuffix="",this.parsedSubnet="",this.subnet="/128",this.subnetMask=128,this.v4=!1,this.zone="",this.isInSubnet=jMG.isInSubnet,this.isCorrect=jMG.isCorrect(Kc.BITS),G===void 0)this.groups=Kc.GROUPS;else this.groups=G;this.address=I;let Z=Kc.RE_SUBNET_STRING.exec(I);if(Z){if(this.parsedSubnet=Z[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,Number.isNaN(this.subnetMask)||this.subnetMask<0||this.subnetMask>Kc.BITS)throw new ZC.AddressError("Invalid subnet mask.");I=I.replace(Kc.RE_SUBNET_STRING,"")}else if(/\//.test(I))throw new ZC.AddressError("Invalid subnet mask.");let l=Kc.RE_ZONE_STRING.exec(I);if(l)this.zone=l[0],I=I.replace(Kc.RE_ZONE_STRING,"");this.addressMinusSuffix=I,this.parsedAddress=this.parse(this.addressMinusSuffix)}static isValid(I){try{return new bm(I),!0}catch(G){return!1}}static fromBigInt(I){let G=I.toString(16).padStart(32,"0"),Z=[],l;for(l=0;l<Kc.GROUPS;l++)Z.push(G.slice(l*4,(l+1)*4));return new bm(Z.join(":"))}static fromURL(I){let G,Z=null,l;if(I.indexOf("[")!==-1&&I.indexOf("]:")!==-1){if(l=Kc.RE_URL_WITH_PORT.exec(I),l===null)return{error:"failed to parse address with port",address:null,port:null};G=l[1],Z=l[2]}else if(I.indexOf("/")!==-1){if(I=I.replace(/^[a-z0-9]+:\/\//,""),l=Kc.RE_URL.exec(I),l===null)return{error:"failed to parse address from URL",address:null,port:null};G=l[1]}else G=I;if(Z){if(Z=parseInt(Z,10),Z<0||Z>65536)Z=null}else Z=null;return{address:new bm(G),port:Z}}static fromAddress4(I){let G=new Az.Address4(I),Z=Kc.BITS-(KCI.BITS-G.subnetMask);return new bm(`::ffff:${G.correctForm()}/${Z}`)}static fromArpa(I){let G=I.replace(/(\.ip6\.arpa)?\.$/,""),Z=7;if(G.length!==63)throw new ZC.AddressError("Invalid 'ip6.arpa' form.");let l=G.split(".").reverse();for(let b=Z;b>0;b--){let W=b*4;l.splice(W,0,":")}return G=l.join(""),new bm(G)}microsoftTranscription(){return`${this.correctForm().replace(/:/g,"-")}.ipv6-literal.net`}mask(I=this.subnetMask){return this.getBitsBase2(0,I)}possibleSubnets(I=128){let G=Kc.BITS-this.subnetMask,Z=Math.abs(I-Kc.BITS),l=G-Z;if(l<0)return"0";return fdb((BigInt("2")**BigInt(l)).toString(10))}_startAddress(){return BigInt(`0b${this.mask()+"0".repeat(Kc.BITS-this.subnetMask)}`)}startAddress(){return bm.fromBigInt(this._startAddress())}startAddressExclusive(){let I=BigInt("1");return bm.fromBigInt(this._startAddress()+I)}_endAddress(){return BigInt(`0b${this.mask()+"1".repeat(Kc.BITS-this.subnetMask)}`)}endAddress(){return bm.fromBigInt(this._endAddress())}endAddressExclusive(){let I=BigInt("1");return bm.fromBigInt(this._endAddress()-I)}getScope(){let I=Kc.SCOPES[parseInt(this.getBits(12,16).toString(10),10)];if(this.getType()==="Global unicast"&&I!=="Link local")I="Global";return I||"Unknown"}getType(){for(let I of Object.keys(Kc.TYPES))if(this.isInSubnet(new bm(I)))return Kc.TYPES[I];return"Global unicast"}getBits(I,G){return BigInt(`0b${this.getBitsBase2(I,G)}`)}getBitsBase2(I,G){return this.binaryZeroPad().slice(I,G)}getBitsBase16(I,G){let Z=G-I;if(Z%4!==0)throw Error("Length of bits to retrieve must be divisible by four");return this.getBits(I,G).toString(16).padStart(Z/4,"0")}getBitsPastSubnet(){return this.getBitsBase2(this.subnetMask,Kc.BITS)}reverseForm(I){if(!I)I={};let G=Math.floor(this.subnetMask/4),Z=this.canonicalForm().replace(/:/g,"").split("").slice(0,G).reverse().join(".");if(G>0){if(I.omitSuffix)return Z;return`${Z}.ip6.arpa.`}if(I.omitSuffix)return"";return"ip6.arpa."}correctForm(){let I,G=[],Z=0,l=[];for(I=0;I<this.parsedAddress.length;I++){let N=parseInt(this.parsedAddress[I],16);if(N===0)Z++;if(N!==0&&Z>0){if(Z>1)l.push([I-Z,I-1]);Z=0}}if(Z>1)l.push([this.parsedAddress.length-Z,this.parsedAddress.length-1]);let b=l.map((N)=>N[1]-N[0]+1);if(l.length>0){let N=b.indexOf(Math.max(...b));G=$db(this.parsedAddress,l[N])}else G=this.parsedAddress;for(I=0;I<G.length;I++)if(G[I]!=="compact")G[I]=parseInt(G[I],16).toString(16);let W=G.join(":");return W=W.replace(/^compact$/,"::"),W=W.replace(/(^compact)|(compact$)/,":"),W=W.replace(/compact/,""),W}binaryZeroPad(){return this.bigInt().toString(2).padStart(Kc.BITS,"0")}parse4in6(I){let G=I.split(":"),l=G.slice(-1)[0].match(KCI.RE_ADDRESS);if(l){this.parsedAddress4=l[0],this.address4=new Az.Address4(this.parsedAddress4);for(let b=0;b<this.address4.groups;b++)if(/^0[0-9]+/.test(this.address4.parsedAddress[b]))throw new ZC.AddressError("IPv4 addresses can't have leading zeroes.",I.replace(KCI.RE_ADDRESS,this.address4.parsedAddress.map(sdb).join(".")));this.v4=!0,G[G.length-1]=this.address4.toGroup6(),I=G.join(":")}return I}parse(I){I=this.parse4in6(I);let G=I.match(Kc.RE_BAD_CHARACTERS);if(G)throw new ZC.AddressError(`Bad character${G.length>1?"s":""} detected in address: ${G.join("")}`,I.replace(Kc.RE_BAD_CHARACTERS,'<span class="parse-error">$1</span>'));let Z=I.match(Kc.RE_BAD_ADDRESS);if(Z)throw new ZC.AddressError(`Address failed regex: ${Z.join("")}`,I.replace(Kc.RE_BAD_ADDRESS,'<span class="parse-error">$1</span>'));let l=[],b=I.split("::");if(b.length===2){let W=b[0].split(":"),N=b[1].split(":");if(W.length===1&&W[0]==="")W=[];if(N.length===1&&N[0]==="")N=[];let Y=this.groups-(W.length+N.length);if(!Y)throw new ZC.AddressError("Error parsing groups");this.elidedGroups=Y,this.elisionBegin=W.length,this.elisionEnd=W.length+this.elidedGroups,l=l.concat(W);for(let c=0;c<Y;c++)l.push("0");l=l.concat(N)}else if(b.length===1)l=I.split(":"),this.elidedGroups=0;else throw new ZC.AddressError("Too many :: groups found");if(l=l.map((W)=>parseInt(W,16).toString(16)),l.length!==this.groups)throw new ZC.AddressError("Incorrect number of groups found");return l}canonicalForm(){return this.parsedAddress.map(nMG).join(":")}decimal(){return this.parsedAddress.map((I)=>parseInt(I,16).toString(10).padStart(5,"0")).join(":")}bigInt(){return BigInt(`0x${this.parsedAddress.map(nMG).join("")}`)}to4(){let I=this.binaryZeroPad().split("");return Az.Address4.fromHex(BigInt(`0b${I.slice(96,128).join("")}`).toString(16))}to4in6(){let I=this.to4(),Z=new bm(this.parsedAddress.slice(0,6).join(":"),6).correctForm(),l="";if(!/:$/.test(Z))l=":";return Z+l+I.address}inspectTeredo(){let I=this.getBitsBase16(0,32),Z=(this.getBits(80,96)^BigInt("0xffff")).toString(),l=Az.Address4.fromHex(this.getBitsBase16(32,64)),b=this.getBits(96,128),W=Az.Address4.fromHex((b^BigInt("0xffffffff")).toString(16)),N=this.getBitsBase2(64,80),Y=(0,SlI.testBit)(N,15),c=(0,SlI.testBit)(N,14),V=(0,SlI.testBit)(N,8),d=(0,SlI.testBit)(N,9),Q=BigInt(`0b${N.slice(2,6)+N.slice(8,16)}`).toString(10);return{prefix:`${I.slice(0,4)}:${I.slice(4,8)}`,server4:l.address,client4:W.address,flags:N,coneNat:Y,microsoft:{reserved:c,universalLocal:d,groupIndividual:V,nonce:Q},udpPort:Z}}inspect6to4(){let I=this.getBitsBase16(0,16),G=Az.Address4.fromHex(this.getBitsBase16(16,48));return{prefix:I.slice(0,4),gateway:G.address}}to6to4(){if(!this.is4())return null;let I=["2002",this.getBitsBase16(96,112),this.getBitsBase16(112,128),"","/16"].join(":");return new bm(I)}toByteArray(){let I=this.bigInt().toString(16),Z=`${"0".repeat(I.length%2)}${I}`,l=[];for(let b=0,W=Z.length;b<W;b+=2)l.push(parseInt(Z.substring(b,b+2),16));return l}toUnsignedByteArray(){return this.toByteArray().map(qMG)}static fromByteArray(I){return this.fromUnsignedByteArray(I.map(qMG))}static fromUnsignedByteArray(I){let G=BigInt("256"),Z=BigInt("0"),l=BigInt("1");for(let b=I.length-1;b>=0;b--)Z+=l*BigInt(I[b].toString(10)),l*=G;return bm.fromBigInt(Z)}isCanonical(){return this.addressMinusSuffix===this.canonicalForm()}isLinkLocal(){if(this.getBitsBase2(0,64)==="1111111010000000000000000000000000000000000000000000000000000000")return!0;return!1}isMulticast(){return this.getType()==="Multicast"}is4(){return this.v4}isTeredo(){return this.isInSubnet(new bm("2001::/32"))}is6to4(){return this.isInSubnet(new bm("2002::/16"))}isLoopback(){return this.getType()==="Loopback"}href(I){if(I===void 0)I="";else I=`:${I}`;return`http://[${this.correctForm()}]${I}/`}link(I){if(!I)I={};if(I.className===void 0)I.className="";if(I.prefix===void 0)I.prefix="/#address=";if(I.v4===void 0)I.v4=!1;let G=this.correctForm;if(I.v4)G=this.to4in6;let Z=G.call(this);if(I.className)return`<a href="${I.prefix}${Z}" class="${I.className}">${Z}</a>`;return`<a href="${I.prefix}${Z}">${Z}</a>`}group(){if(this.elidedGroups===0)return DCI.simpleGroup(this.address).join(":");ilI(typeof this.elidedGroups==="number"),ilI(typeof this.elisionBegin==="number");let I=[],[G,Z]=this.address.split("::");if(G.length)I.push(...DCI.simpleGroup(G));else I.push("");let l=["hover-group"];for(let b=this.elisionBegin;b<this.elisionBegin+this.elidedGroups;b++)l.push(`group-${b}`);if(I.push(`<span class="${l.join(" ")}"></span>`),Z.length)I.push(...DCI.simpleGroup(Z,this.elisionEnd));else I.push("");if(this.is4())ilI(this.address4 instanceof Az.Address4),I.pop(),I.push(this.address4.groupForV6());return I.join(":")}regularExpressionString(I=!1){let G=[],Z=new bm(this.correctForm());if(Z.elidedGroups===0)G.push((0,Ez.simpleRegularExpression)(Z.parsedAddress));else if(Z.elidedGroups===Kc.GROUPS)G.push((0,Ez.possibleElisions)(Kc.GROUPS));else{let l=Z.address.split("::");if(l[0].length)G.push((0,Ez.simpleRegularExpression)(l[0].split(":")));if(ilI(typeof Z.elidedGroups==="number"),G.push((0,Ez.possibleElisions)(Z.elidedGroups,l[0].length!==0,l[1].length!==0)),l[1].length)G.push((0,Ez.simpleRegularExpression)(l[1].split(":")));G=[G.join(":")]}if(!I)G=["(?=^|",Ez.ADDRESS_BOUNDARY,"|[^\\w\\:])(",...G,")(?=[^\\w\\:]|",Ez.ADDRESS_BOUNDARY,"|$)"];return G.join("")}regularExpression(I=!1){return new RegExp(this.regularExpressionString(I),"i")}}F4.Address6=bm});var jCI=w((WX)=>{var odb=WX&&WX.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;var b=Object.getOwnPropertyDescriptor(G,Z);if(!b||("get"in b?!G.__esModule:b.writable||b.configurable))b={enumerable:!0,get:function(){return G[Z]}};Object.defineProperty(I,l,b)}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),tdb=WX&&WX.__setModuleDefault||(Object.create?function(I,G){Object.defineProperty(I,"default",{enumerable:!0,value:G})}:function(I,G){I.default=G}),rdb=WX&&WX.__importStar||function(I){if(I&&I.__esModule)return I;var G={};if(I!=null){for(var Z in I)if(Z!=="default"&&Object.prototype.hasOwnProperty.call(I,Z))odb(G,I,Z)}return tdb(G,I),G};Object.defineProperty(WX,"__esModule",{value:!0});WX.v6=WX.AddressError=WX.Address6=WX.Address4=void 0;var edb=xCI();Object.defineProperty(WX,"Address4",{enumerable:!0,get:function(){return edb.Address4}});var I0b=TMG();Object.defineProperty(WX,"Address6",{enumerable:!0,get:function(){return I0b.Address6}});var G0b=nlI();Object.defineProperty(WX,"AddressError",{enumerable:!0,get:function(){return G0b.AddressError}});var Z0b=rdb(MCI());WX.v6={helpers:Z0b}});var oMG=w((sMG)=>{Object.defineProperty(sMG,"__esModule",{value:!0});sMG.ipToBuffer=sMG.int32ToIpv4=sMG.ipv4ToInt32=sMG.validateSocksClientChainOptions=sMG.validateSocksClientOptions=void 0;var dF=kCI(),Wm=BCI(),l0b=KI("stream"),nCI=jCI(),SMG=KI("net");function b0b(I,G=["connect","bind","associate"]){if(!Wm.SocksCommand[I.command])throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksCommand,I);if(G.indexOf(I.command)===-1)throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksCommandForOperation,I);if(!PMG(I.destination))throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsDestination,I);if(!_MG(I.proxy))throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsProxy,I);if(iMG(I.proxy,I),I.timeout&&!fMG(I.timeout))throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsTimeout,I);if(I.existing_socket&&!(I.existing_socket instanceof l0b.Duplex))throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsExistingSocket,I)}sMG.validateSocksClientOptions=b0b;function W0b(I){if(I.command!=="connect")throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksCommandChain,I);if(!PMG(I.destination))throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsDestination,I);if(!(I.proxies&&Array.isArray(I.proxies)&&I.proxies.length>=2))throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsProxiesLength,I);if(I.proxies.forEach((G)=>{if(!_MG(G))throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsProxy,I);iMG(G,I)}),I.timeout&&!fMG(I.timeout))throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsTimeout,I)}sMG.validateSocksClientChainOptions=W0b;function iMG(I,G){if(I.custom_auth_method!==void 0){if(I.custom_auth_method<Wm.SOCKS5_CUSTOM_AUTH_START||I.custom_auth_method>Wm.SOCKS5_CUSTOM_AUTH_END)throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsCustomAuthRange,G);if(I.custom_auth_request_handler===void 0||typeof I.custom_auth_request_handler!=="function")throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,G);if(I.custom_auth_response_size===void 0)throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,G);if(I.custom_auth_response_handler===void 0||typeof I.custom_auth_response_handler!=="function")throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,G)}}function PMG(I){return I&&typeof I.host==="string"&&Buffer.byteLength(I.host)<256&&typeof I.port==="number"&&I.port>=0&&I.port<=65535}function _MG(I){return I&&(typeof I.host==="string"||typeof I.ipaddress==="string")&&typeof I.port==="number"&&I.port>=0&&I.port<=65535&&(I.type===4||I.type===5)}function fMG(I){return typeof I==="number"&&I>0}function N0b(I){return new nCI.Address4(I).toArray().reduce((Z,l)=>(Z<<8)+l,0)>>>0}sMG.ipv4ToInt32=N0b;function Y0b(I){let G=I>>>24&255,Z=I>>>16&255,l=I>>>8&255,b=I&255;return[G,Z,l,b].join(".")}sMG.int32ToIpv4=Y0b;function c0b(I){if(SMG.isIPv4(I)){let G=new nCI.Address4(I);return Buffer.from(G.toArray())}else if(SMG.isIPv6(I)){let G=new nCI.Address6(I);return Buffer.from(G.canonicalForm().split(":").map((Z)=>Z.padStart(4,"0")).join(""),"hex")}else throw Error("Invalid IP address format")}sMG.ipToBuffer=c0b});var IKG=w((rMG)=>{Object.defineProperty(rMG,"__esModule",{value:!0});rMG.ReceiveBuffer=void 0;class tMG{constructor(I=4096){this.buffer=Buffer.allocUnsafe(I),this.offset=0,this.originalSize=I}get length(){return this.offset}append(I){if(!Buffer.isBuffer(I))throw Error("Attempted to append a non-buffer instance to ReceiveBuffer.");if(this.offset+I.length>=this.buffer.length){let G=this.buffer;this.buffer=Buffer.allocUnsafe(Math.max(this.buffer.length+this.originalSize,this.buffer.length+I.length)),G.copy(this.buffer)}return I.copy(this.buffer,this.offset),this.offset+=I.length}peek(I){if(I>this.offset)throw Error("Attempted to read beyond the bounds of the managed internal data.");return this.buffer.slice(0,I)}get(I){if(I>this.offset)throw Error("Attempted to read beyond the bounds of the managed internal data.");let G=Buffer.allocUnsafe(I);return this.buffer.slice(0,I).copy(G),this.buffer.copyWithin(0,I,I+this.offset-I),this.offset-=I,G}}rMG.ReceiveBuffer=tMG});var GKG=w((Hu)=>{var qM=Hu&&Hu.__awaiter||function(I,G,Z,l){function b(W){return W instanceof Z?W:new Z(function(N){N(W)})}return new(Z||(Z=Promise))(function(W,N){function Y(d){try{V(l.next(d))}catch(Q){N(Q)}}function c(d){try{V(l.throw(d))}catch(Q){N(Q)}}function V(d){d.done?W(d.value):b(d.value).then(Y,c)}V((l=l.apply(I,G||[])).next())})};Object.defineProperty(Hu,"__esModule",{value:!0});Hu.SocksClientError=Hu.SocksClient=void 0;var X0b=KI("events"),TM=KI("net"),g1=XMG(),UZ=BCI(),_R=oMG(),F0b=IKG(),TCI=kCI();Object.defineProperty(Hu,"SocksClientError",{enumerable:!0,get:function(){return TCI.SocksClientError}});var qCI=jCI();class _lI extends X0b.EventEmitter{constructor(I){super();this.options=Object.assign({},I),(0,_R.validateSocksClientOptions)(I),this.setState(UZ.SocksClientState.Created)}static createConnection(I,G){return new Promise((Z,l)=>{try{(0,_R.validateSocksClientOptions)(I,["connect"])}catch(W){if(typeof G==="function")return G(W),Z(W);else return l(W)}let b=new _lI(I);b.connect(I.existing_socket),b.once("established",(W)=>{if(b.removeAllListeners(),typeof G==="function")G(null,W),Z(W);else Z(W)}),b.once("error",(W)=>{if(b.removeAllListeners(),typeof G==="function")G(W),Z(W);else l(W)})})}static createConnectionChain(I,G){return new Promise((Z,l)=>qM(this,void 0,void 0,function*(){try{(0,_R.validateSocksClientChainOptions)(I)}catch(b){if(typeof G==="function")return G(b),Z(b);else return l(b)}if(I.randomizeChain)(0,TCI.shuffleArray)(I.proxies);try{let b;for(let W=0;W<I.proxies.length;W++){let N=I.proxies[W],Y=W===I.proxies.length-1?I.destination:{host:I.proxies[W+1].host||I.proxies[W+1].ipaddress,port:I.proxies[W+1].port},c=yield _lI.createConnection({command:"connect",proxy:N,destination:Y,existing_socket:b});b=b||c.socket}if(typeof G==="function")G(null,{socket:b}),Z({socket:b});else Z({socket:b})}catch(b){if(typeof G==="function")G(b),Z(b);else l(b)}}))}static createUDPFrame(I){let G=new g1.SmartBuffer;if(G.writeUInt16BE(0),G.writeUInt8(I.frameNumber||0),TM.isIPv4(I.remoteHost.host))G.writeUInt8(UZ.Socks5HostType.IPv4),G.writeUInt32BE((0,_R.ipv4ToInt32)(I.remoteHost.host));else if(TM.isIPv6(I.remoteHost.host))G.writeUInt8(UZ.Socks5HostType.IPv6),G.writeBuffer((0,_R.ipToBuffer)(I.remoteHost.host));else G.writeUInt8(UZ.Socks5HostType.Hostname),G.writeUInt8(Buffer.byteLength(I.remoteHost.host)),G.writeString(I.remoteHost.host);return G.writeUInt16BE(I.remoteHost.port),G.writeBuffer(I.data),G.toBuffer()}static parseUDPFrame(I){let G=g1.SmartBuffer.fromBuffer(I);G.readOffset=2;let Z=G.readUInt8(),l=G.readUInt8(),b;if(l===UZ.Socks5HostType.IPv4)b=(0,_R.int32ToIpv4)(G.readUInt32BE());else if(l===UZ.Socks5HostType.IPv6)b=qCI.Address6.fromByteArray(Array.from(G.readBuffer(16))).canonicalForm();else b=G.readString(G.readUInt8());let W=G.readUInt16BE();return{frameNumber:Z,remoteHost:{host:b,port:W},data:G.readBuffer()}}setState(I){if(this.state!==UZ.SocksClientState.Error)this.state=I}connect(I){this.onDataReceived=(Z)=>this.onDataReceivedHandler(Z),this.onClose=()=>this.onCloseHandler(),this.onError=(Z)=>this.onErrorHandler(Z),this.onConnect=()=>this.onConnectHandler();let G=setTimeout(()=>this.onEstablishedTimeout(),this.options.timeout||UZ.DEFAULT_TIMEOUT);if(G.unref&&typeof G.unref==="function")G.unref();if(I)this.socket=I;else this.socket=new TM.Socket;if(this.socket.once("close",this.onClose),this.socket.once("error",this.onError),this.socket.once("connect",this.onConnect),this.socket.on("data",this.onDataReceived),this.setState(UZ.SocksClientState.Connecting),this.receiveBuffer=new F0b.ReceiveBuffer,I)this.socket.emit("connect");else if(this.socket.connect(this.getSocketOptions()),this.options.set_tcp_nodelay!==void 0&&this.options.set_tcp_nodelay!==null)this.socket.setNoDelay(!!this.options.set_tcp_nodelay);this.prependOnceListener("established",(Z)=>{setImmediate(()=>{if(this.receiveBuffer.length>0){let l=this.receiveBuffer.get(this.receiveBuffer.length);Z.socket.emit("data",l)}Z.socket.resume()})})}getSocketOptions(){return Object.assign(Object.assign({},this.options.socket_options),{host:this.options.proxy.host||this.options.proxy.ipaddress,port:this.options.proxy.port})}onEstablishedTimeout(){if(this.state!==UZ.SocksClientState.Established&&this.state!==UZ.SocksClientState.BoundWaitingForConnection)this.closeSocket(UZ.ERRORS.ProxyConnectionTimedOut)}onConnectHandler(){if(this.setState(UZ.SocksClientState.Connected),this.options.proxy.type===4)this.sendSocks4InitialHandshake();else this.sendSocks5InitialHandshake();this.setState(UZ.SocksClientState.SentInitialHandshake)}onDataReceivedHandler(I){this.receiveBuffer.append(I),this.processData()}processData(){while(this.state!==UZ.SocksClientState.Established&&this.state!==UZ.SocksClientState.Error&&this.receiveBuffer.length>=this.nextRequiredPacketBufferSize)if(this.state===UZ.SocksClientState.SentInitialHandshake)if(this.options.proxy.type===4)this.handleSocks4FinalHandshakeResponse();else this.handleInitialSocks5HandshakeResponse();else if(this.state===UZ.SocksClientState.SentAuthentication)this.handleInitialSocks5AuthenticationHandshakeResponse();else if(this.state===UZ.SocksClientState.SentFinalHandshake)this.handleSocks5FinalHandshakeResponse();else if(this.state===UZ.SocksClientState.BoundWaitingForConnection)if(this.options.proxy.type===4)this.handleSocks4IncomingConnectionResponse();else this.handleSocks5IncomingConnectionResponse();else{this.closeSocket(UZ.ERRORS.InternalError);break}}onCloseHandler(){this.closeSocket(UZ.ERRORS.SocketClosed)}onErrorHandler(I){this.closeSocket(I.message)}removeInternalSocketHandlers(){this.socket.pause(),this.socket.removeListener("data",this.onDataReceived),this.socket.removeListener("close",this.onClose),this.socket.removeListener("error",this.onError),this.socket.removeListener("connect",this.onConnect)}closeSocket(I){if(this.state!==UZ.SocksClientState.Error)this.setState(UZ.SocksClientState.Error),this.socket.destroy(),this.removeInternalSocketHandlers(),this.emit("error",new TCI.SocksClientError(I,this.options))}sendSocks4InitialHandshake(){let I=this.options.proxy.userId||"",G=new g1.SmartBuffer;if(G.writeUInt8(4),G.writeUInt8(UZ.SocksCommand[this.options.command]),G.writeUInt16BE(this.options.destination.port),TM.isIPv4(this.options.destination.host))G.writeBuffer((0,_R.ipToBuffer)(this.options.destination.host)),G.writeStringNT(I);else G.writeUInt8(0),G.writeUInt8(0),G.writeUInt8(0),G.writeUInt8(1),G.writeStringNT(I),G.writeStringNT(this.options.destination.host);this.nextRequiredPacketBufferSize=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks4Response,this.socket.write(G.toBuffer())}handleSocks4FinalHandshakeResponse(){let I=this.receiveBuffer.get(8);if(I[1]!==UZ.Socks4Response.Granted)this.closeSocket(`${UZ.ERRORS.Socks4ProxyRejectedConnection} - (${UZ.Socks4Response[I[1]]})`);else if(UZ.SocksCommand[this.options.command]===UZ.SocksCommand.bind){let G=g1.SmartBuffer.fromBuffer(I);G.readOffset=2;let Z={port:G.readUInt16BE(),host:(0,_R.int32ToIpv4)(G.readUInt32BE())};if(Z.host==="0.0.0.0")Z.host=this.options.proxy.ipaddress;this.setState(UZ.SocksClientState.BoundWaitingForConnection),this.emit("bound",{remoteHost:Z,socket:this.socket})}else this.setState(UZ.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{socket:this.socket})}handleSocks4IncomingConnectionResponse(){let I=this.receiveBuffer.get(8);if(I[1]!==UZ.Socks4Response.Granted)this.closeSocket(`${UZ.ERRORS.Socks4ProxyRejectedIncomingBoundConnection} - (${UZ.Socks4Response[I[1]]})`);else{let G=g1.SmartBuffer.fromBuffer(I);G.readOffset=2;let Z={port:G.readUInt16BE(),host:(0,_R.int32ToIpv4)(G.readUInt32BE())};this.setState(UZ.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:Z,socket:this.socket})}}sendSocks5InitialHandshake(){let I=new g1.SmartBuffer,G=[UZ.Socks5Auth.NoAuth];if(this.options.proxy.userId||this.options.proxy.password)G.push(UZ.Socks5Auth.UserPass);if(this.options.proxy.custom_auth_method!==void 0)G.push(this.options.proxy.custom_auth_method);I.writeUInt8(5),I.writeUInt8(G.length);for(let Z of G)I.writeUInt8(Z);this.nextRequiredPacketBufferSize=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5InitialHandshakeResponse,this.socket.write(I.toBuffer()),this.setState(UZ.SocksClientState.SentInitialHandshake)}handleInitialSocks5HandshakeResponse(){let I=this.receiveBuffer.get(2);if(I[0]!==5)this.closeSocket(UZ.ERRORS.InvalidSocks5IntiailHandshakeSocksVersion);else if(I[1]===UZ.SOCKS5_NO_ACCEPTABLE_AUTH)this.closeSocket(UZ.ERRORS.InvalidSocks5InitialHandshakeNoAcceptedAuthType);else if(I[1]===UZ.Socks5Auth.NoAuth)this.socks5ChosenAuthType=UZ.Socks5Auth.NoAuth,this.sendSocks5CommandRequest();else if(I[1]===UZ.Socks5Auth.UserPass)this.socks5ChosenAuthType=UZ.Socks5Auth.UserPass,this.sendSocks5UserPassAuthentication();else if(I[1]===this.options.proxy.custom_auth_method)this.socks5ChosenAuthType=this.options.proxy.custom_auth_method,this.sendSocks5CustomAuthentication();else this.closeSocket(UZ.ERRORS.InvalidSocks5InitialHandshakeUnknownAuthType)}sendSocks5UserPassAuthentication(){let I=this.options.proxy.userId||"",G=this.options.proxy.password||"",Z=new g1.SmartBuffer;Z.writeUInt8(1),Z.writeUInt8(Buffer.byteLength(I)),Z.writeString(I),Z.writeUInt8(Buffer.byteLength(G)),Z.writeString(G),this.nextRequiredPacketBufferSize=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5UserPassAuthenticationResponse,this.socket.write(Z.toBuffer()),this.setState(UZ.SocksClientState.SentAuthentication)}sendSocks5CustomAuthentication(){return qM(this,void 0,void 0,function*(){this.nextRequiredPacketBufferSize=this.options.proxy.custom_auth_response_size,this.socket.write(yield this.options.proxy.custom_auth_request_handler()),this.setState(UZ.SocksClientState.SentAuthentication)})}handleSocks5CustomAuthHandshakeResponse(I){return qM(this,void 0,void 0,function*(){return yield this.options.proxy.custom_auth_response_handler(I)})}handleSocks5AuthenticationNoAuthHandshakeResponse(I){return qM(this,void 0,void 0,function*(){return I[1]===0})}handleSocks5AuthenticationUserPassHandshakeResponse(I){return qM(this,void 0,void 0,function*(){return I[1]===0})}handleInitialSocks5AuthenticationHandshakeResponse(){return qM(this,void 0,void 0,function*(){this.setState(UZ.SocksClientState.ReceivedAuthenticationResponse);let I=!1;if(this.socks5ChosenAuthType===UZ.Socks5Auth.NoAuth)I=yield this.handleSocks5AuthenticationNoAuthHandshakeResponse(this.receiveBuffer.get(2));else if(this.socks5ChosenAuthType===UZ.Socks5Auth.UserPass)I=yield this.handleSocks5AuthenticationUserPassHandshakeResponse(this.receiveBuffer.get(2));else if(this.socks5ChosenAuthType===this.options.proxy.custom_auth_method)I=yield this.handleSocks5CustomAuthHandshakeResponse(this.receiveBuffer.get(this.options.proxy.custom_auth_response_size));if(!I)this.closeSocket(UZ.ERRORS.Socks5AuthenticationFailed);else this.sendSocks5CommandRequest()})}sendSocks5CommandRequest(){let I=new g1.SmartBuffer;if(I.writeUInt8(5),I.writeUInt8(UZ.SocksCommand[this.options.command]),I.writeUInt8(0),TM.isIPv4(this.options.destination.host))I.writeUInt8(UZ.Socks5HostType.IPv4),I.writeBuffer((0,_R.ipToBuffer)(this.options.destination.host));else if(TM.isIPv6(this.options.destination.host))I.writeUInt8(UZ.Socks5HostType.IPv6),I.writeBuffer((0,_R.ipToBuffer)(this.options.destination.host));else I.writeUInt8(UZ.Socks5HostType.Hostname),I.writeUInt8(this.options.destination.host.length),I.writeString(this.options.destination.host);I.writeUInt16BE(this.options.destination.port),this.nextRequiredPacketBufferSize=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader,this.socket.write(I.toBuffer()),this.setState(UZ.SocksClientState.SentFinalHandshake)}handleSocks5FinalHandshakeResponse(){let I=this.receiveBuffer.peek(5);if(I[0]!==5||I[1]!==UZ.Socks5Response.Granted)this.closeSocket(`${UZ.ERRORS.InvalidSocks5FinalHandshakeRejected} - ${UZ.Socks5Response[I[1]]}`);else{let G=I[3],Z,l;if(G===UZ.Socks5HostType.IPv4){let b=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4;if(this.receiveBuffer.length<b){this.nextRequiredPacketBufferSize=b;return}if(l=g1.SmartBuffer.fromBuffer(this.receiveBuffer.get(b).slice(4)),Z={host:(0,_R.int32ToIpv4)(l.readUInt32BE()),port:l.readUInt16BE()},Z.host==="0.0.0.0")Z.host=this.options.proxy.ipaddress}else if(G===UZ.Socks5HostType.Hostname){let b=I[4],W=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHostname(b);if(this.receiveBuffer.length<W){this.nextRequiredPacketBufferSize=W;return}l=g1.SmartBuffer.fromBuffer(this.receiveBuffer.get(W).slice(5)),Z={host:l.readString(b),port:l.readUInt16BE()}}else if(G===UZ.Socks5HostType.IPv6){let b=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv6;if(this.receiveBuffer.length<b){this.nextRequiredPacketBufferSize=b;return}l=g1.SmartBuffer.fromBuffer(this.receiveBuffer.get(b).slice(4)),Z={host:qCI.Address6.fromByteArray(Array.from(l.readBuffer(16))).canonicalForm(),port:l.readUInt16BE()}}if(this.setState(UZ.SocksClientState.ReceivedFinalResponse),UZ.SocksCommand[this.options.command]===UZ.SocksCommand.connect)this.setState(UZ.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:Z,socket:this.socket});else if(UZ.SocksCommand[this.options.command]===UZ.SocksCommand.bind)this.setState(UZ.SocksClientState.BoundWaitingForConnection),this.nextRequiredPacketBufferSize=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader,this.emit("bound",{remoteHost:Z,socket:this.socket});else if(UZ.SocksCommand[this.options.command]===UZ.SocksCommand.associate)this.setState(UZ.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:Z,socket:this.socket})}}handleSocks5IncomingConnectionResponse(){let I=this.receiveBuffer.peek(5);if(I[0]!==5||I[1]!==UZ.Socks5Response.Granted)this.closeSocket(`${UZ.ERRORS.Socks5ProxyRejectedIncomingBoundConnection} - ${UZ.Socks5Response[I[1]]}`);else{let G=I[3],Z,l;if(G===UZ.Socks5HostType.IPv4){let b=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4;if(this.receiveBuffer.length<b){this.nextRequiredPacketBufferSize=b;return}if(l=g1.SmartBuffer.fromBuffer(this.receiveBuffer.get(b).slice(4)),Z={host:(0,_R.int32ToIpv4)(l.readUInt32BE()),port:l.readUInt16BE()},Z.host==="0.0.0.0")Z.host=this.options.proxy.ipaddress}else if(G===UZ.Socks5HostType.Hostname){let b=I[4],W=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHostname(b);if(this.receiveBuffer.length<W){this.nextRequiredPacketBufferSize=W;return}l=g1.SmartBuffer.fromBuffer(this.receiveBuffer.get(W).slice(5)),Z={host:l.readString(b),port:l.readUInt16BE()}}else if(G===UZ.Socks5HostType.IPv6){let b=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv6;if(this.receiveBuffer.length<b){this.nextRequiredPacketBufferSize=b;return}l=g1.SmartBuffer.fromBuffer(this.receiveBuffer.get(b).slice(4)),Z={host:qCI.Address6.fromByteArray(Array.from(l.readBuffer(16))).canonicalForm(),port:l.readUInt16BE()}}this.setState(UZ.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:Z,socket:this.socket})}}get socksClientOptions(){return Object.assign({},this.options)}}Hu.SocksClient=_lI});var ZKG=w((vz)=>{var R0b=vz&&vz.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;var b=Object.getOwnPropertyDescriptor(G,Z);if(!b||("get"in b?!G.__esModule:b.writable||b.configurable))b={enumerable:!0,get:function(){return G[Z]}};Object.defineProperty(I,l,b)}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),H0b=vz&&vz.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))R0b(G,I,Z)};Object.defineProperty(vz,"__esModule",{value:!0});H0b(GKG(),vz)});var WKG=w((a1)=>{var h0b=a1&&a1.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;var b=Object.getOwnPropertyDescriptor(G,Z);if(!b||("get"in b?!G.__esModule:b.writable||b.configurable))b={enumerable:!0,get:function(){return G[Z]}};Object.defineProperty(I,l,b)}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),w0b=a1&&a1.__setModuleDefault||(Object.create?function(I,G){Object.defineProperty(I,"default",{enumerable:!0,value:G})}:function(I,G){I.default=G}),lKG=a1&&a1.__importStar||function(I){if(I&&I.__esModule)return I;var G={};if(I!=null){for(var Z in I)if(Z!=="default"&&Object.prototype.hasOwnProperty.call(I,Z))h0b(G,I,Z)}return w0b(G,I),G};Object.defineProperty(a1,"__esModule",{value:!0});a1.req=a1.json=a1.toBuffer=void 0;var J0b=lKG(KI("http")),A0b=lKG(KI("https"));async function bKG(I){let G=0,Z=[];for await(let l of I)G+=l.length,Z.push(l);return Buffer.concat(Z,G)}a1.toBuffer=bKG;async function E0b(I){let Z=(await bKG(I)).toString("utf8");try{return JSON.parse(Z)}catch(l){let b=l;throw b.message+=` (input: ${Z})`,b}}a1.json=E0b;function v0b(I,G={}){let l=((typeof I==="string"?I:I.href).startsWith("https:")?A0b:J0b).request(I,G),b=new Promise((W,N)=>{l.once("response",W).once("error",N).end()});return l.then=b.then.bind(b),l}a1.req=v0b});var SCI=w((fR)=>{var YKG=fR&&fR.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;var b=Object.getOwnPropertyDescriptor(G,Z);if(!b||("get"in b?!G.__esModule:b.writable||b.configurable))b={enumerable:!0,get:function(){return G[Z]}};Object.defineProperty(I,l,b)}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),C0b=fR&&fR.__setModuleDefault||(Object.create?function(I,G){Object.defineProperty(I,"default",{enumerable:!0,value:G})}:function(I,G){I.default=G}),cKG=fR&&fR.__importStar||function(I){if(I&&I.__esModule)return I;var G={};if(I!=null){for(var Z in I)if(Z!=="default"&&Object.prototype.hasOwnProperty.call(I,Z))YKG(G,I,Z)}return C0b(G,I),G},p0b=fR&&fR.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))YKG(G,I,Z)};Object.defineProperty(fR,"__esModule",{value:!0});fR.Agent=void 0;var y0b=cKG(KI("net")),NKG=cKG(KI("http")),u0b=KI("https");p0b(WKG(),fR);var R4=Symbol("AgentBaseInternalState");class VKG extends NKG.Agent{constructor(I){super(I);this[R4]={}}isSecureEndpoint(I){if(I){if(typeof I.secureEndpoint==="boolean")return I.secureEndpoint;if(typeof I.protocol==="string")return I.protocol==="https:"}let{stack:G}=Error();if(typeof G!=="string")return!1;return G.split(`
70
- `).some((Z)=>Z.indexOf("(https.js:")!==-1||Z.indexOf("node:https:")!==-1)}incrementSockets(I){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;if(!this.sockets[I])this.sockets[I]=[];let G=new y0b.Socket({writable:!1});return this.sockets[I].push(G),this.totalSocketCount++,G}decrementSockets(I,G){if(!this.sockets[I]||G===null)return;let Z=this.sockets[I],l=Z.indexOf(G);if(l!==-1){if(Z.splice(l,1),this.totalSocketCount--,Z.length===0)delete this.sockets[I]}}getName(I){if(this.isSecureEndpoint(I))return u0b.Agent.prototype.getName.call(this,I);return super.getName(I)}createSocket(I,G,Z){let l={...G,secureEndpoint:this.isSecureEndpoint(G)},b=this.getName(l),W=this.incrementSockets(b);Promise.resolve().then(()=>this.connect(I,l)).then((N)=>{if(this.decrementSockets(b,W),N instanceof NKG.Agent)try{return N.addRequest(I,l)}catch(Y){return Z(Y)}this[R4].currentSocket=N,super.createSocket(I,G,Z)},(N)=>{this.decrementSockets(b,W),Z(N)})}createConnection(){let I=this[R4].currentSocket;if(this[R4].currentSocket=void 0,!I)throw Error("No socket was returned in the `connect()` function");return I}get defaultPort(){return this[R4].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(I){if(this[R4])this[R4].defaultPort=I}get protocol(){return this[R4].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(I){if(this[R4])this[R4].protocol=I}}fR.Agent=VKG});var dKG=w((zh)=>{var L0b=zh&&zh.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;var b=Object.getOwnPropertyDescriptor(G,Z);if(!b||("get"in b?!G.__esModule:b.writable||b.configurable))b={enumerable:!0,get:function(){return G[Z]}};Object.defineProperty(I,l,b)}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),g0b=zh&&zh.__setModuleDefault||(Object.create?function(I,G){Object.defineProperty(I,"default",{enumerable:!0,value:G})}:function(I,G){I.default=G}),iCI=zh&&zh.__importStar||function(I){if(I&&I.__esModule)return I;var G={};if(I!=null){for(var Z in I)if(Z!=="default"&&Object.prototype.hasOwnProperty.call(I,Z))L0b(G,I,Z)}return g0b(G,I),G},a0b=zh&&zh.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(zh,"__esModule",{value:!0});zh.SocksProxyAgent=void 0;var z0b=ZKG(),B0b=SCI(),k0b=a0b(ly()),U0b=iCI(KI("dns")),x0b=iCI(KI("net")),O0b=iCI(KI("tls")),M0b=KI("url"),flI=(0,k0b.default)("socks-proxy-agent"),K0b=(I)=>{if(I.servername===void 0&&I.host&&!x0b.isIP(I.host))return{...I,servername:I.host};return I};function D0b(I){let G=!1,Z=5,l=I.hostname,b=parseInt(I.port,10)||1080;switch(I.protocol.replace(":","")){case"socks4":G=!0,Z=4;break;case"socks4a":Z=4;break;case"socks5":G=!0,Z=5;break;case"socks":Z=5;break;case"socks5h":Z=5;break;default:throw TypeError(`A "socks" protocol must be specified! Got: ${String(I.protocol)}`)}let W={host:l,port:b,type:Z};if(I.username)Object.defineProperty(W,"userId",{value:decodeURIComponent(I.username),enumerable:!1});if(I.password!=null)Object.defineProperty(W,"password",{value:decodeURIComponent(I.password),enumerable:!1});return{lookup:G,proxy:W}}class PCI extends B0b.Agent{constructor(I,G){super(G);let Z=typeof I==="string"?new M0b.URL(I):I,{proxy:l,lookup:b}=D0b(Z);this.shouldLookup=b,this.proxy=l,this.timeout=G?.timeout??null,this.socketOptions=G?.socketOptions??null}async connect(I,G){let{shouldLookup:Z,proxy:l,timeout:b}=this;if(!G.host)throw Error("No `host` defined!");let{host:W}=G,{port:N,lookup:Y=U0b.lookup}=G;if(Z)W=await new Promise((Q,X)=>{Y(W,{},(R,H)=>{if(R)X(R);else Q(H)})});let c={proxy:l,destination:{host:W,port:typeof N==="number"?N:parseInt(N,10)},command:"connect",timeout:b??void 0,socket_options:this.socketOptions??void 0},V=(Q)=>{if(I.destroy(),d.destroy(),Q)Q.destroy()};flI("Creating socks proxy connection: %o",c);let{socket:d}=await z0b.SocksClient.createConnection(c);if(flI("Successfully created socks proxy connection"),b!==null)d.setTimeout(b),d.on("timeout",()=>V());if(G.secureEndpoint){flI("Upgrading socket connection to TLS");let Q=O0b.connect({...j0b(K0b(G),"host","path","port"),socket:d});return Q.once("error",(X)=>{flI("Socket TLS error",X.message),V(Q)}),Q}return d}}PCI.protocols=["socks","socks4","socks4a","socks5","socks5h"];zh.SocksProxyAgent=PCI;function j0b(I,...G){let Z={},l;for(l in I)if(!G.includes(l))Z[l]=I[l];return Z}});function n0b(){return process.env.SOCKS_PROXY||process.env.SOCKS5_PROXY}function Cz(){let I=n0b();if(!I)return;return new mKG.SocksProxyAgent(I)}var mKG;var slI=a(()=>{mKG=hI(dKG(),1)});async function q0b(){try{return await LS("tengu-capable-model-config",QKG)}catch(I){return DG(I),QKG}}function XKG(){G2.cache.clear?.()}async function uS(){return!process.env.ANTHROPIC_MODEL||process.env.ANTHROPIC_MODEL===await G2()}function _CI(I){return I.includes("opus-4-6")||I.includes("sonnet-4-6")}function FKG(I){if(I?.startsWith("claude-3-5-haiku"))return process.env.VERTEX_REGION_CLAUDE_3_5_HAIKU;else if(I?.startsWith("claude-3-5-sonnet"))return process.env.VERTEX_REGION_CLAUDE_3_5_SONNET;else if(I?.startsWith("claude-3-7-sonnet"))return process.env.VERTEX_REGION_CLAUDE_3_7_SONNET;else if(I?.startsWith("claude-sonnet-4-5"))return process.env.VERTEX_REGION_CLAUDE_SONNET_4_5}async function RKG(){let I=Bh(),G=process.env.ANTHROPIC_AUTH_TOKEN;if(!I&&!G)throw Error("No API key or auth token available");let Z=Cz(),l={"anthropic-version":"2023-06-01","User-Agent":wz};if(G)l.Authorization=`Bearer ${G}`;else l["x-api-key"]=I;let b={method:"GET",headers:l,...Z?{agent:Z}:{}},W=process.env.ANTHROPIC_BASE_URL||"https://api.anthropic.com",N=await fetch(`${W}/v1/models`,b);if(!N.ok)throw Error(`Failed to fetch models: ${N.status} ${N.statusText}`);return(await N.json()).data.map((c)=>({...c,display_name:c.display_name&&c.display_name.trim()||c.id}))}var a2,z2,QKG,B2,G2;var Nm=a(()=>{wY();TW();Ul();MW();DlI();slI();a2=!!process.env.CLAUDE_CODE_USE_BEDROCK,z2=!!process.env.CLAUDE_CODE_USE_VERTEX,QKG={bedrock:"us.anthropic.claude-sonnet-4-5-20250929-v1:0",vertex:"claude-sonnet-4-5@20250929",firstParty:"claude-sonnet-4-5-20250929"},B2=a2?"us.anthropic.claude-haiku-4-5-20251001-v1:0":z2?"claude-haiku-4-5@20251001":"claude-haiku-4-5-20251001";G2=cb(async()=>{let I=rZ();if(I.model)return I.model;if(process.env.USER_TYPE==="ant"){if(process.env.ANTHROPIC_MODEL)return process.env.ANTHROPIC_MODEL;return(await HKG("chihuahua",{color:"research-claude-denim"})).color}if(process.env.USER_TYPE==="SWE_BENCH"){if(process.env.ANTHROPIC_MODEL)return process.env.ANTHROPIC_MODEL}let G=await q0b();if(a2)return G.bedrock;if(z2)return G.vertex;return G.firstParty})});function JG(I,G){if(sl.isCI)return;Promise.all([SM(),ah(),MlI(),G.model?Promise.resolve(G.model):G2()]).then(([Z,l,b,W])=>{if(!Z)return;let N={...G,model:W,sessionId:cF,userType:process.env.USER_TYPE||"",...process.env.SWE_BENCH_RUN_ID?{sweBenchId:process.env.SWE_BENCH_RUN_ID}:{},...b.length>0?{betas:b.join(",")}:{},env:JSON.stringify({isGit:l,platform:sl.platform,nodeVersion:sl.nodeVersion,terminal:sl.terminal,version:"1.3.2"})};if(process.env.USER_TYPE==="ant"&&(process.argv.includes("--debug")||process.argv.includes("-d")))console.log(aZ.dim(`[DEBUG-ONLY] Statsig event: ${I} ${JSON.stringify(G,null,0)}`));let Y={eventName:I,metadata:N};Z.logEvent(Y)})}function hKG(){return{...fCI}}var T0b,fCI,SM,Ru,HKG,LS=async(I,G)=>{if(sl.isCI)return G;let Z=await SM();if(!Z)return G;let l=Z.getDynamicConfig(I);if(Object.keys(l.value).length===0)return DG(`getDynamicConfig got empty value for ${I}`),G;return l.value};var TW=a(()=>{wY();Mc();IMG();k2();Ul();Ul();aCI();a5();Nm();T0b=hI(YG(),1),fCI={},SM=cb(async()=>{return null});Ru=cb(async(I)=>{if(sl.isCI)return!1;if(process.env.MOCK_STICKER_GATE==="true"&&I==="tengu_sticker_easter_egg")return fCI[I]=!0,!0;let G=await SM();if(!G)return!1;let Z=G.checkGate(I);return fCI[I]=Z,Z});HKG=cb(async(I,G)=>{if(sl.isCI)return G;let Z=await SM();if(!Z)return G;let l=Z.getExperiment(I);if(Object.keys(l.value).length===0)return DG(`getExperimentValue got empty value for ${I}`),G;return l.value})});import*as id from"fs";import{homedir as S0b}from"os";import{existsSync as wKG}from"fs";import{spawn as i0b,execSync as JKG}from"child_process";import{isAbsolute as P0b,resolve as _0b,join as f0b}from"path";import*as EKG from"os";class _m{commandQueue=[];isExecuting=!1;shell;isAlive=!0;commandInterrupted=!1;statusFile;stdoutFile;stderrFile;cwdFile;cwd;binShell;constructor(I){this.binShell=process.env.SHELL||"/bin/bash",this.shell=i0b(this.binShell,["-l"],{stdio:["pipe","pipe","pipe"],cwd:I,env:{...process.env,GIT_EDITOR:"true"}}),this.cwd=I,this.shell.on("exit",(l,b)=>{if(l)DG(`Shell exited with code ${l} and signal ${b}`),JG("persistent_shell_exit",{code:l?.toString()||"null",signal:b||"null"});for(let W of[this.statusFile,this.stdoutFile,this.stderrFile,this.cwdFile])if(id.existsSync(W))id.unlinkSync(W);this.isAlive=!1});let G=Math.floor(Math.random()*65536).toString(16).padStart(4,"0");this.statusFile=$lI+G+olI.STATUS,this.stdoutFile=$lI+G+olI.STDOUT,this.stderrFile=$lI+G+olI.STDERR,this.cwdFile=$lI+G+olI.CWD;for(let l of[this.statusFile,this.stdoutFile,this.stderrFile])id.writeFileSync(l,"");id.writeFileSync(this.cwdFile,I);let Z=o0b[this.binShell];if(Z){let l=f0b(S0b(),Z);if(wKG(l))this.sendToShell(`source ${l}`)}}static instance=null;static restart(){if(_m.instance)_m.instance.close(),_m.instance=null}static getInstance(){if(!_m.instance||!_m.instance.isAlive)_m.instance=new _m(process.cwd());return _m.instance}killChildren(){let I=this.shell.pid;try{let G=JKG(`pgrep -P ${I}`).toString().trim().split(`
69
+ `);if(W!==-1)G=oOG(G,b,l,W);return l+G+b},E2b,lRY,aZ;var Mc=a(()=>{iOG();sOG();({stdout:tOG,stderr:rOG}=fOG),uCI=Symbol("GENERATOR"),KM=Symbol("STYLER"),CS=Symbol("IS_EMPTY"),eOG=["ansi","ansi","ansi256","ansi16m"],DM=Object.create(null);Object.setPrototypeOf(pS.prototype,Function.prototype);for(let[I,G]of Object.entries(g5))DM[I]={get(){let Z=OlI(this,gCI(G.open,G.close,this[KM]),this[CS]);return Object.defineProperty(this,I,{value:Z}),Z}};DM.visible={get(){let I=OlI(this,this[KM],!0);return Object.defineProperty(this,"visible",{value:I}),I}};w2b=["rgb","hex","ansi256"];for(let I of w2b){DM[I]={get(){let{level:Z}=this;return function(...l){let b=gCI(LCI(I,eOG[Z],"color",...l),g5.color.close,this[KM]);return OlI(this,b,this[CS])}}};let G="bg"+I[0].toUpperCase()+I.slice(1);DM[G]={get(){let{level:Z}=this;return function(...l){let b=gCI(LCI(I,eOG[Z],"bgColor",...l),g5.bgColor.close,this[KM]);return OlI(this,b,this[CS])}}}}J2b=Object.defineProperties(()=>{},{...DM,level:{enumerable:!0,get(){return this[uCI].level},set(I){this[uCI].level=I}}});Object.defineProperties(pS.prototype,DM);E2b=pS(),lRY=pS({level:rOG?rOG.level:0}),aZ=E2b});var v2b,C2b,p2b;var IMG=a(()=>{v2b={visibilityState:"visible",documentElement:{lang:"en"},addEventListener:(I,G)=>{}},C2b={document:v2b,location:{href:"node://localhost",pathname:"/"},addEventListener:(I,G)=>{if(I==="beforeunload")process.on("exit",()=>{if(typeof G==="function")G({});else G.handleEvent({})})},focus:()=>{},innerHeight:768,innerWidth:1024},p2b={sendBeacon:(I,G)=>{return!0},userAgent:"Mozilla/5.0 (Node.js) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0",language:"en-US"};if(typeof window>"u")global.window=C2b;if(typeof navigator>"u")global.navigator=p2b});var GMG="tengu-token-efficient-tools",ZMG="token-efficient-tools-2024-12-11",lMG="tengu-use-external-updater",bMG="claude-code-20250219";var MlI;var aCI=a(()=>{wY();TW();MlI=cb(async()=>{let I=[bMG];if(process.env.USER_TYPE==="ant"||process.env.SWE_BENCH){if(await Ru(GMG))I.push(ZMG)}return I})});async function KlI(){try{let[I,G,Z,l,b]=await Promise.all([y2b(),u2b(),WMG(),L2b(),g2b()]);return{commitHash:I,branchName:G,remoteUrl:Z,isHeadOnRemote:l,isClean:b}}catch(I){return null}}var ah,y2b=async()=>{let{stdout:I}=await SW("git",["rev-parse","HEAD"]);return I.trim()},u2b=async()=>{let{stdout:I}=await SW("git",["rev-parse","--abbrev-ref","HEAD"],void 0,void 0,!1);return I.trim()},WMG=async()=>{let{stdout:I,code:G}=await SW("git",["remote","get-url","origin"],void 0,void 0,!1);return G===0?I.trim():null},L2b=async()=>{let{code:I}=await SW("git",["rev-parse","@{u}"],void 0,void 0,!1);return I===0},g2b=async()=>{let{stdout:I}=await SW("git",["status","--porcelain"],void 0,void 0,!1);return I.trim().length===0},jM=async()=>{let I=await WMG();if(I&&/github/i.test(I))return"github";return"gitlab"};var a5=a(()=>{wY();iR();ah=cb(async()=>{let{code:I}=await SW("git",["rev-parse","--is-inside-work-tree"]);return I===0})});var wz;var DlI=a(()=>{wz=`claude-cli/1.3.4 (${process.env.USER_TYPE})`});var dMG=w((VMG)=>{Object.defineProperty(VMG,"__esModule",{value:!0});var NMG=KI("buffer"),Jz={INVALID_ENCODING:"Invalid encoding provided. Please specify a valid encoding the internal Node.js Buffer supports.",INVALID_SMARTBUFFER_SIZE:"Invalid size provided. Size must be a valid integer greater than zero.",INVALID_SMARTBUFFER_BUFFER:"Invalid Buffer provided in SmartBufferOptions.",INVALID_SMARTBUFFER_OBJECT:"Invalid SmartBufferOptions object supplied to SmartBuffer constructor or factory methods.",INVALID_OFFSET:"An invalid offset value was provided.",INVALID_OFFSET_NON_NUMBER:"An invalid offset value was provided. A numeric value is required.",INVALID_LENGTH:"An invalid length value was provided.",INVALID_LENGTH_NON_NUMBER:"An invalid length value was provived. A numeric value is required.",INVALID_TARGET_OFFSET:"Target offset is beyond the bounds of the internal SmartBuffer data.",INVALID_TARGET_LENGTH:"Specified length value moves cursor beyong the bounds of the internal SmartBuffer data.",INVALID_READ_BEYOND_BOUNDS:"Attempted to read beyond the bounds of the managed data.",INVALID_WRITE_BEYOND_BOUNDS:"Attempted to write beyond the bounds of the managed data."};VMG.ERRORS=Jz;function a2b(I){if(!NMG.Buffer.isEncoding(I))throw Error(Jz.INVALID_ENCODING)}VMG.checkEncoding=a2b;function YMG(I){return typeof I==="number"&&isFinite(I)&&U2b(I)}VMG.isFiniteInteger=YMG;function cMG(I,G){if(typeof I==="number"){if(!YMG(I)||I<0)throw Error(G?Jz.INVALID_OFFSET:Jz.INVALID_LENGTH)}else throw Error(G?Jz.INVALID_OFFSET_NON_NUMBER:Jz.INVALID_LENGTH_NON_NUMBER)}function z2b(I){cMG(I,!1)}VMG.checkLengthValue=z2b;function B2b(I){cMG(I,!0)}VMG.checkOffsetValue=B2b;function k2b(I,G){if(I<0||I>G.length)throw Error(Jz.INVALID_TARGET_OFFSET)}VMG.checkTargetOffset=k2b;function U2b(I){return typeof I==="number"&&isFinite(I)&&Math.floor(I)===I}function x2b(I){if(typeof BigInt>"u")throw Error("Platform does not support JS BigInt type.");if(typeof NMG.Buffer.prototype[I]>"u")throw Error(`Platform does not support Buffer.prototype.${I}.`)}VMG.bigIntAndBufferInt64Check=x2b});var XMG=w((QMG)=>{Object.defineProperty(QMG,"__esModule",{value:!0});var iW=dMG(),mMG=4096,T2b="utf8";class zCI{constructor(I){if(this.length=0,this._encoding=T2b,this._writeOffset=0,this._readOffset=0,zCI.isSmartBufferOptions(I)){if(I.encoding)iW.checkEncoding(I.encoding),this._encoding=I.encoding;if(I.size)if(iW.isFiniteInteger(I.size)&&I.size>0)this._buff=Buffer.allocUnsafe(I.size);else throw Error(iW.ERRORS.INVALID_SMARTBUFFER_SIZE);else if(I.buff)if(Buffer.isBuffer(I.buff))this._buff=I.buff,this.length=I.buff.length;else throw Error(iW.ERRORS.INVALID_SMARTBUFFER_BUFFER);else this._buff=Buffer.allocUnsafe(mMG)}else{if(typeof I<"u")throw Error(iW.ERRORS.INVALID_SMARTBUFFER_OBJECT);this._buff=Buffer.allocUnsafe(mMG)}}static fromSize(I,G){return new this({size:I,encoding:G})}static fromBuffer(I,G){return new this({buff:I,encoding:G})}static fromOptions(I){return new this(I)}static isSmartBufferOptions(I){let G=I;return G&&(G.encoding!==void 0||G.size!==void 0||G.buff!==void 0)}readInt8(I){return this._readNumberValue(Buffer.prototype.readInt8,1,I)}readInt16BE(I){return this._readNumberValue(Buffer.prototype.readInt16BE,2,I)}readInt16LE(I){return this._readNumberValue(Buffer.prototype.readInt16LE,2,I)}readInt32BE(I){return this._readNumberValue(Buffer.prototype.readInt32BE,4,I)}readInt32LE(I){return this._readNumberValue(Buffer.prototype.readInt32LE,4,I)}readBigInt64BE(I){return iW.bigIntAndBufferInt64Check("readBigInt64BE"),this._readNumberValue(Buffer.prototype.readBigInt64BE,8,I)}readBigInt64LE(I){return iW.bigIntAndBufferInt64Check("readBigInt64LE"),this._readNumberValue(Buffer.prototype.readBigInt64LE,8,I)}writeInt8(I,G){return this._writeNumberValue(Buffer.prototype.writeInt8,1,I,G),this}insertInt8(I,G){return this._insertNumberValue(Buffer.prototype.writeInt8,1,I,G)}writeInt16BE(I,G){return this._writeNumberValue(Buffer.prototype.writeInt16BE,2,I,G)}insertInt16BE(I,G){return this._insertNumberValue(Buffer.prototype.writeInt16BE,2,I,G)}writeInt16LE(I,G){return this._writeNumberValue(Buffer.prototype.writeInt16LE,2,I,G)}insertInt16LE(I,G){return this._insertNumberValue(Buffer.prototype.writeInt16LE,2,I,G)}writeInt32BE(I,G){return this._writeNumberValue(Buffer.prototype.writeInt32BE,4,I,G)}insertInt32BE(I,G){return this._insertNumberValue(Buffer.prototype.writeInt32BE,4,I,G)}writeInt32LE(I,G){return this._writeNumberValue(Buffer.prototype.writeInt32LE,4,I,G)}insertInt32LE(I,G){return this._insertNumberValue(Buffer.prototype.writeInt32LE,4,I,G)}writeBigInt64BE(I,G){return iW.bigIntAndBufferInt64Check("writeBigInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigInt64BE,8,I,G)}insertBigInt64BE(I,G){return iW.bigIntAndBufferInt64Check("writeBigInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigInt64BE,8,I,G)}writeBigInt64LE(I,G){return iW.bigIntAndBufferInt64Check("writeBigInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigInt64LE,8,I,G)}insertBigInt64LE(I,G){return iW.bigIntAndBufferInt64Check("writeBigInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigInt64LE,8,I,G)}readUInt8(I){return this._readNumberValue(Buffer.prototype.readUInt8,1,I)}readUInt16BE(I){return this._readNumberValue(Buffer.prototype.readUInt16BE,2,I)}readUInt16LE(I){return this._readNumberValue(Buffer.prototype.readUInt16LE,2,I)}readUInt32BE(I){return this._readNumberValue(Buffer.prototype.readUInt32BE,4,I)}readUInt32LE(I){return this._readNumberValue(Buffer.prototype.readUInt32LE,4,I)}readBigUInt64BE(I){return iW.bigIntAndBufferInt64Check("readBigUInt64BE"),this._readNumberValue(Buffer.prototype.readBigUInt64BE,8,I)}readBigUInt64LE(I){return iW.bigIntAndBufferInt64Check("readBigUInt64LE"),this._readNumberValue(Buffer.prototype.readBigUInt64LE,8,I)}writeUInt8(I,G){return this._writeNumberValue(Buffer.prototype.writeUInt8,1,I,G)}insertUInt8(I,G){return this._insertNumberValue(Buffer.prototype.writeUInt8,1,I,G)}writeUInt16BE(I,G){return this._writeNumberValue(Buffer.prototype.writeUInt16BE,2,I,G)}insertUInt16BE(I,G){return this._insertNumberValue(Buffer.prototype.writeUInt16BE,2,I,G)}writeUInt16LE(I,G){return this._writeNumberValue(Buffer.prototype.writeUInt16LE,2,I,G)}insertUInt16LE(I,G){return this._insertNumberValue(Buffer.prototype.writeUInt16LE,2,I,G)}writeUInt32BE(I,G){return this._writeNumberValue(Buffer.prototype.writeUInt32BE,4,I,G)}insertUInt32BE(I,G){return this._insertNumberValue(Buffer.prototype.writeUInt32BE,4,I,G)}writeUInt32LE(I,G){return this._writeNumberValue(Buffer.prototype.writeUInt32LE,4,I,G)}insertUInt32LE(I,G){return this._insertNumberValue(Buffer.prototype.writeUInt32LE,4,I,G)}writeBigUInt64BE(I,G){return iW.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64BE,8,I,G)}insertBigUInt64BE(I,G){return iW.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64BE,8,I,G)}writeBigUInt64LE(I,G){return iW.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64LE,8,I,G)}insertBigUInt64LE(I,G){return iW.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64LE,8,I,G)}readFloatBE(I){return this._readNumberValue(Buffer.prototype.readFloatBE,4,I)}readFloatLE(I){return this._readNumberValue(Buffer.prototype.readFloatLE,4,I)}writeFloatBE(I,G){return this._writeNumberValue(Buffer.prototype.writeFloatBE,4,I,G)}insertFloatBE(I,G){return this._insertNumberValue(Buffer.prototype.writeFloatBE,4,I,G)}writeFloatLE(I,G){return this._writeNumberValue(Buffer.prototype.writeFloatLE,4,I,G)}insertFloatLE(I,G){return this._insertNumberValue(Buffer.prototype.writeFloatLE,4,I,G)}readDoubleBE(I){return this._readNumberValue(Buffer.prototype.readDoubleBE,8,I)}readDoubleLE(I){return this._readNumberValue(Buffer.prototype.readDoubleLE,8,I)}writeDoubleBE(I,G){return this._writeNumberValue(Buffer.prototype.writeDoubleBE,8,I,G)}insertDoubleBE(I,G){return this._insertNumberValue(Buffer.prototype.writeDoubleBE,8,I,G)}writeDoubleLE(I,G){return this._writeNumberValue(Buffer.prototype.writeDoubleLE,8,I,G)}insertDoubleLE(I,G){return this._insertNumberValue(Buffer.prototype.writeDoubleLE,8,I,G)}readString(I,G){let Z;if(typeof I==="number")iW.checkLengthValue(I),Z=Math.min(I,this.length-this._readOffset);else G=I,Z=this.length-this._readOffset;if(typeof G<"u")iW.checkEncoding(G);let l=this._buff.slice(this._readOffset,this._readOffset+Z).toString(G||this._encoding);return this._readOffset+=Z,l}insertString(I,G,Z){return iW.checkOffsetValue(G),this._handleString(I,!0,G,Z)}writeString(I,G,Z){return this._handleString(I,!1,G,Z)}readStringNT(I){if(typeof I<"u")iW.checkEncoding(I);let G=this.length;for(let l=this._readOffset;l<this.length;l++)if(this._buff[l]===0){G=l;break}let Z=this._buff.slice(this._readOffset,G);return this._readOffset=G+1,Z.toString(I||this._encoding)}insertStringNT(I,G,Z){return iW.checkOffsetValue(G),this.insertString(I,G,Z),this.insertUInt8(0,G+I.length),this}writeStringNT(I,G,Z){return this.writeString(I,G,Z),this.writeUInt8(0,typeof G==="number"?G+I.length:this.writeOffset),this}readBuffer(I){if(typeof I<"u")iW.checkLengthValue(I);let G=typeof I==="number"?I:this.length,Z=Math.min(this.length,this._readOffset+G),l=this._buff.slice(this._readOffset,Z);return this._readOffset=Z,l}insertBuffer(I,G){return iW.checkOffsetValue(G),this._handleBuffer(I,!0,G)}writeBuffer(I,G){return this._handleBuffer(I,!1,G)}readBufferNT(){let I=this.length;for(let Z=this._readOffset;Z<this.length;Z++)if(this._buff[Z]===0){I=Z;break}let G=this._buff.slice(this._readOffset,I);return this._readOffset=I+1,G}insertBufferNT(I,G){return iW.checkOffsetValue(G),this.insertBuffer(I,G),this.insertUInt8(0,G+I.length),this}writeBufferNT(I,G){if(typeof G<"u")iW.checkOffsetValue(G);return this.writeBuffer(I,G),this.writeUInt8(0,typeof G==="number"?G+I.length:this._writeOffset),this}clear(){return this._writeOffset=0,this._readOffset=0,this.length=0,this}remaining(){return this.length-this._readOffset}get readOffset(){return this._readOffset}set readOffset(I){iW.checkOffsetValue(I),iW.checkTargetOffset(I,this),this._readOffset=I}get writeOffset(){return this._writeOffset}set writeOffset(I){iW.checkOffsetValue(I),iW.checkTargetOffset(I,this),this._writeOffset=I}get encoding(){return this._encoding}set encoding(I){iW.checkEncoding(I),this._encoding=I}get internalBuffer(){return this._buff}toBuffer(){return this._buff.slice(0,this.length)}toString(I){let G=typeof I==="string"?I:this._encoding;return iW.checkEncoding(G),this._buff.toString(G,0,this.length)}destroy(){return this.clear(),this}_handleString(I,G,Z,l){let b=this._writeOffset,W=this._encoding;if(typeof Z==="number")b=Z;else if(typeof Z==="string")iW.checkEncoding(Z),W=Z;if(typeof l==="string")iW.checkEncoding(l),W=l;let N=Buffer.byteLength(I,W);if(G)this.ensureInsertable(N,b);else this._ensureWriteable(N,b);if(this._buff.write(I,b,N,W),G)this._writeOffset+=N;else if(typeof Z==="number")this._writeOffset=Math.max(this._writeOffset,b+N);else this._writeOffset+=N;return this}_handleBuffer(I,G,Z){let l=typeof Z==="number"?Z:this._writeOffset;if(G)this.ensureInsertable(I.length,l);else this._ensureWriteable(I.length,l);if(I.copy(this._buff,l),G)this._writeOffset+=I.length;else if(typeof Z==="number")this._writeOffset=Math.max(this._writeOffset,l+I.length);else this._writeOffset+=I.length;return this}ensureReadable(I,G){let Z=this._readOffset;if(typeof G<"u")iW.checkOffsetValue(G),Z=G;if(Z<0||Z+I>this.length)throw Error(iW.ERRORS.INVALID_READ_BEYOND_BOUNDS)}ensureInsertable(I,G){if(iW.checkOffsetValue(G),this._ensureCapacity(this.length+I),G<this.length)this._buff.copy(this._buff,G+I,G,this._buff.length);if(G+I>this.length)this.length=G+I;else this.length+=I}_ensureWriteable(I,G){let Z=typeof G==="number"?G:this._writeOffset;if(this._ensureCapacity(Z+I),Z+I>this.length)this.length=Z+I}_ensureCapacity(I){let G=this._buff.length;if(I>G){let Z=this._buff,l=G*3/2+1;if(l<I)l=I;this._buff=Buffer.allocUnsafe(l),Z.copy(this._buff,0,0,G)}}_readNumberValue(I,G,Z){this.ensureReadable(G,Z);let l=I.call(this._buff,typeof Z==="number"?Z:this._readOffset);if(typeof Z>"u")this._readOffset+=G;return l}_insertNumberValue(I,G,Z,l){return iW.checkOffsetValue(l),this.ensureInsertable(G,l),I.call(this._buff,Z,l),this._writeOffset+=G,this}_writeNumberValue(I,G,Z,l){if(typeof l==="number"){if(l<0)throw Error(iW.ERRORS.INVALID_WRITE_BEYOND_BOUNDS);iW.checkOffsetValue(l)}let b=typeof l==="number"?l:this._writeOffset;if(this._ensureWriteable(G,b),I.call(this._buff,Z,b),typeof l==="number")this._writeOffset=Math.max(this._writeOffset,b+G);else this._writeOffset+=G;return this}}QMG.SmartBuffer=zCI});var BCI=w((AMG)=>{Object.defineProperty(AMG,"__esModule",{value:!0});AMG.SOCKS5_NO_ACCEPTABLE_AUTH=AMG.SOCKS5_CUSTOM_AUTH_END=AMG.SOCKS5_CUSTOM_AUTH_START=AMG.SOCKS_INCOMING_PACKET_SIZES=AMG.SocksClientState=AMG.Socks5Response=AMG.Socks5HostType=AMG.Socks5Auth=AMG.Socks4Response=AMG.SocksCommand=AMG.ERRORS=AMG.DEFAULT_TIMEOUT=void 0;var i2b=30000;AMG.DEFAULT_TIMEOUT=i2b;var P2b={InvalidSocksCommand:"An invalid SOCKS command was provided. Valid options are connect, bind, and associate.",InvalidSocksCommandForOperation:"An invalid SOCKS command was provided. Only a subset of commands are supported for this operation.",InvalidSocksCommandChain:"An invalid SOCKS command was provided. Chaining currently only supports the connect command.",InvalidSocksClientOptionsDestination:"An invalid destination host was provided.",InvalidSocksClientOptionsExistingSocket:"An invalid existing socket was provided. This should be an instance of stream.Duplex.",InvalidSocksClientOptionsProxy:"Invalid SOCKS proxy details were provided.",InvalidSocksClientOptionsTimeout:"An invalid timeout value was provided. Please enter a value above 0 (in ms).",InvalidSocksClientOptionsProxiesLength:"At least two socks proxies must be provided for chaining.",InvalidSocksClientOptionsCustomAuthRange:"Custom auth must be a value between 0x80 and 0xFE.",InvalidSocksClientOptionsCustomAuthOptions:"When a custom_auth_method is provided, custom_auth_request_handler, custom_auth_response_size, and custom_auth_response_handler must also be provided and valid.",NegotiationError:"Negotiation error",SocketClosed:"Socket closed",ProxyConnectionTimedOut:"Proxy connection timed out",InternalError:"SocksClient internal error (this should not happen)",InvalidSocks4HandshakeResponse:"Received invalid Socks4 handshake response",Socks4ProxyRejectedConnection:"Socks4 Proxy rejected connection",InvalidSocks4IncomingConnectionResponse:"Socks4 invalid incoming connection response",Socks4ProxyRejectedIncomingBoundConnection:"Socks4 Proxy rejected incoming bound connection",InvalidSocks5InitialHandshakeResponse:"Received invalid Socks5 initial handshake response",InvalidSocks5IntiailHandshakeSocksVersion:"Received invalid Socks5 initial handshake (invalid socks version)",InvalidSocks5InitialHandshakeNoAcceptedAuthType:"Received invalid Socks5 initial handshake (no accepted authentication type)",InvalidSocks5InitialHandshakeUnknownAuthType:"Received invalid Socks5 initial handshake (unknown authentication type)",Socks5AuthenticationFailed:"Socks5 Authentication failed",InvalidSocks5FinalHandshake:"Received invalid Socks5 final handshake response",InvalidSocks5FinalHandshakeRejected:"Socks5 proxy rejected connection",InvalidSocks5IncomingConnectionResponse:"Received invalid Socks5 incoming connection response",Socks5ProxyRejectedIncomingBoundConnection:"Socks5 Proxy rejected incoming bound connection"};AMG.ERRORS=P2b;var _2b={Socks5InitialHandshakeResponse:2,Socks5UserPassAuthenticationResponse:2,Socks5ResponseHeader:5,Socks5ResponseIPv4:10,Socks5ResponseIPv6:22,Socks5ResponseHostname:(I)=>I+7,Socks4Response:8};AMG.SOCKS_INCOMING_PACKET_SIZES=_2b;var FMG;(function(I){I[I.connect=1]="connect",I[I.bind=2]="bind",I[I.associate=3]="associate"})(FMG||(AMG.SocksCommand=FMG={}));var RMG;(function(I){I[I.Granted=90]="Granted",I[I.Failed=91]="Failed",I[I.Rejected=92]="Rejected",I[I.RejectedIdent=93]="RejectedIdent"})(RMG||(AMG.Socks4Response=RMG={}));var HMG;(function(I){I[I.NoAuth=0]="NoAuth",I[I.GSSApi=1]="GSSApi",I[I.UserPass=2]="UserPass"})(HMG||(AMG.Socks5Auth=HMG={}));var f2b=128;AMG.SOCKS5_CUSTOM_AUTH_START=f2b;var s2b=254;AMG.SOCKS5_CUSTOM_AUTH_END=s2b;var $2b=255;AMG.SOCKS5_NO_ACCEPTABLE_AUTH=$2b;var hMG;(function(I){I[I.Granted=0]="Granted",I[I.Failure=1]="Failure",I[I.NotAllowed=2]="NotAllowed",I[I.NetworkUnreachable=3]="NetworkUnreachable",I[I.HostUnreachable=4]="HostUnreachable",I[I.ConnectionRefused=5]="ConnectionRefused",I[I.TTLExpired=6]="TTLExpired",I[I.CommandNotSupported=7]="CommandNotSupported",I[I.AddressNotSupported=8]="AddressNotSupported"})(hMG||(AMG.Socks5Response=hMG={}));var wMG;(function(I){I[I.IPv4=1]="IPv4",I[I.Hostname=3]="Hostname",I[I.IPv6=4]="IPv6"})(wMG||(AMG.Socks5HostType=wMG={}));var JMG;(function(I){I[I.Created=0]="Created",I[I.Connecting=1]="Connecting",I[I.Connected=2]="Connected",I[I.SentInitialHandshake=3]="SentInitialHandshake",I[I.ReceivedInitialHandshakeResponse=4]="ReceivedInitialHandshakeResponse",I[I.SentAuthentication=5]="SentAuthentication",I[I.ReceivedAuthenticationResponse=6]="ReceivedAuthenticationResponse",I[I.SentFinalHandshake=7]="SentFinalHandshake",I[I.ReceivedFinalResponse=8]="ReceivedFinalResponse",I[I.BoundWaitingForConnection=9]="BoundWaitingForConnection",I[I.Established=10]="Established",I[I.Disconnected=11]="Disconnected",I[I.Error=99]="Error"})(JMG||(AMG.SocksClientState=JMG={}))});var kCI=w((CMG)=>{Object.defineProperty(CMG,"__esModule",{value:!0});CMG.shuffleArray=CMG.SocksClientError=void 0;class vMG extends Error{constructor(I,G){super(I);this.options=G}}CMG.SocksClientError=vMG;function Ydb(I){for(let G=I.length-1;G>0;G--){let Z=Math.floor(Math.random()*(G+1));[I[G],I[Z]]=[I[Z],I[G]]}}CMG.shuffleArray=Ydb});var jlI=w((uMG)=>{Object.defineProperty(uMG,"__esModule",{value:!0});uMG.isInSubnet=Vdb;uMG.isCorrect=ddb;uMG.numberToPaddedHex=yMG;uMG.stringToPaddedHex=mdb;uMG.testBit=Qdb;function Vdb(I){if(this.subnetMask<I.subnetMask)return!1;if(this.mask(I.subnetMask)===I.mask())return!0;return!1}function ddb(I){return function(){if(this.addressMinusSuffix!==this.correctForm())return!1;if(this.subnetMask===I&&!this.parsedSubnet)return!0;return this.parsedSubnet===String(this.subnetMask)}}function yMG(I){return I.toString(16).padStart(2,"0")}function mdb(I){return yMG(parseInt(I,10))}function Qdb(I,G){let{length:Z}=I;if(G>Z)return!1;let l=Z-G;return I.substring(l,l+1)==="1"}});var UCI=w((LMG)=>{Object.defineProperty(LMG,"__esModule",{value:!0});LMG.RE_SUBNET_STRING=LMG.RE_ADDRESS=LMG.GROUPS=LMG.BITS=void 0;LMG.BITS=32;LMG.GROUPS=4;LMG.RE_ADDRESS=/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/g;LMG.RE_SUBNET_STRING=/\/\d{1,2}$/});var nlI=w((zMG)=>{Object.defineProperty(zMG,"__esModule",{value:!0});zMG.AddressError=void 0;class aMG extends Error{constructor(I,G){super(I);this.name="AddressError",this.parseMessage=G}}zMG.AddressError=aMG});var xCI=w((X4)=>{var Edb=X4&&X4.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;var b=Object.getOwnPropertyDescriptor(G,Z);if(!b||("get"in b?!G.__esModule:b.writable||b.configurable))b={enumerable:!0,get:function(){return G[Z]}};Object.defineProperty(I,l,b)}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),vdb=X4&&X4.__setModuleDefault||(Object.create?function(I,G){Object.defineProperty(I,"default",{enumerable:!0,value:G})}:function(I,G){I.default=G}),kMG=X4&&X4.__importStar||function(I){if(I&&I.__esModule)return I;var G={};if(I!=null){for(var Z in I)if(Z!=="default"&&Object.prototype.hasOwnProperty.call(I,Z))Edb(G,I,Z)}return vdb(G,I),G};Object.defineProperty(X4,"__esModule",{value:!0});X4.Address4=void 0;var nM=kMG(jlI()),z5=kMG(UCI()),yS=nlI();class PR{constructor(I){this.groups=z5.GROUPS,this.parsedAddress=[],this.parsedSubnet="",this.subnet="/32",this.subnetMask=32,this.v4=!0,this.isCorrect=nM.isCorrect(z5.BITS),this.isInSubnet=nM.isInSubnet,this.address=I;let G=z5.RE_SUBNET_STRING.exec(I);if(G){if(this.parsedSubnet=G[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,this.subnetMask<0||this.subnetMask>z5.BITS)throw new yS.AddressError("Invalid subnet mask.");I=I.replace(z5.RE_SUBNET_STRING,"")}this.addressMinusSuffix=I,this.parsedAddress=this.parse(I)}static isValid(I){try{return new PR(I),!0}catch(G){return!1}}parse(I){let G=I.split(".");if(!I.match(z5.RE_ADDRESS))throw new yS.AddressError("Invalid IPv4 address.");return G}correctForm(){return this.parsedAddress.map((I)=>parseInt(I,10)).join(".")}static fromHex(I){let G=I.replace(/:/g,"").padStart(8,"0"),Z=[],l;for(l=0;l<8;l+=2){let b=G.slice(l,l+2);Z.push(parseInt(b,16))}return new PR(Z.join("."))}static fromInteger(I){return PR.fromHex(I.toString(16))}static fromArpa(I){let Z=I.replace(/(\.in-addr\.arpa)?\.$/,"").split(".").reverse().join(".");return new PR(Z)}toHex(){return this.parsedAddress.map((I)=>nM.stringToPaddedHex(I)).join(":")}toArray(){return this.parsedAddress.map((I)=>parseInt(I,10))}toGroup6(){let I=[],G;for(G=0;G<z5.GROUPS;G+=2)I.push(`${nM.stringToPaddedHex(this.parsedAddress[G])}${nM.stringToPaddedHex(this.parsedAddress[G+1])}`);return I.join(":")}bigInt(){return BigInt(`0x${this.parsedAddress.map((I)=>nM.stringToPaddedHex(I)).join("")}`)}_startAddress(){return BigInt(`0b${this.mask()+"0".repeat(z5.BITS-this.subnetMask)}`)}startAddress(){return PR.fromBigInt(this._startAddress())}startAddressExclusive(){let I=BigInt("1");return PR.fromBigInt(this._startAddress()+I)}_endAddress(){return BigInt(`0b${this.mask()+"1".repeat(z5.BITS-this.subnetMask)}`)}endAddress(){return PR.fromBigInt(this._endAddress())}endAddressExclusive(){let I=BigInt("1");return PR.fromBigInt(this._endAddress()-I)}static fromBigInt(I){return PR.fromHex(I.toString(16))}static fromByteArray(I){if(I.length!==4)throw new yS.AddressError("IPv4 addresses require exactly 4 bytes");for(let G=0;G<I.length;G++)if(!Number.isInteger(I[G])||I[G]<0||I[G]>255)throw new yS.AddressError("All bytes must be integers between 0 and 255");return this.fromUnsignedByteArray(I)}static fromUnsignedByteArray(I){if(I.length!==4)throw new yS.AddressError("IPv4 addresses require exactly 4 bytes");let G=I.join(".");return new PR(G)}mask(I){if(I===void 0)I=this.subnetMask;return this.getBitsBase2(0,I)}getBitsBase2(I,G){return this.binaryZeroPad().slice(I,G)}reverseForm(I){if(!I)I={};let G=this.correctForm().split(".").reverse().join(".");if(I.omitSuffix)return G;return`${G}.in-addr.arpa.`}isMulticast(){return this.isInSubnet(new PR("224.0.0.0/4"))}binaryZeroPad(){return this.bigInt().toString(2).padStart(z5.BITS,"0")}groupForV6(){let I=this.parsedAddress;return this.address.replace(z5.RE_ADDRESS,`<span class="hover-group group-v4 group-6">${I.slice(0,2).join(".")}</span>.<span class="hover-group group-v4 group-7">${I.slice(2,4).join(".")}</span>`)}}X4.Address4=PR});var OCI=w((UMG)=>{Object.defineProperty(UMG,"__esModule",{value:!0});UMG.RE_URL_WITH_PORT=UMG.RE_URL=UMG.RE_ZONE_STRING=UMG.RE_SUBNET_STRING=UMG.RE_BAD_ADDRESS=UMG.RE_BAD_CHARACTERS=UMG.TYPES=UMG.SCOPES=UMG.GROUPS=UMG.BITS=void 0;UMG.BITS=128;UMG.GROUPS=8;UMG.SCOPES={0:"Reserved",1:"Interface local",2:"Link local",4:"Admin local",5:"Site local",8:"Organization local",14:"Global",15:"Reserved"};UMG.TYPES={"ff01::1/128":"Multicast (All nodes on this interface)","ff01::2/128":"Multicast (All routers on this interface)","ff02::1/128":"Multicast (All nodes on this link)","ff02::2/128":"Multicast (All routers on this link)","ff05::2/128":"Multicast (All routers in this site)","ff02::5/128":"Multicast (OSPFv3 AllSPF routers)","ff02::6/128":"Multicast (OSPFv3 AllDR routers)","ff02::9/128":"Multicast (RIP routers)","ff02::a/128":"Multicast (EIGRP routers)","ff02::d/128":"Multicast (PIM routers)","ff02::16/128":"Multicast (MLDv2 reports)","ff01::fb/128":"Multicast (mDNSv6)","ff02::fb/128":"Multicast (mDNSv6)","ff05::fb/128":"Multicast (mDNSv6)","ff02::1:2/128":"Multicast (All DHCP servers and relay agents on this link)","ff05::1:2/128":"Multicast (All DHCP servers and relay agents in this site)","ff02::1:3/128":"Multicast (All DHCP servers on this link)","ff05::1:3/128":"Multicast (All DHCP servers in this site)","::/128":"Unspecified","::1/128":"Loopback","ff00::/8":"Multicast","fe80::/10":"Link-local unicast"};UMG.RE_BAD_CHARACTERS=/([^0-9a-f:/%])/gi;UMG.RE_BAD_ADDRESS=/([0-9a-f]{5,}|:{3,}|[^:]:$|^:[^:]|\/$)/gi;UMG.RE_SUBNET_STRING=/\/\d{1,3}(?=%|$)/;UMG.RE_ZONE_STRING=/%.*$/;UMG.RE_URL=/^\[{0,1}([0-9a-f:]+)\]{0,1}/;UMG.RE_URL_WITH_PORT=/\[([0-9a-f:]+)\]:([0-9]{1,5})/});var MCI=w((KMG)=>{Object.defineProperty(KMG,"__esModule",{value:!0});KMG.spanAllZeroes=OMG;KMG.spanAll=kdb;KMG.spanLeadingZeroes=Udb;KMG.simpleGroup=xdb;function OMG(I){return I.replace(/(0+)/g,'<span class="zero">$1</span>')}function kdb(I,G=0){return I.split("").map((l,b)=>`<span class="digit value-${l} position-${b+G}">${OMG(l)}</span>`).join("")}function MMG(I){return I.replace(/^(0+)/,'<span class="zero">$1</span>')}function Udb(I){return I.split(":").map((Z)=>MMG(Z)).join(":")}function xdb(I,G=0){return I.split(":").map((l,b)=>{if(/group-v4/.test(l))return l;return`<span class="hover-group group-${b+G}">${MMG(l)}</span>`})}});var DMG=w((L1)=>{var jdb=L1&&L1.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;var b=Object.getOwnPropertyDescriptor(G,Z);if(!b||("get"in b?!G.__esModule:b.writable||b.configurable))b={enumerable:!0,get:function(){return G[Z]}};Object.defineProperty(I,l,b)}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),ndb=L1&&L1.__setModuleDefault||(Object.create?function(I,G){Object.defineProperty(I,"default",{enumerable:!0,value:G})}:function(I,G){I.default=G}),qdb=L1&&L1.__importStar||function(I){if(I&&I.__esModule)return I;var G={};if(I!=null){for(var Z in I)if(Z!=="default"&&Object.prototype.hasOwnProperty.call(I,Z))jdb(G,I,Z)}return ndb(G,I),G};Object.defineProperty(L1,"__esModule",{value:!0});L1.ADDRESS_BOUNDARY=void 0;L1.groupPossibilities=TlI;L1.padGroup=qlI;L1.simpleRegularExpression=Sdb;L1.possibleElisions=idb;var Tdb=qdb(OCI());function TlI(I){return`(${I.join("|")})`}function qlI(I){if(I.length<4)return`0{0,${4-I.length}}${I}`;return I}L1.ADDRESS_BOUNDARY="[^A-Fa-f0-9:]";function Sdb(I){let G=[];I.forEach((l,b)=>{if(parseInt(l,16)===0)G.push(b)});let Z=G.map((l)=>I.map((b,W)=>{if(W===l){let N=W===0||W===Tdb.GROUPS-1?":":"";return TlI([qlI(b),N])}return qlI(b)}).join(":"));return Z.push(I.map(qlI).join(":")),TlI(Z)}function idb(I,G,Z){let l=G?"":":",b=Z?"":":",W=[];if(!G&&!Z)W.push("::");if(G&&Z)W.push("");if(Z&&!G||!Z&&G)W.push(":");W.push(`${l}(:0{1,4}){1,${I-1}}`),W.push(`(0{1,4}:){1,${I-1}}${b}`),W.push(`(0{1,4}:){${I-1}}0{1,4}`);for(let N=1;N<I-1;N++)for(let Y=1;Y<I-N;Y++)W.push(`(0{1,4}:){${Y}}:(0{1,4}:){${I-Y-N-1}}0{1,4}`);return TlI(W)}});var TMG=w((F4)=>{var Pdb=F4&&F4.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;var b=Object.getOwnPropertyDescriptor(G,Z);if(!b||("get"in b?!G.__esModule:b.writable||b.configurable))b={enumerable:!0,get:function(){return G[Z]}};Object.defineProperty(I,l,b)}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),_db=F4&&F4.__setModuleDefault||(Object.create?function(I,G){Object.defineProperty(I,"default",{enumerable:!0,value:G})}:function(I,G){I.default=G}),PlI=F4&&F4.__importStar||function(I){if(I&&I.__esModule)return I;var G={};if(I!=null){for(var Z in I)if(Z!=="default"&&Object.prototype.hasOwnProperty.call(I,Z))Pdb(G,I,Z)}return _db(G,I),G};Object.defineProperty(F4,"__esModule",{value:!0});F4.Address6=void 0;var jMG=PlI(jlI()),KCI=PlI(UCI()),Kc=PlI(OCI()),DCI=PlI(MCI()),Az=xCI(),Ez=DMG(),ZC=nlI(),SlI=jlI();function ilI(I){if(!I)throw Error("Assertion failed.")}function fdb(I){let G=/(\d+)(\d{3})/;while(G.test(I))I=I.replace(G,"$1,$2");return I}function sdb(I){return I=I.replace(/^(0{1,})([1-9]+)$/,'<span class="parse-error">$1</span>$2'),I=I.replace(/^(0{1,})(0)$/,'<span class="parse-error">$1</span>$2'),I}function $db(I,G){let Z=[],l=[],b;for(b=0;b<I.length;b++)if(b<G[0])Z.push(I[b]);else if(b>G[1])l.push(I[b]);return Z.concat(["compact"]).concat(l)}function nMG(I){return parseInt(I,16).toString(16).padStart(4,"0")}function qMG(I){return I&255}class bm{constructor(I,G){if(this.addressMinusSuffix="",this.parsedSubnet="",this.subnet="/128",this.subnetMask=128,this.v4=!1,this.zone="",this.isInSubnet=jMG.isInSubnet,this.isCorrect=jMG.isCorrect(Kc.BITS),G===void 0)this.groups=Kc.GROUPS;else this.groups=G;this.address=I;let Z=Kc.RE_SUBNET_STRING.exec(I);if(Z){if(this.parsedSubnet=Z[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,Number.isNaN(this.subnetMask)||this.subnetMask<0||this.subnetMask>Kc.BITS)throw new ZC.AddressError("Invalid subnet mask.");I=I.replace(Kc.RE_SUBNET_STRING,"")}else if(/\//.test(I))throw new ZC.AddressError("Invalid subnet mask.");let l=Kc.RE_ZONE_STRING.exec(I);if(l)this.zone=l[0],I=I.replace(Kc.RE_ZONE_STRING,"");this.addressMinusSuffix=I,this.parsedAddress=this.parse(this.addressMinusSuffix)}static isValid(I){try{return new bm(I),!0}catch(G){return!1}}static fromBigInt(I){let G=I.toString(16).padStart(32,"0"),Z=[],l;for(l=0;l<Kc.GROUPS;l++)Z.push(G.slice(l*4,(l+1)*4));return new bm(Z.join(":"))}static fromURL(I){let G,Z=null,l;if(I.indexOf("[")!==-1&&I.indexOf("]:")!==-1){if(l=Kc.RE_URL_WITH_PORT.exec(I),l===null)return{error:"failed to parse address with port",address:null,port:null};G=l[1],Z=l[2]}else if(I.indexOf("/")!==-1){if(I=I.replace(/^[a-z0-9]+:\/\//,""),l=Kc.RE_URL.exec(I),l===null)return{error:"failed to parse address from URL",address:null,port:null};G=l[1]}else G=I;if(Z){if(Z=parseInt(Z,10),Z<0||Z>65536)Z=null}else Z=null;return{address:new bm(G),port:Z}}static fromAddress4(I){let G=new Az.Address4(I),Z=Kc.BITS-(KCI.BITS-G.subnetMask);return new bm(`::ffff:${G.correctForm()}/${Z}`)}static fromArpa(I){let G=I.replace(/(\.ip6\.arpa)?\.$/,""),Z=7;if(G.length!==63)throw new ZC.AddressError("Invalid 'ip6.arpa' form.");let l=G.split(".").reverse();for(let b=Z;b>0;b--){let W=b*4;l.splice(W,0,":")}return G=l.join(""),new bm(G)}microsoftTranscription(){return`${this.correctForm().replace(/:/g,"-")}.ipv6-literal.net`}mask(I=this.subnetMask){return this.getBitsBase2(0,I)}possibleSubnets(I=128){let G=Kc.BITS-this.subnetMask,Z=Math.abs(I-Kc.BITS),l=G-Z;if(l<0)return"0";return fdb((BigInt("2")**BigInt(l)).toString(10))}_startAddress(){return BigInt(`0b${this.mask()+"0".repeat(Kc.BITS-this.subnetMask)}`)}startAddress(){return bm.fromBigInt(this._startAddress())}startAddressExclusive(){let I=BigInt("1");return bm.fromBigInt(this._startAddress()+I)}_endAddress(){return BigInt(`0b${this.mask()+"1".repeat(Kc.BITS-this.subnetMask)}`)}endAddress(){return bm.fromBigInt(this._endAddress())}endAddressExclusive(){let I=BigInt("1");return bm.fromBigInt(this._endAddress()-I)}getScope(){let I=Kc.SCOPES[parseInt(this.getBits(12,16).toString(10),10)];if(this.getType()==="Global unicast"&&I!=="Link local")I="Global";return I||"Unknown"}getType(){for(let I of Object.keys(Kc.TYPES))if(this.isInSubnet(new bm(I)))return Kc.TYPES[I];return"Global unicast"}getBits(I,G){return BigInt(`0b${this.getBitsBase2(I,G)}`)}getBitsBase2(I,G){return this.binaryZeroPad().slice(I,G)}getBitsBase16(I,G){let Z=G-I;if(Z%4!==0)throw Error("Length of bits to retrieve must be divisible by four");return this.getBits(I,G).toString(16).padStart(Z/4,"0")}getBitsPastSubnet(){return this.getBitsBase2(this.subnetMask,Kc.BITS)}reverseForm(I){if(!I)I={};let G=Math.floor(this.subnetMask/4),Z=this.canonicalForm().replace(/:/g,"").split("").slice(0,G).reverse().join(".");if(G>0){if(I.omitSuffix)return Z;return`${Z}.ip6.arpa.`}if(I.omitSuffix)return"";return"ip6.arpa."}correctForm(){let I,G=[],Z=0,l=[];for(I=0;I<this.parsedAddress.length;I++){let N=parseInt(this.parsedAddress[I],16);if(N===0)Z++;if(N!==0&&Z>0){if(Z>1)l.push([I-Z,I-1]);Z=0}}if(Z>1)l.push([this.parsedAddress.length-Z,this.parsedAddress.length-1]);let b=l.map((N)=>N[1]-N[0]+1);if(l.length>0){let N=b.indexOf(Math.max(...b));G=$db(this.parsedAddress,l[N])}else G=this.parsedAddress;for(I=0;I<G.length;I++)if(G[I]!=="compact")G[I]=parseInt(G[I],16).toString(16);let W=G.join(":");return W=W.replace(/^compact$/,"::"),W=W.replace(/(^compact)|(compact$)/,":"),W=W.replace(/compact/,""),W}binaryZeroPad(){return this.bigInt().toString(2).padStart(Kc.BITS,"0")}parse4in6(I){let G=I.split(":"),l=G.slice(-1)[0].match(KCI.RE_ADDRESS);if(l){this.parsedAddress4=l[0],this.address4=new Az.Address4(this.parsedAddress4);for(let b=0;b<this.address4.groups;b++)if(/^0[0-9]+/.test(this.address4.parsedAddress[b]))throw new ZC.AddressError("IPv4 addresses can't have leading zeroes.",I.replace(KCI.RE_ADDRESS,this.address4.parsedAddress.map(sdb).join(".")));this.v4=!0,G[G.length-1]=this.address4.toGroup6(),I=G.join(":")}return I}parse(I){I=this.parse4in6(I);let G=I.match(Kc.RE_BAD_CHARACTERS);if(G)throw new ZC.AddressError(`Bad character${G.length>1?"s":""} detected in address: ${G.join("")}`,I.replace(Kc.RE_BAD_CHARACTERS,'<span class="parse-error">$1</span>'));let Z=I.match(Kc.RE_BAD_ADDRESS);if(Z)throw new ZC.AddressError(`Address failed regex: ${Z.join("")}`,I.replace(Kc.RE_BAD_ADDRESS,'<span class="parse-error">$1</span>'));let l=[],b=I.split("::");if(b.length===2){let W=b[0].split(":"),N=b[1].split(":");if(W.length===1&&W[0]==="")W=[];if(N.length===1&&N[0]==="")N=[];let Y=this.groups-(W.length+N.length);if(!Y)throw new ZC.AddressError("Error parsing groups");this.elidedGroups=Y,this.elisionBegin=W.length,this.elisionEnd=W.length+this.elidedGroups,l=l.concat(W);for(let c=0;c<Y;c++)l.push("0");l=l.concat(N)}else if(b.length===1)l=I.split(":"),this.elidedGroups=0;else throw new ZC.AddressError("Too many :: groups found");if(l=l.map((W)=>parseInt(W,16).toString(16)),l.length!==this.groups)throw new ZC.AddressError("Incorrect number of groups found");return l}canonicalForm(){return this.parsedAddress.map(nMG).join(":")}decimal(){return this.parsedAddress.map((I)=>parseInt(I,16).toString(10).padStart(5,"0")).join(":")}bigInt(){return BigInt(`0x${this.parsedAddress.map(nMG).join("")}`)}to4(){let I=this.binaryZeroPad().split("");return Az.Address4.fromHex(BigInt(`0b${I.slice(96,128).join("")}`).toString(16))}to4in6(){let I=this.to4(),Z=new bm(this.parsedAddress.slice(0,6).join(":"),6).correctForm(),l="";if(!/:$/.test(Z))l=":";return Z+l+I.address}inspectTeredo(){let I=this.getBitsBase16(0,32),Z=(this.getBits(80,96)^BigInt("0xffff")).toString(),l=Az.Address4.fromHex(this.getBitsBase16(32,64)),b=this.getBits(96,128),W=Az.Address4.fromHex((b^BigInt("0xffffffff")).toString(16)),N=this.getBitsBase2(64,80),Y=(0,SlI.testBit)(N,15),c=(0,SlI.testBit)(N,14),V=(0,SlI.testBit)(N,8),d=(0,SlI.testBit)(N,9),Q=BigInt(`0b${N.slice(2,6)+N.slice(8,16)}`).toString(10);return{prefix:`${I.slice(0,4)}:${I.slice(4,8)}`,server4:l.address,client4:W.address,flags:N,coneNat:Y,microsoft:{reserved:c,universalLocal:d,groupIndividual:V,nonce:Q},udpPort:Z}}inspect6to4(){let I=this.getBitsBase16(0,16),G=Az.Address4.fromHex(this.getBitsBase16(16,48));return{prefix:I.slice(0,4),gateway:G.address}}to6to4(){if(!this.is4())return null;let I=["2002",this.getBitsBase16(96,112),this.getBitsBase16(112,128),"","/16"].join(":");return new bm(I)}toByteArray(){let I=this.bigInt().toString(16),Z=`${"0".repeat(I.length%2)}${I}`,l=[];for(let b=0,W=Z.length;b<W;b+=2)l.push(parseInt(Z.substring(b,b+2),16));return l}toUnsignedByteArray(){return this.toByteArray().map(qMG)}static fromByteArray(I){return this.fromUnsignedByteArray(I.map(qMG))}static fromUnsignedByteArray(I){let G=BigInt("256"),Z=BigInt("0"),l=BigInt("1");for(let b=I.length-1;b>=0;b--)Z+=l*BigInt(I[b].toString(10)),l*=G;return bm.fromBigInt(Z)}isCanonical(){return this.addressMinusSuffix===this.canonicalForm()}isLinkLocal(){if(this.getBitsBase2(0,64)==="1111111010000000000000000000000000000000000000000000000000000000")return!0;return!1}isMulticast(){return this.getType()==="Multicast"}is4(){return this.v4}isTeredo(){return this.isInSubnet(new bm("2001::/32"))}is6to4(){return this.isInSubnet(new bm("2002::/16"))}isLoopback(){return this.getType()==="Loopback"}href(I){if(I===void 0)I="";else I=`:${I}`;return`http://[${this.correctForm()}]${I}/`}link(I){if(!I)I={};if(I.className===void 0)I.className="";if(I.prefix===void 0)I.prefix="/#address=";if(I.v4===void 0)I.v4=!1;let G=this.correctForm;if(I.v4)G=this.to4in6;let Z=G.call(this);if(I.className)return`<a href="${I.prefix}${Z}" class="${I.className}">${Z}</a>`;return`<a href="${I.prefix}${Z}">${Z}</a>`}group(){if(this.elidedGroups===0)return DCI.simpleGroup(this.address).join(":");ilI(typeof this.elidedGroups==="number"),ilI(typeof this.elisionBegin==="number");let I=[],[G,Z]=this.address.split("::");if(G.length)I.push(...DCI.simpleGroup(G));else I.push("");let l=["hover-group"];for(let b=this.elisionBegin;b<this.elisionBegin+this.elidedGroups;b++)l.push(`group-${b}`);if(I.push(`<span class="${l.join(" ")}"></span>`),Z.length)I.push(...DCI.simpleGroup(Z,this.elisionEnd));else I.push("");if(this.is4())ilI(this.address4 instanceof Az.Address4),I.pop(),I.push(this.address4.groupForV6());return I.join(":")}regularExpressionString(I=!1){let G=[],Z=new bm(this.correctForm());if(Z.elidedGroups===0)G.push((0,Ez.simpleRegularExpression)(Z.parsedAddress));else if(Z.elidedGroups===Kc.GROUPS)G.push((0,Ez.possibleElisions)(Kc.GROUPS));else{let l=Z.address.split("::");if(l[0].length)G.push((0,Ez.simpleRegularExpression)(l[0].split(":")));if(ilI(typeof Z.elidedGroups==="number"),G.push((0,Ez.possibleElisions)(Z.elidedGroups,l[0].length!==0,l[1].length!==0)),l[1].length)G.push((0,Ez.simpleRegularExpression)(l[1].split(":")));G=[G.join(":")]}if(!I)G=["(?=^|",Ez.ADDRESS_BOUNDARY,"|[^\\w\\:])(",...G,")(?=[^\\w\\:]|",Ez.ADDRESS_BOUNDARY,"|$)"];return G.join("")}regularExpression(I=!1){return new RegExp(this.regularExpressionString(I),"i")}}F4.Address6=bm});var jCI=w((WX)=>{var odb=WX&&WX.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;var b=Object.getOwnPropertyDescriptor(G,Z);if(!b||("get"in b?!G.__esModule:b.writable||b.configurable))b={enumerable:!0,get:function(){return G[Z]}};Object.defineProperty(I,l,b)}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),tdb=WX&&WX.__setModuleDefault||(Object.create?function(I,G){Object.defineProperty(I,"default",{enumerable:!0,value:G})}:function(I,G){I.default=G}),rdb=WX&&WX.__importStar||function(I){if(I&&I.__esModule)return I;var G={};if(I!=null){for(var Z in I)if(Z!=="default"&&Object.prototype.hasOwnProperty.call(I,Z))odb(G,I,Z)}return tdb(G,I),G};Object.defineProperty(WX,"__esModule",{value:!0});WX.v6=WX.AddressError=WX.Address6=WX.Address4=void 0;var edb=xCI();Object.defineProperty(WX,"Address4",{enumerable:!0,get:function(){return edb.Address4}});var I0b=TMG();Object.defineProperty(WX,"Address6",{enumerable:!0,get:function(){return I0b.Address6}});var G0b=nlI();Object.defineProperty(WX,"AddressError",{enumerable:!0,get:function(){return G0b.AddressError}});var Z0b=rdb(MCI());WX.v6={helpers:Z0b}});var oMG=w((sMG)=>{Object.defineProperty(sMG,"__esModule",{value:!0});sMG.ipToBuffer=sMG.int32ToIpv4=sMG.ipv4ToInt32=sMG.validateSocksClientChainOptions=sMG.validateSocksClientOptions=void 0;var dF=kCI(),Wm=BCI(),l0b=KI("stream"),nCI=jCI(),SMG=KI("net");function b0b(I,G=["connect","bind","associate"]){if(!Wm.SocksCommand[I.command])throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksCommand,I);if(G.indexOf(I.command)===-1)throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksCommandForOperation,I);if(!PMG(I.destination))throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsDestination,I);if(!_MG(I.proxy))throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsProxy,I);if(iMG(I.proxy,I),I.timeout&&!fMG(I.timeout))throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsTimeout,I);if(I.existing_socket&&!(I.existing_socket instanceof l0b.Duplex))throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsExistingSocket,I)}sMG.validateSocksClientOptions=b0b;function W0b(I){if(I.command!=="connect")throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksCommandChain,I);if(!PMG(I.destination))throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsDestination,I);if(!(I.proxies&&Array.isArray(I.proxies)&&I.proxies.length>=2))throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsProxiesLength,I);if(I.proxies.forEach((G)=>{if(!_MG(G))throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsProxy,I);iMG(G,I)}),I.timeout&&!fMG(I.timeout))throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsTimeout,I)}sMG.validateSocksClientChainOptions=W0b;function iMG(I,G){if(I.custom_auth_method!==void 0){if(I.custom_auth_method<Wm.SOCKS5_CUSTOM_AUTH_START||I.custom_auth_method>Wm.SOCKS5_CUSTOM_AUTH_END)throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsCustomAuthRange,G);if(I.custom_auth_request_handler===void 0||typeof I.custom_auth_request_handler!=="function")throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,G);if(I.custom_auth_response_size===void 0)throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,G);if(I.custom_auth_response_handler===void 0||typeof I.custom_auth_response_handler!=="function")throw new dF.SocksClientError(Wm.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,G)}}function PMG(I){return I&&typeof I.host==="string"&&Buffer.byteLength(I.host)<256&&typeof I.port==="number"&&I.port>=0&&I.port<=65535}function _MG(I){return I&&(typeof I.host==="string"||typeof I.ipaddress==="string")&&typeof I.port==="number"&&I.port>=0&&I.port<=65535&&(I.type===4||I.type===5)}function fMG(I){return typeof I==="number"&&I>0}function N0b(I){return new nCI.Address4(I).toArray().reduce((Z,l)=>(Z<<8)+l,0)>>>0}sMG.ipv4ToInt32=N0b;function Y0b(I){let G=I>>>24&255,Z=I>>>16&255,l=I>>>8&255,b=I&255;return[G,Z,l,b].join(".")}sMG.int32ToIpv4=Y0b;function c0b(I){if(SMG.isIPv4(I)){let G=new nCI.Address4(I);return Buffer.from(G.toArray())}else if(SMG.isIPv6(I)){let G=new nCI.Address6(I);return Buffer.from(G.canonicalForm().split(":").map((Z)=>Z.padStart(4,"0")).join(""),"hex")}else throw Error("Invalid IP address format")}sMG.ipToBuffer=c0b});var IKG=w((rMG)=>{Object.defineProperty(rMG,"__esModule",{value:!0});rMG.ReceiveBuffer=void 0;class tMG{constructor(I=4096){this.buffer=Buffer.allocUnsafe(I),this.offset=0,this.originalSize=I}get length(){return this.offset}append(I){if(!Buffer.isBuffer(I))throw Error("Attempted to append a non-buffer instance to ReceiveBuffer.");if(this.offset+I.length>=this.buffer.length){let G=this.buffer;this.buffer=Buffer.allocUnsafe(Math.max(this.buffer.length+this.originalSize,this.buffer.length+I.length)),G.copy(this.buffer)}return I.copy(this.buffer,this.offset),this.offset+=I.length}peek(I){if(I>this.offset)throw Error("Attempted to read beyond the bounds of the managed internal data.");return this.buffer.slice(0,I)}get(I){if(I>this.offset)throw Error("Attempted to read beyond the bounds of the managed internal data.");let G=Buffer.allocUnsafe(I);return this.buffer.slice(0,I).copy(G),this.buffer.copyWithin(0,I,I+this.offset-I),this.offset-=I,G}}rMG.ReceiveBuffer=tMG});var GKG=w((Hu)=>{var qM=Hu&&Hu.__awaiter||function(I,G,Z,l){function b(W){return W instanceof Z?W:new Z(function(N){N(W)})}return new(Z||(Z=Promise))(function(W,N){function Y(d){try{V(l.next(d))}catch(Q){N(Q)}}function c(d){try{V(l.throw(d))}catch(Q){N(Q)}}function V(d){d.done?W(d.value):b(d.value).then(Y,c)}V((l=l.apply(I,G||[])).next())})};Object.defineProperty(Hu,"__esModule",{value:!0});Hu.SocksClientError=Hu.SocksClient=void 0;var X0b=KI("events"),TM=KI("net"),g1=XMG(),UZ=BCI(),_R=oMG(),F0b=IKG(),TCI=kCI();Object.defineProperty(Hu,"SocksClientError",{enumerable:!0,get:function(){return TCI.SocksClientError}});var qCI=jCI();class _lI extends X0b.EventEmitter{constructor(I){super();this.options=Object.assign({},I),(0,_R.validateSocksClientOptions)(I),this.setState(UZ.SocksClientState.Created)}static createConnection(I,G){return new Promise((Z,l)=>{try{(0,_R.validateSocksClientOptions)(I,["connect"])}catch(W){if(typeof G==="function")return G(W),Z(W);else return l(W)}let b=new _lI(I);b.connect(I.existing_socket),b.once("established",(W)=>{if(b.removeAllListeners(),typeof G==="function")G(null,W),Z(W);else Z(W)}),b.once("error",(W)=>{if(b.removeAllListeners(),typeof G==="function")G(W),Z(W);else l(W)})})}static createConnectionChain(I,G){return new Promise((Z,l)=>qM(this,void 0,void 0,function*(){try{(0,_R.validateSocksClientChainOptions)(I)}catch(b){if(typeof G==="function")return G(b),Z(b);else return l(b)}if(I.randomizeChain)(0,TCI.shuffleArray)(I.proxies);try{let b;for(let W=0;W<I.proxies.length;W++){let N=I.proxies[W],Y=W===I.proxies.length-1?I.destination:{host:I.proxies[W+1].host||I.proxies[W+1].ipaddress,port:I.proxies[W+1].port},c=yield _lI.createConnection({command:"connect",proxy:N,destination:Y,existing_socket:b});b=b||c.socket}if(typeof G==="function")G(null,{socket:b}),Z({socket:b});else Z({socket:b})}catch(b){if(typeof G==="function")G(b),Z(b);else l(b)}}))}static createUDPFrame(I){let G=new g1.SmartBuffer;if(G.writeUInt16BE(0),G.writeUInt8(I.frameNumber||0),TM.isIPv4(I.remoteHost.host))G.writeUInt8(UZ.Socks5HostType.IPv4),G.writeUInt32BE((0,_R.ipv4ToInt32)(I.remoteHost.host));else if(TM.isIPv6(I.remoteHost.host))G.writeUInt8(UZ.Socks5HostType.IPv6),G.writeBuffer((0,_R.ipToBuffer)(I.remoteHost.host));else G.writeUInt8(UZ.Socks5HostType.Hostname),G.writeUInt8(Buffer.byteLength(I.remoteHost.host)),G.writeString(I.remoteHost.host);return G.writeUInt16BE(I.remoteHost.port),G.writeBuffer(I.data),G.toBuffer()}static parseUDPFrame(I){let G=g1.SmartBuffer.fromBuffer(I);G.readOffset=2;let Z=G.readUInt8(),l=G.readUInt8(),b;if(l===UZ.Socks5HostType.IPv4)b=(0,_R.int32ToIpv4)(G.readUInt32BE());else if(l===UZ.Socks5HostType.IPv6)b=qCI.Address6.fromByteArray(Array.from(G.readBuffer(16))).canonicalForm();else b=G.readString(G.readUInt8());let W=G.readUInt16BE();return{frameNumber:Z,remoteHost:{host:b,port:W},data:G.readBuffer()}}setState(I){if(this.state!==UZ.SocksClientState.Error)this.state=I}connect(I){this.onDataReceived=(Z)=>this.onDataReceivedHandler(Z),this.onClose=()=>this.onCloseHandler(),this.onError=(Z)=>this.onErrorHandler(Z),this.onConnect=()=>this.onConnectHandler();let G=setTimeout(()=>this.onEstablishedTimeout(),this.options.timeout||UZ.DEFAULT_TIMEOUT);if(G.unref&&typeof G.unref==="function")G.unref();if(I)this.socket=I;else this.socket=new TM.Socket;if(this.socket.once("close",this.onClose),this.socket.once("error",this.onError),this.socket.once("connect",this.onConnect),this.socket.on("data",this.onDataReceived),this.setState(UZ.SocksClientState.Connecting),this.receiveBuffer=new F0b.ReceiveBuffer,I)this.socket.emit("connect");else if(this.socket.connect(this.getSocketOptions()),this.options.set_tcp_nodelay!==void 0&&this.options.set_tcp_nodelay!==null)this.socket.setNoDelay(!!this.options.set_tcp_nodelay);this.prependOnceListener("established",(Z)=>{setImmediate(()=>{if(this.receiveBuffer.length>0){let l=this.receiveBuffer.get(this.receiveBuffer.length);Z.socket.emit("data",l)}Z.socket.resume()})})}getSocketOptions(){return Object.assign(Object.assign({},this.options.socket_options),{host:this.options.proxy.host||this.options.proxy.ipaddress,port:this.options.proxy.port})}onEstablishedTimeout(){if(this.state!==UZ.SocksClientState.Established&&this.state!==UZ.SocksClientState.BoundWaitingForConnection)this.closeSocket(UZ.ERRORS.ProxyConnectionTimedOut)}onConnectHandler(){if(this.setState(UZ.SocksClientState.Connected),this.options.proxy.type===4)this.sendSocks4InitialHandshake();else this.sendSocks5InitialHandshake();this.setState(UZ.SocksClientState.SentInitialHandshake)}onDataReceivedHandler(I){this.receiveBuffer.append(I),this.processData()}processData(){while(this.state!==UZ.SocksClientState.Established&&this.state!==UZ.SocksClientState.Error&&this.receiveBuffer.length>=this.nextRequiredPacketBufferSize)if(this.state===UZ.SocksClientState.SentInitialHandshake)if(this.options.proxy.type===4)this.handleSocks4FinalHandshakeResponse();else this.handleInitialSocks5HandshakeResponse();else if(this.state===UZ.SocksClientState.SentAuthentication)this.handleInitialSocks5AuthenticationHandshakeResponse();else if(this.state===UZ.SocksClientState.SentFinalHandshake)this.handleSocks5FinalHandshakeResponse();else if(this.state===UZ.SocksClientState.BoundWaitingForConnection)if(this.options.proxy.type===4)this.handleSocks4IncomingConnectionResponse();else this.handleSocks5IncomingConnectionResponse();else{this.closeSocket(UZ.ERRORS.InternalError);break}}onCloseHandler(){this.closeSocket(UZ.ERRORS.SocketClosed)}onErrorHandler(I){this.closeSocket(I.message)}removeInternalSocketHandlers(){this.socket.pause(),this.socket.removeListener("data",this.onDataReceived),this.socket.removeListener("close",this.onClose),this.socket.removeListener("error",this.onError),this.socket.removeListener("connect",this.onConnect)}closeSocket(I){if(this.state!==UZ.SocksClientState.Error)this.setState(UZ.SocksClientState.Error),this.socket.destroy(),this.removeInternalSocketHandlers(),this.emit("error",new TCI.SocksClientError(I,this.options))}sendSocks4InitialHandshake(){let I=this.options.proxy.userId||"",G=new g1.SmartBuffer;if(G.writeUInt8(4),G.writeUInt8(UZ.SocksCommand[this.options.command]),G.writeUInt16BE(this.options.destination.port),TM.isIPv4(this.options.destination.host))G.writeBuffer((0,_R.ipToBuffer)(this.options.destination.host)),G.writeStringNT(I);else G.writeUInt8(0),G.writeUInt8(0),G.writeUInt8(0),G.writeUInt8(1),G.writeStringNT(I),G.writeStringNT(this.options.destination.host);this.nextRequiredPacketBufferSize=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks4Response,this.socket.write(G.toBuffer())}handleSocks4FinalHandshakeResponse(){let I=this.receiveBuffer.get(8);if(I[1]!==UZ.Socks4Response.Granted)this.closeSocket(`${UZ.ERRORS.Socks4ProxyRejectedConnection} - (${UZ.Socks4Response[I[1]]})`);else if(UZ.SocksCommand[this.options.command]===UZ.SocksCommand.bind){let G=g1.SmartBuffer.fromBuffer(I);G.readOffset=2;let Z={port:G.readUInt16BE(),host:(0,_R.int32ToIpv4)(G.readUInt32BE())};if(Z.host==="0.0.0.0")Z.host=this.options.proxy.ipaddress;this.setState(UZ.SocksClientState.BoundWaitingForConnection),this.emit("bound",{remoteHost:Z,socket:this.socket})}else this.setState(UZ.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{socket:this.socket})}handleSocks4IncomingConnectionResponse(){let I=this.receiveBuffer.get(8);if(I[1]!==UZ.Socks4Response.Granted)this.closeSocket(`${UZ.ERRORS.Socks4ProxyRejectedIncomingBoundConnection} - (${UZ.Socks4Response[I[1]]})`);else{let G=g1.SmartBuffer.fromBuffer(I);G.readOffset=2;let Z={port:G.readUInt16BE(),host:(0,_R.int32ToIpv4)(G.readUInt32BE())};this.setState(UZ.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:Z,socket:this.socket})}}sendSocks5InitialHandshake(){let I=new g1.SmartBuffer,G=[UZ.Socks5Auth.NoAuth];if(this.options.proxy.userId||this.options.proxy.password)G.push(UZ.Socks5Auth.UserPass);if(this.options.proxy.custom_auth_method!==void 0)G.push(this.options.proxy.custom_auth_method);I.writeUInt8(5),I.writeUInt8(G.length);for(let Z of G)I.writeUInt8(Z);this.nextRequiredPacketBufferSize=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5InitialHandshakeResponse,this.socket.write(I.toBuffer()),this.setState(UZ.SocksClientState.SentInitialHandshake)}handleInitialSocks5HandshakeResponse(){let I=this.receiveBuffer.get(2);if(I[0]!==5)this.closeSocket(UZ.ERRORS.InvalidSocks5IntiailHandshakeSocksVersion);else if(I[1]===UZ.SOCKS5_NO_ACCEPTABLE_AUTH)this.closeSocket(UZ.ERRORS.InvalidSocks5InitialHandshakeNoAcceptedAuthType);else if(I[1]===UZ.Socks5Auth.NoAuth)this.socks5ChosenAuthType=UZ.Socks5Auth.NoAuth,this.sendSocks5CommandRequest();else if(I[1]===UZ.Socks5Auth.UserPass)this.socks5ChosenAuthType=UZ.Socks5Auth.UserPass,this.sendSocks5UserPassAuthentication();else if(I[1]===this.options.proxy.custom_auth_method)this.socks5ChosenAuthType=this.options.proxy.custom_auth_method,this.sendSocks5CustomAuthentication();else this.closeSocket(UZ.ERRORS.InvalidSocks5InitialHandshakeUnknownAuthType)}sendSocks5UserPassAuthentication(){let I=this.options.proxy.userId||"",G=this.options.proxy.password||"",Z=new g1.SmartBuffer;Z.writeUInt8(1),Z.writeUInt8(Buffer.byteLength(I)),Z.writeString(I),Z.writeUInt8(Buffer.byteLength(G)),Z.writeString(G),this.nextRequiredPacketBufferSize=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5UserPassAuthenticationResponse,this.socket.write(Z.toBuffer()),this.setState(UZ.SocksClientState.SentAuthentication)}sendSocks5CustomAuthentication(){return qM(this,void 0,void 0,function*(){this.nextRequiredPacketBufferSize=this.options.proxy.custom_auth_response_size,this.socket.write(yield this.options.proxy.custom_auth_request_handler()),this.setState(UZ.SocksClientState.SentAuthentication)})}handleSocks5CustomAuthHandshakeResponse(I){return qM(this,void 0,void 0,function*(){return yield this.options.proxy.custom_auth_response_handler(I)})}handleSocks5AuthenticationNoAuthHandshakeResponse(I){return qM(this,void 0,void 0,function*(){return I[1]===0})}handleSocks5AuthenticationUserPassHandshakeResponse(I){return qM(this,void 0,void 0,function*(){return I[1]===0})}handleInitialSocks5AuthenticationHandshakeResponse(){return qM(this,void 0,void 0,function*(){this.setState(UZ.SocksClientState.ReceivedAuthenticationResponse);let I=!1;if(this.socks5ChosenAuthType===UZ.Socks5Auth.NoAuth)I=yield this.handleSocks5AuthenticationNoAuthHandshakeResponse(this.receiveBuffer.get(2));else if(this.socks5ChosenAuthType===UZ.Socks5Auth.UserPass)I=yield this.handleSocks5AuthenticationUserPassHandshakeResponse(this.receiveBuffer.get(2));else if(this.socks5ChosenAuthType===this.options.proxy.custom_auth_method)I=yield this.handleSocks5CustomAuthHandshakeResponse(this.receiveBuffer.get(this.options.proxy.custom_auth_response_size));if(!I)this.closeSocket(UZ.ERRORS.Socks5AuthenticationFailed);else this.sendSocks5CommandRequest()})}sendSocks5CommandRequest(){let I=new g1.SmartBuffer;if(I.writeUInt8(5),I.writeUInt8(UZ.SocksCommand[this.options.command]),I.writeUInt8(0),TM.isIPv4(this.options.destination.host))I.writeUInt8(UZ.Socks5HostType.IPv4),I.writeBuffer((0,_R.ipToBuffer)(this.options.destination.host));else if(TM.isIPv6(this.options.destination.host))I.writeUInt8(UZ.Socks5HostType.IPv6),I.writeBuffer((0,_R.ipToBuffer)(this.options.destination.host));else I.writeUInt8(UZ.Socks5HostType.Hostname),I.writeUInt8(this.options.destination.host.length),I.writeString(this.options.destination.host);I.writeUInt16BE(this.options.destination.port),this.nextRequiredPacketBufferSize=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader,this.socket.write(I.toBuffer()),this.setState(UZ.SocksClientState.SentFinalHandshake)}handleSocks5FinalHandshakeResponse(){let I=this.receiveBuffer.peek(5);if(I[0]!==5||I[1]!==UZ.Socks5Response.Granted)this.closeSocket(`${UZ.ERRORS.InvalidSocks5FinalHandshakeRejected} - ${UZ.Socks5Response[I[1]]}`);else{let G=I[3],Z,l;if(G===UZ.Socks5HostType.IPv4){let b=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4;if(this.receiveBuffer.length<b){this.nextRequiredPacketBufferSize=b;return}if(l=g1.SmartBuffer.fromBuffer(this.receiveBuffer.get(b).slice(4)),Z={host:(0,_R.int32ToIpv4)(l.readUInt32BE()),port:l.readUInt16BE()},Z.host==="0.0.0.0")Z.host=this.options.proxy.ipaddress}else if(G===UZ.Socks5HostType.Hostname){let b=I[4],W=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHostname(b);if(this.receiveBuffer.length<W){this.nextRequiredPacketBufferSize=W;return}l=g1.SmartBuffer.fromBuffer(this.receiveBuffer.get(W).slice(5)),Z={host:l.readString(b),port:l.readUInt16BE()}}else if(G===UZ.Socks5HostType.IPv6){let b=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv6;if(this.receiveBuffer.length<b){this.nextRequiredPacketBufferSize=b;return}l=g1.SmartBuffer.fromBuffer(this.receiveBuffer.get(b).slice(4)),Z={host:qCI.Address6.fromByteArray(Array.from(l.readBuffer(16))).canonicalForm(),port:l.readUInt16BE()}}if(this.setState(UZ.SocksClientState.ReceivedFinalResponse),UZ.SocksCommand[this.options.command]===UZ.SocksCommand.connect)this.setState(UZ.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:Z,socket:this.socket});else if(UZ.SocksCommand[this.options.command]===UZ.SocksCommand.bind)this.setState(UZ.SocksClientState.BoundWaitingForConnection),this.nextRequiredPacketBufferSize=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader,this.emit("bound",{remoteHost:Z,socket:this.socket});else if(UZ.SocksCommand[this.options.command]===UZ.SocksCommand.associate)this.setState(UZ.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:Z,socket:this.socket})}}handleSocks5IncomingConnectionResponse(){let I=this.receiveBuffer.peek(5);if(I[0]!==5||I[1]!==UZ.Socks5Response.Granted)this.closeSocket(`${UZ.ERRORS.Socks5ProxyRejectedIncomingBoundConnection} - ${UZ.Socks5Response[I[1]]}`);else{let G=I[3],Z,l;if(G===UZ.Socks5HostType.IPv4){let b=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4;if(this.receiveBuffer.length<b){this.nextRequiredPacketBufferSize=b;return}if(l=g1.SmartBuffer.fromBuffer(this.receiveBuffer.get(b).slice(4)),Z={host:(0,_R.int32ToIpv4)(l.readUInt32BE()),port:l.readUInt16BE()},Z.host==="0.0.0.0")Z.host=this.options.proxy.ipaddress}else if(G===UZ.Socks5HostType.Hostname){let b=I[4],W=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHostname(b);if(this.receiveBuffer.length<W){this.nextRequiredPacketBufferSize=W;return}l=g1.SmartBuffer.fromBuffer(this.receiveBuffer.get(W).slice(5)),Z={host:l.readString(b),port:l.readUInt16BE()}}else if(G===UZ.Socks5HostType.IPv6){let b=UZ.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv6;if(this.receiveBuffer.length<b){this.nextRequiredPacketBufferSize=b;return}l=g1.SmartBuffer.fromBuffer(this.receiveBuffer.get(b).slice(4)),Z={host:qCI.Address6.fromByteArray(Array.from(l.readBuffer(16))).canonicalForm(),port:l.readUInt16BE()}}this.setState(UZ.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:Z,socket:this.socket})}}get socksClientOptions(){return Object.assign({},this.options)}}Hu.SocksClient=_lI});var ZKG=w((vz)=>{var R0b=vz&&vz.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;var b=Object.getOwnPropertyDescriptor(G,Z);if(!b||("get"in b?!G.__esModule:b.writable||b.configurable))b={enumerable:!0,get:function(){return G[Z]}};Object.defineProperty(I,l,b)}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),H0b=vz&&vz.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))R0b(G,I,Z)};Object.defineProperty(vz,"__esModule",{value:!0});H0b(GKG(),vz)});var WKG=w((a1)=>{var h0b=a1&&a1.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;var b=Object.getOwnPropertyDescriptor(G,Z);if(!b||("get"in b?!G.__esModule:b.writable||b.configurable))b={enumerable:!0,get:function(){return G[Z]}};Object.defineProperty(I,l,b)}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),w0b=a1&&a1.__setModuleDefault||(Object.create?function(I,G){Object.defineProperty(I,"default",{enumerable:!0,value:G})}:function(I,G){I.default=G}),lKG=a1&&a1.__importStar||function(I){if(I&&I.__esModule)return I;var G={};if(I!=null){for(var Z in I)if(Z!=="default"&&Object.prototype.hasOwnProperty.call(I,Z))h0b(G,I,Z)}return w0b(G,I),G};Object.defineProperty(a1,"__esModule",{value:!0});a1.req=a1.json=a1.toBuffer=void 0;var J0b=lKG(KI("http")),A0b=lKG(KI("https"));async function bKG(I){let G=0,Z=[];for await(let l of I)G+=l.length,Z.push(l);return Buffer.concat(Z,G)}a1.toBuffer=bKG;async function E0b(I){let Z=(await bKG(I)).toString("utf8");try{return JSON.parse(Z)}catch(l){let b=l;throw b.message+=` (input: ${Z})`,b}}a1.json=E0b;function v0b(I,G={}){let l=((typeof I==="string"?I:I.href).startsWith("https:")?A0b:J0b).request(I,G),b=new Promise((W,N)=>{l.once("response",W).once("error",N).end()});return l.then=b.then.bind(b),l}a1.req=v0b});var SCI=w((fR)=>{var YKG=fR&&fR.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;var b=Object.getOwnPropertyDescriptor(G,Z);if(!b||("get"in b?!G.__esModule:b.writable||b.configurable))b={enumerable:!0,get:function(){return G[Z]}};Object.defineProperty(I,l,b)}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),C0b=fR&&fR.__setModuleDefault||(Object.create?function(I,G){Object.defineProperty(I,"default",{enumerable:!0,value:G})}:function(I,G){I.default=G}),cKG=fR&&fR.__importStar||function(I){if(I&&I.__esModule)return I;var G={};if(I!=null){for(var Z in I)if(Z!=="default"&&Object.prototype.hasOwnProperty.call(I,Z))YKG(G,I,Z)}return C0b(G,I),G},p0b=fR&&fR.__exportStar||function(I,G){for(var Z in I)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(G,Z))YKG(G,I,Z)};Object.defineProperty(fR,"__esModule",{value:!0});fR.Agent=void 0;var y0b=cKG(KI("net")),NKG=cKG(KI("http")),u0b=KI("https");p0b(WKG(),fR);var R4=Symbol("AgentBaseInternalState");class VKG extends NKG.Agent{constructor(I){super(I);this[R4]={}}isSecureEndpoint(I){if(I){if(typeof I.secureEndpoint==="boolean")return I.secureEndpoint;if(typeof I.protocol==="string")return I.protocol==="https:"}let{stack:G}=Error();if(typeof G!=="string")return!1;return G.split(`
70
+ `).some((Z)=>Z.indexOf("(https.js:")!==-1||Z.indexOf("node:https:")!==-1)}incrementSockets(I){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;if(!this.sockets[I])this.sockets[I]=[];let G=new y0b.Socket({writable:!1});return this.sockets[I].push(G),this.totalSocketCount++,G}decrementSockets(I,G){if(!this.sockets[I]||G===null)return;let Z=this.sockets[I],l=Z.indexOf(G);if(l!==-1){if(Z.splice(l,1),this.totalSocketCount--,Z.length===0)delete this.sockets[I]}}getName(I){if(this.isSecureEndpoint(I))return u0b.Agent.prototype.getName.call(this,I);return super.getName(I)}createSocket(I,G,Z){let l={...G,secureEndpoint:this.isSecureEndpoint(G)},b=this.getName(l),W=this.incrementSockets(b);Promise.resolve().then(()=>this.connect(I,l)).then((N)=>{if(this.decrementSockets(b,W),N instanceof NKG.Agent)try{return N.addRequest(I,l)}catch(Y){return Z(Y)}this[R4].currentSocket=N,super.createSocket(I,G,Z)},(N)=>{this.decrementSockets(b,W),Z(N)})}createConnection(){let I=this[R4].currentSocket;if(this[R4].currentSocket=void 0,!I)throw Error("No socket was returned in the `connect()` function");return I}get defaultPort(){return this[R4].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(I){if(this[R4])this[R4].defaultPort=I}get protocol(){return this[R4].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(I){if(this[R4])this[R4].protocol=I}}fR.Agent=VKG});var dKG=w((zh)=>{var L0b=zh&&zh.__createBinding||(Object.create?function(I,G,Z,l){if(l===void 0)l=Z;var b=Object.getOwnPropertyDescriptor(G,Z);if(!b||("get"in b?!G.__esModule:b.writable||b.configurable))b={enumerable:!0,get:function(){return G[Z]}};Object.defineProperty(I,l,b)}:function(I,G,Z,l){if(l===void 0)l=Z;I[l]=G[Z]}),g0b=zh&&zh.__setModuleDefault||(Object.create?function(I,G){Object.defineProperty(I,"default",{enumerable:!0,value:G})}:function(I,G){I.default=G}),iCI=zh&&zh.__importStar||function(I){if(I&&I.__esModule)return I;var G={};if(I!=null){for(var Z in I)if(Z!=="default"&&Object.prototype.hasOwnProperty.call(I,Z))L0b(G,I,Z)}return g0b(G,I),G},a0b=zh&&zh.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(zh,"__esModule",{value:!0});zh.SocksProxyAgent=void 0;var z0b=ZKG(),B0b=SCI(),k0b=a0b(ly()),U0b=iCI(KI("dns")),x0b=iCI(KI("net")),O0b=iCI(KI("tls")),M0b=KI("url"),flI=(0,k0b.default)("socks-proxy-agent"),K0b=(I)=>{if(I.servername===void 0&&I.host&&!x0b.isIP(I.host))return{...I,servername:I.host};return I};function D0b(I){let G=!1,Z=5,l=I.hostname,b=parseInt(I.port,10)||1080;switch(I.protocol.replace(":","")){case"socks4":G=!0,Z=4;break;case"socks4a":Z=4;break;case"socks5":G=!0,Z=5;break;case"socks":Z=5;break;case"socks5h":Z=5;break;default:throw TypeError(`A "socks" protocol must be specified! Got: ${String(I.protocol)}`)}let W={host:l,port:b,type:Z};if(I.username)Object.defineProperty(W,"userId",{value:decodeURIComponent(I.username),enumerable:!1});if(I.password!=null)Object.defineProperty(W,"password",{value:decodeURIComponent(I.password),enumerable:!1});return{lookup:G,proxy:W}}class PCI extends B0b.Agent{constructor(I,G){super(G);let Z=typeof I==="string"?new M0b.URL(I):I,{proxy:l,lookup:b}=D0b(Z);this.shouldLookup=b,this.proxy=l,this.timeout=G?.timeout??null,this.socketOptions=G?.socketOptions??null}async connect(I,G){let{shouldLookup:Z,proxy:l,timeout:b}=this;if(!G.host)throw Error("No `host` defined!");let{host:W}=G,{port:N,lookup:Y=U0b.lookup}=G;if(Z)W=await new Promise((Q,X)=>{Y(W,{},(R,H)=>{if(R)X(R);else Q(H)})});let c={proxy:l,destination:{host:W,port:typeof N==="number"?N:parseInt(N,10)},command:"connect",timeout:b??void 0,socket_options:this.socketOptions??void 0},V=(Q)=>{if(I.destroy(),d.destroy(),Q)Q.destroy()};flI("Creating socks proxy connection: %o",c);let{socket:d}=await z0b.SocksClient.createConnection(c);if(flI("Successfully created socks proxy connection"),b!==null)d.setTimeout(b),d.on("timeout",()=>V());if(G.secureEndpoint){flI("Upgrading socket connection to TLS");let Q=O0b.connect({...j0b(K0b(G),"host","path","port"),socket:d});return Q.once("error",(X)=>{flI("Socket TLS error",X.message),V(Q)}),Q}return d}}PCI.protocols=["socks","socks4","socks4a","socks5","socks5h"];zh.SocksProxyAgent=PCI;function j0b(I,...G){let Z={},l;for(l in I)if(!G.includes(l))Z[l]=I[l];return Z}});function n0b(){return process.env.SOCKS_PROXY||process.env.SOCKS5_PROXY}function Cz(){let I=n0b();if(!I)return;return new mKG.SocksProxyAgent(I)}var mKG;var slI=a(()=>{mKG=hI(dKG(),1)});async function q0b(){try{return await LS("tengu-capable-model-config",QKG)}catch(I){return DG(I),QKG}}function XKG(){G2.cache.clear?.()}async function uS(){return!process.env.ANTHROPIC_MODEL||process.env.ANTHROPIC_MODEL===await G2()}function _CI(I){return I.includes("opus-4-6")||I.includes("sonnet-4-6")}function FKG(I){if(I?.startsWith("claude-3-5-haiku"))return process.env.VERTEX_REGION_CLAUDE_3_5_HAIKU;else if(I?.startsWith("claude-3-5-sonnet"))return process.env.VERTEX_REGION_CLAUDE_3_5_SONNET;else if(I?.startsWith("claude-3-7-sonnet"))return process.env.VERTEX_REGION_CLAUDE_3_7_SONNET;else if(I?.startsWith("claude-sonnet-4-5"))return process.env.VERTEX_REGION_CLAUDE_SONNET_4_5}async function RKG(){let I=Bh(),G=process.env.ANTHROPIC_AUTH_TOKEN;if(!I&&!G)throw Error("No API key or auth token available");let Z=Cz(),l={"anthropic-version":"2023-06-01","User-Agent":wz};if(G)l.Authorization=`Bearer ${G}`;else l["x-api-key"]=I;let b={method:"GET",headers:l,...Z?{agent:Z}:{}},W=process.env.ANTHROPIC_BASE_URL||"https://api.anthropic.com",N=await fetch(`${W}/v1/models`,b);if(!N.ok)throw Error(`Failed to fetch models: ${N.status} ${N.statusText}`);return(await N.json()).data.map((c)=>({...c,display_name:c.display_name&&c.display_name.trim()||c.id}))}var a2,z2,QKG,B2,G2;var Nm=a(()=>{wY();TW();Ul();MW();DlI();slI();a2=!!process.env.CLAUDE_CODE_USE_BEDROCK,z2=!!process.env.CLAUDE_CODE_USE_VERTEX,QKG={bedrock:"us.anthropic.claude-sonnet-4-5-20250929-v1:0",vertex:"claude-sonnet-4-5@20250929",firstParty:"claude-sonnet-4-5-20250929"},B2=a2?"us.anthropic.claude-haiku-4-5-20251001-v1:0":z2?"claude-haiku-4-5@20251001":"claude-haiku-4-5-20251001";G2=cb(async()=>{let I=rZ();if(I.model)return I.model;if(process.env.USER_TYPE==="ant"){if(process.env.ANTHROPIC_MODEL)return process.env.ANTHROPIC_MODEL;return(await HKG("chihuahua",{color:"research-claude-denim"})).color}if(process.env.USER_TYPE==="SWE_BENCH"){if(process.env.ANTHROPIC_MODEL)return process.env.ANTHROPIC_MODEL}let G=await q0b();if(a2)return G.bedrock;if(z2)return G.vertex;return G.firstParty})});function JG(I,G){if(sl.isCI)return;Promise.all([SM(),ah(),MlI(),G.model?Promise.resolve(G.model):G2()]).then(([Z,l,b,W])=>{if(!Z)return;let N={...G,model:W,sessionId:cF,userType:process.env.USER_TYPE||"",...process.env.SWE_BENCH_RUN_ID?{sweBenchId:process.env.SWE_BENCH_RUN_ID}:{},...b.length>0?{betas:b.join(",")}:{},env:JSON.stringify({isGit:l,platform:sl.platform,nodeVersion:sl.nodeVersion,terminal:sl.terminal,version:"1.3.4"})};if(process.env.USER_TYPE==="ant"&&(process.argv.includes("--debug")||process.argv.includes("-d")))console.log(aZ.dim(`[DEBUG-ONLY] Statsig event: ${I} ${JSON.stringify(G,null,0)}`));let Y={eventName:I,metadata:N};Z.logEvent(Y)})}function hKG(){return{...fCI}}var T0b,fCI,SM,Ru,HKG,LS=async(I,G)=>{if(sl.isCI)return G;let Z=await SM();if(!Z)return G;let l=Z.getDynamicConfig(I);if(Object.keys(l.value).length===0)return DG(`getDynamicConfig got empty value for ${I}`),G;return l.value};var TW=a(()=>{wY();Mc();IMG();k2();Ul();Ul();aCI();a5();Nm();T0b=hI(YG(),1),fCI={},SM=cb(async()=>{return null});Ru=cb(async(I)=>{if(sl.isCI)return!1;if(process.env.MOCK_STICKER_GATE==="true"&&I==="tengu_sticker_easter_egg")return fCI[I]=!0,!0;let G=await SM();if(!G)return!1;let Z=G.checkGate(I);return fCI[I]=Z,Z});HKG=cb(async(I,G)=>{if(sl.isCI)return G;let Z=await SM();if(!Z)return G;let l=Z.getExperiment(I);if(Object.keys(l.value).length===0)return DG(`getExperimentValue got empty value for ${I}`),G;return l.value})});import*as id from"fs";import{homedir as S0b}from"os";import{existsSync as wKG}from"fs";import{spawn as i0b,execSync as JKG}from"child_process";import{isAbsolute as P0b,resolve as _0b,join as f0b}from"path";import*as EKG from"os";class _m{commandQueue=[];isExecuting=!1;shell;isAlive=!0;commandInterrupted=!1;statusFile;stdoutFile;stderrFile;cwdFile;cwd;binShell;constructor(I){this.binShell=process.env.SHELL||"/bin/bash",this.shell=i0b(this.binShell,["-l"],{stdio:["pipe","pipe","pipe"],cwd:I,env:{...process.env,GIT_EDITOR:"true"}}),this.cwd=I,this.shell.on("exit",(l,b)=>{if(l)DG(`Shell exited with code ${l} and signal ${b}`),JG("persistent_shell_exit",{code:l?.toString()||"null",signal:b||"null"});for(let W of[this.statusFile,this.stdoutFile,this.stderrFile,this.cwdFile])if(id.existsSync(W))id.unlinkSync(W);this.isAlive=!1});let G=Math.floor(Math.random()*65536).toString(16).padStart(4,"0");this.statusFile=$lI+G+olI.STATUS,this.stdoutFile=$lI+G+olI.STDOUT,this.stderrFile=$lI+G+olI.STDERR,this.cwdFile=$lI+G+olI.CWD;for(let l of[this.statusFile,this.stdoutFile,this.stderrFile])id.writeFileSync(l,"");id.writeFileSync(this.cwdFile,I);let Z=o0b[this.binShell];if(Z){let l=f0b(S0b(),Z);if(wKG(l))this.sendToShell(`source ${l}`)}}static instance=null;static restart(){if(_m.instance)_m.instance.close(),_m.instance=null}static getInstance(){if(!_m.instance||!_m.instance.isAlive)_m.instance=new _m(process.cwd());return _m.instance}killChildren(){let I=this.shell.pid;try{let G=JKG(`pgrep -P ${I}`).toString().trim().split(`
71
71
  `).filter(Boolean);if(G.length>0)JG("persistent_shell_command_interrupted",{numChildProcesses:G.length.toString()});G.forEach((Z)=>{try{process.kill(Number(Z),"SIGTERM")}catch(l){DG(`Failed to kill process ${Z}: ${l}`),JG("persistent_shell_kill_process_error",{error:l.message.substring(0,10)})}})}catch{}finally{this.commandInterrupted=!0}}async processQueue(){if(this.isExecuting||this.commandQueue.length===0)return;this.isExecuting=!0;let{command:I,abortSignal:G,timeout:Z,resolve:l,reject:b}=this.commandQueue.shift(),W=()=>this.killChildren();if(G)G.addEventListener("abort",W);try{let N=await this.exec_(I,Z);l(N)}catch(N){JG("persistent_shell_command_error",{error:N.message.substring(0,10)}),b(N)}finally{if(this.isExecuting=!1,G)G.removeEventListener("abort",W);this.processQueue()}}async exec(I,G,Z){return new Promise((l,b)=>{this.commandQueue.push({command:I,abortSignal:G,timeout:Z,resolve:l,reject:b}),this.processQueue()})}async exec_(I,G){let Z=AKG.default.quote([I]);try{JKG(`${this.binShell} -n -c ${Z}`,{stdio:"ignore",timeout:1000})}catch(b){let W=typeof b==="string"?b:String(b||"");return JG("persistent_shell_syntax_error",{error:W.substring(0,10)}),Promise.resolve({stdout:"",stderr:W,code:128,interrupted:!1})}let l=G||s0b;return this.commandInterrupted=!1,new Promise((b)=>{id.writeFileSync(this.stdoutFile,""),id.writeFileSync(this.stderrFile,""),id.writeFileSync(this.statusFile,"");let W=[];W.push(`eval ${Z} < /dev/null > ${this.stdoutFile} 2> ${this.stderrFile}`),W.push("EXEC_EXIT_CODE=$?"),W.push(`pwd > ${this.cwdFile}`),W.push(`echo $EXEC_EXIT_CODE > ${this.statusFile}`),this.sendToShell(W.join(`
72
72
  `));let N=Date.now(),Y=setInterval(()=>{try{let c=0;if(id.existsSync(this.statusFile))c=id.statSync(this.statusFile).size;if(c>0||Date.now()-N>l||this.commandInterrupted){clearInterval(Y);let V=id.existsSync(this.stdoutFile)?id.readFileSync(this.stdoutFile,"utf8"):"",d=id.existsSync(this.stderrFile)?id.readFileSync(this.stderrFile,"utf8"):"",Q;if(c)Q=Number(id.readFileSync(this.statusFile,"utf8"));else this.killChildren(),Q=$0b,d+=(d?`
73
73
  `:"")+"Command execution timed out",JG("persistent_shell_command_timeout",{command:I.substring(0,10),timeout:l.toString()});b({stdout:V,stderr:d,code:Q,interrupted:this.commandInterrupted})}}catch{}},10)})}sendToShell(I){try{this.shell.stdin.write(I+`
74
- `)}catch(G){let Z=G instanceof Error?G.message:String(G||"Unknown error");throw DG(`Error in sendToShell: ${Z}`),JG("persistent_shell_write_error",{error:Z.substring(0,100),command:I.substring(0,30)}),G}}pwd(){try{let I=id.readFileSync(this.cwdFile,"utf8").trim();if(I)this.cwd=I}catch(I){DG(`Shell pwd error ${I}`)}return this.cwd}async setCwd(I){let G=P0b(I)?I:_0b(process.cwd(),I);if(!wKG(G))throw Error(`Path "${G}" does not exist`);await this.exec(`cd ${G}`)}close(){this.shell.stdin.end(),this.shell.kill()}}var AKG,$lI,s0b=1800000,$0b=143,olI,o0b;var tlI=a(()=>{Ul();TW();AKG=hI(FCI(),1),$lI=EKG.tmpdir()+"/claude-",olI={STATUS:"-status",STDOUT:"-stdout",STDERR:"-stderr",CWD:"-cwd"},o0b={"/bin/bash":".bashrc","/bin/zsh":".zshrc"}});import{cwd as t0b}from"process";async function H4(I){await _m.getInstance().setCwd(I)}function mF(){return r0b.originalCwd}function bZ(){return _m.getInstance().pwd()}var r0b;var QW=a(()=>{tlI();r0b={originalCwd:t0b()}});import{execFile as e0b}from"child_process";function SW(I,G,Z,l=10*Gmb*Imb,b=!0){return new Promise((W)=>{try{e0b(I,G,{maxBuffer:1e6,signal:Z,timeout:l,cwd:bZ()},(N,Y,c)=>{if(N)if(b){let V=typeof N.code==="number"?N.code:1;W({stdout:Y||"",stderr:c||"",code:V})}else W({stdout:"",stderr:"",code:1});else W({stdout:Y,stderr:c,code:0})})}catch(N){DG(N),W({stdout:"",stderr:"",code:1})}})}var Imb=1000,Gmb=60;var iR=a(()=>{QW();Ul()});import{join as rlI}from"path";import{homedir as vKG}from"os";var hu,lC,hHY,Zmb,lmb,wHY,sl;var k2=a(()=>{iR();wY();hu=process.env.CLAUDE_CONFIG_DIR??rlI(vKG(),".claude"),lC=process.env.CLAUDE_CONFIG_DIR?rlI(hu,"config.json"):rlI(vKG(),".claude.json"),hHY=rlI(hu,"memory"),Zmb=cb(async()=>{let{code:I}=await SW("test",["-f","/.dockerenv"]);if(I!==0)return!1;return process.platform==="linux"}),lmb=cb(async()=>{try{let I=new AbortController,G=setTimeout(()=>I.abort(),1000);return await fetch("http://1.1.1.1",{method:"HEAD",signal:I.signal}),clearTimeout(G),!0}catch{return!1}}),wHY=Boolean(process.env.CLAUDE_CODE_SIMPLE),sl={getIsDocker:Zmb,hasInternetAccess:lmb,isCI:Boolean(process.env.CI),platform:process.platform==="win32"?"windows":process.platform==="darwin"?"macos":"linux",nodeVersion:process.version,terminal:process.env.TERM_PROGRAM}});function NX(I){if(!I)return null;try{return JSON.parse(I)}catch(G){return DG(G),null}}var pz=a(()=>{Ul()});var sCI,iM,PM;var _M=a(()=>{sCI=class sCI extends TypeError{};iM=class iM extends Error{};PM=class PM extends Error{filePath;defaultConfig;constructor(I,G,Z){super(I);this.name="ConfigParseError",this.filePath=G,this.defaultConfig=Z}}});import{existsSync as gS,readFileSync as aS,writeFileSync as bmb}from"fs";import{resolve as $CI,join as elI}from"path";import{homedir as Wmb}from"os";import{randomBytes as Nmb}from"crypto";function CKG(I){let G={...pKG};if(I===Wmb())G.dontCrawlDirectory=!0;return G}function Ymb(I){return["disabled","enabled","no_permissions","not_configured"].includes(I)}function oCI(I){return zS.includes(I)}function yKG(){let I=bZ(),G=sM(lC,B5);while(!0){if(G.projects?.[I]?.hasTrustDialogAccepted)return!0;let l=$CI(I,"..");if(l===I)break;I=l}return!1}function tCI(I){return BS.includes(I)}function XW(I){uKG(lC,{...I,projects:sM(lC,B5).projects},B5)}function rZ(){return sM(lC,B5)}function Bh(){let I=rZ();if(process.env.USER_TYPE==="SWE_BENCH")return process.env.ANTHROPIC_API_KEY_OVERRIDE??null;if(process.env.USER_TYPE==="external")return I.primaryApiKey??null;if(process.env.USER_TYPE==="ant"){if(process.env.ANTHROPIC_API_KEY&&I.customApiKeyResponses?.approved?.includes(sR(process.env.ANTHROPIC_API_KEY)))return process.env.ANTHROPIC_API_KEY;return I.primaryApiKey??null}return null}function sR(I){return I.slice(-20)}function IbI(){let I=rZ();return Bh()===I.primaryApiKey}function GbI(I){let G=rZ();if(G.customApiKeyResponses?.approved?.includes(I))return"approved";if(G.customApiKeyResponses?.rejected?.includes(I))return"rejected";return"new"}function uKG(I,G,Z){let l=Object.fromEntries(Object.entries(G).filter(([b,W])=>JSON.stringify(W)!==JSON.stringify(Z[b])));bmb(I,JSON.stringify(l,null,2),"utf-8")}function gKG(){LKG=!0,sM(lC,B5,!0)}function sM(I,G,Z){if(!LKG)throw Error("Config accessed before allowed.");if(!gS(I))return ES(G);try{let l=aS(I,"utf-8");try{let b=JSON.parse(l);return{...ES(G),...b}}catch(b){let W=b instanceof Error?b.message:String(b);throw new PM(W,I,G)}}catch(l){if(l instanceof PM&&Z)throw l;return ES(G)}}function Ob(){let I=$CI(bZ()),G=sM(lC,B5);if(!G.projects)return CKG(I);let Z=G.projects[I]??CKG(I);if(typeof Z.allowedTools==="string")Z.allowedTools=NX(Z.allowedTools)??[];return Z}function k5(){return Boolean(process.env.CLAUDE_CODE_SIMPLE)||Boolean(Ob().simpleMode)}function pN(I){let G=sM(lC,B5);uKG(lC,{...G,projects:{...G.projects,[$CI(bZ())]:I}},B5)}async function aKG(){return rZ().autoUpdaterStatus==="disabled"}function fM(I){let G={...I};if(G.type==="streamable-http")G.type="http";if(!G.type&&typeof G.url==="string")G.type="sse";if(G.type==="http"||G.type==="sse"){if(G.oauth===!0)G.oauth={};else if(!G.oauth||typeof G.oauth!=="object"){if("clientId"in G||"clientSecret"in G)G.oauth={...G.clientId?{clientId:G.clientId}:{},...G.clientSecret?{clientSecret:G.clientSecret}:{}},delete G.clientId,delete G.clientSecret}}return G}function ZbI(){let I=rZ();if(I.userID)return I.userID;let G=Nmb(32).toString("hex");return XW({...I,userID:G}),G}function zKG(I,G){if(JG("tengu_config_get",{key:I,global:G?.toString()??"false"}),G){if(!oCI(I))console.error(`Error: '${I}' is not a valid config key. Valid keys are: ${zS.join(", ")}`),process.exit(1);return rZ()[I]}else{if(!tCI(I))console.error(`Error: '${I}' is not a valid config key. Valid keys are: ${BS.join(", ")}`),process.exit(1);return Ob()[I]}}function BKG(I,G,Z){if(JG("tengu_config_set",{key:I,global:Z?.toString()??"false"}),Z){if(!oCI(I))console.error(`Error: Cannot set '${I}'. Only these keys can be modified: ${zS.join(", ")}`),process.exit(1);if(I==="autoUpdaterStatus"&&!Ymb(G))console.error("Error: Invalid value for autoUpdaterStatus. Must be one of: disabled, enabled, no_permissions, not_configured"),process.exit(1);let l=rZ();XW({...l,[I]:G})}else{if(!tCI(I))console.error(`Error: Cannot set '${I}'. Only these keys can be modified: ${BS.join(", ")}. Did you mean --global?`),process.exit(1);let l=Ob();pN({...l,[I]:G})}setTimeout(()=>{process.exit(0)},100)}function kKG(I,G){if(JG("tengu_config_delete",{key:I,global:G?.toString()??"false"}),G){if(!oCI(I))console.error(`Error: Cannot delete '${I}'. Only these keys can be modified: ${zS.join(", ")}`),process.exit(1);let Z=rZ();delete Z[I],XW(Z)}else{if(!tCI(I))console.error(`Error: Cannot delete '${I}'. Only these keys can be modified: ${BS.join(", ")}. Did you mean --global?`),process.exit(1);let Z=Ob();delete Z[I],pN(Z)}}function rCI(I){if(JG("tengu_config_list",{global:I?.toString()??"false"}),I)return plI(rZ(),zS);else return plI(Ob(),BS)}var pKG,B5,zS,BS,xHY,OHY,LKG=!1,$M;var MW=a(()=>{wY();k2();QW();pz();TW();_M();pKG={allowedTools:[],context:{},history:[],dontCrawlDirectory:!1,enableArchitectTool:!1,mcpContextUris:[],mcpServers:{},approvedMcpJsonServers:[],rejectedMcpJsonServers:[],disabledMcpServers:[],hasTrustDialogAccepted:!1};B5={numStartups:0,autoUpdaterStatus:"enabled",theme:"dark",preferredNotifChannel:"iterm2",verbose:!1,customApiKeyResponses:{approved:[],rejected:[]}},zS=["autoUpdaterStatus","theme","hasCompletedOnboarding","lastOnboardingVersion","lastReleaseNotesSeen","verbose","customApiKeyResponses","primaryApiKey","preferredNotifChannel","shiftEnterKeyBindingInstalled","model"];BS=["dontCrawlDirectory","enableArchitectTool","simpleMode","hasTrustDialogAccepted","hasCompletedProjectOnboarding"];xHY={...B5,autoUpdaterStatus:"disabled"},OHY={...pKG};$M=cb(()=>{let I=elI(bZ(),".mcp.json"),G=elI(bZ(),".mcprc");if(gS(I))try{let Z=aS(I,"utf-8"),l=NX(Z);if(l&&typeof l==="object"){let b=l.mcpServers;if(b&&typeof b==="object"){let W={};for(let[N,Y]of Object.entries(b))W[N]=fM(Y);return JG("tengu_mcp_json_found",{numServers:Object.keys(W).length.toString()}),W}}}catch{}if(gS(G))try{let Z=aS(G,"utf-8"),l=NX(Z);if(l&&typeof l==="object"){let b={};for(let[W,N]of Object.entries(l))b[W]=fM(N);return JG("tengu_mcprc_found",{numServers:Object.keys(b).length.toString()}),b}}catch{}return{}},()=>{let I=bZ(),G=elI(I,".mcp.json"),Z=elI(I,".mcprc");if(gS(G))try{let l=aS(G,"utf-8");return`${I}:mcp.json:${l}`}catch{return I}if(gS(Z))try{let l=aS(Z,"utf-8");return`${I}:mcprc:${l}`}catch{return I}return I})});var eCI,UKG;var I3I=a(()=>{MW();wY();k2();iR();Ul();eCI=cb(async()=>{let I=await SW("git",["config","user.email"]);if(I.code!==0){DG(`Failed to get git email: ${I.stdout} ${I.stderr}`);return}return I.stdout.trim()||void 0}),UKG=cb(async()=>{let I=ZbI(),G=rZ(),Z=process.env.USER_TYPE==="ant"?G.oauthAccount?.emailAddress??await eCI()??(process.env.COO_CREATOR?`${process.env.COO_CREATOR}@quantumio.com.cn`:void 0):void 0;return{customIDs:{sessionId:cF},userID:I,appVersion:"1.3.2",userAgent:sl.platform,email:Z,custom:{nodeVersion:sl.nodeVersion,userType:process.env.USER_TYPE,organizationUuid:G.oauthAccount?.organizationUuid,accountUuid:G.oauthAccount?.accountUuid}}})});var xKG="https://e531a1d9ec1de9064fae9d4affb0b0f4@o1158394.ingest.us.sentry.io/4508259541909504";function OKG(){gvI({dsn:xKG,release:"1.3.2",integrations:[KT(),_O(),uO(),pO(),yO()],tracesSampleRate:1,tracePropagationTargets:["localhost"]})}async function BlI(I){try{let[G,Z]=await Promise.all([ah(),UKG()]);SII({nodeVersion:sl.nodeVersion,platform:sl.platform,cwd:bZ(),isCI:sl.isCI,isGit:G,isTest:!1,packageVersion:"1.3.2",sessionId:cF,statsigGates:hKG(),terminal:sl.terminal,userType:process.env.USER_TYPE}),iII({id:Z.userID,email:Z.email}),Im(I)}catch{}}var klI=a(()=>{avI();avI();I3I();k2();QW();TW();Ul();a5()});var QF="Claude Code",yN="QuantWise",lbI="https://docs.anthropic.com/s/claude-code";function MKG(I,G,{signal:Z,edges:l}={}){let b=void 0,W=null,N=l!=null&&l.includes("leading"),Y=l==null||l.includes("trailing"),c=()=>{if(W!==null)I.apply(b,W),b=void 0,W=null},V=()=>{if(Y)c();R()},d=null,Q=()=>{if(d!=null)clearTimeout(d);d=setTimeout(()=>{d=null,V()},G)},X=()=>{if(d!==null)clearTimeout(d),d=null},R=()=>{X(),b=void 0,W=null},H=()=>{c()},h=function(...A){if(Z?.aborted)return;b=this,W=A;let C=d==null;if(Q(),N&&C)c()};return h.schedule=Q,h.cancel=R,h.flush=H,Z?.addEventListener("abort",R,{once:!0}),h}var KKG=()=>{};function DKG(I,G=0,Z={}){if(typeof Z!=="object")Z={};let{leading:l=!1,trailing:b=!0,maxWait:W}=Z,N=Array(2);if(l)N[0]="leading";if(b)N[1]="trailing";let Y=void 0,c=null,V=MKG(function(...X){Y=I.apply(this,X),c=null},G,{edges:N}),d=function(...X){if(W!=null){if(c===null)c=Date.now();if(Date.now()-c>=W)return Y=I.apply(this,X),c=Date.now(),V.cancel(),V.schedule(),Y}return V.apply(this,X),Y},Q=()=>{return V.flush(),Y};return d.cancel=V.cancel,d.flush=Q,d}var jKG=a(()=>{KKG()});function bbI(I,G=0,Z={}){let{leading:l=!0,trailing:b=!0}=Z;return DKG(I,G,{leading:l,maxWait:G,trailing:b})}var nKG=a(()=>{jKG()});var qKG=a(()=>{nKG()});var oM,GyY,ZyY,lyY,byY,WyY,NyY,YyY,cyY,VyY,kS,dyY,myY,QyY,XyY,FyY;var TKG=a(()=>{oM=globalThis.window?.document!==void 0,GyY=globalThis.process?.versions?.node!==void 0,ZyY=globalThis.process?.versions?.bun!==void 0,lyY=globalThis.Deno?.version?.deno!==void 0,byY=globalThis.process?.versions?.electron!==void 0,WyY=globalThis.navigator?.userAgent?.includes("jsdom")===!0,NyY=typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope,YyY=typeof DedicatedWorkerGlobalScope<"u"&&globalThis instanceof DedicatedWorkerGlobalScope,cyY=typeof SharedWorkerGlobalScope<"u"&&globalThis instanceof SharedWorkerGlobalScope,VyY=typeof ServiceWorkerGlobalScope<"u"&&globalThis instanceof ServiceWorkerGlobalScope,kS=globalThis.navigator?.userAgentData?.platform,dyY=kS==="macOS"||globalThis.navigator?.platform==="MacIntel"||globalThis.navigator?.userAgent?.includes(" Mac ")===!0||globalThis.process?.platform==="darwin",myY=kS==="Windows"||globalThis.navigator?.platform==="Win32"||globalThis.process?.platform==="win32",QyY=kS==="Linux"||globalThis.navigator?.platform?.startsWith("Linux")===!0||globalThis.navigator?.userAgent?.includes(" Linux ")===!0||globalThis.process?.platform==="linux",XyY=kS==="iOS"||globalThis.navigator?.platform==="MacIntel"&&globalThis.navigator?.maxTouchPoints>1||/iPad|iPhone|iPod/.test(globalThis.navigator?.platform),FyY=kS==="Android"||globalThis.navigator?.platform==="Android"||globalThis.navigator?.userAgent?.includes(" Android ")===!0||globalThis.process?.platform==="android"});var uz={};w1(uz,{setCwd:()=>Dmb,scrollUp:()=>Lmb,scrollDown:()=>gmb,link:()=>Mmb,image:()=>Kmb,iTerm:()=>fKG,exitAlternativeScreen:()=>xmb,eraseUp:()=>umb,eraseStartLine:()=>pmb,eraseScreen:()=>WbI,eraseLines:()=>vmb,eraseLine:()=>_KG,eraseEndLine:()=>Cmb,eraseDown:()=>ymb,enterAlternativeScreen:()=>Umb,cursorUp:()=>iKG,cursorTo:()=>mmb,cursorShow:()=>Z3I,cursorSavePosition:()=>Hmb,cursorRestorePosition:()=>hmb,cursorPrevLine:()=>Amb,cursorNextLine:()=>Jmb,cursorMove:()=>Qmb,cursorLeft:()=>PKG,cursorHide:()=>Emb,cursorGetPosition:()=>wmb,cursorForward:()=>Fmb,cursorDown:()=>Xmb,cursorBackward:()=>Rmb,clearViewport:()=>zmb,clearTerminal:()=>kmb,clearScreen:()=>amb,beep:()=>Omb,ConEmu:()=>sKG});import tM from"node:process";import cmb from"node:os";var WY="\x1B[",rM="\x1B]",yz="\x07",US=";",SKG,Vmb,dmb,G3I,eM=(I)=>{if(dmb)return"\x1BPtmux;"+I.replaceAll("\x1B","\x1B\x1B")+"\x1B\\";return I},mmb=(I,G)=>{if(typeof I!=="number")throw TypeError("The `x` argument is required");if(typeof G!=="number")return WY+(I+1)+"G";return WY+(G+1)+US+(I+1)+"H"},Qmb=(I,G)=>{if(typeof I!=="number")throw TypeError("The `x` argument is required");let Z="";if(I<0)Z+=WY+-I+"D";else if(I>0)Z+=WY+I+"C";if(G<0)Z+=WY+-G+"A";else if(G>0)Z+=WY+G+"B";return Z},iKG=(I=1)=>WY+I+"A",Xmb=(I=1)=>WY+I+"B",Fmb=(I=1)=>WY+I+"C",Rmb=(I=1)=>WY+I+"D",PKG,Hmb,hmb,wmb,Jmb,Amb,Emb,Z3I,vmb=(I)=>{let G="";for(let Z=0;Z<I;Z++)G+=_KG+(Z<I-1?iKG():"");if(I)G+=PKG;return G},Cmb,pmb,_KG,ymb,umb,WbI,Lmb,gmb,amb="\x1Bc",zmb,Bmb=()=>{if(oM||!Vmb)return!1;let I=cmb.release().split("."),G=Number(I[0]),Z=Number(I[2]??0);if(G<10)return!0;if(G===10&&Z<10586)return!0;return!1},kmb,Umb,xmb,Omb,Mmb=(I,G)=>{let Z=eM(`${rM}8${US}${US}${G}${yz}`),l=eM(`${rM}8${US}${US}${yz}`);return Z+I+l},Kmb=(I,G={})=>{let Z=`${rM}1337;File=inline=1`;if(G.width)Z+=`;width=${G.width}`;if(G.height)Z+=`;height=${G.height}`;if(G.preserveAspectRatio===!1)Z+=";preserveAspectRatio=0";let l=Buffer.from(I);return eM(Z+`;size=${l.byteLength}:`+l.toString("base64")+yz)},fKG,sKG,Dmb=(I=G3I())=>fKG.setCwd(I)+sKG.setCwd(I);var l3I=a(()=>{TKG();SKG=!oM&&tM.env.TERM_PROGRAM==="Apple_Terminal",Vmb=!oM&&tM.platform==="win32",dmb=!oM&&(tM.env.TERM?.startsWith("screen")||tM.env.TERM?.startsWith("tmux")||tM.env.TMUX!==void 0),G3I=oM?()=>{throw Error("`process.cwd()` only works in Node.js, not the browser.")}:tM.cwd,PKG=WY+"G",Hmb=SKG?"\x1B7":WY+"s",hmb=SKG?"\x1B8":WY+"u",wmb=WY+"6n",Jmb=WY+"E",Amb=WY+"F",Emb=WY+"?25l",Z3I=WY+"?25h",Cmb=WY+"K",pmb=WY+"1K",_KG=WY+"2K",ymb=WY+"J",umb=WY+"1J",WbI=WY+"2J",Lmb=WY+"S",gmb=WY+"T",zmb=`${WbI}${WY}H`,kmb=Bmb()?`${WbI}${WY}0f`:`${WbI}${WY}3J${WY}H`,Umb=WY+"?1049h",xmb=WY+"?1049l",Omb=yz,fKG={setCwd:(I=G3I())=>eM(`${rM}50;CurrentDir=${I}${yz}`),annotation(I,G={}){let Z=`${rM}1337;`,l=G.x!==void 0,b=G.y!==void 0;if((l||b)&&!(l&&b&&G.length!==void 0))throw Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");if(I=I.replaceAll("|",""),Z+=G.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",G.length>0)Z+=(l?[I,G.length,G.x,G.y]:[G.length,I]).join("|");else Z+=I;return eM(Z+yz)}},sKG={setCwd:(I=G3I())=>eM(`${rM}9;9;${I}${yz}`)}});var NbI=a(()=>{l3I();l3I()});import{env as xS}from"node:process";var jmb,Lz;var $KG=a(()=>{jmb=xS.CI!=="0"&&xS.CI!=="false"&&(("CI"in xS)||("CONTINUOUS_INTEGRATION"in xS)||Object.keys(xS).some((I)=>I.startsWith("CI_"))),Lz=jmb});function b3I(I,{include:G,exclude:Z}={}){let l=(b)=>{let W=(N)=>typeof N==="string"?b===N:N.test(b);if(G)return G.some(W);if(Z)return!Z.some(W);return!0};for(let[b,W]of nmb(I.constructor.prototype)){if(W==="constructor"||!l(W))continue;let N=Reflect.getOwnPropertyDescriptor(b,W);if(N&&typeof N.value==="function")I[W]=I[W].bind(I)}return I}var nmb=(I)=>{let G=new Set;do for(let Z of Reflect.ownKeys(I))G.add([I,Z]);while((I=Reflect.getPrototypeOf(I))&&I!==Object.prototype);return G};var oKG=w((pyY,YbI)=>{YbI.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];if(process.platform!=="win32")YbI.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(process.platform==="linux")YbI.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var V3I=w((yyY,GK)=>{var EV=global.process,gz=function(I){return I&&typeof I==="object"&&typeof I.removeListener==="function"&&typeof I.emit==="function"&&typeof I.reallyExit==="function"&&typeof I.listeners==="function"&&typeof I.kill==="function"&&typeof I.pid==="number"&&typeof I.on==="function"};if(!gz(EV))GK.exports=function(){return function(){}};else{if(W3I=KI("assert"),az=oKG(),N3I=/^win/i.test(EV.platform),IK=KI("events"),typeof IK!=="function")IK=IK.EventEmitter;if(EV.__signal_exit_emitter__)y0=EV.__signal_exit_emitter__;else y0=EV.__signal_exit_emitter__=new IK,y0.count=0,y0.emitted={};if(!y0.infinite)y0.setMaxListeners(1/0),y0.infinite=!0;GK.exports=function(I,G){if(!gz(global.process))return function(){};if(W3I.equal(typeof I,"function","a callback must be provided for exit handler"),zz===!1)cbI();var Z="exit";if(G&&G.alwaysLast)Z="afterexit";var l=function(){if(y0.removeListener(Z,I),y0.listeners("exit").length===0&&y0.listeners("afterexit").length===0)OS()};return y0.on(Z,I),l},OS=function(){if(!zz||!gz(global.process))return;zz=!1,az.forEach(function(G){try{EV.removeListener(G,MS[G])}catch(Z){}}),EV.emit=KS,EV.reallyExit=VbI,y0.count-=1},GK.exports.unload=OS,wu=function(G,Z,l){if(y0.emitted[G])return;y0.emitted[G]=!0,y0.emit(G,Z,l)},MS={},az.forEach(function(I){MS[I]=function(){if(!gz(global.process))return;var Z=EV.listeners(I);if(Z.length===y0.count){if(OS(),wu("exit",null,I),wu("afterexit",null,I),N3I&&I==="SIGHUP")I="SIGINT";EV.kill(EV.pid,I)}}}),GK.exports.signals=function(){return az},zz=!1,cbI=function(){if(zz||!gz(global.process))return;zz=!0,y0.count+=1,az=az.filter(function(G){try{return EV.on(G,MS[G]),!0}catch(Z){return!1}}),EV.emit=c3I,EV.reallyExit=Y3I},GK.exports.load=cbI,VbI=EV.reallyExit,Y3I=function(G){if(!gz(global.process))return;EV.exitCode=G||0,wu("exit",EV.exitCode,null),wu("afterexit",EV.exitCode,null),VbI.call(EV,EV.exitCode)},KS=EV.emit,c3I=function(G,Z){if(G==="exit"&&gz(global.process)){if(Z!==void 0)EV.exitCode=Z;var l=KS.apply(this,arguments);return wu("exit",EV.exitCode,null),wu("afterexit",EV.exitCode,null),l}else return KS.apply(this,arguments)}}var W3I,az,N3I,IK,y0,OS,wu,MS,zz,cbI,VbI,Y3I,KS,c3I});import{PassThrough as tKG}from"node:stream";var rKG,d3I,qmb=(I)=>{let G=new tKG,Z=new tKG;G.write=(b)=>{I("stdout",b)},Z.write=(b)=>{I("stderr",b)};let l=new console.Console(G,Z);for(let b of rKG)d3I[b]=console[b],console[b]=l[b];return()=>{for(let b of rKG)console[b]=d3I[b];d3I={}}},eKG;var I6G=a(()=>{rKG=["assert","count","countReset","debug","dir","dirxml","error","group","groupCollapsed","groupEnd","info","log","table","time","timeEnd","timeLog","trace","warn"],d3I={},eKG=qmb});var Tmb,G6G;var Z6G=a(()=>{Tmb=(()=>{var I=import.meta.url;return function(G){G=G||{};var Z;Z||(Z=typeof G<"u"?G:{});var l,b;Z.ready=new Promise(function(mI,FI){l=mI,b=FI});var W=Object.assign({},Z),N="";typeof document<"u"&&document.currentScript&&(N=document.currentScript.src),I&&(N=I),N.indexOf("blob:")!==0?N=N.substr(0,N.replace(/[?#].*/,"").lastIndexOf("/")+1):N="";var Y=Z.print||console.log.bind(console),c=Z.printErr||console.warn.bind(console);Object.assign(Z,W),W=null;var V;Z.wasmBinary&&(V=Z.wasmBinary);var d=Z.noExitRuntime||!0;typeof WebAssembly!="object"&&EI("no native wasm support detected");var Q,X=!1;function R(mI,FI,PI){PI=FI+PI;for(var bG="";!(FI>=PI);){var wG=mI[FI++];if(!wG)break;if(wG&128){var PG=mI[FI++]&63;if((wG&224)==192)bG+=String.fromCharCode((wG&31)<<6|PG);else{var mZ=mI[FI++]&63;wG=(wG&240)==224?(wG&15)<<12|PG<<6|mZ:(wG&7)<<18|PG<<12|mZ<<6|mI[FI++]&63,65536>wG?bG+=String.fromCharCode(wG):(wG-=65536,bG+=String.fromCharCode(55296|wG>>10,56320|wG&1023))}}else bG+=String.fromCharCode(wG)}return bG}var H,h,A,C,g,z,k,x,n;function _(){var mI=Q.buffer;H=mI,Z.HEAP8=h=new Int8Array(mI),Z.HEAP16=C=new Int16Array(mI),Z.HEAP32=z=new Int32Array(mI),Z.HEAPU8=A=new Uint8Array(mI),Z.HEAPU16=g=new Uint16Array(mI),Z.HEAPU32=k=new Uint32Array(mI),Z.HEAPF32=x=new Float32Array(mI),Z.HEAPF64=n=new Float64Array(mI)}var lI,t=[],aI=[],QI=[];function lG(){var mI=Z.preRun.shift();t.unshift(mI)}var uI=0,ZI=null,zI=null;function EI(mI){if(Z.onAbort)Z.onAbort(mI);throw mI="Aborted("+mI+")",c(mI),X=!0,mI=new WebAssembly.RuntimeError(mI+". Build with -sASSERTIONS for more info."),b(mI),mI}function VI(mI){return mI.startsWith("data:application/octet-stream;base64,")}var JI="data:application/octet-stream;base64,AGFzbQEAAAABugM3YAF/AGACf38AYAF/AX9gA39/fwBgAn98AGACf38Bf2ADf39/AX9gBH9/f30BfWADf398AGAAAGAEf39/fwBgAX8BfGACf38BfGAFf39/f38Bf2AAAX9gA39/fwF9YAZ/f31/fX8AYAV/f39/fwBgAn9/AX1gBX9/f319AX1gAX8BfWADf35/AX5gB39/f39/f38AYAZ/f39/f38AYAR/f39/AX9gBn9/f319fQF9YAR/f31/AGADf399AX1gBn98f39/fwF/YAR/fHx/AGACf30AYAh/f39/f39/fwBgDX9/f39/f39/f39/f38AYAp/f39/f39/f39/AGAFf39/f38BfGAEfHx/fwF9YA1/fX1/f399fX9/f39/AX9gB39/f319f38AYAJ+fwF/YAN/fX0BfWABfAF8YAN/fHwAYAR/f319AGAHf39/fX19fQF9YA1/fX99f31/fX19fX1/AX9gC39/f39/f399fX19AX9gCH9/f39/f319AGAEf39+fgBgB39/f39/f38Bf2ACfH8BfGAFf398fH8AYAN/f38BfGAEf39/fABgA39/fQBgBn9/fX99fwF/ArUBHgFhAWEAHwFhAWIAAwFhAWMACQFhAWQAFgFhAWUAEQFhAWYAIAFhAWcAAAFhAWgAIQFhAWkAAwFhAWoAAAFhAWsAFwFhAWwACgFhAW0ABQFhAW4AAwFhAW8AAQFhAXAAFwFhAXEABgFhAXIAAAFhAXMAIgFhAXQACgFhAXUADQFhAXYAFgFhAXcAAgFhAXgAAwFhAXkAGAFhAXoAAgFhAUEAAQFhAUIAEQFhAUMAAQFhAUQAAAOiAqACAgMSBwcACRkDAAoRBgYKEwAPDxMBBiMTCgcHGgMUASQFJRQHAwMKCgMmAQYYDxobFAAKBw8KBwMDAgkCAAAFGwACBwIHBgIDAQMIDAABKAkHBQURACkZASoAAAIrLAIALQcHBy4HLwkFCgMCMA0xAgMJAgACAQYKAQIBBQEACQIFAQEABQAODQ0GFQIBHBUGAgkCEAAAAAUyDzMMBQYINAUCAwUODg41AgMCAgIDBgICNgIBDAwMAQsLCwsLCx0CAAIAAAABABABBQICAQMCEgMMCwEBAQEBAQsLAQICAwICAgICAgIDAgIICAEICAgEBAQEBAQEBAQABAQABAQEBAAE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GiABQQA2AvADIAFCADcC6AMgAigC7AMiAyACKALoAyIERwRAIAMgBGsiBEEASA0FIAEgBBAeIgM2AuwDIAEgAzYC6AMgASADIARqNgLwAyACKALoAyIEIAIoAuwDIghHBEADQCADIAQoAgA2AgAgA0EEaiEDIARBBGoiBCAIRw0ACwsgASADNgLsAwsgASACKQL0AzcC9AMgASACKAKEBDYChAQgASACKQL8AzcC/AMgAUEANgLkAwsgBSABNgIAIAEgADYC5AMLIAZBAWohBiAFQQRqIgUgB0cNAAsLDwsQAgALUAACQAJAAkACQAJAIAIOBAQAAQIDCyAAIAEgAUEwahBDDwsgACABIAFBMGogAxBEDwsgACABIAFBMGoQQg8LECQACyAAIAEgAUEwaiADEEULcAIBfwF9IwBBEGsiBCQAIARBCGogACABQQJ0QdwlaigCACACEDZDAADAfyEFAkACQAJAIAQtAAxBAWsOAgABAgsgBCoCCCEFDAELIAQqAgggA5RDCtcjPJQhBQsgBEEQaiQAIAVDAAAAACAFIAVbGwt5AgF/AX0jAEEQayIDJAAgA0EIaiAAIAFBAnRB7CVqKAIAIAIQU0MAAMB/IQQCQAJAAkAgAy0ADEEBaw4CAAECCyADKgIIIQQMAQsgAyoCCEMAAAAAlEMK1yM8lCEECyADQRBqJAAgBEMAAAAAl0MAAAAAIAQgBFsbC1QAAkACQAJAAkACQCACDgQEAAECAwsgACABIAFBwgBqEEMPCyAAIAEgAUHCAGogAxBEDwsgACABIAFBwgBqEEIPCxAkAAsgACABIAFBwgBqIAMQRQsvACAAIAJFQQF0IgIgASADEGAgACACIAEQS5IgACACIAEgAxB/IAAgAiABEFKSkgvOAQIDfwJ9IwBBEGsiAyQAQQEhBCADQQhqIABB/ABqIgUgACABQQF0akH2AGoiAS8BABAfAkACQCADKgIIIgcgAioCACIGXARAIAcgB1sEQCACLQAEIQIMAgsgBiAGXCEECyACLQAEIQIgBEUNACADLQAMIAJB/wFxRg0BCyAFIAEgBiACEDkDQCAALQAAIgFBBHENASAAIAFBBHI6AAAgACgCECIBBEAgACABEQAACyAAQYCAgP4HNgKcASAAKALkAyIADQALCyADQRBqJAALzgECA38CfSMAQRBrIgMk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AWsOAgABAgsgBCoCCCEFDAELIAQqAgggA5RDCtcjPJQhBQsgBEEQaiQAIAVDAAAAACAFIAVbGwscACAAIAFBCCACpyACQiCIpyADpyADQiCIpxAVCwUAEFgACzkAIABFBEBBAA8LAn8gAUGAf3FBgL8DRiABQf8ATXJFBEBB/DtBGTYCAEF/DAELIAAgAToAAEEBCwvEAgACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABQQlrDhIACgsMCgsCAwQFDAsMDAoLBwgJCyACIAIoAgAiAUEEajYCACAAIAEoAgA2AgAPCwALIAIgAigCACIBQQRqNgIAIAAgATIBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATMBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATAAADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATEAADcDAA8LAAsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKwMAOQMADwsgACACIAMRAQALDwsgAiACKAIAIgFBBGo2AgAgACABNAIANwMADwsgAiACKAIAIgFBBGo2AgAgACABNQIANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKQMANwMAC84BAgN/An0jAEEQayIDJABBASEEIANBCGogAEH8AGoiBSAAIAFBAXRqQegAaiIBLwEAEB8CQAJAIAMqAggiByACKgIAIgZcBEAgByAHWwRAIAItAAQhAgwCCyAGIAZcIQQLIAItAAQhAiAERQ0AIAMtAAwgAkH/AXFGDQELIAUgASAGIAIQOQNAIAAtAAAiAUEEcQ0BIAAgAUEEcjoAACAAKAIQIgEEQCAAIAERAAALIABBgICA/gc2ApwBIAAoAuQDIgANAAsLIANBEGokAAtdAQR/IAAoAgAhAgNAIAIsAAAiAxBXBEBBfyEEIAAgAkEBaiICNgIAIAFBzJmz5gBNBH9BfyADQTBrIgMgAUEKbCIEaiADIARB/////wdzShsFIAQLIQEMAQsLIAELrhQCEn8BfiMAQdAAayIIJAAgCCABNgJMIAhBN2ohFyAIQThqIRQCQAJAAkACQANAIAEhDSAHIA5B/////wdzSg0BIAcgDmohDgJAAkACQCANIgctAAAiCQRAA0ACQAJAIAlB/wFxIgFFBEAgByEBDAELIAFBJUcNASAH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IQEgAEIANwIEIAAgATYCACABIAA2AgQgAkEQaiQAIAALGwEBfyAABEAgACgCACIBBEAgARAjCyAAECMLC0kBAn9BBBAeIQFBIBAeIgBBADYCHCAAQoCAgICAgIDAPzcCFCAAQgA3AgwgAEEAOgAIIABBAzYCBCAAQQA2AgAgASAANgIAIAELIAAgAkEFR0EAIAIbRQRAQbgwIAMgBBBJDwsgAyAEEHALIgEBfiABIAKtIAOtQiCGhCAEIAARFQAiBUIgiKckASAFpwuoAQEFfyAAKAJUIgMoAgAhBSADKAIEIgQgACgCFCAAKAIcIgdrIgYgBCAGSRsiBgRAIAUgByAGECsaIAMgAygCACAGaiIFNgIAIAMgAygCBCAGayIENgIECyAEIAIgAiAESxsiBARAIAUgASAEECsaIAMgAygCACAEaiIFNgIAIAMgAygCBCAEazYCBAsgBUEAOgAAIAAgACgCLCIBNgIcIAAgATYCFCACCwQAQgALBABBAAuKBQIGfgJ/IAEgASgCAEEHakF4cSIBQRBqNgIAIAAhCSABKQMAIQMgASkDCCEGIwBBIGsiCCQAAkAgBkL///////////8AgyIEQoCAgICAgMCAPH0gBEKAgICAgIDA/8MAfVQEQCAGQgSGIANCPIiEIQQgA0L//////////w+DIgNCgYCAgICAgIAIWgRAIARCgYCAgICAgIDAAHwhAgwCCyAEQoCAgICAgICAQH0hAiADQoCAgICAgICACFINASACIARCAYN8IQIMAQsgA1AgBEKAgICAgIDA//8AVCAEQoCAgICAgMD//wBRG0UEQCAGQgSGIANCPIiEQv////////8Dg0KAgICAgICA/P8AhCECDAELQoCAgICAgID4/wAhAiAEQv///////7//wwBWDQBCACECIARCMIinIgBBkfcASQ0AIAMhAiAGQv///////z+DQoCAgICAgMAAhCIFIQcCQCAAQYH3AGsiAUHAAHEEQCACIAFBQGqthiEHQgAhAgwBCyABRQ0AIAcgAa0iBIYgAkHAACABa62IhCEHIAIgBIYhAgsgCCACNwMQIAggBzcDGAJAQYH4ACAAayIAQcAAcQRAIAUgAEFAaq2IIQNCACEFDAELIABFDQAgBUHAACAAa62GIAMgAK0iAoiEIQMgBSACiCEFCyAIIAM3AwAgCCAF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ASAAKAIAIQAgASACQQFxBH8gASgCACAAaigCAAUgAAsRCwALYQECfyMAQRBrIgIkACABIAAoAgQiA0EBdWohASAAKAIAIQAgAiABIANBAXEEfyABKAIAIABqKAIABSAACxEBAEEQEB4iACACKQMINwMIIAAgAikDADcDACACQRBqJAAgAAtjAQJ/IwBBEGsiAyQAIAEgACgCBCIEQQF1aiEBIAAoAgAhACADIAEgAiAEQQFxBH8gASgCACAAaigCAAUgAAsRAwBBEBAeIgAgAykDCDcDCCAAIAMpAwA3AwAgA0EQaiQAIAALNwEBfyABIAAoAgQiA0EBdWohASAAKAIAIQAgASACIANBAXEEfyABKAIAIABqKAIABSAACxEEAAs5AQF/IAEgACgCBCIEQQF1aiEBIAAoAgAhACABIAIgAyAEQQFxBH8gASgCACAAaigCAAUgAAsRCAALCQAgASAAEQIACwUAQcM7Cw8AIAEgACgCAGogAjYCAAsNACABIAAoAgBqKAIACxgBAX9BEBAeIgBCADcDCCAAQQA2AgAgAAsYAQF/QRAQHiIAQgA3AwAgAEIANwMIIAALDABBMBAeQQBBMBAqCzcBAX8gASAAKAIEIgNBAXVqIQEgACgCACEAIAEgAiADQQFxBH8gASgCACAAaigCAAUgAAsRHgALBQBBvjsLIQAgACABKAIAIAEgASwAC0EASBtBuzsgAigCABAQNgIACyoBAX9BDBAeIgFBADoABCABIAAoAgA2AgggAEEANgIAIAFB2Cc2AgAgAQsFAEG7OwsFAEG4OwshACAAIAEoAgAgASABLAALQQBIG0GkOyACKAIAEBA2AgAL2AEBBH8jAEEgayIDJAAgASgCACIEQfD///8HSQRAAkACQCAEQQtPBEAgBEEPckEBaiIFEB4hBiADIAVBgICAgHhyNgIQIAMgBjYCCCADIAQ2AgwgBCAGaiEFDAELIAMgBDoAEyADQQhqIgYgBGohBSAERQ0BCyAGIAFBBGogBBArGgsgBUEAOgAAIAMgAjYCACADQRhqIANBCGogAyAAEQMAIAMoAhgQHSADKAIYIgAQBiADKAIAEAYgAywAE0EASARAIAMoAggQIwsgA0EgaiQAIAAPCxACAAsqAQF/QQwQHiIBQQA6AAQgASAAKAIANgIIIABBADYCACABQeAmNgIA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AkEIaiAIIAYQHyACIAcgAC8AABAfQQEhAyACKgIIIgogAioCACILXAR/IAogClsNAyALIAtcBSADC0UNAiACLQAMIAItAARHDQILIABBAmohAEEBIQMgBCEGQQEhBCAGRQ0ACyABLwB6IgBBB3FFBEAgBS0AekEHcUUNAgsgCCAAECAiCiAHIAUvAHoQICILWw0BIAogClsNACALIAtcDQELIAFBFGogBUEUakHoABArGiABQfwAaiAFQfwAahCgAQNAIAEtAAAiAEEEcQ0BIAEgAEEEcjoAACABKAIQIgAEQCABIAARAAALIAFBgICA/gc2ApwBIAEoAuQDIgENAAsLIAJBEGokAAvGAwEEfyMAQaAEayICJAAgACgCBCEBIABBADYCBCABBEAgASABKAIAKAIEEQAACyAAKAIIIQEgAEEANgIIIAEEQCABIAEoAgAoAgQRAAALAkAgACgCACIAKALoAyAAKALsA0YEQCAAKALkAw0BIAAgAkEYaiAAKAL0AxBcIgEpAgA3AgAgACABKAIQNgIQIAAgASkCCDcCCCAAQRRqIAFBFGpB6AAQKxogACABKQKMATcCjAEgACABKQKEATcChAEgACABKQJ8NwJ8IAEoApQBIQQgAUEANgKUASAAKAKUASEDIAAgBDYClAEgAwRAIAMQWwsgAEGYAWogAUGYAWpB0AIQKxogACgC6AMiAwRAIAAgAzYC7AMgAxAjCyAAIAEoAugDNgLoAyAAIAEoAuwDNgLsAyAAIAEoAvADNgLwAyABQQA2AvADIAFCADcC6AMgACABKQL8AzcC/AMgACABKQL0AzcC9AMgACABKAKEBDYChAQgASgClAEhACABQQA2ApQBIAAEQCAAEFsLIAJBoARqJAAPCyACQfAcNgIQIABBBUHYJSACQRBqECwQJAALIAJB5hE2AgAgAEEFQdglIAIQLBAkAAsLAEEMEB4gABCiAQsLAEEMEB5BABCiAQsNACAAKAIALQAIQQFxCwoAIAAoAgAoAhQLGQAgAUH/AXEEQBACAAsgACgCACgCEEEBcQsYACAAKAIAIgAgAC0ACEH+AXEgAXI6AAgLJgAgASAAKAIAIgAoAhRHBEAgACABNgIUIAAgACgCDEEBajYCDAsLkgEBAn8jAEEQayICJAAgACgCACEAIAFDAAAAAGAEQCABIAAqAhhcBEAgACABOAIYIAAgACgCDEEBajYCDAsgAkEQaiQADwsgAkGIFDYCACMAQRBrIgMkACADIAI2AgwCQCAARQRAQbgwQdglIAIQSRoMAQsgAEEAQQVB2CUgAiAAKAIEEQ0AGgsgA0EQaiQAECQACz8AIAFB/wFxRQRAIAIgACgCACIAKAIQIgFBAXFHBEAgACABQX5xIAJyNgIQIAAgACgCDEEBajYCDAsPCxACAAsL4CYjAEGACAuBHk9ubHkgbGVhZiBub2RlcyB3aXRoIGN1c3RvbSBtZWFzdXJlIGZ1bmN0aW9ucyBzaG91bGQgbWFudWFsbHkgbWFyayB0aGVtc2VsdmVzIGFzIGRpcnR5AGlzRGlydHkAbWFya0RpcnR5AGRlc3Ryb3kAc2V0RGlzcGxheQBnZXREaXNwbGF5AHNldEZsZXgALSsgICAwWDB4AC0wWCswWCAwWC0weCsweCAweABzZXRGbGV4R3JvdwBnZXRGbGV4R3JvdwBzZXRPdmVyZmxvdwBnZXRPdmVyZmxvdwBoYXNOZXdMYXlvdXQAY2FsY3VsYXRlTGF5b3V0AGdldENvbXB1dGVkTGF5b3V0AHVuc2lnbmVkIHNob3J0AGdldENoaWxkQ291bnQAdW5zaWduZWQgaW50AHNldEp1c3RpZnlDb250ZW50AGdldEp1c3RpZnlDb250ZW50AGF2YWlsYWJsZUhlaWdodCBpcyBpbmRlZmluaXRlIHNvIGhlaWdodFNpemluZ01vZGUgbXVzdCBiZSBTaXppbmdNb2RlOjpNYXhDb250ZW50AGF2YWlsYWJsZVdpZHRoIGlzIGluZGVmaW5pdGUgc28gd2lkdGhTaXppbmdNb2RlIG11c3QgYmUgU2l6aW5nTW9kZTo6TWF4Q29udGVudABzZXRBbGlnbkNvbnRlbnQAZ2V0QWxpZ25Db250ZW50AGdldFBhcmVudABpbXBsZW1lbnQAc2V0TWF4SGVpZ2h0UGVyY2VudABzZXRIZWlnaHRQZXJjZW50AHNldE1pbkhlaWdodFBlcmNlbnQAc2V0RmxleEJhc2lzUGVyY2VudABzZXRHYXBQZXJjZW50AHNldFBvc2l0aW9uUGVyY2VudABzZXRNYXJnaW5QZXJjZW50AHNldE1heFdpZHRoUGVyY2VudABzZXRXaWR0aFBlcmNlbnQAc2V0TWluV2lkdGhQZXJjZW50AHNldFBhZGRpbmdQZXJjZW50AGhhbmRsZS50eXBlKCkgPT0gU3R5bGVWYWx1ZUhhbmRsZTo6VHlwZTo6UG9pbnQgfHwgaGFuZGxlLnR5cGUoKSA9PSBTdHlsZVZhbHVlSGFuZGxlOjpUeXBlOjpQZXJjZW50AGNyZWF0ZURlZmF1bHQAdW5pdAByaWdodABoZWlnaHQAc2V0TWF4SGVpZ2h0AGdldE1heEhlaWdodABzZXRIZWlnaHQAZ2V0SGVpZ2h0AHNldE1pbkhlaWdodABnZXRNaW5IZWlnaHQAZ2V0Q29tcHV0ZWRIZWlnaHQAZ2V0Q29tcHV0ZWRSaWdodABsZWZ0AGdldENvbXB1dGVkTGVmdAByZXNldABfX2Rlc3RydWN0AGZsb2F0AHVpbnQ2NF90AHVzZVdlYkRlZmF1bHRzAHNldFVzZVdlYkRlZmF1bHRzAHNldEFsaWduSXRlbXMAZ2V0QWxpZ25JdGVtcwBzZXRGbGV4QmFzaXMAZ2V0RmxleEJhc2lzAENhbm5vdCBnZXQgbGF5b3V0IHByb3BlcnRpZXMgb2YgbXVsdGktZWRnZSBzaG9ydGhhbmRzAHNldFBvaW50U2NhbGVGYWN0b3IATWVhc3VyZUNhbGxiYWNrV3JhcHBlcgBEaXJ0aWVkQ2FsbGJhY2tXcmFwcGVyAENhbm5vdCByZXNldCBhIG5vZGUgc3RpbGwgYXR0YWNoZWQgdG8gYSBvd25lcgBzZXRCb3JkZXIAZ2V0Qm9yZGVyAGdldENvbXB1dGVkQm9yZGVyAGdldE51bWJlcgBoYW5kbGUudHlwZSgpID09IFN0eWxlVmFsdWVIYW5kbGU6OlR5cGU6Ok51bWJlcgB1bnNpZ25lZCBjaGFyAHRvcABnZXRDb21wdXRlZFRvcABzZXRGbGV4V3JhcABnZXRGbGV4V3JhcABzZXRHYXAAZ2V0R2FwACVwAHNldEhlaWdodEF1dG8Ac2V0RmxleEJhc2lzQXV0bwBzZXRQb3NpdGlvbkF1dG8Ac2V0TWFyZ2luQXV0bwBzZXRXaWR0aEF1dG8AU2NhbGUgZmFjdG9yIHNob3VsZCBub3QgYmUgbGVzcyB0aGFuIHplcm8Ac2V0QXNwZWN0UmF0aW8AZ2V0QXNwZWN0UmF0aW8Ac2V0UG9zaXRpb24AZ2V0UG9zaXRpb24Abm90aWZ5T25EZXN0cnVjdGlvbgBzZXRGbGV4RGlyZWN0aW9uAGdldEZsZXhEaXJlY3Rpb24Ac2V0RGlyZWN0aW9uAGdldERpcmVjdGlvbgBzZXRNYXJnaW4AZ2V0TWFyZ2luAGdldENvbXB1dGVkTWFyZ2luAG1hcmtMYXlvdXRTZWVuAG5hbgBib3R0b20AZ2V0Q29tcHV0ZWRCb3R0b20AYm9vbABlbXNjcmlwdGVuOjp2YWwAc2V0RmxleFNocmluawBnZXRGbGV4U2hyaW5rAHNldEFsd2F5c0Zvcm1zQ29udGFpbmluZ0Jsb2NrAE1lYXN1cmVDYWxsYmFjawBEaXJ0aWVkQ2FsbGJhY2sAZ2V0TGVuZ3RoAHdpZHRoAHNldE1heFdpZHRoAGdldE1heFdpZHRoAHNldFdpZHRoAGdldFdpZHRoAHNldE1pbldpZHRoAGdldE1pbldpZHRoAGdldENvbXB1dGVkV2lkdGgAcHVzaAAvaG9tZS9ydW5uZXIvd29yay95b2dhL3lvZ2EvamF2YXNjcmlwdC8uLi95b2dhL3N0eWxlL1NtYWxsVmFsdWVCdWZmZXIuaAAvaG9tZS9ydW5uZXIvd29yay95b2dhL3lvZ2EvamF2YXNjcmlwdC8uLi95b2dhL3N0eWxlL1N0eWxlVmFsdWVQb29sLmgAdW5zaWduZWQgbG9uZwBzZXRCb3hTaXppbmcAZ2V0Qm94U2l6aW5nAHN0ZDo6d3N0cmluZwBzdGQ6OnN0cmluZwBzdGQ6OnUxNnN0cmluZwBzdGQ6OnUzMnN0cmluZwBzZXRQYWRkaW5nAGdldFBhZGRpbmcAZ2V0Q29tcHV0ZWRQYWRkaW5nAFRyaWVkIHRvIGNvbnN0cnVjdCBZR05vZGUgd2l0aCBudWxsIGNvbmZpZwBBdHRlbXB0aW5nIHRvIGNvbnN0cnVjdCBOb2RlIHdpdGggbnVsbCBjb25maWcAY3JlYXRlV2l0aENvbmZpZwBpbmYAc2V0QWxpZ25TZWxmAGdldEFsaWduU2VsZgBTaXplAHZhbHVlAFZhbHVlAGNyZWF0ZQBtZWFzdXJlAHNldFBvc2l0aW9uVHlwZQBnZXRQb3NpdGlvblR5cGUAaXNSZWZlcmVuY2VCYXNlbGluZQBzZXRJc1JlZmVyZW5jZUJhc2VsaW5lAGNvcHlTdHlsZQBkb3VibGUATm9kZQBleHRlbmQAaW5zZXJ0Q2hpbGQAZ2V0Q2hpbGQAcmVtb3ZlQ2hpbGQAdm9pZABzZXRFeHBlcmltZW50YWxGZWF0dXJlRW5hYmxlZABpc0V4cGVyaW1lbnRhbEZlYXR1cmVFbmFibGVkAGRpcnRpZWQAQ2Fubm90IHJlc2V0IGEgbm9kZSB3aGljaCBzdGlsbCBoYXMgY2hpbGRyZW4gYXR0YWNoZWQAdW5zZXRNZWFzdXJlRnVuYwB1bnNldERpcnRpZWRGdW5jAHNldEVycmF0YQBnZXRFcnJhdGEATWVhc3VyZSBmdW5jdGlvbiByZXR1cm5lZCBhbiBpbnZhbGlkIGRpbWVuc2lvbiB0byBZb2dhOiBbd2lkdGg9JWYsIGhlaWdodD0lZl0ARXhwZWN0IGN1c3RvbSBiYXNlbGluZSBmdW5jdGlvbiB0byBub3QgcmV0dXJuIE5hTgBOQU4ASU5GAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4Ac3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2lnbmVk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";if(!VI(JI)){var LI=JI;JI=Z.locateFile?Z.locateFile(LI,N):N+LI}function MI(){var mI=JI;try{if(mI==JI&&V)return new Uint8Array(V);if(VI(mI))try{var FI=T0(mI.slice(37)),PI=new Uint8Array(FI.length);for(mI=0;mI<FI.length;++mI)PI[mI]=FI.charCodeAt(mI);var bG=PI}catch(PG){throw Error("Converting base64 string to bytes failed.")}else bG=void 0;var wG=bG;if(wG)return wG;throw"both async and sync fetching of the wasm failed"}catch(PG){EI(PG)}}function BI(){return V||typeof fetch!="function"?Promise.resolve().then(function(){return MI()}):fetch(JI,{credentials:"same-origin"}).then(function(mI){if(!mI.ok)throw"failed to load wasm binary file at '"+JI+"'";return mI.arrayBuffer()}).catch(function(){return MI()})}function FG(mI){for(;0<mI.length;)mI.shift()(Z)}function f(mI){if(mI===void 0)return"_unknown";mI=mI.replace(/[^a-zA-Z0-9_]/g,"$");var FI=mI.charCodeAt(0);return 48<=FI&&57>=FI?"_"+mI:mI}function P(mI,FI){return mI=f(mI),function(){return FI.apply(this,arguments)}}var NI=[{},{value:void 0},{value:null},{value:!0},{value:!1}],GG=[];function ZG(mI){var FI=Error,PI=P(mI,function(bG){this.name=mI,this.message=bG,bG=Error(bG).stack,bG!==void 0&&(this.stack=this.toString()+`
74
+ `)}catch(G){let Z=G instanceof Error?G.message:String(G||"Unknown error");throw DG(`Error in sendToShell: ${Z}`),JG("persistent_shell_write_error",{error:Z.substring(0,100),command:I.substring(0,30)}),G}}pwd(){try{let I=id.readFileSync(this.cwdFile,"utf8").trim();if(I)this.cwd=I}catch(I){DG(`Shell pwd error ${I}`)}return this.cwd}async setCwd(I){let G=P0b(I)?I:_0b(process.cwd(),I);if(!wKG(G))throw Error(`Path "${G}" does not exist`);await this.exec(`cd ${G}`)}close(){this.shell.stdin.end(),this.shell.kill()}}var AKG,$lI,s0b=1800000,$0b=143,olI,o0b;var tlI=a(()=>{Ul();TW();AKG=hI(FCI(),1),$lI=EKG.tmpdir()+"/claude-",olI={STATUS:"-status",STDOUT:"-stdout",STDERR:"-stderr",CWD:"-cwd"},o0b={"/bin/bash":".bashrc","/bin/zsh":".zshrc"}});import{cwd as t0b}from"process";async function H4(I){await _m.getInstance().setCwd(I)}function mF(){return r0b.originalCwd}function bZ(){return _m.getInstance().pwd()}var r0b;var QW=a(()=>{tlI();r0b={originalCwd:t0b()}});import{execFile as e0b}from"child_process";function SW(I,G,Z,l=10*Gmb*Imb,b=!0){return new Promise((W)=>{try{e0b(I,G,{maxBuffer:1e6,signal:Z,timeout:l,cwd:bZ()},(N,Y,c)=>{if(N)if(b){let V=typeof N.code==="number"?N.code:1;W({stdout:Y||"",stderr:c||"",code:V})}else W({stdout:"",stderr:"",code:1});else W({stdout:Y,stderr:c,code:0})})}catch(N){DG(N),W({stdout:"",stderr:"",code:1})}})}var Imb=1000,Gmb=60;var iR=a(()=>{QW();Ul()});import{join as rlI}from"path";import{homedir as vKG}from"os";var hu,lC,hHY,Zmb,lmb,wHY,sl;var k2=a(()=>{iR();wY();hu=process.env.CLAUDE_CONFIG_DIR??rlI(vKG(),".claude"),lC=process.env.CLAUDE_CONFIG_DIR?rlI(hu,"config.json"):rlI(vKG(),".claude.json"),hHY=rlI(hu,"memory"),Zmb=cb(async()=>{let{code:I}=await SW("test",["-f","/.dockerenv"]);if(I!==0)return!1;return process.platform==="linux"}),lmb=cb(async()=>{try{let I=new AbortController,G=setTimeout(()=>I.abort(),1000);return await fetch("http://1.1.1.1",{method:"HEAD",signal:I.signal}),clearTimeout(G),!0}catch{return!1}}),wHY=Boolean(process.env.CLAUDE_CODE_SIMPLE),sl={getIsDocker:Zmb,hasInternetAccess:lmb,isCI:Boolean(process.env.CI),platform:process.platform==="win32"?"windows":process.platform==="darwin"?"macos":"linux",nodeVersion:process.version,terminal:process.env.TERM_PROGRAM}});function NX(I){if(!I)return null;try{return JSON.parse(I)}catch(G){return DG(G),null}}var pz=a(()=>{Ul()});var sCI,iM,PM;var _M=a(()=>{sCI=class sCI extends TypeError{};iM=class iM extends Error{};PM=class PM extends Error{filePath;defaultConfig;constructor(I,G,Z){super(I);this.name="ConfigParseError",this.filePath=G,this.defaultConfig=Z}}});import{existsSync as gS,readFileSync as aS,writeFileSync as bmb}from"fs";import{resolve as $CI,join as elI}from"path";import{homedir as Wmb}from"os";import{randomBytes as Nmb}from"crypto";function CKG(I){let G={...pKG};if(I===Wmb())G.dontCrawlDirectory=!0;return G}function Ymb(I){return["disabled","enabled","no_permissions","not_configured"].includes(I)}function oCI(I){return zS.includes(I)}function yKG(){let I=bZ(),G=sM(lC,B5);while(!0){if(G.projects?.[I]?.hasTrustDialogAccepted)return!0;let l=$CI(I,"..");if(l===I)break;I=l}return!1}function tCI(I){return BS.includes(I)}function XW(I){uKG(lC,{...I,projects:sM(lC,B5).projects},B5)}function rZ(){return sM(lC,B5)}function Bh(){let I=rZ();if(process.env.USER_TYPE==="SWE_BENCH")return process.env.ANTHROPIC_API_KEY_OVERRIDE??null;if(process.env.USER_TYPE==="external")return I.primaryApiKey??null;if(process.env.USER_TYPE==="ant"){if(process.env.ANTHROPIC_API_KEY&&I.customApiKeyResponses?.approved?.includes(sR(process.env.ANTHROPIC_API_KEY)))return process.env.ANTHROPIC_API_KEY;return I.primaryApiKey??null}return null}function sR(I){return I.slice(-20)}function IbI(){let I=rZ();return Bh()===I.primaryApiKey}function GbI(I){let G=rZ();if(G.customApiKeyResponses?.approved?.includes(I))return"approved";if(G.customApiKeyResponses?.rejected?.includes(I))return"rejected";return"new"}function uKG(I,G,Z){let l=Object.fromEntries(Object.entries(G).filter(([b,W])=>JSON.stringify(W)!==JSON.stringify(Z[b])));bmb(I,JSON.stringify(l,null,2),"utf-8")}function gKG(){LKG=!0,sM(lC,B5,!0)}function sM(I,G,Z){if(!LKG)throw Error("Config accessed before allowed.");if(!gS(I))return ES(G);try{let l=aS(I,"utf-8");try{let b=JSON.parse(l);return{...ES(G),...b}}catch(b){let W=b instanceof Error?b.message:String(b);throw new PM(W,I,G)}}catch(l){if(l instanceof PM&&Z)throw l;return ES(G)}}function Ob(){let I=$CI(bZ()),G=sM(lC,B5);if(!G.projects)return CKG(I);let Z=G.projects[I]??CKG(I);if(typeof Z.allowedTools==="string")Z.allowedTools=NX(Z.allowedTools)??[];return Z}function k5(){return Boolean(process.env.CLAUDE_CODE_SIMPLE)||Boolean(Ob().simpleMode)}function pN(I){let G=sM(lC,B5);uKG(lC,{...G,projects:{...G.projects,[$CI(bZ())]:I}},B5)}async function aKG(){return rZ().autoUpdaterStatus==="disabled"}function fM(I){let G={...I};if(G.type==="streamable-http")G.type="http";if(!G.type&&typeof G.url==="string")G.type="sse";if(G.type==="http"||G.type==="sse"){if(G.oauth===!0)G.oauth={};else if(!G.oauth||typeof G.oauth!=="object"){if("clientId"in G||"clientSecret"in G)G.oauth={...G.clientId?{clientId:G.clientId}:{},...G.clientSecret?{clientSecret:G.clientSecret}:{}},delete G.clientId,delete G.clientSecret}}return G}function ZbI(){let I=rZ();if(I.userID)return I.userID;let G=Nmb(32).toString("hex");return XW({...I,userID:G}),G}function zKG(I,G){if(JG("tengu_config_get",{key:I,global:G?.toString()??"false"}),G){if(!oCI(I))console.error(`Error: '${I}' is not a valid config key. Valid keys are: ${zS.join(", ")}`),process.exit(1);return rZ()[I]}else{if(!tCI(I))console.error(`Error: '${I}' is not a valid config key. Valid keys are: ${BS.join(", ")}`),process.exit(1);return Ob()[I]}}function BKG(I,G,Z){if(JG("tengu_config_set",{key:I,global:Z?.toString()??"false"}),Z){if(!oCI(I))console.error(`Error: Cannot set '${I}'. Only these keys can be modified: ${zS.join(", ")}`),process.exit(1);if(I==="autoUpdaterStatus"&&!Ymb(G))console.error("Error: Invalid value for autoUpdaterStatus. Must be one of: disabled, enabled, no_permissions, not_configured"),process.exit(1);let l=rZ();XW({...l,[I]:G})}else{if(!tCI(I))console.error(`Error: Cannot set '${I}'. Only these keys can be modified: ${BS.join(", ")}. Did you mean --global?`),process.exit(1);let l=Ob();pN({...l,[I]:G})}setTimeout(()=>{process.exit(0)},100)}function kKG(I,G){if(JG("tengu_config_delete",{key:I,global:G?.toString()??"false"}),G){if(!oCI(I))console.error(`Error: Cannot delete '${I}'. Only these keys can be modified: ${zS.join(", ")}`),process.exit(1);let Z=rZ();delete Z[I],XW(Z)}else{if(!tCI(I))console.error(`Error: Cannot delete '${I}'. Only these keys can be modified: ${BS.join(", ")}. Did you mean --global?`),process.exit(1);let Z=Ob();delete Z[I],pN(Z)}}function rCI(I){if(JG("tengu_config_list",{global:I?.toString()??"false"}),I)return plI(rZ(),zS);else return plI(Ob(),BS)}var pKG,B5,zS,BS,xHY,OHY,LKG=!1,$M;var MW=a(()=>{wY();k2();QW();pz();TW();_M();pKG={allowedTools:[],context:{},history:[],dontCrawlDirectory:!1,enableArchitectTool:!1,mcpContextUris:[],mcpServers:{},approvedMcpJsonServers:[],rejectedMcpJsonServers:[],disabledMcpServers:[],hasTrustDialogAccepted:!1};B5={numStartups:0,autoUpdaterStatus:"enabled",theme:"dark",preferredNotifChannel:"iterm2",verbose:!1,customApiKeyResponses:{approved:[],rejected:[]}},zS=["autoUpdaterStatus","theme","hasCompletedOnboarding","lastOnboardingVersion","lastReleaseNotesSeen","verbose","customApiKeyResponses","primaryApiKey","preferredNotifChannel","shiftEnterKeyBindingInstalled","model"];BS=["dontCrawlDirectory","enableArchitectTool","simpleMode","hasTrustDialogAccepted","hasCompletedProjectOnboarding"];xHY={...B5,autoUpdaterStatus:"disabled"},OHY={...pKG};$M=cb(()=>{let I=elI(bZ(),".mcp.json"),G=elI(bZ(),".mcprc");if(gS(I))try{let Z=aS(I,"utf-8"),l=NX(Z);if(l&&typeof l==="object"){let b=l.mcpServers;if(b&&typeof b==="object"){let W={};for(let[N,Y]of Object.entries(b))W[N]=fM(Y);return JG("tengu_mcp_json_found",{numServers:Object.keys(W).length.toString()}),W}}}catch{}if(gS(G))try{let Z=aS(G,"utf-8"),l=NX(Z);if(l&&typeof l==="object"){let b={};for(let[W,N]of Object.entries(l))b[W]=fM(N);return JG("tengu_mcprc_found",{numServers:Object.keys(b).length.toString()}),b}}catch{}return{}},()=>{let I=bZ(),G=elI(I,".mcp.json"),Z=elI(I,".mcprc");if(gS(G))try{let l=aS(G,"utf-8");return`${I}:mcp.json:${l}`}catch{return I}if(gS(Z))try{let l=aS(Z,"utf-8");return`${I}:mcprc:${l}`}catch{return I}return I})});var eCI,UKG;var I3I=a(()=>{MW();wY();k2();iR();Ul();eCI=cb(async()=>{let I=await SW("git",["config","user.email"]);if(I.code!==0){DG(`Failed to get git email: ${I.stdout} ${I.stderr}`);return}return I.stdout.trim()||void 0}),UKG=cb(async()=>{let I=ZbI(),G=rZ(),Z=process.env.USER_TYPE==="ant"?G.oauthAccount?.emailAddress??await eCI()??(process.env.COO_CREATOR?`${process.env.COO_CREATOR}@quantumio.com.cn`:void 0):void 0;return{customIDs:{sessionId:cF},userID:I,appVersion:"1.3.4",userAgent:sl.platform,email:Z,custom:{nodeVersion:sl.nodeVersion,userType:process.env.USER_TYPE,organizationUuid:G.oauthAccount?.organizationUuid,accountUuid:G.oauthAccount?.accountUuid}}})});var xKG="https://e531a1d9ec1de9064fae9d4affb0b0f4@o1158394.ingest.us.sentry.io/4508259541909504";function OKG(){gvI({dsn:xKG,release:"1.3.4",integrations:[KT(),_O(),uO(),pO(),yO()],tracesSampleRate:1,tracePropagationTargets:["localhost"]})}async function BlI(I){try{let[G,Z]=await Promise.all([ah(),UKG()]);SII({nodeVersion:sl.nodeVersion,platform:sl.platform,cwd:bZ(),isCI:sl.isCI,isGit:G,isTest:!1,packageVersion:"1.3.4",sessionId:cF,statsigGates:hKG(),terminal:sl.terminal,userType:process.env.USER_TYPE}),iII({id:Z.userID,email:Z.email}),Im(I)}catch{}}var klI=a(()=>{avI();avI();I3I();k2();QW();TW();Ul();a5()});var QF="Claude Code",yN="QuantWise",lbI="https://docs.anthropic.com/s/claude-code";function MKG(I,G,{signal:Z,edges:l}={}){let b=void 0,W=null,N=l!=null&&l.includes("leading"),Y=l==null||l.includes("trailing"),c=()=>{if(W!==null)I.apply(b,W),b=void 0,W=null},V=()=>{if(Y)c();R()},d=null,Q=()=>{if(d!=null)clearTimeout(d);d=setTimeout(()=>{d=null,V()},G)},X=()=>{if(d!==null)clearTimeout(d),d=null},R=()=>{X(),b=void 0,W=null},H=()=>{c()},h=function(...A){if(Z?.aborted)return;b=this,W=A;let C=d==null;if(Q(),N&&C)c()};return h.schedule=Q,h.cancel=R,h.flush=H,Z?.addEventListener("abort",R,{once:!0}),h}var KKG=()=>{};function DKG(I,G=0,Z={}){if(typeof Z!=="object")Z={};let{leading:l=!1,trailing:b=!0,maxWait:W}=Z,N=Array(2);if(l)N[0]="leading";if(b)N[1]="trailing";let Y=void 0,c=null,V=MKG(function(...X){Y=I.apply(this,X),c=null},G,{edges:N}),d=function(...X){if(W!=null){if(c===null)c=Date.now();if(Date.now()-c>=W)return Y=I.apply(this,X),c=Date.now(),V.cancel(),V.schedule(),Y}return V.apply(this,X),Y},Q=()=>{return V.flush(),Y};return d.cancel=V.cancel,d.flush=Q,d}var jKG=a(()=>{KKG()});function bbI(I,G=0,Z={}){let{leading:l=!0,trailing:b=!0}=Z;return DKG(I,G,{leading:l,maxWait:G,trailing:b})}var nKG=a(()=>{jKG()});var qKG=a(()=>{nKG()});var oM,GyY,ZyY,lyY,byY,WyY,NyY,YyY,cyY,VyY,kS,dyY,myY,QyY,XyY,FyY;var TKG=a(()=>{oM=globalThis.window?.document!==void 0,GyY=globalThis.process?.versions?.node!==void 0,ZyY=globalThis.process?.versions?.bun!==void 0,lyY=globalThis.Deno?.version?.deno!==void 0,byY=globalThis.process?.versions?.electron!==void 0,WyY=globalThis.navigator?.userAgent?.includes("jsdom")===!0,NyY=typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope,YyY=typeof DedicatedWorkerGlobalScope<"u"&&globalThis instanceof DedicatedWorkerGlobalScope,cyY=typeof SharedWorkerGlobalScope<"u"&&globalThis instanceof SharedWorkerGlobalScope,VyY=typeof ServiceWorkerGlobalScope<"u"&&globalThis instanceof ServiceWorkerGlobalScope,kS=globalThis.navigator?.userAgentData?.platform,dyY=kS==="macOS"||globalThis.navigator?.platform==="MacIntel"||globalThis.navigator?.userAgent?.includes(" Mac ")===!0||globalThis.process?.platform==="darwin",myY=kS==="Windows"||globalThis.navigator?.platform==="Win32"||globalThis.process?.platform==="win32",QyY=kS==="Linux"||globalThis.navigator?.platform?.startsWith("Linux")===!0||globalThis.navigator?.userAgent?.includes(" Linux ")===!0||globalThis.process?.platform==="linux",XyY=kS==="iOS"||globalThis.navigator?.platform==="MacIntel"&&globalThis.navigator?.maxTouchPoints>1||/iPad|iPhone|iPod/.test(globalThis.navigator?.platform),FyY=kS==="Android"||globalThis.navigator?.platform==="Android"||globalThis.navigator?.userAgent?.includes(" Android ")===!0||globalThis.process?.platform==="android"});var uz={};w1(uz,{setCwd:()=>Dmb,scrollUp:()=>Lmb,scrollDown:()=>gmb,link:()=>Mmb,image:()=>Kmb,iTerm:()=>fKG,exitAlternativeScreen:()=>xmb,eraseUp:()=>umb,eraseStartLine:()=>pmb,eraseScreen:()=>WbI,eraseLines:()=>vmb,eraseLine:()=>_KG,eraseEndLine:()=>Cmb,eraseDown:()=>ymb,enterAlternativeScreen:()=>Umb,cursorUp:()=>iKG,cursorTo:()=>mmb,cursorShow:()=>Z3I,cursorSavePosition:()=>Hmb,cursorRestorePosition:()=>hmb,cursorPrevLine:()=>Amb,cursorNextLine:()=>Jmb,cursorMove:()=>Qmb,cursorLeft:()=>PKG,cursorHide:()=>Emb,cursorGetPosition:()=>wmb,cursorForward:()=>Fmb,cursorDown:()=>Xmb,cursorBackward:()=>Rmb,clearViewport:()=>zmb,clearTerminal:()=>kmb,clearScreen:()=>amb,beep:()=>Omb,ConEmu:()=>sKG});import tM from"node:process";import cmb from"node:os";var WY="\x1B[",rM="\x1B]",yz="\x07",US=";",SKG,Vmb,dmb,G3I,eM=(I)=>{if(dmb)return"\x1BPtmux;"+I.replaceAll("\x1B","\x1B\x1B")+"\x1B\\";return I},mmb=(I,G)=>{if(typeof I!=="number")throw TypeError("The `x` argument is required");if(typeof G!=="number")return WY+(I+1)+"G";return WY+(G+1)+US+(I+1)+"H"},Qmb=(I,G)=>{if(typeof I!=="number")throw TypeError("The `x` argument is required");let Z="";if(I<0)Z+=WY+-I+"D";else if(I>0)Z+=WY+I+"C";if(G<0)Z+=WY+-G+"A";else if(G>0)Z+=WY+G+"B";return Z},iKG=(I=1)=>WY+I+"A",Xmb=(I=1)=>WY+I+"B",Fmb=(I=1)=>WY+I+"C",Rmb=(I=1)=>WY+I+"D",PKG,Hmb,hmb,wmb,Jmb,Amb,Emb,Z3I,vmb=(I)=>{let G="";for(let Z=0;Z<I;Z++)G+=_KG+(Z<I-1?iKG():"");if(I)G+=PKG;return G},Cmb,pmb,_KG,ymb,umb,WbI,Lmb,gmb,amb="\x1Bc",zmb,Bmb=()=>{if(oM||!Vmb)return!1;let I=cmb.release().split("."),G=Number(I[0]),Z=Number(I[2]??0);if(G<10)return!0;if(G===10&&Z<10586)return!0;return!1},kmb,Umb,xmb,Omb,Mmb=(I,G)=>{let Z=eM(`${rM}8${US}${US}${G}${yz}`),l=eM(`${rM}8${US}${US}${yz}`);return Z+I+l},Kmb=(I,G={})=>{let Z=`${rM}1337;File=inline=1`;if(G.width)Z+=`;width=${G.width}`;if(G.height)Z+=`;height=${G.height}`;if(G.preserveAspectRatio===!1)Z+=";preserveAspectRatio=0";let l=Buffer.from(I);return eM(Z+`;size=${l.byteLength}:`+l.toString("base64")+yz)},fKG,sKG,Dmb=(I=G3I())=>fKG.setCwd(I)+sKG.setCwd(I);var l3I=a(()=>{TKG();SKG=!oM&&tM.env.TERM_PROGRAM==="Apple_Terminal",Vmb=!oM&&tM.platform==="win32",dmb=!oM&&(tM.env.TERM?.startsWith("screen")||tM.env.TERM?.startsWith("tmux")||tM.env.TMUX!==void 0),G3I=oM?()=>{throw Error("`process.cwd()` only works in Node.js, not the browser.")}:tM.cwd,PKG=WY+"G",Hmb=SKG?"\x1B7":WY+"s",hmb=SKG?"\x1B8":WY+"u",wmb=WY+"6n",Jmb=WY+"E",Amb=WY+"F",Emb=WY+"?25l",Z3I=WY+"?25h",Cmb=WY+"K",pmb=WY+"1K",_KG=WY+"2K",ymb=WY+"J",umb=WY+"1J",WbI=WY+"2J",Lmb=WY+"S",gmb=WY+"T",zmb=`${WbI}${WY}H`,kmb=Bmb()?`${WbI}${WY}0f`:`${WbI}${WY}3J${WY}H`,Umb=WY+"?1049h",xmb=WY+"?1049l",Omb=yz,fKG={setCwd:(I=G3I())=>eM(`${rM}50;CurrentDir=${I}${yz}`),annotation(I,G={}){let Z=`${rM}1337;`,l=G.x!==void 0,b=G.y!==void 0;if((l||b)&&!(l&&b&&G.length!==void 0))throw Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");if(I=I.replaceAll("|",""),Z+=G.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",G.length>0)Z+=(l?[I,G.length,G.x,G.y]:[G.length,I]).join("|");else Z+=I;return eM(Z+yz)}},sKG={setCwd:(I=G3I())=>eM(`${rM}9;9;${I}${yz}`)}});var NbI=a(()=>{l3I();l3I()});import{env as xS}from"node:process";var jmb,Lz;var $KG=a(()=>{jmb=xS.CI!=="0"&&xS.CI!=="false"&&(("CI"in xS)||("CONTINUOUS_INTEGRATION"in xS)||Object.keys(xS).some((I)=>I.startsWith("CI_"))),Lz=jmb});function b3I(I,{include:G,exclude:Z}={}){let l=(b)=>{let W=(N)=>typeof N==="string"?b===N:N.test(b);if(G)return G.some(W);if(Z)return!Z.some(W);return!0};for(let[b,W]of nmb(I.constructor.prototype)){if(W==="constructor"||!l(W))continue;let N=Reflect.getOwnPropertyDescriptor(b,W);if(N&&typeof N.value==="function")I[W]=I[W].bind(I)}return I}var nmb=(I)=>{let G=new Set;do for(let Z of Reflect.ownKeys(I))G.add([I,Z]);while((I=Reflect.getPrototypeOf(I))&&I!==Object.prototype);return G};var oKG=w((pyY,YbI)=>{YbI.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];if(process.platform!=="win32")YbI.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(process.platform==="linux")YbI.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var V3I=w((yyY,GK)=>{var EV=global.process,gz=function(I){return I&&typeof I==="object"&&typeof I.removeListener==="function"&&typeof I.emit==="function"&&typeof I.reallyExit==="function"&&typeof I.listeners==="function"&&typeof I.kill==="function"&&typeof I.pid==="number"&&typeof I.on==="function"};if(!gz(EV))GK.exports=function(){return function(){}};else{if(W3I=KI("assert"),az=oKG(),N3I=/^win/i.test(EV.platform),IK=KI("events"),typeof IK!=="function")IK=IK.EventEmitter;if(EV.__signal_exit_emitter__)y0=EV.__signal_exit_emitter__;else y0=EV.__signal_exit_emitter__=new IK,y0.count=0,y0.emitted={};if(!y0.infinite)y0.setMaxListeners(1/0),y0.infinite=!0;GK.exports=function(I,G){if(!gz(global.process))return function(){};if(W3I.equal(typeof I,"function","a callback must be provided for exit handler"),zz===!1)cbI();var Z="exit";if(G&&G.alwaysLast)Z="afterexit";var l=function(){if(y0.removeListener(Z,I),y0.listeners("exit").length===0&&y0.listeners("afterexit").length===0)OS()};return y0.on(Z,I),l},OS=function(){if(!zz||!gz(global.process))return;zz=!1,az.forEach(function(G){try{EV.removeListener(G,MS[G])}catch(Z){}}),EV.emit=KS,EV.reallyExit=VbI,y0.count-=1},GK.exports.unload=OS,wu=function(G,Z,l){if(y0.emitted[G])return;y0.emitted[G]=!0,y0.emit(G,Z,l)},MS={},az.forEach(function(I){MS[I]=function(){if(!gz(global.process))return;var Z=EV.listeners(I);if(Z.length===y0.count){if(OS(),wu("exit",null,I),wu("afterexit",null,I),N3I&&I==="SIGHUP")I="SIGINT";EV.kill(EV.pid,I)}}}),GK.exports.signals=function(){return az},zz=!1,cbI=function(){if(zz||!gz(global.process))return;zz=!0,y0.count+=1,az=az.filter(function(G){try{return EV.on(G,MS[G]),!0}catch(Z){return!1}}),EV.emit=c3I,EV.reallyExit=Y3I},GK.exports.load=cbI,VbI=EV.reallyExit,Y3I=function(G){if(!gz(global.process))return;EV.exitCode=G||0,wu("exit",EV.exitCode,null),wu("afterexit",EV.exitCode,null),VbI.call(EV,EV.exitCode)},KS=EV.emit,c3I=function(G,Z){if(G==="exit"&&gz(global.process)){if(Z!==void 0)EV.exitCode=Z;var l=KS.apply(this,arguments);return wu("exit",EV.exitCode,null),wu("afterexit",EV.exitCode,null),l}else return KS.apply(this,arguments)}}var W3I,az,N3I,IK,y0,OS,wu,MS,zz,cbI,VbI,Y3I,KS,c3I});import{PassThrough as tKG}from"node:stream";var rKG,d3I,qmb=(I)=>{let G=new tKG,Z=new tKG;G.write=(b)=>{I("stdout",b)},Z.write=(b)=>{I("stderr",b)};let l=new console.Console(G,Z);for(let b of rKG)d3I[b]=console[b],console[b]=l[b];return()=>{for(let b of rKG)console[b]=d3I[b];d3I={}}},eKG;var I6G=a(()=>{rKG=["assert","count","countReset","debug","dir","dirxml","error","group","groupCollapsed","groupEnd","info","log","table","time","timeEnd","timeLog","trace","warn"],d3I={},eKG=qmb});var Tmb,G6G;var Z6G=a(()=>{Tmb=(()=>{var I=import.meta.url;return function(G){G=G||{};var Z;Z||(Z=typeof G<"u"?G:{});var l,b;Z.ready=new Promise(function(mI,FI){l=mI,b=FI});var W=Object.assign({},Z),N="";typeof document<"u"&&document.currentScript&&(N=document.currentScript.src),I&&(N=I),N.indexOf("blob:")!==0?N=N.substr(0,N.replace(/[?#].*/,"").lastIndexOf("/")+1):N="";var Y=Z.print||console.log.bind(console),c=Z.printErr||console.warn.bind(console);Object.assign(Z,W),W=null;var V;Z.wasmBinary&&(V=Z.wasmBinary);var d=Z.noExitRuntime||!0;typeof WebAssembly!="object"&&EI("no native wasm support detected");var Q,X=!1;function R(mI,FI,PI){PI=FI+PI;for(var bG="";!(FI>=PI);){var wG=mI[FI++];if(!wG)break;if(wG&128){var PG=mI[FI++]&63;if((wG&224)==192)bG+=String.fromCharCode((wG&31)<<6|PG);else{var mZ=mI[FI++]&63;wG=(wG&240)==224?(wG&15)<<12|PG<<6|mZ:(wG&7)<<18|PG<<12|mZ<<6|mI[FI++]&63,65536>wG?bG+=String.fromCharCode(wG):(wG-=65536,bG+=String.fromCharCode(55296|wG>>10,56320|wG&1023))}}else bG+=String.fromCharCode(wG)}return bG}var H,h,A,C,g,z,k,x,n;function _(){var mI=Q.buffer;H=mI,Z.HEAP8=h=new Int8Array(mI),Z.HEAP16=C=new Int16Array(mI),Z.HEAP32=z=new Int32Array(mI),Z.HEAPU8=A=new Uint8Array(mI),Z.HEAPU16=g=new Uint16Array(mI),Z.HEAPU32=k=new Uint32Array(mI),Z.HEAPF32=x=new Float32Array(mI),Z.HEAPF64=n=new Float64Array(mI)}var lI,t=[],aI=[],QI=[];function lG(){var mI=Z.preRun.shift();t.unshift(mI)}var uI=0,ZI=null,zI=null;function EI(mI){if(Z.onAbort)Z.onAbort(mI);throw mI="Aborted("+mI+")",c(mI),X=!0,mI=new WebAssembly.RuntimeError(mI+". Build with -sASSERTIONS for more info."),b(mI),mI}function VI(mI){return mI.startsWith("data:application/octet-stream;base64,")}var JI="data:application/octet-stream;base64,AGFzbQEAAAABugM3YAF/AGACf38AYAF/AX9gA39/fwBgAn98AGACf38Bf2ADf39/AX9gBH9/f30BfWADf398AGAAAGAEf39/fwBgAX8BfGACf38BfGAFf39/f38Bf2AAAX9gA39/fwF9YAZ/f31/fX8AYAV/f39/fwBgAn9/AX1gBX9/f319AX1gAX8BfWADf35/AX5gB39/f39/f38AYAZ/f39/f38AYAR/f39/AX9gBn9/f319fQF9YAR/f31/AGADf399AX1gBn98f39/fwF/YAR/fHx/AGACf30AYAh/f39/f39/fwBgDX9/f39/f39/f39/f38AYAp/f39/f39/f39/AGAFf39/f38BfGAEfHx/fwF9YA1/fX1/f399fX9/f39/AX9gB39/f319f38AYAJ+fwF/YAN/fX0BfWABfAF8YAN/fHwAYAR/f319AGAHf39/fX19fQF9YA1/fX99f31/fX19fX1/AX9gC39/f39/f399fX19AX9gCH9/f39/f319AGAEf39+fgBgB39/f39/f38Bf2ACfH8BfGAFf398fH8AYAN/f38BfGAEf39/fABgA39/fQBgBn9/fX99fwF/ArUBHgFhAWEAHwFhAWIAAwFhAWMACQFhAWQAFgFhAWUAEQFhAWYAIAFhAWcAAAFhAWgAIQFhAWkAAwFhAWoAAAFhAWsAFwFhAWwACgFhAW0ABQFhAW4AAwFhAW8AAQFhAXAAFwFhAXEABgFhAXIAAAFhAXMAIgFhAXQACgFhAXUADQFhAXYAFgFhAXcAAgFhAXgAAwFhAXkAGAFhAXoAAgFhAUEAAQFhAUIAEQFhAUMAAQFhAUQAAAOiAqACAgMSBwcACRkDAAoRBgYKEwAPDxMBBiMTCgcHGgMUASQFJRQHAwMKCgMmAQYYDxobFAAKBw8KBwMDAgkCAAAFGwACBwIHBgIDAQMIDAABKAkHBQURACkZASoAAAIrLAIALQcHBy4HLwkFCgMCMA0xAgMJAgACAQYKAQIBBQEACQIFAQEABQAODQ0GFQIBHBUGAgkCEAAAAAUyDzMMBQYINAUCAwUODg41AgMCAgIDBgICNgIBDAwMAQsLCwsLCx0CAAIAAAABABABBQICAQMCEgMMCwEBAQEBAQsLAQICAwICAgICAgIDAgIICAEICAgEBAQEBAQEBAQABAQABAQEBAAE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GiABQQA2AvADIAFCADcC6AMgAigC7AMiAyACKALoAyIERwRAIAMgBGsiBEEASA0FIAEgBBAeIgM2AuwDIAEgAzYC6AMgASADIARqNgLwAyACKALoAyIEIAIoAuwDIghHBEADQCADIAQoAgA2AgAgA0EEaiEDIARBBGoiBCAIRw0ACwsgASADNgLsAwsgASACKQL0AzcC9AMgASACKAKEBDYChAQgASACKQL8AzcC/AMgAUEANgLkAwsgBSABNgIAIAEgADYC5AMLIAZBAWohBiAFQQRqIgUgB0cNAAsLDwsQAgALUAACQAJAAkACQAJAIAIOBAQAAQIDCyAAIAEgAUEwahBDDwsgACABIAFBMGogAxBEDwsgACABIAFBMGoQQg8LECQACyAAIAEgAUEwaiADEEULcAIBfwF9IwBBEGsiBCQAIARBCGogACABQQJ0QdwlaigCACACEDZDAADAfyEFAkACQAJAIAQtAAxBAWsOAgABAgsgBCoCCCEFDAELIAQqAgggA5RDCtcjPJQhBQsgBEEQaiQAIAVDAAAAACAFIAVbGwt5AgF/AX0jAEEQayIDJAAgA0EIaiAAIAFBAnRB7CVqKAIAIAIQU0MAAMB/IQQCQAJAAkAgAy0ADEEBaw4CAAECCyADKgIIIQQMAQsgAyoCCEMAAAAAlEMK1yM8lCEECyADQRBqJAAgBEMAAAAAl0MAAAAAIAQgBFsbC1QAAkACQAJAAkACQCACDgQEAAECAwsgACABIAFBwgBqEEMPCyAAIAEgAUHCAGogAxBEDwsgACABIAFBwgBqEEIPCxAkAAsgACABIAFBwgBqIAMQRQsvACAAIAJFQQF0IgIgASADEGAgACACIAEQS5IgACACIAEgAxB/IAAgAiABEFKSkgvOAQIDfwJ9IwBBEGsiAyQAQQEhBCADQQhqIABB/ABqIgUgACABQQF0akH2AGoiAS8BABAfAkACQCADKgIIIgcgAioCACIGXARAIAcgB1sEQCACLQAEIQIMAgsgBiAGXCEECyACLQAEIQIgBEUNACADLQAMIAJB/wFxRg0BCyAFIAEgBiACEDkDQCAALQAAIgFBBHENASAAIAFBBHI6AAAgACgCECIBBEAgACABEQAACyAAQYCAgP4HNgKcASAAKALkAyIADQALCyADQRBqJAALzgECA38CfSMAQRBrIgMkAEEBIQQgA0EIaiAAQfwAaiIFIAAgAUEBdGpB8gBqIgEvAQAQHwJAAkAgAyoCCCIHIAIqAgAiBlwEQCAHIAdbBEAgAi0ABCECDAILIAYgBlwhBAsgAi0ABCECIARFDQAgAy0ADCACQf8BcUYNAQsgBSABIAYgAhA5A0AgAC0AACIBQQRxDQEgACABQQRyOgAAIAAoAhAiAQRAIAAgAREAAAsgAEGAgID+BzYCnAEgACgC5AMiAA0ACwsgA0EQaiQACwoAIABBMGtBCkkLBQAQAgALBAAgAAsUACAABEAgACAAKAIAKAIEEQAACwsrAQF/IAAoAgwiAQRAIAEQIwsgACgCACIBBEAgACABNgIEIAEQIwsgABAjC4EEAQN/IwBBEGsiAyQAIABCADcCBCAAQcEgOwAVIABCADcCDCAAQoCAgICAgIACNwIYIAAgAC0AF0HgAXE6ABcgACAALQAAQeABcUEFcjoAACAAIAAtABRBgAFxOgAUIABBIGpBAEHOABAqGiAAQgA3AXIgAEGEgBA2AW4gAEEANgF6IABCADcCgAEgAEIANwKIASAAQgA3ApABIABCADcCoAEgAEKAgICAgICA4P8ANwKYASAAQQA6AKgBIABBrAFqQQBBxAEQKhogAEHwAmohBCAAQbABaiECA0AgAkKAgID8i4CAwL9/NwIQIAJCgYCAgBA3AgggAkKAgID8i4CAwL9/NwIAIAJBGGoiAiAERw0ACyAAQoCAgPyLgIDAv383AvACIABCgICA/IuAgMC/fzcCgAMgAEKBgICAEDcC+AIgAEKAgID+h4CA4P8ANwKUAyAAQoCAgP6HgIDg/wA3AowDIABBiANqIgIgAi0AAEH4AXE6AAAgAEGcA2pBAEHYABAqGiAAQQA6AIQEIABBgICA/gc2AoAEIABBADoA/AMgAEGAgID+BzYC+AMgACABNgL0AyABBEAgAS0ACEEBcQRAIAAgAC0AFEHzAXFBCHI6ABQgACAALwAVQfD/A3FBBHI7ABULIANBEGokACAADwsgA0GiGjYCACADEHIQJAALMwAgACABQQJ0QfwlaigCAEECdGoqApQDIABBFGoiACABQQEgAhAiIAAgAUEBIAIQIZKSC44DAQp/IwBB0AJrIgEkACAAKALoAyIDIAAoAuwDIgVHBEAgAUGMAmohBiABQeABaiEHIAFBIGohCCABQRxqIQkgAUEQaiEEA0AgAygCACICLQAXQRB0QYCAMHFBgIAgRgRAIAFBCGpBAEHEAhAqGiABQYCAgP4HNgIMIARBADoACCAEQgA3AgAgCUEAQcQBECoaIAghAANAIABCgICA/IuAgMC/fzcCECAAQoGAgIAQNwIIIABCgICA/IuAgMC/fzcCACAAQRhqIgAgB0cNAAsgAUKAgID8i4CAwL9/NwPwASABQoGAgIAQNwPoASABQoCAgPyLgIDAv383A+ABIAFCgICA/oeAgOD/ADcChAIgAUKAgID+h4CA4P8ANwL8ASABIAEtAPgBQfgBcToA+AEgBkEAQcAAECoaIAJBmAFqIAFBCGpBxAIQKxogAkIANwKMAyACIAItAAAiAEEBciIKQfsBcSAKIABBBHEbOgAAIAIQTyACEF4LIANBBGoiAyAFRw0ACwsgAUHQAmokAAtMAQF/QQEhAQJAIAAtAB5BB3ENACAALQAiQQdxDQAgAC0ALkEHcQ0AIAAtACpBB3ENACAALQAmQQdxDQAgAC0AKEEHcUEARyEBCyABC3YCAX8BfSMAQRBrIgQkACAEQQhqIAAgAUECdEHcJWooAgAgAhBQQwAAwH8hBQJAAkACQCAELQAMQQFrDgIAAQILIAQqAgghBQwBCyAEKgIIIAOUQwrXIzyUIQULIARBEGokACAFQwAAAACXQwAAAAAgBSAFWxsLogQCBn8CfgJ/QQghBAJAAkAgAEFHSw0AA0BBCCAEIARBCE0bIQRB6DopAwAiBwJ/QQggAEEDakF8cSAAQQhNGyIAQf8ATQRAIABBA3ZBAWsMAQsgAEEdIABnIgFrdkEEcyABQQJ0a0HuAGogAEH/H00NABpBPyAAQR4gAWt2QQJzIAFBAXRrQccAaiIBIAFBP08bCyIDrYgiCFBFBEADQCAIIAh6IgiIIQcCfiADIAinaiIDQQR0IgJB6DJqKAIAIgEgAkHgMmoiBkcEQCABIAQgABBjIgUNBSABKAIEIgUgASgCCDYCCCABKAIIIAU2AgQgASAGNgIIIAEgAkHkMmoiAigCADYCBCACIAE2AgAgASgCBCABNgIIIANBAWohAyAHQgGIDAELQeg6Qeg6KQMAQn4gA62JgzcDACAHQgGFCyIIQgBSDQALQeg6KQMAIQcLAkAgB1BFBEBBPyAHeadrIgZBBHQiAkHoMmooAgAhAQJAIAdCgICAgARUDQBB4wAhAyABIAJB4DJqIgJGDQADQCADRQ0BIAEgBCAAEGMiBQ0FIANBAWshAyABKAIIIgEgAkcNAAsgAiEBCyAAQTBqEGQNASABRQ0EIAEgBkEEdEHgMmoiAkYNBANAIAEgBCAAEGMiBQ0EIAEoAggiASACRw0ACwwECyAAQTBqEGRFDQMLQQAhBSAEIARBAWtxDQEgAEFHTQ0ACwsgBQwBC0EACwtwAgF/AX0jAEEQayIEJAAgBEEIaiAAIAFBAnRB7CVqKAIAIAIQKEMAAMB/IQUCQAJAAkAgBC0ADEEBaw4CAAECCyAEKgIIIQUMAQsgBCoCCCADlEMK1yM8lCEFCyAEQRBqJAAgBUMAAAAAIAUgBVsbC6ADAQN/IAEgAEEEaiIEakEBa0EAIAFrcSIFIAJqIAAgACgCACIBakEEa00EfyAAKAIEIgMgACgCCDYCCCAAKAIIIAM2AgQgBCAFRwRAIAAgAEEEaygCAEF+cWsiAyAFIARrIgQgAygCAGoiBTYCACAFQXxxIANqQQRrIAU2AgAgACAEaiIAIAEgBGsiATYCAAsCQCABIAJBGGpPBEAgACACakEIaiIDIAEgAmtBCGsiATYCACABQXxxIANqQQRrIAFBAXI2AgAgAwJ/IAMoAgBBCGsiAUH/AE0EQCABQQN2QQFrDAELIAFnIQQgAUEdIARrdkEEcyAEQQJ0a0HuAGogAUH/H00NABpBPyABQR4gBGt2QQJzIARBAXRrQccAaiIBIAFBP08bCyIBQQR0IgRB4DJqNgIEIAMgBEHoMmoiBCgCADYCCCAEIAM2AgAgAygCCCADNgIEQeg6Qeg6KQMAQgEgAa2GhDcDACAAIAJBCGoiATYCACABQXxxIABqQQRrIAE2AgAMAQsgACABakEEayABNgIACyAAQQRqBSADCwvmAwEFfwJ/QbAwKAIAIgEgAEEHakF4cSIDaiECAkAgA0EAIAEgAk8bDQAgAj8AQRB0SwRAIAIQFkUNAQtBsDAgAjYCACABDAELQfw7QTA2AgBBfwsiAkF/RwRAIAAgAmoiA0EQayIBQRA2AgwgAUEQNgIAAkACf0HgOigCACIABH8gACgCCAVBAAsgAkYEQCACIAJBBGsoAgBBfnFrIgRBBGsoAgAhBSAAIAM2AghBcCAEIAVBfnFrIgAgACgCAGpBBGstAABBAXFFDQEaIAAoAgQiAyAAKAIINgIIIAAoAgggAzYCBCAAIAEgAGsiATYCAAwCCyACQRA2AgwgAkEQNgIAIAIgAzYCCCACIAA2AgRB4DogAjYCAEEQCyACaiIAIAEgAGsiATYCAAsgAUF8cSAAakEEayABQQFyNgIAIAACfyAAKAIAQQhrIgFB/wBNBEAgAUEDdkEBawwBCyABQR0gAWciA2t2QQRzIANBAnRrQe4AaiABQf8fTQ0AGkE/IAFBHiADa3ZBAnMgA0EBdGtBxwBqIgEgAUE/TxsLIgFBBHQiA0HgMmo2AgQgACADQegyaiIDKAIANgIIIAMgADYCACAAKAIIIAA2AgRB6DpB6DopAwBCASABrYaENwMACyACQX9HC80BAgN/An0jAEEQayIDJABBASEEIANBCGogAEH8AGoiBSAAIAFBAXRqQSBqIgEvAQAQHwJAAkAgAyoCCCIHIAIqAgAiBlwEQCAHIAdbBEAgAi0ABCECDAILIAYgBlwhBAsgAi0ABCECIARFDQAgAy0ADCACQf8BcUYNAQsgBSABIAYgAhA5A0AgAC0AACIBQQRxDQEgACABQQRyOgAAIAAoAhAiAQRAIAAgAREAAAsgAEGAgID+BzYCnAEgACgC5AMiAA0ACwsgA0EQaiQAC0ABAX8CQEGsOy0AAEEBcQRAQag7KAIAIQIMAQtBAUGAJxAMIQJBrDtBAToAAEGoOyACNgIACyACIAAgAUEAEBMLzQECA38CfSMAQRBrIgMkAEEBIQQgA0EIaiAAQfwAaiIFIAAgAUEBdGpBMmoiAS8BABAfAkACQCADKgIIIgcgAioCACIGXARAIAcgB1sEQCACLQAEIQIMAgsgBiAGXCEECyACLQAEIQIgBEUNACADLQAMIAJB/wFxRg0BCyAFIAEgBiACEDkDQCAALQAAIgFBBHENASAAIAFBBHI6AAAgACgCECIBBEAgACABEQAACyAAQYCAgP4HNgKcASAAKALkAyIADQALCyADQRBqJAALDwAgASAAKAIAaiACOQMACw0AIAEgACgCAGorAwALCwAgAARAIAAQIwsLxwECBH8CfSMAQRBrIgIkACACQQhqIABB/ABqIgQgAEEeaiIFLwEAEB9BASEDAkACQCACKgIIIgcgASoCACIGXARAIAcgB1sEQCABLQAEIQEMAgsgBiAGXCEDCyABLQAEIQEgA0UNACACLQAMIAFB/wFxRg0BCyAEIAUgBiABEDkDQCAALQAAIgFBBHENASAAIAFBBHI6AAAgACgCECIBBEAgACABEQAACyAAQYCAgP4HNgKcASAAKALkAyIADQALCyACQRBqJAALlgMCA34CfyAAvSICQjSIp0H/D3EiBEH/D0YEQCAARAAAAAAAAPA/oiIAIACjDwsgAkIBhiIBQoCAgICAgIDw/wBYBEAgAEQAAAAAAAAAAKIgACABQoCAgICAgIDw/wBRGw8LAn4gBEUEQEEAIQQgAkIMhiIBQgBZBEADQCAEQQFrIQQgAUIBhiIBQgBZDQALCyACQQEgBGuthgwBCyACQv////////8Hg0KAgICAgICACIQLIQEgBEH/B0oEQANAAkAgAUKAgICAgICACH0iA0IAUw0AIAMiAUIAUg0AIABEAAAAAAAAAACiDwsgAUIBhiEBIARBAWsiBEH/B0oNAAtB/wchBAsCQCABQoCAgICAgIAIfSIDQgBTDQAgAyIBQgBSDQAgAEQAAAAAAAAAAKIPCyABQv////////8HWARAA0AgBEEBayEEIAFCgICAgICAgARUIQUgAUIBhiEBIAUNAAsLIAJCgICAgICAgICAf4MgAUKAgICAgICACH0gBK1CNIaEIAFBASAEa62IIARBAEobhL8LiwEBA38DQCAAQQR0IgFB5DJqIAFB4DJqIgI2AgAgAUHoMmogAjYCACAAQQFqIgBBwABHDQALQTAQZBpBmDtBBjYCAEGcO0EANgIAEJwBQZw7Qcg7KAIANgIAQcg7QZg7NgIAQcw7QcMBNgIAQdA7QQA2AgAQjwFB0DtByDsoAgA2AgBByDtBzDs2AgALjwEBAn8jAEEQayIEJAACfUMAAAAAIAAvABVBgOAAcUUNABogBEEIaiAAQRRqIgBBASACQQJGQQF0IAFB/gFxQQJHGyIFIAIQNgJAIAQtAAxFDQAgBEEIaiAAIAUgAhA2IAQtAAxBA0YNACAAIAEgAiADEIEBDAELIAAgASACIAMQgAGMCyEDIARBEGokACADC4QBAQJ/AkACQCAAKALoAyICIAAoAuwDIgNGDQADQCACKAIAIAFGDQEgAkEEaiICIANHDQALDAELIAIgA0YNACABLQAXQRB0QYCAMHFBgIAgRgRAIAAgACgC4ANBAWs2AuADCyACIAJBBGoiASADIAFrEDMaIAAgA0EEazYC7ANBAQ8LQQALCwBByDEgACABEEkLPAAgAEUEQCACQQVHQQAgAhtFBEBBuDAgAyAEEEkaDwsgAyAEEHAaDwsgACABIAIgAyAEIAAoAgQRDQAaCyYBAX8jAEEQayIBJAAgASAANgIMQbgwQdglIAAQSRogAUEQaiQAC4cDAwN/BXwCfSAAKgKgA7siBiACoCECIAAqApwDuyIHIAGgIQggACgC9AMqAhgiC0MAAAAAXARAIAAqApADuyEJIAAqAowDIQwgACAHIAu7IgFBACAALQAAQRBxIgNBBHYiBBA0OAKcAyAAIAYgAUEAIAQQNDgCoAMgASAMuyIHohBsIgYgBmIiBEUgBplELUMc6+I2Gj9jcUUEQCAEIAZEAAAAAAAA8L+gmUQtQxzr4jYaP2NFciEFCyACIAmgIQogCCAHoCEHAn8gASAJohBsIgYgBmIiBEUEQEEAIAaZRC1DHOviNho/Yw0BGgsgBCAGRAAAAAAAAPC/oJlELUMc6+I2Gj9jRXILIQQgACAHIAEgA0EARyIDIAVxIAMgBUEBc3EQNCAIIAFBACADEDSTOAKMAyAAIAogASADIARxIAMgBEEBc3EQNCACIAFBACADEDSTOAKQAwsgACgC6AMiAyAAKALsAyIARwRAA0AgAygCACAIIAIQcyADQQRqIgMgAEcNAAsLC1UBAX0gAEEUaiIAIAEgAkECSSICIAQgBRA1IQYgACABIAIgBCAFEC0iBUMAAAAAYCADIAVecQR9IAUFIAZDAAAAAGBFBEAgAw8LIAYgAyADIAZdGwsLeAEBfwJAIAAoAgAiAgRAA0AgAUUNAiACIAEoAgQ2AgQgAiABKAIINgIIIAEoAgAhASAAKAIAIQAgAigCACICDQALCyAAIAEQPA8LAkAgAEUNACAAKAIAIgFFDQAgAEEANgIAA0AgASgCACEAIAEQIyAAIgENAAsLC5kCAgZ/AX0gAEEUaiEHQQMhBCAALQAUQQJ2QQNxIQUCQAJ/AkAgAUEBIAAoAuQDGyIIQQJGBEACQCAFQQJrDgIEAAILQQIhBAwDC0ECIQRBACAFQQFLDQEaCyAECyEGIAUhBAsgACAEIAggAyACIARBAkkiBRsQbiEKIAAgBiAIIAIgAyAFGxBuIQMgAEGcA2oiAEEBIAFBAkZBAXQiCCAFG0ECdGogCiAHIAQgASACECKSOAIAIABBAyABQQJHQQF0IgkgBRtBAnRqIAogByAEIAEgAhAhkjgCACAAIAhBASAGQQF2IgQbQQJ0aiADIAcgBiABIAIQIpI4AgAgACAJQQMgBBtBAnRqIAMgByAGIAEgAhAhkjgCAAvUAgEDfyMAQdACayIBJAAgAUEIakEAQcQCECoaIAFBADoAGCABQgA3AxAgAUGAgID+BzYCDCABQRxqQQBBxAEQKhogAUHgAWohAyABQSBqIQIDQCACQoCAgPyLgIDAv383AhAgAkKBgICAEDcCCCACQoCAgPyLgIDAv383AgAgAkEYaiICIANHDQALIAFCgICA/IuAgMC/fzcD8AEgAUKBgICAEDcD6AEgAUKAgID8i4CAwL9/NwPgASABQoCAgP6HgIDg/wA3AoQCIAFCgICA/oeAgOD/ADcC/AEgASABLQD4AUH4AXE6APgBIAFBjAJqQQBBwAAQKhogAEGYAWogAUEIakHEAhArGiAAQgA3AowDIAAgAC0AAEEBcjoAACAAEE8gACgC6AMiAiAAKALsAyIARwRAA0AgAigCABB3IAJBBGoiAiAARw0ACwsgAUHQAmokAAuuAgIKfwJ9IwBBIGsiASQAIAFBgAI7AB4gAEHuAGohByAAQfgDaiEFIABB8gBqIQggAEH2AGohCSAAQfwAaiEDQQAhAANAIAFBEGogAyAJIAFBHmogBGotAAAiAkEBdCIEaiIGLwEAEB8CQAJAIAEtABRFDQAgAUEIaiADIAYvAQAQHyABIAMgBCAIai8BABAfIAEtAAwgAS0ABEcNAAJAIAEqAggiDCAMXCIKIAEqAgAiCyALXHJFBEAgDCALk4tDF7fROF0NAQwCCyAKRSALIAtbcg0BCyABQRBqIAMgBi8BABAfDAELIAFBEGogAyAEIAdqLwEAEB8LIAUgAkEDdGoiAiABLQAUOgAEIAIgASgCEDYCAEEBIQQgACECQQEhACACRQ0ACyABQSBqJAALMgACf0EAIAAvABVBgOAAcUGAwABGDQAaQQEgABA7QwAAAABcDQAaIAAQQEMAAAAAXAsLewEBfSADIASTIgMgA1sEfUMAAAAAIABBFGoiACABIAIgBSAGEDUiByAEkyAHIAdcGyIHQ///f38gACABIAIgBSAGEC0iBSAEkyAFIAVcGyIEIAMgAyAEXhsiAyADIAddGyAHIAMgAyADXBsgAyADWyAHIAdbcRsFIAMLC98FAwR/BX0BfCAJQwAAAABdIAhDAAAAAF1yBH8gDQUgBSESIAEhEyADIRQgByERIAwqAhgiFUMAAAAAXARAIAG7IBW7IhZBAEEAEDQhEyADuyAWQQBBABA0IRQgBbsgFkEAQQAQNCESIAe7IBZBAEEAEDQhEQsCf0EAIAAgBEcNABogEiATk4tDF7fROF0gEyATXCINIBIgElxyRQ0AGkEAIBIgElsNABogDQshDAJAIAIgBkcNACAUIBRcIg0gESARXHJFBEAgESAUk4tDF7fROF0hDwwBCyARIBFbDQAgDSEPC0EBIQ5BASENAkAgDA0AIAEgCpMhAQJAIABFBEAgASABXCIAIAggCFxyRQRAQQAhDCABIAiTi0MXt9E4XUUNAgwDC0EAIQwgCCAIWw0BIAANAgwBCyAAQQJGIQwgAEECRw0AIARBAUcNACABIAhgDQECQCAIIAhcIgAgASABXHJFBEAgASAIk4tDF7fROF1FDQEMAwtBACENIAEgAVsNAkEBIQ0gAA0CC0EAIQ0MAQtBACENIAggCFwiACABIAVdRXINACAMRSABIAFcIhAgBSAFXHIgBEECR3JyDQBBASENIAEgCGANAEEAIQ0gACAQcg0AIAEgCJOLQxe30ThdIQ0LAkAgDw0AIAMgC5MhAQJAAkAgAkUEQCABIAFcIgIgCSAJXHJFBEBBACEAIAEgCZOLQxe30ThdRQ0CDAQLQQAhACAJIAlbDQEgAg0DDAELIAJBAkYhACACQQJHIAZBAUdyDQAgASAJYARADAMLIAkgCVwiACABIAFcckUEQCABIAmTi0MXt9E4XUUNAgwDC0EAIQ4gASABWw0CQQEhDiAADQIMAQsgCSAJXCICIAEgB11Fcg0AIABFIAEgAVwiBCAHIAdcciAGQQJHcnINACABIAlgDQFBACEOIAIgBHINASABIAmTi0MXt9E4XSEODAELQQAhDgsgDSAOcQsL4wEBA38jAEEQayIBJAACQAJAIAAtABRBCHFFDQBBASEDIAAvABVB8AFxQdAARg0AIAEgABAyIAEoAgQhAAJAIAEoAgAiAkUEQEEAIQMgAEUNAQsDQCACKALsAyACKALoAyICa0ECdSAATQ0DIAIgAEECdGooAgAiAC8AFSAALQAXQRB0ciIAQYDgAHFBgMAARyAAQYAecUGACkZxIgMNASABEC4gASgCBCIAIAEoAgAiAnINAAsLIAEoAggiAEUNAANAIAAoAgAhAiAAECMgAiIADQALCyABQRBqJAAgAw8LEAIAC7IBAQR/AkACQCAAKAIEIgMgACgCACIEKALsAyAEKALoAyIBa0ECdUkEQCABIANBAnRqIQIDQCACKAIAIgEtABdBEHRBgIAwcUGAgCBHDQMgASgC7AMgASgC6ANGDQJBDBAeIgIgBDYCBCACIAM2AgggAiAAKAIINgIAQQAhAyAAQQA2AgQgACABNgIAIAAgAjYCCCABIQQgASgC6AMiAiABKALsA0cNAAsLEAIACyAAEC4LC4wQAgx/B30jAEEgayINJAAgDUEIaiABEDIgDSgCCCIOIA0oAgwiDHIEQCADQQEgAxshFSAAQRRqIRQgBUEBaiEWA0ACQAJAAn8CQAJAAkACQAJAIAwgDigC7AMgDigC6AMiDmtBAnVJBEAgDiAMQQJ0aigCACILLwAVIAstABdBEHRyIgxBgIAwcUGAgBBGDQgCQAJAIAxBDHZBA3EOAwEKAAoLIAkhFyAKIRogASgC9AMtABRBBHFFBEAgACoClAMgFEECQQEQMCAUQQJBARAvkpMhFyAAKgKYAyAUQQBBARAwIBRBAEEBEC+SkyEaCyALQRRqIQ8gAS0AFEECdkEDcSEQAkACfwJAIANBAkciE0UEQEEAIQ5BAyEMAkAgEEECaw4CBAACC0ECIQwMAwtBAiEMQQAgEEEBSw0BGgsgDAshDiAQIQwLIA9BAkEBIBcQIiAPQQJBASAXECGSIR0gD0EAQQEgFxAiIRwgD0EAQQEgFxAhIRsgCyoC+AMhGAJAAkACQAJAIAstAPwDQQFrDgIBAAILIBggF5RDCtcjPJQhGAsgGEMAAAAAYEUNACAdIAsgA0EAIBcgFxAxkiEYDAELIA1BGGogDyALQTJqIhAgAxBFQwAAwH8hGCANLQAcRQ0AIA1BGGogDyAQIAMQRCANLQAcRQ0AIA1BGGogDyAQIAMQRSANLQAcQQNGDQAgDUEYaiAPIBAgAxBEIA0tABxBA0YNACALQQIgAyAAKgKUAyAUQQIgAxBLIBRBAiADEFKSkyAPQQIgAyAXEFEgD0ECIAMgFxCDAZKTIBcgFxAlIRgLIBwgG5IhHCALKgKABCEZAkACQAJAIAstAIQEQQFrDgIBAAILIBkgGpRDCtcjPJQhGQsgGUMAAAAAYEUNACAcIAsgA0EBIBogFxAxkiEZDAMLIA1BGGogDyALQTJqIhAQQwJAIA0tABxFDQAgDUEYaiAPIBAQQiANLQAcRQ0AIA1BGGogDyAQEEMgDS0AHEEDRg0AIA1BGGogDyAQEEIgDS0AHEEDRg0AIAtBACADIAAqApgDIBRBACADEEsgFEEAIAMQUpKTIA9BACADIBoQUSAPQQAgAyAaEIMBkpMgGiAXECUhGQwDC0MAAMB/IRkgGCAYXA0GIAtB/ABqIhAgC0H6AGoiEi8BABAgIhsgG1sNAwwFCyALLQAAQQhxDQggCxBPIAAgCyACIAstABRBA3EiDCAVIAwbIAQgFiAGIAsqApwDIAeSIAsqAqADIAiSIAkgChB+IBFyIQxBACERIAxBAXFFDQhBASERIAsgCy0AAEEBcjoAAAwICxACAAsgGCAYXCAZIBlcRg0BIAtB/ABqIhAgC0H6AGoiEi8BABAgIhsgG1wNASAYIBhcBEAgGSAckyAQIAsvAXoQIJQgHZIhGAwCCyAZIBlbDQELIBwgGCAdkyAQIBIvAQAQIJWSIRkLIBggGFwNASAZIBlbDQMLQQAMAQtBAQshEiALIBcgGCACQQFHIAxBAklxIBdDAAAAAF5xIBJxIhAbIBkgA0ECIBIgEBsgGSAZXCAXIBpBAEEGIAQgBSAGED0aIAsqApQDIA9BAkEBIBcQIiAPQQJBASAXECGSkiEYIAsqApgDIA9BAEEBIBcQIiAPQQBBASAXECGSkiEZC0EBIRAgCyAYIBkgA0EAQQAgFyAaQQFBASAEIAUgBhA9GiAAIAEgCyADIAxBASAXIBoQggEgACABIAsgAyAOQQAgFyAaEIIBIBFBAXFFBEAgCy0AAEEBcSEQCyABLQAUIhJBAnZBA3EhDAJAAn8CQAJAAkACQAJAAkACQAJAAkACfwJAIBNFBEBBACERQQMhDiAMQQJrDgIDDQELQQIhDkEAIAxBAUsNARoLIA4LIREgEkEEcUUNBCASQQhxRQ0BIAwhDgsgASEMIA8QXw0BDAILAkAgCy0ANEEHcQ0AIAstADhBB3ENACALLQBCQQdxDQAgDCEOIAEhDCALQUBrLwEAQQdxRQ0CDAELIAwhDgsgACEMCwJ/AkACQAJAIA5BAWsOAwABAgULIAtBmANqIQ4gC0GoA2ohE0EBIRIgDEGYA2oMAgsgC0GUA2ohDiALQZwDaiETQQIhEiAMQZQDagwBCyALQZQDaiEOIAtBpANqIRNBACESIAxBlANqCyEMIAsgEkECdGogDCoCACAOKgIAkyATKgIAkzgCnAMLIBFBAXFFDQUCQAJAIBFBAnEEQCABIQwgDxBfDQEMAgsgCy0ANEEHcQ0AIAstADhBB3ENACALLQBCQQdxDQAgASEMIAtBQGsvAQBBB3FFDQELIAAhDAsgEUEBaw4DAQIDAAsQJAALIAtBmANqIREgC0GoA2ohDkEBIRMgDEGYA2oMAgsgC0GUA2ohESALQZwDaiEOQQIhEyAMQZQDagwBCyALQZQDaiERIAtBpANqIQ5BACETIAxBlANqCyEMIAsgE0ECdGogDCoCACARKgIAkyAOKgIAkzgCnAMLIAsqAqADIRsgCyoCnAMgB0MAAAAAIA8QXxuTIRcCfQJAIAstADRBB3ENACALLQA4QQdxDQAgCy0AQkEHcQ0AIAtBQGsvAQBBB3ENAEMAAAAADAELIAgLIRogCyAXOAKcAyALIBsgGpM4AqADIBAhEQsgDUEIahAuIA0oAgwiDCANKAIIIg5yDQALCyANKAIQIgwEQANAIAwoAgAhACAMECMgACIMDQALCyANQSBqJAAgEUEBcQt2AgF/AX0jAEEQayIEJAAgBEEIaiAAIAFBAnRB7CVqKAIAIAIQUEMAAMB/IQUCQAJAAkAgBC0ADEEBaw4CAAECCyAEKgIIIQUMAQsgBCoCCCADlEMK1yM8lCEFCyAEQRBqJAAgBUMAAAAAl0MAAAAAIAUgBVsbC3gCAX8BfSMAQRBrIgQkACAEQQhqIABBAyACQQJHQQF0IAFB/gFxQQJHGyACEDZDAADAfyEFAkACQAJAIAQtAAxBAWsOAgABAgsgBCoCCCEFDAELIAQqAgggA5RDCtcjPJQhBQsgBEEQaiQAIAVDAAAAACAFIAVbGwt4AgF/AX0jAEEQayIEJAAgBEEIaiAAQQEgAkECRkEBdCABQf4BcUECRxsgAhA2QwAAwH8hBQJAAkACQCAELQAMQQFrDgIAAQILIAQqAgghBQwBCyAEKgIIIAOUQwrXIzyUIQULIARBEGokACAFQwAAAAAgBSAFWxsLoA0BBH8jAEEQayIJJAAgCUEIaiACQRRqIgggA0ECRkEBdEEBIARB/gFxQQJGIgobIgsgAxA2IAYgByAKGyEHAkACQAJAAkACQAJAIAktAAxFDQAgCUEIaiAIIAsgAxA2IAktAAxBA0YNACAIIAQgAyAHEIEBIABBFGogBCADEDCSIAggBCADIAcQIpIhBkEBIQMCQAJ/AkACQAJAAkAgBA4EAgMBAAcLQQIhAwwBC0EAIQMLIAMgC0YNAgJAAkAgBA4EAgIAAQYLIABBlANqIQNBAAwCCyAAQZQDaiEDQQAMAQsgAEGYA2ohA0EBCyEAIAMqAgAgAiAAQQJ0aioClAOTIAaTIQYLIAIgBEECdEHcJWooAgBBAnRqIAY4ApwDDAULIAlBCGogCCADQQJHQQF0QQMgChsiCiADEDYCQCAJLQAMRQ0AIAlBCGogCCAKIAMQNiAJLQAMQQNGDQACfwJAAkACQCAEDgQCAgABBQsgAEGUA2ohBUEADAILIABBlANqIQVBAAwBCyAAQZgDaiEFQQELIQEgBSoCACACQZQDaiIFIAFBAnRqKgIAkyAAQRRqIAQgAxAvkyAIIAQgAyAHECGTIAggBCADIAcQgAGTIQZBASEDAkACfwJAAkACQAJAIAQOBAIDAQAHC0ECIQMMAQtBACEDCyADIAtGDQICQAJAIAQOBAICAAEGCyAAQZQDaiEDQQAMAgsgAEGUA2ohA0EADAELIABBmANqIQNBAQshACADKgIAIAUgAEECdGoqAgCTIAaTIQYLIAIgBEECdEHcJWooAgBBAnRqIAY4ApwDDAULAkACQAJAIAUEQCABLQAUQQR2QQdxIgBBBUsNCEEBIAB0IgBBMnENASAAQQlxBEAgBEECdEHcJWooAgAhACAIIAQgAyAGEEEgASAAQQJ0IgBqIgEqArwDkiEGIAAgAmogAigC9AMtABRBAnEEfSAGBSAGIAEqAswDkgs4ApwDDAkLIAEgBEECdEHsJWooAgBBAnRqIgAqArwDIAggBCADIAYQYpIhBiACKAL0Ay0AFEECcUUEQCAGIAAqAswDkiEGCwJAAkACQAJAIAQOBAEBAgAICyABKgKUAyACKgKUA5MhB0ECIQMMAgsgASoCmAMgAioCmAOTIQdBASEDAkAgBA4CAgAHC0EDIQMMAQsgASoClAMgAioClAOTIQdBACEDCyACIANBAnRqIAcgBpM4ApwDDAgLIAIvABZBD3EiBUUEQCABLQAVQQR2IQULIAVBBUYEQCABLQAUQQhxRQ0CCyABLwAVQYCAA3FBgIACRgRAIAVBAmsOAgEHAwsgBUEISw0HQQEgBXRB8wNxDQYgBUECRw0CC0EAIQACfQJ/AkACQAJAAkACfwJAAkACQCAEDgQCAgABBAsgASoClAMhB0ECIQAgAUG8A2oMAgsgASoClAMhByABQcQDagwBCyABKgKYAyEHAkACQCAEDgIAAQMLQQMhACABQcADagwBC0EBIQAgAUHIA2oLIQUgByAFKgIAkyABQbwDaiIIIABBAnRqKgIAkyIHIAIoAvQDLQAUQQJxDQUaAkAgBA4EAAIDBAELQQMhACABQdADagwECxAkAAtBASEAIAFB2ANqDAILQQIhACABQcwDagwBC0EAIQAgAUHUA2oLIQUgByAFKgIAkyABIABBAnRqKgLMA5MLIAIgBEECdCIFQfwlaigCAEECdGoqApQDIAJBFGoiACAEQQEgBhAiIAAgBEEBIAYQIZKSk0MAAAA/lCAIIAVB3CVqKAIAIgVBAnRqKgIAkiAAIAQgAyAGEEGSIQYgAiAFQQJ0aiACKAL0Ay0AFEECcQR9IAYFIAYgASAFQQJ0aioCzAOSCzgCnAMMBgsgAS8AFUGAgANxQYCAAkcNBAsgASAEQQJ0QewlaigCAEECdGoiACoCvAMgCCAEIAMgBhBikiEGIAIoAvQDLQAUQQJxRQRAIAYgACoCzAOSIQYLAkACQCAEDgQBAQMAAgsgASoClAMgAioClAOTIQdBAiEDDAMLIAEqApgDIAIqApgDkyEHQQEhAwJAIAQOAgMAAQtBAyEDDAILECQACyABKgKUAyACKgKUA5MhB0EAIQMLIAIgA0ECdGogByAGkzgCnAMMAQsgBEECdEHcJWooAgAhACAIIAQgAyAGEEEgASAAQQJ0IgBqIgEqArwDkiEGIAAgAmogAigC9AMtABRBAnEEfSAGBSAGIAEqAswDkgs4ApwDCyAJQRBqJAALcAIBfwF9IwBBEGsiBCQAIARBCGogACABQQJ0QewlaigCACACEDZDAADAfyEFAkACQAJAIAQtAAxBAWsOAgABAgsgBCoCCCEFDAELIAQqAgggA5RDCtcjPJQhBQsgBEEQaiQAIAVDAAAAACAFIAVbGwscACAAIAFBCCACpyACQiCIpyADpyADQiCIpxAVCwUAEFgACzkAIABFBEBBAA8LAn8gAUGAf3FBgL8DRiABQf8ATXJFBEBB/DtBGTYCAEF/DAELIAAgAToAAEEBCwvEAgACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABQQlrDhIACgsMCgsCAwQFDAsMDAoLBwgJCyACIAIoAgAiAUEEajYCACAAIAEoAgA2AgAPCwALIAIgAigCACIBQQRqNgIAIAAgATIBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATMBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATAAADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATEAADcDAA8LAAsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKwMAOQMADwsgACACIAMRAQALDwsgAiACKAIAIgFBBGo2AgAgACABNAIANwMADwsgAiACKAIAIgFBBGo2AgAgACABNQIANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKQMANwMAC84BAgN/An0jAEEQayIDJABBASEEIANBCGogAEH8AGoiBSAAIAFBAXRqQegAaiIBLwEAEB8CQAJAIAMqAggiByACKgIAIgZcBEAgByAHWwRAIAItAAQhAgwCCyAGIAZcIQQLIAItAAQhAiAERQ0AIAMtAAwgAkH/AXFGDQELIAUgASAGIAIQOQNAIAAtAAAiAUEEcQ0BIAAgAUEEcjoAACAAKAIQIgEEQCAAIAERAAALIABBgICA/gc2ApwBIAAoAuQDIgANAAsLIANBEGokAAtdAQR/IAAoAgAhAgNAIAIsAAAiAxBXBEBBfyEEIAAgAkEBaiICNgIAIAFBzJmz5gBNBH9BfyADQTBrIgMgAUEKbCIEaiADIARB/////wdzShsFIAQLIQEMAQsLIAELrhQCEn8BfiMAQdAAayIIJAAgCCABNgJMIAhBN2ohFyAIQThqIRQCQAJAAkACQANAIAEhDSAHIA5B/////wdzSg0BIAcgDmohDgJAAkACQCANIgctAAAiCQRAA0ACQAJAIAlB/wFxIgFFBEAgByEBDAELIAFBJUcNASAH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IQEgAEIANwIEIAAgATYCACABIAA2AgQgAkEQaiQAIAALGwEBfyAABEAgACgCACIBBEAgARAjCyAAECMLC0kBAn9BBBAeIQFBIBAeIgBBADYCHCAAQoCAgICAgIDAPzcCFCAAQgA3AgwgAEEAOgAIIABBAzYCBCAAQQA2AgAgASAANgIAIAELIAAgAkEFR0EAIAIbRQRAQbgwIAMgBBBJDwsgAyAEEHALIgEBfiABIAKtIAOtQiCGhCAEIAARFQAiBUIgiKckASAFpwuoAQEFfyAAKAJUIgMoAgAhBSADKAIEIgQgACgCFCAAKAIcIgdrIgYgBCAGSRsiBgRAIAUgByAGECsaIAMgAygCACAGaiIFNgIAIAMgAygCBCAGayIENgIECyAEIAIgAiAESxsiBARAIAUgASAEECsaIAMgAygCACAEaiIFNgIAIAMgAygCBCAEazYCBAsgBUEAOgAAIAAgACgCLCIBNgIcIAAgATYCFCACCwQAQgALBABBAAuKBQIGfgJ/IAEgASgCAEEHakF4cSIBQRBqNgIAIAAhCSABKQMAIQMgASkDCCEGIwBBIGsiCCQAAkAgBkL///////////8AgyIEQoCAgICAgMCAPH0gBEKAgICAgIDA/8MAfVQEQCAGQgSGIANCPIiEIQQgA0L//////////w+DIgNCgYCAgICAgIAIWgRAIARCgYCAgICAgIDAAHwhAgwCCyAEQoCAgICAgICAQH0hAiADQoCAgICAgICACFINASACIARCAYN8IQIMAQsgA1AgBEKAgICAgIDA//8AVCAEQoCAgICAgMD//wBRG0UEQCAGQgSGIANCPIiEQv////////8Dg0KAgICAgICA/P8AhCECDAELQoCAgICAgID4/wAhAiAEQv///////7//wwBWDQBCACECIARCMIinIgBBkfcASQ0AIAMhAiAGQv///////z+DQoCAgICAgMAAhCIFIQcCQCAAQYH3AGsiAUHAAHEEQCACIAFBQGqthiEHQgAhAgwBCyABRQ0AIAcgAa0iBIYgAkHAACABa62IhCEHIAIgBIYhAgsgCCACNwMQIAggBzcDGAJAQYH4ACAAayIAQcAAcQRAIAUgAEFAaq2IIQNCACEFDAELIABFDQAgBUHAACAAa62GIAMgAK0iAoiEIQMgBSACiCEFCyAIIAM3AwAgCCAF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ASAAKAIAIQAgASACQQFxBH8gASgCACAAaigCAAUgAAsRCwALYQECfyMAQRBrIgIkACABIAAoAgQiA0EBdWohASAAKAIAIQAgAiABIANBAXEEfyABKAIAIABqKAIABSAACxEBAEEQEB4iACACKQMINwMIIAAgAikDADcDACACQRBqJAAgAAtjAQJ/IwBBEGsiAyQAIAEgACgCBCIEQQF1aiEBIAAoAgAhACADIAEgAiAEQQFxBH8gASgCACAAaigCAAUgAAsRAwBBEBAeIgAgAykDCDcDCCAAIAMpAwA3AwAgA0EQaiQAIAALNwEBfyABIAAoAgQiA0EBdWohASAAKAIAIQAgASACIANBAXEEfyABKAIAIABqKAIABSAACxEEAAs5AQF/IAEgACgCBCIEQQF1aiEBIAAoAgAhACABIAIgAyAEQQFxBH8gASgCACAAaigCAAUgAAsRCAALCQAgASAAEQIACwUAQcM7Cw8AIAEgACgCAGogAjYCAAsNACABIAAoAgBqKAIACxgBAX9BEBAeIgBCADcDCCAAQQA2AgAgAAsYAQF/QRAQHiIAQgA3AwAgAEIANwMIIAALDABBMBAeQQBBMBAqCzcBAX8gASAAKAIEIgNBAXVqIQEgACgCACEAIAEgAiADQQFxBH8gASgCACAAaigCAAUgAAsRHgALBQBBvjsLIQAgACABKAIAIAEgASwAC0EASBtBuzsgAigCABAQNgIACyoBAX9BDBAeIgFBADoABCABIAAoAgA2AgggAEEANgIAIAFB2Cc2AgAgAQsFAEG7OwsFAEG4OwshACAAIAEoAgAgASABLAALQQBIG0GkOyACKAIAEBA2AgAL2AEBBH8jAEEgayIDJAAgASgCACIEQfD///8HSQRAAkACQCAEQQtPBEAgBEEPckEBaiIFEB4hBiADIAVBgICAgHhyNgIQIAMgBjYCCCADIAQ2AgwgBCAGaiEFDAELIAMgBDoAEyADQQhqIgYgBGohBSAERQ0BCyAGIAFBBGogBBArGgsgBUEAOgAAIAMgAjYCACADQRhqIANBCGogAyAAEQMAIAMoAhgQHSADKAIYIgAQBiADKAIAEAYgAywAE0EASARAIAMoAggQIwsgA0EgaiQAIAAPCxACAAsqAQF/QQwQHiIBQQA6AAQgASAAKAIANgIIIABBADYCACABQeAmNgIA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AkEIaiAIIAYQHyACIAcgAC8AABAfQQEhAyACKgIIIgogAioCACILXAR/IAogClsNAyALIAtcBSADC0UNAiACLQAMIAItAARHDQILIABBAmohAEEBIQMgBCEGQQEhBCAGRQ0ACyABLwB6IgBBB3FFBEAgBS0AekEHcUUNAgsgCCAAECAiCiAHIAUvAHoQICILWw0BIAogClsNACALIAtcDQELIAFBFGogBUEUakHoABArGiABQfwAaiAFQfwAahCgAQNAIAEtAAAiAEEEcQ0BIAEgAEEEcjoAACABKAIQIgAEQCABIAARAAALIAFBgICA/gc2ApwBIAEoAuQDIgENAAsLIAJBEGokAAvGAwEEfyMAQaAEayICJAAgACgCBCEBIABBADYCBCABBEAgASABKAIAKAIEEQAACyAAKAIIIQEgAEEANgIIIAEEQCABIAEoAgAoAgQRAAALAkAgACgCACIAKALoAyAAKALsA0YEQCAAKALkAw0BIAAgAkEYaiAAKAL0AxBcIgEpAgA3AgAgACABKAIQNgIQIAAgASkCCDcCCCAAQRRqIAFBFGpB6AAQKxogACABKQKMATcCjAEgACABKQKEATcChAEgACABKQJ8NwJ8IAEoApQBIQQgAUEANgKUASAAKAKUASEDIAAgBDYClAEgAwRAIAMQWwsgAEGYAWogAUGYAWpB0AIQKxogACgC6AMiAwRAIAAgAzYC7AMgAxAjCyAAIAEoAugDNgLoAyAAIAEoAuwDNgLsAyAAIAEoAvADNgLwAyABQQA2AvADIAFCADcC6AMgACABKQL8AzcC/AMgACABKQL0AzcC9AMgACABKAKEBDYChAQgASgClAEhACABQQA2ApQBIAAEQCAAEFsLIAJBoARqJAAPCyACQfAcNgIQIABBBUHYJSACQRBqECwQJAALIAJB5hE2AgAgAEEFQdglIAIQLBAkAAsLAEEMEB4gABCiAQsLAEEMEB5BABCiAQsNACAAKAIALQAIQQFxCwoAIAAoAgAoAhQLGQAgAUH/AXEEQBACAAsgACgCACgCEEEBcQsYACAAKAIAIgAgAC0ACEH+AXEgAXI6AAgLJgAgASAAKAIAIgAoAhRHBEAgACABNgIUIAAgACgCDEEBajYCDAsLkgEBAn8jAEEQayICJAAgACgCACEAIAFDAAAAAGAEQCABIAAqAhhcBEAgACABOAIYIAAgACgCDEEBajYCDAsgAkEQaiQADwsgAkGIFDYCACMAQRBrIgMkACADIAI2AgwCQCAARQRAQbgwQdglIAIQSRoMAQsgAEEAQQVB2CUgAiAAKAIEEQ0AGgsgA0EQaiQAECQACz8AIAFB/wFxRQRAIAIgACgCACIAKAIQIgFBAXFHBEAgACABQX5xIAJyNgIQIAAgACgCDEEBajYCDAsPCxACAAsL4CYjAEGACAuBHk9ubHkgbGVhZiBub2RlcyB3aXRoIGN1c3RvbSBtZWFzdXJlIGZ1bmN0aW9ucyBzaG91bGQgbWFudWFsbHkgbWFyayB0aGVtc2VsdmVzIGFzIGRpcnR5AGlzRGlydHkAbWFya0RpcnR5AGRlc3Ryb3kAc2V0RGlzcGxheQBnZXREaXNwbGF5AHNldEZsZXgALSsgICAwWDB4AC0wWCswWCAwWC0weCsweCAweABzZXRGbGV4R3JvdwBnZXRGbGV4R3JvdwBzZXRPdmVyZmxvdwBnZXRPdmVyZmxvdwBoYXNOZXdMYXlvdXQAY2FsY3VsYXRlTGF5b3V0AGdldENvbXB1dGVkTGF5b3V0AHVuc2lnbmVkIHNob3J0AGdldENoaWxkQ291bnQAdW5zaWduZWQgaW50AHNldEp1c3RpZnlDb250ZW50AGdldEp1c3RpZnlDb250ZW50AGF2YWlsYWJsZUhlaWdodCBpcyBpbmRlZmluaXRlIHNvIGhlaWdodFNpemluZ01vZGUgbXVzdCBiZSBTaXppbmdNb2RlOjpNYXhDb250ZW50AGF2YWlsYWJsZVdpZHRoIGlzIGluZGVmaW5pdGUgc28gd2lkdGhTaXppbmdNb2RlIG11c3QgYmUgU2l6aW5nTW9kZTo6TWF4Q29udGVudABzZXRBbGlnbkNvbnRlbnQAZ2V0QWxpZ25Db250ZW50AGdldFBhcmVudABpbXBsZW1lbnQAc2V0TWF4SGVpZ2h0UGVyY2VudABzZXRIZWlnaHRQZXJjZW50AHNldE1pbkhlaWdodFBlcmNlbnQAc2V0RmxleEJhc2lzUGVyY2VudABzZXRHYXBQZXJjZW50AHNldFBvc2l0aW9uUGVyY2VudABzZXRNYXJnaW5QZXJjZW50AHNldE1heFdpZHRoUGVyY2VudABzZXRXaWR0aFBlcmNlbnQAc2V0TWluV2lkdGhQZXJjZW50AHNldFBhZGRpbmdQZXJjZW50AGhhbmRsZS50eXBlKCkgPT0gU3R5bGVWYWx1ZUhhbmRsZTo6VHlwZTo6UG9pbnQgfHwgaGFuZGxlLnR5cGUoKSA9PSBTdHlsZVZhbHVlSGFuZGxlOjpUeXBlOjpQZXJjZW50AGNyZWF0ZURlZmF1bHQAdW5pdAByaWdodABoZWlnaHQAc2V0TWF4SGVpZ2h0AGdldE1heEhlaWdodABzZXRIZWlnaHQAZ2V0SGVpZ2h0AHNldE1pbkhlaWdodABnZXRNaW5IZWlnaHQAZ2V0Q29tcHV0ZWRIZWlnaHQAZ2V0Q29tcHV0ZWRSaWdodABsZWZ0AGdldENvbXB1dGVkTGVmdAByZXNldABfX2Rlc3RydWN0AGZsb2F0AHVpbnQ2NF90AHVzZVdlYkRlZmF1bHRzAHNldFVzZVdlYkRlZmF1bHRzAHNldEFsaWduSXRlbXMAZ2V0QWxpZ25JdGVtcwBzZXRGbGV4QmFzaXMAZ2V0RmxleEJhc2lzAENhbm5vdCBnZXQgbGF5b3V0IHByb3BlcnRpZXMgb2YgbXVsdGktZWRnZSBzaG9ydGhhbmRzAHNldFBvaW50U2NhbGVGYWN0b3IATWVhc3VyZUNhbGxiYWNrV3JhcHBlcgBEaXJ0aWVkQ2FsbGJhY2tXcmFwcGVyAENhbm5vdCByZXNldCBhIG5vZGUgc3RpbGwgYXR0YWNoZWQgdG8gYSBvd25lcgBzZXRCb3JkZXIAZ2V0Qm9yZGVyAGdldENvbXB1dGVkQm9yZGVyAGdldE51bWJlcgBoYW5kbGUudHlwZSgpID09IFN0eWxlVmFsdWVIYW5kbGU6OlR5cGU6Ok51bWJlcgB1bnNpZ25lZCBjaGFyAHRvcABnZXRDb21wdXRlZFRvcABzZXRGbGV4V3JhcABnZXRGbGV4V3JhcABzZXRHYXAAZ2V0R2FwACVwAHNldEhlaWdodEF1dG8Ac2V0RmxleEJhc2lzQXV0bwBzZXRQb3NpdGlvbkF1dG8Ac2V0TWFyZ2luQXV0bwBzZXRXaWR0aEF1dG8AU2NhbGUgZmFjdG9yIHNob3VsZCBub3QgYmUgbGVzcyB0aGFuIHplcm8Ac2V0QXNwZWN0UmF0aW8AZ2V0QXNwZWN0UmF0aW8Ac2V0UG9zaXRpb24AZ2V0UG9zaXRpb24Abm90aWZ5T25EZXN0cnVjdGlvbgBzZXRGbGV4RGlyZWN0aW9uAGdldEZsZXhEaXJlY3Rpb24Ac2V0RGlyZWN0aW9uAGdldERpcmVjdGlvbgBzZXRNYXJnaW4AZ2V0TWFyZ2luAGdldENvbXB1dGVkTWFyZ2luAG1hcmtMYXlvdXRTZWVuAG5hbgBib3R0b20AZ2V0Q29tcHV0ZWRCb3R0b20AYm9vbABlbXNjcmlwdGVuOjp2YWwAc2V0RmxleFNocmluawBnZXRGbGV4U2hyaW5rAHNldEFsd2F5c0Zvcm1zQ29udGFpbmluZ0Jsb2NrAE1lYXN1cmVDYWxsYmFjawBEaXJ0aWVkQ2FsbGJhY2sAZ2V0TGVuZ3RoAHdpZHRoAHNldE1heFdpZHRoAGdldE1heFdpZHRoAHNldFdpZHRoAGdldFdpZHRoAHNldE1pbldpZHRoAGdldE1pbldpZHRoAGdldENvbXB1dGVkV2lkdGgAcHVzaAAvaG9tZS9ydW5uZXIvd29yay95b2dhL3lvZ2EvamF2YXNjcmlwdC8uLi95b2dhL3N0eWxlL1NtYWxsVmFsdWVCdWZmZXIuaAAvaG9tZS9ydW5uZXIvd29yay95b2dhL3lvZ2EvamF2YXNjcmlwdC8uLi95b2dhL3N0eWxlL1N0eWxlVmFsdWVQb29sLmgAdW5zaWduZWQgbG9uZwBzZXRCb3hTaXppbmcAZ2V0Qm94U2l6aW5nAHN0ZDo6d3N0cmluZwBzdGQ6OnN0cmluZwBzdGQ6OnUxNnN0cmluZwBzdGQ6OnUzMnN0cmluZwBzZXRQYWRkaW5nAGdldFBhZGRpbmcAZ2V0Q29tcHV0ZWRQYWRkaW5nAFRyaWVkIHRvIGNvbnN0cnVjdCBZR05vZGUgd2l0aCBudWxsIGNvbmZpZwBBdHRlbXB0aW5nIHRvIGNvbnN0cnVjdCBOb2RlIHdpdGggbnVsbCBjb25maWcAY3JlYXRlV2l0aENvbmZpZwBpbmYAc2V0QWxpZ25TZWxmAGdldEFsaWduU2VsZgBTaXplAHZhbHVlAFZhbHVlAGNyZWF0ZQBtZWFzdXJlAHNldFBvc2l0aW9uVHlwZQBnZXRQb3NpdGlvblR5cGUAaXNSZWZlcmVuY2VCYXNlbGluZQBzZXRJc1JlZmVyZW5jZUJhc2VsaW5lAGNvcHlTdHlsZQBkb3VibGUATm9kZQBleHRlbmQAaW5zZXJ0Q2hpbGQAZ2V0Q2hpbGQAcmVtb3ZlQ2hpbGQAdm9pZABzZXRFeHBlcmltZW50YWxGZWF0dXJlRW5hYmxlZABpc0V4cGVyaW1lbnRhbEZlYXR1cmVFbmFibGVkAGRpcnRpZWQAQ2Fubm90IHJlc2V0IGEgbm9kZSB3aGljaCBzdGlsbCBoYXMgY2hpbGRyZW4gYXR0YWNoZWQAdW5zZXRNZWFzdXJlRnVuYwB1bnNldERpcnRpZWRGdW5jAHNldEVycmF0YQBnZXRFcnJhdGEATWVhc3VyZSBmdW5jdGlvbiByZXR1cm5lZCBhbiBpbnZhbGlkIGRpbWVuc2lvbiB0byBZb2dhOiBbd2lkdGg9JWYsIGhlaWdodD0lZl0ARXhwZWN0IGN1c3RvbSBiYXNlbGluZSBmdW5jdGlvbiB0byBub3QgcmV0dXJuIE5hTgBOQU4ASU5GAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4Ac3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2lnbmVk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";if(!VI(JI)){var LI=JI;JI=Z.locateFile?Z.locateFile(LI,N):N+LI}function MI(){var mI=JI;try{if(mI==JI&&V)return new Uint8Array(V);if(VI(mI))try{var FI=T0(mI.slice(37)),PI=new Uint8Array(FI.length);for(mI=0;mI<FI.length;++mI)PI[mI]=FI.charCodeAt(mI);var bG=PI}catch(PG){throw Error("Converting base64 string to bytes failed.")}else bG=void 0;var wG=bG;if(wG)return wG;throw"both async and sync fetching of the wasm failed"}catch(PG){EI(PG)}}function BI(){return V||typeof fetch!="function"?Promise.resolve().then(function(){return MI()}):fetch(JI,{credentials:"same-origin"}).then(function(mI){if(!mI.ok)throw"failed to load wasm binary file at '"+JI+"'";return mI.arrayBuffer()}).catch(function(){return MI()})}function FG(mI){for(;0<mI.length;)mI.shift()(Z)}function f(mI){if(mI===void 0)return"_unknown";mI=mI.replace(/[^a-zA-Z0-9_]/g,"$");var FI=mI.charCodeAt(0);return 48<=FI&&57>=FI?"_"+mI:mI}function P(mI,FI){return mI=f(mI),function(){return FI.apply(this,arguments)}}var NI=[{},{value:void 0},{value:null},{value:!0},{value:!1}],GG=[];function ZG(mI){var FI=Error,PI=P(mI,function(bG){this.name=mI,this.message=bG,bG=Error(bG).stack,bG!==void 0&&(this.stack=this.toString()+`
75
75
  `+bG.replace(/^Error(:[^\n]*)?\n/,""))});return PI.prototype=Object.create(FI.prototype),PI.prototype.constructor=PI,PI.prototype.toString=function(){return this.message===void 0?this.name:this.name+": "+this.message},PI}var cG=void 0;function bI(mI){throw new cG(mI)}var dI=(mI)=>{return mI||bI("Cannot use deleted val. handle = "+mI),NI[mI].value},CI=(mI)=>{switch(mI){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:var FI=GG.length?GG.pop():NI.length;return NI[FI]={ga:1,value:mI},FI}},gI=void 0,DI=void 0;function UI(mI){for(var FI="";A[mI];)FI+=DI[A[mI++]];return FI}var sI=[];function r(){for(;sI.length;){var mI=sI.pop();mI.M.$=!1,mI.delete()}}var AI=void 0,yI={};function qI(mI,FI){for(FI===void 0&&bI("ptr should not be undefined");mI.R;)FI=mI.ba(FI),mI=mI.R;return FI}var rI={};function BG(mI){mI=b0(mI);var FI=UI(mI);return BN(mI),FI}function CG(mI,FI){var PI=rI[mI];return PI===void 0&&bI(FI+" has unknown type "+BG(mI)),PI}function NZ(){}var jZ=!1;function iG(mI){--mI.count.value,mI.count.value===0&&(mI.T?mI.U.W(mI.T):mI.P.N.W(mI.O))}function hG(mI,FI,PI){if(FI===PI)return mI;if(PI.R===void 0)return null;return mI=hG(mI,FI,PI.R),mI===null?null:PI.na(mI)}var vG={};function GZ(mI,FI){return FI=qI(mI,FI),yI[FI]}var xZ=void 0;function tG(mI){throw new xZ(mI)}function EG(mI,FI){return FI.P&&FI.O||tG("makeClassHandle requires ptr and ptrType"),!!FI.U!==!!FI.T&&tG("Both smartPtrType and smartPtr must be specified"),FI.count={value:1},gG(Object.create(mI,{M:{value:FI}}))}function gG(mI){if(typeof FinalizationRegistry>"u")return gG=(FI)=>FI,mI;return jZ=new FinalizationRegistry((FI)=>{iG(FI.M)}),gG=(FI)=>{var PI=FI.M;return PI.T&&jZ.register(FI,{M:PI},FI),FI},NZ=(FI)=>{jZ.unregister(FI)},gG(mI)}var _G={};function IZ(mI){for(;mI.length;){var FI=mI.pop();mI.pop()(FI)}}function j(mI){return this.fromWireType(z[mI>>2])}var S={},xI={};function _I(mI,FI,PI){function bG(RZ){RZ=PI(RZ),RZ.length!==mI.length&&tG("Mismatched type converter count");for(var yZ=0;yZ<mI.length;++yZ)SI(mI[yZ],RZ[yZ])}mI.forEach(function(RZ){xI[RZ]=FI});var wG=Array(FI.length),PG=[],mZ=0;FI.forEach((RZ,yZ)=>{rI.hasOwnProperty(RZ)?wG[yZ]=rI[RZ]:(PG.push(RZ),S.hasOwnProperty(RZ)||(S[RZ]=[]),S[RZ].push(()=>{wG[yZ]=rI[RZ],++mZ,mZ===PG.length&&bG(wG)}))}),PG.length===0&&bG(wG)}function kI(mI){switch(mI){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw TypeError("Unknown type size: "+mI)}}function SI(mI,FI,PI={}){if(!("argPackAdvance"in FI))throw TypeError("registerType registeredInstance requires argPackAdvance");var bG=FI.name;if(mI||bI('type "'+bG+'" must have a positive integer typeid pointer'),rI.hasOwnProperty(mI)){if(PI.ua)return;bI("Cannot register type '"+bG+"' twice")}rI[mI]=FI,delete xI[mI],S.hasOwnProperty(mI)&&(FI=S[mI],delete S[mI],FI.forEach((wG)=>wG()))}function jG(mI){bI(mI.M.P.N.name+" instance already deleted")}function yG(){}function UG(mI,FI,PI){if(mI[FI].S===void 0){var bG=mI[FI];mI[FI]=function(){return mI[FI].S.hasOwnProperty(arguments.length)||bI("Function '"+PI+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+mI[FI].S+")!"),mI[FI].S[arguments.length].apply(this,arguments)},mI[FI].S=[],mI[FI].S[bG.Z]=bG}}function pZ(mI,FI){Z.hasOwnProperty(mI)?(bI("Cannot register public name '"+mI+"' twice"),UG(Z,mI,mI),Z.hasOwnProperty(void 0)&&bI("Cannot register multiple overloads of a function with the same number of arguments (undefined)!"),Z[mI].S[void 0]=FI):Z[mI]=FI}function ul(mI,FI,PI,bG,wG,PG,mZ,RZ){this.name=mI,this.constructor=FI,this.X=PI,this.W=bG,this.R=wG,this.pa=PG,this.ba=mZ,this.na=RZ,this.ja=[]}function ll(mI,FI,PI){for(;FI!==PI;)FI.ba||bI("Expected null or instance of "+PI.name+", got an instance of "+FI.name),mI=FI.ba(mI),FI=FI.R;return mI}function Nb(mI,FI){if(FI===null)return this.ea&&bI("null is not a valid "+this.name),0;return FI.M||bI('Cannot pass "'+zc(FI)+'" as a '+this.name),FI.M.O||bI("Cannot pass deleted object as a pointer of type "+this.name),ll(FI.M.O,FI.M.P.N,this.N)}function db(mI,FI){if(FI===null){if(this.ea&&bI("null is not a valid "+this.name),this.da){var PI=this.fa();return mI!==null&&mI.push(this.W,PI),PI}return 0}if(FI.M||bI('Cannot pass "'+zc(FI)+'" as a '+this.name),FI.M.O||bI("Cannot pass deleted object as a pointer of type "+this.name),!this.ca&&FI.M.P.ca&&bI("Cannot convert argument of type "+(FI.M.U?FI.M.U.name:FI.M.P.name)+" to parameter type "+this.name),PI=ll(FI.M.O,FI.M.P.N,this.N),this.da)switch(FI.M.T===void 0&&bI("Passing raw pointer to smart pointer is illegal"),this.Ba){case 0:FI.M.U===this?PI=FI.M.T:bI("Cannot convert argument of type "+(FI.M.U?FI.M.U.name:FI.M.P.name)+" to parameter type "+this.name);break;case 1:PI=FI.M.T;break;case 2:if(FI.M.U===this)PI=FI.M.T;else{var bG=FI.clone();PI=this.xa(PI,CI(function(){bG.delete()})),mI!==null&&mI.push(this.W,PI)}break;default:bI("Unsupporting sharing policy")}return PI}function Ll(mI,FI){if(FI===null)return this.ea&&bI("null is not a valid "+this.name),0;return FI.M||bI('Cannot pass "'+zc(FI)+'" as a '+this.name),FI.M.O||bI("Cannot pass deleted object as a pointer of type "+this.name),FI.M.P.ca&&bI("Cannot convert argument of type "+FI.M.P.name+" to parameter type "+this.name),ll(FI.M.O,FI.M.P.N,this.N)}function Db(mI,FI,PI,bG){this.name=mI,this.N=FI,this.ea=PI,this.ca=bG,this.da=!1,this.W=this.xa=this.fa=this.ka=this.Ba=this.wa=void 0,FI.R!==void 0?this.toWireType=db:(this.toWireType=bG?Nb:Ll,this.V=null)}function hc(mI,FI){Z.hasOwnProperty(mI)||tG("Replacing nonexistant public symbol"),Z[mI]=FI,Z[mI].Z=void 0}function KV(mI,FI){var PI=[];return function(){if(PI.length=0,Object.assign(PI,arguments),mI.includes("j")){var bG=Z["dynCall_"+mI];bG=PI&&PI.length?bG.apply(null,[FI].concat(PI)):bG.call(null,FI)}else bG=lI.get(FI).apply(null,PI);return bG}}function zW(mI,FI){mI=UI(mI);var PI=mI.includes("j")?KV(mI,FI):lI.get(FI);return typeof PI!="function"&&bI("unknown function pointer with signature "+mI+": "+FI),PI}var PZ=void 0;function Cb(mI,FI){function PI(PG){wG[PG]||rI[PG]||(xI[PG]?xI[PG].forEach(PI):(bG.push(PG),wG[PG]=!0))}var bG=[],wG={};throw FI.forEach(PI),new PZ(mI+": "+bG.map(BG).join([", "]))}function fc(mI,FI,PI,bG,wG){var PG=FI.length;2>PG&&bI("argTypes array size mismatch! Must at least get return value and 'this' types!");var mZ=FI[1]!==null&&PI!==null,RZ=!1;for(PI=1;PI<FI.length;++PI)if(FI[PI]!==null&&FI[PI].V===void 0){RZ=!0;break}var yZ=FI[0].name!=="void",wZ=PG-2,OZ=Array(wZ),Wl=[],sb=[];return function(){if(arguments.length!==wZ&&bI("function "+mI+" called with "+arguments.length+" arguments, expected "+wZ+" args!"),sb.length=0,Wl.length=mZ?2:1,Wl[0]=wG,mZ){var GW=FI[1].toWireType(sb,this);Wl[1]=GW}for(var vW=0;vW<wZ;++vW)OZ[vW]=FI[vW+2].toWireType(sb,arguments[vW]),Wl.push(OZ[vW]);if(vW=bG.apply(null,Wl),RZ)IZ(sb);else for(var GN=mZ?1:2;GN<FI.length;GN++){var RY=GN===1?GW:OZ[GN-2];FI[GN].V!==null&&FI[GN].V(RY)}return GW=yZ?FI[0].fromWireType(vW):void 0,GW}}function TY(mI,FI){for(var PI=[],bG=0;bG<mI;bG++)PI.push(k[FI+4*bG>>2]);return PI}function jb(mI){4<mI&&--NI[mI].ga===0&&(NI[mI]=void 0,GG.push(mI))}function zc(mI){if(mI===null)return"null";var FI=typeof mI;return FI==="object"||FI==="array"||FI==="function"?mI.toString():""+mI}function mV(mI,FI){switch(FI){case 2:return function(PI){return this.fromWireType(x[PI>>2])};case 3:return function(PI){return this.fromWireType(n[PI>>3])};default:throw TypeError("Unknown float type: "+mI)}}function DV(mI,FI,PI){switch(FI){case 0:return PI?function(bG){return h[bG]}:function(bG){return A[bG]};case 1:return PI?function(bG){return C[bG>>1]}:function(bG){return g[bG>>1]};case 2:return PI?function(bG){return z[bG>>2]}:function(bG){return k[bG>>2]};default:throw TypeError("Unknown integer type: "+mI)}}function j0(mI,FI){for(var PI="",bG=0;!(bG>=FI/2);++bG){var wG=C[mI+2*bG>>1];if(wG==0)break;PI+=String.fromCharCode(wG)}return PI}function pd(mI,FI,PI){if(PI===void 0&&(PI=2147483647),2>PI)return 0;PI-=2;var bG=FI;PI=PI<2*mI.length?PI/2:mI.length;for(var wG=0;wG<PI;++wG)C[FI>>1]=mI.charCodeAt(wG),FI+=2;return C[FI>>1]=0,FI-bG}function l0(mI){return 2*mI.length}function Q2(mI,FI){for(var PI=0,bG="";!(PI>=FI/4);){var wG=z[mI+4*PI>>2];if(wG==0)break;++PI,65536<=wG?(wG-=65536,bG+=String.fromCharCode(55296|wG>>10,56320|wG&1023)):bG+=String.fromCharCode(wG)}return bG}function jV(mI,FI,PI){if(PI===void 0&&(PI=2147483647),4>PI)return 0;var bG=FI;PI=bG+PI-4;for(var wG=0;wG<mI.length;++wG){var PG=mI.charCodeAt(wG);if(55296<=PG&&57343>=PG){var mZ=mI.charCodeAt(++wG);PG=65536+((PG&1023)<<10)|mZ&1023}if(z[FI>>2]=PG,FI+=4,FI+4>PI)break}return z[FI>>2]=0,FI-bG}function DX(mI){for(var FI=0,PI=0;PI<mI.length;++PI){var bG=mI.charCodeAt(PI);55296<=bG&&57343>=bG&&++PI,FI+=4}return FI}var n0={};function gQ(mI){var FI=n0[mI];return FI===void 0?UI(mI):FI}var q0=[];function pm(mI){var FI=q0.length;return q0.push(mI),FI}function ym(mI,FI){for(var PI=Array(mI),bG=0;bG<mI;++bG)PI[bG]=CG(k[FI+4*bG>>2],"parameter "+bG);return PI}var um=[],Gc=[null,[],[]];cG=Z.BindingError=ZG("BindingError"),Z.count_emval_handles=function(){for(var mI=0,FI=5;FI<NI.length;++FI)NI[FI]!==void 0&&++mI;return mI},Z.get_first_emval=function(){for(var mI=5;mI<NI.length;++mI)if(NI[mI]!==void 0)return NI[mI];return null},gI=Z.PureVirtualError=ZG("PureVirtualError");for(var aQ=Array(256),yd=0;256>yd;++yd)aQ[yd]=String.fromCharCode(yd);DI=aQ,Z.getInheritedInstanceCount=function(){return Object.keys(yI).length},Z.getLiveInheritedInstances=function(){var mI=[],FI;for(FI in yI)yI.hasOwnProperty(FI)&&mI.push(yI[FI]);return mI},Z.flushPendingDeletes=r,Z.setDelayFunction=function(mI){AI=mI,sI.length&&AI&&AI(r)},xZ=Z.InternalError=ZG("InternalError"),yG.prototype.isAliasOf=function(mI){if(!(this instanceof yG&&mI instanceof yG))return!1;var FI=this.M.P.N,PI=this.M.O,bG=mI.M.P.N;for(mI=mI.M.O;FI.R;)PI=FI.ba(PI),FI=FI.R;for(;bG.R;)mI=bG.ba(mI),bG=bG.R;return FI===bG&&PI===mI},yG.prototype.clone=function(){if(this.M.O||jG(this),this.M.aa)return this.M.count.value+=1,this;var mI=gG,FI=Object,PI=FI.create,bG=Object.getPrototypeOf(this),wG=this.M;return mI=mI(PI.call(FI,bG,{M:{value:{count:wG.count,$:wG.$,aa:wG.aa,O:wG.O,P:wG.P,T:wG.T,U:wG.U}}})),mI.M.count.value+=1,mI.M.$=!1,mI},yG.prototype.delete=function(){this.M.O||jG(this),this.M.$&&!this.M.aa&&bI("Object already scheduled for deletion"),NZ(this),iG(this.M),this.M.aa||(this.M.T=void 0,this.M.O=void 0)},yG.prototype.isDeleted=function(){return!this.M.O},yG.prototype.deleteLater=function(){return this.M.O||jG(this),this.M.$&&!this.M.aa&&bI("Object already scheduled for deletion"),sI.push(this),sI.length===1&&AI&&AI(r),this.M.$=!0,this},Db.prototype.qa=function(mI){return this.ka&&(mI=this.ka(mI)),mI},Db.prototype.ha=function(mI){this.W&&this.W(mI)},Db.prototype.argPackAdvance=8,Db.prototype.readValueFromPointer=j,Db.prototype.deleteObject=function(mI){if(mI!==null)mI.delete()},Db.prototype.fromWireType=function(mI){function FI(){return this.da?EG(this.N.X,{P:this.wa,O:PI,U:this,T:mI}):EG(this.N.X,{P:this,O:mI})}var PI=this.qa(mI);if(!PI)return this.ha(mI),null;var bG=GZ(this.N,PI);if(bG!==void 0){if(bG.M.count.value===0)return bG.M.O=PI,bG.M.T=mI,bG.clone();return bG=bG.clone(),this.ha(mI),bG}if(bG=this.N.pa(PI),bG=vG[bG],!bG)return FI.call(this);bG=this.ca?bG.la:bG.pointerType;var wG=hG(PI,this.N,bG.N);return wG===null?FI.call(this):this.da?EG(bG.N.X,{P:bG,O:wG,U:this,T:mI}):EG(bG.N.X,{P:bG,O:wG})},PZ=Z.UnboundTypeError=ZG("UnboundTypeError");var T0=typeof atob=="function"?atob:function(mI){var FI="",PI=0;mI=mI.replace(/[^A-Za-z0-9\+\/=]/g,"");do{var bG="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(mI.charAt(PI++)),wG="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(mI.charAt(PI++)),PG="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(mI.charAt(PI++)),mZ="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(mI.charAt(PI++));bG=bG<<2|wG>>4,wG=(wG&15)<<4|PG>>2;var RZ=(PG&3)<<6|mZ;FI+=String.fromCharCode(bG),PG!==64&&(FI+=String.fromCharCode(wG)),mZ!==64&&(FI+=String.fromCharCode(RZ))}while(PI<mI.length);return FI},rN={l:function(mI,FI,PI,bG){EI("Assertion failed: "+(mI?R(A,mI):"")+", at: "+[FI?FI?R(A,FI):"":"unknown filename",PI,bG?bG?R(A,bG):"":"unknown function"])},q:function(mI,FI,PI){mI=UI(mI),FI=CG(FI,"wrapper"),PI=dI(PI);var bG=[].slice,wG=FI.N,PG=wG.X,mZ=wG.R.X,RZ=wG.R.constructor;mI=P(mI,function(){wG.R.ja.forEach(function(wZ){if(this[wZ]===mZ[wZ])throw new gI("Pure virtual function "+wZ+" must be implemented in JavaScript")}.bind(this)),Object.defineProperty(this,"__parent",{value:PG}),this.__construct.apply(this,bG.call(arguments))}),PG.__construct=function(){this===PG&&bI("Pass correct 'this' to __construct");var wZ=RZ.implement.apply(void 0,[this].concat(bG.call(arguments)));NZ(wZ);var OZ=wZ.M;wZ.notifyOnDestruction(),OZ.aa=!0,Object.defineProperties(this,{M:{value:OZ}}),gG(this),wZ=OZ.O,wZ=qI(wG,wZ),yI.hasOwnProperty(wZ)?bI("Tried to register registered instance: "+wZ):yI[wZ]=this},PG.__destruct=function(){this===PG&&bI("Pass correct 'this' to __destruct"),NZ(this);var wZ=this.M.O;wZ=qI(wG,wZ),yI.hasOwnProperty(wZ)?delete yI[wZ]:bI("Tried to unregister unregistered instance: "+wZ)},mI.prototype=Object.create(PG);for(var yZ in PI)mI.prototype[yZ]=PI[yZ];return CI(mI)},j:function(mI){var FI=_G[mI];delete _G[mI];var{fa:PI,W:bG,ia:wG}=FI,PG=wG.map((mZ)=>mZ.ta).concat(wG.map((mZ)=>mZ.za));_I([mI],PG,(mZ)=>{var RZ={};return wG.forEach((yZ,wZ)=>{var OZ=mZ[wZ],Wl=yZ.ra,sb=yZ.sa,GW=mZ[wZ+wG.length],vW=yZ.ya,GN=yZ.Aa;RZ[yZ.oa]={read:(RY)=>OZ.fromWireType(Wl(sb,RY)),write:(RY,sc)=>{var SN=[];vW(GN,RY,GW.toWireType(SN,sc)),IZ(SN)}}}),[{name:FI.name,fromWireType:function(yZ){var wZ={},OZ;for(OZ in RZ)wZ[OZ]=RZ[OZ].read(yZ);return bG(yZ),wZ},toWireType:function(yZ,wZ){for(var OZ in RZ)if(!(OZ in wZ))throw TypeError('Missing field: "'+OZ+'"');var Wl=PI();for(OZ in RZ)RZ[OZ].write(Wl,wZ[OZ]);return yZ!==null&&yZ.push(bG,Wl),Wl},argPackAdvance:8,readValueFromPointer:j,V:bG}]})},v:function(){},B:function(mI,FI,PI,bG,wG){var PG=kI(PI);FI=UI(FI),SI(mI,{name:FI,fromWireType:function(mZ){return!!mZ},toWireType:function(mZ,RZ){return RZ?bG:wG},argPackAdvance:8,readValueFromPointer:function(mZ){if(PI===1)var RZ=h;else if(PI===2)RZ=C;else if(PI===4)RZ=z;else throw TypeError("Unknown boolean type size: "+FI);return this.fromWireType(RZ[mZ>>PG])},V:null})},f:function(mI,FI,PI,bG,wG,PG,mZ,RZ,yZ,wZ,OZ,Wl,sb){OZ=UI(OZ),PG=zW(wG,PG),RZ&&(RZ=zW(mZ,RZ)),wZ&&(wZ=zW(yZ,wZ)),sb=zW(Wl,sb);var GW=f(OZ);pZ(GW,function(){Cb("Cannot construct "+OZ+" due to unbound types",[bG])}),_I([mI,FI,PI],bG?[bG]:[],function(vW){if(vW=vW[0],bG)var GN=vW.N,RY=GN.X;else RY=yG.prototype;vW=P(GW,function(){if(Object.getPrototypeOf(this)!==sc)throw new cG("Use 'new' to construct "+OZ);if(SN.Y===void 0)throw new cG(OZ+" has no accessible constructor");var o2=SN.Y[arguments.length];if(o2===void 0)throw new cG("Tried to invoke ctor of "+OZ+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(SN.Y).toString()+") parameters instead!");return o2.apply(this,arguments)});var sc=Object.create(RY,{constructor:{value:vW}});vW.prototype=sc;var SN=new ul(OZ,vW,sc,sb,GN,PG,RZ,wZ);GN=new Db(OZ,SN,!0,!1),RY=new Db(OZ+"*",SN,!1,!1);var X2=new Db(OZ+" const*",SN,!1,!0);return vG[mI]={pointerType:RY,la:X2},hc(GW,vW),[GN,RY,X2]})},d:function(mI,FI,PI,bG,wG,PG,mZ){var RZ=TY(PI,bG);FI=UI(FI),PG=zW(wG,PG),_I([],[mI],function(yZ){function wZ(){Cb("Cannot call "+OZ+" due to unbound types",RZ)}yZ=yZ[0];var OZ=yZ.name+"."+FI;FI.startsWith("@@")&&(FI=Symbol[FI.substring(2)]);var Wl=yZ.N.constructor;return Wl[FI]===void 0?(wZ.Z=PI-1,Wl[FI]=wZ):(UG(Wl,FI,OZ),Wl[FI].S[PI-1]=wZ),_I([],RZ,function(sb){return sb=fc(OZ,[sb[0],null].concat(sb.slice(1)),null,PG,mZ),Wl[FI].S===void 0?(sb.Z=PI-1,Wl[FI]=sb):Wl[FI].S[PI-1]=sb,[]}),[]})},p:function(mI,FI,PI,bG,wG,PG){0<FI||EI();var mZ=TY(FI,PI);wG=zW(bG,wG),_I([],[mI],function(RZ){RZ=RZ[0];var yZ="constructor "+RZ.name;if(RZ.N.Y===void 0&&(RZ.N.Y=[]),RZ.N.Y[FI-1]!==void 0)throw new cG("Cannot register multiple constructors with identical number of parameters ("+(FI-1)+") for class '"+RZ.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");return RZ.N.Y[FI-1]=()=>{Cb("Cannot construct "+RZ.name+" due to unbound types",mZ)},_I([],mZ,function(wZ){return wZ.splice(1,0,null),RZ.N.Y[FI-1]=fc(yZ,wZ,null,wG,PG),[]}),[]})},a:function(mI,FI,PI,bG,wG,PG,mZ,RZ){var yZ=TY(PI,bG);FI=UI(FI),PG=zW(wG,PG),_I([],[mI],function(wZ){function OZ(){Cb("Cannot call "+Wl+" due to unbound types",yZ)}wZ=wZ[0];var Wl=wZ.name+"."+FI;FI.startsWith("@@")&&(FI=Symbol[FI.substring(2)]),RZ&&wZ.N.ja.push(FI);var sb=wZ.N.X,GW=sb[FI];return GW===void 0||GW.S===void 0&&GW.className!==wZ.name&&GW.Z===PI-2?(OZ.Z=PI-2,OZ.className=wZ.name,sb[FI]=OZ):(UG(sb,FI,Wl),sb[FI].S[PI-2]=OZ),_I([],yZ,function(vW){return vW=fc(Wl,vW,wZ,PG,mZ),sb[FI].S===void 0?(vW.Z=PI-2,sb[FI]=vW):sb[FI].S[PI-2]=vW,[]}),[]})},A:function(mI,FI){FI=UI(FI),SI(mI,{name:FI,fromWireType:function(PI){var bG=dI(PI);return jb(PI),bG},toWireType:function(PI,bG){return CI(bG)},argPackAdvance:8,readValueFromPointer:j,V:null})},n:function(mI,FI,PI){PI=kI(PI),FI=UI(FI),SI(mI,{name:FI,fromWireType:function(bG){return bG},toWireType:function(bG,wG){return wG},argPackAdvance:8,readValueFromPointer:mV(FI,PI),V:null})},e:function(mI,FI,PI,bG,wG){FI=UI(FI),wG===-1&&(wG=4294967295),wG=kI(PI);var PG=(RZ)=>RZ;if(bG===0){var mZ=32-8*PI;PG=(RZ)=>RZ<<mZ>>>mZ}PI=FI.includes("unsigned")?function(RZ,yZ){return yZ>>>0}:function(RZ,yZ){return yZ},SI(mI,{name:FI,fromWireType:PG,toWireType:PI,argPackAdvance:8,readValueFromPointer:DV(FI,wG,bG!==0),V:null})},b:function(mI,FI,PI){function bG(PG){PG>>=2;var mZ=k;return new wG(H,mZ[PG+1],mZ[PG])}var wG=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][FI];PI=UI(PI),SI(mI,{name:PI,fromWireType:bG,argPackAdvance:8,readValueFromPointer:bG},{ua:!0})},o:function(mI,FI){FI=UI(FI);var PI=FI==="std::string";SI(mI,{name:FI,fromWireType:function(bG){var wG=k[bG>>2],PG=bG+4;if(PI)for(var mZ=PG,RZ=0;RZ<=wG;++RZ){var yZ=PG+RZ;if(RZ==wG||A[yZ]==0){if(mZ=mZ?R(A,mZ,yZ-mZ):"",wZ===void 0)var wZ=mZ;else wZ+=String.fromCharCode(0),wZ+=mZ;mZ=yZ+1}}else{wZ=Array(wG);for(RZ=0;RZ<wG;++RZ)wZ[RZ]=String.fromCharCode(A[PG+RZ]);wZ=wZ.join("")}return BN(bG),wZ},toWireType:function(bG,wG){wG instanceof ArrayBuffer&&(wG=new Uint8Array(wG));var PG,mZ=typeof wG=="string";if(mZ||wG instanceof Uint8Array||wG instanceof Uint8ClampedArray||wG instanceof Int8Array||bI("Cannot pass non-string to std::string"),PI&&mZ){var RZ=0;for(PG=0;PG<wG.length;++PG){var yZ=wG.charCodeAt(PG);127>=yZ?RZ++:2047>=yZ?RZ+=2:55296<=yZ&&57343>=yZ?(RZ+=4,++PG):RZ+=3}PG=RZ}else PG=wG.length;if(RZ=ud(4+PG+1),yZ=RZ+4,k[RZ>>2]=PG,PI&&mZ){if(mZ=yZ,yZ=PG+1,PG=A,0<yZ){yZ=mZ+yZ-1;for(var wZ=0;wZ<wG.length;++wZ){var OZ=wG.charCodeAt(wZ);if(55296<=OZ&&57343>=OZ){var Wl=wG.charCodeAt(++wZ);OZ=65536+((OZ&1023)<<10)|Wl&1023}if(127>=OZ){if(mZ>=yZ)break;PG[mZ++]=OZ}else{if(2047>=OZ){if(mZ+1>=yZ)break;PG[mZ++]=192|OZ>>6}else{if(65535>=OZ){if(mZ+2>=yZ)break;PG[mZ++]=224|OZ>>12}else{if(mZ+3>=yZ)break;PG[mZ++]=240|OZ>>18,PG[mZ++]=128|OZ>>12&63}PG[mZ++]=128|OZ>>6&63}PG[mZ++]=128|OZ&63}}PG[mZ]=0}}else if(mZ)for(mZ=0;mZ<PG;++mZ)wZ=wG.charCodeAt(mZ),255<wZ&&(BN(yZ),bI("String has UTF-16 code units that do not fit in 8 bits")),A[yZ+mZ]=wZ;else for(mZ=0;mZ<PG;++mZ)A[yZ+mZ]=wG[mZ];return bG!==null&&bG.push(BN,RZ),RZ},argPackAdvance:8,readValueFromPointer:j,V:function(bG){BN(bG)}})},i:function(mI,FI,PI){if(PI=UI(PI),FI===2)var bG=j0,wG=pd,PG=l0,mZ=()=>g,RZ=1;else FI===4&&(bG=Q2,wG=jV,PG=DX,mZ=()=>k,RZ=2);SI(mI,{name:PI,fromWireType:function(yZ){for(var wZ=k[yZ>>2],OZ=mZ(),Wl,sb=yZ+4,GW=0;GW<=wZ;++GW){var vW=yZ+4+GW*FI;if(GW==wZ||OZ[vW>>RZ]==0)sb=bG(sb,vW-sb),Wl===void 0?Wl=sb:(Wl+=String.fromCharCode(0),Wl+=sb),sb=vW+FI}return BN(yZ),Wl},toWireType:function(yZ,wZ){typeof wZ!="string"&&bI("Cannot pass non-string to C++ string type "+PI);var OZ=PG(wZ),Wl=ud(4+OZ+FI);return k[Wl>>2]=OZ>>RZ,wG(wZ,Wl+4,OZ+FI),yZ!==null&&yZ.push(BN,Wl),Wl},argPackAdvance:8,readValueFromPointer:j,V:function(yZ){BN(yZ)}})},k:function(mI,FI,PI,bG,wG,PG){_G[mI]={name:UI(FI),fa:zW(PI,bG),W:zW(wG,PG),ia:[]}},h:function(mI,FI,PI,bG,wG,PG,mZ,RZ,yZ,wZ){_G[mI].ia.push({oa:UI(FI),ta:PI,ra:zW(bG,wG),sa:PG,za:mZ,ya:zW(RZ,yZ),Aa:wZ})},C:function(mI,FI){FI=UI(FI),SI(mI,{va:!0,name:FI,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},s:function(mI,FI,PI,bG,wG){mI=q0[mI],FI=dI(FI),PI=gQ(PI);var PG=[];return k[bG>>2]=CI(PG),mI(FI,PI,PG,wG)},t:function(mI,FI,PI,bG){mI=q0[mI],FI=dI(FI),PI=gQ(PI),mI(FI,PI,null,bG)},g:jb,m:function(mI,FI){var PI=ym(mI,FI),bG=PI[0];FI=bG.name+"_$"+PI.slice(1).map(function(mZ){return mZ.name}).join("_")+"$";var wG=um[FI];if(wG!==void 0)return wG;var PG=Array(mI-1);return wG=pm((mZ,RZ,yZ,wZ)=>{for(var OZ=0,Wl=0;Wl<mI-1;++Wl)PG[Wl]=PI[Wl+1].readValueFromPointer(wZ+OZ),OZ+=PI[Wl+1].argPackAdvance;mZ=mZ[RZ].apply(mZ,PG);for(Wl=0;Wl<mI-1;++Wl)PI[Wl+1].ma&&PI[Wl+1].ma(PG[Wl]);if(!bG.va)return bG.toWireType(yZ,mZ)}),um[FI]=wG},D:function(mI){4<mI&&(NI[mI].ga+=1)},r:function(mI){var FI=dI(mI);IZ(FI),jb(mI)},c:function(){EI("")},x:function(mI,FI,PI){A.copyWithin(mI,FI,FI+PI)},w:function(mI){var FI=A.length;if(mI>>>=0,2147483648<mI)return!1;for(var PI=1;4>=PI;PI*=2){var bG=FI*(1+0.2/PI);bG=Math.min(bG,mI+100663296);var wG=Math;bG=Math.max(mI,bG),wG=wG.min.call(wG,2147483648,bG+(65536-bG%65536)%65536);I:{try{Q.grow(wG-H.byteLength+65535>>>16),_();var PG=1;break I}catch(mZ){}PG=void 0}if(PG)return!0}return!1},z:function(){return 52},u:function(){return 70},y:function(mI,FI,PI,bG){for(var wG=0,PG=0;PG<PI;PG++){var mZ=k[FI>>2],RZ=k[FI+4>>2];FI+=8;for(var yZ=0;yZ<RZ;yZ++){var wZ=A[mZ+yZ],OZ=Gc[mI];wZ===0||wZ===10?((mI===1?Y:c)(R(OZ,0)),OZ.length=0):OZ.push(wZ)}wG+=RZ}return k[bG>>2]=wG,0}};(function(){function mI(wG){Z.asm=wG.exports,Q=Z.asm.E,_(),lI=Z.asm.J,aI.unshift(Z.asm.F),uI--,Z.monitorRunDependencies&&Z.monitorRunDependencies(uI),uI==0&&(ZI!==null&&(clearInterval(ZI),ZI=null),zI&&(wG=zI,zI=null,wG()))}function FI(wG){mI(wG.instance)}function PI(wG){return BI().then(function(PG){return WebAssembly.instantiate(PG,bG)}).then(function(PG){return PG}).then(wG,function(PG){c("failed to asynchronously prepare wasm: "+PG),EI(PG)})}var bG={a:rN};if(uI++,Z.monitorRunDependencies&&Z.monitorRunDependencies(uI),Z.instantiateWasm)try{return Z.instantiateWasm(bG,mI)}catch(wG){c("Module.instantiateWasm callback failed with error: "+wG),b(wG)}return function(){return V||typeof WebAssembly.instantiateStreaming!="function"||VI(JI)||typeof fetch!="function"?PI(FI):fetch(JI,{credentials:"same-origin"}).then(function(wG){return WebAssembly.instantiateStreaming(wG,bG).then(FI,function(PG){return c("wasm streaming compile failed: "+PG),c("falling back to ArrayBuffer instantiation"),PI(FI)})})}().catch(b),{}})(),Z.___wasm_call_ctors=function(){return(Z.___wasm_call_ctors=Z.asm.F).apply(null,arguments)};var b0=Z.___getTypeName=function(){return(b0=Z.___getTypeName=Z.asm.G).apply(null,arguments)};Z.__embind_initialize_bindings=function(){return(Z.__embind_initialize_bindings=Z.asm.H).apply(null,arguments)};var ud=Z._malloc=function(){return(ud=Z._malloc=Z.asm.I).apply(null,arguments)},BN=Z._free=function(){return(BN=Z._free=Z.asm.K).apply(null,arguments)};Z.dynCall_jiji=function(){return(Z.dynCall_jiji=Z.asm.L).apply(null,arguments)};var $2;zI=function mI(){$2||Bc(),$2||(zI=mI)};function Bc(){function mI(){if(!$2&&($2=!0,Z.calledRun=!0,!X)){if(FG(aI),l(Z),Z.onRuntimeInitialized)Z.onRuntimeInitialized();if(Z.postRun)for(typeof Z.postRun=="function"&&(Z.postRun=[Z.postRun]);Z.postRun.length;){var FI=Z.postRun.shift();QI.unshift(FI)}FG(QI)}}if(!(0<uI)){if(Z.preRun)for(typeof Z.preRun=="function"&&(Z.preRun=[Z.preRun]);Z.preRun.length;)lG();FG(t),0<uI||(Z.setStatus?(Z.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Z.setStatus("")},1),mI()},1)):mI())}}if(Z.preInit)for(typeof Z.preInit=="function"&&(Z.preInit=[Z.preInit]);0<Z.preInit.length;)Z.preInit.pop()();return Bc(),G.ready}})(),G6G=Tmb});var bC,l6G,b6G,DS,m3I,WC,ZK,Smb,dbI,Q3I,lK,bK,X3I,W6G,F3I,R3I,U5,H3I,imb,N6G;var mbI=a(()=>{bC=function(I){return I[I.Auto=0]="Auto",I[I.FlexStart=1]="FlexStart",I[I.Center=2]="Center",I[I.FlexEnd=3]="FlexEnd",I[I.Stretch=4]="Stretch",I[I.Baseline=5]="Baseline",I[I.SpaceBetween=6]="SpaceBetween",I[I.SpaceAround=7]="SpaceAround",I[I.SpaceEvenly=8]="SpaceEvenly",I}({}),l6G=function(I){return I[I.BorderBox=0]="BorderBox",I[I.ContentBox=1]="ContentBox",I}({}),b6G=function(I){return I[I.Width=0]="Width",I[I.Height=1]="Height",I}({}),DS=function(I){return I[I.Inherit=0]="Inherit",I[I.LTR=1]="LTR",I[I.RTL=2]="RTL",I}({}),m3I=function(I){return I[I.Flex=0]="Flex",I[I.None=1]="None",I[I.Contents=2]="Contents",I}({}),WC=function(I){return I[I.Left=0]="Left",I[I.Top=1]="Top",I[I.Right=2]="Right",I[I.Bottom=3]="Bottom",I[I.Start=4]="Start",I[I.End=5]="End",I[I.Horizontal=6]="Horizontal",I[I.Vertical=7]="Vertical",I[I.All=8]="All",I}({}),ZK=function(I){return I[I.None=0]="None",I[I.StretchFlexBasis=1]="StretchFlexBasis",I[I.AbsolutePositionWithoutInsetsExcludesPadding=2]="AbsolutePositionWithoutInsetsExcludesPadding",I[I.AbsolutePercentAgainstInnerSize=4]="AbsolutePercentAgainstInnerSize",I[I.All=2147483647]="All",I[I.Classic=2147483646]="Classic",I}({}),Smb=function(I){return I[I.WebFlexBasis=0]="WebFlexBasis",I}({}),dbI=function(I){return I[I.Column=0]="Column",I[I.ColumnReverse=1]="ColumnReverse",I[I.Row=2]="Row",I[I.RowReverse=3]="RowReverse",I}({}),Q3I=function(I){return I[I.Column=0]="Column",I[I.Row=1]="Row",I[I.All=2]="All",I}({}),lK=function(I){return I[I.FlexStart=0]="FlexStart",I[I.Center=1]="Center",I[I.FlexEnd=2]="FlexEnd",I[I.SpaceBetween=3]="SpaceBetween",I[I.SpaceAround=4]="SpaceAround",I[I.SpaceEvenly=5]="SpaceEvenly",I}({}),bK=function(I){return I[I.Error=0]="Error",I[I.Warn=1]="Warn",I[I.Info=2]="Info",I[I.Debug=3]="Debug",I[I.Verbose=4]="Verbose",I[I.Fatal=5]="Fatal",I}({}),X3I=function(I){return I[I.Undefined=0]="Undefined",I[I.Exactly=1]="Exactly",I[I.AtMost=2]="AtMost",I}({}),W6G=function(I){return I[I.Default=0]="Default",I[I.Text=1]="Text",I}({}),F3I=function(I){return I[I.Visible=0]="Visible",I[I.Hidden=1]="Hidden",I[I.Scroll=2]="Scroll",I}({}),R3I=function(I){return I[I.Static=0]="Static",I[I.Relative=1]="Relative",I[I.Absolute=2]="Absolute",I}({}),U5=function(I){return I[I.Undefined=0]="Undefined",I[I.Point=1]="Point",I[I.Percent=2]="Percent",I[I.Auto=3]="Auto",I}({}),H3I=function(I){return I[I.NoWrap=0]="NoWrap",I[I.Wrap=1]="Wrap",I[I.WrapReverse=2]="WrapReverse",I}({}),imb={ALIGN_AUTO:bC.Auto,ALIGN_FLEX_START:bC.FlexStart,ALIGN_CENTER:bC.Center,ALIGN_FLEX_END:bC.FlexEnd,ALIGN_STRETCH:bC.Stretch,ALIGN_BASELINE:bC.Baseline,ALIGN_SPACE_BETWEEN:bC.SpaceBetween,ALIGN_SPACE_AROUND:bC.SpaceAround,ALIGN_SPACE_EVENLY:bC.SpaceEvenly,BOX_SIZING_BORDER_BOX:l6G.BorderBox,BOX_SIZING_CONTENT_BOX:l6G.ContentBox,DIMENSION_WIDTH:b6G.Width,DIMENSION_HEIGHT:b6G.Height,DIRECTION_INHERIT:DS.Inherit,DIRECTION_LTR:DS.LTR,DIRECTION_RTL:DS.RTL,DISPLAY_FLEX:m3I.Flex,DISPLAY_NONE:m3I.None,DISPLAY_CONTENTS:m3I.Contents,EDGE_LEFT:WC.Left,EDGE_TOP:WC.Top,EDGE_RIGHT:WC.Right,EDGE_BOTTOM:WC.Bottom,EDGE_START:WC.Start,EDGE_END:WC.End,EDGE_HORIZONTAL:WC.Horizontal,EDGE_VERTICAL:WC.Vertical,EDGE_ALL:WC.All,ERRATA_NONE:ZK.None,ERRATA_STRETCH_FLEX_BASIS:ZK.StretchFlexBasis,ERRATA_ABSOLUTE_POSITION_WITHOUT_INSETS_EXCLUDES_PADDING:ZK.AbsolutePositionWithoutInsetsExcludesPadding,ERRATA_ABSOLUTE_PERCENT_AGAINST_INNER_SIZE:ZK.AbsolutePercentAgainstInnerSize,ERRATA_ALL:ZK.All,ERRATA_CLASSIC:ZK.Classic,EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS:Smb.WebFlexBasis,FLEX_DIRECTION_COLUMN:dbI.Column,FLEX_DIRECTION_COLUMN_REVERSE:dbI.ColumnReverse,FLEX_DIRECTION_ROW:dbI.Row,FLEX_DIRECTION_ROW_REVERSE:dbI.RowReverse,GUTTER_COLUMN:Q3I.Column,GUTTER_ROW:Q3I.Row,GUTTER_ALL:Q3I.All,JUSTIFY_FLEX_START:lK.FlexStart,JUSTIFY_CENTER:lK.Center,JUSTIFY_FLEX_END:lK.FlexEnd,JUSTIFY_SPACE_BETWEEN:lK.SpaceBetween,JUSTIFY_SPACE_AROUND:lK.SpaceAround,JUSTIFY_SPACE_EVENLY:lK.SpaceEvenly,LOG_LEVEL_ERROR:bK.Error,LOG_LEVEL_WARN:bK.Warn,LOG_LEVEL_INFO:bK.Info,LOG_LEVEL_DEBUG:bK.Debug,LOG_LEVEL_VERBOSE:bK.Verbose,LOG_LEVEL_FATAL:bK.Fatal,MEASURE_MODE_UNDEFINED:X3I.Undefined,MEASURE_MODE_EXACTLY:X3I.Exactly,MEASURE_MODE_AT_MOST:X3I.AtMost,NODE_TYPE_DEFAULT:W6G.Default,NODE_TYPE_TEXT:W6G.Text,OVERFLOW_VISIBLE:F3I.Visible,OVERFLOW_HIDDEN:F3I.Hidden,OVERFLOW_SCROLL:F3I.Scroll,POSITION_TYPE_STATIC:R3I.Static,POSITION_TYPE_RELATIVE:R3I.Relative,POSITION_TYPE_ABSOLUTE:R3I.Absolute,UNIT_UNDEFINED:U5.Undefined,UNIT_POINT:U5.Point,UNIT_PERCENT:U5.Percent,UNIT_AUTO:U5.Auto,WRAP_NO_WRAP:H3I.NoWrap,WRAP_WRAP:H3I.Wrap,WRAP_WRAP_REVERSE:H3I.WrapReverse},N6G=imb});function h3I(I){function G(b,W,N){let Y=b[W];b[W]=function(){for(var c=arguments.length,V=Array(c),d=0;d<c;d++)V[d]=arguments[d];return N.call(this,Y,...V)}}for(let b of["setPosition","setMargin","setFlexBasis","setWidth","setHeight","setMinWidth","setMinHeight","setMaxWidth","setMaxHeight","setPadding","setGap"]){let W={[U5.Point]:I.Node.prototype[b],[U5.Percent]:I.Node.prototype[`${b}Percent`],[U5.Auto]:I.Node.prototype[`${b}Auto`]};G(I.Node.prototype,b,function(N){for(var Y=arguments.length,c=Array(Y>1?Y-1:0),V=1;V<Y;V++)c[V-1]=arguments[V];let d=c.pop(),Q,X;if(d==="auto")Q=U5.Auto,X=void 0;else if(typeof d==="object")Q=d.unit,X=d.valueOf();else if(Q=typeof d==="string"&&d.endsWith("%")?U5.Percent:U5.Point,X=parseFloat(d),d!==void 0&&!Number.isNaN(d)&&Number.isNaN(X))throw Error(`Invalid value ${d} for ${b}`);if(!W[Q])throw Error(`Failed to execute "${b}": Unsupported unit '${d}'`);if(X!==void 0)return W[Q].call(this,...c,X);else return W[Q].call(this,...c)})}function Z(b){return I.MeasureCallback.implement({measure:function(){let{width:W,height:N}=b(...arguments);return{width:W??NaN,height:N??NaN}}})}G(I.Node.prototype,"setMeasureFunc",function(b,W){if(W)return b.call(this,Z(W));else return this.unsetMeasureFunc()});function l(b){return I.DirtiedCallback.implement({dirtied:b})}return G(I.Node.prototype,"setDirtiedFunc",function(b,W){b.call(this,l(W))}),G(I.Config.prototype,"free",function(){I.Config.destroy(this)}),G(I.Node,"create",(b,W)=>{return W?I.Node.createWithConfig(W):I.Node.createDefault()}),G(I.Node.prototype,"free",function(){I.Node.destroy(this)}),G(I.Node.prototype,"freeRecursive",function(){for(let b=0,W=this.getChildCount();b<W;++b)this.getChild(0).freeRecursive();this.free()}),G(I.Node.prototype,"calculateLayout",function(b){let W=arguments.length>1&&arguments[1]!==void 0?arguments[1]:NaN,N=arguments.length>2&&arguments[2]!==void 0?arguments[2]:NaN,Y=arguments.length>3&&arguments[3]!==void 0?arguments[3]:DS.LTR;return b.call(this,W,N,Y)}),{Config:I.Config,Node:I.Node,...N6G}}var Y6G=a(()=>{mbI();mbI()});var Pmb,ql;var Bz=a(async()=>{Z6G();Y6G();mbI();Pmb=h3I(await G6G()),ql=Pmb});var c6G=w((_mb)=>{(function(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==="function")__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var I=!1,G=!1,Z=5;function l(EG,gG){var _G=EG.length;EG.push(gG),N(EG,gG,_G)}function b(EG){return EG.length===0?null:EG[0]}function W(EG){if(EG.length===0)return null;var gG=EG[0],_G=EG.pop();if(_G!==gG)EG[0]=_G,Y(EG,_G,0);return gG}function N(EG,gG,_G){var IZ=_G;while(IZ>0){var j=IZ-1>>>1,S=EG[j];if(c(S,gG)>0)EG[j]=gG,EG[IZ]=S,IZ=j;else return}}function Y(EG,gG,_G){var IZ=_G,j=EG.length,S=j>>>1;while(IZ<S){var xI=(IZ+1)*2-1,_I=EG[xI],kI=xI+1,SI=EG[kI];if(c(_I,gG)<0)if(kI<j&&c(SI,_I)<0)EG[IZ]=SI,EG[kI]=gG,IZ=kI;else EG[IZ]=_I,EG[xI]=gG,IZ=xI;else if(kI<j&&c(SI,gG)<0)EG[IZ]=SI,EG[kI]=gG,IZ=kI;else return}}function c(EG,gG){var _G=EG.sortIndex-gG.sortIndex;return _G!==0?_G:EG.id-gG.id}var V=1,d=2,Q=3,X=4,R=5;function H(EG,gG){}var h=typeof performance==="object"&&typeof performance.now==="function";if(h){var A=performance;_mb.unstable_now=function(){return A.now()}}else{var C=Date,g=C.now();_mb.unstable_now=function(){return C.now()-g}}var z=1073741823,k=-1,x=250,n=5000,_=1e4,lI=z,t=[],aI=[],QI=1,lG=null,uI=Q,ZI=!1,zI=!1,EI=!1,VI=typeof setTimeout==="function"?setTimeout:null,JI=typeof clearTimeout==="function"?clearTimeout:null,LI=typeof setImmediate<"u"?setImmediate:null,MI=typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0?navigator.scheduling.isInputPending.bind(navigator.scheduling):null;function BI(EG){var gG=b(aI);while(gG!==null){if(gG.callback===null)W(aI);else if(gG.startTime<=EG)W(aI),gG.sortIndex=gG.expirationTime,l(t,gG);else return;gG=b(aI)}}function FG(EG){if(EI=!1,BI(EG),!zI)if(b(t)!==null)zI=!0,hG(f);else{var gG=b(aI);if(gG!==null)vG(FG,gG.startTime-EG)}}function f(EG,gG){if(zI=!1,EI)EI=!1,GZ();ZI=!0;var _G=uI;try{if(G)try{return P(EG,gG)}catch(j){if(lG!==null){var IZ=_mb.unstable_now();H(lG,IZ),lG.isQueued=!1}throw j}else return P(EG,gG)}finally{lG=null,uI=_G,ZI=!1}}function P(EG,gG){var _G=gG;BI(_G),lG=b(t);while(lG!==null&&!I){if(lG.expirationTime>_G&&(!EG||qI()))break;var IZ=lG.callback;if(typeof IZ==="function"){lG.callback=null,uI=lG.priorityLevel;var j=lG.expirationTime<=_G,S=IZ(j);if(_G=_mb.unstable_now(),typeof S==="function")lG.callback=S;else if(lG===b(t))W(t);BI(_G)}else W(t);lG=b(t)}if(lG!==null)return!0;else{var xI=b(aI);if(xI!==null)vG(FG,xI.startTime-_G);return!1}}function NI(EG,gG){switch(EG){case V:case d:case Q:case X:case R:break;default:EG=Q}var _G=uI;uI=EG;try{return gG()}finally{uI=_G}}function GG(EG){var gG;switch(uI){case V:case d:case Q:gG=Q;break;default:gG=uI;break}var _G=uI;uI=gG;try{return EG()}finally{uI=_G}}function ZG(EG){var gG=uI;return function(){var _G=uI;uI=gG;try{return EG.apply(this,arguments)}finally{uI=_G}}}function cG(EG,gG,_G){var IZ=_mb.unstable_now(),j;if(typeof _G==="object"&&_G!==null){var S=_G.delay;if(typeof S==="number"&&S>0)j=IZ+S;else j=IZ}else j=IZ;var xI;switch(EG){case V:xI=k;break;case d:xI=x;break;case R:xI=lI;break;case X:xI=_;break;case Q:default:xI=n;break}var _I=j+xI,kI={id:QI++,callback:gG,priorityLevel:EG,startTime:j,expirationTime:_I,sortIndex:-1};if(j>IZ){if(kI.sortIndex=j,l(aI,kI),b(t)===null&&kI===b(aI)){if(EI)GZ();else EI=!0;vG(FG,j-IZ)}}else if(kI.sortIndex=_I,l(t,kI),!zI&&!ZI)zI=!0,hG(f);return kI}function bI(){}function dI(){if(!zI&&!ZI)zI=!0,hG(f)}function CI(){return b(t)}function gI(EG){EG.callback=null}function DI(){return uI}var UI=!1,sI=null,r=-1,AI=Z,yI=-1;function qI(){var EG=_mb.unstable_now()-yI;if(EG<AI)return!1;return!0}function rI(){}function BG(EG){if(EG<0||EG>125){console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported");return}if(EG>0)AI=Math.floor(1000/EG);else AI=Z}var CG=function(){if(sI!==null){var EG=_mb.unstable_now();yI=EG;var gG=!0,_G=!0;try{_G=sI(gG,EG)}finally{if(_G)NZ();else UI=!1,sI=null}}else UI=!1},NZ;if(typeof LI==="function")NZ=function(){LI(CG)};else if(typeof MessageChannel<"u"){var jZ=new MessageChannel,iG=jZ.port2;jZ.port1.onmessage=CG,NZ=function(){iG.postMessage(null)}}else NZ=function(){VI(CG,0)};function hG(EG){if(sI=EG,!UI)UI=!0,NZ()}function vG(EG,gG){r=VI(function(){EG(_mb.unstable_now())},gG)}function GZ(){JI(r),r=-1}var xZ=rI,tG=null;if(_mb.unstable_IdlePriority=R,_mb.unstable_ImmediatePriority=V,_mb.unstable_LowPriority=X,_mb.unstable_NormalPriority=Q,_mb.unstable_Profiling=tG,_mb.unstable_UserBlockingPriority=d,_mb.unstable_cancelCallback=gI,_mb.unstable_continueExecution=dI,_mb.unstable_forceFrameRate=BG,_mb.unstable_getCurrentPriorityLevel=DI,_mb.unstable_getFirstCallbackNode=CI,_mb.unstable_next=GG,_mb.unstable_pauseExecution=bI,_mb.unstable_requestPaint=xZ,_mb.unstable_runWithPriority=NI,_mb.unstable_scheduleCallback=cG,_mb.unstable_shouldYield=qI,_mb.unstable_wrapCallback=ZG,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==="function")__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()});var d6G=w((ZuY,V6G)=>{var w3I=hI(YG()),vV=hI(c6G());V6G.exports=function(G){var Z={},l=w3I.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,b=!1;function W(m){b=m}function N(m){if(!b){for(var F=arguments.length,E=Array(F>1?F-1:0),p=1;p<F;p++)E[p-1]=arguments[p];c("warn",m,E)}}function Y(m){if(!b){for(var F=arguments.length,E=Array(F>1?F-1:0),p=1;p<F;p++)E[p-1]=arguments[p];c("error",m,E)}}function c(m,F,E){{var p=l.ReactDebugCurrentFrame,u=p.getStackAddendum();if(u!=="")F+="%s",E=E.concat([u]);var M=E.map(function(o){return String(o)});M.unshift("Warning: "+F),Function.prototype.apply.call(console[m],console,M)}}var V=Object.assign;function d(m){return m._reactInternals}function Q(m,F){m._reactInternals=F}var X=!1,R=!1,H=!1,h=!1,A=!0,C=!0,g=!0,z=!0,k=0,x=1,n=2,_=3,lI=4,t=5,aI=6,QI=7,lG=8,uI=9,ZI=10,zI=11,EI=12,VI=13,JI=14,LI=15,MI=16,BI=17,FG=18,f=19,P=21,NI=22,GG=23,ZG=24,cG=25,bI=Symbol.for("react.element"),dI=Symbol.for("react.portal"),CI=Symbol.for("react.fragment"),gI=Symbol.for("react.strict_mode"),DI=Symbol.for("react.profiler"),UI=Symbol.for("react.provider"),sI=Symbol.for("react.context"),r=Symbol.for("react.forward_ref"),AI=Symbol.for("react.suspense"),yI=Symbol.for("react.suspense_list"),qI=Symbol.for("react.memo"),rI=Symbol.for("react.lazy"),BG=Symbol.for("react.scope"),CG=Symbol.for("react.debug_trace_mode"),NZ=Symbol.for("react.offscreen"),jZ=Symbol.for("react.legacy_hidden"),iG=Symbol.for("react.cache"),hG=Symbol.for("react.tracing_marker"),vG=Symbol.iterator,GZ="@@iterator";function xZ(m){if(m===null||typeof m!=="object")return null;var F=vG&&m[vG]||m[GZ];if(typeof F==="function")return F;return null}function tG(m,F,E){var p=m.displayName;if(p)return p;var u=F.displayName||F.name||"";return u!==""?E+"("+u+")":E}function EG(m){return m.displayName||"Context"}function gG(m){if(m==null)return null;if(typeof m.tag==="number")Y("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.");if(typeof m==="function")return m.displayName||m.name||null;if(typeof m==="string")return m;switch(m){case CI:return"Fragment";case dI:return"Portal";case DI:return"Profiler";case gI:return"StrictMode";case AI:return"Suspense";case yI:return"SuspenseList"}if(typeof m==="object")switch(m.$$typeof){case sI:var F=m;return EG(F)+".Consumer";case UI:var E=m;return EG(E._context)+".Provider";case r:return tG(m,m.render,"ForwardRef");case qI:var p=m.displayName||null;if(p!==null)return p;return gG(m.type)||"Memo";case rI:{var u=m,M=u._payload,o=u._init;try{return gG(o(M))}catch(cI){return null}}}return null}function _G(m,F,E){var p=F.displayName||F.name||"";return m.displayName||(p!==""?E+"("+p+")":E)}function IZ(m){return m.displayName||"Context"}function j(m){var{tag:F,type:E}=m;switch(F){case ZG:return"Cache";case uI:var p=E;return IZ(p)+".Consumer";case ZI:var u=E;return IZ(u._context)+".Provider";case FG:return"DehydratedFragment";case zI:return _G(E,E.render,"ForwardRef");case QI:return"Fragment";case t:return E;case lI:return"Portal";case _:return"Root";case aI:return"Text";case MI:return gG(E);case lG:if(E===gI)return"StrictMode";return"Mode";case NI:return"Offscreen";case EI:return"Profiler";case P:return"Scope";case VI:return"Suspense";case f:return"SuspenseList";case cG:return"TracingMarker";case x:case k:case BI:case n:case JI:case LI:if(typeof E==="function")return E.displayName||E.name||null;if(typeof E==="string")return E;break}return null}var S=0,xI=1,_I=2,kI=4,SI=16,jG=32,yG=64,UG=128,pZ=256,ul=512,ll=1024,Nb=2048,db=4096,Ll=8192,Db=16384,hc=Nb|kI|yG|ul|ll|Db,KV=32767,zW=32768,PZ=65536,Cb=131072,fc=1048576,TY=2097152,jb=4194304,zc=8388608,mV=16777216,DV=33554432,j0=kI|ll|0,pd=_I|kI|SI|jG|ul|db|Ll,l0=kI|yG|ul|Ll,Q2=Nb|SI,jV=jb|zc|TY,DX=l.ReactCurrentOwner;function n0(m){var F=m,E=m;if(!m.alternate){var p=F;do{if(F=p,(F.flags&(_I|db))!==S)E=F.return;p=F.return}while(p)}else while(F.return)F=F.return;if(F.tag===_)return E;return null}function gQ(m){return n0(m)===m}function q0(m){{var F=DX.current;if(F!==null&&F.tag===x){var E=F,p=E.stateNode;if(!p._warnedAboutRefsInRender)Y("%s is accessing isMounted inside its render() function. render() should be a pure function of props and state. It should never access something that requires stale data from the previous render, such as refs. Move this logic to componentDidMount and componentDidUpdate instead.",j(E)||"A component");p._warnedAboutRefsInRender=!0}}var u=d(m);if(!u)return!1;return n0(u)===u}function pm(m){if(n0(m)!==m)throw Error("Unable to find node on an unmounted component.")}function ym(m){var F=m.alternate;if(!F){var E=n0(m);if(E===null)throw Error("Unable to find node on an unmounted component.");if(E!==m)return null;return m}var p=m,u=F;while(!0){var M=p.return;if(M===null)break;var o=M.alternate;if(o===null){var cI=M.return;if(cI!==null){p=u=cI;continue}break}if(M.child===o.child){var wI=M.child;while(wI){if(wI===p)return pm(M),m;if(wI===u)return pm(M),F;wI=wI.sibling}throw Error("Unable to find node on an unmounted component.")}if(p.return!==u.return)p=M,u=o;else{var nI=!1,tI=M.child;while(tI){if(tI===p){nI=!0,p=M,u=o;break}if(tI===u){nI=!0,u=M,p=o;break}tI=tI.sibling}if(!nI){tI=o.child;while(tI){if(tI===p){nI=!0,p=o,u=M;break}if(tI===u){nI=!0,u=o,p=M;break}tI=tI.sibling}if(!nI)throw Error("Child was not found in either parent set. This indicates a bug in React related to the return pointer. Please file an issue.")}}if(p.alternate!==u)throw Error("Return fibers should always be each others' alternates. This error is likely caused by a bug in React. Please file an issue.")}if(p.tag!==_)throw Error("Unable to find node on an unmounted component.");if(p.stateNode.current===p)return m;return F}function um(m){var F=ym(m);return F!==null?Gc(F):null}function Gc(m){if(m.tag===t||m.tag===aI)return m;var F=m.child;while(F!==null){var E=Gc(F);if(E!==null)return E;F=F.sibling}return null}function aQ(m){var F=ym(m);return F!==null?yd(F):null}function yd(m){if(m.tag===t||m.tag===aI)return m;var F=m.child;while(F!==null){if(F.tag!==lI){var E=yd(F);if(E!==null)return E}F=F.sibling}return null}var T0=Array.isArray;function rN(m){return T0(m)}var{getPublicInstance:b0,getRootHostContext:ud,getChildHostContext:BN,prepareForCommit:$2,resetAfterCommit:Bc,createInstance:mI,appendInitialChild:FI,finalizeInitialChildren:PI,prepareUpdate:bG,shouldSetTextContent:wG,createTextInstance:PG,scheduleTimeout:mZ,cancelTimeout:RZ,noTimeout:yZ,isPrimaryRenderer:wZ,warnsIfNotActing:OZ,supportsMutation:Wl,supportsPersistence:sb,supportsHydration:GW,getInstanceFromNode:vW,beforeActiveInstanceBlur:GN,afterActiveInstanceBlur:RY,preparePortalMount:sc,prepareScopeUpdate:SN,getInstanceFromScope:X2,getCurrentEventPriority:o2,detachDeletedInstance:W0,supportsMicrotasks:F2,scheduleMicrotask:R2,supportsTestSelectors:wc,findFiberRoot:t2,getBoundingRect:r2,getTextContent:FR,isHiddenSubtree:Lm,matchAccessibilityRole:UE,setFocusIfFocusable:xE,setupIntersectionObserver:XA,appendChild:zH,appendChildToContainer:OE,commitTextUpdate:RR,commitMount:sF,commitUpdate:$F,insertBefore:e2,insertInContainerBefore:S0,removeChild:BH,removeChildFromContainer:zQ,resetTextContent:gm,hideInstance:H2,hideTextInstance:oF,unhideInstance:jX,unhideTextInstance:WI,clearContainer:iI,cloneInstance:MG,createContainerChildSet:nG,appendChildToContainerChildSet:zZ,finalizeContainerChildren:il,replaceContainerChildren:pl,cloneHiddenInstance:Hb,cloneHiddenTextInstance:pb,canHydrateInstance:hb,canHydrateTextInstance:kN,canHydrateSuspenseInstance:UN,isSuspenseInstancePending:_Z,isSuspenseInstanceFallback:JN,getSuspenseInstanceFallbackErrorDetails:cW,registerSuspenseInstanceRetry:i0,getNextHydratableSibling:BQ,getFirstHydratableChild:nV,getFirstHydratableChildWithinContainer:am,getFirstHydratableChildWithinSuspenseInstance:nX,hydrateInstance:kQ,hydrateTextInstance:P0,hydrateSuspenseInstance:HR,getNextHydratableInstanceAfterSuspenseInstance:FA,commitHydratedContainer:UQ,commitHydratedSuspenseInstance:xQ,clearSuspenseBoundary:ME,clearSuspenseBoundaryFromContainer:bp,shouldDeleteUnhydratedTailInstances:Rg,didNotMatchHydratedContainerTextInstance:xw,didNotMatchHydratedTextInstance:s,didNotHydrateInstanceWithinContainer:e,didNotHydrateInstanceWithinSuspenseInstance:jI,didNotHydrateInstance:aG,didNotFindHydratableInstanceWithinContainer:fG,didNotFindHydratableTextInstanceWithinContainer:sZ,didNotFindHydratableSuspenseInstanceWithinContainer:Gb,didNotFindHydratableInstanceWithinSuspenseInstance:RW,didNotFindHydratableTextInstanceWithinSuspenseInstance:xN,didNotFindHydratableSuspenseInstanceWithinSuspenseInstance:QV,didNotFindHydratableInstance:qV,didNotFindHydratableTextInstance:N0,didNotFindHydratableSuspenseInstance:Y0,errorHydratingContainer:c0}=G,_0=0,Ow,T8,Hg,Wp,Np,Yp,cp;function aU(){}aU.__reactDisabledLog=!0;function S8(){{if(_0===0){Ow=console.log,T8=console.info,Hg=console.warn,Wp=console.error,Np=console.group,Yp=console.groupCollapsed,cp=console.groupEnd;var m={configurable:!0,enumerable:!0,value:aU,writable:!0};Object.defineProperties(console,{info:m,log:m,warn:m,error:m,group:m,groupCollapsed:m,groupEnd:m})}_0++}}function zU(){{if(_0--,_0===0){var m={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:V({},m,{value:Ow}),info:V({},m,{value:T8}),warn:V({},m,{value:Hg}),error:V({},m,{value:Wp}),group:V({},m,{value:Np}),groupCollapsed:V({},m,{value:Yp}),groupEnd:V({},m,{value:cp})})}if(_0<0)Y("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var BU=l.ReactCurrentDispatcher,f0;function qX(m,F,E){{if(f0===void 0)try{throw Error()}catch(u){var p=u.stack.trim().match(/\n( *(at )?)/);f0=p&&p[1]||""}return`
76
76
  `+f0+m}}var kH=!1,Mw;{var i8=typeof WeakMap==="function"?WeakMap:Map;Mw=new i8}function Vp(m,F){if(!m||kH)return"";{var E=Mw.get(m);if(E!==void 0)return E}var p;kH=!0;var u=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var M;M=BU.current,BU.current=null,S8();try{if(F){var o=function(){throw Error()};if(Object.defineProperty(o.prototype,"props",{set:function(){throw Error()}}),typeof Reflect==="object"&&Reflect.construct){try{Reflect.construct(o,[])}catch(AZ){p=AZ}Reflect.construct(m,[],o)}else{try{o.call()}catch(AZ){p=AZ}m.call(o.prototype)}}else{try{throw Error()}catch(AZ){p=AZ}m()}}catch(AZ){if(AZ&&p&&typeof AZ.stack==="string"){var cI=AZ.stack.split(`
77
77
  `),wI=p.stack.split(`
@@ -329,8 +329,8 @@ globstar while`,I,Q,G,X,R),this.matchOne(I.slice(Q),G.slice(X),Z))return this.de
329
329
  `).join(`\r
330
330
  `);fkb(I,b,{encoding:Z,flush:!0})}async function htG(I){return IUb.fetch(ni(I))}async function GUb(I){let G=new AbortController;setTimeout(()=>{G.abort()},1000);let Z=await WtG(I,G.signal,15),l=0;for(let b of Z)if(_z(b)==="CRLF")l++;return l>3?"CRLF":"LF"}function wtG(I,G,Z){if(I.has(G))return I.get(G);let l=Z();return I.set(G,l),l}function U1(I){let G=ni(I);return wtG(ZUb,G,()=>JtG(G))}function JtG(I){let Z=Buffer.alloc(4096),l=void 0;try{l=mtG(I,"r");let b=QtG(l,Z,0,4096,0);if(b>=2){if(Z[0]===255&&Z[1]===254)return"utf16le"}if(b>=3&&Z[0]===239&&Z[1]===187&&Z[2]===191)return"utf8";return Z.slice(0,b).toString("utf8").length>0?"utf8":"ascii"}catch(b){return DG(`Error detecting encoding for file ${I}: ${b}`),"utf8"}finally{if(l)XtG(l)}}function _z(I){let G=ni(I);return wtG(lUb,G,()=>AtG(G))}function AtG(I,G="utf8"){try{let Z=Buffer.alloc(4096),l=mtG(I,"r"),b=QtG(l,Z,0,4096,0);XtG(l);let W=Z.toString(G,0,b),N=0,Y=0;for(let c=0;c<W.length;c++)if(W[c]===`
331
331
  `)if(c>0&&W[c-1]==="\r")N++;else Y++;return N>Y?"CRLF":"LF"}catch(Z){return DG(`Error detecting line endings for file ${I}: ${Z}`),"LF"}}function i9I(I){let G=FtG(I)?I:ni(bZ(),I);if(G.endsWith(" AM.png"))return G.replace(" AM.png",`${String.fromCharCode(8239)}AM.png`);if(G.endsWith(" PM.png"))return G.replace(" PM.png",`${String.fromCharCode(8239)}PM.png`);return G}function P9I(I){return I?FtG(I)?I:ni(bZ(),I):void 0}function EtG(I){let G=P9I(I),Z=G?tkb(bZ(),G):void 0;return{absolutePath:G,relativePath:Z}}function F6(I){try{let G=rkb(I),Z=ctG(I,VtG(I));if(!skb(G))return;let W=$kb(G).filter((N)=>ctG(N,VtG(N))===Z&&ekb(G,N)!==I)[0];if(W)return W;return}catch(G){DG(`Error finding similar file for ${I}: ${G}`);return}}function R6({content:I,startLine:G}){if(!I)return"";return I.split(/\r?\n/).map((Z,l)=>{let b=l+G,W=String(b);if(W.length>=6)return`${W} ${Z}`;return`${W.padStart(6," ")} ${Z}`}).join(`
332
- `)}function vtG(I){try{let G=okb(I),Z=G.readSync();return G.closeSync(),Z===null}catch(G){return DG(`Error checking directory: ${G}`),!1}}var IUb,ZUb,lUb;var nh=a(()=>{Ul();XqG();mNI();spI();QW();IUb=new K5({fetchMethod:(I)=>GUb(I),ttl:300000,ttlAutopurge:!1,max:1000});ZUb=new K5({fetchMethod:(I)=>JtG(I),ttl:300000,ttlAutopurge:!1,max:1000});lUb=new K5({fetchMethod:(I)=>AtG(I),ttl:300000,ttlAutopurge:!1,max:1000})});import{existsSync as bUb}from"fs";import{join as WUb}from"path";import{homedir as NUb}from"os";function uK(){let I=Ob();if(!I.hasCompletedProjectOnboarding)pN({...I,hasCompletedProjectOnboarding:!0})}function YUb(){let I=rZ();XW({...I,lastReleaseNotesSeen:"1.3.2"})}function _9I({workspaceDir:I}){let Z=!Ob().hasCompletedProjectOnboarding,b=rZ().lastReleaseNotesSeen,W=[];if(!b||CtG.gt("1.3.2",b))W=QWI["1.3.2"]||[];let N=W.length>0;if(Ab.useEffect(()=>{if(N&&!Z)YUb()},[N,Z]),!Z&&!N)return null;let Y=bUb(WUb(I,"CLAUDE.md")),c=vtG(I),V=!Y&&!c,d=yK.isEnabled&&!rZ().shiftEnterKeyBindingInstalled,Q=dG();return Ab.createElement(GI,{flexDirection:"column",gap:1,padding:1,paddingBottom:0},Z&&Ab.createElement(Ab.Fragment,null,Ab.createElement(D,{color:Q.secondaryText},"Tips for getting started:"),Ab.createElement(fm,null,(()=>{let X=[];if(c)X.push(Ab.createElement(fm.Item,{key:"workspace"},Ab.createElement(D,{color:Q.secondaryText},"Ask Claude to create a new app or clone a repository.")));if(V)X.push(Ab.createElement(fm.Item,{key:"claudemd"},Ab.createElement(D,{color:Q.secondaryText},"Run ",Ab.createElement(D,{color:Q.text},"/init")," to create a CLAUDE.md file with instructions for Claude.")));if(d)X.push(Ab.createElement(fm.Item,{key:"terminal"},Ab.createElement(D,{color:Q.secondaryText},"Run ",Ab.createElement(D,{color:Q.text},"/terminal-setup"),Ab.createElement(D,{bold:!1}," to set up terminal integration"))));return X.push(Ab.createElement(fm.Item,{key:"questions"},Ab.createElement(D,{color:Q.secondaryText},"Ask Claude questions about your codebase."))),X.push(Ab.createElement(fm.Item,{key:"changes"},Ab.createElement(D,{color:Q.secondaryText},"Ask Claude to implement changes to your codebase."))),X})())),!Z&&N&&Ab.createElement(GI,{borderColor:dG().secondaryBorder,flexDirection:"column",marginRight:1},Ab.createElement(GI,{flexDirection:"column",gap:0},Ab.createElement(GI,{marginBottom:1},Ab.createElement(D,null,"\uD83C\uDD95 What's new in v","1.3.2",":")),Ab.createElement(GI,{flexDirection:"column",marginLeft:1},W.map((X,R)=>Ab.createElement(D,{key:R,color:dG().secondaryText},"• ",X))))),I===NUb()&&Ab.createElement(D,{color:dG().warning},"Note: You have launched ",Ab.createElement(D,{bold:!0},"claude")," in your home directory. For the best experience, launch it in a project directory instead."))}var Ab,CtG;var mWI=a(async()=>{MW();yl();qpI();nh();await gZ([_d(),oG(),dWI()]);Ab=hI(YG(),1),CtG=hI(fx(),1)});function f9I({isFocused:I,isSelected:G,smallPointer:Z,children:l}){let{styles:b}=aY("Select");return qi.default.createElement(GI,{...b.option({isFocused:I})},I&&qi.default.createElement(D,{...b.focusIndicator()},Z?HN.triangleDownSmall:HN.pointer),qi.default.createElement(D,{...b.label({isFocused:I,isSelected:G})},l),G&&qi.default.createElement(D,{...b.selectedIndicator()},HN.tick))}var qi;var s9I=a(async()=>{oR();await gZ([oG(),_d()]);qi=hI(YG(),1)});var XNI;var ptG=a(async()=>{await FNI();XNI=class XNI extends Map{first;constructor(I){let G=[],Z,l,b=0;for(let W of I){let N={...W,previous:l,next:void 0,index:b};if(l)l.next=N;Z||=N;let Y="value"in W?W.value:$9I(W);G.push([Y,N]),b++,l=N}super(G);this.first=Z}}});import{isDeepStrictEqual as cUb}from"node:util";var x1,VUb=(I,G)=>{switch(G.type){case"focus-next-option":{if(!I.focusedValue)return I;let Z=I.optionMap.get(I.focusedValue);if(!Z)return I;let l=Z.next;while(l&&!("value"in l))l=l.next;if(!l)return I;let b="value"in l?l.value:I.focusedValue;if(!(l.index>=I.visibleToIndex))return{...I,focusedValue:b};let N=Math.min(I.optionMap.size,I.visibleToIndex+1),Y=N-I.visibleOptionCount;return{...I,focusedValue:b,visibleFromIndex:Y,visibleToIndex:N}}case"focus-previous-option":{if(!I.focusedValue)return I;let Z=I.optionMap.get(I.focusedValue);if(!Z)return I;let l=Z.previous;while(l&&!("value"in l))l=l.previous;if(!l)return I;let b="value"in l?l.value:I.focusedValue;if(!(l.index<=I.visibleFromIndex))return{...I,focusedValue:b};let N=Math.max(0,I.visibleFromIndex-1),Y=N+I.visibleOptionCount;return{...I,focusedValue:b,visibleFromIndex:N,visibleToIndex:Y}}case"select-focused-option":return{...I,previousValue:I.value,value:I.focusedValue};case"reset":return G.state;case"set-focus":return{...I,focusedValue:G.value}}},o9I=(I)=>I.flatMap((G)=>{if("options"in G){let Z=o9I(G.options),l=Z.flatMap((W)=>("value"in W)?W.value:[]);return[...G.header!==void 0?[{header:G.header,optionValues:l}]:[],...Z]}return G}),ytG=({visibleOptionCount:I,defaultValue:G,options:Z})=>{let l=o9I(Z),b=typeof I==="number"?Math.min(I,l.length):l.length,W=new XNI(l),N=W.first,Y=N&&"value"in N?N.value:void 0;return{optionMap:W,visibleOptionCount:b,focusedValue:Y,visibleFromIndex:0,visibleToIndex:b,previousValue:G,value:G}},t9I=({visibleOptionCount:I=5,options:G,defaultValue:Z,onChange:l,onFocus:b,focusValue:W})=>{let N=o9I(G),[Y,c]=x1.useReducer(VUb,{visibleOptionCount:I,defaultValue:Z,options:G},ytG),[V,d]=x1.useState(N);if(N!==V&&!cUb(N,V))c({type:"reset",state:ytG({visibleOptionCount:I,defaultValue:Z,options:G})}),d(N);let Q=x1.useCallback(()=>{c({type:"focus-next-option"})},[]),X=x1.useCallback(()=>{c({type:"focus-previous-option"})},[]),R=x1.useCallback(()=>{c({type:"select-focused-option"})},[]),H=x1.useMemo(()=>{return N.map((h,A)=>({...h,index:A})).slice(Y.visibleFromIndex,Y.visibleToIndex)},[N,Y.visibleFromIndex,Y.visibleToIndex]);return x1.useEffect(()=>{if(Y.value&&Y.previousValue!==Y.value)l?.(Y.value)},[Y.previousValue,Y.value,G,l]),x1.useEffect(()=>{if(Y.focusedValue)b?.(Y.focusedValue)},[Y.focusedValue,b]),x1.useEffect(()=>{if(W)c({type:"set-focus",value:W})},[W]),{focusedValue:Y.focusedValue,visibleFromIndex:Y.visibleFromIndex,visibleToIndex:Y.visibleToIndex,value:Y.value,visibleOptions:H,focusNextOption:Q,focusPreviousOption:X,selectFocusedOption:R}};var r9I=a(async()=>{await ptG();x1=hI(YG(),1)});var e9I=({isDisabled:I=!1,state:G})=>{Mb((Z,l)=>{if(l.downArrow)G.focusNextOption();if(l.upArrow)G.focusPreviousOption();if(l.return)G.selectFocusedOption()},{isActive:!I})};var ILI=a(async()=>{await oG()});function JC({isDisabled:I=!1,visibleOptionCount:G=5,highlightText:Z,options:l,defaultValue:b,onChange:W,onFocus:N,focusValue:Y}){let c=t9I({visibleOptionCount:G,options:l,defaultValue:b,onChange:W,onFocus:N,focusValue:Y});e9I({isDisabled:I,state:c});let{styles:V}=aY("Select");return H6.default.createElement(GI,{...V.container()},c.visibleOptions.map((d)=>{let Q="value"in d?d.value:$9I(d),X=!I&&c.focusedValue!==void 0&&("value"in d?c.focusedValue===d.value:d.optionValues.includes(c.focusedValue)),R=!!c.value&&("value"in d?c.value===d.value:d.optionValues.includes(c.value)),H="header"in d,h="label"in d?d.label:d.header,A=h;if(Z&&h.includes(Z)){let C=h.indexOf(Z);A=H6.default.createElement(H6.default.Fragment,null,h.slice(0,C),H6.default.createElement(D,{...V.highlightedText()},Z),h.slice(C+Z.length))}return H6.default.createElement(f9I,{key:Q,isFocused:X,isSelected:R,smallPointer:H},A)}))}var H6,$9I=(I)=>`HEADER-${I.optionValues.join(",")}`;var FNI=a(async()=>{await gZ([oG(),s9I(),r9I(),ILI(),_d()]);H6=hI(YG(),1)});var RNI=a(async()=>{await gZ([FNI(),s9I(),ILI(),r9I()])});var GLI=w((dUb)=>{(function(){var I=typeof Symbol==="function"&&Symbol.for,G=I?Symbol.for("react.element"):60103,Z=I?Symbol.for("react.portal"):60106,l=I?Symbol.for("react.fragment"):60107,b=I?Symbol.for("react.strict_mode"):60108,W=I?Symbol.for("react.profiler"):60114,N=I?Symbol.for("react.provider"):60109,Y=I?Symbol.for("react.context"):60110,c=I?Symbol.for("react.async_mode"):60111,V=I?Symbol.for("react.concurrent_mode"):60111,d=I?Symbol.for("react.forward_ref"):60112,Q=I?Symbol.for("react.suspense"):60113,X=I?Symbol.for("react.suspense_list"):60120,R=I?Symbol.for("react.memo"):60115,H=I?Symbol.for("react.lazy"):60116,h=I?Symbol.for("react.block"):60121,A=I?Symbol.for("react.fundamental"):60117,C=I?Symbol.for("react.responder"):60118,g=I?Symbol.for("react.scope"):60119;function z(gI){return typeof gI==="string"||typeof gI==="function"||gI===l||gI===V||gI===W||gI===b||gI===Q||gI===X||typeof gI==="object"&&gI!==null&&(gI.$$typeof===H||gI.$$typeof===R||gI.$$typeof===N||gI.$$typeof===Y||gI.$$typeof===d||gI.$$typeof===A||gI.$$typeof===C||gI.$$typeof===g||gI.$$typeof===h)}function k(gI){if(typeof gI==="object"&&gI!==null){var DI=gI.$$typeof;switch(DI){case G:var UI=gI.type;switch(UI){case c:case V:case l:case W:case b:case Q:return UI;default:var sI=UI&&UI.$$typeof;switch(sI){case Y:case d:case H:case R:case N:return sI;default:return DI}}case Z:return DI}}return}var x=c,n=V,_=Y,lI=N,t=G,aI=d,QI=l,lG=H,uI=R,ZI=Z,zI=W,EI=b,VI=Q,JI=!1;function LI(gI){if(!JI)JI=!0,console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.");return MI(gI)||k(gI)===c}function MI(gI){return k(gI)===V}function BI(gI){return k(gI)===Y}function FG(gI){return k(gI)===N}function f(gI){return typeof gI==="object"&&gI!==null&&gI.$$typeof===G}function P(gI){return k(gI)===d}function NI(gI){return k(gI)===l}function GG(gI){return k(gI)===H}function ZG(gI){return k(gI)===R}function cG(gI){return k(gI)===Z}function bI(gI){return k(gI)===W}function dI(gI){return k(gI)===b}function CI(gI){return k(gI)===Q}dUb.AsyncMode=x,dUb.ConcurrentMode=n,dUb.ContextConsumer=_,dUb.ContextProvider=lI,dUb.Element=t,dUb.ForwardRef=aI,dUb.Fragment=QI,dUb.Lazy=lG,dUb.Memo=uI,dUb.Portal=ZI,dUb.Profiler=zI,dUb.StrictMode=EI,dUb.Suspense=VI,dUb.isAsyncMode=LI,dUb.isConcurrentMode=MI,dUb.isContextConsumer=BI,dUb.isContextProvider=FG,dUb.isElement=f,dUb.isForwardRef=P,dUb.isFragment=NI,dUb.isLazy=GG,dUb.isMemo=ZG,dUb.isPortal=cG,dUb.isProfiler=bI,dUb.isStrictMode=dI,dUb.isSuspense=CI,dUb.isValidElementType=z,dUb.typeOf=k})()});var gtG=w((X8Y,LtG)=>{var utG=Object.getOwnPropertySymbols,mUb=Object.prototype.hasOwnProperty,QUb=Object.prototype.propertyIsEnumerable;function XUb(I){if(I===null||I===void 0)throw TypeError("Object.assign cannot be called with null or undefined");return Object(I)}function FUb(){try{if(!Object.assign)return!1;var I=new String("abc");if(I[5]="de",Object.getOwnPropertyNames(I)[0]==="5")return!1;var G={};for(var Z=0;Z<10;Z++)G["_"+String.fromCharCode(Z)]=Z;var l=Object.getOwnPropertyNames(G).map(function(W){return G[W]});if(l.join("")!=="0123456789")return!1;var b={};if("abcdefghijklmnopqrst".split("").forEach(function(W){b[W]=W}),Object.keys(Object.assign({},b)).join("")!=="abcdefghijklmnopqrst")return!1;return!0}catch(W){return!1}}LtG.exports=FUb()?Object.assign:function(I,G){var Z,l=XUb(I),b;for(var W=1;W<arguments.length;W++){Z=Object(arguments[W]);for(var N in Z)if(mUb.call(Z,N))l[N]=Z[N];if(utG){b=utG(Z);for(var Y=0;Y<b.length;Y++)if(QUb.call(Z,b[Y]))l[b[Y]]=Z[b[Y]]}}return l}});var ZLI=w((F8Y,atG)=>{var RUb="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";atG.exports=RUb});var lLI=w((R8Y,ztG)=>{ztG.exports=Function.call.bind(Object.prototype.hasOwnProperty)});var UtG=w((H8Y,ktG)=>{var bLI=function(){};WLI=ZLI(),Ti={},NLI=lLI(),bLI=function(I){var G="Warning: "+I;if(typeof console<"u")console.error(G);try{throw Error(G)}catch(Z){}};var WLI,Ti,NLI;function BtG(I,G,Z,l,b){for(var W in I)if(NLI(I,W)){var N;try{if(typeof I[W]!=="function"){var Y=Error((l||"React class")+": "+Z+" type `"+W+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof I[W]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw Y.name="Invariant Violation",Y}N=I[W](G,W,l,Z,null,WLI)}catch(V){N=V}if(N&&!(N instanceof Error))bLI((l||"React class")+": type specification of "+Z+" `"+W+"` is invalid; the type checker function must return `null` or an `Error` but returned a "+typeof N+". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).");if(N instanceof Error&&!(N.message in Ti)){Ti[N.message]=!0;var c=b?b():"";bLI("Failed "+Z+" type: "+N.message+(c!=null?c:""))}}}BtG.resetWarningCache=function(){Ti={}};ktG.exports=BtG});var KtG=w((h8Y,MtG)=>{var OtG=hI(GLI()),HUb=gtG(),h6=ZLI(),YLI=lLI(),xtG=UtG(),w6=function(){};w6=function(I){var G="Warning: "+I;if(typeof console<"u")console.error(G);try{throw Error(G)}catch(Z){}};function HNI(){return null}MtG.exports=function(I,G){var Z=typeof Symbol==="function"&&Symbol.iterator,l="@@iterator";function b(uI){var ZI=uI&&(Z&&uI[Z]||uI[l]);if(typeof ZI==="function")return ZI}var W="<<anonymous>>",N={array:d("array"),bigint:d("bigint"),bool:d("boolean"),func:d("function"),number:d("number"),object:d("object"),string:d("string"),symbol:d("symbol"),any:Q(),arrayOf:X,element:R(),elementType:H(),instanceOf:h,node:z(),objectOf:C,oneOf:A,oneOfType:g,shape:x,exact:n};function Y(uI,ZI){if(uI===ZI)return uI!==0||1/uI===1/ZI;else return uI!==uI&&ZI!==ZI}function c(uI,ZI){this.message=uI,this.data=ZI&&typeof ZI==="object"?ZI:{},this.stack=""}c.prototype=Error.prototype;function V(uI){var ZI={},zI=0;function EI(JI,LI,MI,BI,FG,f,P){if(BI=BI||W,f=f||MI,P!==h6){if(G){var NI=Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");throw NI.name="Invariant Violation",NI}else if(typeof console<"u"){var GG=BI+":"+MI;if(!ZI[GG]&&zI<3)w6("You are manually calling a React.PropTypes validation function for the `"+f+"` prop on `"+BI+"`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."),ZI[GG]=!0,zI++}}if(LI[MI]==null){if(JI){if(LI[MI]===null)return new c("The "+FG+" `"+f+"` is marked as required "+("in `"+BI+"`, but its value is `null`."));return new c("The "+FG+" `"+f+"` is marked as required in "+("`"+BI+"`, but its value is `undefined`."))}return null}else return uI(LI,MI,BI,FG,f)}var VI=EI.bind(null,!1);return VI.isRequired=EI.bind(null,!0),VI}function d(uI){function ZI(zI,EI,VI,JI,LI,MI){var BI=zI[EI],FG=t(BI);if(FG!==uI){var f=aI(BI);return new c("Invalid "+JI+" `"+LI+"` of type "+("`"+f+"` supplied to `"+VI+"`, expected ")+("`"+uI+"`."),{expectedType:uI})}return null}return V(ZI)}function Q(){return V(HNI)}function X(uI){function ZI(zI,EI,VI,JI,LI){if(typeof uI!=="function")return new c("Property `"+LI+"` of component `"+VI+"` has invalid PropType notation inside arrayOf.");var MI=zI[EI];if(!Array.isArray(MI)){var BI=t(MI);return new c("Invalid "+JI+" `"+LI+"` of type "+("`"+BI+"` supplied to `"+VI+"`, expected an array."))}for(var FG=0;FG<MI.length;FG++){var f=uI(MI,FG,VI,JI,LI+"["+FG+"]",h6);if(f instanceof Error)return f}return null}return V(ZI)}function R(){function uI(ZI,zI,EI,VI,JI){var LI=ZI[zI];if(!I(LI)){var MI=t(LI);return new c("Invalid "+VI+" `"+JI+"` of type "+("`"+MI+"` supplied to `"+EI+"`, expected a single ReactElement."))}return null}return V(uI)}function H(){function uI(ZI,zI,EI,VI,JI){var LI=ZI[zI];if(!OtG.isValidElementType(LI)){var MI=t(LI);return new c("Invalid "+VI+" `"+JI+"` of type "+("`"+MI+"` supplied to `"+EI+"`, expected a single ReactElement type."))}return null}return V(uI)}function h(uI){function ZI(zI,EI,VI,JI,LI){if(!(zI[EI]instanceof uI)){var MI=uI.name||W,BI=lG(zI[EI]);return new c("Invalid "+JI+" `"+LI+"` of type "+("`"+BI+"` supplied to `"+VI+"`, expected ")+("instance of `"+MI+"`."))}return null}return V(ZI)}function A(uI){if(!Array.isArray(uI)){if(arguments.length>1)w6("Invalid arguments supplied to oneOf, expected an array, got "+arguments.length+" arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).");else w6("Invalid argument supplied to oneOf, expected an array.");return HNI}function ZI(zI,EI,VI,JI,LI){var MI=zI[EI];for(var BI=0;BI<uI.length;BI++)if(Y(MI,uI[BI]))return null;var FG=JSON.stringify(uI,function(P,NI){var GG=aI(NI);if(GG==="symbol")return String(NI);return NI});return new c("Invalid "+JI+" `"+LI+"` of value `"+String(MI)+"` "+("supplied to `"+VI+"`, expected one of "+FG+"."))}return V(ZI)}function C(uI){function ZI(zI,EI,VI,JI,LI){if(typeof uI!=="function")return new c("Property `"+LI+"` of component `"+VI+"` has invalid PropType notation inside objectOf.");var MI=zI[EI],BI=t(MI);if(BI!=="object")return new c("Invalid "+JI+" `"+LI+"` of type "+("`"+BI+"` supplied to `"+VI+"`, expected an object."));for(var FG in MI)if(YLI(MI,FG)){var f=uI(MI,FG,VI,JI,LI+"."+FG,h6);if(f instanceof Error)return f}return null}return V(ZI)}function g(uI){if(!Array.isArray(uI))return w6("Invalid argument supplied to oneOfType, expected an instance of array."),HNI;for(var ZI=0;ZI<uI.length;ZI++){var zI=uI[ZI];if(typeof zI!=="function")return w6("Invalid argument supplied to oneOfType. Expected an array of check functions, but received "+QI(zI)+" at index "+ZI+"."),HNI}function EI(VI,JI,LI,MI,BI){var FG=[];for(var f=0;f<uI.length;f++){var P=uI[f],NI=P(VI,JI,LI,MI,BI,h6);if(NI==null)return null;if(NI.data&&YLI(NI.data,"expectedType"))FG.push(NI.data.expectedType)}var GG=FG.length>0?", expected one of type ["+FG.join(", ")+"]":"";return new c("Invalid "+MI+" `"+BI+"` supplied to "+("`"+LI+"`"+GG+"."))}return V(EI)}function z(){function uI(ZI,zI,EI,VI,JI){if(!_(ZI[zI]))return new c("Invalid "+VI+" `"+JI+"` supplied to "+("`"+EI+"`, expected a ReactNode."));return null}return V(uI)}function k(uI,ZI,zI,EI,VI){return new c((uI||"React class")+": "+ZI+" type `"+zI+"."+EI+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+VI+"`.")}function x(uI){function ZI(zI,EI,VI,JI,LI){var MI=zI[EI],BI=t(MI);if(BI!=="object")return new c("Invalid "+JI+" `"+LI+"` of type `"+BI+"` "+("supplied to `"+VI+"`, expected `object`."));for(var FG in uI){var f=uI[FG];if(typeof f!=="function")return k(VI,JI,LI,FG,aI(f));var P=f(MI,FG,VI,JI,LI+"."+FG,h6);if(P)return P}return null}return V(ZI)}function n(uI){function ZI(zI,EI,VI,JI,LI){var MI=zI[EI],BI=t(MI);if(BI!=="object")return new c("Invalid "+JI+" `"+LI+"` of type `"+BI+"` "+("supplied to `"+VI+"`, expected `object`."));var FG=HUb({},zI[EI],uI);for(var f in FG){var P=uI[f];if(YLI(uI,f)&&typeof P!=="function")return k(VI,JI,LI,f,aI(P));if(!P)return new c("Invalid "+JI+" `"+LI+"` key `"+f+"` supplied to `"+VI+"`.\nBad object: "+JSON.stringify(zI[EI],null," ")+`
333
- Valid keys: `+JSON.stringify(Object.keys(uI),null," "));var NI=P(MI,f,VI,JI,LI+"."+f,h6);if(NI)return NI}return null}return V(ZI)}function _(uI){switch(typeof uI){case"number":case"string":case"undefined":return!0;case"boolean":return!uI;case"object":if(Array.isArray(uI))return uI.every(_);if(uI===null||I(uI))return!0;var ZI=b(uI);if(ZI){var zI=ZI.call(uI),EI;if(ZI!==uI.entries){while(!(EI=zI.next()).done)if(!_(EI.value))return!1}else while(!(EI=zI.next()).done){var VI=EI.value;if(VI){if(!_(VI[1]))return!1}}}else return!1;return!0;default:return!1}}function lI(uI,ZI){if(uI==="symbol")return!0;if(!ZI)return!1;if(ZI["@@toStringTag"]==="Symbol")return!0;if(typeof Symbol==="function"&&ZI instanceof Symbol)return!0;return!1}function t(uI){var ZI=typeof uI;if(Array.isArray(uI))return"array";if(uI instanceof RegExp)return"object";if(lI(ZI,uI))return"symbol";return ZI}function aI(uI){if(typeof uI>"u"||uI===null)return""+uI;var ZI=t(uI);if(ZI==="object"){if(uI instanceof Date)return"date";else if(uI instanceof RegExp)return"regexp"}return ZI}function QI(uI){var ZI=aI(uI);switch(ZI){case"array":case"object":return"an "+ZI;case"boolean":case"date":case"regexp":return"a "+ZI;default:return ZI}}function lG(uI){if(!uI.constructor||!uI.constructor.name)return W;return uI.constructor.name}return N.checkPropTypes=xtG,N.resetWarningCache=xtG.resetWarningCache,N.PropTypes=N,N}});var jtG=w((w8Y,DtG)=>{var VLI=hI(GLI());cLI=!0,DtG.exports=KtG()(VLI.isElement,cLI);var cLI});var ntG,uN,qtG;var TtG=a(()=>{ntG=process.env.TERM_PROGRAM==="Apple_Terminal",uN={};uN.cursorTo=(I,G)=>{if(typeof I!=="number")throw TypeError("The `x` argument is required");if(typeof G!=="number")return"\x1B["+(I+1)+"G";return"\x1B["+(G+1)+";"+(I+1)+"H"};uN.cursorMove=(I,G)=>{if(typeof I!=="number")throw TypeError("The `x` argument is required");let Z="";if(I<0)Z+="\x1B["+-I+"D";else if(I>0)Z+="\x1B["+I+"C";if(G<0)Z+="\x1B["+-G+"A";else if(G>0)Z+="\x1B["+G+"B";return Z};uN.cursorUp=(I=1)=>"\x1B["+I+"A";uN.cursorDown=(I=1)=>"\x1B["+I+"B";uN.cursorForward=(I=1)=>"\x1B["+I+"C";uN.cursorBackward=(I=1)=>"\x1B["+I+"D";uN.cursorLeft="\x1B[G";uN.cursorSavePosition=ntG?"\x1B7":"\x1B[s";uN.cursorRestorePosition=ntG?"\x1B8":"\x1B[u";uN.cursorGetPosition="\x1B[6n";uN.cursorNextLine="\x1B[E";uN.cursorPrevLine="\x1B[F";uN.cursorHide="\x1B[?25l";uN.cursorShow="\x1B[?25h";uN.eraseLines=(I)=>{let G="";for(let Z=0;Z<I;Z++)G+=uN.eraseLine+(Z<I-1?uN.cursorUp():"");if(I)G+=uN.cursorLeft;return G};uN.eraseEndLine="\x1B[K";uN.eraseStartLine="\x1B[1K";uN.eraseLine="\x1B[2K";uN.eraseDown="\x1B[J";uN.eraseUp="\x1B[1J";uN.eraseScreen="\x1B[2J";uN.scrollUp="\x1B[S";uN.scrollDown="\x1B[T";uN.clearScreen="\x1Bc";uN.clearTerminal=process.platform==="win32"?`${uN.eraseScreen}\x1B[0f`:`${uN.eraseScreen}\x1B[3J\x1B[H`;uN.beep="\x07";uN.link=(I,G)=>{return["\x1B]","8",";",";",G,"\x07",I,"\x1B]","8",";",";","\x07"].join("")};uN.image=(I,G={})=>{let Z="\x1B]1337;File=inline=1";if(G.width)Z+=`;width=${G.width}`;if(G.height)Z+=`;height=${G.height}`;if(G.preserveAspectRatio===!1)Z+=";preserveAspectRatio=0";return Z+":"+I.toString("base64")+"\x07"};uN.iTerm={setCwd:(I=process.cwd())=>`\x1B]50;CurrentDir=${I}\x07`,annotation:(I,G={})=>{let Z="\x1B]1337;",l=typeof G.x<"u",b=typeof G.y<"u";if((l||b)&&!(l&&b&&typeof G.length<"u"))throw Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");if(I=I.replace(/\|/g,""),Z+=G.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",G.length>0)Z+=(l?[I,G.length,G.x,G.y]:[G.length,I]).join("|");else Z+=I;return Z+"\x07"}};qtG=uN});var PtG=w((E8Y,itG)=>{var hUb=re(),J6=z5I();function StG(I){if(/^\d{3,4}$/.test(I)){let Z=/(\d{1,2})(\d{2})/.exec(I);return{major:0,minor:parseInt(Z[1],10),patch:parseInt(Z[2],10)}}let G=(I||"").split(".").map((Z)=>parseInt(Z,10));return{major:G[0],minor:G[1],patch:G[2]}}function dLI(I){let{env:G}=process;if("FORCE_HYPERLINK"in G)return!(G.FORCE_HYPERLINK.length>0&&parseInt(G.FORCE_HYPERLINK,10)===0);if(J6("no-hyperlink")||J6("no-hyperlinks")||J6("hyperlink=false")||J6("hyperlink=never"))return!1;if(J6("hyperlink=true")||J6("hyperlink=always"))return!0;if("NETLIFY"in G)return!0;if(!hUb.supportsColor(I))return!1;if(I&&!I.isTTY)return!1;if(process.platform==="win32")return!1;if("CI"in G)return!1;if("TEAMCITY_VERSION"in G)return!1;if("TERM_PROGRAM"in G){let Z=StG(G.TERM_PROGRAM_VERSION);switch(G.TERM_PROGRAM){case"iTerm.app":if(Z.major===3)return Z.minor>=1;return Z.major>3;case"WezTerm":return Z.major>=20200620;case"vscode":return Z.major>1||Z.major===1&&Z.minor>=72}}if("VTE_VERSION"in G){if(G.VTE_VERSION==="0.50.0")return!1;let Z=StG(G.VTE_VERSION);return Z.major>0||Z.minor>=50}return!1}itG.exports={supportsHyperlink:dLI,stdout:dLI(process.stdout),stderr:dLI(process.stderr)}});function fz(I,G,{target:Z="stdout",...l}={}){if(!hNI.default[Z]){if(l.fallback===!1)return I;return typeof l.fallback==="function"?l.fallback(I,G):`${I} (​${G}​)`}return qtG.link(I,G)}var hNI;var _tG=a(()=>{TtG();hNI=hI(PtG(),1);fz.isSupported=hNI.default.stdout;fz.stderr=(I,G,Z={})=>fz(I,G,{target:"stderr",...Z});fz.stderr.isSupported=hNI.default.stderr});var mLI,sz,ftG=({children:I,url:G,fallback:Z=!0})=>mLI.default.createElement(ebI,{transform:(l)=>fz(l,G,{fallback:Z})},mLI.default.createElement(D,null,I)),ou;var Si=a(async()=>{_tG();await oG();mLI=hI(YG(),1),sz=hI(jtG(),1);ftG.propTypes={children:sz.default.oneOfType([sz.default.arrayOf(sz.default.node),sz.default.node]).isRequired,url:sz.default.string.isRequired,fallback:sz.default.bool};ou=ftG});function tu({url:I,children:G}){let Z=wUb.includes(sl.terminal??""),l=G||I;if(Z||l!==I)return wNI.default.createElement(ou,{url:I},wNI.default.createElement(D,null,l));else return wNI.default.createElement(D,{underline:!0},l)}var wNI,wUb;var JNI=a(async()=>{k2();await gZ([Si(),oG()]);wNI=hI(YG(),1),wUb=["iTerm.app","WezTerm","Hyper","VSCode"]});function stG({onDone:I}){return Mb((G,Z)=>{if(Z.ctrl&&(G==="c"||G==="d")||Z.escape)I()}),ru.default.createElement(GI,{flexDirection:"column",borderStyle:"round",padding:1,borderColor:dG().secondaryBorder},ru.default.createElement(GI,{marginBottom:1,flexDirection:"column"},ru.default.createElement(D,{bold:!0},"You've spent $5 on the Anthropic API this session."),ru.default.createElement(D,null,"Learn more about how to monitor your spending:"),ru.default.createElement(tu,{url:"https://docs.anthropic.com/s/claude-code-cost"})),ru.default.createElement(GI,null,ru.default.createElement(JC,{options:[{value:"ok",label:"Got it, thanks!"}],onChange:I})))}var ru;var $tG=a(async()=>{yl();await gZ([oG(),RNI(),JNI()]);ru=hI(YG(),1)});function JUb(){if(otG)return;otG=!0,process.stdout.on("resize",()=>{for(let I of QLI)I()})}function NY(){let[I,G]=ANI.useState({columns:process.stdout.columns||80,rows:process.stdout.rows||24});return ANI.useEffect(()=>{function Z(){G({columns:process.stdout.columns||80,rows:process.stdout.rows||24})}return JUb(),QLI.add(Z),()=>{QLI.delete(Z)}},[]),I}var ANI,QLI,otG=!1;var VX=a(()=>{ANI=hI(YG(),1),QLI=new Set});function AUb(I,G,Z){let l=(N)=>({r:parseInt(N.slice(1,3),16),g:parseInt(N.slice(3,5),16),b:parseInt(N.slice(5,7),16)}),b=l(I),W=l(G);return Array.from({length:Z},(N,Y)=>{let c=Z===1?0:Y/(Z-1),V=Math.round(b.r+(W.r-b.r)*c),d=Math.round(b.g+(W.g-b.g)*c),Q=Math.round(b.b+(W.b-b.b)*c);return`#${V.toString(16).padStart(2,"0")}${d.toString(16).padStart(2,"0")}${Q.toString(16).padStart(2,"0")}`})}function ENI(){let I=dG(),Z=I.claude==="#ff9933"||I.claude==="#006699"||I.claude==="#3399ff"?XLI.map(()=>I.claude):AUb(ttG[0],ttG[4],XLI.length);return FLI.default.createElement(GI,{flexDirection:"column",alignItems:"flex-start"},XLI.map((l,b)=>FLI.default.createElement(D,{key:b,color:Z[b]},l)))}var FLI,XLI,ttG;var RLI=a(async()=>{yl();await oG();FLI=hI(YG(),1),XLI=[" ██████╗ ██╗ ██╗","██╔═══██╗██║ ██║","██║ ██║██║ █╗ ██║","╚██████╔╝╚███╔███╔╝"," ╚═══▀▀╝ ╚══╝╚══╝"],ttG=["#D97757","#DC8555","#E09353","#E49E4E","#E8A849"]});function EUb(I,G){if(I.length<=G)return I;return"..."+I.slice(I.length-G+3)}function rtG({mcpClients:I,theme:G}){if(!I.length)return null;return $G.createElement(D,null,$G.createElement(D,{color:G.secondaryText},"MCP: "),I.map((Z,l)=>$G.createElement($G.Fragment,{key:l},l>0&&$G.createElement(D,{color:G.secondaryText}," · "),$G.createElement(D,{color:G.secondaryText},Z.name," "),$G.createElement(D,{bold:!0,color:Z.type==="connected"?G.success:G.error},Z.type==="connected"?"✓":"✗"))))}function etG({mcpClients:I,isDefaultModel:G=!1}){let{columns:Z}=NY(),l=Z>=80,b=dG(),W=process.env.ANTHROPIC_MODEL,Y=rZ().model,c=Bh(),V=!IbI(),d=!G&&Boolean(W),Q=process.env.USER_TYPE==="ant"&&Boolean(V||process.env.DISABLE_PROMPT_CACHING||process.env.API_TIMEOUT_MS||process.env.MAX_THINKING_TOKENS||process.env.ANTHROPIC_BASE_URL||d),X="1.3.2",R=Y||W||"claude-sonnet-4-5-20250929",H=bZ(),h=l?Z-30:Z-12,A=EUb(H,h),C=l?Math.min(Z-2,Math.max(78,H.length+12)):Math.max(HLI,Math.min(Z-2,H.length+12));if(l)return $G.createElement(GI,{flexDirection:"column"},$G.createElement(GI,{borderColor:b.claude,borderStyle:"round",flexDirection:"column",paddingLeft:1,paddingRight:1,width:C},$G.createElement(GI,{flexDirection:"row",gap:3,paddingTop:0},$G.createElement(GI,{flexDirection:"column",justifyContent:"center"},$G.createElement(ENI,null)),$G.createElement(GI,{flexDirection:"column",justifyContent:"center",gap:0},$G.createElement(D,null,$G.createElement(D,{bold:!0,color:b.claude},yN),$G.createElement(D,{color:b.secondaryText}," v","1.3.2")),$G.createElement(D,{color:b.secondaryText},R),$G.createElement(D,{color:b.secondaryText,italic:!0},"/help for help"),$G.createElement(D,null," "),$G.createElement(D,{color:b.secondaryText},"cwd: ",A))),Q&&$G.createElement(GI,{borderColor:b.secondaryBorder,borderStyle:"single",borderBottom:!1,borderLeft:!1,borderRight:!1,borderTop:!0,flexDirection:"column",marginLeft:2,marginRight:1,paddingTop:1},$G.createElement(GI,{marginBottom:1},$G.createElement(D,{color:b.secondaryText},"Overrides (via env):")),d&&$G.createElement(D,{color:b.secondaryText},"• Model: ",$G.createElement(D,{bold:!0},W)),V&&c?$G.createElement(D,{color:b.secondaryText},"• API Key: ",$G.createElement(D,{bold:!0},"sk-ant-…",c.slice(-C+25))):null,process.env.DISABLE_PROMPT_CACHING?$G.createElement(D,{color:b.secondaryText},"• Prompt caching:"," ",$G.createElement(D,{color:b.error,bold:!0},"off")):null,process.env.API_TIMEOUT_MS?$G.createElement(D,{color:b.secondaryText},"• API timeout: ",$G.createElement(D,{bold:!0},process.env.API_TIMEOUT_MS,"ms")):null,process.env.MAX_THINKING_TOKENS?$G.createElement(D,{color:b.secondaryText},"• Max thinking tokens: ",$G.createElement(D,{bold:!0},process.env.MAX_THINKING_TOKENS)):null,process.env.ANTHROPIC_BASE_URL?$G.createElement(D,{color:b.secondaryText},"• API Base URL: ",$G.createElement(D,{bold:!0},process.env.ANTHROPIC_BASE_URL)):null),I.length?$G.createElement(GI,{borderColor:b.secondaryBorder,borderStyle:"single",borderBottom:!1,borderLeft:!1,borderRight:!1,borderTop:!0,flexDirection:"row",marginLeft:1,marginRight:1,paddingTop:1,paddingBottom:0},$G.createElement(rtG,{mcpClients:I,theme:b})):null));return $G.createElement(GI,{flexDirection:"column"},$G.createElement(GI,{borderColor:b.claude,borderStyle:"round",flexDirection:"column",gap:1,paddingLeft:1,width:C},$G.createElement(D,null,$G.createElement(D,{color:b.claude},"✦")," ",$G.createElement(D,{bold:!0},yN),$G.createElement(D,{color:b.secondaryText}," v","1.3.2")),$G.createElement(GI,{paddingLeft:2,flexDirection:"column",gap:1},$G.createElement(D,{color:b.secondaryText},R),$G.createElement(D,{color:b.secondaryText,italic:!0},"/help for help"),$G.createElement(D,{color:b.secondaryText},"cwd: ",A)),Q&&$G.createElement(GI,{borderColor:b.secondaryBorder,borderStyle:"single",borderBottom:!1,borderLeft:!1,borderRight:!1,borderTop:!0,flexDirection:"column",marginLeft:2,marginRight:1,paddingTop:1},$G.createElement(GI,{marginBottom:1},$G.createElement(D,{color:b.secondaryText},"Overrides (via env):")),d&&$G.createElement(D,{color:b.secondaryText},"• Model: ",$G.createElement(D,{bold:!0},W)),V&&c?$G.createElement(D,{color:b.secondaryText},"• API Key: ",$G.createElement(D,{bold:!0},"sk-ant-…",c.slice(-C+25))):null,process.env.DISABLE_PROMPT_CACHING?$G.createElement(D,{color:b.secondaryText},"• Prompt caching:"," ",$G.createElement(D,{color:b.error,bold:!0},"off")):null,process.env.API_TIMEOUT_MS?$G.createElement(D,{color:b.secondaryText},"• API timeout: ",$G.createElement(D,{bold:!0},process.env.API_TIMEOUT_MS,"ms")):null,process.env.MAX_THINKING_TOKENS?$G.createElement(D,{color:b.secondaryText},"• Max thinking tokens: ",$G.createElement(D,{bold:!0},process.env.MAX_THINKING_TOKENS)):null,process.env.ANTHROPIC_BASE_URL?$G.createElement(D,{color:b.secondaryText},"• API Base URL: ",$G.createElement(D,{bold:!0},process.env.ANTHROPIC_BASE_URL)):null),I.length?$G.createElement(GI,{borderColor:b.secondaryBorder,borderStyle:"single",borderBottom:!1,borderLeft:!1,borderRight:!1,borderTop:!0,flexDirection:"row",flexWrap:"wrap",marginLeft:1,marginRight:1,paddingTop:1,paddingBottom:0},$G.createElement(rtG,{mcpClients:I,theme:b})):null))}var $G,HLI=46;var hLI=a(async()=>{yl();MW();QW();VX();await gZ([oG(),RLI()]);$G=hI(YG(),1)});var NN,wLI,$Z,g4=(I)=>{switch(typeof I){case"undefined":return $Z.undefined;case"string":return $Z.string;case"number":return Number.isNaN(I)?$Z.nan:$Z.number;case"boolean":return $Z.boolean;case"function":return $Z.function;case"bigint":return $Z.bigint;case"symbol":return $Z.symbol;case"object":if(Array.isArray(I))return $Z.array;if(I===null)return $Z.null;if(I.then&&typeof I.then==="function"&&I.catch&&typeof I.catch==="function")return $Z.promise;if(typeof Map<"u"&&I instanceof Map)return $Z.map;if(typeof Set<"u"&&I instanceof Set)return $Z.set;if(typeof Date<"u"&&I instanceof Date)return $Z.date;return $Z.object;default:return $Z.unknown}};var ii=a(()=>{(function(I){I.assertEqual=(b)=>{};function G(b){}I.assertIs=G;function Z(b){throw Error()}I.assertNever=Z,I.arrayToEnum=(b)=>{let W={};for(let N of b)W[N]=N;return W},I.getValidEnumValues=(b)=>{let W=I.objectKeys(b).filter((Y)=>typeof b[b[Y]]!=="number"),N={};for(let Y of W)N[Y]=b[Y];return I.objectValues(N)},I.objectValues=(b)=>{return I.objectKeys(b).map(function(W){return b[W]})},I.objectKeys=typeof Object.keys==="function"?(b)=>Object.keys(b):(b)=>{let W=[];for(let N in b)if(Object.prototype.hasOwnProperty.call(b,N))W.push(N);return W},I.find=(b,W)=>{for(let N of b)if(W(N))return N;return},I.isInteger=typeof Number.isInteger==="function"?(b)=>Number.isInteger(b):(b)=>typeof b==="number"&&Number.isFinite(b)&&Math.floor(b)===b;function l(b,W=" | "){return b.map((N)=>typeof N==="string"?`'${N}'`:N).join(W)}I.joinValues=l,I.jsonStringifyReplacer=(b,W)=>{if(typeof W==="bigint")return W.toString();return W}})(NN||(NN={}));(function(I){I.mergeShapes=(G,Z)=>{return{...G,...Z}}})(wLI||(wLI={}));$Z=NN.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"])});var BZ,vUb=(I)=>{return JSON.stringify(I,null,2).replace(/"([^"]+)":/g,"$1:")},O1;var vNI=a(()=>{ii();BZ=NN.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);O1=class O1 extends Error{get errors(){return this.issues}constructor(I){super();this.issues=[],this.addIssue=(Z)=>{this.issues=[...this.issues,Z]},this.addIssues=(Z=[])=>{this.issues=[...this.issues,...Z]};let G=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,G);else this.__proto__=G;this.name="ZodError",this.issues=I}format(I){let G=I||function(b){return b.message},Z={_errors:[]},l=(b)=>{for(let W of b.issues)if(W.code==="invalid_union")W.unionErrors.map(l);else if(W.code==="invalid_return_type")l(W.returnTypeError);else if(W.code==="invalid_arguments")l(W.argumentsError);else if(W.path.length===0)Z._errors.push(G(W));else{let N=Z,Y=0;while(Y<W.path.length){let c=W.path[Y];if(Y!==W.path.length-1)N[c]=N[c]||{_errors:[]};else N[c]=N[c]||{_errors:[]},N[c]._errors.push(G(W));N=N[c],Y++}}};return l(this),Z}static assert(I){if(!(I instanceof O1))throw Error(`Not a ZodError: ${I}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,NN.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(I=(G)=>G.message){let G={},Z=[];for(let l of this.issues)if(l.path.length>0){let b=l.path[0];G[b]=G[b]||[],G[b].push(I(l))}else Z.push(I(l));return{formErrors:Z,fieldErrors:G}}get formErrors(){return this.flatten()}};O1.create=(I)=>{return new O1(I)}});var CUb=(I,G)=>{let Z;switch(I.code){case BZ.invalid_type:if(I.received===$Z.undefined)Z="Required";else Z=`Expected ${I.expected}, received ${I.received}`;break;case BZ.invalid_literal:Z=`Invalid literal value, expected ${JSON.stringify(I.expected,NN.jsonStringifyReplacer)}`;break;case BZ.unrecognized_keys:Z=`Unrecognized key(s) in object: ${NN.joinValues(I.keys,", ")}`;break;case BZ.invalid_union:Z="Invalid input";break;case BZ.invalid_union_discriminator:Z=`Invalid discriminator value. Expected ${NN.joinValues(I.options)}`;break;case BZ.invalid_enum_value:Z=`Invalid enum value. Expected ${NN.joinValues(I.options)}, received '${I.received}'`;break;case BZ.invalid_arguments:Z="Invalid function arguments";break;case BZ.invalid_return_type:Z="Invalid function return type";break;case BZ.invalid_date:Z="Invalid date";break;case BZ.invalid_string:if(typeof I.validation==="object")if("includes"in I.validation){if(Z=`Invalid input: must include "${I.validation.includes}"`,typeof I.validation.position==="number")Z=`${Z} at one or more positions greater than or equal to ${I.validation.position}`}else if("startsWith"in I.validation)Z=`Invalid input: must start with "${I.validation.startsWith}"`;else if("endsWith"in I.validation)Z=`Invalid input: must end with "${I.validation.endsWith}"`;else NN.assertNever(I.validation);else if(I.validation!=="regex")Z=`Invalid ${I.validation}`;else Z="Invalid";break;case BZ.too_small:if(I.type==="array")Z=`Array must contain ${I.exact?"exactly":I.inclusive?"at least":"more than"} ${I.minimum} element(s)`;else if(I.type==="string")Z=`String must contain ${I.exact?"exactly":I.inclusive?"at least":"over"} ${I.minimum} character(s)`;else if(I.type==="number")Z=`Number must be ${I.exact?"exactly equal to ":I.inclusive?"greater than or equal to ":"greater than "}${I.minimum}`;else if(I.type==="bigint")Z=`Number must be ${I.exact?"exactly equal to ":I.inclusive?"greater than or equal to ":"greater than "}${I.minimum}`;else if(I.type==="date")Z=`Date must be ${I.exact?"exactly equal to ":I.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(I.minimum))}`;else Z="Invalid input";break;case BZ.too_big:if(I.type==="array")Z=`Array must contain ${I.exact?"exactly":I.inclusive?"at most":"less than"} ${I.maximum} element(s)`;else if(I.type==="string")Z=`String must contain ${I.exact?"exactly":I.inclusive?"at most":"under"} ${I.maximum} character(s)`;else if(I.type==="number")Z=`Number must be ${I.exact?"exactly":I.inclusive?"less than or equal to":"less than"} ${I.maximum}`;else if(I.type==="bigint")Z=`BigInt must be ${I.exact?"exactly":I.inclusive?"less than or equal to":"less than"} ${I.maximum}`;else if(I.type==="date")Z=`Date must be ${I.exact?"exactly":I.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(I.maximum))}`;else Z="Invalid input";break;case BZ.custom:Z="Invalid input";break;case BZ.invalid_intersection_types:Z="Intersection results could not be merged";break;case BZ.not_multiple_of:Z=`Number must be a multiple of ${I.multipleOf}`;break;case BZ.not_finite:Z="Number must be finite";break;default:Z=G.defaultError,NN.assertNever(I)}return{message:Z}},AC;var JLI=a(()=>{vNI();ii();AC=CUb});function pUb(I){IrG=I}function A6(){return IrG}var IrG;var CNI=a(()=>{JLI();IrG=AC});function Ql(I,G){let Z=A6(),l=Pi({issueData:G,data:I.data,path:I.path,errorMaps:[I.common.contextualErrorMap,I.schemaErrorMap,Z,Z===AC?void 0:AC].filter((b)=>!!b)});I.common.issues.push(l)}class em{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray(I,G){let Z=[];for(let l of G){if(l.status==="aborted")return fb;if(l.status==="dirty")I.dirty();Z.push(l.value)}return{status:I.value,value:Z}}static async mergeObjectAsync(I,G){let Z=[];for(let l of G){let b=await l.key,W=await l.value;Z.push({key:b,value:W})}return em.mergeObjectSync(I,Z)}static mergeObjectSync(I,G){let Z={};for(let l of G){let{key:b,value:W}=l;if(b.status==="aborted")return fb;if(W.status==="aborted")return fb;if(b.status==="dirty")I.dirty();if(W.status==="dirty")I.dirty();if(b.value!=="__proto__"&&(typeof W.value<"u"||l.alwaysSet))Z[b.value]=W.value}return{status:I.value,value:Z}}}var Pi=(I)=>{let{data:G,path:Z,errorMaps:l,issueData:b}=I,W=[...Z,...b.path||[]],N={...b,path:W};if(b.message!==void 0)return{...b,path:W,message:b.message};let Y="",c=l.filter((V)=>!!V).slice().reverse();for(let V of c)Y=V(N,{data:G,defaultError:Y}).message;return{...b,path:W,message:Y}},yUb,fb,$z=(I)=>({status:"dirty",value:I}),dX=(I)=>({status:"valid",value:I}),pNI=(I)=>I.status==="aborted",yNI=(I)=>I.status==="dirty",eu=(I)=>I.status==="valid",E6=(I)=>typeof Promise<"u"&&I instanceof Promise;var ALI=a(()=>{CNI();JLI();yUb=[];fb=Object.freeze({status:"aborted"})});var GrG=()=>{};var el;var ZrG=a(()=>{(function(I){I.errToObj=(G)=>typeof G==="string"?{message:G}:G||{},I.toString=(G)=>typeof G==="string"?G:G?.message})(el||(el={}))});class _5{constructor(I,G,Z,l){this._cachedPath=[],this.parent=I,this.data=G,this._path=Z,this._key=l}get path(){if(!this._cachedPath.length)if(Array.isArray(this._key))this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}function LW(I){if(!I)return{};let{errorMap:G,invalid_type_error:Z,required_error:l,description:b}=I;if(G&&(Z||l))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(G)return{errorMap:G,description:b};return{errorMap:(N,Y)=>{let{message:c}=I;if(N.code==="invalid_enum_value")return{message:c??Y.defaultError};if(typeof Y.data>"u")return{message:c??l??Y.defaultError};if(N.code!=="invalid_type")return{message:Y.defaultError};return{message:c??Z??Y.defaultError}},description:b}}class oW{get description(){return this._def.description}_getType(I){return g4(I.data)}_getOrReturnCtx(I,G){return G||{common:I.parent.common,data:I.data,parsedType:g4(I.data),schemaErrorMap:this._def.errorMap,path:I.path,parent:I.parent}}_processInputParams(I){return{status:new em,ctx:{common:I.parent.common,data:I.data,parsedType:g4(I.data),schemaErrorMap:this._def.errorMap,path:I.path,parent:I.parent}}}_parseSync(I){let G=this._parse(I);if(E6(G))throw Error("Synchronous parse encountered promise.");return G}_parseAsync(I){let G=this._parse(I);return Promise.resolve(G)}parse(I,G){let Z=this.safeParse(I,G);if(Z.success)return Z.data;throw Z.error}safeParse(I,G){let Z={common:{issues:[],async:G?.async??!1,contextualErrorMap:G?.errorMap},path:G?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:I,parsedType:g4(I)},l=this._parseSync({data:I,path:Z.path,parent:Z});return lrG(Z,l)}"~validate"(I){let G={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:I,parsedType:g4(I)};if(!this["~standard"].async)try{let Z=this._parseSync({data:I,path:[],parent:G});return eu(Z)?{value:Z.value}:{issues:G.common.issues}}catch(Z){if(Z?.message?.toLowerCase()?.includes("encountered"))this["~standard"].async=!0;G.common={issues:[],async:!0}}return this._parseAsync({data:I,path:[],parent:G}).then((Z)=>eu(Z)?{value:Z.value}:{issues:G.common.issues})}async parseAsync(I,G){let Z=await this.safeParseAsync(I,G);if(Z.success)return Z.data;throw Z.error}async safeParseAsync(I,G){let Z={common:{issues:[],contextualErrorMap:G?.errorMap,async:!0},path:G?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:I,parsedType:g4(I)},l=this._parse({data:I,path:Z.path,parent:Z}),b=await(E6(l)?l:Promise.resolve(l));return lrG(Z,b)}refine(I,G){let Z=(l)=>{if(typeof G==="string"||typeof G>"u")return{message:G};else if(typeof G==="function")return G(l);else return G};return this._refinement((l,b)=>{let W=I(l),N=()=>b.addIssue({code:BZ.custom,...Z(l)});if(typeof Promise<"u"&&W instanceof Promise)return W.then((Y)=>{if(!Y)return N(),!1;else return!0});if(!W)return N(),!1;else return!0})}refinement(I,G){return this._refinement((Z,l)=>{if(!I(Z))return l.addIssue(typeof G==="function"?G(Z,l):G),!1;else return!0})}_refinement(I){return new f5({schema:this,typeName:kZ.ZodEffects,effect:{type:"refinement",refinement:I}})}superRefine(I){return this._refinement(I)}constructor(I){this.spa=this.safeParseAsync,this._def=I,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:(G)=>this["~validate"](G)}}optional(){return P5.create(this,this._def)}nullable(){return vC.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return i5.create(this)}promise(){return ez.create(this,this._def)}or(I){return L6.create([this,I],this._def)}and(I){return g6.create(this,I,this._def)}transform(I){return new f5({...LW(this._def),schema:this,typeName:kZ.ZodEffects,effect:{type:"transform",transform:I}})}default(I){let G=typeof I==="function"?I:()=>I;return new k6({...LW(this._def),innerType:this,defaultValue:G,typeName:kZ.ZodDefault})}brand(){return new LNI({typeName:kZ.ZodBranded,type:this,...LW(this._def)})}catch(I){let G=typeof I==="function"?I:()=>I;return new U6({...LW(this._def),innerType:this,catchValue:G,typeName:kZ.ZodCatch})}describe(I){return new this.constructor({...this._def,description:I})}pipe(I){return ti.create(this,I)}readonly(){return x6.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}function NrG(I){let G="[0-5]\\d";if(I.precision)G=`${G}\\.\\d{${I.precision}}`;else if(I.precision==null)G=`${G}(\\.\\d+)?`;let Z=I.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${G})${Z}`}function TUb(I){return new RegExp(`^${NrG(I)}$`)}function YrG(I){let G=`${WrG}T${NrG(I)}`,Z=[];if(Z.push(I.local?"Z?":"Z"),I.offset)Z.push("([+-]\\d{2}:?\\d{2})");return G=`${G}(${Z.join("|")})`,new RegExp(`^${G}$`)}function SUb(I,G){if((G==="v4"||!G)&&OUb.test(I))return!0;if((G==="v6"||!G)&&KUb.test(I))return!0;return!1}function iUb(I,G){if(!BUb.test(I))return!1;try{let[Z]=I.split(".");if(!Z)return!1;let l=Z.replace(/-/g,"+").replace(/_/g,"/").padEnd(Z.length+(4-Z.length%4)%4,"="),b=JSON.parse(atob(l));if(typeof b!=="object"||b===null)return!1;if("typ"in b&&b?.typ!=="JWT")return!1;if(!b.alg)return!1;if(G&&b.alg!==G)return!1;return!0}catch{return!1}}function PUb(I,G){if((G==="v4"||!G)&&MUb.test(I))return!0;if((G==="v6"||!G)&&DUb.test(I))return!0;return!1}function _Ub(I,G){let Z=(I.toString().split(".")[1]||"").length,l=(G.toString().split(".")[1]||"").length,b=Z>l?Z:l,W=Number.parseInt(I.toFixed(b).replace(".","")),N=Number.parseInt(G.toFixed(b).replace(".",""));return W%N/10**b}function v6(I){if(I instanceof Z2){let G={};for(let Z in I.shape){let l=I.shape[Z];G[Z]=P5.create(v6(l))}return new Z2({...I._def,shape:()=>G})}else if(I instanceof i5)return new i5({...I._def,type:v6(I.element)});else if(I instanceof P5)return P5.create(v6(I.unwrap()));else if(I instanceof vC)return vC.create(v6(I.unwrap()));else if(I instanceof z4)return z4.create(I.items.map((G)=>v6(G)));else return I}function vLI(I,G){let Z=g4(I),l=g4(G);if(I===G)return{valid:!0,data:I};else if(Z===$Z.object&&l===$Z.object){let b=NN.objectKeys(G),W=NN.objectKeys(I).filter((Y)=>b.indexOf(Y)!==-1),N={...I,...G};for(let Y of W){let c=vLI(I[Y],G[Y]);if(!c.valid)return{valid:!1};N[Y]=c.data}return{valid:!0,data:N}}else if(Z===$Z.array&&l===$Z.array){if(I.length!==G.length)return{valid:!1};let b=[];for(let W=0;W<I.length;W++){let N=I[W],Y=G[W],c=vLI(N,Y);if(!c.valid)return{valid:!1};b.push(c.data)}return{valid:!0,data:b}}else if(Z===$Z.date&&l===$Z.date&&+I===+G)return{valid:!0,data:I};else return{valid:!1}}function crG(I,G){return new l9({values:I,typeName:kZ.ZodEnum,...LW(G)})}function brG(I,G){let Z=typeof I==="function"?I(G):typeof I==="string"?{message:I}:I;return typeof Z==="string"?{message:Z}:Z}function VrG(I,G={},Z){if(I)return tz.create().superRefine((l,b)=>{let W=I(l);if(W instanceof Promise)return W.then((N)=>{if(!N){let Y=brG(G,l),c=Y.fatal??Z??!0;b.addIssue({code:"custom",...Y,fatal:c})}});if(!W){let N=brG(G,l),Y=N.fatal??Z??!0;b.addIssue({code:"custom",...N,fatal:Y})}return});return tz.create()}var lrG=(I,G)=>{if(eu(G))return{success:!0,data:G.value};else{if(!I.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let Z=new O1(I.common.issues);return this._error=Z,this._error}}}},uUb,LUb,gUb,aUb,zUb,BUb,kUb,UUb,xUb="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",ELI,OUb,MUb,KUb,DUb,jUb,nUb,WrG="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",qUb,S5,G9,Z9,p6,oz,_i,y6,u6,tz,I9,a4,fi,i5,Z2,L6,EC=(I)=>{if(I instanceof a6)return EC(I.schema);else if(I instanceof f5)return EC(I.innerType());else if(I instanceof z6)return[I.value];else if(I instanceof l9)return I.options;else if(I instanceof B6)return NN.objectValues(I.enum);else if(I instanceof k6)return EC(I._def.innerType);else if(I instanceof y6)return[void 0];else if(I instanceof u6)return[null];else if(I instanceof P5)return[void 0,...EC(I.unwrap())];else if(I instanceof vC)return[null,...EC(I.unwrap())];else if(I instanceof LNI)return EC(I.unwrap());else if(I instanceof x6)return EC(I.unwrap());else if(I instanceof U6)return EC(I._def.innerType);else return[]},uNI,g6,z4,si,$i,rz,C6,a6,z6,l9,B6,ez,f5,P5,vC,k6,U6,oi,fUb,LNI,ti,x6,sUb,kZ,$Ub=(I,G={message:`Input not instance of ${I.name}`})=>VrG((Z)=>Z instanceof I,G),drG,mrG,oUb,tUb,QrG,rUb,eUb,Ixb,Gxb,Zxb,lxb,bxb,Wxb,Nxb,Yxb,cxb,Vxb,dxb,mxb,Qxb,Xxb,Fxb,Rxb,Hxb,hxb,wxb,Jxb,Axb,Exb,vxb,Cxb,pxb,yxb,uxb,Lxb=()=>drG().optional(),gxb=()=>mrG().optional(),axb=()=>QrG().optional(),zxb,Bxb;var XrG=a(()=>{vNI();CNI();ZrG();ALI();ii();uUb=/^c[^\s-]{8,}$/i,LUb=/^[0-9a-z]+$/,gUb=/^[0-9A-HJKMNP-TV-Z]{26}$/i,aUb=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,zUb=/^[a-z0-9_-]{21}$/i,BUb=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,kUb=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,UUb=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,OUb=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,MUb=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,KUb=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,DUb=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,jUb=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,nUb=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,qUb=new RegExp(`^${WrG}$`);S5=class S5 extends oW{_parse(I){if(this._def.coerce)I.data=String(I.data);if(this._getType(I)!==$Z.string){let b=this._getOrReturnCtx(I);return Ql(b,{code:BZ.invalid_type,expected:$Z.string,received:b.parsedType}),fb}let Z=new em,l=void 0;for(let b of this._def.checks)if(b.kind==="min"){if(I.data.length<b.value)l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.too_small,minimum:b.value,type:"string",inclusive:!0,exact:!1,message:b.message}),Z.dirty()}else if(b.kind==="max"){if(I.data.length>b.value)l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.too_big,maximum:b.value,type:"string",inclusive:!0,exact:!1,message:b.message}),Z.dirty()}else if(b.kind==="length"){let W=I.data.length>b.value,N=I.data.length<b.value;if(W||N){if(l=this._getOrReturnCtx(I,l),W)Ql(l,{code:BZ.too_big,maximum:b.value,type:"string",inclusive:!0,exact:!0,message:b.message});else if(N)Ql(l,{code:BZ.too_small,minimum:b.value,type:"string",inclusive:!0,exact:!0,message:b.message});Z.dirty()}}else if(b.kind==="email"){if(!UUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"email",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="emoji"){if(!ELI)ELI=new RegExp(xUb,"u");if(!ELI.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"emoji",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="uuid"){if(!aUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"uuid",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="nanoid"){if(!zUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"nanoid",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="cuid"){if(!uUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"cuid",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="cuid2"){if(!LUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"cuid2",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="ulid"){if(!gUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"ulid",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="url")try{new URL(I.data)}catch{l=this._getOrReturnCtx(I,l),Ql(l,{validation:"url",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="regex"){if(b.regex.lastIndex=0,!b.regex.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"regex",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="trim")I.data=I.data.trim();else if(b.kind==="includes"){if(!I.data.includes(b.value,b.position))l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.invalid_string,validation:{includes:b.value,position:b.position},message:b.message}),Z.dirty()}else if(b.kind==="toLowerCase")I.data=I.data.toLowerCase();else if(b.kind==="toUpperCase")I.data=I.data.toUpperCase();else if(b.kind==="startsWith"){if(!I.data.startsWith(b.value))l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.invalid_string,validation:{startsWith:b.value},message:b.message}),Z.dirty()}else if(b.kind==="endsWith"){if(!I.data.endsWith(b.value))l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.invalid_string,validation:{endsWith:b.value},message:b.message}),Z.dirty()}else if(b.kind==="datetime"){if(!YrG(b).test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.invalid_string,validation:"datetime",message:b.message}),Z.dirty()}else if(b.kind==="date"){if(!qUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.invalid_string,validation:"date",message:b.message}),Z.dirty()}else if(b.kind==="time"){if(!TUb(b).test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.invalid_string,validation:"time",message:b.message}),Z.dirty()}else if(b.kind==="duration"){if(!kUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"duration",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="ip"){if(!SUb(I.data,b.version))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"ip",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="jwt"){if(!iUb(I.data,b.alg))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"jwt",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="cidr"){if(!PUb(I.data,b.version))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"cidr",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="base64"){if(!jUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"base64",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="base64url"){if(!nUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"base64url",code:BZ.invalid_string,message:b.message}),Z.dirty()}else NN.assertNever(b);return{status:Z.value,value:I.data}}_regex(I,G,Z){return this.refinement((l)=>I.test(l),{validation:G,code:BZ.invalid_string,...el.errToObj(Z)})}_addCheck(I){return new S5({...this._def,checks:[...this._def.checks,I]})}email(I){return this._addCheck({kind:"email",...el.errToObj(I)})}url(I){return this._addCheck({kind:"url",...el.errToObj(I)})}emoji(I){return this._addCheck({kind:"emoji",...el.errToObj(I)})}uuid(I){return this._addCheck({kind:"uuid",...el.errToObj(I)})}nanoid(I){return this._addCheck({kind:"nanoid",...el.errToObj(I)})}cuid(I){return this._addCheck({kind:"cuid",...el.errToObj(I)})}cuid2(I){return this._addCheck({kind:"cuid2",...el.errToObj(I)})}ulid(I){return this._addCheck({kind:"ulid",...el.errToObj(I)})}base64(I){return this._addCheck({kind:"base64",...el.errToObj(I)})}base64url(I){return this._addCheck({kind:"base64url",...el.errToObj(I)})}jwt(I){return this._addCheck({kind:"jwt",...el.errToObj(I)})}ip(I){return this._addCheck({kind:"ip",...el.errToObj(I)})}cidr(I){return this._addCheck({kind:"cidr",...el.errToObj(I)})}datetime(I){if(typeof I==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:I});return this._addCheck({kind:"datetime",precision:typeof I?.precision>"u"?null:I?.precision,offset:I?.offset??!1,local:I?.local??!1,...el.errToObj(I?.message)})}date(I){return this._addCheck({kind:"date",message:I})}time(I){if(typeof I==="string")return this._addCheck({kind:"time",precision:null,message:I});return this._addCheck({kind:"time",precision:typeof I?.precision>"u"?null:I?.precision,...el.errToObj(I?.message)})}duration(I){return this._addCheck({kind:"duration",...el.errToObj(I)})}regex(I,G){return this._addCheck({kind:"regex",regex:I,...el.errToObj(G)})}includes(I,G){return this._addCheck({kind:"includes",value:I,position:G?.position,...el.errToObj(G?.message)})}startsWith(I,G){return this._addCheck({kind:"startsWith",value:I,...el.errToObj(G)})}endsWith(I,G){return this._addCheck({kind:"endsWith",value:I,...el.errToObj(G)})}min(I,G){return this._addCheck({kind:"min",value:I,...el.errToObj(G)})}max(I,G){return this._addCheck({kind:"max",value:I,...el.errToObj(G)})}length(I,G){return this._addCheck({kind:"length",value:I,...el.errToObj(G)})}nonempty(I){return this.min(1,el.errToObj(I))}trim(){return new S5({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new S5({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new S5({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((I)=>I.kind==="datetime")}get isDate(){return!!this._def.checks.find((I)=>I.kind==="date")}get isTime(){return!!this._def.checks.find((I)=>I.kind==="time")}get isDuration(){return!!this._def.checks.find((I)=>I.kind==="duration")}get isEmail(){return!!this._def.checks.find((I)=>I.kind==="email")}get isURL(){return!!this._def.checks.find((I)=>I.kind==="url")}get isEmoji(){return!!this._def.checks.find((I)=>I.kind==="emoji")}get isUUID(){return!!this._def.checks.find((I)=>I.kind==="uuid")}get isNANOID(){return!!this._def.checks.find((I)=>I.kind==="nanoid")}get isCUID(){return!!this._def.checks.find((I)=>I.kind==="cuid")}get isCUID2(){return!!this._def.checks.find((I)=>I.kind==="cuid2")}get isULID(){return!!this._def.checks.find((I)=>I.kind==="ulid")}get isIP(){return!!this._def.checks.find((I)=>I.kind==="ip")}get isCIDR(){return!!this._def.checks.find((I)=>I.kind==="cidr")}get isBase64(){return!!this._def.checks.find((I)=>I.kind==="base64")}get isBase64url(){return!!this._def.checks.find((I)=>I.kind==="base64url")}get minLength(){let I=null;for(let G of this._def.checks)if(G.kind==="min"){if(I===null||G.value>I)I=G.value}return I}get maxLength(){let I=null;for(let G of this._def.checks)if(G.kind==="max"){if(I===null||G.value<I)I=G.value}return I}};S5.create=(I)=>{return new S5({checks:[],typeName:kZ.ZodString,coerce:I?.coerce??!1,...LW(I)})};G9=class G9 extends oW{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(I){if(this._def.coerce)I.data=Number(I.data);if(this._getType(I)!==$Z.number){let b=this._getOrReturnCtx(I);return Ql(b,{code:BZ.invalid_type,expected:$Z.number,received:b.parsedType}),fb}let Z=void 0,l=new em;for(let b of this._def.checks)if(b.kind==="int"){if(!NN.isInteger(I.data))Z=this._getOrReturnCtx(I,Z),Ql(Z,{code:BZ.invalid_type,expected:"integer",received:"float",message:b.message}),l.dirty()}else if(b.kind==="min"){if(b.inclusive?I.data<b.value:I.data<=b.value)Z=this._getOrReturnCtx(I,Z),Ql(Z,{code:BZ.too_small,minimum:b.value,type:"number",inclusive:b.inclusive,exact:!1,message:b.message}),l.dirty()}else if(b.kind==="max"){if(b.inclusive?I.data>b.value:I.data>=b.value)Z=this._getOrReturnCtx(I,Z),Ql(Z,{code:BZ.too_big,maximum:b.value,type:"number",inclusive:b.inclusive,exact:!1,message:b.message}),l.dirty()}else if(b.kind==="multipleOf"){if(_Ub(I.data,b.value)!==0)Z=this._getOrReturnCtx(I,Z),Ql(Z,{code:BZ.not_multiple_of,multipleOf:b.value,message:b.message}),l.dirty()}else if(b.kind==="finite"){if(!Number.isFinite(I.data))Z=this._getOrReturnCtx(I,Z),Ql(Z,{code:BZ.not_finite,message:b.message}),l.dirty()}else NN.assertNever(b);return{status:l.value,value:I.data}}gte(I,G){return this.setLimit("min",I,!0,el.toString(G))}gt(I,G){return this.setLimit("min",I,!1,el.toString(G))}lte(I,G){return this.setLimit("max",I,!0,el.toString(G))}lt(I,G){return this.setLimit("max",I,!1,el.toString(G))}setLimit(I,G,Z,l){return new G9({...this._def,checks:[...this._def.checks,{kind:I,value:G,inclusive:Z,message:el.toString(l)}]})}_addCheck(I){return new G9({...this._def,checks:[...this._def.checks,I]})}int(I){return this._addCheck({kind:"int",message:el.toString(I)})}positive(I){return this._addCheck({kind:"min",value:0,inclusive:!1,message:el.toString(I)})}negative(I){return this._addCheck({kind:"max",value:0,inclusive:!1,message:el.toString(I)})}nonpositive(I){return this._addCheck({kind:"max",value:0,inclusive:!0,message:el.toString(I)})}nonnegative(I){return this._addCheck({kind:"min",value:0,inclusive:!0,message:el.toString(I)})}multipleOf(I,G){return this._addCheck({kind:"multipleOf",value:I,message:el.toString(G)})}finite(I){return this._addCheck({kind:"finite",message:el.toString(I)})}safe(I){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:el.toString(I)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:el.toString(I)})}get minValue(){let I=null;for(let G of this._def.checks)if(G.kind==="min"){if(I===null||G.value>I)I=G.value}return I}get maxValue(){let I=null;for(let G of this._def.checks)if(G.kind==="max"){if(I===null||G.value<I)I=G.value}return I}get isInt(){return!!this._def.checks.find((I)=>I.kind==="int"||I.kind==="multipleOf"&&NN.isInteger(I.value))}get isFinite(){let I=null,G=null;for(let Z of this._def.checks)if(Z.kind==="finite"||Z.kind==="int"||Z.kind==="multipleOf")return!0;else if(Z.kind==="min"){if(G===null||Z.value>G)G=Z.value}else if(Z.kind==="max"){if(I===null||Z.value<I)I=Z.value}return Number.isFinite(G)&&Number.isFinite(I)}};G9.create=(I)=>{return new G9({checks:[],typeName:kZ.ZodNumber,coerce:I?.coerce||!1,...LW(I)})};Z9=class Z9 extends oW{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse(I){if(this._def.coerce)try{I.data=BigInt(I.data)}catch{return this._getInvalidInput(I)}if(this._getType(I)!==$Z.bigint)return this._getInvalidInput(I);let Z=void 0,l=new em;for(let b of this._def.checks)if(b.kind==="min"){if(b.inclusive?I.data<b.value:I.data<=b.value)Z=this._getOrReturnCtx(I,Z),Ql(Z,{code:BZ.too_small,type:"bigint",minimum:b.value,inclusive:b.inclusive,message:b.message}),l.dirty()}else if(b.kind==="max"){if(b.inclusive?I.data>b.value:I.data>=b.value)Z=this._getOrReturnCtx(I,Z),Ql(Z,{code:BZ.too_big,type:"bigint",maximum:b.value,inclusive:b.inclusive,message:b.message}),l.dirty()}else if(b.kind==="multipleOf"){if(I.data%b.value!==BigInt(0))Z=this._getOrReturnCtx(I,Z),Ql(Z,{code:BZ.not_multiple_of,multipleOf:b.value,message:b.message}),l.dirty()}else NN.assertNever(b);return{status:l.value,value:I.data}}_getInvalidInput(I){let G=this._getOrReturnCtx(I);return Ql(G,{code:BZ.invalid_type,expected:$Z.bigint,received:G.parsedType}),fb}gte(I,G){return this.setLimit("min",I,!0,el.toString(G))}gt(I,G){return this.setLimit("min",I,!1,el.toString(G))}lte(I,G){return this.setLimit("max",I,!0,el.toString(G))}lt(I,G){return this.setLimit("max",I,!1,el.toString(G))}setLimit(I,G,Z,l){return new Z9({...this._def,checks:[...this._def.checks,{kind:I,value:G,inclusive:Z,message:el.toString(l)}]})}_addCheck(I){return new Z9({...this._def,checks:[...this._def.checks,I]})}positive(I){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:el.toString(I)})}negative(I){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:el.toString(I)})}nonpositive(I){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:el.toString(I)})}nonnegative(I){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:el.toString(I)})}multipleOf(I,G){return this._addCheck({kind:"multipleOf",value:I,message:el.toString(G)})}get minValue(){let I=null;for(let G of this._def.checks)if(G.kind==="min"){if(I===null||G.value>I)I=G.value}return I}get maxValue(){let I=null;for(let G of this._def.checks)if(G.kind==="max"){if(I===null||G.value<I)I=G.value}return I}};Z9.create=(I)=>{return new Z9({checks:[],typeName:kZ.ZodBigInt,coerce:I?.coerce??!1,...LW(I)})};p6=class p6 extends oW{_parse(I){if(this._def.coerce)I.data=Boolean(I.data);if(this._getType(I)!==$Z.boolean){let Z=this._getOrReturnCtx(I);return Ql(Z,{code:BZ.invalid_type,expected:$Z.boolean,received:Z.parsedType}),fb}return dX(I.data)}};p6.create=(I)=>{return new p6({typeName:kZ.ZodBoolean,coerce:I?.coerce||!1,...LW(I)})};oz=class oz extends oW{_parse(I){if(this._def.coerce)I.data=new Date(I.data);if(this._getType(I)!==$Z.date){let b=this._getOrReturnCtx(I);return Ql(b,{code:BZ.invalid_type,expected:$Z.date,received:b.parsedType}),fb}if(Number.isNaN(I.data.getTime())){let b=this._getOrReturnCtx(I);return Ql(b,{code:BZ.invalid_date}),fb}let Z=new em,l=void 0;for(let b of this._def.checks)if(b.kind==="min"){if(I.data.getTime()<b.value)l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.too_small,message:b.message,inclusive:!0,exact:!1,minimum:b.value,type:"date"}),Z.dirty()}else if(b.kind==="max"){if(I.data.getTime()>b.value)l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.too_big,message:b.message,inclusive:!0,exact:!1,maximum:b.value,type:"date"}),Z.dirty()}else NN.assertNever(b);return{status:Z.value,value:new Date(I.data.getTime())}}_addCheck(I){return new oz({...this._def,checks:[...this._def.checks,I]})}min(I,G){return this._addCheck({kind:"min",value:I.getTime(),message:el.toString(G)})}max(I,G){return this._addCheck({kind:"max",value:I.getTime(),message:el.toString(G)})}get minDate(){let I=null;for(let G of this._def.checks)if(G.kind==="min"){if(I===null||G.value>I)I=G.value}return I!=null?new Date(I):null}get maxDate(){let I=null;for(let G of this._def.checks)if(G.kind==="max"){if(I===null||G.value<I)I=G.value}return I!=null?new Date(I):null}};oz.create=(I)=>{return new oz({checks:[],coerce:I?.coerce||!1,typeName:kZ.ZodDate,...LW(I)})};_i=class _i extends oW{_parse(I){if(this._getType(I)!==$Z.symbol){let Z=this._getOrReturnCtx(I);return Ql(Z,{code:BZ.invalid_type,expected:$Z.symbol,received:Z.parsedType}),fb}return dX(I.data)}};_i.create=(I)=>{return new _i({typeName:kZ.ZodSymbol,...LW(I)})};y6=class y6 extends oW{_parse(I){if(this._getType(I)!==$Z.undefined){let Z=this._getOrReturnCtx(I);return Ql(Z,{code:BZ.invalid_type,expected:$Z.undefined,received:Z.parsedType}),fb}return dX(I.data)}};y6.create=(I)=>{return new y6({typeName:kZ.ZodUndefined,...LW(I)})};u6=class u6 extends oW{_parse(I){if(this._getType(I)!==$Z.null){let Z=this._getOrReturnCtx(I);return Ql(Z,{code:BZ.invalid_type,expected:$Z.null,received:Z.parsedType}),fb}return dX(I.data)}};u6.create=(I)=>{return new u6({typeName:kZ.ZodNull,...LW(I)})};tz=class tz extends oW{constructor(){super(...arguments);this._any=!0}_parse(I){return dX(I.data)}};tz.create=(I)=>{return new tz({typeName:kZ.ZodAny,...LW(I)})};I9=class I9 extends oW{constructor(){super(...arguments);this._unknown=!0}_parse(I){return dX(I.data)}};I9.create=(I)=>{return new I9({typeName:kZ.ZodUnknown,...LW(I)})};a4=class a4 extends oW{_parse(I){let G=this._getOrReturnCtx(I);return Ql(G,{code:BZ.invalid_type,expected:$Z.never,received:G.parsedType}),fb}};a4.create=(I)=>{return new a4({typeName:kZ.ZodNever,...LW(I)})};fi=class fi extends oW{_parse(I){if(this._getType(I)!==$Z.undefined){let Z=this._getOrReturnCtx(I);return Ql(Z,{code:BZ.invalid_type,expected:$Z.void,received:Z.parsedType}),fb}return dX(I.data)}};fi.create=(I)=>{return new fi({typeName:kZ.ZodVoid,...LW(I)})};i5=class i5 extends oW{_parse(I){let{ctx:G,status:Z}=this._processInputParams(I),l=this._def;if(G.parsedType!==$Z.array)return Ql(G,{code:BZ.invalid_type,expected:$Z.array,received:G.parsedType}),fb;if(l.exactLength!==null){let W=G.data.length>l.exactLength.value,N=G.data.length<l.exactLength.value;if(W||N)Ql(G,{code:W?BZ.too_big:BZ.too_small,minimum:N?l.exactLength.value:void 0,maximum:W?l.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:l.exactLength.message}),Z.dirty()}if(l.minLength!==null){if(G.data.length<l.minLength.value)Ql(G,{code:BZ.too_small,minimum:l.minLength.value,type:"array",inclusive:!0,exact:!1,message:l.minLength.message}),Z.dirty()}if(l.maxLength!==null){if(G.data.length>l.maxLength.value)Ql(G,{code:BZ.too_big,maximum:l.maxLength.value,type:"array",inclusive:!0,exact:!1,message:l.maxLength.message}),Z.dirty()}if(G.common.async)return Promise.all([...G.data].map((W,N)=>{return l.type._parseAsync(new _5(G,W,G.path,N))})).then((W)=>{return em.mergeArray(Z,W)});let b=[...G.data].map((W,N)=>{return l.type._parseSync(new _5(G,W,G.path,N))});return em.mergeArray(Z,b)}get element(){return this._def.type}min(I,G){return new i5({...this._def,minLength:{value:I,message:el.toString(G)}})}max(I,G){return new i5({...this._def,maxLength:{value:I,message:el.toString(G)}})}length(I,G){return new i5({...this._def,exactLength:{value:I,message:el.toString(G)}})}nonempty(I){return this.min(1,I)}};i5.create=(I,G)=>{return new i5({type:I,minLength:null,maxLength:null,exactLength:null,typeName:kZ.ZodArray,...LW(G)})};Z2=class Z2 extends oW{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let I=this._def.shape(),G=NN.objectKeys(I);return this._cached={shape:I,keys:G},this._cached}_parse(I){if(this._getType(I)!==$Z.object){let c=this._getOrReturnCtx(I);return Ql(c,{code:BZ.invalid_type,expected:$Z.object,received:c.parsedType}),fb}let{status:Z,ctx:l}=this._processInputParams(I),{shape:b,keys:W}=this._getCached(),N=[];if(!(this._def.catchall instanceof a4&&this._def.unknownKeys==="strip")){for(let c in l.data)if(!W.includes(c))N.push(c)}let Y=[];for(let c of W){let V=b[c],d=l.data[c];Y.push({key:{status:"valid",value:c},value:V._parse(new _5(l,d,l.path,c)),alwaysSet:c in l.data})}if(this._def.catchall instanceof a4){let c=this._def.unknownKeys;if(c==="passthrough")for(let V of N)Y.push({key:{status:"valid",value:V},value:{status:"valid",value:l.data[V]}});else if(c==="strict"){if(N.length>0)Ql(l,{code:BZ.unrecognized_keys,keys:N}),Z.dirty()}else if(c==="strip");else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let c=this._def.catchall;for(let V of N){let d=l.data[V];Y.push({key:{status:"valid",value:V},value:c._parse(new _5(l,d,l.path,V)),alwaysSet:V in l.data})}}if(l.common.async)return Promise.resolve().then(async()=>{let c=[];for(let V of Y){let d=await V.key,Q=await V.value;c.push({key:d,value:Q,alwaysSet:V.alwaysSet})}return c}).then((c)=>{return em.mergeObjectSync(Z,c)});else return em.mergeObjectSync(Z,Y)}get shape(){return this._def.shape()}strict(I){return el.errToObj,new Z2({...this._def,unknownKeys:"strict",...I!==void 0?{errorMap:(G,Z)=>{let l=this._def.errorMap?.(G,Z).message??Z.defaultError;if(G.code==="unrecognized_keys")return{message:el.errToObj(I).message??l};return{message:l}}}:{}})}strip(){return new Z2({...this._def,unknownKeys:"strip"})}passthrough(){return new Z2({...this._def,unknownKeys:"passthrough"})}extend(I){return new Z2({...this._def,shape:()=>({...this._def.shape(),...I})})}merge(I){return new Z2({unknownKeys:I._def.unknownKeys,catchall:I._def.catchall,shape:()=>({...this._def.shape(),...I._def.shape()}),typeName:kZ.ZodObject})}setKey(I,G){return this.augment({[I]:G})}catchall(I){return new Z2({...this._def,catchall:I})}pick(I){let G={};for(let Z of NN.objectKeys(I))if(I[Z]&&this.shape[Z])G[Z]=this.shape[Z];return new Z2({...this._def,shape:()=>G})}omit(I){let G={};for(let Z of NN.objectKeys(this.shape))if(!I[Z])G[Z]=this.shape[Z];return new Z2({...this._def,shape:()=>G})}deepPartial(){return v6(this)}partial(I){let G={};for(let Z of NN.objectKeys(this.shape)){let l=this.shape[Z];if(I&&!I[Z])G[Z]=l;else G[Z]=l.optional()}return new Z2({...this._def,shape:()=>G})}required(I){let G={};for(let Z of NN.objectKeys(this.shape))if(I&&!I[Z])G[Z]=this.shape[Z];else{let b=this.shape[Z];while(b instanceof P5)b=b._def.innerType;G[Z]=b}return new Z2({...this._def,shape:()=>G})}keyof(){return crG(NN.objectKeys(this.shape))}};Z2.create=(I,G)=>{return new Z2({shape:()=>I,unknownKeys:"strip",catchall:a4.create(),typeName:kZ.ZodObject,...LW(G)})};Z2.strictCreate=(I,G)=>{return new Z2({shape:()=>I,unknownKeys:"strict",catchall:a4.create(),typeName:kZ.ZodObject,...LW(G)})};Z2.lazycreate=(I,G)=>{return new Z2({shape:I,unknownKeys:"strip",catchall:a4.create(),typeName:kZ.ZodObject,...LW(G)})};L6=class L6 extends oW{_parse(I){let{ctx:G}=this._processInputParams(I),Z=this._def.options;function l(b){for(let N of b)if(N.result.status==="valid")return N.result;for(let N of b)if(N.result.status==="dirty")return G.common.issues.push(...N.ctx.common.issues),N.result;let W=b.map((N)=>new O1(N.ctx.common.issues));return Ql(G,{code:BZ.invalid_union,unionErrors:W}),fb}if(G.common.async)return Promise.all(Z.map(async(b)=>{let W={...G,common:{...G.common,issues:[]},parent:null};return{result:await b._parseAsync({data:G.data,path:G.path,parent:W}),ctx:W}})).then(l);else{let b=void 0,W=[];for(let Y of Z){let c={...G,common:{...G.common,issues:[]},parent:null},V=Y._parseSync({data:G.data,path:G.path,parent:c});if(V.status==="valid")return V;else if(V.status==="dirty"&&!b)b={result:V,ctx:c};if(c.common.issues.length)W.push(c.common.issues)}if(b)return G.common.issues.push(...b.ctx.common.issues),b.result;let N=W.map((Y)=>new O1(Y));return Ql(G,{code:BZ.invalid_union,unionErrors:N}),fb}}get options(){return this._def.options}};L6.create=(I,G)=>{return new L6({options:I,typeName:kZ.ZodUnion,...LW(G)})};uNI=class uNI extends oW{_parse(I){let{ctx:G}=this._processInputParams(I);if(G.parsedType!==$Z.object)return Ql(G,{code:BZ.invalid_type,expected:$Z.object,received:G.parsedType}),fb;let Z=this.discriminator,l=G.data[Z],b=this.optionsMap.get(l);if(!b)return Ql(G,{code:BZ.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[Z]}),fb;if(G.common.async)return b._parseAsync({data:G.data,path:G.path,parent:G});else return b._parseSync({data:G.data,path:G.path,parent:G})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(I,G,Z){let l=new Map;for(let b of G){let W=EC(b.shape[I]);if(!W.length)throw Error(`A discriminator value for key \`${I}\` could not be extracted from all schema options`);for(let N of W){if(l.has(N))throw Error(`Discriminator property ${String(I)} has duplicate value ${String(N)}`);l.set(N,b)}}return new uNI({typeName:kZ.ZodDiscriminatedUnion,discriminator:I,options:G,optionsMap:l,...LW(Z)})}};g6=class g6 extends oW{_parse(I){let{status:G,ctx:Z}=this._processInputParams(I),l=(b,W)=>{if(pNI(b)||pNI(W))return fb;let N=vLI(b.value,W.value);if(!N.valid)return Ql(Z,{code:BZ.invalid_intersection_types}),fb;if(yNI(b)||yNI(W))G.dirty();return{status:G.value,value:N.data}};if(Z.common.async)return Promise.all([this._def.left._parseAsync({data:Z.data,path:Z.path,parent:Z}),this._def.right._parseAsync({data:Z.data,path:Z.path,parent:Z})]).then(([b,W])=>l(b,W));else return l(this._def.left._parseSync({data:Z.data,path:Z.path,parent:Z}),this._def.right._parseSync({data:Z.data,path:Z.path,parent:Z}))}};g6.create=(I,G,Z)=>{return new g6({left:I,right:G,typeName:kZ.ZodIntersection,...LW(Z)})};z4=class z4 extends oW{_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.parsedType!==$Z.array)return Ql(Z,{code:BZ.invalid_type,expected:$Z.array,received:Z.parsedType}),fb;if(Z.data.length<this._def.items.length)return Ql(Z,{code:BZ.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),fb;if(!this._def.rest&&Z.data.length>this._def.items.length)Ql(Z,{code:BZ.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),G.dirty();let b=[...Z.data].map((W,N)=>{let Y=this._def.items[N]||this._def.rest;if(!Y)return null;return Y._parse(new _5(Z,W,Z.path,N))}).filter((W)=>!!W);if(Z.common.async)return Promise.all(b).then((W)=>{return em.mergeArray(G,W)});else return em.mergeArray(G,b)}get items(){return this._def.items}rest(I){return new z4({...this._def,rest:I})}};z4.create=(I,G)=>{if(!Array.isArray(I))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new z4({items:I,typeName:kZ.ZodTuple,rest:null,...LW(G)})};si=class si extends oW{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.parsedType!==$Z.object)return Ql(Z,{code:BZ.invalid_type,expected:$Z.object,received:Z.parsedType}),fb;let l=[],b=this._def.keyType,W=this._def.valueType;for(let N in Z.data)l.push({key:b._parse(new _5(Z,N,Z.path,N)),value:W._parse(new _5(Z,Z.data[N],Z.path,N)),alwaysSet:N in Z.data});if(Z.common.async)return em.mergeObjectAsync(G,l);else return em.mergeObjectSync(G,l)}get element(){return this._def.valueType}static create(I,G,Z){if(G instanceof oW)return new si({keyType:I,valueType:G,typeName:kZ.ZodRecord,...LW(Z)});return new si({keyType:S5.create(),valueType:I,typeName:kZ.ZodRecord,...LW(G)})}};$i=class $i extends oW{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.parsedType!==$Z.map)return Ql(Z,{code:BZ.invalid_type,expected:$Z.map,received:Z.parsedType}),fb;let l=this._def.keyType,b=this._def.valueType,W=[...Z.data.entries()].map(([N,Y],c)=>{return{key:l._parse(new _5(Z,N,Z.path,[c,"key"])),value:b._parse(new _5(Z,Y,Z.path,[c,"value"]))}});if(Z.common.async){let N=new Map;return Promise.resolve().then(async()=>{for(let Y of W){let c=await Y.key,V=await Y.value;if(c.status==="aborted"||V.status==="aborted")return fb;if(c.status==="dirty"||V.status==="dirty")G.dirty();N.set(c.value,V.value)}return{status:G.value,value:N}})}else{let N=new Map;for(let Y of W){let{key:c,value:V}=Y;if(c.status==="aborted"||V.status==="aborted")return fb;if(c.status==="dirty"||V.status==="dirty")G.dirty();N.set(c.value,V.value)}return{status:G.value,value:N}}}};$i.create=(I,G,Z)=>{return new $i({valueType:G,keyType:I,typeName:kZ.ZodMap,...LW(Z)})};rz=class rz extends oW{_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.parsedType!==$Z.set)return Ql(Z,{code:BZ.invalid_type,expected:$Z.set,received:Z.parsedType}),fb;let l=this._def;if(l.minSize!==null){if(Z.data.size<l.minSize.value)Ql(Z,{code:BZ.too_small,minimum:l.minSize.value,type:"set",inclusive:!0,exact:!1,message:l.minSize.message}),G.dirty()}if(l.maxSize!==null){if(Z.data.size>l.maxSize.value)Ql(Z,{code:BZ.too_big,maximum:l.maxSize.value,type:"set",inclusive:!0,exact:!1,message:l.maxSize.message}),G.dirty()}let b=this._def.valueType;function W(Y){let c=new Set;for(let V of Y){if(V.status==="aborted")return fb;if(V.status==="dirty")G.dirty();c.add(V.value)}return{status:G.value,value:c}}let N=[...Z.data.values()].map((Y,c)=>b._parse(new _5(Z,Y,Z.path,c)));if(Z.common.async)return Promise.all(N).then((Y)=>W(Y));else return W(N)}min(I,G){return new rz({...this._def,minSize:{value:I,message:el.toString(G)}})}max(I,G){return new rz({...this._def,maxSize:{value:I,message:el.toString(G)}})}size(I,G){return this.min(I,G).max(I,G)}nonempty(I){return this.min(1,I)}};rz.create=(I,G)=>{return new rz({valueType:I,minSize:null,maxSize:null,typeName:kZ.ZodSet,...LW(G)})};C6=class C6 extends oW{constructor(){super(...arguments);this.validate=this.implement}_parse(I){let{ctx:G}=this._processInputParams(I);if(G.parsedType!==$Z.function)return Ql(G,{code:BZ.invalid_type,expected:$Z.function,received:G.parsedType}),fb;function Z(N,Y){return Pi({data:N,path:G.path,errorMaps:[G.common.contextualErrorMap,G.schemaErrorMap,A6(),AC].filter((c)=>!!c),issueData:{code:BZ.invalid_arguments,argumentsError:Y}})}function l(N,Y){return Pi({data:N,path:G.path,errorMaps:[G.common.contextualErrorMap,G.schemaErrorMap,A6(),AC].filter((c)=>!!c),issueData:{code:BZ.invalid_return_type,returnTypeError:Y}})}let b={errorMap:G.common.contextualErrorMap},W=G.data;if(this._def.returns instanceof ez){let N=this;return dX(async function(...Y){let c=new O1([]),V=await N._def.args.parseAsync(Y,b).catch((X)=>{throw c.addIssue(Z(Y,X)),c}),d=await Reflect.apply(W,this,V);return await N._def.returns._def.type.parseAsync(d,b).catch((X)=>{throw c.addIssue(l(d,X)),c})})}else{let N=this;return dX(function(...Y){let c=N._def.args.safeParse(Y,b);if(!c.success)throw new O1([Z(Y,c.error)]);let V=Reflect.apply(W,this,c.data),d=N._def.returns.safeParse(V,b);if(!d.success)throw new O1([l(V,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...I){return new C6({...this._def,args:z4.create(I).rest(I9.create())})}returns(I){return new C6({...this._def,returns:I})}implement(I){return this.parse(I)}strictImplement(I){return this.parse(I)}static create(I,G,Z){return new C6({args:I?I:z4.create([]).rest(I9.create()),returns:G||I9.create(),typeName:kZ.ZodFunction,...LW(Z)})}};a6=class a6 extends oW{get schema(){return this._def.getter()}_parse(I){let{ctx:G}=this._processInputParams(I);return this._def.getter()._parse({data:G.data,path:G.path,parent:G})}};a6.create=(I,G)=>{return new a6({getter:I,typeName:kZ.ZodLazy,...LW(G)})};z6=class z6 extends oW{_parse(I){if(I.data!==this._def.value){let G=this._getOrReturnCtx(I);return Ql(G,{received:G.data,code:BZ.invalid_literal,expected:this._def.value}),fb}return{status:"valid",value:I.data}}get value(){return this._def.value}};z6.create=(I,G)=>{return new z6({value:I,typeName:kZ.ZodLiteral,...LW(G)})};l9=class l9 extends oW{_parse(I){if(typeof I.data!=="string"){let G=this._getOrReturnCtx(I),Z=this._def.values;return Ql(G,{expected:NN.joinValues(Z),received:G.parsedType,code:BZ.invalid_type}),fb}if(!this._cache)this._cache=new Set(this._def.values);if(!this._cache.has(I.data)){let G=this._getOrReturnCtx(I),Z=this._def.values;return Ql(G,{received:G.data,code:BZ.invalid_enum_value,options:Z}),fb}return dX(I.data)}get options(){return this._def.values}get enum(){let I={};for(let G of this._def.values)I[G]=G;return I}get Values(){let I={};for(let G of this._def.values)I[G]=G;return I}get Enum(){let I={};for(let G of this._def.values)I[G]=G;return I}extract(I,G=this._def){return l9.create(I,{...this._def,...G})}exclude(I,G=this._def){return l9.create(this.options.filter((Z)=>!I.includes(Z)),{...this._def,...G})}};l9.create=crG;B6=class B6 extends oW{_parse(I){let G=NN.getValidEnumValues(this._def.values),Z=this._getOrReturnCtx(I);if(Z.parsedType!==$Z.string&&Z.parsedType!==$Z.number){let l=NN.objectValues(G);return Ql(Z,{expected:NN.joinValues(l),received:Z.parsedType,code:BZ.invalid_type}),fb}if(!this._cache)this._cache=new Set(NN.getValidEnumValues(this._def.values));if(!this._cache.has(I.data)){let l=NN.objectValues(G);return Ql(Z,{received:Z.data,code:BZ.invalid_enum_value,options:l}),fb}return dX(I.data)}get enum(){return this._def.values}};B6.create=(I,G)=>{return new B6({values:I,typeName:kZ.ZodNativeEnum,...LW(G)})};ez=class ez extends oW{unwrap(){return this._def.type}_parse(I){let{ctx:G}=this._processInputParams(I);if(G.parsedType!==$Z.promise&&G.common.async===!1)return Ql(G,{code:BZ.invalid_type,expected:$Z.promise,received:G.parsedType}),fb;let Z=G.parsedType===$Z.promise?G.data:Promise.resolve(G.data);return dX(Z.then((l)=>{return this._def.type.parseAsync(l,{path:G.path,errorMap:G.common.contextualErrorMap})}))}};ez.create=(I,G)=>{return new ez({type:I,typeName:kZ.ZodPromise,...LW(G)})};f5=class f5 extends oW{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===kZ.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(I){let{status:G,ctx:Z}=this._processInputParams(I),l=this._def.effect||null,b={addIssue:(W)=>{if(Ql(Z,W),W.fatal)G.abort();else G.dirty()},get path(){return Z.path}};if(b.addIssue=b.addIssue.bind(b),l.type==="preprocess"){let W=l.transform(Z.data,b);if(Z.common.async)return Promise.resolve(W).then(async(N)=>{if(G.value==="aborted")return fb;let Y=await this._def.schema._parseAsync({data:N,path:Z.path,parent:Z});if(Y.status==="aborted")return fb;if(Y.status==="dirty")return $z(Y.value);if(G.value==="dirty")return $z(Y.value);return Y});else{if(G.value==="aborted")return fb;let N=this._def.schema._parseSync({data:W,path:Z.path,parent:Z});if(N.status==="aborted")return fb;if(N.status==="dirty")return $z(N.value);if(G.value==="dirty")return $z(N.value);return N}}if(l.type==="refinement"){let W=(N)=>{let Y=l.refinement(N,b);if(Z.common.async)return Promise.resolve(Y);if(Y instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return N};if(Z.common.async===!1){let N=this._def.schema._parseSync({data:Z.data,path:Z.path,parent:Z});if(N.status==="aborted")return fb;if(N.status==="dirty")G.dirty();return W(N.value),{status:G.value,value:N.value}}else return this._def.schema._parseAsync({data:Z.data,path:Z.path,parent:Z}).then((N)=>{if(N.status==="aborted")return fb;if(N.status==="dirty")G.dirty();return W(N.value).then(()=>{return{status:G.value,value:N.value}})})}if(l.type==="transform")if(Z.common.async===!1){let W=this._def.schema._parseSync({data:Z.data,path:Z.path,parent:Z});if(!eu(W))return fb;let N=l.transform(W.value,b);if(N instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:G.value,value:N}}else return this._def.schema._parseAsync({data:Z.data,path:Z.path,parent:Z}).then((W)=>{if(!eu(W))return fb;return Promise.resolve(l.transform(W.value,b)).then((N)=>({status:G.value,value:N}))});NN.assertNever(l)}};f5.create=(I,G,Z)=>{return new f5({schema:I,typeName:kZ.ZodEffects,effect:G,...LW(Z)})};f5.createWithPreprocess=(I,G,Z)=>{return new f5({schema:G,effect:{type:"preprocess",transform:I},typeName:kZ.ZodEffects,...LW(Z)})};P5=class P5 extends oW{_parse(I){if(this._getType(I)===$Z.undefined)return dX(void 0);return this._def.innerType._parse(I)}unwrap(){return this._def.innerType}};P5.create=(I,G)=>{return new P5({innerType:I,typeName:kZ.ZodOptional,...LW(G)})};vC=class vC extends oW{_parse(I){if(this._getType(I)===$Z.null)return dX(null);return this._def.innerType._parse(I)}unwrap(){return this._def.innerType}};vC.create=(I,G)=>{return new vC({innerType:I,typeName:kZ.ZodNullable,...LW(G)})};k6=class k6 extends oW{_parse(I){let{ctx:G}=this._processInputParams(I),Z=G.data;if(G.parsedType===$Z.undefined)Z=this._def.defaultValue();return this._def.innerType._parse({data:Z,path:G.path,parent:G})}removeDefault(){return this._def.innerType}};k6.create=(I,G)=>{return new k6({innerType:I,typeName:kZ.ZodDefault,defaultValue:typeof G.default==="function"?G.default:()=>G.default,...LW(G)})};U6=class U6 extends oW{_parse(I){let{ctx:G}=this._processInputParams(I),Z={...G,common:{...G.common,issues:[]}},l=this._def.innerType._parse({data:Z.data,path:Z.path,parent:{...Z}});if(E6(l))return l.then((b)=>{return{status:"valid",value:b.status==="valid"?b.value:this._def.catchValue({get error(){return new O1(Z.common.issues)},input:Z.data})}});else return{status:"valid",value:l.status==="valid"?l.value:this._def.catchValue({get error(){return new O1(Z.common.issues)},input:Z.data})}}removeCatch(){return this._def.innerType}};U6.create=(I,G)=>{return new U6({innerType:I,typeName:kZ.ZodCatch,catchValue:typeof G.catch==="function"?G.catch:()=>G.catch,...LW(G)})};oi=class oi extends oW{_parse(I){if(this._getType(I)!==$Z.nan){let Z=this._getOrReturnCtx(I);return Ql(Z,{code:BZ.invalid_type,expected:$Z.nan,received:Z.parsedType}),fb}return{status:"valid",value:I.data}}};oi.create=(I)=>{return new oi({typeName:kZ.ZodNaN,...LW(I)})};fUb=Symbol("zod_brand");LNI=class LNI extends oW{_parse(I){let{ctx:G}=this._processInputParams(I),Z=G.data;return this._def.type._parse({data:Z,path:G.path,parent:G})}unwrap(){return this._def.type}};ti=class ti extends oW{_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.common.async)return(async()=>{let b=await this._def.in._parseAsync({data:Z.data,path:Z.path,parent:Z});if(b.status==="aborted")return fb;if(b.status==="dirty")return G.dirty(),$z(b.value);else return this._def.out._parseAsync({data:b.value,path:Z.path,parent:Z})})();else{let l=this._def.in._parseSync({data:Z.data,path:Z.path,parent:Z});if(l.status==="aborted")return fb;if(l.status==="dirty")return G.dirty(),{status:"dirty",value:l.value};else return this._def.out._parseSync({data:l.value,path:Z.path,parent:Z})}}static create(I,G){return new ti({in:I,out:G,typeName:kZ.ZodPipeline})}};x6=class x6 extends oW{_parse(I){let G=this._def.innerType._parse(I),Z=(l)=>{if(eu(l))l.value=Object.freeze(l.value);return l};return E6(G)?G.then((l)=>Z(l)):Z(G)}unwrap(){return this._def.innerType}};x6.create=(I,G)=>{return new x6({innerType:I,typeName:kZ.ZodReadonly,...LW(G)})};sUb={object:Z2.lazycreate};(function(I){I.ZodString="ZodString",I.ZodNumber="ZodNumber",I.ZodNaN="ZodNaN",I.ZodBigInt="ZodBigInt",I.ZodBoolean="ZodBoolean",I.ZodDate="ZodDate",I.ZodSymbol="ZodSymbol",I.ZodUndefined="ZodUndefined",I.ZodNull="ZodNull",I.ZodAny="ZodAny",I.ZodUnknown="ZodUnknown",I.ZodNever="ZodNever",I.ZodVoid="ZodVoid",I.ZodArray="ZodArray",I.ZodObject="ZodObject",I.ZodUnion="ZodUnion",I.ZodDiscriminatedUnion="ZodDiscriminatedUnion",I.ZodIntersection="ZodIntersection",I.ZodTuple="ZodTuple",I.ZodRecord="ZodRecord",I.ZodMap="ZodMap",I.ZodSet="ZodSet",I.ZodFunction="ZodFunction",I.ZodLazy="ZodLazy",I.ZodLiteral="ZodLiteral",I.ZodEnum="ZodEnum",I.ZodEffects="ZodEffects",I.ZodNativeEnum="ZodNativeEnum",I.ZodOptional="ZodOptional",I.ZodNullable="ZodNullable",I.ZodDefault="ZodDefault",I.ZodCatch="ZodCatch",I.ZodPromise="ZodPromise",I.ZodBranded="ZodBranded",I.ZodPipeline="ZodPipeline",I.ZodReadonly="ZodReadonly"})(kZ||(kZ={}));drG=S5.create,mrG=G9.create,oUb=oi.create,tUb=Z9.create,QrG=p6.create,rUb=oz.create,eUb=_i.create,Ixb=y6.create,Gxb=u6.create,Zxb=tz.create,lxb=I9.create,bxb=a4.create,Wxb=fi.create,Nxb=i5.create,Yxb=Z2.create,cxb=Z2.strictCreate,Vxb=L6.create,dxb=uNI.create,mxb=g6.create,Qxb=z4.create,Xxb=si.create,Fxb=$i.create,Rxb=rz.create,Hxb=C6.create,hxb=a6.create,wxb=z6.create,Jxb=l9.create,Axb=B6.create,Exb=ez.create,vxb=f5.create,Cxb=P5.create,pxb=vC.create,yxb=f5.createWithPreprocess,uxb=ti.create,zxb={string:(I)=>S5.create({...I,coerce:!0}),number:(I)=>G9.create({...I,coerce:!0}),boolean:(I)=>p6.create({...I,coerce:!0}),bigint:(I)=>Z9.create({...I,coerce:!0}),date:(I)=>oz.create({...I,coerce:!0})},Bxb=fb});var mG={};w1(mG,{void:()=>Wxb,util:()=>NN,unknown:()=>lxb,union:()=>Vxb,undefined:()=>Ixb,tuple:()=>Qxb,transformer:()=>vxb,symbol:()=>eUb,string:()=>drG,strictObject:()=>cxb,setErrorMap:()=>pUb,set:()=>Rxb,record:()=>Xxb,quotelessJson:()=>vUb,promise:()=>Exb,preprocess:()=>yxb,pipeline:()=>uxb,ostring:()=>Lxb,optional:()=>Cxb,onumber:()=>gxb,oboolean:()=>axb,objectUtil:()=>wLI,object:()=>Yxb,number:()=>mrG,nullable:()=>pxb,null:()=>Gxb,never:()=>bxb,nativeEnum:()=>Axb,nan:()=>oUb,map:()=>Fxb,makeIssue:()=>Pi,literal:()=>wxb,lazy:()=>hxb,late:()=>sUb,isValid:()=>eu,isDirty:()=>yNI,isAsync:()=>E6,isAborted:()=>pNI,intersection:()=>mxb,instanceof:()=>$Ub,getParsedType:()=>g4,getErrorMap:()=>A6,function:()=>Hxb,enum:()=>Jxb,effect:()=>vxb,discriminatedUnion:()=>dxb,defaultErrorMap:()=>AC,datetimeRegex:()=>YrG,date:()=>rUb,custom:()=>VrG,coerce:()=>zxb,boolean:()=>QrG,bigint:()=>tUb,array:()=>Nxb,any:()=>Zxb,addIssueToContext:()=>Ql,ZodVoid:()=>fi,ZodUnknown:()=>I9,ZodUnion:()=>L6,ZodUndefined:()=>y6,ZodType:()=>oW,ZodTuple:()=>z4,ZodTransformer:()=>f5,ZodSymbol:()=>_i,ZodString:()=>S5,ZodSet:()=>rz,ZodSchema:()=>oW,ZodRecord:()=>si,ZodReadonly:()=>x6,ZodPromise:()=>ez,ZodPipeline:()=>ti,ZodParsedType:()=>$Z,ZodOptional:()=>P5,ZodObject:()=>Z2,ZodNumber:()=>G9,ZodNullable:()=>vC,ZodNull:()=>u6,ZodNever:()=>a4,ZodNativeEnum:()=>B6,ZodNaN:()=>oi,ZodMap:()=>$i,ZodLiteral:()=>z6,ZodLazy:()=>a6,ZodIssueCode:()=>BZ,ZodIntersection:()=>g6,ZodFunction:()=>C6,ZodFirstPartyTypeKind:()=>kZ,ZodError:()=>O1,ZodEnum:()=>l9,ZodEffects:()=>f5,ZodDiscriminatedUnion:()=>uNI,ZodDefault:()=>k6,ZodDate:()=>oz,ZodCatch:()=>U6,ZodBranded:()=>LNI,ZodBoolean:()=>p6,ZodBigInt:()=>Z9,ZodArray:()=>i5,ZodAny:()=>tz,Schema:()=>oW,ParseStatus:()=>em,OK:()=>dX,NEVER:()=>Bxb,INVALID:()=>fb,EMPTY_PATH:()=>yUb,DIRTY:()=>$z,BRAND:()=>fUb});var gNI=a(()=>{CNI();ALI();GrG();ii();XrG();vNI()});var tY=a(()=>{gNI();gNI()});var aNI;var FrG=a(()=>{tY();aNI=mG.object({name:mG.string().optional(),description:mG.string().optional(),tools:mG.string().optional(),disallowedTools:mG.string().optional(),model:mG.enum(["sonnet","opus","haiku","inherit"]).optional().default("inherit"),permissionMode:mG.enum(["default","acceptEdits","dontAsk","bypassPermissions","plan"]).optional(),maxTurns:mG.number().optional()})});function RrG(I){let G=I.match(kxb);if(!G)return{frontmatter:aNI.parse({}),body:I.trim()};let Z=G[1],l=G[2].trim(),b={};for(let W of Z.split(`
332
+ `)}function vtG(I){try{let G=okb(I),Z=G.readSync();return G.closeSync(),Z===null}catch(G){return DG(`Error checking directory: ${G}`),!1}}var IUb,ZUb,lUb;var nh=a(()=>{Ul();XqG();mNI();spI();QW();IUb=new K5({fetchMethod:(I)=>GUb(I),ttl:300000,ttlAutopurge:!1,max:1000});ZUb=new K5({fetchMethod:(I)=>JtG(I),ttl:300000,ttlAutopurge:!1,max:1000});lUb=new K5({fetchMethod:(I)=>AtG(I),ttl:300000,ttlAutopurge:!1,max:1000})});import{existsSync as bUb}from"fs";import{join as WUb}from"path";import{homedir as NUb}from"os";function uK(){let I=Ob();if(!I.hasCompletedProjectOnboarding)pN({...I,hasCompletedProjectOnboarding:!0})}function YUb(){let I=rZ();XW({...I,lastReleaseNotesSeen:"1.3.4"})}function _9I({workspaceDir:I}){let Z=!Ob().hasCompletedProjectOnboarding,b=rZ().lastReleaseNotesSeen,W=[];if(!b||CtG.gt("1.3.4",b))W=QWI["1.3.4"]||[];let N=W.length>0;if(Ab.useEffect(()=>{if(N&&!Z)YUb()},[N,Z]),!Z&&!N)return null;let Y=bUb(WUb(I,"CLAUDE.md")),c=vtG(I),V=!Y&&!c,d=yK.isEnabled&&!rZ().shiftEnterKeyBindingInstalled,Q=dG();return Ab.createElement(GI,{flexDirection:"column",gap:1,padding:1,paddingBottom:0},Z&&Ab.createElement(Ab.Fragment,null,Ab.createElement(D,{color:Q.secondaryText},"Tips for getting started:"),Ab.createElement(fm,null,(()=>{let X=[];if(c)X.push(Ab.createElement(fm.Item,{key:"workspace"},Ab.createElement(D,{color:Q.secondaryText},"Ask Claude to create a new app or clone a repository.")));if(V)X.push(Ab.createElement(fm.Item,{key:"claudemd"},Ab.createElement(D,{color:Q.secondaryText},"Run ",Ab.createElement(D,{color:Q.text},"/init")," to create a CLAUDE.md file with instructions for Claude.")));if(d)X.push(Ab.createElement(fm.Item,{key:"terminal"},Ab.createElement(D,{color:Q.secondaryText},"Run ",Ab.createElement(D,{color:Q.text},"/terminal-setup"),Ab.createElement(D,{bold:!1}," to set up terminal integration"))));return X.push(Ab.createElement(fm.Item,{key:"questions"},Ab.createElement(D,{color:Q.secondaryText},"Ask Claude questions about your codebase."))),X.push(Ab.createElement(fm.Item,{key:"changes"},Ab.createElement(D,{color:Q.secondaryText},"Ask Claude to implement changes to your codebase."))),X})())),!Z&&N&&Ab.createElement(GI,{borderColor:dG().secondaryBorder,flexDirection:"column",marginRight:1},Ab.createElement(GI,{flexDirection:"column",gap:0},Ab.createElement(GI,{marginBottom:1},Ab.createElement(D,null,"\uD83C\uDD95 What's new in v","1.3.4",":")),Ab.createElement(GI,{flexDirection:"column",marginLeft:1},W.map((X,R)=>Ab.createElement(D,{key:R,color:dG().secondaryText},"• ",X))))),I===NUb()&&Ab.createElement(D,{color:dG().warning},"Note: You have launched ",Ab.createElement(D,{bold:!0},"claude")," in your home directory. For the best experience, launch it in a project directory instead."))}var Ab,CtG;var mWI=a(async()=>{MW();yl();qpI();nh();await gZ([_d(),oG(),dWI()]);Ab=hI(YG(),1),CtG=hI(fx(),1)});function f9I({isFocused:I,isSelected:G,smallPointer:Z,children:l}){let{styles:b}=aY("Select");return qi.default.createElement(GI,{...b.option({isFocused:I})},I&&qi.default.createElement(D,{...b.focusIndicator()},Z?HN.triangleDownSmall:HN.pointer),qi.default.createElement(D,{...b.label({isFocused:I,isSelected:G})},l),G&&qi.default.createElement(D,{...b.selectedIndicator()},HN.tick))}var qi;var s9I=a(async()=>{oR();await gZ([oG(),_d()]);qi=hI(YG(),1)});var XNI;var ptG=a(async()=>{await FNI();XNI=class XNI extends Map{first;constructor(I){let G=[],Z,l,b=0;for(let W of I){let N={...W,previous:l,next:void 0,index:b};if(l)l.next=N;Z||=N;let Y="value"in W?W.value:$9I(W);G.push([Y,N]),b++,l=N}super(G);this.first=Z}}});import{isDeepStrictEqual as cUb}from"node:util";var x1,VUb=(I,G)=>{switch(G.type){case"focus-next-option":{if(!I.focusedValue)return I;let Z=I.optionMap.get(I.focusedValue);if(!Z)return I;let l=Z.next;while(l&&!("value"in l))l=l.next;if(!l)return I;let b="value"in l?l.value:I.focusedValue;if(!(l.index>=I.visibleToIndex))return{...I,focusedValue:b};let N=Math.min(I.optionMap.size,I.visibleToIndex+1),Y=N-I.visibleOptionCount;return{...I,focusedValue:b,visibleFromIndex:Y,visibleToIndex:N}}case"focus-previous-option":{if(!I.focusedValue)return I;let Z=I.optionMap.get(I.focusedValue);if(!Z)return I;let l=Z.previous;while(l&&!("value"in l))l=l.previous;if(!l)return I;let b="value"in l?l.value:I.focusedValue;if(!(l.index<=I.visibleFromIndex))return{...I,focusedValue:b};let N=Math.max(0,I.visibleFromIndex-1),Y=N+I.visibleOptionCount;return{...I,focusedValue:b,visibleFromIndex:N,visibleToIndex:Y}}case"select-focused-option":return{...I,previousValue:I.value,value:I.focusedValue};case"reset":return G.state;case"set-focus":return{...I,focusedValue:G.value}}},o9I=(I)=>I.flatMap((G)=>{if("options"in G){let Z=o9I(G.options),l=Z.flatMap((W)=>("value"in W)?W.value:[]);return[...G.header!==void 0?[{header:G.header,optionValues:l}]:[],...Z]}return G}),ytG=({visibleOptionCount:I,defaultValue:G,options:Z})=>{let l=o9I(Z),b=typeof I==="number"?Math.min(I,l.length):l.length,W=new XNI(l),N=W.first,Y=N&&"value"in N?N.value:void 0;return{optionMap:W,visibleOptionCount:b,focusedValue:Y,visibleFromIndex:0,visibleToIndex:b,previousValue:G,value:G}},t9I=({visibleOptionCount:I=5,options:G,defaultValue:Z,onChange:l,onFocus:b,focusValue:W})=>{let N=o9I(G),[Y,c]=x1.useReducer(VUb,{visibleOptionCount:I,defaultValue:Z,options:G},ytG),[V,d]=x1.useState(N);if(N!==V&&!cUb(N,V))c({type:"reset",state:ytG({visibleOptionCount:I,defaultValue:Z,options:G})}),d(N);let Q=x1.useCallback(()=>{c({type:"focus-next-option"})},[]),X=x1.useCallback(()=>{c({type:"focus-previous-option"})},[]),R=x1.useCallback(()=>{c({type:"select-focused-option"})},[]),H=x1.useMemo(()=>{return N.map((h,A)=>({...h,index:A})).slice(Y.visibleFromIndex,Y.visibleToIndex)},[N,Y.visibleFromIndex,Y.visibleToIndex]);return x1.useEffect(()=>{if(Y.value&&Y.previousValue!==Y.value)l?.(Y.value)},[Y.previousValue,Y.value,G,l]),x1.useEffect(()=>{if(Y.focusedValue)b?.(Y.focusedValue)},[Y.focusedValue,b]),x1.useEffect(()=>{if(W)c({type:"set-focus",value:W})},[W]),{focusedValue:Y.focusedValue,visibleFromIndex:Y.visibleFromIndex,visibleToIndex:Y.visibleToIndex,value:Y.value,visibleOptions:H,focusNextOption:Q,focusPreviousOption:X,selectFocusedOption:R}};var r9I=a(async()=>{await ptG();x1=hI(YG(),1)});var e9I=({isDisabled:I=!1,state:G})=>{Mb((Z,l)=>{if(l.downArrow)G.focusNextOption();if(l.upArrow)G.focusPreviousOption();if(l.return)G.selectFocusedOption()},{isActive:!I})};var ILI=a(async()=>{await oG()});function JC({isDisabled:I=!1,visibleOptionCount:G=5,highlightText:Z,options:l,defaultValue:b,onChange:W,onFocus:N,focusValue:Y}){let c=t9I({visibleOptionCount:G,options:l,defaultValue:b,onChange:W,onFocus:N,focusValue:Y});e9I({isDisabled:I,state:c});let{styles:V}=aY("Select");return H6.default.createElement(GI,{...V.container()},c.visibleOptions.map((d)=>{let Q="value"in d?d.value:$9I(d),X=!I&&c.focusedValue!==void 0&&("value"in d?c.focusedValue===d.value:d.optionValues.includes(c.focusedValue)),R=!!c.value&&("value"in d?c.value===d.value:d.optionValues.includes(c.value)),H="header"in d,h="label"in d?d.label:d.header,A=h;if(Z&&h.includes(Z)){let C=h.indexOf(Z);A=H6.default.createElement(H6.default.Fragment,null,h.slice(0,C),H6.default.createElement(D,{...V.highlightedText()},Z),h.slice(C+Z.length))}return H6.default.createElement(f9I,{key:Q,isFocused:X,isSelected:R,smallPointer:H},A)}))}var H6,$9I=(I)=>`HEADER-${I.optionValues.join(",")}`;var FNI=a(async()=>{await gZ([oG(),s9I(),r9I(),ILI(),_d()]);H6=hI(YG(),1)});var RNI=a(async()=>{await gZ([FNI(),s9I(),ILI(),r9I()])});var GLI=w((dUb)=>{(function(){var I=typeof Symbol==="function"&&Symbol.for,G=I?Symbol.for("react.element"):60103,Z=I?Symbol.for("react.portal"):60106,l=I?Symbol.for("react.fragment"):60107,b=I?Symbol.for("react.strict_mode"):60108,W=I?Symbol.for("react.profiler"):60114,N=I?Symbol.for("react.provider"):60109,Y=I?Symbol.for("react.context"):60110,c=I?Symbol.for("react.async_mode"):60111,V=I?Symbol.for("react.concurrent_mode"):60111,d=I?Symbol.for("react.forward_ref"):60112,Q=I?Symbol.for("react.suspense"):60113,X=I?Symbol.for("react.suspense_list"):60120,R=I?Symbol.for("react.memo"):60115,H=I?Symbol.for("react.lazy"):60116,h=I?Symbol.for("react.block"):60121,A=I?Symbol.for("react.fundamental"):60117,C=I?Symbol.for("react.responder"):60118,g=I?Symbol.for("react.scope"):60119;function z(gI){return typeof gI==="string"||typeof gI==="function"||gI===l||gI===V||gI===W||gI===b||gI===Q||gI===X||typeof gI==="object"&&gI!==null&&(gI.$$typeof===H||gI.$$typeof===R||gI.$$typeof===N||gI.$$typeof===Y||gI.$$typeof===d||gI.$$typeof===A||gI.$$typeof===C||gI.$$typeof===g||gI.$$typeof===h)}function k(gI){if(typeof gI==="object"&&gI!==null){var DI=gI.$$typeof;switch(DI){case G:var UI=gI.type;switch(UI){case c:case V:case l:case W:case b:case Q:return UI;default:var sI=UI&&UI.$$typeof;switch(sI){case Y:case d:case H:case R:case N:return sI;default:return DI}}case Z:return DI}}return}var x=c,n=V,_=Y,lI=N,t=G,aI=d,QI=l,lG=H,uI=R,ZI=Z,zI=W,EI=b,VI=Q,JI=!1;function LI(gI){if(!JI)JI=!0,console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.");return MI(gI)||k(gI)===c}function MI(gI){return k(gI)===V}function BI(gI){return k(gI)===Y}function FG(gI){return k(gI)===N}function f(gI){return typeof gI==="object"&&gI!==null&&gI.$$typeof===G}function P(gI){return k(gI)===d}function NI(gI){return k(gI)===l}function GG(gI){return k(gI)===H}function ZG(gI){return k(gI)===R}function cG(gI){return k(gI)===Z}function bI(gI){return k(gI)===W}function dI(gI){return k(gI)===b}function CI(gI){return k(gI)===Q}dUb.AsyncMode=x,dUb.ConcurrentMode=n,dUb.ContextConsumer=_,dUb.ContextProvider=lI,dUb.Element=t,dUb.ForwardRef=aI,dUb.Fragment=QI,dUb.Lazy=lG,dUb.Memo=uI,dUb.Portal=ZI,dUb.Profiler=zI,dUb.StrictMode=EI,dUb.Suspense=VI,dUb.isAsyncMode=LI,dUb.isConcurrentMode=MI,dUb.isContextConsumer=BI,dUb.isContextProvider=FG,dUb.isElement=f,dUb.isForwardRef=P,dUb.isFragment=NI,dUb.isLazy=GG,dUb.isMemo=ZG,dUb.isPortal=cG,dUb.isProfiler=bI,dUb.isStrictMode=dI,dUb.isSuspense=CI,dUb.isValidElementType=z,dUb.typeOf=k})()});var gtG=w((X8Y,LtG)=>{var utG=Object.getOwnPropertySymbols,mUb=Object.prototype.hasOwnProperty,QUb=Object.prototype.propertyIsEnumerable;function XUb(I){if(I===null||I===void 0)throw TypeError("Object.assign cannot be called with null or undefined");return Object(I)}function FUb(){try{if(!Object.assign)return!1;var I=new String("abc");if(I[5]="de",Object.getOwnPropertyNames(I)[0]==="5")return!1;var G={};for(var Z=0;Z<10;Z++)G["_"+String.fromCharCode(Z)]=Z;var l=Object.getOwnPropertyNames(G).map(function(W){return G[W]});if(l.join("")!=="0123456789")return!1;var b={};if("abcdefghijklmnopqrst".split("").forEach(function(W){b[W]=W}),Object.keys(Object.assign({},b)).join("")!=="abcdefghijklmnopqrst")return!1;return!0}catch(W){return!1}}LtG.exports=FUb()?Object.assign:function(I,G){var Z,l=XUb(I),b;for(var W=1;W<arguments.length;W++){Z=Object(arguments[W]);for(var N in Z)if(mUb.call(Z,N))l[N]=Z[N];if(utG){b=utG(Z);for(var Y=0;Y<b.length;Y++)if(QUb.call(Z,b[Y]))l[b[Y]]=Z[b[Y]]}}return l}});var ZLI=w((F8Y,atG)=>{var RUb="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";atG.exports=RUb});var lLI=w((R8Y,ztG)=>{ztG.exports=Function.call.bind(Object.prototype.hasOwnProperty)});var UtG=w((H8Y,ktG)=>{var bLI=function(){};WLI=ZLI(),Ti={},NLI=lLI(),bLI=function(I){var G="Warning: "+I;if(typeof console<"u")console.error(G);try{throw Error(G)}catch(Z){}};var WLI,Ti,NLI;function BtG(I,G,Z,l,b){for(var W in I)if(NLI(I,W)){var N;try{if(typeof I[W]!=="function"){var Y=Error((l||"React class")+": "+Z+" type `"+W+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof I[W]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw Y.name="Invariant Violation",Y}N=I[W](G,W,l,Z,null,WLI)}catch(V){N=V}if(N&&!(N instanceof Error))bLI((l||"React class")+": type specification of "+Z+" `"+W+"` is invalid; the type checker function must return `null` or an `Error` but returned a "+typeof N+". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).");if(N instanceof Error&&!(N.message in Ti)){Ti[N.message]=!0;var c=b?b():"";bLI("Failed "+Z+" type: "+N.message+(c!=null?c:""))}}}BtG.resetWarningCache=function(){Ti={}};ktG.exports=BtG});var KtG=w((h8Y,MtG)=>{var OtG=hI(GLI()),HUb=gtG(),h6=ZLI(),YLI=lLI(),xtG=UtG(),w6=function(){};w6=function(I){var G="Warning: "+I;if(typeof console<"u")console.error(G);try{throw Error(G)}catch(Z){}};function HNI(){return null}MtG.exports=function(I,G){var Z=typeof Symbol==="function"&&Symbol.iterator,l="@@iterator";function b(uI){var ZI=uI&&(Z&&uI[Z]||uI[l]);if(typeof ZI==="function")return ZI}var W="<<anonymous>>",N={array:d("array"),bigint:d("bigint"),bool:d("boolean"),func:d("function"),number:d("number"),object:d("object"),string:d("string"),symbol:d("symbol"),any:Q(),arrayOf:X,element:R(),elementType:H(),instanceOf:h,node:z(),objectOf:C,oneOf:A,oneOfType:g,shape:x,exact:n};function Y(uI,ZI){if(uI===ZI)return uI!==0||1/uI===1/ZI;else return uI!==uI&&ZI!==ZI}function c(uI,ZI){this.message=uI,this.data=ZI&&typeof ZI==="object"?ZI:{},this.stack=""}c.prototype=Error.prototype;function V(uI){var ZI={},zI=0;function EI(JI,LI,MI,BI,FG,f,P){if(BI=BI||W,f=f||MI,P!==h6){if(G){var NI=Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");throw NI.name="Invariant Violation",NI}else if(typeof console<"u"){var GG=BI+":"+MI;if(!ZI[GG]&&zI<3)w6("You are manually calling a React.PropTypes validation function for the `"+f+"` prop on `"+BI+"`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."),ZI[GG]=!0,zI++}}if(LI[MI]==null){if(JI){if(LI[MI]===null)return new c("The "+FG+" `"+f+"` is marked as required "+("in `"+BI+"`, but its value is `null`."));return new c("The "+FG+" `"+f+"` is marked as required in "+("`"+BI+"`, but its value is `undefined`."))}return null}else return uI(LI,MI,BI,FG,f)}var VI=EI.bind(null,!1);return VI.isRequired=EI.bind(null,!0),VI}function d(uI){function ZI(zI,EI,VI,JI,LI,MI){var BI=zI[EI],FG=t(BI);if(FG!==uI){var f=aI(BI);return new c("Invalid "+JI+" `"+LI+"` of type "+("`"+f+"` supplied to `"+VI+"`, expected ")+("`"+uI+"`."),{expectedType:uI})}return null}return V(ZI)}function Q(){return V(HNI)}function X(uI){function ZI(zI,EI,VI,JI,LI){if(typeof uI!=="function")return new c("Property `"+LI+"` of component `"+VI+"` has invalid PropType notation inside arrayOf.");var MI=zI[EI];if(!Array.isArray(MI)){var BI=t(MI);return new c("Invalid "+JI+" `"+LI+"` of type "+("`"+BI+"` supplied to `"+VI+"`, expected an array."))}for(var FG=0;FG<MI.length;FG++){var f=uI(MI,FG,VI,JI,LI+"["+FG+"]",h6);if(f instanceof Error)return f}return null}return V(ZI)}function R(){function uI(ZI,zI,EI,VI,JI){var LI=ZI[zI];if(!I(LI)){var MI=t(LI);return new c("Invalid "+VI+" `"+JI+"` of type "+("`"+MI+"` supplied to `"+EI+"`, expected a single ReactElement."))}return null}return V(uI)}function H(){function uI(ZI,zI,EI,VI,JI){var LI=ZI[zI];if(!OtG.isValidElementType(LI)){var MI=t(LI);return new c("Invalid "+VI+" `"+JI+"` of type "+("`"+MI+"` supplied to `"+EI+"`, expected a single ReactElement type."))}return null}return V(uI)}function h(uI){function ZI(zI,EI,VI,JI,LI){if(!(zI[EI]instanceof uI)){var MI=uI.name||W,BI=lG(zI[EI]);return new c("Invalid "+JI+" `"+LI+"` of type "+("`"+BI+"` supplied to `"+VI+"`, expected ")+("instance of `"+MI+"`."))}return null}return V(ZI)}function A(uI){if(!Array.isArray(uI)){if(arguments.length>1)w6("Invalid arguments supplied to oneOf, expected an array, got "+arguments.length+" arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).");else w6("Invalid argument supplied to oneOf, expected an array.");return HNI}function ZI(zI,EI,VI,JI,LI){var MI=zI[EI];for(var BI=0;BI<uI.length;BI++)if(Y(MI,uI[BI]))return null;var FG=JSON.stringify(uI,function(P,NI){var GG=aI(NI);if(GG==="symbol")return String(NI);return NI});return new c("Invalid "+JI+" `"+LI+"` of value `"+String(MI)+"` "+("supplied to `"+VI+"`, expected one of "+FG+"."))}return V(ZI)}function C(uI){function ZI(zI,EI,VI,JI,LI){if(typeof uI!=="function")return new c("Property `"+LI+"` of component `"+VI+"` has invalid PropType notation inside objectOf.");var MI=zI[EI],BI=t(MI);if(BI!=="object")return new c("Invalid "+JI+" `"+LI+"` of type "+("`"+BI+"` supplied to `"+VI+"`, expected an object."));for(var FG in MI)if(YLI(MI,FG)){var f=uI(MI,FG,VI,JI,LI+"."+FG,h6);if(f instanceof Error)return f}return null}return V(ZI)}function g(uI){if(!Array.isArray(uI))return w6("Invalid argument supplied to oneOfType, expected an instance of array."),HNI;for(var ZI=0;ZI<uI.length;ZI++){var zI=uI[ZI];if(typeof zI!=="function")return w6("Invalid argument supplied to oneOfType. Expected an array of check functions, but received "+QI(zI)+" at index "+ZI+"."),HNI}function EI(VI,JI,LI,MI,BI){var FG=[];for(var f=0;f<uI.length;f++){var P=uI[f],NI=P(VI,JI,LI,MI,BI,h6);if(NI==null)return null;if(NI.data&&YLI(NI.data,"expectedType"))FG.push(NI.data.expectedType)}var GG=FG.length>0?", expected one of type ["+FG.join(", ")+"]":"";return new c("Invalid "+MI+" `"+BI+"` supplied to "+("`"+LI+"`"+GG+"."))}return V(EI)}function z(){function uI(ZI,zI,EI,VI,JI){if(!_(ZI[zI]))return new c("Invalid "+VI+" `"+JI+"` supplied to "+("`"+EI+"`, expected a ReactNode."));return null}return V(uI)}function k(uI,ZI,zI,EI,VI){return new c((uI||"React class")+": "+ZI+" type `"+zI+"."+EI+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+VI+"`.")}function x(uI){function ZI(zI,EI,VI,JI,LI){var MI=zI[EI],BI=t(MI);if(BI!=="object")return new c("Invalid "+JI+" `"+LI+"` of type `"+BI+"` "+("supplied to `"+VI+"`, expected `object`."));for(var FG in uI){var f=uI[FG];if(typeof f!=="function")return k(VI,JI,LI,FG,aI(f));var P=f(MI,FG,VI,JI,LI+"."+FG,h6);if(P)return P}return null}return V(ZI)}function n(uI){function ZI(zI,EI,VI,JI,LI){var MI=zI[EI],BI=t(MI);if(BI!=="object")return new c("Invalid "+JI+" `"+LI+"` of type `"+BI+"` "+("supplied to `"+VI+"`, expected `object`."));var FG=HUb({},zI[EI],uI);for(var f in FG){var P=uI[f];if(YLI(uI,f)&&typeof P!=="function")return k(VI,JI,LI,f,aI(P));if(!P)return new c("Invalid "+JI+" `"+LI+"` key `"+f+"` supplied to `"+VI+"`.\nBad object: "+JSON.stringify(zI[EI],null," ")+`
333
+ Valid keys: `+JSON.stringify(Object.keys(uI),null," "));var NI=P(MI,f,VI,JI,LI+"."+f,h6);if(NI)return NI}return null}return V(ZI)}function _(uI){switch(typeof uI){case"number":case"string":case"undefined":return!0;case"boolean":return!uI;case"object":if(Array.isArray(uI))return uI.every(_);if(uI===null||I(uI))return!0;var ZI=b(uI);if(ZI){var zI=ZI.call(uI),EI;if(ZI!==uI.entries){while(!(EI=zI.next()).done)if(!_(EI.value))return!1}else while(!(EI=zI.next()).done){var VI=EI.value;if(VI){if(!_(VI[1]))return!1}}}else return!1;return!0;default:return!1}}function lI(uI,ZI){if(uI==="symbol")return!0;if(!ZI)return!1;if(ZI["@@toStringTag"]==="Symbol")return!0;if(typeof Symbol==="function"&&ZI instanceof Symbol)return!0;return!1}function t(uI){var ZI=typeof uI;if(Array.isArray(uI))return"array";if(uI instanceof RegExp)return"object";if(lI(ZI,uI))return"symbol";return ZI}function aI(uI){if(typeof uI>"u"||uI===null)return""+uI;var ZI=t(uI);if(ZI==="object"){if(uI instanceof Date)return"date";else if(uI instanceof RegExp)return"regexp"}return ZI}function QI(uI){var ZI=aI(uI);switch(ZI){case"array":case"object":return"an "+ZI;case"boolean":case"date":case"regexp":return"a "+ZI;default:return ZI}}function lG(uI){if(!uI.constructor||!uI.constructor.name)return W;return uI.constructor.name}return N.checkPropTypes=xtG,N.resetWarningCache=xtG.resetWarningCache,N.PropTypes=N,N}});var jtG=w((w8Y,DtG)=>{var VLI=hI(GLI());cLI=!0,DtG.exports=KtG()(VLI.isElement,cLI);var cLI});var ntG,uN,qtG;var TtG=a(()=>{ntG=process.env.TERM_PROGRAM==="Apple_Terminal",uN={};uN.cursorTo=(I,G)=>{if(typeof I!=="number")throw TypeError("The `x` argument is required");if(typeof G!=="number")return"\x1B["+(I+1)+"G";return"\x1B["+(G+1)+";"+(I+1)+"H"};uN.cursorMove=(I,G)=>{if(typeof I!=="number")throw TypeError("The `x` argument is required");let Z="";if(I<0)Z+="\x1B["+-I+"D";else if(I>0)Z+="\x1B["+I+"C";if(G<0)Z+="\x1B["+-G+"A";else if(G>0)Z+="\x1B["+G+"B";return Z};uN.cursorUp=(I=1)=>"\x1B["+I+"A";uN.cursorDown=(I=1)=>"\x1B["+I+"B";uN.cursorForward=(I=1)=>"\x1B["+I+"C";uN.cursorBackward=(I=1)=>"\x1B["+I+"D";uN.cursorLeft="\x1B[G";uN.cursorSavePosition=ntG?"\x1B7":"\x1B[s";uN.cursorRestorePosition=ntG?"\x1B8":"\x1B[u";uN.cursorGetPosition="\x1B[6n";uN.cursorNextLine="\x1B[E";uN.cursorPrevLine="\x1B[F";uN.cursorHide="\x1B[?25l";uN.cursorShow="\x1B[?25h";uN.eraseLines=(I)=>{let G="";for(let Z=0;Z<I;Z++)G+=uN.eraseLine+(Z<I-1?uN.cursorUp():"");if(I)G+=uN.cursorLeft;return G};uN.eraseEndLine="\x1B[K";uN.eraseStartLine="\x1B[1K";uN.eraseLine="\x1B[2K";uN.eraseDown="\x1B[J";uN.eraseUp="\x1B[1J";uN.eraseScreen="\x1B[2J";uN.scrollUp="\x1B[S";uN.scrollDown="\x1B[T";uN.clearScreen="\x1Bc";uN.clearTerminal=process.platform==="win32"?`${uN.eraseScreen}\x1B[0f`:`${uN.eraseScreen}\x1B[3J\x1B[H`;uN.beep="\x07";uN.link=(I,G)=>{return["\x1B]","8",";",";",G,"\x07",I,"\x1B]","8",";",";","\x07"].join("")};uN.image=(I,G={})=>{let Z="\x1B]1337;File=inline=1";if(G.width)Z+=`;width=${G.width}`;if(G.height)Z+=`;height=${G.height}`;if(G.preserveAspectRatio===!1)Z+=";preserveAspectRatio=0";return Z+":"+I.toString("base64")+"\x07"};uN.iTerm={setCwd:(I=process.cwd())=>`\x1B]50;CurrentDir=${I}\x07`,annotation:(I,G={})=>{let Z="\x1B]1337;",l=typeof G.x<"u",b=typeof G.y<"u";if((l||b)&&!(l&&b&&typeof G.length<"u"))throw Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");if(I=I.replace(/\|/g,""),Z+=G.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",G.length>0)Z+=(l?[I,G.length,G.x,G.y]:[G.length,I]).join("|");else Z+=I;return Z+"\x07"}};qtG=uN});var PtG=w((E8Y,itG)=>{var hUb=re(),J6=z5I();function StG(I){if(/^\d{3,4}$/.test(I)){let Z=/(\d{1,2})(\d{2})/.exec(I);return{major:0,minor:parseInt(Z[1],10),patch:parseInt(Z[2],10)}}let G=(I||"").split(".").map((Z)=>parseInt(Z,10));return{major:G[0],minor:G[1],patch:G[2]}}function dLI(I){let{env:G}=process;if("FORCE_HYPERLINK"in G)return!(G.FORCE_HYPERLINK.length>0&&parseInt(G.FORCE_HYPERLINK,10)===0);if(J6("no-hyperlink")||J6("no-hyperlinks")||J6("hyperlink=false")||J6("hyperlink=never"))return!1;if(J6("hyperlink=true")||J6("hyperlink=always"))return!0;if("NETLIFY"in G)return!0;if(!hUb.supportsColor(I))return!1;if(I&&!I.isTTY)return!1;if(process.platform==="win32")return!1;if("CI"in G)return!1;if("TEAMCITY_VERSION"in G)return!1;if("TERM_PROGRAM"in G){let Z=StG(G.TERM_PROGRAM_VERSION);switch(G.TERM_PROGRAM){case"iTerm.app":if(Z.major===3)return Z.minor>=1;return Z.major>3;case"WezTerm":return Z.major>=20200620;case"vscode":return Z.major>1||Z.major===1&&Z.minor>=72}}if("VTE_VERSION"in G){if(G.VTE_VERSION==="0.50.0")return!1;let Z=StG(G.VTE_VERSION);return Z.major>0||Z.minor>=50}return!1}itG.exports={supportsHyperlink:dLI,stdout:dLI(process.stdout),stderr:dLI(process.stderr)}});function fz(I,G,{target:Z="stdout",...l}={}){if(!hNI.default[Z]){if(l.fallback===!1)return I;return typeof l.fallback==="function"?l.fallback(I,G):`${I} (​${G}​)`}return qtG.link(I,G)}var hNI;var _tG=a(()=>{TtG();hNI=hI(PtG(),1);fz.isSupported=hNI.default.stdout;fz.stderr=(I,G,Z={})=>fz(I,G,{target:"stderr",...Z});fz.stderr.isSupported=hNI.default.stderr});var mLI,sz,ftG=({children:I,url:G,fallback:Z=!0})=>mLI.default.createElement(ebI,{transform:(l)=>fz(l,G,{fallback:Z})},mLI.default.createElement(D,null,I)),ou;var Si=a(async()=>{_tG();await oG();mLI=hI(YG(),1),sz=hI(jtG(),1);ftG.propTypes={children:sz.default.oneOfType([sz.default.arrayOf(sz.default.node),sz.default.node]).isRequired,url:sz.default.string.isRequired,fallback:sz.default.bool};ou=ftG});function tu({url:I,children:G}){let Z=wUb.includes(sl.terminal??""),l=G||I;if(Z||l!==I)return wNI.default.createElement(ou,{url:I},wNI.default.createElement(D,null,l));else return wNI.default.createElement(D,{underline:!0},l)}var wNI,wUb;var JNI=a(async()=>{k2();await gZ([Si(),oG()]);wNI=hI(YG(),1),wUb=["iTerm.app","WezTerm","Hyper","VSCode"]});function stG({onDone:I}){return Mb((G,Z)=>{if(Z.ctrl&&(G==="c"||G==="d")||Z.escape)I()}),ru.default.createElement(GI,{flexDirection:"column",borderStyle:"round",padding:1,borderColor:dG().secondaryBorder},ru.default.createElement(GI,{marginBottom:1,flexDirection:"column"},ru.default.createElement(D,{bold:!0},"You've spent $5 on the Anthropic API this session."),ru.default.createElement(D,null,"Learn more about how to monitor your spending:"),ru.default.createElement(tu,{url:"https://docs.anthropic.com/s/claude-code-cost"})),ru.default.createElement(GI,null,ru.default.createElement(JC,{options:[{value:"ok",label:"Got it, thanks!"}],onChange:I})))}var ru;var $tG=a(async()=>{yl();await gZ([oG(),RNI(),JNI()]);ru=hI(YG(),1)});function JUb(){if(otG)return;otG=!0,process.stdout.on("resize",()=>{for(let I of QLI)I()})}function NY(){let[I,G]=ANI.useState({columns:process.stdout.columns||80,rows:process.stdout.rows||24});return ANI.useEffect(()=>{function Z(){G({columns:process.stdout.columns||80,rows:process.stdout.rows||24})}return JUb(),QLI.add(Z),()=>{QLI.delete(Z)}},[]),I}var ANI,QLI,otG=!1;var VX=a(()=>{ANI=hI(YG(),1),QLI=new Set});function AUb(I,G,Z){let l=(N)=>({r:parseInt(N.slice(1,3),16),g:parseInt(N.slice(3,5),16),b:parseInt(N.slice(5,7),16)}),b=l(I),W=l(G);return Array.from({length:Z},(N,Y)=>{let c=Z===1?0:Y/(Z-1),V=Math.round(b.r+(W.r-b.r)*c),d=Math.round(b.g+(W.g-b.g)*c),Q=Math.round(b.b+(W.b-b.b)*c);return`#${V.toString(16).padStart(2,"0")}${d.toString(16).padStart(2,"0")}${Q.toString(16).padStart(2,"0")}`})}function ENI(){let I=dG(),Z=I.claude==="#ff9933"||I.claude==="#006699"||I.claude==="#3399ff"?XLI.map(()=>I.claude):AUb(ttG[0],ttG[4],XLI.length);return FLI.default.createElement(GI,{flexDirection:"column",alignItems:"flex-start"},XLI.map((l,b)=>FLI.default.createElement(D,{key:b,color:Z[b]},l)))}var FLI,XLI,ttG;var RLI=a(async()=>{yl();await oG();FLI=hI(YG(),1),XLI=[" ██████╗ ██╗ ██╗","██╔═══██╗██║ ██║","██║ ██║██║ █╗ ██║","╚██████╔╝╚███╔███╔╝"," ╚═══▀▀╝ ╚══╝╚══╝"],ttG=["#D97757","#DC8555","#E09353","#E49E4E","#E8A849"]});function EUb(I,G){if(I.length<=G)return I;return"..."+I.slice(I.length-G+3)}function rtG({mcpClients:I,theme:G}){if(!I.length)return null;return $G.createElement(D,null,$G.createElement(D,{color:G.secondaryText},"MCP: "),I.map((Z,l)=>$G.createElement($G.Fragment,{key:l},l>0&&$G.createElement(D,{color:G.secondaryText}," · "),$G.createElement(D,{color:G.secondaryText},Z.name," "),$G.createElement(D,{bold:!0,color:Z.type==="connected"?G.success:G.error},Z.type==="connected"?"✓":"✗"))))}function etG({mcpClients:I,isDefaultModel:G=!1}){let{columns:Z}=NY(),l=Z>=80,b=dG(),W=process.env.ANTHROPIC_MODEL,Y=rZ().model,c=Bh(),V=!IbI(),d=!G&&Boolean(W),Q=process.env.USER_TYPE==="ant"&&Boolean(V||process.env.DISABLE_PROMPT_CACHING||process.env.API_TIMEOUT_MS||process.env.MAX_THINKING_TOKENS||process.env.ANTHROPIC_BASE_URL||d),X="1.3.4",R=Y||W||"claude-sonnet-4-5-20250929",H=bZ(),h=l?Z-30:Z-12,A=EUb(H,h),C=l?Math.min(Z-2,Math.max(78,H.length+12)):Math.max(HLI,Math.min(Z-2,H.length+12));if(l)return $G.createElement(GI,{flexDirection:"column"},$G.createElement(GI,{borderColor:b.claude,borderStyle:"round",flexDirection:"column",paddingLeft:1,paddingRight:1,width:C},$G.createElement(GI,{flexDirection:"row",gap:3,paddingTop:0},$G.createElement(GI,{flexDirection:"column",justifyContent:"center"},$G.createElement(ENI,null)),$G.createElement(GI,{flexDirection:"column",justifyContent:"center",gap:0},$G.createElement(D,null,$G.createElement(D,{bold:!0,color:b.claude},yN),$G.createElement(D,{color:b.secondaryText}," v","1.3.4")),$G.createElement(D,{color:b.secondaryText},R),$G.createElement(D,{color:b.secondaryText,italic:!0},"/help for help"),$G.createElement(D,null," "),$G.createElement(D,{color:b.secondaryText},"cwd: ",A))),Q&&$G.createElement(GI,{borderColor:b.secondaryBorder,borderStyle:"single",borderBottom:!1,borderLeft:!1,borderRight:!1,borderTop:!0,flexDirection:"column",marginLeft:2,marginRight:1,paddingTop:1},$G.createElement(GI,{marginBottom:1},$G.createElement(D,{color:b.secondaryText},"Overrides (via env):")),d&&$G.createElement(D,{color:b.secondaryText},"• Model: ",$G.createElement(D,{bold:!0},W)),V&&c?$G.createElement(D,{color:b.secondaryText},"• API Key: ",$G.createElement(D,{bold:!0},"sk-ant-…",c.slice(-C+25))):null,process.env.DISABLE_PROMPT_CACHING?$G.createElement(D,{color:b.secondaryText},"• Prompt caching:"," ",$G.createElement(D,{color:b.error,bold:!0},"off")):null,process.env.API_TIMEOUT_MS?$G.createElement(D,{color:b.secondaryText},"• API timeout: ",$G.createElement(D,{bold:!0},process.env.API_TIMEOUT_MS,"ms")):null,process.env.MAX_THINKING_TOKENS?$G.createElement(D,{color:b.secondaryText},"• Max thinking tokens: ",$G.createElement(D,{bold:!0},process.env.MAX_THINKING_TOKENS)):null,process.env.ANTHROPIC_BASE_URL?$G.createElement(D,{color:b.secondaryText},"• API Base URL: ",$G.createElement(D,{bold:!0},process.env.ANTHROPIC_BASE_URL)):null),I.length?$G.createElement(GI,{borderColor:b.secondaryBorder,borderStyle:"single",borderBottom:!1,borderLeft:!1,borderRight:!1,borderTop:!0,flexDirection:"row",marginLeft:1,marginRight:1,paddingTop:1,paddingBottom:0},$G.createElement(rtG,{mcpClients:I,theme:b})):null));return $G.createElement(GI,{flexDirection:"column"},$G.createElement(GI,{borderColor:b.claude,borderStyle:"round",flexDirection:"column",gap:1,paddingLeft:1,width:C},$G.createElement(D,null,$G.createElement(D,{color:b.claude},"✦")," ",$G.createElement(D,{bold:!0},yN),$G.createElement(D,{color:b.secondaryText}," v","1.3.4")),$G.createElement(GI,{paddingLeft:2,flexDirection:"column",gap:1},$G.createElement(D,{color:b.secondaryText},R),$G.createElement(D,{color:b.secondaryText,italic:!0},"/help for help"),$G.createElement(D,{color:b.secondaryText},"cwd: ",A)),Q&&$G.createElement(GI,{borderColor:b.secondaryBorder,borderStyle:"single",borderBottom:!1,borderLeft:!1,borderRight:!1,borderTop:!0,flexDirection:"column",marginLeft:2,marginRight:1,paddingTop:1},$G.createElement(GI,{marginBottom:1},$G.createElement(D,{color:b.secondaryText},"Overrides (via env):")),d&&$G.createElement(D,{color:b.secondaryText},"• Model: ",$G.createElement(D,{bold:!0},W)),V&&c?$G.createElement(D,{color:b.secondaryText},"• API Key: ",$G.createElement(D,{bold:!0},"sk-ant-…",c.slice(-C+25))):null,process.env.DISABLE_PROMPT_CACHING?$G.createElement(D,{color:b.secondaryText},"• Prompt caching:"," ",$G.createElement(D,{color:b.error,bold:!0},"off")):null,process.env.API_TIMEOUT_MS?$G.createElement(D,{color:b.secondaryText},"• API timeout: ",$G.createElement(D,{bold:!0},process.env.API_TIMEOUT_MS,"ms")):null,process.env.MAX_THINKING_TOKENS?$G.createElement(D,{color:b.secondaryText},"• Max thinking tokens: ",$G.createElement(D,{bold:!0},process.env.MAX_THINKING_TOKENS)):null,process.env.ANTHROPIC_BASE_URL?$G.createElement(D,{color:b.secondaryText},"• API Base URL: ",$G.createElement(D,{bold:!0},process.env.ANTHROPIC_BASE_URL)):null),I.length?$G.createElement(GI,{borderColor:b.secondaryBorder,borderStyle:"single",borderBottom:!1,borderLeft:!1,borderRight:!1,borderTop:!0,flexDirection:"row",flexWrap:"wrap",marginLeft:1,marginRight:1,paddingTop:1,paddingBottom:0},$G.createElement(rtG,{mcpClients:I,theme:b})):null))}var $G,HLI=46;var hLI=a(async()=>{yl();MW();QW();VX();await gZ([oG(),RLI()]);$G=hI(YG(),1)});var NN,wLI,$Z,g4=(I)=>{switch(typeof I){case"undefined":return $Z.undefined;case"string":return $Z.string;case"number":return Number.isNaN(I)?$Z.nan:$Z.number;case"boolean":return $Z.boolean;case"function":return $Z.function;case"bigint":return $Z.bigint;case"symbol":return $Z.symbol;case"object":if(Array.isArray(I))return $Z.array;if(I===null)return $Z.null;if(I.then&&typeof I.then==="function"&&I.catch&&typeof I.catch==="function")return $Z.promise;if(typeof Map<"u"&&I instanceof Map)return $Z.map;if(typeof Set<"u"&&I instanceof Set)return $Z.set;if(typeof Date<"u"&&I instanceof Date)return $Z.date;return $Z.object;default:return $Z.unknown}};var ii=a(()=>{(function(I){I.assertEqual=(b)=>{};function G(b){}I.assertIs=G;function Z(b){throw Error()}I.assertNever=Z,I.arrayToEnum=(b)=>{let W={};for(let N of b)W[N]=N;return W},I.getValidEnumValues=(b)=>{let W=I.objectKeys(b).filter((Y)=>typeof b[b[Y]]!=="number"),N={};for(let Y of W)N[Y]=b[Y];return I.objectValues(N)},I.objectValues=(b)=>{return I.objectKeys(b).map(function(W){return b[W]})},I.objectKeys=typeof Object.keys==="function"?(b)=>Object.keys(b):(b)=>{let W=[];for(let N in b)if(Object.prototype.hasOwnProperty.call(b,N))W.push(N);return W},I.find=(b,W)=>{for(let N of b)if(W(N))return N;return},I.isInteger=typeof Number.isInteger==="function"?(b)=>Number.isInteger(b):(b)=>typeof b==="number"&&Number.isFinite(b)&&Math.floor(b)===b;function l(b,W=" | "){return b.map((N)=>typeof N==="string"?`'${N}'`:N).join(W)}I.joinValues=l,I.jsonStringifyReplacer=(b,W)=>{if(typeof W==="bigint")return W.toString();return W}})(NN||(NN={}));(function(I){I.mergeShapes=(G,Z)=>{return{...G,...Z}}})(wLI||(wLI={}));$Z=NN.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"])});var BZ,vUb=(I)=>{return JSON.stringify(I,null,2).replace(/"([^"]+)":/g,"$1:")},O1;var vNI=a(()=>{ii();BZ=NN.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);O1=class O1 extends Error{get errors(){return this.issues}constructor(I){super();this.issues=[],this.addIssue=(Z)=>{this.issues=[...this.issues,Z]},this.addIssues=(Z=[])=>{this.issues=[...this.issues,...Z]};let G=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,G);else this.__proto__=G;this.name="ZodError",this.issues=I}format(I){let G=I||function(b){return b.message},Z={_errors:[]},l=(b)=>{for(let W of b.issues)if(W.code==="invalid_union")W.unionErrors.map(l);else if(W.code==="invalid_return_type")l(W.returnTypeError);else if(W.code==="invalid_arguments")l(W.argumentsError);else if(W.path.length===0)Z._errors.push(G(W));else{let N=Z,Y=0;while(Y<W.path.length){let c=W.path[Y];if(Y!==W.path.length-1)N[c]=N[c]||{_errors:[]};else N[c]=N[c]||{_errors:[]},N[c]._errors.push(G(W));N=N[c],Y++}}};return l(this),Z}static assert(I){if(!(I instanceof O1))throw Error(`Not a ZodError: ${I}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,NN.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(I=(G)=>G.message){let G={},Z=[];for(let l of this.issues)if(l.path.length>0){let b=l.path[0];G[b]=G[b]||[],G[b].push(I(l))}else Z.push(I(l));return{formErrors:Z,fieldErrors:G}}get formErrors(){return this.flatten()}};O1.create=(I)=>{return new O1(I)}});var CUb=(I,G)=>{let Z;switch(I.code){case BZ.invalid_type:if(I.received===$Z.undefined)Z="Required";else Z=`Expected ${I.expected}, received ${I.received}`;break;case BZ.invalid_literal:Z=`Invalid literal value, expected ${JSON.stringify(I.expected,NN.jsonStringifyReplacer)}`;break;case BZ.unrecognized_keys:Z=`Unrecognized key(s) in object: ${NN.joinValues(I.keys,", ")}`;break;case BZ.invalid_union:Z="Invalid input";break;case BZ.invalid_union_discriminator:Z=`Invalid discriminator value. Expected ${NN.joinValues(I.options)}`;break;case BZ.invalid_enum_value:Z=`Invalid enum value. Expected ${NN.joinValues(I.options)}, received '${I.received}'`;break;case BZ.invalid_arguments:Z="Invalid function arguments";break;case BZ.invalid_return_type:Z="Invalid function return type";break;case BZ.invalid_date:Z="Invalid date";break;case BZ.invalid_string:if(typeof I.validation==="object")if("includes"in I.validation){if(Z=`Invalid input: must include "${I.validation.includes}"`,typeof I.validation.position==="number")Z=`${Z} at one or more positions greater than or equal to ${I.validation.position}`}else if("startsWith"in I.validation)Z=`Invalid input: must start with "${I.validation.startsWith}"`;else if("endsWith"in I.validation)Z=`Invalid input: must end with "${I.validation.endsWith}"`;else NN.assertNever(I.validation);else if(I.validation!=="regex")Z=`Invalid ${I.validation}`;else Z="Invalid";break;case BZ.too_small:if(I.type==="array")Z=`Array must contain ${I.exact?"exactly":I.inclusive?"at least":"more than"} ${I.minimum} element(s)`;else if(I.type==="string")Z=`String must contain ${I.exact?"exactly":I.inclusive?"at least":"over"} ${I.minimum} character(s)`;else if(I.type==="number")Z=`Number must be ${I.exact?"exactly equal to ":I.inclusive?"greater than or equal to ":"greater than "}${I.minimum}`;else if(I.type==="bigint")Z=`Number must be ${I.exact?"exactly equal to ":I.inclusive?"greater than or equal to ":"greater than "}${I.minimum}`;else if(I.type==="date")Z=`Date must be ${I.exact?"exactly equal to ":I.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(I.minimum))}`;else Z="Invalid input";break;case BZ.too_big:if(I.type==="array")Z=`Array must contain ${I.exact?"exactly":I.inclusive?"at most":"less than"} ${I.maximum} element(s)`;else if(I.type==="string")Z=`String must contain ${I.exact?"exactly":I.inclusive?"at most":"under"} ${I.maximum} character(s)`;else if(I.type==="number")Z=`Number must be ${I.exact?"exactly":I.inclusive?"less than or equal to":"less than"} ${I.maximum}`;else if(I.type==="bigint")Z=`BigInt must be ${I.exact?"exactly":I.inclusive?"less than or equal to":"less than"} ${I.maximum}`;else if(I.type==="date")Z=`Date must be ${I.exact?"exactly":I.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(I.maximum))}`;else Z="Invalid input";break;case BZ.custom:Z="Invalid input";break;case BZ.invalid_intersection_types:Z="Intersection results could not be merged";break;case BZ.not_multiple_of:Z=`Number must be a multiple of ${I.multipleOf}`;break;case BZ.not_finite:Z="Number must be finite";break;default:Z=G.defaultError,NN.assertNever(I)}return{message:Z}},AC;var JLI=a(()=>{vNI();ii();AC=CUb});function pUb(I){IrG=I}function A6(){return IrG}var IrG;var CNI=a(()=>{JLI();IrG=AC});function Ql(I,G){let Z=A6(),l=Pi({issueData:G,data:I.data,path:I.path,errorMaps:[I.common.contextualErrorMap,I.schemaErrorMap,Z,Z===AC?void 0:AC].filter((b)=>!!b)});I.common.issues.push(l)}class em{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray(I,G){let Z=[];for(let l of G){if(l.status==="aborted")return fb;if(l.status==="dirty")I.dirty();Z.push(l.value)}return{status:I.value,value:Z}}static async mergeObjectAsync(I,G){let Z=[];for(let l of G){let b=await l.key,W=await l.value;Z.push({key:b,value:W})}return em.mergeObjectSync(I,Z)}static mergeObjectSync(I,G){let Z={};for(let l of G){let{key:b,value:W}=l;if(b.status==="aborted")return fb;if(W.status==="aborted")return fb;if(b.status==="dirty")I.dirty();if(W.status==="dirty")I.dirty();if(b.value!=="__proto__"&&(typeof W.value<"u"||l.alwaysSet))Z[b.value]=W.value}return{status:I.value,value:Z}}}var Pi=(I)=>{let{data:G,path:Z,errorMaps:l,issueData:b}=I,W=[...Z,...b.path||[]],N={...b,path:W};if(b.message!==void 0)return{...b,path:W,message:b.message};let Y="",c=l.filter((V)=>!!V).slice().reverse();for(let V of c)Y=V(N,{data:G,defaultError:Y}).message;return{...b,path:W,message:Y}},yUb,fb,$z=(I)=>({status:"dirty",value:I}),dX=(I)=>({status:"valid",value:I}),pNI=(I)=>I.status==="aborted",yNI=(I)=>I.status==="dirty",eu=(I)=>I.status==="valid",E6=(I)=>typeof Promise<"u"&&I instanceof Promise;var ALI=a(()=>{CNI();JLI();yUb=[];fb=Object.freeze({status:"aborted"})});var GrG=()=>{};var el;var ZrG=a(()=>{(function(I){I.errToObj=(G)=>typeof G==="string"?{message:G}:G||{},I.toString=(G)=>typeof G==="string"?G:G?.message})(el||(el={}))});class _5{constructor(I,G,Z,l){this._cachedPath=[],this.parent=I,this.data=G,this._path=Z,this._key=l}get path(){if(!this._cachedPath.length)if(Array.isArray(this._key))this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}function LW(I){if(!I)return{};let{errorMap:G,invalid_type_error:Z,required_error:l,description:b}=I;if(G&&(Z||l))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(G)return{errorMap:G,description:b};return{errorMap:(N,Y)=>{let{message:c}=I;if(N.code==="invalid_enum_value")return{message:c??Y.defaultError};if(typeof Y.data>"u")return{message:c??l??Y.defaultError};if(N.code!=="invalid_type")return{message:Y.defaultError};return{message:c??Z??Y.defaultError}},description:b}}class oW{get description(){return this._def.description}_getType(I){return g4(I.data)}_getOrReturnCtx(I,G){return G||{common:I.parent.common,data:I.data,parsedType:g4(I.data),schemaErrorMap:this._def.errorMap,path:I.path,parent:I.parent}}_processInputParams(I){return{status:new em,ctx:{common:I.parent.common,data:I.data,parsedType:g4(I.data),schemaErrorMap:this._def.errorMap,path:I.path,parent:I.parent}}}_parseSync(I){let G=this._parse(I);if(E6(G))throw Error("Synchronous parse encountered promise.");return G}_parseAsync(I){let G=this._parse(I);return Promise.resolve(G)}parse(I,G){let Z=this.safeParse(I,G);if(Z.success)return Z.data;throw Z.error}safeParse(I,G){let Z={common:{issues:[],async:G?.async??!1,contextualErrorMap:G?.errorMap},path:G?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:I,parsedType:g4(I)},l=this._parseSync({data:I,path:Z.path,parent:Z});return lrG(Z,l)}"~validate"(I){let G={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:I,parsedType:g4(I)};if(!this["~standard"].async)try{let Z=this._parseSync({data:I,path:[],parent:G});return eu(Z)?{value:Z.value}:{issues:G.common.issues}}catch(Z){if(Z?.message?.toLowerCase()?.includes("encountered"))this["~standard"].async=!0;G.common={issues:[],async:!0}}return this._parseAsync({data:I,path:[],parent:G}).then((Z)=>eu(Z)?{value:Z.value}:{issues:G.common.issues})}async parseAsync(I,G){let Z=await this.safeParseAsync(I,G);if(Z.success)return Z.data;throw Z.error}async safeParseAsync(I,G){let Z={common:{issues:[],contextualErrorMap:G?.errorMap,async:!0},path:G?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:I,parsedType:g4(I)},l=this._parse({data:I,path:Z.path,parent:Z}),b=await(E6(l)?l:Promise.resolve(l));return lrG(Z,b)}refine(I,G){let Z=(l)=>{if(typeof G==="string"||typeof G>"u")return{message:G};else if(typeof G==="function")return G(l);else return G};return this._refinement((l,b)=>{let W=I(l),N=()=>b.addIssue({code:BZ.custom,...Z(l)});if(typeof Promise<"u"&&W instanceof Promise)return W.then((Y)=>{if(!Y)return N(),!1;else return!0});if(!W)return N(),!1;else return!0})}refinement(I,G){return this._refinement((Z,l)=>{if(!I(Z))return l.addIssue(typeof G==="function"?G(Z,l):G),!1;else return!0})}_refinement(I){return new f5({schema:this,typeName:kZ.ZodEffects,effect:{type:"refinement",refinement:I}})}superRefine(I){return this._refinement(I)}constructor(I){this.spa=this.safeParseAsync,this._def=I,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:(G)=>this["~validate"](G)}}optional(){return P5.create(this,this._def)}nullable(){return vC.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return i5.create(this)}promise(){return ez.create(this,this._def)}or(I){return L6.create([this,I],this._def)}and(I){return g6.create(this,I,this._def)}transform(I){return new f5({...LW(this._def),schema:this,typeName:kZ.ZodEffects,effect:{type:"transform",transform:I}})}default(I){let G=typeof I==="function"?I:()=>I;return new k6({...LW(this._def),innerType:this,defaultValue:G,typeName:kZ.ZodDefault})}brand(){return new LNI({typeName:kZ.ZodBranded,type:this,...LW(this._def)})}catch(I){let G=typeof I==="function"?I:()=>I;return new U6({...LW(this._def),innerType:this,catchValue:G,typeName:kZ.ZodCatch})}describe(I){return new this.constructor({...this._def,description:I})}pipe(I){return ti.create(this,I)}readonly(){return x6.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}function NrG(I){let G="[0-5]\\d";if(I.precision)G=`${G}\\.\\d{${I.precision}}`;else if(I.precision==null)G=`${G}(\\.\\d+)?`;let Z=I.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${G})${Z}`}function TUb(I){return new RegExp(`^${NrG(I)}$`)}function YrG(I){let G=`${WrG}T${NrG(I)}`,Z=[];if(Z.push(I.local?"Z?":"Z"),I.offset)Z.push("([+-]\\d{2}:?\\d{2})");return G=`${G}(${Z.join("|")})`,new RegExp(`^${G}$`)}function SUb(I,G){if((G==="v4"||!G)&&OUb.test(I))return!0;if((G==="v6"||!G)&&KUb.test(I))return!0;return!1}function iUb(I,G){if(!BUb.test(I))return!1;try{let[Z]=I.split(".");if(!Z)return!1;let l=Z.replace(/-/g,"+").replace(/_/g,"/").padEnd(Z.length+(4-Z.length%4)%4,"="),b=JSON.parse(atob(l));if(typeof b!=="object"||b===null)return!1;if("typ"in b&&b?.typ!=="JWT")return!1;if(!b.alg)return!1;if(G&&b.alg!==G)return!1;return!0}catch{return!1}}function PUb(I,G){if((G==="v4"||!G)&&MUb.test(I))return!0;if((G==="v6"||!G)&&DUb.test(I))return!0;return!1}function _Ub(I,G){let Z=(I.toString().split(".")[1]||"").length,l=(G.toString().split(".")[1]||"").length,b=Z>l?Z:l,W=Number.parseInt(I.toFixed(b).replace(".","")),N=Number.parseInt(G.toFixed(b).replace(".",""));return W%N/10**b}function v6(I){if(I instanceof Z2){let G={};for(let Z in I.shape){let l=I.shape[Z];G[Z]=P5.create(v6(l))}return new Z2({...I._def,shape:()=>G})}else if(I instanceof i5)return new i5({...I._def,type:v6(I.element)});else if(I instanceof P5)return P5.create(v6(I.unwrap()));else if(I instanceof vC)return vC.create(v6(I.unwrap()));else if(I instanceof z4)return z4.create(I.items.map((G)=>v6(G)));else return I}function vLI(I,G){let Z=g4(I),l=g4(G);if(I===G)return{valid:!0,data:I};else if(Z===$Z.object&&l===$Z.object){let b=NN.objectKeys(G),W=NN.objectKeys(I).filter((Y)=>b.indexOf(Y)!==-1),N={...I,...G};for(let Y of W){let c=vLI(I[Y],G[Y]);if(!c.valid)return{valid:!1};N[Y]=c.data}return{valid:!0,data:N}}else if(Z===$Z.array&&l===$Z.array){if(I.length!==G.length)return{valid:!1};let b=[];for(let W=0;W<I.length;W++){let N=I[W],Y=G[W],c=vLI(N,Y);if(!c.valid)return{valid:!1};b.push(c.data)}return{valid:!0,data:b}}else if(Z===$Z.date&&l===$Z.date&&+I===+G)return{valid:!0,data:I};else return{valid:!1}}function crG(I,G){return new l9({values:I,typeName:kZ.ZodEnum,...LW(G)})}function brG(I,G){let Z=typeof I==="function"?I(G):typeof I==="string"?{message:I}:I;return typeof Z==="string"?{message:Z}:Z}function VrG(I,G={},Z){if(I)return tz.create().superRefine((l,b)=>{let W=I(l);if(W instanceof Promise)return W.then((N)=>{if(!N){let Y=brG(G,l),c=Y.fatal??Z??!0;b.addIssue({code:"custom",...Y,fatal:c})}});if(!W){let N=brG(G,l),Y=N.fatal??Z??!0;b.addIssue({code:"custom",...N,fatal:Y})}return});return tz.create()}var lrG=(I,G)=>{if(eu(G))return{success:!0,data:G.value};else{if(!I.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let Z=new O1(I.common.issues);return this._error=Z,this._error}}}},uUb,LUb,gUb,aUb,zUb,BUb,kUb,UUb,xUb="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",ELI,OUb,MUb,KUb,DUb,jUb,nUb,WrG="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",qUb,S5,G9,Z9,p6,oz,_i,y6,u6,tz,I9,a4,fi,i5,Z2,L6,EC=(I)=>{if(I instanceof a6)return EC(I.schema);else if(I instanceof f5)return EC(I.innerType());else if(I instanceof z6)return[I.value];else if(I instanceof l9)return I.options;else if(I instanceof B6)return NN.objectValues(I.enum);else if(I instanceof k6)return EC(I._def.innerType);else if(I instanceof y6)return[void 0];else if(I instanceof u6)return[null];else if(I instanceof P5)return[void 0,...EC(I.unwrap())];else if(I instanceof vC)return[null,...EC(I.unwrap())];else if(I instanceof LNI)return EC(I.unwrap());else if(I instanceof x6)return EC(I.unwrap());else if(I instanceof U6)return EC(I._def.innerType);else return[]},uNI,g6,z4,si,$i,rz,C6,a6,z6,l9,B6,ez,f5,P5,vC,k6,U6,oi,fUb,LNI,ti,x6,sUb,kZ,$Ub=(I,G={message:`Input not instance of ${I.name}`})=>VrG((Z)=>Z instanceof I,G),drG,mrG,oUb,tUb,QrG,rUb,eUb,Ixb,Gxb,Zxb,lxb,bxb,Wxb,Nxb,Yxb,cxb,Vxb,dxb,mxb,Qxb,Xxb,Fxb,Rxb,Hxb,hxb,wxb,Jxb,Axb,Exb,vxb,Cxb,pxb,yxb,uxb,Lxb=()=>drG().optional(),gxb=()=>mrG().optional(),axb=()=>QrG().optional(),zxb,Bxb;var XrG=a(()=>{vNI();CNI();ZrG();ALI();ii();uUb=/^c[^\s-]{8,}$/i,LUb=/^[0-9a-z]+$/,gUb=/^[0-9A-HJKMNP-TV-Z]{26}$/i,aUb=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,zUb=/^[a-z0-9_-]{21}$/i,BUb=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,kUb=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,UUb=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,OUb=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,MUb=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,KUb=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,DUb=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,jUb=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,nUb=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,qUb=new RegExp(`^${WrG}$`);S5=class S5 extends oW{_parse(I){if(this._def.coerce)I.data=String(I.data);if(this._getType(I)!==$Z.string){let b=this._getOrReturnCtx(I);return Ql(b,{code:BZ.invalid_type,expected:$Z.string,received:b.parsedType}),fb}let Z=new em,l=void 0;for(let b of this._def.checks)if(b.kind==="min"){if(I.data.length<b.value)l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.too_small,minimum:b.value,type:"string",inclusive:!0,exact:!1,message:b.message}),Z.dirty()}else if(b.kind==="max"){if(I.data.length>b.value)l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.too_big,maximum:b.value,type:"string",inclusive:!0,exact:!1,message:b.message}),Z.dirty()}else if(b.kind==="length"){let W=I.data.length>b.value,N=I.data.length<b.value;if(W||N){if(l=this._getOrReturnCtx(I,l),W)Ql(l,{code:BZ.too_big,maximum:b.value,type:"string",inclusive:!0,exact:!0,message:b.message});else if(N)Ql(l,{code:BZ.too_small,minimum:b.value,type:"string",inclusive:!0,exact:!0,message:b.message});Z.dirty()}}else if(b.kind==="email"){if(!UUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"email",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="emoji"){if(!ELI)ELI=new RegExp(xUb,"u");if(!ELI.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"emoji",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="uuid"){if(!aUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"uuid",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="nanoid"){if(!zUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"nanoid",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="cuid"){if(!uUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"cuid",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="cuid2"){if(!LUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"cuid2",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="ulid"){if(!gUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"ulid",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="url")try{new URL(I.data)}catch{l=this._getOrReturnCtx(I,l),Ql(l,{validation:"url",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="regex"){if(b.regex.lastIndex=0,!b.regex.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"regex",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="trim")I.data=I.data.trim();else if(b.kind==="includes"){if(!I.data.includes(b.value,b.position))l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.invalid_string,validation:{includes:b.value,position:b.position},message:b.message}),Z.dirty()}else if(b.kind==="toLowerCase")I.data=I.data.toLowerCase();else if(b.kind==="toUpperCase")I.data=I.data.toUpperCase();else if(b.kind==="startsWith"){if(!I.data.startsWith(b.value))l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.invalid_string,validation:{startsWith:b.value},message:b.message}),Z.dirty()}else if(b.kind==="endsWith"){if(!I.data.endsWith(b.value))l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.invalid_string,validation:{endsWith:b.value},message:b.message}),Z.dirty()}else if(b.kind==="datetime"){if(!YrG(b).test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.invalid_string,validation:"datetime",message:b.message}),Z.dirty()}else if(b.kind==="date"){if(!qUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.invalid_string,validation:"date",message:b.message}),Z.dirty()}else if(b.kind==="time"){if(!TUb(b).test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.invalid_string,validation:"time",message:b.message}),Z.dirty()}else if(b.kind==="duration"){if(!kUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"duration",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="ip"){if(!SUb(I.data,b.version))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"ip",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="jwt"){if(!iUb(I.data,b.alg))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"jwt",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="cidr"){if(!PUb(I.data,b.version))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"cidr",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="base64"){if(!jUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"base64",code:BZ.invalid_string,message:b.message}),Z.dirty()}else if(b.kind==="base64url"){if(!nUb.test(I.data))l=this._getOrReturnCtx(I,l),Ql(l,{validation:"base64url",code:BZ.invalid_string,message:b.message}),Z.dirty()}else NN.assertNever(b);return{status:Z.value,value:I.data}}_regex(I,G,Z){return this.refinement((l)=>I.test(l),{validation:G,code:BZ.invalid_string,...el.errToObj(Z)})}_addCheck(I){return new S5({...this._def,checks:[...this._def.checks,I]})}email(I){return this._addCheck({kind:"email",...el.errToObj(I)})}url(I){return this._addCheck({kind:"url",...el.errToObj(I)})}emoji(I){return this._addCheck({kind:"emoji",...el.errToObj(I)})}uuid(I){return this._addCheck({kind:"uuid",...el.errToObj(I)})}nanoid(I){return this._addCheck({kind:"nanoid",...el.errToObj(I)})}cuid(I){return this._addCheck({kind:"cuid",...el.errToObj(I)})}cuid2(I){return this._addCheck({kind:"cuid2",...el.errToObj(I)})}ulid(I){return this._addCheck({kind:"ulid",...el.errToObj(I)})}base64(I){return this._addCheck({kind:"base64",...el.errToObj(I)})}base64url(I){return this._addCheck({kind:"base64url",...el.errToObj(I)})}jwt(I){return this._addCheck({kind:"jwt",...el.errToObj(I)})}ip(I){return this._addCheck({kind:"ip",...el.errToObj(I)})}cidr(I){return this._addCheck({kind:"cidr",...el.errToObj(I)})}datetime(I){if(typeof I==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:I});return this._addCheck({kind:"datetime",precision:typeof I?.precision>"u"?null:I?.precision,offset:I?.offset??!1,local:I?.local??!1,...el.errToObj(I?.message)})}date(I){return this._addCheck({kind:"date",message:I})}time(I){if(typeof I==="string")return this._addCheck({kind:"time",precision:null,message:I});return this._addCheck({kind:"time",precision:typeof I?.precision>"u"?null:I?.precision,...el.errToObj(I?.message)})}duration(I){return this._addCheck({kind:"duration",...el.errToObj(I)})}regex(I,G){return this._addCheck({kind:"regex",regex:I,...el.errToObj(G)})}includes(I,G){return this._addCheck({kind:"includes",value:I,position:G?.position,...el.errToObj(G?.message)})}startsWith(I,G){return this._addCheck({kind:"startsWith",value:I,...el.errToObj(G)})}endsWith(I,G){return this._addCheck({kind:"endsWith",value:I,...el.errToObj(G)})}min(I,G){return this._addCheck({kind:"min",value:I,...el.errToObj(G)})}max(I,G){return this._addCheck({kind:"max",value:I,...el.errToObj(G)})}length(I,G){return this._addCheck({kind:"length",value:I,...el.errToObj(G)})}nonempty(I){return this.min(1,el.errToObj(I))}trim(){return new S5({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new S5({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new S5({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((I)=>I.kind==="datetime")}get isDate(){return!!this._def.checks.find((I)=>I.kind==="date")}get isTime(){return!!this._def.checks.find((I)=>I.kind==="time")}get isDuration(){return!!this._def.checks.find((I)=>I.kind==="duration")}get isEmail(){return!!this._def.checks.find((I)=>I.kind==="email")}get isURL(){return!!this._def.checks.find((I)=>I.kind==="url")}get isEmoji(){return!!this._def.checks.find((I)=>I.kind==="emoji")}get isUUID(){return!!this._def.checks.find((I)=>I.kind==="uuid")}get isNANOID(){return!!this._def.checks.find((I)=>I.kind==="nanoid")}get isCUID(){return!!this._def.checks.find((I)=>I.kind==="cuid")}get isCUID2(){return!!this._def.checks.find((I)=>I.kind==="cuid2")}get isULID(){return!!this._def.checks.find((I)=>I.kind==="ulid")}get isIP(){return!!this._def.checks.find((I)=>I.kind==="ip")}get isCIDR(){return!!this._def.checks.find((I)=>I.kind==="cidr")}get isBase64(){return!!this._def.checks.find((I)=>I.kind==="base64")}get isBase64url(){return!!this._def.checks.find((I)=>I.kind==="base64url")}get minLength(){let I=null;for(let G of this._def.checks)if(G.kind==="min"){if(I===null||G.value>I)I=G.value}return I}get maxLength(){let I=null;for(let G of this._def.checks)if(G.kind==="max"){if(I===null||G.value<I)I=G.value}return I}};S5.create=(I)=>{return new S5({checks:[],typeName:kZ.ZodString,coerce:I?.coerce??!1,...LW(I)})};G9=class G9 extends oW{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(I){if(this._def.coerce)I.data=Number(I.data);if(this._getType(I)!==$Z.number){let b=this._getOrReturnCtx(I);return Ql(b,{code:BZ.invalid_type,expected:$Z.number,received:b.parsedType}),fb}let Z=void 0,l=new em;for(let b of this._def.checks)if(b.kind==="int"){if(!NN.isInteger(I.data))Z=this._getOrReturnCtx(I,Z),Ql(Z,{code:BZ.invalid_type,expected:"integer",received:"float",message:b.message}),l.dirty()}else if(b.kind==="min"){if(b.inclusive?I.data<b.value:I.data<=b.value)Z=this._getOrReturnCtx(I,Z),Ql(Z,{code:BZ.too_small,minimum:b.value,type:"number",inclusive:b.inclusive,exact:!1,message:b.message}),l.dirty()}else if(b.kind==="max"){if(b.inclusive?I.data>b.value:I.data>=b.value)Z=this._getOrReturnCtx(I,Z),Ql(Z,{code:BZ.too_big,maximum:b.value,type:"number",inclusive:b.inclusive,exact:!1,message:b.message}),l.dirty()}else if(b.kind==="multipleOf"){if(_Ub(I.data,b.value)!==0)Z=this._getOrReturnCtx(I,Z),Ql(Z,{code:BZ.not_multiple_of,multipleOf:b.value,message:b.message}),l.dirty()}else if(b.kind==="finite"){if(!Number.isFinite(I.data))Z=this._getOrReturnCtx(I,Z),Ql(Z,{code:BZ.not_finite,message:b.message}),l.dirty()}else NN.assertNever(b);return{status:l.value,value:I.data}}gte(I,G){return this.setLimit("min",I,!0,el.toString(G))}gt(I,G){return this.setLimit("min",I,!1,el.toString(G))}lte(I,G){return this.setLimit("max",I,!0,el.toString(G))}lt(I,G){return this.setLimit("max",I,!1,el.toString(G))}setLimit(I,G,Z,l){return new G9({...this._def,checks:[...this._def.checks,{kind:I,value:G,inclusive:Z,message:el.toString(l)}]})}_addCheck(I){return new G9({...this._def,checks:[...this._def.checks,I]})}int(I){return this._addCheck({kind:"int",message:el.toString(I)})}positive(I){return this._addCheck({kind:"min",value:0,inclusive:!1,message:el.toString(I)})}negative(I){return this._addCheck({kind:"max",value:0,inclusive:!1,message:el.toString(I)})}nonpositive(I){return this._addCheck({kind:"max",value:0,inclusive:!0,message:el.toString(I)})}nonnegative(I){return this._addCheck({kind:"min",value:0,inclusive:!0,message:el.toString(I)})}multipleOf(I,G){return this._addCheck({kind:"multipleOf",value:I,message:el.toString(G)})}finite(I){return this._addCheck({kind:"finite",message:el.toString(I)})}safe(I){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:el.toString(I)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:el.toString(I)})}get minValue(){let I=null;for(let G of this._def.checks)if(G.kind==="min"){if(I===null||G.value>I)I=G.value}return I}get maxValue(){let I=null;for(let G of this._def.checks)if(G.kind==="max"){if(I===null||G.value<I)I=G.value}return I}get isInt(){return!!this._def.checks.find((I)=>I.kind==="int"||I.kind==="multipleOf"&&NN.isInteger(I.value))}get isFinite(){let I=null,G=null;for(let Z of this._def.checks)if(Z.kind==="finite"||Z.kind==="int"||Z.kind==="multipleOf")return!0;else if(Z.kind==="min"){if(G===null||Z.value>G)G=Z.value}else if(Z.kind==="max"){if(I===null||Z.value<I)I=Z.value}return Number.isFinite(G)&&Number.isFinite(I)}};G9.create=(I)=>{return new G9({checks:[],typeName:kZ.ZodNumber,coerce:I?.coerce||!1,...LW(I)})};Z9=class Z9 extends oW{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse(I){if(this._def.coerce)try{I.data=BigInt(I.data)}catch{return this._getInvalidInput(I)}if(this._getType(I)!==$Z.bigint)return this._getInvalidInput(I);let Z=void 0,l=new em;for(let b of this._def.checks)if(b.kind==="min"){if(b.inclusive?I.data<b.value:I.data<=b.value)Z=this._getOrReturnCtx(I,Z),Ql(Z,{code:BZ.too_small,type:"bigint",minimum:b.value,inclusive:b.inclusive,message:b.message}),l.dirty()}else if(b.kind==="max"){if(b.inclusive?I.data>b.value:I.data>=b.value)Z=this._getOrReturnCtx(I,Z),Ql(Z,{code:BZ.too_big,type:"bigint",maximum:b.value,inclusive:b.inclusive,message:b.message}),l.dirty()}else if(b.kind==="multipleOf"){if(I.data%b.value!==BigInt(0))Z=this._getOrReturnCtx(I,Z),Ql(Z,{code:BZ.not_multiple_of,multipleOf:b.value,message:b.message}),l.dirty()}else NN.assertNever(b);return{status:l.value,value:I.data}}_getInvalidInput(I){let G=this._getOrReturnCtx(I);return Ql(G,{code:BZ.invalid_type,expected:$Z.bigint,received:G.parsedType}),fb}gte(I,G){return this.setLimit("min",I,!0,el.toString(G))}gt(I,G){return this.setLimit("min",I,!1,el.toString(G))}lte(I,G){return this.setLimit("max",I,!0,el.toString(G))}lt(I,G){return this.setLimit("max",I,!1,el.toString(G))}setLimit(I,G,Z,l){return new Z9({...this._def,checks:[...this._def.checks,{kind:I,value:G,inclusive:Z,message:el.toString(l)}]})}_addCheck(I){return new Z9({...this._def,checks:[...this._def.checks,I]})}positive(I){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:el.toString(I)})}negative(I){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:el.toString(I)})}nonpositive(I){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:el.toString(I)})}nonnegative(I){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:el.toString(I)})}multipleOf(I,G){return this._addCheck({kind:"multipleOf",value:I,message:el.toString(G)})}get minValue(){let I=null;for(let G of this._def.checks)if(G.kind==="min"){if(I===null||G.value>I)I=G.value}return I}get maxValue(){let I=null;for(let G of this._def.checks)if(G.kind==="max"){if(I===null||G.value<I)I=G.value}return I}};Z9.create=(I)=>{return new Z9({checks:[],typeName:kZ.ZodBigInt,coerce:I?.coerce??!1,...LW(I)})};p6=class p6 extends oW{_parse(I){if(this._def.coerce)I.data=Boolean(I.data);if(this._getType(I)!==$Z.boolean){let Z=this._getOrReturnCtx(I);return Ql(Z,{code:BZ.invalid_type,expected:$Z.boolean,received:Z.parsedType}),fb}return dX(I.data)}};p6.create=(I)=>{return new p6({typeName:kZ.ZodBoolean,coerce:I?.coerce||!1,...LW(I)})};oz=class oz extends oW{_parse(I){if(this._def.coerce)I.data=new Date(I.data);if(this._getType(I)!==$Z.date){let b=this._getOrReturnCtx(I);return Ql(b,{code:BZ.invalid_type,expected:$Z.date,received:b.parsedType}),fb}if(Number.isNaN(I.data.getTime())){let b=this._getOrReturnCtx(I);return Ql(b,{code:BZ.invalid_date}),fb}let Z=new em,l=void 0;for(let b of this._def.checks)if(b.kind==="min"){if(I.data.getTime()<b.value)l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.too_small,message:b.message,inclusive:!0,exact:!1,minimum:b.value,type:"date"}),Z.dirty()}else if(b.kind==="max"){if(I.data.getTime()>b.value)l=this._getOrReturnCtx(I,l),Ql(l,{code:BZ.too_big,message:b.message,inclusive:!0,exact:!1,maximum:b.value,type:"date"}),Z.dirty()}else NN.assertNever(b);return{status:Z.value,value:new Date(I.data.getTime())}}_addCheck(I){return new oz({...this._def,checks:[...this._def.checks,I]})}min(I,G){return this._addCheck({kind:"min",value:I.getTime(),message:el.toString(G)})}max(I,G){return this._addCheck({kind:"max",value:I.getTime(),message:el.toString(G)})}get minDate(){let I=null;for(let G of this._def.checks)if(G.kind==="min"){if(I===null||G.value>I)I=G.value}return I!=null?new Date(I):null}get maxDate(){let I=null;for(let G of this._def.checks)if(G.kind==="max"){if(I===null||G.value<I)I=G.value}return I!=null?new Date(I):null}};oz.create=(I)=>{return new oz({checks:[],coerce:I?.coerce||!1,typeName:kZ.ZodDate,...LW(I)})};_i=class _i extends oW{_parse(I){if(this._getType(I)!==$Z.symbol){let Z=this._getOrReturnCtx(I);return Ql(Z,{code:BZ.invalid_type,expected:$Z.symbol,received:Z.parsedType}),fb}return dX(I.data)}};_i.create=(I)=>{return new _i({typeName:kZ.ZodSymbol,...LW(I)})};y6=class y6 extends oW{_parse(I){if(this._getType(I)!==$Z.undefined){let Z=this._getOrReturnCtx(I);return Ql(Z,{code:BZ.invalid_type,expected:$Z.undefined,received:Z.parsedType}),fb}return dX(I.data)}};y6.create=(I)=>{return new y6({typeName:kZ.ZodUndefined,...LW(I)})};u6=class u6 extends oW{_parse(I){if(this._getType(I)!==$Z.null){let Z=this._getOrReturnCtx(I);return Ql(Z,{code:BZ.invalid_type,expected:$Z.null,received:Z.parsedType}),fb}return dX(I.data)}};u6.create=(I)=>{return new u6({typeName:kZ.ZodNull,...LW(I)})};tz=class tz extends oW{constructor(){super(...arguments);this._any=!0}_parse(I){return dX(I.data)}};tz.create=(I)=>{return new tz({typeName:kZ.ZodAny,...LW(I)})};I9=class I9 extends oW{constructor(){super(...arguments);this._unknown=!0}_parse(I){return dX(I.data)}};I9.create=(I)=>{return new I9({typeName:kZ.ZodUnknown,...LW(I)})};a4=class a4 extends oW{_parse(I){let G=this._getOrReturnCtx(I);return Ql(G,{code:BZ.invalid_type,expected:$Z.never,received:G.parsedType}),fb}};a4.create=(I)=>{return new a4({typeName:kZ.ZodNever,...LW(I)})};fi=class fi extends oW{_parse(I){if(this._getType(I)!==$Z.undefined){let Z=this._getOrReturnCtx(I);return Ql(Z,{code:BZ.invalid_type,expected:$Z.void,received:Z.parsedType}),fb}return dX(I.data)}};fi.create=(I)=>{return new fi({typeName:kZ.ZodVoid,...LW(I)})};i5=class i5 extends oW{_parse(I){let{ctx:G,status:Z}=this._processInputParams(I),l=this._def;if(G.parsedType!==$Z.array)return Ql(G,{code:BZ.invalid_type,expected:$Z.array,received:G.parsedType}),fb;if(l.exactLength!==null){let W=G.data.length>l.exactLength.value,N=G.data.length<l.exactLength.value;if(W||N)Ql(G,{code:W?BZ.too_big:BZ.too_small,minimum:N?l.exactLength.value:void 0,maximum:W?l.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:l.exactLength.message}),Z.dirty()}if(l.minLength!==null){if(G.data.length<l.minLength.value)Ql(G,{code:BZ.too_small,minimum:l.minLength.value,type:"array",inclusive:!0,exact:!1,message:l.minLength.message}),Z.dirty()}if(l.maxLength!==null){if(G.data.length>l.maxLength.value)Ql(G,{code:BZ.too_big,maximum:l.maxLength.value,type:"array",inclusive:!0,exact:!1,message:l.maxLength.message}),Z.dirty()}if(G.common.async)return Promise.all([...G.data].map((W,N)=>{return l.type._parseAsync(new _5(G,W,G.path,N))})).then((W)=>{return em.mergeArray(Z,W)});let b=[...G.data].map((W,N)=>{return l.type._parseSync(new _5(G,W,G.path,N))});return em.mergeArray(Z,b)}get element(){return this._def.type}min(I,G){return new i5({...this._def,minLength:{value:I,message:el.toString(G)}})}max(I,G){return new i5({...this._def,maxLength:{value:I,message:el.toString(G)}})}length(I,G){return new i5({...this._def,exactLength:{value:I,message:el.toString(G)}})}nonempty(I){return this.min(1,I)}};i5.create=(I,G)=>{return new i5({type:I,minLength:null,maxLength:null,exactLength:null,typeName:kZ.ZodArray,...LW(G)})};Z2=class Z2 extends oW{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let I=this._def.shape(),G=NN.objectKeys(I);return this._cached={shape:I,keys:G},this._cached}_parse(I){if(this._getType(I)!==$Z.object){let c=this._getOrReturnCtx(I);return Ql(c,{code:BZ.invalid_type,expected:$Z.object,received:c.parsedType}),fb}let{status:Z,ctx:l}=this._processInputParams(I),{shape:b,keys:W}=this._getCached(),N=[];if(!(this._def.catchall instanceof a4&&this._def.unknownKeys==="strip")){for(let c in l.data)if(!W.includes(c))N.push(c)}let Y=[];for(let c of W){let V=b[c],d=l.data[c];Y.push({key:{status:"valid",value:c},value:V._parse(new _5(l,d,l.path,c)),alwaysSet:c in l.data})}if(this._def.catchall instanceof a4){let c=this._def.unknownKeys;if(c==="passthrough")for(let V of N)Y.push({key:{status:"valid",value:V},value:{status:"valid",value:l.data[V]}});else if(c==="strict"){if(N.length>0)Ql(l,{code:BZ.unrecognized_keys,keys:N}),Z.dirty()}else if(c==="strip");else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let c=this._def.catchall;for(let V of N){let d=l.data[V];Y.push({key:{status:"valid",value:V},value:c._parse(new _5(l,d,l.path,V)),alwaysSet:V in l.data})}}if(l.common.async)return Promise.resolve().then(async()=>{let c=[];for(let V of Y){let d=await V.key,Q=await V.value;c.push({key:d,value:Q,alwaysSet:V.alwaysSet})}return c}).then((c)=>{return em.mergeObjectSync(Z,c)});else return em.mergeObjectSync(Z,Y)}get shape(){return this._def.shape()}strict(I){return el.errToObj,new Z2({...this._def,unknownKeys:"strict",...I!==void 0?{errorMap:(G,Z)=>{let l=this._def.errorMap?.(G,Z).message??Z.defaultError;if(G.code==="unrecognized_keys")return{message:el.errToObj(I).message??l};return{message:l}}}:{}})}strip(){return new Z2({...this._def,unknownKeys:"strip"})}passthrough(){return new Z2({...this._def,unknownKeys:"passthrough"})}extend(I){return new Z2({...this._def,shape:()=>({...this._def.shape(),...I})})}merge(I){return new Z2({unknownKeys:I._def.unknownKeys,catchall:I._def.catchall,shape:()=>({...this._def.shape(),...I._def.shape()}),typeName:kZ.ZodObject})}setKey(I,G){return this.augment({[I]:G})}catchall(I){return new Z2({...this._def,catchall:I})}pick(I){let G={};for(let Z of NN.objectKeys(I))if(I[Z]&&this.shape[Z])G[Z]=this.shape[Z];return new Z2({...this._def,shape:()=>G})}omit(I){let G={};for(let Z of NN.objectKeys(this.shape))if(!I[Z])G[Z]=this.shape[Z];return new Z2({...this._def,shape:()=>G})}deepPartial(){return v6(this)}partial(I){let G={};for(let Z of NN.objectKeys(this.shape)){let l=this.shape[Z];if(I&&!I[Z])G[Z]=l;else G[Z]=l.optional()}return new Z2({...this._def,shape:()=>G})}required(I){let G={};for(let Z of NN.objectKeys(this.shape))if(I&&!I[Z])G[Z]=this.shape[Z];else{let b=this.shape[Z];while(b instanceof P5)b=b._def.innerType;G[Z]=b}return new Z2({...this._def,shape:()=>G})}keyof(){return crG(NN.objectKeys(this.shape))}};Z2.create=(I,G)=>{return new Z2({shape:()=>I,unknownKeys:"strip",catchall:a4.create(),typeName:kZ.ZodObject,...LW(G)})};Z2.strictCreate=(I,G)=>{return new Z2({shape:()=>I,unknownKeys:"strict",catchall:a4.create(),typeName:kZ.ZodObject,...LW(G)})};Z2.lazycreate=(I,G)=>{return new Z2({shape:I,unknownKeys:"strip",catchall:a4.create(),typeName:kZ.ZodObject,...LW(G)})};L6=class L6 extends oW{_parse(I){let{ctx:G}=this._processInputParams(I),Z=this._def.options;function l(b){for(let N of b)if(N.result.status==="valid")return N.result;for(let N of b)if(N.result.status==="dirty")return G.common.issues.push(...N.ctx.common.issues),N.result;let W=b.map((N)=>new O1(N.ctx.common.issues));return Ql(G,{code:BZ.invalid_union,unionErrors:W}),fb}if(G.common.async)return Promise.all(Z.map(async(b)=>{let W={...G,common:{...G.common,issues:[]},parent:null};return{result:await b._parseAsync({data:G.data,path:G.path,parent:W}),ctx:W}})).then(l);else{let b=void 0,W=[];for(let Y of Z){let c={...G,common:{...G.common,issues:[]},parent:null},V=Y._parseSync({data:G.data,path:G.path,parent:c});if(V.status==="valid")return V;else if(V.status==="dirty"&&!b)b={result:V,ctx:c};if(c.common.issues.length)W.push(c.common.issues)}if(b)return G.common.issues.push(...b.ctx.common.issues),b.result;let N=W.map((Y)=>new O1(Y));return Ql(G,{code:BZ.invalid_union,unionErrors:N}),fb}}get options(){return this._def.options}};L6.create=(I,G)=>{return new L6({options:I,typeName:kZ.ZodUnion,...LW(G)})};uNI=class uNI extends oW{_parse(I){let{ctx:G}=this._processInputParams(I);if(G.parsedType!==$Z.object)return Ql(G,{code:BZ.invalid_type,expected:$Z.object,received:G.parsedType}),fb;let Z=this.discriminator,l=G.data[Z],b=this.optionsMap.get(l);if(!b)return Ql(G,{code:BZ.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[Z]}),fb;if(G.common.async)return b._parseAsync({data:G.data,path:G.path,parent:G});else return b._parseSync({data:G.data,path:G.path,parent:G})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(I,G,Z){let l=new Map;for(let b of G){let W=EC(b.shape[I]);if(!W.length)throw Error(`A discriminator value for key \`${I}\` could not be extracted from all schema options`);for(let N of W){if(l.has(N))throw Error(`Discriminator property ${String(I)} has duplicate value ${String(N)}`);l.set(N,b)}}return new uNI({typeName:kZ.ZodDiscriminatedUnion,discriminator:I,options:G,optionsMap:l,...LW(Z)})}};g6=class g6 extends oW{_parse(I){let{status:G,ctx:Z}=this._processInputParams(I),l=(b,W)=>{if(pNI(b)||pNI(W))return fb;let N=vLI(b.value,W.value);if(!N.valid)return Ql(Z,{code:BZ.invalid_intersection_types}),fb;if(yNI(b)||yNI(W))G.dirty();return{status:G.value,value:N.data}};if(Z.common.async)return Promise.all([this._def.left._parseAsync({data:Z.data,path:Z.path,parent:Z}),this._def.right._parseAsync({data:Z.data,path:Z.path,parent:Z})]).then(([b,W])=>l(b,W));else return l(this._def.left._parseSync({data:Z.data,path:Z.path,parent:Z}),this._def.right._parseSync({data:Z.data,path:Z.path,parent:Z}))}};g6.create=(I,G,Z)=>{return new g6({left:I,right:G,typeName:kZ.ZodIntersection,...LW(Z)})};z4=class z4 extends oW{_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.parsedType!==$Z.array)return Ql(Z,{code:BZ.invalid_type,expected:$Z.array,received:Z.parsedType}),fb;if(Z.data.length<this._def.items.length)return Ql(Z,{code:BZ.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),fb;if(!this._def.rest&&Z.data.length>this._def.items.length)Ql(Z,{code:BZ.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),G.dirty();let b=[...Z.data].map((W,N)=>{let Y=this._def.items[N]||this._def.rest;if(!Y)return null;return Y._parse(new _5(Z,W,Z.path,N))}).filter((W)=>!!W);if(Z.common.async)return Promise.all(b).then((W)=>{return em.mergeArray(G,W)});else return em.mergeArray(G,b)}get items(){return this._def.items}rest(I){return new z4({...this._def,rest:I})}};z4.create=(I,G)=>{if(!Array.isArray(I))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new z4({items:I,typeName:kZ.ZodTuple,rest:null,...LW(G)})};si=class si extends oW{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.parsedType!==$Z.object)return Ql(Z,{code:BZ.invalid_type,expected:$Z.object,received:Z.parsedType}),fb;let l=[],b=this._def.keyType,W=this._def.valueType;for(let N in Z.data)l.push({key:b._parse(new _5(Z,N,Z.path,N)),value:W._parse(new _5(Z,Z.data[N],Z.path,N)),alwaysSet:N in Z.data});if(Z.common.async)return em.mergeObjectAsync(G,l);else return em.mergeObjectSync(G,l)}get element(){return this._def.valueType}static create(I,G,Z){if(G instanceof oW)return new si({keyType:I,valueType:G,typeName:kZ.ZodRecord,...LW(Z)});return new si({keyType:S5.create(),valueType:I,typeName:kZ.ZodRecord,...LW(G)})}};$i=class $i extends oW{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.parsedType!==$Z.map)return Ql(Z,{code:BZ.invalid_type,expected:$Z.map,received:Z.parsedType}),fb;let l=this._def.keyType,b=this._def.valueType,W=[...Z.data.entries()].map(([N,Y],c)=>{return{key:l._parse(new _5(Z,N,Z.path,[c,"key"])),value:b._parse(new _5(Z,Y,Z.path,[c,"value"]))}});if(Z.common.async){let N=new Map;return Promise.resolve().then(async()=>{for(let Y of W){let c=await Y.key,V=await Y.value;if(c.status==="aborted"||V.status==="aborted")return fb;if(c.status==="dirty"||V.status==="dirty")G.dirty();N.set(c.value,V.value)}return{status:G.value,value:N}})}else{let N=new Map;for(let Y of W){let{key:c,value:V}=Y;if(c.status==="aborted"||V.status==="aborted")return fb;if(c.status==="dirty"||V.status==="dirty")G.dirty();N.set(c.value,V.value)}return{status:G.value,value:N}}}};$i.create=(I,G,Z)=>{return new $i({valueType:G,keyType:I,typeName:kZ.ZodMap,...LW(Z)})};rz=class rz extends oW{_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.parsedType!==$Z.set)return Ql(Z,{code:BZ.invalid_type,expected:$Z.set,received:Z.parsedType}),fb;let l=this._def;if(l.minSize!==null){if(Z.data.size<l.minSize.value)Ql(Z,{code:BZ.too_small,minimum:l.minSize.value,type:"set",inclusive:!0,exact:!1,message:l.minSize.message}),G.dirty()}if(l.maxSize!==null){if(Z.data.size>l.maxSize.value)Ql(Z,{code:BZ.too_big,maximum:l.maxSize.value,type:"set",inclusive:!0,exact:!1,message:l.maxSize.message}),G.dirty()}let b=this._def.valueType;function W(Y){let c=new Set;for(let V of Y){if(V.status==="aborted")return fb;if(V.status==="dirty")G.dirty();c.add(V.value)}return{status:G.value,value:c}}let N=[...Z.data.values()].map((Y,c)=>b._parse(new _5(Z,Y,Z.path,c)));if(Z.common.async)return Promise.all(N).then((Y)=>W(Y));else return W(N)}min(I,G){return new rz({...this._def,minSize:{value:I,message:el.toString(G)}})}max(I,G){return new rz({...this._def,maxSize:{value:I,message:el.toString(G)}})}size(I,G){return this.min(I,G).max(I,G)}nonempty(I){return this.min(1,I)}};rz.create=(I,G)=>{return new rz({valueType:I,minSize:null,maxSize:null,typeName:kZ.ZodSet,...LW(G)})};C6=class C6 extends oW{constructor(){super(...arguments);this.validate=this.implement}_parse(I){let{ctx:G}=this._processInputParams(I);if(G.parsedType!==$Z.function)return Ql(G,{code:BZ.invalid_type,expected:$Z.function,received:G.parsedType}),fb;function Z(N,Y){return Pi({data:N,path:G.path,errorMaps:[G.common.contextualErrorMap,G.schemaErrorMap,A6(),AC].filter((c)=>!!c),issueData:{code:BZ.invalid_arguments,argumentsError:Y}})}function l(N,Y){return Pi({data:N,path:G.path,errorMaps:[G.common.contextualErrorMap,G.schemaErrorMap,A6(),AC].filter((c)=>!!c),issueData:{code:BZ.invalid_return_type,returnTypeError:Y}})}let b={errorMap:G.common.contextualErrorMap},W=G.data;if(this._def.returns instanceof ez){let N=this;return dX(async function(...Y){let c=new O1([]),V=await N._def.args.parseAsync(Y,b).catch((X)=>{throw c.addIssue(Z(Y,X)),c}),d=await Reflect.apply(W,this,V);return await N._def.returns._def.type.parseAsync(d,b).catch((X)=>{throw c.addIssue(l(d,X)),c})})}else{let N=this;return dX(function(...Y){let c=N._def.args.safeParse(Y,b);if(!c.success)throw new O1([Z(Y,c.error)]);let V=Reflect.apply(W,this,c.data),d=N._def.returns.safeParse(V,b);if(!d.success)throw new O1([l(V,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...I){return new C6({...this._def,args:z4.create(I).rest(I9.create())})}returns(I){return new C6({...this._def,returns:I})}implement(I){return this.parse(I)}strictImplement(I){return this.parse(I)}static create(I,G,Z){return new C6({args:I?I:z4.create([]).rest(I9.create()),returns:G||I9.create(),typeName:kZ.ZodFunction,...LW(Z)})}};a6=class a6 extends oW{get schema(){return this._def.getter()}_parse(I){let{ctx:G}=this._processInputParams(I);return this._def.getter()._parse({data:G.data,path:G.path,parent:G})}};a6.create=(I,G)=>{return new a6({getter:I,typeName:kZ.ZodLazy,...LW(G)})};z6=class z6 extends oW{_parse(I){if(I.data!==this._def.value){let G=this._getOrReturnCtx(I);return Ql(G,{received:G.data,code:BZ.invalid_literal,expected:this._def.value}),fb}return{status:"valid",value:I.data}}get value(){return this._def.value}};z6.create=(I,G)=>{return new z6({value:I,typeName:kZ.ZodLiteral,...LW(G)})};l9=class l9 extends oW{_parse(I){if(typeof I.data!=="string"){let G=this._getOrReturnCtx(I),Z=this._def.values;return Ql(G,{expected:NN.joinValues(Z),received:G.parsedType,code:BZ.invalid_type}),fb}if(!this._cache)this._cache=new Set(this._def.values);if(!this._cache.has(I.data)){let G=this._getOrReturnCtx(I),Z=this._def.values;return Ql(G,{received:G.data,code:BZ.invalid_enum_value,options:Z}),fb}return dX(I.data)}get options(){return this._def.values}get enum(){let I={};for(let G of this._def.values)I[G]=G;return I}get Values(){let I={};for(let G of this._def.values)I[G]=G;return I}get Enum(){let I={};for(let G of this._def.values)I[G]=G;return I}extract(I,G=this._def){return l9.create(I,{...this._def,...G})}exclude(I,G=this._def){return l9.create(this.options.filter((Z)=>!I.includes(Z)),{...this._def,...G})}};l9.create=crG;B6=class B6 extends oW{_parse(I){let G=NN.getValidEnumValues(this._def.values),Z=this._getOrReturnCtx(I);if(Z.parsedType!==$Z.string&&Z.parsedType!==$Z.number){let l=NN.objectValues(G);return Ql(Z,{expected:NN.joinValues(l),received:Z.parsedType,code:BZ.invalid_type}),fb}if(!this._cache)this._cache=new Set(NN.getValidEnumValues(this._def.values));if(!this._cache.has(I.data)){let l=NN.objectValues(G);return Ql(Z,{received:Z.data,code:BZ.invalid_enum_value,options:l}),fb}return dX(I.data)}get enum(){return this._def.values}};B6.create=(I,G)=>{return new B6({values:I,typeName:kZ.ZodNativeEnum,...LW(G)})};ez=class ez extends oW{unwrap(){return this._def.type}_parse(I){let{ctx:G}=this._processInputParams(I);if(G.parsedType!==$Z.promise&&G.common.async===!1)return Ql(G,{code:BZ.invalid_type,expected:$Z.promise,received:G.parsedType}),fb;let Z=G.parsedType===$Z.promise?G.data:Promise.resolve(G.data);return dX(Z.then((l)=>{return this._def.type.parseAsync(l,{path:G.path,errorMap:G.common.contextualErrorMap})}))}};ez.create=(I,G)=>{return new ez({type:I,typeName:kZ.ZodPromise,...LW(G)})};f5=class f5 extends oW{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===kZ.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(I){let{status:G,ctx:Z}=this._processInputParams(I),l=this._def.effect||null,b={addIssue:(W)=>{if(Ql(Z,W),W.fatal)G.abort();else G.dirty()},get path(){return Z.path}};if(b.addIssue=b.addIssue.bind(b),l.type==="preprocess"){let W=l.transform(Z.data,b);if(Z.common.async)return Promise.resolve(W).then(async(N)=>{if(G.value==="aborted")return fb;let Y=await this._def.schema._parseAsync({data:N,path:Z.path,parent:Z});if(Y.status==="aborted")return fb;if(Y.status==="dirty")return $z(Y.value);if(G.value==="dirty")return $z(Y.value);return Y});else{if(G.value==="aborted")return fb;let N=this._def.schema._parseSync({data:W,path:Z.path,parent:Z});if(N.status==="aborted")return fb;if(N.status==="dirty")return $z(N.value);if(G.value==="dirty")return $z(N.value);return N}}if(l.type==="refinement"){let W=(N)=>{let Y=l.refinement(N,b);if(Z.common.async)return Promise.resolve(Y);if(Y instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return N};if(Z.common.async===!1){let N=this._def.schema._parseSync({data:Z.data,path:Z.path,parent:Z});if(N.status==="aborted")return fb;if(N.status==="dirty")G.dirty();return W(N.value),{status:G.value,value:N.value}}else return this._def.schema._parseAsync({data:Z.data,path:Z.path,parent:Z}).then((N)=>{if(N.status==="aborted")return fb;if(N.status==="dirty")G.dirty();return W(N.value).then(()=>{return{status:G.value,value:N.value}})})}if(l.type==="transform")if(Z.common.async===!1){let W=this._def.schema._parseSync({data:Z.data,path:Z.path,parent:Z});if(!eu(W))return fb;let N=l.transform(W.value,b);if(N instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:G.value,value:N}}else return this._def.schema._parseAsync({data:Z.data,path:Z.path,parent:Z}).then((W)=>{if(!eu(W))return fb;return Promise.resolve(l.transform(W.value,b)).then((N)=>({status:G.value,value:N}))});NN.assertNever(l)}};f5.create=(I,G,Z)=>{return new f5({schema:I,typeName:kZ.ZodEffects,effect:G,...LW(Z)})};f5.createWithPreprocess=(I,G,Z)=>{return new f5({schema:G,effect:{type:"preprocess",transform:I},typeName:kZ.ZodEffects,...LW(Z)})};P5=class P5 extends oW{_parse(I){if(this._getType(I)===$Z.undefined)return dX(void 0);return this._def.innerType._parse(I)}unwrap(){return this._def.innerType}};P5.create=(I,G)=>{return new P5({innerType:I,typeName:kZ.ZodOptional,...LW(G)})};vC=class vC extends oW{_parse(I){if(this._getType(I)===$Z.null)return dX(null);return this._def.innerType._parse(I)}unwrap(){return this._def.innerType}};vC.create=(I,G)=>{return new vC({innerType:I,typeName:kZ.ZodNullable,...LW(G)})};k6=class k6 extends oW{_parse(I){let{ctx:G}=this._processInputParams(I),Z=G.data;if(G.parsedType===$Z.undefined)Z=this._def.defaultValue();return this._def.innerType._parse({data:Z,path:G.path,parent:G})}removeDefault(){return this._def.innerType}};k6.create=(I,G)=>{return new k6({innerType:I,typeName:kZ.ZodDefault,defaultValue:typeof G.default==="function"?G.default:()=>G.default,...LW(G)})};U6=class U6 extends oW{_parse(I){let{ctx:G}=this._processInputParams(I),Z={...G,common:{...G.common,issues:[]}},l=this._def.innerType._parse({data:Z.data,path:Z.path,parent:{...Z}});if(E6(l))return l.then((b)=>{return{status:"valid",value:b.status==="valid"?b.value:this._def.catchValue({get error(){return new O1(Z.common.issues)},input:Z.data})}});else return{status:"valid",value:l.status==="valid"?l.value:this._def.catchValue({get error(){return new O1(Z.common.issues)},input:Z.data})}}removeCatch(){return this._def.innerType}};U6.create=(I,G)=>{return new U6({innerType:I,typeName:kZ.ZodCatch,catchValue:typeof G.catch==="function"?G.catch:()=>G.catch,...LW(G)})};oi=class oi extends oW{_parse(I){if(this._getType(I)!==$Z.nan){let Z=this._getOrReturnCtx(I);return Ql(Z,{code:BZ.invalid_type,expected:$Z.nan,received:Z.parsedType}),fb}return{status:"valid",value:I.data}}};oi.create=(I)=>{return new oi({typeName:kZ.ZodNaN,...LW(I)})};fUb=Symbol("zod_brand");LNI=class LNI extends oW{_parse(I){let{ctx:G}=this._processInputParams(I),Z=G.data;return this._def.type._parse({data:Z,path:G.path,parent:G})}unwrap(){return this._def.type}};ti=class ti extends oW{_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.common.async)return(async()=>{let b=await this._def.in._parseAsync({data:Z.data,path:Z.path,parent:Z});if(b.status==="aborted")return fb;if(b.status==="dirty")return G.dirty(),$z(b.value);else return this._def.out._parseAsync({data:b.value,path:Z.path,parent:Z})})();else{let l=this._def.in._parseSync({data:Z.data,path:Z.path,parent:Z});if(l.status==="aborted")return fb;if(l.status==="dirty")return G.dirty(),{status:"dirty",value:l.value};else return this._def.out._parseSync({data:l.value,path:Z.path,parent:Z})}}static create(I,G){return new ti({in:I,out:G,typeName:kZ.ZodPipeline})}};x6=class x6 extends oW{_parse(I){let G=this._def.innerType._parse(I),Z=(l)=>{if(eu(l))l.value=Object.freeze(l.value);return l};return E6(G)?G.then((l)=>Z(l)):Z(G)}unwrap(){return this._def.innerType}};x6.create=(I,G)=>{return new x6({innerType:I,typeName:kZ.ZodReadonly,...LW(G)})};sUb={object:Z2.lazycreate};(function(I){I.ZodString="ZodString",I.ZodNumber="ZodNumber",I.ZodNaN="ZodNaN",I.ZodBigInt="ZodBigInt",I.ZodBoolean="ZodBoolean",I.ZodDate="ZodDate",I.ZodSymbol="ZodSymbol",I.ZodUndefined="ZodUndefined",I.ZodNull="ZodNull",I.ZodAny="ZodAny",I.ZodUnknown="ZodUnknown",I.ZodNever="ZodNever",I.ZodVoid="ZodVoid",I.ZodArray="ZodArray",I.ZodObject="ZodObject",I.ZodUnion="ZodUnion",I.ZodDiscriminatedUnion="ZodDiscriminatedUnion",I.ZodIntersection="ZodIntersection",I.ZodTuple="ZodTuple",I.ZodRecord="ZodRecord",I.ZodMap="ZodMap",I.ZodSet="ZodSet",I.ZodFunction="ZodFunction",I.ZodLazy="ZodLazy",I.ZodLiteral="ZodLiteral",I.ZodEnum="ZodEnum",I.ZodEffects="ZodEffects",I.ZodNativeEnum="ZodNativeEnum",I.ZodOptional="ZodOptional",I.ZodNullable="ZodNullable",I.ZodDefault="ZodDefault",I.ZodCatch="ZodCatch",I.ZodPromise="ZodPromise",I.ZodBranded="ZodBranded",I.ZodPipeline="ZodPipeline",I.ZodReadonly="ZodReadonly"})(kZ||(kZ={}));drG=S5.create,mrG=G9.create,oUb=oi.create,tUb=Z9.create,QrG=p6.create,rUb=oz.create,eUb=_i.create,Ixb=y6.create,Gxb=u6.create,Zxb=tz.create,lxb=I9.create,bxb=a4.create,Wxb=fi.create,Nxb=i5.create,Yxb=Z2.create,cxb=Z2.strictCreate,Vxb=L6.create,dxb=uNI.create,mxb=g6.create,Qxb=z4.create,Xxb=si.create,Fxb=$i.create,Rxb=rz.create,Hxb=C6.create,hxb=a6.create,wxb=z6.create,Jxb=l9.create,Axb=B6.create,Exb=ez.create,vxb=f5.create,Cxb=P5.create,pxb=vC.create,yxb=f5.createWithPreprocess,uxb=ti.create,zxb={string:(I)=>S5.create({...I,coerce:!0}),number:(I)=>G9.create({...I,coerce:!0}),boolean:(I)=>p6.create({...I,coerce:!0}),bigint:(I)=>Z9.create({...I,coerce:!0}),date:(I)=>oz.create({...I,coerce:!0})},Bxb=fb});var mG={};w1(mG,{void:()=>Wxb,util:()=>NN,unknown:()=>lxb,union:()=>Vxb,undefined:()=>Ixb,tuple:()=>Qxb,transformer:()=>vxb,symbol:()=>eUb,string:()=>drG,strictObject:()=>cxb,setErrorMap:()=>pUb,set:()=>Rxb,record:()=>Xxb,quotelessJson:()=>vUb,promise:()=>Exb,preprocess:()=>yxb,pipeline:()=>uxb,ostring:()=>Lxb,optional:()=>Cxb,onumber:()=>gxb,oboolean:()=>axb,objectUtil:()=>wLI,object:()=>Yxb,number:()=>mrG,nullable:()=>pxb,null:()=>Gxb,never:()=>bxb,nativeEnum:()=>Axb,nan:()=>oUb,map:()=>Fxb,makeIssue:()=>Pi,literal:()=>wxb,lazy:()=>hxb,late:()=>sUb,isValid:()=>eu,isDirty:()=>yNI,isAsync:()=>E6,isAborted:()=>pNI,intersection:()=>mxb,instanceof:()=>$Ub,getParsedType:()=>g4,getErrorMap:()=>A6,function:()=>Hxb,enum:()=>Jxb,effect:()=>vxb,discriminatedUnion:()=>dxb,defaultErrorMap:()=>AC,datetimeRegex:()=>YrG,date:()=>rUb,custom:()=>VrG,coerce:()=>zxb,boolean:()=>QrG,bigint:()=>tUb,array:()=>Nxb,any:()=>Zxb,addIssueToContext:()=>Ql,ZodVoid:()=>fi,ZodUnknown:()=>I9,ZodUnion:()=>L6,ZodUndefined:()=>y6,ZodType:()=>oW,ZodTuple:()=>z4,ZodTransformer:()=>f5,ZodSymbol:()=>_i,ZodString:()=>S5,ZodSet:()=>rz,ZodSchema:()=>oW,ZodRecord:()=>si,ZodReadonly:()=>x6,ZodPromise:()=>ez,ZodPipeline:()=>ti,ZodParsedType:()=>$Z,ZodOptional:()=>P5,ZodObject:()=>Z2,ZodNumber:()=>G9,ZodNullable:()=>vC,ZodNull:()=>u6,ZodNever:()=>a4,ZodNativeEnum:()=>B6,ZodNaN:()=>oi,ZodMap:()=>$i,ZodLiteral:()=>z6,ZodLazy:()=>a6,ZodIssueCode:()=>BZ,ZodIntersection:()=>g6,ZodFunction:()=>C6,ZodFirstPartyTypeKind:()=>kZ,ZodError:()=>O1,ZodEnum:()=>l9,ZodEffects:()=>f5,ZodDiscriminatedUnion:()=>uNI,ZodDefault:()=>k6,ZodDate:()=>oz,ZodCatch:()=>U6,ZodBranded:()=>LNI,ZodBoolean:()=>p6,ZodBigInt:()=>Z9,ZodArray:()=>i5,ZodAny:()=>tz,Schema:()=>oW,ParseStatus:()=>em,OK:()=>dX,NEVER:()=>Bxb,INVALID:()=>fb,EMPTY_PATH:()=>yUb,DIRTY:()=>$z,BRAND:()=>fUb});var gNI=a(()=>{CNI();ALI();GrG();ii();XrG();vNI()});var tY=a(()=>{gNI();gNI()});var aNI;var FrG=a(()=>{tY();aNI=mG.object({name:mG.string().optional(),description:mG.string().optional(),tools:mG.string().optional(),disallowedTools:mG.string().optional(),model:mG.enum(["sonnet","opus","haiku","inherit"]).optional().default("inherit"),permissionMode:mG.enum(["default","acceptEdits","dontAsk","bypassPermissions","plan"]).optional(),maxTurns:mG.number().optional()})});function RrG(I){let G=I.match(kxb);if(!G)return{frontmatter:aNI.parse({}),body:I.trim()};let Z=G[1],l=G[2].trim(),b={};for(let W of Z.split(`
334
334
  `)){let N=W.indexOf(":");if(N===-1)continue;let Y=W.slice(0,N).trim(),c=W.slice(N+1).trim();if(typeof c==="string"&&(c.startsWith('"')&&c.endsWith('"')||c.startsWith("'")&&c.endsWith("'")))c=c.slice(1,-1);if(c==="true")c=!0;else if(c==="false")c=!1;if(typeof c==="string"&&/^\d+$/.test(c))c=parseInt(c,10);if(typeof c==="string"&&c.startsWith("[")&&c.endsWith("]"))c=c.slice(1,-1).split(",").map((V)=>V.trim()).filter(Boolean);b[Y]=c}try{return{frontmatter:aNI.parse(b),body:l}}catch(W){return DG(W),{frontmatter:aNI.parse({}),body:I.trim()}}}var kxb;var HrG=a(()=>{FrG();Ul();kxb=/^---\n([\s\S]*?)\n---\n?([\s\S]*)$/});var hrG;var wrG=a(()=>{hrG=[{name:"Explore",scope:"builtin",filePath:null,frontmatter:{name:"Explore",description:"Fast agent specialized for exploring codebases. Use for file searches, keyword searches, and codebase questions.",tools:"Glob, Grep, FileRead, WebFetch, WebSearch",model:"haiku"},body:`You are a fast code exploration agent. Your job is to quickly find files, search for keywords, and answer questions about the codebase.
335
335
 
336
336
  Notes:
@@ -1572,13 +1572,13 @@ Notes:
1572
1572
  3. Any file paths you return in your final response MUST be absolute. DO NOT use relative paths.`,`${await MnZ()}`]}var oj=a(async()=>{k2();a5();QW();Nm();MW();ynZ();Fs();await gZ([WV(),RH()])});import{createHash as hoW,randomUUID as Rs}from"crypto";function JjI(I){if(I.includes("haiku-4-5")||I.includes("haiku-4.5"))return{inputCost:woW,outputCost:JoW,cacheWriteCost:AoW,cacheReadCost:EoW};if(I.includes("opus-4-5")||I.includes("opus-4.5")||I.includes("opus-4-6")||I.includes("opus-4.6"))return{inputCost:uoW,outputCost:LoW,cacheWriteCost:goW,cacheReadCost:aoW};return{inputCost:voW,outputCost:CoW,cacheWriteCost:poW,cacheReadCost:yoW}}function jmI(){return{user_id:`${ZbI()}_${cF}`}}function koW(I,G){if(G){let Z=parseInt(G,10);if(!isNaN(Z))return Z*1000}return Math.min(BoW*Math.pow(2,I-1),32000)}function UoW(I){if(I.message?.includes('"type":"overloaded_error"'))return process.env.USER_TYPE==="SWE_BENCH";let G=I.headers?.["x-should-retry"];if(G==="true")return!0;if(G==="false")return!1;if(I instanceof yC)return!0;if(!I.status)return!1;if(I.status===408)return!0;if(I.status===409)return!0;if(I.status===429)return!0;if(I.status&&I.status>=500)return!0;return!1}async function nmI(I,G={}){let Z=G.maxRetries??zoW,l;for(let b=1;b<=Z+1;b++)try{return await I(b)}catch(W){if(l=W,b>Z||!(W instanceof Dc)||!UoW(W))throw W;let N=W.headers?.["retry-after"]??null,Y=koW(b,N);console.log(` ⎿ ${aZ.red(`API ${W.name} (${W.message}) · Retrying in ${Math.round(Y/1000)} seconds… (attempt ${b}/${Z})`)}`),JG("tengu_api_retry",{attempt:String(b),delayMs:String(Y),error:W.message,status:String(W.status),provider:a2?"bedrock":z2?"vertex":"1p"}),await new Promise((c)=>setTimeout(c,Y))}throw l}async function DnZ(I){let G={apiKey:I,dangerouslyAllowBrowser:!0,maxRetries:3,defaultHeaders:{"User-Agent":wz}};if(process.env.ANTHROPIC_BASE_URL)G.baseURL=process.env.ANTHROPIC_BASE_URL;let Z=new U4(G);try{return await nmI(async()=>{let l=B2,b=[{role:"user",content:"test"}];return await Z.messages.create({model:l,max_tokens:1,messages:b,temperature:0,metadata:jmI()}),!0},{maxRetries:2}),!0}catch(l){if(DG(l),l instanceof Error&&l.message.includes('{"type":"error","error":{"type":"authentication_error","message":"invalid x-api-key"}}'))return!1;throw l}}async function AjI(I){let G=Date.now(),Z;for await(let b of I)if(b.type==="message_start")Z=Date.now()-G;return{...await I.finalMessage(),ttftMs:Z}}function rj(I){if(J3)return J3;let G=FKG(I),l={defaultHeaders:{"x-app":"cli","User-Agent":wz},maxRetries:0,timeout:parseInt(process.env.API_TIMEOUT_MS||String(60000),10),httpAgent:Cz()};if(a2)return J3=new TdI(l),J3;if(z2){let N={...l,region:G||process.env.CLOUD_ML_REGION||"us-east5"};return J3=new g0I(N),J3}let b=Bh();if(process.env.USER_TYPE==="ant"&&!b)console.error(aZ.red("[ANT-ONLY] Please set the ANTHROPIC_API_KEY environment variable to use the CLI. To create a new key, go to https://console.anthropic.com/settings/keys."));let W={dangerouslyAllowBrowser:!0,...l,...process.env.ANTHROPIC_AUTH_TOKEN?{authToken:process.env.ANTHROPIC_AUTH_TOKEN}:{apiKey:b},...process.env.ANTHROPIC_BASE_URL?{baseURL:process.env.ANTHROPIC_BASE_URL}:{}};return J3=new U4(W),J3}function jnZ(){J3=null}function xoW(I,G=!1){if(G)if(typeof I.message.content==="string")return{role:"user",content:[{type:"text",text:I.message.content,...Ck?{cache_control:{type:"ephemeral"}}:{}}]};else return{role:"user",content:I.message.content.map((Z,l)=>({...Z,...l===I.message.content.length-1?Ck?{cache_control:{type:"ephemeral"}}:{}:{}}))};return{role:"user",content:I.message.content}}function OoW(I,G=!1){if(G)if(typeof I.message.content==="string")return{role:"assistant",content:[{type:"text",text:I.message.content,...Ck?{cache_control:{type:"ephemeral"}}:{}}]};else return{role:"assistant",content:I.message.content.map((Z,l)=>({...Z,...l===I.message.content.length-1&&Z.type!=="thinking"&&Z.type!=="redacted_thinking"?Ck?{cache_control:{type:"ephemeral"}}:{}:{}}))};return{role:"assistant",content:I.message.content}}function KmI(I){let G=I[0]||"",Z=I.slice(1);return[G,Z.join(`
1573
1573
  `)].filter(Boolean)}async function ej(I,G,Z,l,b,W){let N=typeof Z==="number"?Z>0?{type:"enabled",budget_tokens:Z}:{type:"disabled"}:Z;return await w6I(I,()=>KoW(I,G,N,l,b,W))}function nnZ(I,G){if(Object.entries(G).length===0)return I;return[...I,`
1574
1574
  As you answer the user's questions, you can use the following context:
1575
- `,...Object.entries(G).map(([Z,l])=>`<context name="${Z}">${l}</context>`)]}function MoW(I,G){switch(I.type){case"adaptive":return{max_tokens:A3(G),thinking:{type:"adaptive"},output_config:{effort:I.effort}};case"enabled":return{max_tokens:Math.max(I.budget_tokens+1,A3(G)),thinking:{type:"enabled",budget_tokens:I.budget_tokens}};case"disabled":return{max_tokens:A3(G)}}}async function KoW(I,G,Z,l,b,W){let N=await rj(W.model);if(W.prependCLISysprompt){let[lI]=KmI(G);JG("tengu_sysprompt_block",{snippet:lI?.slice(0,20),length:String(lI?.length??0),hash:lI?hoW("sha256").update(lI).digest("hex"):""}),G=[OnZ(),...G]}let Y=KmI(G).map((lI)=>({...Ck?{cache_control:{type:"ephemeral"}}:{},text:lI,type:"text"})),c=await Promise.all(l.map(async(lI)=>({name:lI.name,description:await lI.prompt({dangerouslySkipPermissions:W.dangerouslySkipPermissions}),input_schema:"inputJSONSchema"in lI&&lI.inputJSONSchema?lI.inputJSONSchema:NL(lI.inputSchema)}))),V=await MlI(),d=Ck&&V.length>0;JG("tengu_api_query",{model:W.model,messagesLength:String(JSON.stringify([...Y,...I,...c]).length),temperature:String(Hs),provider:a2?"bedrock":z2?"vertex":"1p",...d?{betas:V.join(",")}:{}});let Q=Date.now(),X=Date.now(),R=0,H,h=void 0;try{H=await nmI(async(lI)=>{R=lI,X=Date.now();let t=MoW(Z,W.model),aI=N.beta.messages.stream({model:W.model,max_tokens:t.max_tokens??A3(W.model),...t,messages:DoW(I),temperature:Hs,system:Y,tools:c,...d?{betas:V}:{},metadata:jmI()},{signal:b});return h=aI,AjI(aI)})}catch(lI){return DG(lI),JG("tengu_api_error",{model:W.model,error:lI instanceof Error?lI.message:String(lI),status:lI instanceof Dc?String(lI.status):void 0,messageCount:String(I.length),messageTokens:String(YE(I)),durationMs:String(Date.now()-X),durationMsIncludingRetries:String(Date.now()-Q),attempt:String(R),provider:a2?"bedrock":z2?"vertex":"1p",requestId:h?.request_id??void 0}),EjI(lI)}let A=Date.now()-X,C=Date.now()-Q;JG("tengu_api_success",{model:W.model,messageCount:String(I.length),messageTokens:String(YE(I)),inputTokens:String(H.usage.input_tokens),outputTokens:String(H.usage.output_tokens),cachedInputTokens:String(H.usage.cache_read_input_tokens??0),uncachedInputTokens:String(H.usage.cache_creation_input_tokens??0),durationMs:String(A),durationMsIncludingRetries:String(C),attempt:String(R),ttftMs:String(H.ttftMs),provider:a2?"bedrock":z2?"vertex":"1p",requestId:h?.request_id??void 0,stop_reason:H.stop_reason??void 0});let g=H.usage.input_tokens,z=H.usage.output_tokens,k=H.usage.cache_read_input_tokens??0,x=H.usage.cache_creation_input_tokens??0,n=JjI(W.model),_=g/1e6*n.inputCost+z/1e6*n.outputCost+k/1e6*n.cacheReadCost+x/1e6*n.cacheWriteCost;return dk(_,C),{message:{...H,content:qmI(H.content),usage:{...H.usage,cache_read_input_tokens:H.usage.cache_read_input_tokens??0,cache_creation_input_tokens:H.usage.cache_creation_input_tokens??0}},costUSD:_,durationMs:A,type:"assistant",uuid:Rs()}}function EjI(I){if(I instanceof Error&&I.message.includes("prompt is too long"))return tj(hjI);if(I instanceof Error&&I.message.includes("Your credit balance is too low"))return tj(wjI);if(I instanceof Error&&I.message.toLowerCase().includes("x-api-key"))return tj(DmI);if(I instanceof Error)return tj(`${_1}: ${I.message}`);return tj(_1)}function DoW(I){return I.map((G,Z)=>{return G.type==="user"?xoW(G,Z>I.length-3):OoW(G,Z>I.length-3)})}async function joW({systemPrompt:I,userPrompt:G,assistantPrompt:Z,signal:l}){let b=await rj(B2),W=B2,N=[{role:"user",content:G},...Z?[{role:"assistant",content:Z}]:[]],Y=KmI(I).map((n)=>({...Ck?{cache_control:{type:"ephemeral"}}:{},text:n,type:"text"}));JG("tengu_api_query",{model:W,messagesLength:String(JSON.stringify([...Y,...N]).length),provider:a2?"bedrock":z2?"vertex":"1p"});let c=0,V=Date.now(),d=Date.now(),Q,X=void 0;try{Q=await nmI(async(n)=>{c=n,V=Date.now();let _=b.beta.messages.stream({model:W,max_tokens:512,messages:N,system:Y,temperature:0,metadata:jmI(),stream:!0},{signal:l});return X=_,await AjI(_)})}catch(n){return DG(n),JG("tengu_api_error",{error:n instanceof Error?n.message:String(n),status:n instanceof Dc?String(n.status):void 0,model:B2,messageCount:String(Z?2:1),durationMs:String(Date.now()-V),durationMsIncludingRetries:String(Date.now()-d),attempt:String(c),provider:a2?"bedrock":z2?"vertex":"1p",requestId:X?.request_id??void 0}),EjI(n)}let R=Q.usage.input_tokens,H=Q.usage.output_tokens,h=Q.usage.cache_read_input_tokens??0,A=Q.usage.cache_creation_input_tokens??0,C=JjI(B2),g=R/1e6*C.inputCost+H/1e6*C.outputCost+h/1e6*C.cacheReadCost+A/1e6*C.cacheWriteCost,z=Date.now()-V,k=Date.now()-d;dk(g,k);let x={durationMs:z,message:{...Q,content:qmI(Q.content)},costUSD:g,uuid:Rs(),type:"assistant"};return JG("tengu_api_success",{model:B2,messageCount:String(Z?2:1),inputTokens:String(R),outputTokens:String(Q.usage.output_tokens),cachedInputTokens:String(Q.usage.cache_read_input_tokens??0),uncachedInputTokens:String(Q.usage.cache_creation_input_tokens??0),durationMs:String(z),durationMsIncludingRetries:String(k),ttftMs:String(Q.ttftMs),provider:a2?"bedrock":z2?"vertex":"1p",requestId:X?.request_id??void 0,stop_reason:Q.stop_reason??void 0}),x}async function noW({systemPrompt:I,userPrompt:G,assistantPrompt:Z,signal:l}){let b=await rj(B2),W=B2,N=[{role:"user",content:G},...Z?[{role:"assistant",content:Z}]:[]];JG("tengu_api_query",{model:W,messagesLength:String(JSON.stringify([{systemPrompt:I},...N]).length),provider:a2?"bedrock":z2?"vertex":"1p"});let Y=0,c=Date.now(),V=Date.now(),d,Q=void 0;try{d=await nmI(async(z)=>{Y=z,c=Date.now();let k=b.beta.messages.stream({model:W,max_tokens:512,messages:N,system:KmI(I).map((x)=>({type:"text",text:x})),temperature:0,metadata:jmI(),stream:!0},{signal:l});return Q=k,await AjI(k)})}catch(z){return DG(z),JG("tengu_api_error",{error:z instanceof Error?z.message:String(z),status:z instanceof Dc?String(z.status):void 0,model:B2,messageCount:String(Z?2:1),durationMs:String(Date.now()-c),durationMsIncludingRetries:String(Date.now()-V),attempt:String(Y),provider:a2?"bedrock":z2?"vertex":"1p",requestId:Q?.request_id??void 0}),EjI(z)}let X=Date.now()-c,R=Date.now()-V;JG("tengu_api_success",{model:B2,messageCount:String(Z?2:1),inputTokens:String(d.usage.input_tokens),outputTokens:String(d.usage.output_tokens),durationMs:String(X),durationMsIncludingRetries:String(R),attempt:String(Y),provider:a2?"bedrock":z2?"vertex":"1p",requestId:Q?.request_id??void 0,stop_reason:d.stop_reason??void 0});let H=d.usage.input_tokens,h=d.usage.output_tokens,A=JjI(B2),C=H/1e6*A.inputCost+h/1e6*A.outputCost;return dk(C,X),{durationMs:X,message:{...d,content:qmI(d.content),usage:{...d.usage,cache_read_input_tokens:0,cache_creation_input_tokens:0}},costUSD:C,type:"assistant",uuid:Rs()}}async function Rw({systemPrompt:I=[],userPrompt:G,assistantPrompt:Z,enablePromptCaching:l=!1,signal:b}){return await w6I([{message:{role:"user",content:I.map((W)=>({type:"text",text:W}))},type:"user",uuid:Rs()},{message:{role:"user",content:G},type:"user",uuid:Rs()}],()=>{return l?joW({systemPrompt:I,userPrompt:G,assistantPrompt:Z,signal:b}):noW({systemPrompt:I,userPrompt:G,assistantPrompt:Z,signal:b})})}function A3(I){if(I.includes("opus-4-6"))return 128000;if(I.includes("sonnet-4-6"))return 64000;if(I.includes("haiku-4-5"))return 64000;if(I.includes("sonnet-4-5"))return 64000;if(I.includes("opus-4-5"))return 64000;if(I.includes("opus-4-1"))return 32000;if(I.includes("sonnet-4"))return 64000;if(I.includes("opus-4"))return 32000;if(I.includes("haiku-3")||I.includes("3-haiku"))return 4000;if(I.includes("sonnet-3"))return 64000;return 8000}function vjI(I){return 200000}var _1="API Error",hjI="Prompt is too long",wjI="Credit balance is too low",DmI="Invalid API key · Please run /login",JL="(no content)",Ck,woW=1,JoW=5,AoW=1.25,EoW=0.1,voW=3,CoW=15,poW=3.75,yoW=0.3,uoW=5,LoW=25,goW=6.25,aoW=0.5,Hs=1,zoW,BoW=500,J3=null;var B0=a(async()=>{LgI();MpZ();taZ();Mc();aCI();mk();MW();Ul();DlI();TW();YzZ();nf();Nm();Nm();slI();await gZ([WV(),B0I(),oj()]);Ck=!process.env.DISABLE_PROMPT_CACHING;zoW=process.env.USER_TYPE==="SWE_BENCH"?100:10});async function AL(I){let G=process.platform,Z=G==="win32"?"start":G==="darwin"?"open":"xdg-open";try{let{code:l}=await SW(Z,[I]);return l===0}catch(l){return!1}}var hs=a(()=>{iR()});function qnZ({onDone:I}){let[G,Z]=Jw.useState("userInput"),[l,b]=Jw.useState(0),[W,N]=Jw.useState(""),[Y,c]=Jw.useState(null),[V,d]=Jw.useState(null),[Q,X]=Jw.useState({isGit:!1,gitState:null}),[R,H]=Jw.useState(null),h=NY().columns-4,A=B4()();Jw.useEffect(()=>{async function k(){let x=await ah(),n=null;if(x)n=await KlI();X({isGit:x,gitState:n})}k()},[]);let C=zY(()=>process.exit(0)),g=Jw.useCallback(async()=>{Z("submitting"),d(null),c(null);let k={message_count:A.length,datetime:new Date().toISOString(),description:W,platform:sl.platform,gitRepo:Q.isGit,terminal:sl.terminal,version:"1.3.2",transcript:A,errors:OOG()},[x,n]=await Promise.all([ioW(k),SoW(W)]);if(H(n),x.success){if(x.feedbackId)c(x.feedbackId),JG("tengu_bug_report_submitted",{feedback_id:x.feedbackId});Z("done")}else d("Could not submit feedback. Please try again later."),Z("userInput")},[W,Q.isGit,A]);Mb((k,x)=>{if(G==="done"){if(x.return&&Y&&R){let n=ToW(Y,R,W);AL(n)}I("<bash-stdout>Bug report submitted</bash-stdout>");return}if(V){I("<bash-stderr>Error submitting bug report</bash-stderr>");return}if(x.escape){I("<bash-stderr>Bug report cancelled</bash-stderr>");return}if(G==="consent"&&(x.return||k===" "))g()});let z=dG();return fZ.createElement(fZ.Fragment,null,fZ.createElement(GI,{flexDirection:"column",borderStyle:"round",borderColor:z.permission,paddingX:1,paddingBottom:1,gap:1},fZ.createElement(D,{bold:!0,color:z.permission},"Submit Bug Report"),G==="userInput"&&fZ.createElement(GI,{flexDirection:"column",gap:1},fZ.createElement(D,null,"Describe the issue below:"),fZ.createElement(s5,{value:W,onChange:N,columns:h,onSubmit:()=>Z("consent"),onExitMessage:()=>I("<bash-stderr>Bug report cancelled</bash-stderr>"),cursorOffset:l,onChangeCursorOffset:b}),V&&fZ.createElement(GI,{flexDirection:"column",gap:1},fZ.createElement(D,{color:"red"},V),fZ.createElement(D,{dimColor:!0},"Press any key to close"))),G==="consent"&&fZ.createElement(GI,{flexDirection:"column"},fZ.createElement(D,null,"This report will include:"),fZ.createElement(GI,{marginLeft:2,flexDirection:"column"},fZ.createElement(D,null,"- Your bug description: ",fZ.createElement(D,{dimColor:!0},W)),fZ.createElement(D,null,"- Environment info:"," ",fZ.createElement(D,{dimColor:!0},sl.platform,", ",sl.terminal,", v","1.3.2")),Q.gitState&&fZ.createElement(D,null,"- Git repo metadata:"," ",fZ.createElement(D,{dimColor:!0},Q.gitState.branchName,Q.gitState.commitHash?`, ${Q.gitState.commitHash.slice(0,7)}`:"",Q.gitState.remoteUrl?` @ ${Q.gitState.remoteUrl}`:"",!Q.gitState.isHeadOnRemote&&", not synced",!Q.gitState.isClean&&", has local changes")),fZ.createElement(D,null,"- Current session transcript")),fZ.createElement(GI,{marginTop:1},fZ.createElement(D,{wrap:"wrap",dimColor:!0},"We will use your feedback to debug related issues or to improve ",yN,"'s functionality (eg. to reduce the risk of bugs occurring in the future). Anthropic will not train generative models using feedback from ",yN,".")),fZ.createElement(GI,{marginTop:1},fZ.createElement(D,null,"Press ",fZ.createElement(D,{bold:!0},"Enter")," to confirm and submit."))),G==="submitting"&&fZ.createElement(GI,{flexDirection:"row",gap:1},fZ.createElement(D,null,"Submitting report…")),G==="done"&&fZ.createElement(GI,{flexDirection:"column"},fZ.createElement(D,{color:dG().success},"Thank you for your report!"),Y&&fZ.createElement(D,{dimColor:!0},"Feedback ID: ",Y),fZ.createElement(GI,{marginTop:1},fZ.createElement(D,null,"Press "),fZ.createElement(D,{bold:!0},"Enter "),fZ.createElement(D,null,"to also create a GitHub issue, or any other key to close.")))),fZ.createElement(GI,{marginLeft:3},fZ.createElement(D,{dimColor:!0},C.pending?fZ.createElement(fZ.Fragment,null,"Press ",C.keyName," again to exit"):G==="userInput"?fZ.createElement(fZ.Fragment,null,"Enter to continue · Esc to cancel"):G==="consent"?fZ.createElement(fZ.Fragment,null,"Enter to submit · Esc to cancel"):null)))}function ToW(I,G,Z){let l=encodeURIComponent(`**Bug Description**
1575
+ `,...Object.entries(G).map(([Z,l])=>`<context name="${Z}">${l}</context>`)]}function MoW(I,G){switch(I.type){case"adaptive":return{max_tokens:A3(G),thinking:{type:"adaptive"},output_config:{effort:I.effort}};case"enabled":return{max_tokens:Math.max(I.budget_tokens+1,A3(G)),thinking:{type:"enabled",budget_tokens:I.budget_tokens}};case"disabled":return{max_tokens:A3(G)}}}async function KoW(I,G,Z,l,b,W){let N=await rj(W.model);if(W.prependCLISysprompt){let[lI]=KmI(G);JG("tengu_sysprompt_block",{snippet:lI?.slice(0,20),length:String(lI?.length??0),hash:lI?hoW("sha256").update(lI).digest("hex"):""}),G=[OnZ(),...G]}let Y=KmI(G).map((lI)=>({...Ck?{cache_control:{type:"ephemeral"}}:{},text:lI,type:"text"})),c=await Promise.all(l.map(async(lI)=>({name:lI.name,description:await lI.prompt({dangerouslySkipPermissions:W.dangerouslySkipPermissions}),input_schema:"inputJSONSchema"in lI&&lI.inputJSONSchema?lI.inputJSONSchema:NL(lI.inputSchema)}))),V=await MlI(),d=Ck&&V.length>0;JG("tengu_api_query",{model:W.model,messagesLength:String(JSON.stringify([...Y,...I,...c]).length),temperature:String(Hs),provider:a2?"bedrock":z2?"vertex":"1p",...d?{betas:V.join(",")}:{}});let Q=Date.now(),X=Date.now(),R=0,H,h=void 0;try{H=await nmI(async(lI)=>{R=lI,X=Date.now();let t=MoW(Z,W.model),aI=N.beta.messages.stream({model:W.model,max_tokens:t.max_tokens??A3(W.model),...t,messages:DoW(I),temperature:Hs,system:Y,tools:c,...d?{betas:V}:{},metadata:jmI()},{signal:b});return h=aI,AjI(aI)})}catch(lI){return DG(lI),JG("tengu_api_error",{model:W.model,error:lI instanceof Error?lI.message:String(lI),status:lI instanceof Dc?String(lI.status):void 0,messageCount:String(I.length),messageTokens:String(YE(I)),durationMs:String(Date.now()-X),durationMsIncludingRetries:String(Date.now()-Q),attempt:String(R),provider:a2?"bedrock":z2?"vertex":"1p",requestId:h?.request_id??void 0}),EjI(lI)}let A=Date.now()-X,C=Date.now()-Q;JG("tengu_api_success",{model:W.model,messageCount:String(I.length),messageTokens:String(YE(I)),inputTokens:String(H.usage.input_tokens),outputTokens:String(H.usage.output_tokens),cachedInputTokens:String(H.usage.cache_read_input_tokens??0),uncachedInputTokens:String(H.usage.cache_creation_input_tokens??0),durationMs:String(A),durationMsIncludingRetries:String(C),attempt:String(R),ttftMs:String(H.ttftMs),provider:a2?"bedrock":z2?"vertex":"1p",requestId:h?.request_id??void 0,stop_reason:H.stop_reason??void 0});let g=H.usage.input_tokens,z=H.usage.output_tokens,k=H.usage.cache_read_input_tokens??0,x=H.usage.cache_creation_input_tokens??0,n=JjI(W.model),_=g/1e6*n.inputCost+z/1e6*n.outputCost+k/1e6*n.cacheReadCost+x/1e6*n.cacheWriteCost;return dk(_,C),{message:{...H,content:qmI(H.content),usage:{...H.usage,cache_read_input_tokens:H.usage.cache_read_input_tokens??0,cache_creation_input_tokens:H.usage.cache_creation_input_tokens??0}},costUSD:_,durationMs:A,type:"assistant",uuid:Rs()}}function EjI(I){if(I instanceof Error&&I.message.includes("prompt is too long"))return tj(hjI);if(I instanceof Error&&I.message.includes("Your credit balance is too low"))return tj(wjI);if(I instanceof Error&&I.message.toLowerCase().includes("x-api-key"))return tj(DmI);if(I instanceof Error)return tj(`${_1}: ${I.message}`);return tj(_1)}function DoW(I){return I.map((G,Z)=>{return G.type==="user"?xoW(G,Z>I.length-3):OoW(G,Z>I.length-3)})}async function joW({systemPrompt:I,userPrompt:G,assistantPrompt:Z,signal:l}){let b=await rj(B2),W=B2,N=[{role:"user",content:G},...Z?[{role:"assistant",content:Z}]:[]],Y=KmI(I).map((n)=>({...Ck?{cache_control:{type:"ephemeral"}}:{},text:n,type:"text"}));JG("tengu_api_query",{model:W,messagesLength:String(JSON.stringify([...Y,...N]).length),provider:a2?"bedrock":z2?"vertex":"1p"});let c=0,V=Date.now(),d=Date.now(),Q,X=void 0;try{Q=await nmI(async(n)=>{c=n,V=Date.now();let _=b.beta.messages.stream({model:W,max_tokens:512,messages:N,system:Y,temperature:0,metadata:jmI(),stream:!0},{signal:l});return X=_,await AjI(_)})}catch(n){return DG(n),JG("tengu_api_error",{error:n instanceof Error?n.message:String(n),status:n instanceof Dc?String(n.status):void 0,model:B2,messageCount:String(Z?2:1),durationMs:String(Date.now()-V),durationMsIncludingRetries:String(Date.now()-d),attempt:String(c),provider:a2?"bedrock":z2?"vertex":"1p",requestId:X?.request_id??void 0}),EjI(n)}let R=Q.usage.input_tokens,H=Q.usage.output_tokens,h=Q.usage.cache_read_input_tokens??0,A=Q.usage.cache_creation_input_tokens??0,C=JjI(B2),g=R/1e6*C.inputCost+H/1e6*C.outputCost+h/1e6*C.cacheReadCost+A/1e6*C.cacheWriteCost,z=Date.now()-V,k=Date.now()-d;dk(g,k);let x={durationMs:z,message:{...Q,content:qmI(Q.content)},costUSD:g,uuid:Rs(),type:"assistant"};return JG("tengu_api_success",{model:B2,messageCount:String(Z?2:1),inputTokens:String(R),outputTokens:String(Q.usage.output_tokens),cachedInputTokens:String(Q.usage.cache_read_input_tokens??0),uncachedInputTokens:String(Q.usage.cache_creation_input_tokens??0),durationMs:String(z),durationMsIncludingRetries:String(k),ttftMs:String(Q.ttftMs),provider:a2?"bedrock":z2?"vertex":"1p",requestId:X?.request_id??void 0,stop_reason:Q.stop_reason??void 0}),x}async function noW({systemPrompt:I,userPrompt:G,assistantPrompt:Z,signal:l}){let b=await rj(B2),W=B2,N=[{role:"user",content:G},...Z?[{role:"assistant",content:Z}]:[]];JG("tengu_api_query",{model:W,messagesLength:String(JSON.stringify([{systemPrompt:I},...N]).length),provider:a2?"bedrock":z2?"vertex":"1p"});let Y=0,c=Date.now(),V=Date.now(),d,Q=void 0;try{d=await nmI(async(z)=>{Y=z,c=Date.now();let k=b.beta.messages.stream({model:W,max_tokens:512,messages:N,system:KmI(I).map((x)=>({type:"text",text:x})),temperature:0,metadata:jmI(),stream:!0},{signal:l});return Q=k,await AjI(k)})}catch(z){return DG(z),JG("tengu_api_error",{error:z instanceof Error?z.message:String(z),status:z instanceof Dc?String(z.status):void 0,model:B2,messageCount:String(Z?2:1),durationMs:String(Date.now()-c),durationMsIncludingRetries:String(Date.now()-V),attempt:String(Y),provider:a2?"bedrock":z2?"vertex":"1p",requestId:Q?.request_id??void 0}),EjI(z)}let X=Date.now()-c,R=Date.now()-V;JG("tengu_api_success",{model:B2,messageCount:String(Z?2:1),inputTokens:String(d.usage.input_tokens),outputTokens:String(d.usage.output_tokens),durationMs:String(X),durationMsIncludingRetries:String(R),attempt:String(Y),provider:a2?"bedrock":z2?"vertex":"1p",requestId:Q?.request_id??void 0,stop_reason:d.stop_reason??void 0});let H=d.usage.input_tokens,h=d.usage.output_tokens,A=JjI(B2),C=H/1e6*A.inputCost+h/1e6*A.outputCost;return dk(C,X),{durationMs:X,message:{...d,content:qmI(d.content),usage:{...d.usage,cache_read_input_tokens:0,cache_creation_input_tokens:0}},costUSD:C,type:"assistant",uuid:Rs()}}async function Rw({systemPrompt:I=[],userPrompt:G,assistantPrompt:Z,enablePromptCaching:l=!1,signal:b}){return await w6I([{message:{role:"user",content:I.map((W)=>({type:"text",text:W}))},type:"user",uuid:Rs()},{message:{role:"user",content:G},type:"user",uuid:Rs()}],()=>{return l?joW({systemPrompt:I,userPrompt:G,assistantPrompt:Z,signal:b}):noW({systemPrompt:I,userPrompt:G,assistantPrompt:Z,signal:b})})}function A3(I){if(I.includes("opus-4-6"))return 128000;if(I.includes("sonnet-4-6"))return 64000;if(I.includes("haiku-4-5"))return 64000;if(I.includes("sonnet-4-5"))return 64000;if(I.includes("opus-4-5"))return 64000;if(I.includes("opus-4-1"))return 32000;if(I.includes("sonnet-4"))return 64000;if(I.includes("opus-4"))return 32000;if(I.includes("haiku-3")||I.includes("3-haiku"))return 4000;if(I.includes("sonnet-3"))return 64000;return 8000}function vjI(I){return 200000}var _1="API Error",hjI="Prompt is too long",wjI="Credit balance is too low",DmI="Invalid API key · Please run /login",JL="(no content)",Ck,woW=1,JoW=5,AoW=1.25,EoW=0.1,voW=3,CoW=15,poW=3.75,yoW=0.3,uoW=5,LoW=25,goW=6.25,aoW=0.5,Hs=1,zoW,BoW=500,J3=null;var B0=a(async()=>{LgI();MpZ();taZ();Mc();aCI();mk();MW();Ul();DlI();TW();YzZ();nf();Nm();Nm();slI();await gZ([WV(),B0I(),oj()]);Ck=!process.env.DISABLE_PROMPT_CACHING;zoW=process.env.USER_TYPE==="SWE_BENCH"?100:10});async function AL(I){let G=process.platform,Z=G==="win32"?"start":G==="darwin"?"open":"xdg-open";try{let{code:l}=await SW(Z,[I]);return l===0}catch(l){return!1}}var hs=a(()=>{iR()});function qnZ({onDone:I}){let[G,Z]=Jw.useState("userInput"),[l,b]=Jw.useState(0),[W,N]=Jw.useState(""),[Y,c]=Jw.useState(null),[V,d]=Jw.useState(null),[Q,X]=Jw.useState({isGit:!1,gitState:null}),[R,H]=Jw.useState(null),h=NY().columns-4,A=B4()();Jw.useEffect(()=>{async function k(){let x=await ah(),n=null;if(x)n=await KlI();X({isGit:x,gitState:n})}k()},[]);let C=zY(()=>process.exit(0)),g=Jw.useCallback(async()=>{Z("submitting"),d(null),c(null);let k={message_count:A.length,datetime:new Date().toISOString(),description:W,platform:sl.platform,gitRepo:Q.isGit,terminal:sl.terminal,version:"1.3.4",transcript:A,errors:OOG()},[x,n]=await Promise.all([ioW(k),SoW(W)]);if(H(n),x.success){if(x.feedbackId)c(x.feedbackId),JG("tengu_bug_report_submitted",{feedback_id:x.feedbackId});Z("done")}else d("Could not submit feedback. Please try again later."),Z("userInput")},[W,Q.isGit,A]);Mb((k,x)=>{if(G==="done"){if(x.return&&Y&&R){let n=ToW(Y,R,W);AL(n)}I("<bash-stdout>Bug report submitted</bash-stdout>");return}if(V){I("<bash-stderr>Error submitting bug report</bash-stderr>");return}if(x.escape){I("<bash-stderr>Bug report cancelled</bash-stderr>");return}if(G==="consent"&&(x.return||k===" "))g()});let z=dG();return fZ.createElement(fZ.Fragment,null,fZ.createElement(GI,{flexDirection:"column",borderStyle:"round",borderColor:z.permission,paddingX:1,paddingBottom:1,gap:1},fZ.createElement(D,{bold:!0,color:z.permission},"Submit Bug Report"),G==="userInput"&&fZ.createElement(GI,{flexDirection:"column",gap:1},fZ.createElement(D,null,"Describe the issue below:"),fZ.createElement(s5,{value:W,onChange:N,columns:h,onSubmit:()=>Z("consent"),onExitMessage:()=>I("<bash-stderr>Bug report cancelled</bash-stderr>"),cursorOffset:l,onChangeCursorOffset:b}),V&&fZ.createElement(GI,{flexDirection:"column",gap:1},fZ.createElement(D,{color:"red"},V),fZ.createElement(D,{dimColor:!0},"Press any key to close"))),G==="consent"&&fZ.createElement(GI,{flexDirection:"column"},fZ.createElement(D,null,"This report will include:"),fZ.createElement(GI,{marginLeft:2,flexDirection:"column"},fZ.createElement(D,null,"- Your bug description: ",fZ.createElement(D,{dimColor:!0},W)),fZ.createElement(D,null,"- Environment info:"," ",fZ.createElement(D,{dimColor:!0},sl.platform,", ",sl.terminal,", v","1.3.4")),Q.gitState&&fZ.createElement(D,null,"- Git repo metadata:"," ",fZ.createElement(D,{dimColor:!0},Q.gitState.branchName,Q.gitState.commitHash?`, ${Q.gitState.commitHash.slice(0,7)}`:"",Q.gitState.remoteUrl?` @ ${Q.gitState.remoteUrl}`:"",!Q.gitState.isHeadOnRemote&&", not synced",!Q.gitState.isClean&&", has local changes")),fZ.createElement(D,null,"- Current session transcript")),fZ.createElement(GI,{marginTop:1},fZ.createElement(D,{wrap:"wrap",dimColor:!0},"We will use your feedback to debug related issues or to improve ",yN,"'s functionality (eg. to reduce the risk of bugs occurring in the future). Anthropic will not train generative models using feedback from ",yN,".")),fZ.createElement(GI,{marginTop:1},fZ.createElement(D,null,"Press ",fZ.createElement(D,{bold:!0},"Enter")," to confirm and submit."))),G==="submitting"&&fZ.createElement(GI,{flexDirection:"row",gap:1},fZ.createElement(D,null,"Submitting report…")),G==="done"&&fZ.createElement(GI,{flexDirection:"column"},fZ.createElement(D,{color:dG().success},"Thank you for your report!"),Y&&fZ.createElement(D,{dimColor:!0},"Feedback ID: ",Y),fZ.createElement(GI,{marginTop:1},fZ.createElement(D,null,"Press "),fZ.createElement(D,{bold:!0},"Enter "),fZ.createElement(D,null,"to also create a GitHub issue, or any other key to close.")))),fZ.createElement(GI,{marginLeft:3},fZ.createElement(D,{dimColor:!0},C.pending?fZ.createElement(fZ.Fragment,null,"Press ",C.keyName," again to exit"):G==="userInput"?fZ.createElement(fZ.Fragment,null,"Enter to continue · Esc to cancel"):G==="consent"?fZ.createElement(fZ.Fragment,null,"Enter to submit · Esc to cancel"):null)))}function ToW(I,G,Z){let l=encodeURIComponent(`**Bug Description**
1576
1576
  ${Z}
1577
1577
 
1578
1578
  **Environment Info**
1579
1579
  - Platform: ${sl.platform}
1580
1580
  - Terminal: ${sl.terminal}
1581
- - Version: 1.3.2
1581
+ - Version: 1.3.4
1582
1582
  - Feedback ID: ${I}
1583
1583
  `);return`${qoW}/new?title=${encodeURIComponent(G)}&body=${l}&labels=user-reported,bug`}async function SoW(I){let G=await Rw({systemPrompt:['Generate a concise issue title (max 80 chars) that captures the key point of this feedback. Do not include quotes or prefixes like "Feedback:" or "Issue:". If you cannot generate a title, just use "User Feedback".'],userPrompt:I}),Z=G.message.content[0]?.type==="text"?G.message.content[0].text:"Bug Report";if(Z.startsWith(_1))return`Bug Report: ${I.slice(0,60)}${I.length>60?"...":""}`;return Z}async function ioW(I){try{let G=Bh(),Z=process.env.ANTHROPIC_AUTH_TOKEN;if(!G&&!Z)return{success:!1};let l=process.env.ANTHROPIC_BASE_URL||"https://api.anthropic.com",b={"Content-Type":"application/json","User-Agent":wz};if(Z)b.Authorization=`Bearer ${Z}`;else b["x-api-key"]=G;let W=await fetch(`${l}/api/claude_cli_feedback`,{method:"POST",headers:b,body:JSON.stringify({content:JSON.stringify(I)})});if(W.ok){let N=await W.json();if(N?.feedback_id)return{success:!0,feedbackId:N.feedback_id};return DG("Failed to submit feedback: request did not return feedback_id"),{success:!1}}return DG("Failed to submit feedback:"+W.status),{success:!1}}catch(G){return DG("Error submitting feedback: "+(G instanceof Error?G.message:"Unknown error")),{success:!1}}}var fZ,Jw,qoW="https://github.com/quantumiodb/ccode/issues";var TnZ=a(async()=>{yl();Ul();k2();a5();VX();MW();DlI();TW();hs();await gZ([oG(),n6(),B0(),mX()]);fZ=hI(YG(),1),Jw=hI(YG(),1)});var CjI,PoW,SnZ;var inZ=a(async()=>{await TnZ();CjI=hI(YG(),1),PoW={type:"local-jsx",name:"bug",description:`Submit feedback about ${yN}`,isEnabled:!0,isHidden:!1,async call(I){return CjI.createElement(qnZ,{onDone:I})},userFacingName(){return"bug"}},SnZ=PoW});import{existsSync as _oW,readFileSync as foW}from"fs";import{join as soW,parse as $oW,dirname as ooW}from"path";var toW="The codebase follows strict style guidelines shown below. All code changes must strictly adhere to these guidelines to maintain consistency and quality.",E3;var ws=a(()=>{wY();QW();E3=cb(()=>{let I=[],G=bZ();while(G!==$oW(G).root){let Z=soW(G,"CLAUDE.md");if(_oW(Z))I.push(`Contents of ${Z}:
1584
1584
 
@@ -1669,13 +1669,13 @@ ${I}`})});function IqI(I){if(process.platform==="win32")process.title=I?`✳ ${I
1669
1669
  <context name="${V}">${d}</context>`;let N=b.map((V)=>{let d=V.prompt({dangerouslySkipPermissions:!1}),Q=JSON.stringify("inputJSONSchema"in V&&V.inputJSONSchema?V.inputJSONSchema:V.inputSchema&&("_def"in V.inputSchema)?NL(V.inputSchema):V.inputSchema??{});return{name:V.name,description:`${d}
1670
1670
 
1671
1671
  Schema:
1672
- ${Q}`}}),Y=B4()(),c=a2N(W);return z2N(W,c,N,Y)}},XqI=B2N});function PXI(){let I=[...iXI,...[...iXI].reverse()],[G,Z]=_J.useState(0),[l,b]=_J.useState(0),W=_J.useRef(Hz(k2N)),N=_J.useRef(Date.now());return _J.useEffect(()=>{let Y=setInterval(()=>{Z((c)=>(c+1)%I.length)},120);return()=>clearInterval(Y)},[I.length]),_J.useEffect(()=>{let Y=setInterval(()=>{b(Math.floor((Date.now()-N.current)/1000))},1000);return()=>clearInterval(Y)},[]),EQ.createElement(GI,{flexDirection:"row",marginTop:1},EQ.createElement(GI,{flexWrap:"nowrap",height:1,width:2},EQ.createElement(D,{color:dG().claude},I[G])),EQ.createElement(D,{color:dG().claude},W.current,"… "),EQ.createElement(D,{color:dG().secondaryText},"(",l,"s · ",EQ.createElement(D,{bold:!0},"esc")," to interrupt)"))}function k$(){let I=[...iXI,...[...iXI].reverse()],[G,Z]=_J.useState(0);return _J.useEffect(()=>{let l=setInterval(()=>{Z((b)=>(b+1)%I.length)},120);return()=>clearInterval(l)},[I.length]),EQ.createElement(GI,{flexWrap:"nowrap",height:1,width:2},EQ.createElement(D,{color:dG().claude},I[G]))}var EQ,_J,iXI,k2N;var U$=a(async()=>{yl();wY();await oG();EQ=hI(YG(),1),_J=hI(YG(),1),iXI=process.platform==="darwin"?["·","✢","✳","∗","✻","✽"]:["·","✢","*","∗","✻","✽"],k2N=["Accomplishing","Actioning","Actualizing","Baking","Brewing","Calculating","Cerebrating","Churning","Clauding","Coalescing","Cogitating","Computing","Conjuring","Considering","Cooking","Crafting","Creating","Crunching","Deliberating","Determining","Doing","Effecting","Finagling","Forging","Forming","Generating","Hatching","Herding","Honking","Hustling","Ideating","Inferring","Manifesting","Marinating","Moseying","Mulling","Mustering","Musing","Noodling","Percolating","Pondering","Processing","Puttering","Reticulating","Ruminating","Schlepping","Shucking","Simmering","Smooshing","Spinning","Stewing","Synthesizing","Thinking","Transmuting","Vibing","Working"]});import{homedir as x$}from"os";import{join as Tn}from"path";import{existsSync as O$,mkdirSync as qoZ,appendFileSync as noZ,readFileSync as ToZ,constants as U2N,writeFileSync as x2N,unlinkSync as SoZ,statSync as O2N}from"fs";import{platform as ioZ}from"process";import{accessSync as M2N}from"fs";function PoZ(){try{if(!O$(hu))qoZ(hu,{recursive:!0});if(O$(Tk)){let I=O2N(Tk);if(Date.now()-I.mtimeMs<D2N)return!1;try{SoZ(Tk)}catch(Z){return DG(`Failed to remove stale lock file: ${Z}`),!1}}return x2N(Tk,`${process.pid}`,"utf8"),!0}catch(I){return DG(`Failed to acquire lock: ${I}`),!1}}function _oZ(){try{if(O$(Tk)){if(ToZ(Tk,"utf8")===`${process.pid}`)SoZ(Tk)}}catch(I){DG(`Failed to release lock: ${I}`)}}async function FqI(){try{let I=await SW("npm",["-g","config","get","prefix"]);if(I.code!==0)return DG("Failed to check npm permissions"),{hasPermissions:!1,npmPrefix:null};let G=I.stdout.trim(),Z=!1;try{M2N(G,U2N.W_OK),Z=!0}catch{Z=!1}if(Z)return{hasPermissions:!0,npmPrefix:G};return DG("Insufficient permissions for global npm install."),{hasPermissions:!1,npmPrefix:G}}catch(I){return DG(`Failed to verify npm global install permissions: ${I}`),{hasPermissions:!1,npmPrefix:null}}}async function foZ(I){if(!PoZ())throw JG("tengu_auto_updater_prefix_lock_contention",{pid:String(process.pid),currentVersion:"1.3.2",prefix:I}),Error("Another process is currently setting up npm prefix");try{if(!O$(I))qoZ(I,{recursive:!0});let G=await SW("npm",["-g","config","set","prefix",I]);if(G.code!==0)throw Error(`Failed to set npm prefix: ${G.stderr}`);let Z=`
1672
+ ${Q}`}}),Y=B4()(),c=a2N(W);return z2N(W,c,N,Y)}},XqI=B2N});function PXI(){let I=[...iXI,...[...iXI].reverse()],[G,Z]=_J.useState(0),[l,b]=_J.useState(0),W=_J.useRef(Hz(k2N)),N=_J.useRef(Date.now());return _J.useEffect(()=>{let Y=setInterval(()=>{Z((c)=>(c+1)%I.length)},120);return()=>clearInterval(Y)},[I.length]),_J.useEffect(()=>{let Y=setInterval(()=>{b(Math.floor((Date.now()-N.current)/1000))},1000);return()=>clearInterval(Y)},[]),EQ.createElement(GI,{flexDirection:"row",marginTop:1},EQ.createElement(GI,{flexWrap:"nowrap",height:1,width:2},EQ.createElement(D,{color:dG().claude},I[G])),EQ.createElement(D,{color:dG().claude},W.current,"… "),EQ.createElement(D,{color:dG().secondaryText},"(",l,"s · ",EQ.createElement(D,{bold:!0},"esc")," to interrupt)"))}function k$(){let I=[...iXI,...[...iXI].reverse()],[G,Z]=_J.useState(0);return _J.useEffect(()=>{let l=setInterval(()=>{Z((b)=>(b+1)%I.length)},120);return()=>clearInterval(l)},[I.length]),EQ.createElement(GI,{flexWrap:"nowrap",height:1,width:2},EQ.createElement(D,{color:dG().claude},I[G]))}var EQ,_J,iXI,k2N;var U$=a(async()=>{yl();wY();await oG();EQ=hI(YG(),1),_J=hI(YG(),1),iXI=process.platform==="darwin"?["·","✢","✳","∗","✻","✽"]:["·","✢","*","∗","✻","✽"],k2N=["Accomplishing","Actioning","Actualizing","Baking","Brewing","Calculating","Cerebrating","Churning","Clauding","Coalescing","Cogitating","Computing","Conjuring","Considering","Cooking","Crafting","Creating","Crunching","Deliberating","Determining","Doing","Effecting","Finagling","Forging","Forming","Generating","Hatching","Herding","Honking","Hustling","Ideating","Inferring","Manifesting","Marinating","Moseying","Mulling","Mustering","Musing","Noodling","Percolating","Pondering","Processing","Puttering","Reticulating","Ruminating","Schlepping","Shucking","Simmering","Smooshing","Spinning","Stewing","Synthesizing","Thinking","Transmuting","Vibing","Working"]});import{homedir as x$}from"os";import{join as Tn}from"path";import{existsSync as O$,mkdirSync as qoZ,appendFileSync as noZ,readFileSync as ToZ,constants as U2N,writeFileSync as x2N,unlinkSync as SoZ,statSync as O2N}from"fs";import{platform as ioZ}from"process";import{accessSync as M2N}from"fs";function PoZ(){try{if(!O$(hu))qoZ(hu,{recursive:!0});if(O$(Tk)){let I=O2N(Tk);if(Date.now()-I.mtimeMs<D2N)return!1;try{SoZ(Tk)}catch(Z){return DG(`Failed to remove stale lock file: ${Z}`),!1}}return x2N(Tk,`${process.pid}`,"utf8"),!0}catch(I){return DG(`Failed to acquire lock: ${I}`),!1}}function _oZ(){try{if(O$(Tk)){if(ToZ(Tk,"utf8")===`${process.pid}`)SoZ(Tk)}}catch(I){DG(`Failed to release lock: ${I}`)}}async function FqI(){try{let I=await SW("npm",["-g","config","get","prefix"]);if(I.code!==0)return DG("Failed to check npm permissions"),{hasPermissions:!1,npmPrefix:null};let G=I.stdout.trim(),Z=!1;try{M2N(G,U2N.W_OK),Z=!0}catch{Z=!1}if(Z)return{hasPermissions:!0,npmPrefix:G};return DG("Insufficient permissions for global npm install."),{hasPermissions:!1,npmPrefix:G}}catch(I){return DG(`Failed to verify npm global install permissions: ${I}`),{hasPermissions:!1,npmPrefix:null}}}async function foZ(I){if(!PoZ())throw JG("tengu_auto_updater_prefix_lock_contention",{pid:String(process.pid),currentVersion:"1.3.4",prefix:I}),Error("Another process is currently setting up npm prefix");try{if(!O$(I))qoZ(I,{recursive:!0});let G=await SW("npm",["-g","config","set","prefix",I]);if(G.code!==0)throw Error(`Failed to set npm prefix: ${G.stderr}`);let Z=`
1673
1673
  # npm global path
1674
1674
  export PATH="${I}/bin:$PATH"
1675
1675
  `;if(ioZ==="win32"){let l=await SW("setx",["PATH",`${process.env.PATH};${I}`]);if(l.code!==0)throw Error(`Failed to update PATH on Windows: ${l.stderr}`)}else{let l=[Tn(x$(),".bashrc"),Tn(x$(),".bash_profile"),Tn(x$(),".zshrc"),Tn(x$(),".config","fish","config.fish")];for(let b of l)if(O$(b))try{if(!ToZ(b,"utf8").includes(I)){if(b.includes("fish")){let N=`
1676
1676
  # npm global path
1677
1677
  set -gx PATH ${I}/bin $PATH
1678
- `;noZ(b,N)}else noZ(b,Z);JG("npm_prefix_path_updated",{configPath:b})}}catch(W){JG("npm_prefix_path_update_failed",{configPath:b,error:W instanceof Error?W.message.slice(0,200):String(W).slice(0,200)}),DG(`Failed to update shell config ${b}: ${W}`)}}}finally{_oZ()}}function soZ(){return Tn(x$(),".npm-global")}function $oZ(I){let G=`icacls "${I}" /grant "%USERNAME%:(OI)(CI)F"`,Z=I||"$(npm -g config get prefix)",l=`sudo chown -R $USER:$(id -gn) ${Z} && sudo chmod -R u+w ${Z}`;return ioZ==="win32"?G:l}async function _XI(){let I=new AbortController;setTimeout(()=>I.abort(),5000);let G=await SW("npm",["view","quantwise","version"],I.signal);if(G.code!==0)return null;return G.stdout.trim()}async function Sn(){if(!PoZ())return DG("Another process is currently installing an update"),JG("tengu_auto_updater_lock_contention",{pid:String(process.pid),currentVersion:"1.3.2"}),"in_progress";try{let{hasPermissions:I}=await FqI();if(!I)return"no_permissions";let G=await SW("npm",["install","-g","quantwise"]);if(G.code!==0)return DG(`Failed to install new version of claude: ${G.stdout} ${G.stderr}`),"install_failed";return"success"}finally{_oZ()}}var K2N,Tk,D2N=300000;var M$=a(()=>{iR();Ul();k2();TW();K2N=hI(fx(),1),Tk=Tn(hu,".update.lock")});function ooZ({customPrefix:I,onCustomPrefixChange:G,onSuccess:Z,onCancel:l}){let[b,W]=eY.useState(I.length),[N,Y]=eY.useState(!1),[c,V]=eY.useState(!1),[d,Q]=eY.useState(null),[X,R]=eY.useState({completeSteps:[!1,!1,!1,!1],inProgressStep:null}),H=NY().columns-6,h=dG();async function A(g){V(!0),Q(null);try{R({completeSteps:[!1,!1,!1,!1],inProgressStep:0}),await foZ(g),R({completeSteps:[!0,!0,!0,!1],inProgressStep:3}),await Sn(),R({completeSteps:[!0,!0,!0,!0],inProgressStep:null}),JG("tengu_auto_updater_config_complete",{finalStatus:"enabled",method:"prefix",success:"true"}),Z()}catch(z){DG(z);let k=z instanceof Error?z.message:"Failed to setup npm prefix";Q(k),V(!1),JG("tengu_auto_updater_config_complete",{finalStatus:"not_configured",method:"prefix",success:"false",error:k})}}let C=[{label:"Create new directory for npm global packages",command:`mkdir -p ${I}`},{label:"Configure npm to use new location",command:`npm -g config set prefix ${I}`},{label:"Update shell PATH configuration",command:`export PATH=${I}/bin:$PATH`},{label:`Reinstall ${yN} globally`,command:"npm install -g quantwise"}];return eY.default.createElement(GI,{marginLeft:2,flexDirection:"column"},eY.default.createElement(GI,{flexDirection:"column",gap:1},eY.default.createElement(D,null,"⚠️ Warning: This will modify your global npm configuration and can be dangerous. The following changes will be made:"),C.map((g,z)=>eY.default.createElement(GI,{key:z,flexDirection:"column"},eY.default.createElement(GI,{flexDirection:"row"},eY.default.createElement(D,{color:X.completeSteps[z]?h.success:void 0},c?X.completeSteps[z]?"✓":" ":`${z+1}.`),eY.default.createElement(GI,{width:2},X.inProgressStep===z&&eY.default.createElement(k$,null)),eY.default.createElement(D,{color:X.completeSteps[z]?h.success:void 0},g.label)),g.command&&eY.default.createElement(GI,{marginLeft:2},eY.default.createElement(D,{color:h.suggestion,dimColor:!0},"$ ",g.command)))),eY.default.createElement(D,{color:h.suggestion},"Note: You'll need to restart your terminal after this change"),eY.default.createElement(D,{color:h.warning},"Important: Any existing global npm packages may need to be reinstalled")),!c&&eY.default.createElement(GI,{marginTop:1,flexDirection:"column"},eY.default.createElement(D,null,"Enter prefix path:"),eY.default.createElement(GI,{flexDirection:"row",gap:1},eY.default.createElement(D,null,">"),eY.default.createElement(s5,{placeholder:I,value:I,onChange:G,onSubmit:()=>Y(!0),columns:H,cursorOffset:b,onChangeCursorOffset:W})),N&&eY.default.createElement(GI,{marginTop:1,flexDirection:"column"},eY.default.createElement(D,null,"Are you sure you want to continue with prefix: ",I,"?"),eY.default.createElement($Y,{options:[{label:"Yes",value:"yes"},{label:"No",value:"no"}],onChange:(g)=>{if(Y(!1),g==="yes")A(I);else l()}}))),d&&eY.default.createElement(D,{color:h.error},"Error: ",d))}var eY;var toZ=a(async()=>{yl();VX();M$();Ul();TW();await gZ([oG(),_d(),n6(),U$()]);eY=hI(YG(),1)});function jL(){return K$.createElement(D,{color:dG().permission},"Press ",K$.createElement(D,{bold:!0},"Enter")," to continue…")}var K$;var fXI=a(async()=>{yl();await oG();K$=hI(YG(),1)});import{platform as j2N}from"process";function D$({onDone:I,doctorMode:G=!1}){let[Z,l]=dN.useState(null),[b,W]=dN.useState(null),[N,Y]=dN.useState(null),[c,V]=dN.useState(soZ()),d=dG(),[Q,X]=dN.useState(!1),R=[{label:"Manually fix permissions on current npm prefix (Recommended)",value:"manual",description:j2N==="win32"?"Uses icacls to grant write permissions":"Uses sudo to change ownership"},{label:"Create new npm prefix directory",value:"auto",description:"Creates a new directory for global npm packages in your home directory"},{label:"Skip configuration until next session",value:"ignore",description:"Skip this warning (you will be reminded again later)"}],H=dN.useCallback(async()=>{let h=await FqI();if(JG("tengu_auto_updater_permissions_check",{hasPermissions:h.hasPermissions.toString(),npmPrefix:h.npmPrefix??"null"}),l(h.hasPermissions),h.npmPrefix)W(h.npmPrefix);if(h.hasPermissions){let A=rZ();if(XW({...A,autoUpdaterStatus:"enabled"}),!G)I()}},[I,G]);if(dN.useEffect(()=>{JG("tengu_auto_updater_config_start",{}),H()},[H]),Mb((h,A)=>{if((Q||G&&Z===!0)&&A.return)I()},{isActive:Q||G&&Z===!0}),Z===null)return dN.default.createElement(GI,{paddingX:1,paddingTop:1},dN.default.createElement(D,{color:d.secondaryText},"Checking npm permissions…"));if(Z===!0){if(G)return dN.default.createElement(GI,{flexDirection:"column",gap:1,paddingX:1,paddingTop:1},dN.default.createElement(D,{color:d.success},"✓ npm permissions: OK"),dN.default.createElement(D,null,"Your installation is healthy and ready for auto-updates."),dN.default.createElement(jL,null));return dN.default.createElement(GI,{paddingX:1,paddingTop:1},dN.default.createElement(D,{color:d.success},"✓ Auto-updates enabled"))}return dN.default.createElement(GI,{borderColor:d.permission,borderStyle:"round",flexDirection:"column",gap:1,paddingX:1,paddingTop:1},dN.default.createElement(D,{bold:!0,color:d.permission},"Enable automatic updates?"),dN.default.createElement(D,null,yN," can't update itself because it doesn't have permissions. Do you want to fix this to get automatic updates?"),dN.default.createElement(GI,{flexDirection:"column"},!N&&dN.default.createElement(GI,{marginLeft:2},dN.default.createElement(D,null,"Select an option below to fix the permissions issue:"),dN.default.createElement($Y,{options:R,onChange:(h)=>{if(h!=="auto"&&h!=="manual"&&h!=="ignore")return;if(Y(h),JG("tengu_auto_updater_config_option_selected",{option:h,npmPrefix:b??"null"}),h==="manual"){let A=rZ();XW({...A,autoUpdaterStatus:"not_configured"}),X(!0)}else if(h==="ignore"){let A=rZ();XW({...A,autoUpdaterStatus:"not_configured"}),I()}}})),N==="auto"&&dN.default.createElement(GI,{marginLeft:2},dN.default.createElement(ooZ,{customPrefix:c,onCustomPrefixChange:V,onSuccess:H,onCancel:I})),N==="manual"&&dN.default.createElement(dN.default.Fragment,null,dN.default.createElement(GI,{marginLeft:4,flexDirection:"column"},dN.default.createElement(D,null,"Run this command in your terminal:"),dN.default.createElement(GI,{flexDirection:"row",gap:1},dN.default.createElement(D,{color:d.warning},$oZ(b??""))),dN.default.createElement(GI,{flexDirection:"row",gap:1},dN.default.createElement(D,{color:d.suggestion},"After running the command, restart ",yN))),dN.default.createElement(jL,null))))}var dN;var RqI=a(async()=>{yl();M$();MW();TW();await gZ([oG(),_d(),toZ(),fXI()]);dN=hI(YG(),1)});var roZ,n2N,eoZ;var ItZ=a(async()=>{await RqI();roZ=hI(YG(),1),n2N={name:"doctor",description:"Checks the health of your QuantWise installation",isEnabled:!0,isHidden:!1,userFacingName(){return"doctor"},type:"local-jsx",call(I){let G=roZ.default.createElement(D$,{onDone:I,doctorMode:!0});return Promise.resolve(G)}},eoZ=n2N});var q2N,GtZ;var ZtZ=a(()=>{q2N={type:"local",name:"exit",description:"Exit QuantWise",aliases:["quit"],isEnabled:!0,isHidden:!1,async call(){process.exit(0)},userFacingName(){return"exit"}},GtZ=q2N});function ltZ({commands:I,onClose:G}){let Z=dG(),b=process.env.USER_TYPE==="ant"?"[ANT-ONLY] For more help: go/claude-cli or #claude-cli-feedback":"Learn more at: https://github.com/quantumiodb/ccode",W=I.filter((c)=>!c.isHidden),[N,Y]=hl.useState(0);return hl.useEffect(()=>{let c=setTimeout(()=>{if(N<3)Y(N+1)},250);return()=>clearTimeout(c)},[N]),Mb((c,V)=>{if(V.return)G()}),hl.createElement(GI,{flexDirection:"column",padding:1},hl.createElement(D,{bold:!0,color:Z.claude},`${yN} v1.3.2`),hl.createElement(GI,{marginTop:1,flexDirection:"column"},hl.createElement(D,null,yN," is a beta research preview. Always review Claude's responses, especially when running code. Claude has read access to files in the current directory and can run commands and edit files with your permission.")),N>=1&&hl.createElement(GI,{flexDirection:"column",marginTop:1},hl.createElement(D,{bold:!0},"Usage Modes:"),hl.createElement(D,null,"• REPL: ",hl.createElement(D,{bold:!0},"claude")," (interactive session)"),hl.createElement(D,null,"• Non-interactive: ",hl.createElement(D,{bold:!0},'claude -p "question"')),hl.createElement(GI,{marginTop:1},hl.createElement(D,null,"Run ",hl.createElement(D,{bold:!0},"quantwise -h")," for all command line options"))),N>=2&&hl.createElement(GI,{marginTop:1,flexDirection:"column"},hl.createElement(D,{bold:!0},"Common Tasks:"),hl.createElement(D,null,"• Ask questions about your codebase"," ",hl.createElement(D,{color:dG().secondaryText},"> How does foo.py work?")),hl.createElement(D,null,"• Edit files ",hl.createElement(D,{color:dG().secondaryText},"> Update bar.ts to...")),hl.createElement(D,null,"• Fix errors ",hl.createElement(D,{color:dG().secondaryText},"> cargo build")),hl.createElement(D,null,"• Run commands ",hl.createElement(D,{color:dG().secondaryText},"> /help")),hl.createElement(D,null,"• Run bash commands ",hl.createElement(D,{color:dG().secondaryText},"> !ls"))),N>=3&&hl.createElement(GI,{marginTop:1,flexDirection:"column"},hl.createElement(D,{bold:!0},"Interactive Mode Commands:"),hl.createElement(GI,{flexDirection:"column"},W.map((c,V)=>hl.createElement(GI,{key:V,marginLeft:1},hl.createElement(D,{bold:!0},`/${c.name}`),hl.createElement(D,null," - ",c.description))))),hl.createElement(GI,{marginTop:1},hl.createElement(D,{color:Z.secondaryText},b)),hl.createElement(GI,{marginTop:2},hl.createElement(jL,null)))}var hl;var btZ=a(async()=>{yl();await gZ([oG(),fXI()]);hl=hI(YG(),1)});var HqI,T2N,WtZ;var NtZ=a(async()=>{await btZ();HqI=hI(YG(),1),T2N={type:"local-jsx",name:"help",description:"Show help and available commands",isEnabled:!0,isHidden:!1,async call(I,{options:{commands:G}}){return HqI.createElement(ltZ,{commands:G,onClose:I})},userFacingName(){return"help"}},WtZ=T2N});var S2N,YtZ;var ctZ=a(async()=>{await mWI();S2N={type:"prompt",name:"init",description:"Initialize a new CLAUDE.md file with codebase documentation",isEnabled:!0,isHidden:!1,progressMessage:"analyzing your codebase",userFacingName(){return"init"},async getPromptForCommand(I){return uK(),[{role:"user",content:[{type:"text",text:`Please analyze this codebase and create a CLAUDE.md file containing:
1678
+ `;noZ(b,N)}else noZ(b,Z);JG("npm_prefix_path_updated",{configPath:b})}}catch(W){JG("npm_prefix_path_update_failed",{configPath:b,error:W instanceof Error?W.message.slice(0,200):String(W).slice(0,200)}),DG(`Failed to update shell config ${b}: ${W}`)}}}finally{_oZ()}}function soZ(){return Tn(x$(),".npm-global")}function $oZ(I){let G=`icacls "${I}" /grant "%USERNAME%:(OI)(CI)F"`,Z=I||"$(npm -g config get prefix)",l=`sudo chown -R $USER:$(id -gn) ${Z} && sudo chmod -R u+w ${Z}`;return ioZ==="win32"?G:l}async function _XI(){let I=new AbortController;setTimeout(()=>I.abort(),5000);let G=await SW("npm",["view","quantwise","version"],I.signal);if(G.code!==0)return null;return G.stdout.trim()}async function Sn(){if(!PoZ())return DG("Another process is currently installing an update"),JG("tengu_auto_updater_lock_contention",{pid:String(process.pid),currentVersion:"1.3.4"}),"in_progress";try{let{hasPermissions:I}=await FqI();if(!I)return"no_permissions";let G=await SW("npm",["install","-g","quantwise"]);if(G.code!==0)return DG(`Failed to install new version of claude: ${G.stdout} ${G.stderr}`),"install_failed";return"success"}finally{_oZ()}}var K2N,Tk,D2N=300000;var M$=a(()=>{iR();Ul();k2();TW();K2N=hI(fx(),1),Tk=Tn(hu,".update.lock")});function ooZ({customPrefix:I,onCustomPrefixChange:G,onSuccess:Z,onCancel:l}){let[b,W]=eY.useState(I.length),[N,Y]=eY.useState(!1),[c,V]=eY.useState(!1),[d,Q]=eY.useState(null),[X,R]=eY.useState({completeSteps:[!1,!1,!1,!1],inProgressStep:null}),H=NY().columns-6,h=dG();async function A(g){V(!0),Q(null);try{R({completeSteps:[!1,!1,!1,!1],inProgressStep:0}),await foZ(g),R({completeSteps:[!0,!0,!0,!1],inProgressStep:3}),await Sn(),R({completeSteps:[!0,!0,!0,!0],inProgressStep:null}),JG("tengu_auto_updater_config_complete",{finalStatus:"enabled",method:"prefix",success:"true"}),Z()}catch(z){DG(z);let k=z instanceof Error?z.message:"Failed to setup npm prefix";Q(k),V(!1),JG("tengu_auto_updater_config_complete",{finalStatus:"not_configured",method:"prefix",success:"false",error:k})}}let C=[{label:"Create new directory for npm global packages",command:`mkdir -p ${I}`},{label:"Configure npm to use new location",command:`npm -g config set prefix ${I}`},{label:"Update shell PATH configuration",command:`export PATH=${I}/bin:$PATH`},{label:`Reinstall ${yN} globally`,command:"npm install -g quantwise"}];return eY.default.createElement(GI,{marginLeft:2,flexDirection:"column"},eY.default.createElement(GI,{flexDirection:"column",gap:1},eY.default.createElement(D,null,"⚠️ Warning: This will modify your global npm configuration and can be dangerous. The following changes will be made:"),C.map((g,z)=>eY.default.createElement(GI,{key:z,flexDirection:"column"},eY.default.createElement(GI,{flexDirection:"row"},eY.default.createElement(D,{color:X.completeSteps[z]?h.success:void 0},c?X.completeSteps[z]?"✓":" ":`${z+1}.`),eY.default.createElement(GI,{width:2},X.inProgressStep===z&&eY.default.createElement(k$,null)),eY.default.createElement(D,{color:X.completeSteps[z]?h.success:void 0},g.label)),g.command&&eY.default.createElement(GI,{marginLeft:2},eY.default.createElement(D,{color:h.suggestion,dimColor:!0},"$ ",g.command)))),eY.default.createElement(D,{color:h.suggestion},"Note: You'll need to restart your terminal after this change"),eY.default.createElement(D,{color:h.warning},"Important: Any existing global npm packages may need to be reinstalled")),!c&&eY.default.createElement(GI,{marginTop:1,flexDirection:"column"},eY.default.createElement(D,null,"Enter prefix path:"),eY.default.createElement(GI,{flexDirection:"row",gap:1},eY.default.createElement(D,null,">"),eY.default.createElement(s5,{placeholder:I,value:I,onChange:G,onSubmit:()=>Y(!0),columns:H,cursorOffset:b,onChangeCursorOffset:W})),N&&eY.default.createElement(GI,{marginTop:1,flexDirection:"column"},eY.default.createElement(D,null,"Are you sure you want to continue with prefix: ",I,"?"),eY.default.createElement($Y,{options:[{label:"Yes",value:"yes"},{label:"No",value:"no"}],onChange:(g)=>{if(Y(!1),g==="yes")A(I);else l()}}))),d&&eY.default.createElement(D,{color:h.error},"Error: ",d))}var eY;var toZ=a(async()=>{yl();VX();M$();Ul();TW();await gZ([oG(),_d(),n6(),U$()]);eY=hI(YG(),1)});function jL(){return K$.createElement(D,{color:dG().permission},"Press ",K$.createElement(D,{bold:!0},"Enter")," to continue…")}var K$;var fXI=a(async()=>{yl();await oG();K$=hI(YG(),1)});import{platform as j2N}from"process";function D$({onDone:I,doctorMode:G=!1}){let[Z,l]=dN.useState(null),[b,W]=dN.useState(null),[N,Y]=dN.useState(null),[c,V]=dN.useState(soZ()),d=dG(),[Q,X]=dN.useState(!1),R=[{label:"Manually fix permissions on current npm prefix (Recommended)",value:"manual",description:j2N==="win32"?"Uses icacls to grant write permissions":"Uses sudo to change ownership"},{label:"Create new npm prefix directory",value:"auto",description:"Creates a new directory for global npm packages in your home directory"},{label:"Skip configuration until next session",value:"ignore",description:"Skip this warning (you will be reminded again later)"}],H=dN.useCallback(async()=>{let h=await FqI();if(JG("tengu_auto_updater_permissions_check",{hasPermissions:h.hasPermissions.toString(),npmPrefix:h.npmPrefix??"null"}),l(h.hasPermissions),h.npmPrefix)W(h.npmPrefix);if(h.hasPermissions){let A=rZ();if(XW({...A,autoUpdaterStatus:"enabled"}),!G)I()}},[I,G]);if(dN.useEffect(()=>{JG("tengu_auto_updater_config_start",{}),H()},[H]),Mb((h,A)=>{if((Q||G&&Z===!0)&&A.return)I()},{isActive:Q||G&&Z===!0}),Z===null)return dN.default.createElement(GI,{paddingX:1,paddingTop:1},dN.default.createElement(D,{color:d.secondaryText},"Checking npm permissions…"));if(Z===!0){if(G)return dN.default.createElement(GI,{flexDirection:"column",gap:1,paddingX:1,paddingTop:1},dN.default.createElement(D,{color:d.success},"✓ npm permissions: OK"),dN.default.createElement(D,null,"Your installation is healthy and ready for auto-updates."),dN.default.createElement(jL,null));return dN.default.createElement(GI,{paddingX:1,paddingTop:1},dN.default.createElement(D,{color:d.success},"✓ Auto-updates enabled"))}return dN.default.createElement(GI,{borderColor:d.permission,borderStyle:"round",flexDirection:"column",gap:1,paddingX:1,paddingTop:1},dN.default.createElement(D,{bold:!0,color:d.permission},"Enable automatic updates?"),dN.default.createElement(D,null,yN," can't update itself because it doesn't have permissions. Do you want to fix this to get automatic updates?"),dN.default.createElement(GI,{flexDirection:"column"},!N&&dN.default.createElement(GI,{marginLeft:2},dN.default.createElement(D,null,"Select an option below to fix the permissions issue:"),dN.default.createElement($Y,{options:R,onChange:(h)=>{if(h!=="auto"&&h!=="manual"&&h!=="ignore")return;if(Y(h),JG("tengu_auto_updater_config_option_selected",{option:h,npmPrefix:b??"null"}),h==="manual"){let A=rZ();XW({...A,autoUpdaterStatus:"not_configured"}),X(!0)}else if(h==="ignore"){let A=rZ();XW({...A,autoUpdaterStatus:"not_configured"}),I()}}})),N==="auto"&&dN.default.createElement(GI,{marginLeft:2},dN.default.createElement(ooZ,{customPrefix:c,onCustomPrefixChange:V,onSuccess:H,onCancel:I})),N==="manual"&&dN.default.createElement(dN.default.Fragment,null,dN.default.createElement(GI,{marginLeft:4,flexDirection:"column"},dN.default.createElement(D,null,"Run this command in your terminal:"),dN.default.createElement(GI,{flexDirection:"row",gap:1},dN.default.createElement(D,{color:d.warning},$oZ(b??""))),dN.default.createElement(GI,{flexDirection:"row",gap:1},dN.default.createElement(D,{color:d.suggestion},"After running the command, restart ",yN))),dN.default.createElement(jL,null))))}var dN;var RqI=a(async()=>{yl();M$();MW();TW();await gZ([oG(),_d(),toZ(),fXI()]);dN=hI(YG(),1)});var roZ,n2N,eoZ;var ItZ=a(async()=>{await RqI();roZ=hI(YG(),1),n2N={name:"doctor",description:"Checks the health of your QuantWise installation",isEnabled:!0,isHidden:!1,userFacingName(){return"doctor"},type:"local-jsx",call(I){let G=roZ.default.createElement(D$,{onDone:I,doctorMode:!0});return Promise.resolve(G)}},eoZ=n2N});var q2N,GtZ;var ZtZ=a(()=>{q2N={type:"local",name:"exit",description:"Exit QuantWise",aliases:["quit"],isEnabled:!0,isHidden:!1,async call(){process.exit(0)},userFacingName(){return"exit"}},GtZ=q2N});function ltZ({commands:I,onClose:G}){let Z=dG(),b=process.env.USER_TYPE==="ant"?"[ANT-ONLY] For more help: go/claude-cli or #claude-cli-feedback":"Learn more at: https://github.com/quantumiodb/ccode",W=I.filter((c)=>!c.isHidden),[N,Y]=hl.useState(0);return hl.useEffect(()=>{let c=setTimeout(()=>{if(N<3)Y(N+1)},250);return()=>clearTimeout(c)},[N]),Mb((c,V)=>{if(V.return)G()}),hl.createElement(GI,{flexDirection:"column",padding:1},hl.createElement(D,{bold:!0,color:Z.claude},`${yN} v1.3.4`),hl.createElement(GI,{marginTop:1,flexDirection:"column"},hl.createElement(D,null,yN," is a beta research preview. Always review Claude's responses, especially when running code. Claude has read access to files in the current directory and can run commands and edit files with your permission.")),N>=1&&hl.createElement(GI,{flexDirection:"column",marginTop:1},hl.createElement(D,{bold:!0},"Usage Modes:"),hl.createElement(D,null,"• REPL: ",hl.createElement(D,{bold:!0},"claude")," (interactive session)"),hl.createElement(D,null,"• Non-interactive: ",hl.createElement(D,{bold:!0},'claude -p "question"')),hl.createElement(GI,{marginTop:1},hl.createElement(D,null,"Run ",hl.createElement(D,{bold:!0},"quantwise -h")," for all command line options"))),N>=2&&hl.createElement(GI,{marginTop:1,flexDirection:"column"},hl.createElement(D,{bold:!0},"Common Tasks:"),hl.createElement(D,null,"• Ask questions about your codebase"," ",hl.createElement(D,{color:dG().secondaryText},"> How does foo.py work?")),hl.createElement(D,null,"• Edit files ",hl.createElement(D,{color:dG().secondaryText},"> Update bar.ts to...")),hl.createElement(D,null,"• Fix errors ",hl.createElement(D,{color:dG().secondaryText},"> cargo build")),hl.createElement(D,null,"• Run commands ",hl.createElement(D,{color:dG().secondaryText},"> /help")),hl.createElement(D,null,"• Run bash commands ",hl.createElement(D,{color:dG().secondaryText},"> !ls"))),N>=3&&hl.createElement(GI,{marginTop:1,flexDirection:"column"},hl.createElement(D,{bold:!0},"Interactive Mode Commands:"),hl.createElement(GI,{flexDirection:"column"},W.map((c,V)=>hl.createElement(GI,{key:V,marginLeft:1},hl.createElement(D,{bold:!0},`/${c.name}`),hl.createElement(D,null," - ",c.description))))),hl.createElement(GI,{marginTop:1},hl.createElement(D,{color:Z.secondaryText},b)),hl.createElement(GI,{marginTop:2},hl.createElement(jL,null)))}var hl;var btZ=a(async()=>{yl();await gZ([oG(),fXI()]);hl=hI(YG(),1)});var HqI,T2N,WtZ;var NtZ=a(async()=>{await btZ();HqI=hI(YG(),1),T2N={type:"local-jsx",name:"help",description:"Show help and available commands",isEnabled:!0,isHidden:!1,async call(I,{options:{commands:G}}){return HqI.createElement(ltZ,{commands:G,onClose:I})},userFacingName(){return"help"}},WtZ=T2N});var S2N,YtZ;var ctZ=a(async()=>{await mWI();S2N={type:"prompt",name:"init",description:"Initialize a new CLAUDE.md file with codebase documentation",isEnabled:!0,isHidden:!1,progressMessage:"analyzing your codebase",userFacingName(){return"init"},async getPromptForCommand(I){return uK(),[{role:"user",content:[{type:"text",text:`Please analyze this codebase and create a CLAUDE.md file containing:
1679
1679
  1. Build/lint/test commands - especially for running a single test
1680
1680
  2. Code style guidelines including imports, formatting, types, naming conventions, error handling, etc.
1681
1681
 
@@ -1708,7 +1708,7 @@ Content-Type: ${W.type||"application/octet-stream"}\r
1708
1708
  `)).replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),Sk=(I,G,Z)=>{if(G.length<Z)throw TypeError(`Failed to execute '${I}' on 'FormData': ${Z} arguments required, but only ${G.length} present.`)},ik;var $XI=a(()=>{j$();JqI();/*! formdata-polyfill. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */({toStringTag:n$,iterator:o2N,hasInstance:t2N}=Symbol),htZ=Math.random,r2N="append,set,get,getAll,delete,keys,values,entries,forEach,constructor".split(","),ik=class{#I=[];constructor(...G){if(G.length)throw TypeError("Failed to construct 'FormData': parameter 1 is not of type 'HTMLFormElement'.")}get[n$](){return"FormData"}[o2N](){return this.entries()}static[t2N](G){return G&&typeof G==="object"&&G[n$]==="FormData"&&!r2N.some((Z)=>typeof G[Z]!="function")}append(...G){Sk("append",arguments,2),this.#I.push(wtZ(...G))}delete(G){Sk("delete",arguments,1),G+="",this.#I=this.#I.filter(([Z])=>Z!==G)}get(G){Sk("get",arguments,1),G+="";for(var Z=this.#I,l=Z.length,b=0;b<l;b++)if(Z[b][0]===G)return Z[b][1];return null}getAll(G,Z){return Sk("getAll",arguments,1),Z=[],G+="",this.#I.forEach((l)=>l[0]===G&&Z.push(l[1])),Z}has(G){return Sk("has",arguments,1),G+="",this.#I.some((Z)=>Z[0]===G)}forEach(G,Z){Sk("forEach",arguments,1);for(var[l,b]of this)G.call(Z,b,l,this)}set(...G){Sk("set",arguments,2);var Z=[],l=!0;G=wtZ(...G),this.#I.forEach((b)=>{b[0]===G[0]?l&&(l=!Z.push(G)):Z.push(b)}),l&&Z.push(G),this.#I=Z}*entries(){yield*this.#I}*keys(){for(var[G]of this)yield G}*values(){for(var[,G]of this)yield G}}});var nL;var oXI=a(()=>{nL=class nL extends Error{constructor(I,G){super(I);Error.captureStackTrace(this,this.constructor),this.type=G}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}}});var JH;var EqI=a(()=>{oXI();JH=class JH extends nL{constructor(I,G,Z){super(I,G);if(Z)this.code=this.errno=Z.code,this.erroredSysCall=Z.syscall}}});var tXI,vqI=(I)=>{return typeof I==="object"&&typeof I.append==="function"&&typeof I.delete==="function"&&typeof I.get==="function"&&typeof I.getAll==="function"&&typeof I.has==="function"&&typeof I.set==="function"&&typeof I.sort==="function"&&I[tXI]==="URLSearchParams"},q$=(I)=>{return I&&typeof I==="object"&&typeof I.arrayBuffer==="function"&&typeof I.type==="string"&&typeof I.stream==="function"&&typeof I.constructor==="function"&&/^(Blob|File)$/.test(I[tXI])},AtZ=(I)=>{return typeof I==="object"&&(I[tXI]==="AbortSignal"||I[tXI]==="EventTarget")},EtZ=(I,G)=>{let Z=new URL(G).hostname,l=new URL(I).hostname;return Z===l||Z.endsWith(`.${l}`)},vtZ=(I,G)=>{let Z=new URL(G).protocol,l=new URL(I).protocol;return Z===l};var rXI=a(()=>{tXI=Symbol.toStringTag});var ptZ=w((wRc,CtZ)=>{/*! node-domexception. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */if(!globalThis.DOMException)try{let{MessageChannel:I}=KI("worker_threads"),G=new I().port1,Z=new ArrayBuffer;G.postMessage(Z,[Z,Z])}catch(I){I.constructor.name==="DOMException"&&(globalThis.DOMException=I.constructor)}CtZ.exports=globalThis.DOMException});import{statSync as ARc,createReadStream as e2N,promises as IdN}from"node:fs";var ytZ,GdN,utZ;var CqI=a(()=>{JqI();j$();ytZ=hI(ptZ(),1),{stat:GdN}=IdN;utZ=class utZ{#I;#G;constructor(I){this.#I=I.path,this.#G=I.start,this.size=I.size,this.lastModified=I.lastModified}slice(I,G){return new utZ({path:this.#I,lastModified:this.lastModified,size:G-I,start:this.#G+I})}async*stream(){let{mtimeMs:I}=await GdN(this.#I);if(I>this.lastModified)throw new ytZ.default("The requested file could not be read, typically due to permission problems that have occurred after a reference to a file was acquired.","NotReadableError");yield*e2N(this.#I,{start:this.#G,end:this.#G+this.size-1})}get[Symbol.toStringTag](){return"Blob"}}});var atZ={};w1(atZ,{toFormData:()=>cdN});class gtZ{constructor(I){this.index=0,this.flags=0,this.onHeaderEnd=Pk,this.onHeaderField=Pk,this.onHeadersEnd=Pk,this.onHeaderValue=Pk,this.onPartBegin=Pk,this.onPartData=Pk,this.onPartEnd=Pk,this.boundaryChars={},I=`\r
1709
1709
  --`+I;let G=new Uint8Array(I.length);for(let Z=0;Z<I.length;Z++)G[Z]=I.charCodeAt(Z),this.boundaryChars[G[Z]]=!0;this.boundary=G,this.lookbehind=new Uint8Array(this.boundary.length+8),this.state=_c.START_BOUNDARY}write(I){let G=0,Z=I.length,l=this.index,{lookbehind:b,boundary:W,boundaryChars:N,index:Y,state:c,flags:V}=this,d=this.boundary.length,Q=d-1,X=I.length,R,H,h=(z)=>{this[z+"Mark"]=G},A=(z)=>{delete this[z+"Mark"]},C=(z,k,x,n)=>{if(k===void 0||k!==x)this[z](n&&n.subarray(k,x))},g=(z,k)=>{let x=z+"Mark";if(!(x in this))return;if(k)C(z,this[x],G,I),delete this[x];else C(z,this[x],I.length,I),this[x]=0};for(G=0;G<Z;G++)switch(R=I[G],c){case _c.START_BOUNDARY:if(Y===W.length-2){if(R===T$)V|=qL.LAST_BOUNDARY;else if(R!==IFI)return;Y++;break}else if(Y-1===W.length-2){if(V&qL.LAST_BOUNDARY&&R===T$)c=_c.END,V=0;else if(!(V&qL.LAST_BOUNDARY)&&R===eXI)Y=0,C("onPartBegin"),c=_c.HEADER_FIELD_START;else return;break}if(R!==W[Y+2])Y=-2;if(R===W[Y+2])Y++;break;case _c.HEADER_FIELD_START:c=_c.HEADER_FIELD,h("onHeaderField"),Y=0;case _c.HEADER_FIELD:if(R===IFI){A("onHeaderField"),c=_c.HEADERS_ALMOST_DONE;break}if(Y++,R===T$)break;if(R===ldN){if(Y===1)return;g("onHeaderField",!0),c=_c.HEADER_VALUE_START;break}if(H=NdN(R),H<bdN||H>WdN)return;break;case _c.HEADER_VALUE_START:if(R===ZdN)break;h("onHeaderValue"),c=_c.HEADER_VALUE;case _c.HEADER_VALUE:if(R===IFI)g("onHeaderValue",!0),C("onHeaderEnd"),c=_c.HEADER_VALUE_ALMOST_DONE;break;case _c.HEADER_VALUE_ALMOST_DONE:if(R!==eXI)return;c=_c.HEADER_FIELD_START;break;case _c.HEADERS_ALMOST_DONE:if(R!==eXI)return;C("onHeadersEnd"),c=_c.PART_DATA_START;break;case _c.PART_DATA_START:c=_c.PART_DATA,h("onPartData");case _c.PART_DATA:if(l=Y,Y===0){G+=Q;while(G<X&&!(I[G]in N))G+=d;G-=Q,R=I[G]}if(Y<W.length)if(W[Y]===R){if(Y===0)g("onPartData",!0);Y++}else Y=0;else if(Y===W.length)if(Y++,R===IFI)V|=qL.PART_BOUNDARY;else if(R===T$)V|=qL.LAST_BOUNDARY;else Y=0;else if(Y-1===W.length)if(V&qL.PART_BOUNDARY){if(Y=0,R===eXI){V&=~qL.PART_BOUNDARY,C("onPartEnd"),C("onPartBegin"),c=_c.HEADER_FIELD_START;break}}else if(V&qL.LAST_BOUNDARY)if(R===T$)C("onPartEnd"),c=_c.END,V=0;else Y=0;else Y=0;if(Y>0)b[Y-1]=R;else if(l>0){let z=new Uint8Array(b.buffer,b.byteOffset,b.byteLength);C("onPartData",0,l,z),l=0,h("onPartData"),G--}break;case _c.END:break;default:throw Error(`Unexpected state entered: ${c}`)}g("onHeaderField"),g("onHeaderValue"),g("onPartData"),this.index=Y,this.state=c,this.flags=V}end(){if(this.state===_c.HEADER_FIELD_START&&this.index===0||this.state===_c.PART_DATA&&this.index===this.boundary.length)this.onPartEnd();else if(this.state!==_c.END)throw Error("MultipartParser.end(): stream ended unexpectedly")}}function YdN(I){let G=I.match(/\bfilename=("(.*?)"|([^()<>@,;:\\"/[\]?={}\s\t]+))($|;\s)/i);if(!G)return;let Z=G[2]||G[3]||"",l=Z.slice(Z.lastIndexOf("\\")+1);return l=l.replace(/%22/g,'"'),l=l.replace(/&#(\d{4});/g,(b,W)=>{return String.fromCharCode(W)}),l}async function cdN(I,G){if(!/multipart/i.test(G))throw TypeError("Failed to fetch");let Z=G.match(/boundary=(?:"([^"]+)"|([^;]+))/i);if(!Z)throw TypeError("no or bad content-type header, no multipart boundary");let l=new gtZ(Z[1]||Z[2]),b,W,N,Y,c,V,d=[],Q=new ik,X=(C)=>{N+=A.decode(C,{stream:!0})},R=(C)=>{d.push(C)},H=()=>{let C=new Pn(d,V,{type:c});Q.append(Y,C)},h=()=>{Q.append(Y,N)},A=new TextDecoder("utf-8");A.decode(),l.onPartBegin=function(){l.onPartData=X,l.onPartEnd=h,b="",W="",N="",Y="",c="",V=null,d.length=0},l.onHeaderField=function(C){b+=A.decode(C,{stream:!0})},l.onHeaderValue=function(C){W+=A.decode(C,{stream:!0})},l.onHeaderEnd=function(){if(W+=A.decode(),b=b.toLowerCase(),b==="content-disposition"){let C=W.match(/\bname=("([^"]*)"|([^()<>@,;:\\"/[\]?={}\s\t]+))/i);if(C)Y=C[2]||C[3]||"";if(V=YdN(W),V)l.onPartData=R,l.onPartEnd=H}else if(b==="content-type")c=W;W="",b=""};for await(let C of I)l.write(C);return l.end(),Q}var JE=0,_c,LtZ=1,qL,eXI=10,IFI=13,ZdN=32,T$=45,ldN=58,bdN=97,WdN=122,NdN=(I)=>I|32,Pk=()=>{};var ztZ=a(()=>{CqI();$XI();_c={START_BOUNDARY:JE++,HEADER_FIELD_START:JE++,HEADER_FIELD:JE++,HEADER_VALUE_START:JE++,HEADER_VALUE:JE++,HEADER_VALUE_ALMOST_DONE:JE++,HEADERS_ALMOST_DONE:JE++,PART_DATA_START:JE++,PART_DATA:JE++,END:JE++},qL={PART_BOUNDARY:LtZ,LAST_BOUNDARY:LtZ*=2}});import TL,{PassThrough as BtZ}from"node:stream";import{types as ktZ,deprecate as yqI,promisify as VdN}from"node:util";import{Buffer as yw}from"node:buffer";class K3{constructor(I,{size:G=0}={}){let Z=null;if(I===null)I=null;else if(vqI(I))I=yw.from(I.toString());else if(q$(I));else if(yw.isBuffer(I));else if(ktZ.isAnyArrayBuffer(I))I=yw.from(I);else if(ArrayBuffer.isView(I))I=yw.from(I.buffer,I.byteOffset,I.byteLength);else if(I instanceof TL);else if(I instanceof ik)I=JtZ(I),Z=I.type.split("=")[1];else I=yw.from(String(I));let l=I;if(yw.isBuffer(I))l=TL.Readable.from(I);else if(q$(I))l=TL.Readable.from(I.stream());if(this[WR]={body:I,stream:l,boundary:Z,disturbed:!1,error:null},this.size=G,I instanceof TL)I.on("error",(b)=>{let W=b instanceof nL?b:new JH(`Invalid response body while trying to fetch ${this.url}: ${b.message}`,"system",b);this[WR].error=W})}get body(){return this[WR].stream}get bodyUsed(){return this[WR].disturbed}async arrayBuffer(){let{buffer:I,byteOffset:G,byteLength:Z}=await pqI(this);return I.slice(G,G+Z)}async formData(){let I=this.headers.get("content-type");if(I.startsWith("application/x-www-form-urlencoded")){let Z=new ik,l=new URLSearchParams(await this.text());for(let[b,W]of l)Z.append(b,W);return Z}let{toFormData:G}=await Promise.resolve().then(() => (ztZ(),atZ));return G(this.body,I)}async blob(){let I=this.headers&&this.headers.get("content-type")||this[WR].body&&this[WR].body.type||"",G=await this.arrayBuffer();return new M3([G],{type:I})}async json(){let I=await this.text();return JSON.parse(I)}async text(){let I=await pqI(this);return new TextDecoder().decode(I)}buffer(){return pqI(this)}}async function pqI(I){if(I[WR].disturbed)throw TypeError(`body used already for: ${I.url}`);if(I[WR].disturbed=!0,I[WR].error)throw I[WR].error;let{body:G}=I;if(G===null)return yw.alloc(0);if(!(G instanceof TL))return yw.alloc(0);let Z=[],l=0;try{for await(let b of G){if(I.size>0&&l+b.length>I.size){let W=new JH(`content size at ${I.url} over limit: ${I.size}`,"max-size");throw G.destroy(W),W}l+=b.length,Z.push(b)}}catch(b){throw b instanceof nL?b:new JH(`Invalid response body while trying to fetch ${I.url}: ${b.message}`,"system",b)}if(G.readableEnded===!0||G._readableState.ended===!0)try{if(Z.every((b)=>typeof b==="string"))return yw.from(Z.join(""));return yw.concat(Z,l)}catch(b){throw new JH(`Could not create Buffer from response body for ${I.url}: ${b.message}`,"system",b)}else throw new JH(`Premature close of server response while trying to fetch ${I.url}`)}var ddN,WR,_n=(I,G)=>{let Z,l,{body:b}=I[WR];if(I.bodyUsed)throw Error("cannot clone body after it is used");if(b instanceof TL&&typeof b.getBoundary!=="function")Z=new BtZ({highWaterMark:G}),l=new BtZ({highWaterMark:G}),b.pipe(Z),b.pipe(l),I[WR].stream=Z,b=l;return b},mdN,GFI=(I,G)=>{if(I===null)return null;if(typeof I==="string")return"text/plain;charset=UTF-8";if(vqI(I))return"application/x-www-form-urlencoded;charset=UTF-8";if(q$(I))return I.type||null;if(yw.isBuffer(I)||ktZ.isAnyArrayBuffer(I)||ArrayBuffer.isView(I))return null;if(I instanceof ik)return`multipart/form-data; boundary=${G[WR].boundary}`;if(I&&typeof I.getBoundary==="function")return`multipart/form-data;boundary=${mdN(I)}`;if(I instanceof TL)return null;return"text/plain;charset=UTF-8"},UtZ=(I)=>{let{body:G}=I[WR];if(G===null)return 0;if(q$(G))return G.size;if(yw.isBuffer(G))return G.length;if(G&&typeof G.getLengthSync==="function")return G.hasKnownLength&&G.hasKnownLength()?G.getLengthSync():null;return null},xtZ=async(I,{body:G})=>{if(G===null)I.end();else await ddN(G,I)};var ZFI=a(()=>{j$();$XI();EqI();oXI();rXI();ddN=VdN(TL.pipeline),WR=Symbol("Body internals");K3.prototype.buffer=yqI(K3.prototype.buffer,"Please use 'response.arrayBuffer()' instead of 'response.buffer()'","node-fetch#buffer");Object.defineProperties(K3.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0},data:{get:yqI(()=>{},"data doesn't exist, use json(), text(), arrayBuffer(), or body instead","https://github.com/node-fetch/node-fetch/issues/1000 (response)")}});mdN=yqI((I)=>I.getBoundary(),"form-data doesn't follow the spec and requires special treatment. Use alternative package","https://github.com/node-fetch/node-fetch/issues/1167")});import{types as OtZ}from"node:util";import bFI from"node:http";function MtZ(I=[]){return new AH(I.reduce((G,Z,l,b)=>{if(l%2===0)G.push(b.slice(l,l+2));return G},[]).filter(([G,Z])=>{try{return lFI(G),uqI(G,String(Z)),!0}catch{return!1}}))}var lFI,uqI,AH;var WFI=a(()=>{lFI=typeof bFI.validateHeaderName==="function"?bFI.validateHeaderName:(I)=>{if(!/^[\^`\-\w!#$%&'*+.|~]+$/.test(I)){let G=TypeError(`Header name must be a valid HTTP token [${I}]`);throw Object.defineProperty(G,"code",{value:"ERR_INVALID_HTTP_TOKEN"}),G}},uqI=typeof bFI.validateHeaderValue==="function"?bFI.validateHeaderValue:(I,G)=>{if(/[^\t\u0020-\u007E\u0080-\u00FF]/.test(G)){let Z=TypeError(`Invalid character in header content ["${I}"]`);throw Object.defineProperty(Z,"code",{value:"ERR_INVALID_CHAR"}),Z}};AH=class AH extends URLSearchParams{constructor(I){let G=[];if(I instanceof AH){let Z=I.raw();for(let[l,b]of Object.entries(Z))G.push(...b.map((W)=>[l,W]))}else if(I==null);else if(typeof I==="object"&&!OtZ.isBoxedPrimitive(I)){let Z=I[Symbol.iterator];if(Z==null)G.push(...Object.entries(I));else{if(typeof Z!=="function")throw TypeError("Header pairs must be iterable");G=[...I].map((l)=>{if(typeof l!=="object"||OtZ.isBoxedPrimitive(l))throw TypeError("Each header pair must be an iterable object");return[...l]}).map((l)=>{if(l.length!==2)throw TypeError("Each header pair must be a name/value tuple");return[...l]})}}else throw TypeError("Failed to construct 'Headers': The provided value is not of type '(sequence<sequence<ByteString>> or record<ByteString, ByteString>)");G=G.length>0?G.map(([Z,l])=>{return lFI(Z),uqI(Z,String(l)),[String(Z).toLowerCase(),String(l)]}):void 0;super(G);return new Proxy(this,{get(Z,l,b){switch(l){case"append":case"set":return(W,N)=>{return lFI(W),uqI(W,String(N)),URLSearchParams.prototype[l].call(Z,String(W).toLowerCase(),String(N))};case"delete":case"has":case"getAll":return(W)=>{return lFI(W),URLSearchParams.prototype[l].call(Z,String(W).toLowerCase())};case"keys":return()=>{return Z.sort(),new Set(URLSearchParams.prototype.keys.call(Z)).keys()};default:return Reflect.get(Z,l,b)}}})}get[Symbol.toStringTag](){return this.constructor.name}toString(){return Object.prototype.toString.call(this)}get(I){let G=this.getAll(I);if(G.length===0)return null;let Z=G.join(", ");if(/^content-encoding$/i.test(I))Z=Z.toLowerCase();return Z}forEach(I,G=void 0){for(let Z of this.keys())Reflect.apply(I,G,[this.get(Z),Z,this])}*values(){for(let I of this.keys())yield this.get(I)}*entries(){for(let I of this.keys())yield[I,this.get(I)]}[Symbol.iterator](){return this.entries()}raw(){return[...this.keys()].reduce((I,G)=>{return I[G]=this.getAll(G),I},{})}[Symbol.for("nodejs.util.inspect.custom")](){return[...this.keys()].reduce((I,G)=>{let Z=this.getAll(G);if(G==="host")I[G]=Z[0];else I[G]=Z.length>1?Z:Z[0];return I},{})}};Object.defineProperties(AH.prototype,["get","entries","forEach","values"].reduce((I,G)=>{return I[G]={enumerable:!0},I},{}))});var QdN,NFI=(I)=>{return QdN.has(I)};var LqI=a(()=>{QdN=new Set([301,302,303,307,308])});var fJ,nF;var KtZ=a(()=>{WFI();ZFI();LqI();fJ=Symbol("Response internals");nF=class nF extends K3{constructor(I=null,G={}){super(I,G);let Z=G.status!=null?G.status:200,l=new AH(G.headers);if(I!==null&&!l.has("Content-Type")){let b=GFI(I,this);if(b)l.append("Content-Type",b)}this[fJ]={type:"default",url:G.url,status:Z,statusText:G.statusText||"",headers:l,counter:G.counter,highWaterMark:G.highWaterMark}}get type(){return this[fJ].type}get url(){return this[fJ].url||""}get status(){return this[fJ].status}get ok(){return this[fJ].status>=200&&this[fJ].status<300}get redirected(){return this[fJ].counter>0}get statusText(){return this[fJ].statusText}get headers(){return this[fJ].headers}get highWaterMark(){return this[fJ].highWaterMark}clone(){return new nF(_n(this,this.highWaterMark),{type:this.type,url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,size:this.size,highWaterMark:this.highWaterMark})}static redirect(I,G=302){if(!NFI(G))throw RangeError('Failed to execute "redirect" on "response": Invalid status code');return new nF(null,{headers:{location:new URL(I).toString()},status:G})}static error(){let I=new nF(null,{status:0,statusText:""});return I[fJ].type="error",I}static json(I=void 0,G={}){let Z=JSON.stringify(I);if(Z===void 0)throw TypeError("data is not JSON serializable");let l=new AH(G&&G.headers);if(!l.has("content-type"))l.set("content-type","application/json");return new nF(Z,{...G,headers:l})}get[Symbol.toStringTag](){return"Response"}};Object.defineProperties(nF.prototype,{type:{enumerable:!0},url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}})});var DtZ=(I)=>{if(I.search)return I.search;let G=I.href.length-1,Z=I.hash||(I.href[G]==="#"?"#":"");return I.href[G-Z.length]==="?"?"?":""};import{isIP as XdN}from"node:net";function jtZ(I,G=!1){if(I==null)return"no-referrer";if(I=new URL(I),/^(about|blob|data):$/.test(I.protocol))return"no-referrer";if(I.username="",I.password="",I.hash="",G)I.pathname="",I.search="";return I}function TtZ(I){if(!ntZ.has(I))throw TypeError(`Invalid referrerPolicy: ${I}`);return I}function FdN(I){if(/^(http|ws)s:$/.test(I.protocol))return!0;let G=I.host.replace(/(^\[)|(]$)/g,""),Z=XdN(G);if(Z===4&&/^127\./.test(G))return!0;if(Z===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(G))return!0;if(I.host==="localhost"||I.host.endsWith(".localhost"))return!1;if(I.protocol==="file:")return!0;return!1}function fn(I){if(/^about:(blank|srcdoc)$/.test(I))return!0;if(I.protocol==="data:")return!0;if(/^(blob|filesystem):$/.test(I.protocol))return!0;return FdN(I)}function StZ(I,{referrerURLCallback:G,referrerOriginCallback:Z}={}){if(I.referrer==="no-referrer"||I.referrerPolicy==="")return null;let l=I.referrerPolicy;if(I.referrer==="about:client")return"no-referrer";let b=I.referrer,W=jtZ(b),N=jtZ(b,!0);if(W.toString().length>4096)W=N;if(G)W=G(W);if(Z)N=Z(N);let Y=new URL(I.url);switch(l){case"no-referrer":return"no-referrer";case"origin":return N;case"unsafe-url":return W;case"strict-origin":if(fn(W)&&!fn(Y))return"no-referrer";return N.toString();case"strict-origin-when-cross-origin":if(W.origin===Y.origin)return W;if(fn(W)&&!fn(Y))return"no-referrer";return N;case"same-origin":if(W.origin===Y.origin)return W;return"no-referrer";case"origin-when-cross-origin":if(W.origin===Y.origin)return W;return N;case"no-referrer-when-downgrade":if(fn(W)&&!fn(Y))return"no-referrer";return W;default:throw TypeError(`Invalid referrerPolicy: ${l}`)}}function itZ(I){let G=(I.get("referrer-policy")||"").split(/[,\s]+/),Z="";for(let l of G)if(l&&ntZ.has(l))Z=l;return Z}var ntZ,qtZ="strict-origin-when-cross-origin";var gqI=a(()=>{ntZ=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"])});import{format as RdN}from"node:url";import{deprecate as HdN}from"node:util";var Jm,S$=(I)=>{return typeof I==="object"&&typeof I[Jm]==="object"},hdN,_k,PtZ=(I)=>{let{parsedURL:G}=I[Jm],Z=new AH(I[Jm].headers);if(!Z.has("Accept"))Z.set("Accept","*/*");let l=null;if(I.body===null&&/^(post|put)$/i.test(I.method))l="0";if(I.body!==null){let Y=UtZ(I);if(typeof Y==="number"&&!Number.isNaN(Y))l=String(Y)}if(l)Z.set("Content-Length",l);if(I.referrerPolicy==="")I.referrerPolicy=qtZ;if(I.referrer&&I.referrer!=="no-referrer")I[Jm].referrer=StZ(I);else I[Jm].referrer="no-referrer";if(I[Jm].referrer instanceof URL)Z.set("Referer",I.referrer);if(!Z.has("User-Agent"))Z.set("User-Agent","node-fetch");if(I.compress&&!Z.has("Accept-Encoding"))Z.set("Accept-Encoding","gzip, deflate, br");let{agent:b}=I;if(typeof b==="function")b=b(G);let W=DtZ(G),N={path:G.pathname+W,method:I.method,headers:Z[Symbol.for("nodejs.util.inspect.custom")](),insecureHTTPParser:I.insecureHTTPParser,agent:b};return{parsedURL:G,options:N}};var _tZ=a(()=>{WFI();ZFI();rXI();gqI();Jm=Symbol("Request internals"),hdN=HdN(()=>{},".data is not a valid RequestInit property, use .body instead","https://github.com/node-fetch/node-fetch/issues/1000 (request)");_k=class _k extends K3{constructor(I,G={}){let Z;if(S$(I))Z=new URL(I.url);else Z=new URL(I),I={};if(Z.username!==""||Z.password!=="")throw TypeError(`${Z} is an url with embedded credentials.`);let l=G.method||I.method||"GET";if(/^(delete|get|head|options|post|put)$/i.test(l))l=l.toUpperCase();if(!S$(G)&&"data"in G)hdN();if((G.body!=null||S$(I)&&I.body!==null)&&(l==="GET"||l==="HEAD"))throw TypeError("Request with GET/HEAD method cannot have body");let b=G.body?G.body:S$(I)&&I.body!==null?_n(I):null;super(b,{size:G.size||I.size||0});let W=new AH(G.headers||I.headers||{});if(b!==null&&!W.has("Content-Type")){let c=GFI(b,this);if(c)W.set("Content-Type",c)}let N=S$(I)?I.signal:null;if("signal"in G)N=G.signal;if(N!=null&&!AtZ(N))throw TypeError("Expected signal to be an instanceof AbortSignal or EventTarget");let Y=G.referrer==null?I.referrer:G.referrer;if(Y==="")Y="no-referrer";else if(Y){let c=new URL(Y);Y=/^about:(\/\/)?client$/.test(c)?"client":c}else Y=void 0;this[Jm]={method:l,redirect:G.redirect||I.redirect||"follow",headers:W,parsedURL:Z,signal:N,referrer:Y},this.follow=G.follow===void 0?I.follow===void 0?20:I.follow:G.follow,this.compress=G.compress===void 0?I.compress===void 0?!0:I.compress:G.compress,this.counter=G.counter||I.counter||0,this.agent=G.agent||I.agent,this.highWaterMark=G.highWaterMark||I.highWaterMark||16384,this.insecureHTTPParser=G.insecureHTTPParser||I.insecureHTTPParser||!1,this.referrerPolicy=G.referrerPolicy||I.referrerPolicy||""}get method(){return this[Jm].method}get url(){return RdN(this[Jm].parsedURL)}get headers(){return this[Jm].headers}get redirect(){return this[Jm].redirect}get signal(){return this[Jm].signal}get referrer(){if(this[Jm].referrer==="no-referrer")return"";if(this[Jm].referrer==="client")return"about:client";if(this[Jm].referrer)return this[Jm].referrer.toString();return}get referrerPolicy(){return this[Jm].referrerPolicy}set referrerPolicy(I){this[Jm].referrerPolicy=TtZ(I)}clone(){return new _k(this)}get[Symbol.toStringTag](){return"Request"}};Object.defineProperties(_k.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0},referrer:{enumerable:!0},referrerPolicy:{enumerable:!0}})});var aqI;var ftZ=a(()=>{oXI();aqI=class aqI extends nL{constructor(I,G="aborted"){super(I,G)}}});import wdN from"node:http";import JdN from"node:https";import sn from"node:zlib";import stZ,{PassThrough as $tZ,pipeline as $n}from"node:stream";import{Buffer as YFI}from"node:buffer";async function i$(I,G){return new Promise((Z,l)=>{let b=new _k(I,G),{parsedURL:W,options:N}=PtZ(b);if(!AdN.has(W.protocol))throw TypeError(`node-fetch cannot load ${I}. URL scheme "${W.protocol.replace(/:$/,"")}" is not supported.`);if(W.protocol==="data:"){let H=dtZ(b.url),h=new nF(H,{headers:{"Content-Type":H.typeFull}});Z(h);return}let Y=(W.protocol==="https:"?JdN:wdN).request,{signal:c}=b,V=null,d=()=>{let H=new aqI("The operation was aborted.");if(l(H),b.body&&b.body instanceof stZ.Readable)b.body.destroy(H);if(!V||!V.body)return;V.body.emit("error",H)};if(c&&c.aborted){d();return}let Q=()=>{d(),R()},X=Y(W.toString(),N);if(c)c.addEventListener("abort",Q);let R=()=>{if(X.abort(),c)c.removeEventListener("abort",Q)};if(X.on("error",(H)=>{l(new JH(`request to ${b.url} failed, reason: ${H.message}`,"system",H)),R()}),EdN(X,(H)=>{if(V&&V.body)V.body.destroy(H)}),process.version<"v14")X.on("socket",(H)=>{let h;H.prependListener("end",()=>{h=H._eventsCount}),H.prependListener("close",(A)=>{if(V&&h<H._eventsCount&&!A){let C=Error("Premature close");C.code="ERR_STREAM_PREMATURE_CLOSE",V.body.emit("error",C)}})});X.on("response",(H)=>{X.setTimeout(0);let h=MtZ(H.rawHeaders);if(NFI(H.statusCode)){let k=h.get("Location"),x=null;try{x=k===null?null:new URL(k,b.url)}catch{if(b.redirect!=="manual"){l(new JH(`uri requested responds with an invalid redirect URL: ${k}`,"invalid-redirect")),R();return}}switch(b.redirect){case"error":l(new JH(`uri requested responds with a redirect, redirect mode is set to error: ${b.url}`,"no-redirect")),R();return;case"manual":break;case"follow":{if(x===null)break;if(b.counter>=b.follow){l(new JH(`maximum redirect reached at: ${b.url}`,"max-redirect")),R();return}let n={headers:new AH(b.headers),follow:b.follow,counter:b.counter+1,agent:b.agent,compress:b.compress,method:b.method,body:_n(b),signal:b.signal,size:b.size,referrer:b.referrer,referrerPolicy:b.referrerPolicy};if(!EtZ(b.url,x)||!vtZ(b.url,x))for(let lI of["authorization","www-authenticate","cookie","cookie2"])n.headers.delete(lI);if(H.statusCode!==303&&b.body&&G.body instanceof stZ.Readable){l(new JH("Cannot follow redirect with body being a readable stream","unsupported-redirect")),R();return}if(H.statusCode===303||(H.statusCode===301||H.statusCode===302)&&b.method==="POST")n.method="GET",n.body=void 0,n.headers.delete("content-length");let _=itZ(h);if(_)n.referrerPolicy=_;Z(i$(new _k(x,n))),R();return}default:return l(TypeError(`Redirect option '${b.redirect}' is not a valid value of RequestRedirect`))}}if(c)H.once("end",()=>{c.removeEventListener("abort",Q)});let A=$n(H,new $tZ,(k)=>{if(k)l(k)});if(process.version<"v12.10")H.on("aborted",Q);let C={url:b.url,status:H.statusCode,statusText:H.statusMessage,headers:h,size:b.size,counter:b.counter,highWaterMark:b.highWaterMark},g=h.get("Content-Encoding");if(!b.compress||b.method==="HEAD"||g===null||H.statusCode===204||H.statusCode===304){V=new nF(A,C),Z(V);return}let z={flush:sn.Z_SYNC_FLUSH,finishFlush:sn.Z_SYNC_FLUSH};if(g==="gzip"||g==="x-gzip"){A=$n(A,sn.createGunzip(z),(k)=>{if(k)l(k)}),V=new nF(A,C),Z(V);return}if(g==="deflate"||g==="x-deflate"){let k=$n(H,new $tZ,(x)=>{if(x)l(x)});k.once("data",(x)=>{if((x[0]&15)===8)A=$n(A,sn.createInflate(),(n)=>{if(n)l(n)});else A=$n(A,sn.createInflateRaw(),(n)=>{if(n)l(n)});V=new nF(A,C),Z(V)}),k.once("end",()=>{if(!V)V=new nF(A,C),Z(V)});return}if(g==="br"){A=$n(A,sn.createBrotliDecompress(),(k)=>{if(k)l(k)}),V=new nF(A,C),Z(V);return}V=new nF(A,C),Z(V)}),xtZ(X,b).catch(l)})}function EdN(I,G){let Z=YFI.from(`0\r
1710
1710
  \r
1711
- `),l=!1,b=!1,W;I.on("response",(N)=>{let{headers:Y}=N;l=Y["transfer-encoding"]==="chunked"&&!Y["content-length"]}),I.on("socket",(N)=>{let Y=()=>{if(l&&!b){let V=Error("Premature close");V.code="ERR_STREAM_PREMATURE_CLOSE",G(V)}},c=(V)=>{if(b=YFI.compare(V.slice(-5),Z)===0,!b&&W)b=YFI.compare(W.slice(-3),Z.slice(0,3))===0&&YFI.compare(V.slice(-2),Z.slice(3))===0;W=V};N.prependListener("close",Y),N.on("data",c),I.on("close",()=>{N.removeListener("close",Y),N.removeListener("data",c)})})}var AdN;var otZ=a(()=>{mtZ();ZFI();KtZ();WFI();_tZ();EqI();ftZ();LqI();$XI();rXI();gqI();CqI();AdN=new Set(["data:","http:","https:"])});var ttZ,vdN,CdN,NR;var rtZ=a(()=>{ttZ={REDIRECT_PORT:54545,MANUAL_REDIRECT_URL:"/oauth/code/callback",SCOPES:["org:create_api_key","user:profile"]},vdN={...ttZ,AUTHORIZE_URL:"https://console.anthropic.com/oauth/authorize",TOKEN_URL:"https://console.anthropic.com/v1/oauth/token",API_KEY_URL:"https://api.anthropic.com/api/oauth/claude_cli/create_api_key",SUCCESS_URL:"https://console.anthropic.com/buy_credits?returnUrl=/oauth/code/success",CLIENT_ID:"9d1c250a-e61b-44d9-88ed-5944d1962f5e"},CdN=process.env.USER_TYPE==="ant"&&process.env.USE_STAGING_OAUTH==="1"?{...ttZ,AUTHORIZE_URL:"https://console.staging.ant.dev/oauth/authorize",TOKEN_URL:"https://console.staging.ant.dev/v1/oauth/token",API_KEY_URL:"https://api-staging.anthropic.com/api/oauth/claude_cli/create_api_key",SUCCESS_URL:"https://console.staging.ant.dev/buy_credits?returnUrl=/oauth/code/success",CLIENT_ID:"22422756-60c9-4084-8eb7-27705fd5cf9a"}:void 0,NR=process.env.USER_TYPE==="ant"&&process.env.USE_STAGING_OAUTH==="1"&&CdN||vdN});import*as P$ from"crypto";import*as etZ from"http";import*as IrZ from"url";function zqI(I){return I.toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function pdN(){return zqI(P$.randomBytes(32))}async function ydN(I){let Z=new TextEncoder().encode(I),l=await P$.subtle.digest("SHA-256",Z);return zqI(Buffer.from(l))}class BqI{server=null;codeVerifier;expectedState=null;pendingCodePromise=null;constructor(){this.codeVerifier=pdN()}generateAuthUrls(I,G){function Z(l){let b=new URL(NR.AUTHORIZE_URL);return b.searchParams.append("client_id",NR.CLIENT_ID),b.searchParams.append("response_type","code"),b.searchParams.append("redirect_uri",l?NR.MANUAL_REDIRECT_URL:`http://localhost:${NR.REDIRECT_PORT}/callback`),b.searchParams.append("scope",NR.SCOPES.join(" ")),b.searchParams.append("code_challenge",I),b.searchParams.append("code_challenge_method","S256"),b.searchParams.append("state",G),b.toString()}return{autoUrl:Z(!1),manualUrl:Z(!0)}}async startOAuthFlow(I){let G=await ydN(this.codeVerifier),Z=zqI(P$.randomBytes(32));this.expectedState=Z;let{autoUrl:l,manualUrl:b}=this.generateAuthUrls(G,Z),W=async()=>{await I(b),await AL(l)},{authorizationCode:N,useManualRedirect:Y}=await new Promise((Q,X)=>{this.pendingCodePromise={resolve:Q,reject:X},this.startLocalServer(Z,W)}),{access_token:c,account:V,organization:d}=await this.exchangeCodeForTokens(N,Z,Y);if(V){let Q={accountUuid:V.uuid,emailAddress:V.email_address,organizationUuid:d?.uuid},X=rZ();X.oauthAccount=Q,XW(X)}return{accessToken:c}}startLocalServer(I,G){if(this.server)this.closeServer();this.server=etZ.createServer((Z,l)=>{let b=IrZ.parse(Z.url||"",!0);if(b.pathname==="/callback"){let W=b.query.code,N=b.query.state;if(!W){if(l.writeHead(400),l.end("Authorization code not found"),this.pendingCodePromise)this.pendingCodePromise.reject(Error("No authorization code received"));return}if(N!==I){if(l.writeHead(400),l.end("Invalid state parameter"),this.pendingCodePromise)this.pendingCodePromise.reject(Error("Invalid state parameter"));return}l.writeHead(302,{Location:NR.SUCCESS_URL}),l.end(),JG("tengu_oauth_automatic_redirect",{}),this.processCallback({authorizationCode:W,state:I,useManualRedirect:!1})}else l.writeHead(404),l.end()}),this.server.listen(NR.REDIRECT_PORT,async()=>{G?.()}),this.server.on("error",(Z)=>{if(Z.code==="EADDRINUSE"){let b=Error(`Port ${NR.REDIRECT_PORT} is already in use. Please ensure no other applications are using this port.`);if(DG(b),this.closeServer(),this.pendingCodePromise)this.pendingCodePromise.reject(b);return}else{if(DG(Z),this.closeServer(),this.pendingCodePromise)this.pendingCodePromise.reject(Z);return}})}async exchangeCodeForTokens(I,G,Z=!1){let l={grant_type:"authorization_code",code:I,redirect_uri:Z?NR.MANUAL_REDIRECT_URL:`http://localhost:${NR.REDIRECT_PORT}/callback`,client_id:NR.CLIENT_ID,code_verifier:this.codeVerifier,state:G},b=await i$(NR.TOKEN_URL,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(l),agent:Cz()});if(!b.ok)throw Error(`Token exchange failed: ${b.statusText}`);return await b.json()}processCallback({authorizationCode:I,state:G,useManualRedirect:Z}){if(this.closeServer(),G!==this.expectedState){if(this.pendingCodePromise)this.pendingCodePromise.reject(Error("Invalid state parameter")),this.pendingCodePromise=null;return}if(this.pendingCodePromise)this.pendingCodePromise.resolve({authorizationCode:I,useManualRedirect:Z}),this.pendingCodePromise=null}closeServer(){if(this.server)this.server.close(),this.server=null}}async function GrZ(I){try{let G=await i$(NR.API_KEY_URL,{method:"POST",headers:{Authorization:`Bearer ${I}`},agent:Cz()}),Z,l="";try{Z=await G.json()}catch(b){l=await G.text()}if(JG("tengu_oauth_api_key",{status:G.ok?"success":"failure",statusCode:G.status.toString(),error:G.ok?"":l||JSON.stringify(Z)}),G.ok&&Z&&Z.raw_key){let b=Z.raw_key,W=rZ();if(W.primaryApiKey=b,!W.customApiKeyResponses)W.customApiKeyResponses={approved:[],rejected:[]};if(!W.customApiKeyResponses.approved)W.customApiKeyResponses.approved=[];let N=sR(b);if(!W.customApiKeyResponses.approved.includes(N))W.customApiKeyResponses.approved.push(N);return XW(W),jnZ(),b}return null}catch(G){throw JG("tengu_oauth_api_key",{status:"failure",statusCode:"exception",error:G instanceof Error?G.message:String(G)}),G}}var ZrZ=a(async()=>{otZ();rtZ();hs();TW();Ul();slI();MW();await B0()});function cFI({customApiKeyTruncated:I,onDone:G}){let Z=dG();function l(W){let N=rZ();switch(W){case"yes":{XW({...N,customApiKeyResponses:{...N.customApiKeyResponses,approved:[...N.customApiKeyResponses?.approved??[],I]}}),G();break}case"no":{XW({...N,customApiKeyResponses:{...N.customApiKeyResponses,rejected:[...N.customApiKeyResponses?.rejected??[],I]}}),G();break}}}let b=zY(()=>process.exit(0));return aX.default.createElement(aX.default.Fragment,null,aX.default.createElement(GI,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:Z.warning},aX.default.createElement(D,{bold:!0,color:Z.warning},"Detected a custom API key in your environment"),aX.default.createElement(D,null,"Your environment sets ",aX.default.createElement(D,{color:Z.warning},"ANTHROPIC_API_KEY"),":"," ",aX.default.createElement(D,{bold:!0},"sk-ant-...",I)),aX.default.createElement(D,null,"Do you want to use this API key?"),aX.default.createElement($Y,{options:[{label:`No (${aZ.bold("recommended")})`,value:"no"},{label:"Yes",value:"yes"}],onChange:(W)=>l(W)})),aX.default.createElement(GI,{marginLeft:3},aX.default.createElement(D,{dimColor:!0},b.pending?aX.default.createElement(aX.default.Fragment,null,"Press ",b.keyName," again to exit"):aX.default.createElement(aX.default.Fragment,null,"Enter to confirm"))))}var aX;var kqI=a(async()=>{MW();yl();Mc();await gZ([oG(),_d(),mX()]);aX=hI(YG(),1)});function uw({patch:I,dim:G,width:Z,overrideTheme:l}){return lrZ.useMemo(()=>udN(I.lines,I.oldStart,Z,G,l),[I.lines,I.oldStart,Z,G,l]).map((W,N)=>Y2.createElement(GI,{key:N},W))}function udN(I,G,Z,l,b){let W=dG(b),N=LdN(I.map((V)=>{if(V.startsWith("+"))return{code:" "+V.slice(1),i:0,type:"add"};if(V.startsWith("-"))return{code:" "+V.slice(1),i:0,type:"remove"};return{code:V,i:0,type:"nochange"}}),G),c=Math.max(...N.map(({i:V})=>V)).toString().length;return N.flatMap(({type:V,code:d,i:Q})=>{return raZ(d,Z-c).map((R,H)=>{let h=`${V}-${Q}-${H}`;switch(V){case"add":return Y2.createElement(D,{key:h},Y2.createElement(UqI,{i:H===0?Q:void 0,width:c}),Y2.createElement(D,{color:b?W.text:void 0,backgroundColor:l?W.diff.addedDimmed:W.diff.added,dimColor:l},R));case"remove":return Y2.createElement(D,{key:h},Y2.createElement(UqI,{i:H===0?Q:void 0,width:c}),Y2.createElement(D,{color:b?W.text:void 0,backgroundColor:l?W.diff.removedDimmed:W.diff.removed,dimColor:l},R));case"nochange":return Y2.createElement(D,{key:h},Y2.createElement(UqI,{i:H===0?Q:void 0,width:c}),Y2.createElement(D,{color:b?W.text:void 0,dimColor:l},R))}})})}function UqI({i:I,width:G}){return Y2.createElement(D,{color:dG().secondaryText},I!==void 0?I.toString().padStart(G):" ".repeat(G)," ")}function LdN(I,G){let Z=G,l=[],b=[...I];while(b.length>0){let{code:W,type:N}=b.shift(),Y={code:W,type:N,i:Z};switch(N){case"nochange":Z++,l.push(Y);break;case"add":Z++,l.push(Y);break;case"remove":{l.push(Y);let c=0;while(b[0]?.type==="remove"){Z++;let{code:V,type:d}=b.shift(),Q={code:V,type:d,i:Z};l.push(Q),c++}Z-=c;break}}}return l}var Y2,lrZ;var fk=a(async()=>{yl();await oG();Y2=hI(YG(),1),lrZ=hI(YG(),1)});function VFI(){return!(a2||z2)}function brZ(){return!!rZ().primaryApiKey}var dFI=a(()=>{Nm();MW()});function mFI({onDone:I}){let[G,Z]=El.useState(0),l=rZ(),b=VFI(),[W,N]=El.useState(B5.theme),Y=dG();function c(){if(G<A.length-1){let C=G+1;Z(C)}}function V(C){XW({...l,theme:C}),c()}function d(C){N(C)}let Q=zY(()=>process.exit(0));Mb(async(C,g)=>{let z=A[G];if(g.return&&z&&["usage","security"].includes(z.id))if(G===A.length-1)I();else{if(z.id==="security")await OV();c()}});let X=El.default.createElement(GI,{flexDirection:"column",gap:1,paddingLeft:1},El.default.createElement(D,null,"Let's get started."),El.default.createElement(GI,{flexDirection:"column"},El.default.createElement(D,{bold:!0},"Choose the option that looks best when you select it:"),El.default.createElement(D,{dimColor:!0},"To change this later, run /config")),El.default.createElement(JC,{options:[{label:"Light text",value:"dark"},{label:"Dark text",value:"light"},{label:"Light text (colorblind-friendly)",value:"dark-daltonized"},{label:"Dark text (colorblind-friendly)",value:"light-daltonized"}],onFocus:d,onChange:V}),El.default.createElement(GI,{flexDirection:"column"},El.default.createElement(GI,{paddingLeft:1,marginRight:1,borderStyle:"round",borderColor:"gray",flexDirection:"column"},El.default.createElement(uw,{patch:{oldStart:1,newStart:1,oldLines:3,newLines:3,lines:["function greet() {",'- console.log("Hello, World!");','+ console.log("Hello, Claude!");',"}"]},dim:!1,width:40,overrideTheme:W})))),R=El.default.createElement(GI,{flexDirection:"column",gap:1,paddingLeft:1},El.default.createElement(D,{bold:!0},"Security notes:"),El.default.createElement(GI,{flexDirection:"column",width:70},El.default.createElement(fm,null,El.default.createElement(fm.Item,null,El.default.createElement(D,null,"QuantWise is currently in research preview"),El.default.createElement(D,{color:Y.secondaryText,wrap:"wrap"},"This beta version may have limitations or unexpected behaviors.",El.default.createElement(Hd,null),"Run /bug at any time to report issues.",El.default.createElement(Hd,null))),El.default.createElement(fm.Item,null,El.default.createElement(D,null,"Claude can make mistakes"),El.default.createElement(D,{color:Y.secondaryText,wrap:"wrap"},"You should always review Claude's responses, especially when",El.default.createElement(Hd,null),"running code.",El.default.createElement(Hd,null))),El.default.createElement(fm.Item,null,El.default.createElement(D,null,"Due to prompt injection risks, only use it with code you trust"),El.default.createElement(D,{color:Y.secondaryText,wrap:"wrap"},"For more details see:",El.default.createElement(Hd,null),El.default.createElement(tu,{url:"https://docs.anthropic.com/s/claude-code-security"}))))),El.default.createElement(jL,null)),H=El.default.createElement(GI,{flexDirection:"column",gap:1,paddingLeft:1},El.default.createElement(D,{bold:!0},"Using ",yN," effectively:"),El.default.createElement(GI,{flexDirection:"column",width:70},El.default.createElement(fm,null,El.default.createElement(fm.Item,null,El.default.createElement(D,null,"Start in your project directory",El.default.createElement(Hd,null),El.default.createElement(D,{color:Y.secondaryText},"Files are automatically added to context when needed."),El.default.createElement(Hd,null))),El.default.createElement(fm.Item,null,El.default.createElement(D,null,"Use ",yN," as a development partner",El.default.createElement(Hd,null),El.default.createElement(D,{color:Y.secondaryText},"Get help with file analysis, editing, bash commands,",El.default.createElement(Hd,null),"and git history.",El.default.createElement(Hd,null)))),El.default.createElement(fm.Item,null,El.default.createElement(D,null,"Provide clear context",El.default.createElement(Hd,null),El.default.createElement(D,{color:Y.secondaryText},"Be as specific as you would with another engineer. ",El.default.createElement(Hd,null),"The better the context, the better the results. ",El.default.createElement(Hd,null))))),El.default.createElement(GI,null,El.default.createElement(D,null,"For more details on ",yN,", see:",El.default.createElement(Hd,null),El.default.createElement(tu,{url:"https://github.com/quantumiodb/ccode"})))),El.default.createElement(jL,null)),h=El.useMemo(()=>{if(process.env.USER_TYPE!=="ant")return"";if(!process.env.ANTHROPIC_API_KEY)return"";let C=sR(process.env.ANTHROPIC_API_KEY);if(GbI(C)==="new")return C},[]),A=[];if(A.push({id:"theme",component:X}),b)A.push({id:"oauth",component:El.default.createElement(XFI,{onDone:c})});if(h)A.push({id:"api-key",component:El.default.createElement(cFI,{customApiKeyTruncated:h,onDone:c})});return A.push({id:"security",component:R}),A.push({id:"usage",component:H}),El.default.createElement(GI,{flexDirection:"column",gap:1},A[G]?.id!=="oauth"&&El.default.createElement(xqI,null),El.default.createElement(GI,{flexDirection:"column",padding:0,gap:0},A[G]?.component,Q.pending&&El.default.createElement(GI,{padding:1},El.default.createElement(D,{dimColor:!0},"Press ",Q.keyName," again to exit"))))}function xqI(){let I=dG(),G="1.3.2";return El.default.createElement(GI,{borderColor:I.claude,borderStyle:"round",paddingX:1,width:HLI},El.default.createElement(D,null,El.default.createElement(D,{color:I.claude},"✦")," ",El.default.createElement(D,{bold:!0},yN)," ",El.default.createElement(D,{color:I.secondaryText},"v","1.3.2")))}var El;var QFI=a(async()=>{MW();yl();dFI();await gZ([oG(),_d(),mX(),hLI(),OqI(),kqI(),RNI(),fk(),JNI(),pw(),fXI()]);El=hI(YG(),1)});function WrZ({message:I,title:G}){let Z=G?`${G}:
1711
+ `),l=!1,b=!1,W;I.on("response",(N)=>{let{headers:Y}=N;l=Y["transfer-encoding"]==="chunked"&&!Y["content-length"]}),I.on("socket",(N)=>{let Y=()=>{if(l&&!b){let V=Error("Premature close");V.code="ERR_STREAM_PREMATURE_CLOSE",G(V)}},c=(V)=>{if(b=YFI.compare(V.slice(-5),Z)===0,!b&&W)b=YFI.compare(W.slice(-3),Z.slice(0,3))===0&&YFI.compare(V.slice(-2),Z.slice(3))===0;W=V};N.prependListener("close",Y),N.on("data",c),I.on("close",()=>{N.removeListener("close",Y),N.removeListener("data",c)})})}var AdN;var otZ=a(()=>{mtZ();ZFI();KtZ();WFI();_tZ();EqI();ftZ();LqI();$XI();rXI();gqI();CqI();AdN=new Set(["data:","http:","https:"])});var ttZ,vdN,CdN,NR;var rtZ=a(()=>{ttZ={REDIRECT_PORT:54545,MANUAL_REDIRECT_URL:"/oauth/code/callback",SCOPES:["org:create_api_key","user:profile"]},vdN={...ttZ,AUTHORIZE_URL:"https://console.anthropic.com/oauth/authorize",TOKEN_URL:"https://console.anthropic.com/v1/oauth/token",API_KEY_URL:"https://api.anthropic.com/api/oauth/claude_cli/create_api_key",SUCCESS_URL:"https://console.anthropic.com/buy_credits?returnUrl=/oauth/code/success",CLIENT_ID:"9d1c250a-e61b-44d9-88ed-5944d1962f5e"},CdN=process.env.USER_TYPE==="ant"&&process.env.USE_STAGING_OAUTH==="1"?{...ttZ,AUTHORIZE_URL:"https://console.staging.ant.dev/oauth/authorize",TOKEN_URL:"https://console.staging.ant.dev/v1/oauth/token",API_KEY_URL:"https://api-staging.anthropic.com/api/oauth/claude_cli/create_api_key",SUCCESS_URL:"https://console.staging.ant.dev/buy_credits?returnUrl=/oauth/code/success",CLIENT_ID:"22422756-60c9-4084-8eb7-27705fd5cf9a"}:void 0,NR=process.env.USER_TYPE==="ant"&&process.env.USE_STAGING_OAUTH==="1"&&CdN||vdN});import*as P$ from"crypto";import*as etZ from"http";import*as IrZ from"url";function zqI(I){return I.toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function pdN(){return zqI(P$.randomBytes(32))}async function ydN(I){let Z=new TextEncoder().encode(I),l=await P$.subtle.digest("SHA-256",Z);return zqI(Buffer.from(l))}class BqI{server=null;codeVerifier;expectedState=null;pendingCodePromise=null;constructor(){this.codeVerifier=pdN()}generateAuthUrls(I,G){function Z(l){let b=new URL(NR.AUTHORIZE_URL);return b.searchParams.append("client_id",NR.CLIENT_ID),b.searchParams.append("response_type","code"),b.searchParams.append("redirect_uri",l?NR.MANUAL_REDIRECT_URL:`http://localhost:${NR.REDIRECT_PORT}/callback`),b.searchParams.append("scope",NR.SCOPES.join(" ")),b.searchParams.append("code_challenge",I),b.searchParams.append("code_challenge_method","S256"),b.searchParams.append("state",G),b.toString()}return{autoUrl:Z(!1),manualUrl:Z(!0)}}async startOAuthFlow(I){let G=await ydN(this.codeVerifier),Z=zqI(P$.randomBytes(32));this.expectedState=Z;let{autoUrl:l,manualUrl:b}=this.generateAuthUrls(G,Z),W=async()=>{await I(b),await AL(l)},{authorizationCode:N,useManualRedirect:Y}=await new Promise((Q,X)=>{this.pendingCodePromise={resolve:Q,reject:X},this.startLocalServer(Z,W)}),{access_token:c,account:V,organization:d}=await this.exchangeCodeForTokens(N,Z,Y);if(V){let Q={accountUuid:V.uuid,emailAddress:V.email_address,organizationUuid:d?.uuid},X=rZ();X.oauthAccount=Q,XW(X)}return{accessToken:c}}startLocalServer(I,G){if(this.server)this.closeServer();this.server=etZ.createServer((Z,l)=>{let b=IrZ.parse(Z.url||"",!0);if(b.pathname==="/callback"){let W=b.query.code,N=b.query.state;if(!W){if(l.writeHead(400),l.end("Authorization code not found"),this.pendingCodePromise)this.pendingCodePromise.reject(Error("No authorization code received"));return}if(N!==I){if(l.writeHead(400),l.end("Invalid state parameter"),this.pendingCodePromise)this.pendingCodePromise.reject(Error("Invalid state parameter"));return}l.writeHead(302,{Location:NR.SUCCESS_URL}),l.end(),JG("tengu_oauth_automatic_redirect",{}),this.processCallback({authorizationCode:W,state:I,useManualRedirect:!1})}else l.writeHead(404),l.end()}),this.server.listen(NR.REDIRECT_PORT,async()=>{G?.()}),this.server.on("error",(Z)=>{if(Z.code==="EADDRINUSE"){let b=Error(`Port ${NR.REDIRECT_PORT} is already in use. Please ensure no other applications are using this port.`);if(DG(b),this.closeServer(),this.pendingCodePromise)this.pendingCodePromise.reject(b);return}else{if(DG(Z),this.closeServer(),this.pendingCodePromise)this.pendingCodePromise.reject(Z);return}})}async exchangeCodeForTokens(I,G,Z=!1){let l={grant_type:"authorization_code",code:I,redirect_uri:Z?NR.MANUAL_REDIRECT_URL:`http://localhost:${NR.REDIRECT_PORT}/callback`,client_id:NR.CLIENT_ID,code_verifier:this.codeVerifier,state:G},b=await i$(NR.TOKEN_URL,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(l),agent:Cz()});if(!b.ok)throw Error(`Token exchange failed: ${b.statusText}`);return await b.json()}processCallback({authorizationCode:I,state:G,useManualRedirect:Z}){if(this.closeServer(),G!==this.expectedState){if(this.pendingCodePromise)this.pendingCodePromise.reject(Error("Invalid state parameter")),this.pendingCodePromise=null;return}if(this.pendingCodePromise)this.pendingCodePromise.resolve({authorizationCode:I,useManualRedirect:Z}),this.pendingCodePromise=null}closeServer(){if(this.server)this.server.close(),this.server=null}}async function GrZ(I){try{let G=await i$(NR.API_KEY_URL,{method:"POST",headers:{Authorization:`Bearer ${I}`},agent:Cz()}),Z,l="";try{Z=await G.json()}catch(b){l=await G.text()}if(JG("tengu_oauth_api_key",{status:G.ok?"success":"failure",statusCode:G.status.toString(),error:G.ok?"":l||JSON.stringify(Z)}),G.ok&&Z&&Z.raw_key){let b=Z.raw_key,W=rZ();if(W.primaryApiKey=b,!W.customApiKeyResponses)W.customApiKeyResponses={approved:[],rejected:[]};if(!W.customApiKeyResponses.approved)W.customApiKeyResponses.approved=[];let N=sR(b);if(!W.customApiKeyResponses.approved.includes(N))W.customApiKeyResponses.approved.push(N);return XW(W),jnZ(),b}return null}catch(G){throw JG("tengu_oauth_api_key",{status:"failure",statusCode:"exception",error:G instanceof Error?G.message:String(G)}),G}}var ZrZ=a(async()=>{otZ();rtZ();hs();TW();Ul();slI();MW();await B0()});function cFI({customApiKeyTruncated:I,onDone:G}){let Z=dG();function l(W){let N=rZ();switch(W){case"yes":{XW({...N,customApiKeyResponses:{...N.customApiKeyResponses,approved:[...N.customApiKeyResponses?.approved??[],I]}}),G();break}case"no":{XW({...N,customApiKeyResponses:{...N.customApiKeyResponses,rejected:[...N.customApiKeyResponses?.rejected??[],I]}}),G();break}}}let b=zY(()=>process.exit(0));return aX.default.createElement(aX.default.Fragment,null,aX.default.createElement(GI,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:Z.warning},aX.default.createElement(D,{bold:!0,color:Z.warning},"Detected a custom API key in your environment"),aX.default.createElement(D,null,"Your environment sets ",aX.default.createElement(D,{color:Z.warning},"ANTHROPIC_API_KEY"),":"," ",aX.default.createElement(D,{bold:!0},"sk-ant-...",I)),aX.default.createElement(D,null,"Do you want to use this API key?"),aX.default.createElement($Y,{options:[{label:`No (${aZ.bold("recommended")})`,value:"no"},{label:"Yes",value:"yes"}],onChange:(W)=>l(W)})),aX.default.createElement(GI,{marginLeft:3},aX.default.createElement(D,{dimColor:!0},b.pending?aX.default.createElement(aX.default.Fragment,null,"Press ",b.keyName," again to exit"):aX.default.createElement(aX.default.Fragment,null,"Enter to confirm"))))}var aX;var kqI=a(async()=>{MW();yl();Mc();await gZ([oG(),_d(),mX()]);aX=hI(YG(),1)});function uw({patch:I,dim:G,width:Z,overrideTheme:l}){return lrZ.useMemo(()=>udN(I.lines,I.oldStart,Z,G,l),[I.lines,I.oldStart,Z,G,l]).map((W,N)=>Y2.createElement(GI,{key:N},W))}function udN(I,G,Z,l,b){let W=dG(b),N=LdN(I.map((V)=>{if(V.startsWith("+"))return{code:" "+V.slice(1),i:0,type:"add"};if(V.startsWith("-"))return{code:" "+V.slice(1),i:0,type:"remove"};return{code:V,i:0,type:"nochange"}}),G),c=Math.max(...N.map(({i:V})=>V)).toString().length;return N.flatMap(({type:V,code:d,i:Q})=>{return raZ(d,Z-c).map((R,H)=>{let h=`${V}-${Q}-${H}`;switch(V){case"add":return Y2.createElement(D,{key:h},Y2.createElement(UqI,{i:H===0?Q:void 0,width:c}),Y2.createElement(D,{color:b?W.text:void 0,backgroundColor:l?W.diff.addedDimmed:W.diff.added,dimColor:l},R));case"remove":return Y2.createElement(D,{key:h},Y2.createElement(UqI,{i:H===0?Q:void 0,width:c}),Y2.createElement(D,{color:b?W.text:void 0,backgroundColor:l?W.diff.removedDimmed:W.diff.removed,dimColor:l},R));case"nochange":return Y2.createElement(D,{key:h},Y2.createElement(UqI,{i:H===0?Q:void 0,width:c}),Y2.createElement(D,{color:b?W.text:void 0,dimColor:l},R))}})})}function UqI({i:I,width:G}){return Y2.createElement(D,{color:dG().secondaryText},I!==void 0?I.toString().padStart(G):" ".repeat(G)," ")}function LdN(I,G){let Z=G,l=[],b=[...I];while(b.length>0){let{code:W,type:N}=b.shift(),Y={code:W,type:N,i:Z};switch(N){case"nochange":Z++,l.push(Y);break;case"add":Z++,l.push(Y);break;case"remove":{l.push(Y);let c=0;while(b[0]?.type==="remove"){Z++;let{code:V,type:d}=b.shift(),Q={code:V,type:d,i:Z};l.push(Q),c++}Z-=c;break}}}return l}var Y2,lrZ;var fk=a(async()=>{yl();await oG();Y2=hI(YG(),1),lrZ=hI(YG(),1)});function VFI(){return!(a2||z2)}function brZ(){return!!rZ().primaryApiKey}var dFI=a(()=>{Nm();MW()});function mFI({onDone:I}){let[G,Z]=El.useState(0),l=rZ(),b=VFI(),[W,N]=El.useState(B5.theme),Y=dG();function c(){if(G<A.length-1){let C=G+1;Z(C)}}function V(C){XW({...l,theme:C}),c()}function d(C){N(C)}let Q=zY(()=>process.exit(0));Mb(async(C,g)=>{let z=A[G];if(g.return&&z&&["usage","security"].includes(z.id))if(G===A.length-1)I();else{if(z.id==="security")await OV();c()}});let X=El.default.createElement(GI,{flexDirection:"column",gap:1,paddingLeft:1},El.default.createElement(D,null,"Let's get started."),El.default.createElement(GI,{flexDirection:"column"},El.default.createElement(D,{bold:!0},"Choose the option that looks best when you select it:"),El.default.createElement(D,{dimColor:!0},"To change this later, run /config")),El.default.createElement(JC,{options:[{label:"Light text",value:"dark"},{label:"Dark text",value:"light"},{label:"Light text (colorblind-friendly)",value:"dark-daltonized"},{label:"Dark text (colorblind-friendly)",value:"light-daltonized"}],onFocus:d,onChange:V}),El.default.createElement(GI,{flexDirection:"column"},El.default.createElement(GI,{paddingLeft:1,marginRight:1,borderStyle:"round",borderColor:"gray",flexDirection:"column"},El.default.createElement(uw,{patch:{oldStart:1,newStart:1,oldLines:3,newLines:3,lines:["function greet() {",'- console.log("Hello, World!");','+ console.log("Hello, Claude!");',"}"]},dim:!1,width:40,overrideTheme:W})))),R=El.default.createElement(GI,{flexDirection:"column",gap:1,paddingLeft:1},El.default.createElement(D,{bold:!0},"Security notes:"),El.default.createElement(GI,{flexDirection:"column",width:70},El.default.createElement(fm,null,El.default.createElement(fm.Item,null,El.default.createElement(D,null,"QuantWise is currently in research preview"),El.default.createElement(D,{color:Y.secondaryText,wrap:"wrap"},"This beta version may have limitations or unexpected behaviors.",El.default.createElement(Hd,null),"Run /bug at any time to report issues.",El.default.createElement(Hd,null))),El.default.createElement(fm.Item,null,El.default.createElement(D,null,"Claude can make mistakes"),El.default.createElement(D,{color:Y.secondaryText,wrap:"wrap"},"You should always review Claude's responses, especially when",El.default.createElement(Hd,null),"running code.",El.default.createElement(Hd,null))),El.default.createElement(fm.Item,null,El.default.createElement(D,null,"Due to prompt injection risks, only use it with code you trust"),El.default.createElement(D,{color:Y.secondaryText,wrap:"wrap"},"For more details see:",El.default.createElement(Hd,null),El.default.createElement(tu,{url:"https://docs.anthropic.com/s/claude-code-security"}))))),El.default.createElement(jL,null)),H=El.default.createElement(GI,{flexDirection:"column",gap:1,paddingLeft:1},El.default.createElement(D,{bold:!0},"Using ",yN," effectively:"),El.default.createElement(GI,{flexDirection:"column",width:70},El.default.createElement(fm,null,El.default.createElement(fm.Item,null,El.default.createElement(D,null,"Start in your project directory",El.default.createElement(Hd,null),El.default.createElement(D,{color:Y.secondaryText},"Files are automatically added to context when needed."),El.default.createElement(Hd,null))),El.default.createElement(fm.Item,null,El.default.createElement(D,null,"Use ",yN," as a development partner",El.default.createElement(Hd,null),El.default.createElement(D,{color:Y.secondaryText},"Get help with file analysis, editing, bash commands,",El.default.createElement(Hd,null),"and git history.",El.default.createElement(Hd,null)))),El.default.createElement(fm.Item,null,El.default.createElement(D,null,"Provide clear context",El.default.createElement(Hd,null),El.default.createElement(D,{color:Y.secondaryText},"Be as specific as you would with another engineer. ",El.default.createElement(Hd,null),"The better the context, the better the results. ",El.default.createElement(Hd,null))))),El.default.createElement(GI,null,El.default.createElement(D,null,"For more details on ",yN,", see:",El.default.createElement(Hd,null),El.default.createElement(tu,{url:"https://github.com/quantumiodb/ccode"})))),El.default.createElement(jL,null)),h=El.useMemo(()=>{if(process.env.USER_TYPE!=="ant")return"";if(!process.env.ANTHROPIC_API_KEY)return"";let C=sR(process.env.ANTHROPIC_API_KEY);if(GbI(C)==="new")return C},[]),A=[];if(A.push({id:"theme",component:X}),b)A.push({id:"oauth",component:El.default.createElement(XFI,{onDone:c})});if(h)A.push({id:"api-key",component:El.default.createElement(cFI,{customApiKeyTruncated:h,onDone:c})});return A.push({id:"security",component:R}),A.push({id:"usage",component:H}),El.default.createElement(GI,{flexDirection:"column",gap:1},A[G]?.id!=="oauth"&&El.default.createElement(xqI,null),El.default.createElement(GI,{flexDirection:"column",padding:0,gap:0},A[G]?.component,Q.pending&&El.default.createElement(GI,{padding:1},El.default.createElement(D,{dimColor:!0},"Press ",Q.keyName," again to exit"))))}function xqI(){let I=dG(),G="1.3.4";return El.default.createElement(GI,{borderColor:I.claude,borderStyle:"round",paddingX:1,width:HLI},El.default.createElement(D,null,El.default.createElement(D,{color:I.claude},"✦")," ",El.default.createElement(D,{bold:!0},yN)," ",El.default.createElement(D,{color:I.secondaryText},"v","1.3.4")))}var El;var QFI=a(async()=>{MW();yl();dFI();await gZ([oG(),_d(),mX(),hLI(),OqI(),kqI(),RNI(),fk(),JNI(),pw(),fXI()]);El=hI(YG(),1)});function WrZ({message:I,title:G}){let Z=G?`${G}:
1712
1712
  ${I}`:I;try{process.stdout.write(`\x1B]9;
1713
1713
 
1714
1714
  ${Z}\x07`)}catch{}}function NrZ(){process.stdout.write("\x07")}async function FFI(I){switch(rZ().preferredNotifChannel){case"iterm2":WrZ(I);break;case"terminal_bell":NrZ();break;case"iterm2_with_bell":WrZ(I),NrZ();break;case"notifications_disabled":break}}var MqI=a(()=>{MW()});function XFI({onDone:I}){let[G,Z]=Ub.useState({state:"idle"}),l=dG(),[b,W]=Ub.useState(""),[N,Y]=Ub.useState(0),[c]=Ub.useState(()=>new BqI),[V,d]=Ub.useState(!1),[Q,X]=Ub.useState(!1),R=NY().columns-YrZ.length-1;Ub.useEffect(()=>{if(Q)OV(),X(!1)},[Q]),Ub.useEffect(()=>{if(G.state==="about_to_retry")X(!0),setTimeout(()=>{Z(G.nextState)},1000)},[G]),Mb(async(g,z)=>{if(z.return){if(G.state==="idle")JG("tengu_oauth_start",{}),Z({state:"ready_to_start"});else if(G.state==="success")JG("tengu_oauth_success",{}),await OV(),I();else if(G.state==="error"&&G.toRetry)W(""),Z({state:"about_to_retry",nextState:G.toRetry})}});async function H(g,z){try{let[k,x]=g.split("#");if(!k||!x){Z({state:"error",message:"Invalid code. Please make sure the full code was copied",toRetry:{state:"waiting_for_login",url:z}});return}JG("tengu_oauth_manual_entry",{}),c.processCallback({authorizationCode:k,state:x,useManualRedirect:!0})}catch(k){DG(k),Z({state:"error",message:k.message,toRetry:{state:"waiting_for_login",url:z}})}}let h=Ub.useCallback(async()=>{try{let g=await c.startOAuthFlow(async(k)=>{Z({state:"waiting_for_login",url:k}),setTimeout(()=>d(!0),3000)}).catch((k)=>{if(k.message.includes("Token exchange failed"))Z({state:"error",message:"Failed to exchange authorization code for access token. Please try again.",toRetry:{state:"ready_to_start"}}),JG("tengu_oauth_token_exchange_error",{error:k.message});else Z({state:"error",message:k.message,toRetry:{state:"ready_to_start"}});throw k});Z({state:"creating_api_key"});let z=await GrZ(g.accessToken).catch((k)=>{throw Z({state:"error",message:"Failed to create API key: "+k.message,toRetry:{state:"ready_to_start"}}),JG("tengu_oauth_api_key_error",{error:k.message}),k});if(z)Z({state:"success",apiKey:z}),FFI({message:"QuantWise login successful"});else Z({state:"error",message:"Unable to create API key. The server accepted the request but didn't return a key.",toRetry:{state:"ready_to_start"}}),JG("tengu_oauth_api_key_error",{error:"server_returned_no_key"})}catch(g){let z=g.message;JG("tengu_oauth_error",{error:z})}},[c,d]);Ub.useEffect(()=>{if(G.state==="ready_to_start")h()},[G.state,h]);function A(){switch(G.state){case"idle":return Ub.default.createElement(GI,{flexDirection:"column",gap:1},Ub.default.createElement(D,{bold:!0},yN," is billed based on API usage through your Anthropic Console account."),Ub.default.createElement(GI,null,Ub.default.createElement(D,null,"Pricing may evolve as we move towards general availability.")),Ub.default.createElement(GI,{marginTop:1},Ub.default.createElement(D,{color:l.permission},"Press ",Ub.default.createElement(D,{bold:!0},"Enter")," to login to your Anthropic Console account…")));case"waiting_for_login":return Ub.default.createElement(GI,{flexDirection:"column",gap:1},!V&&Ub.default.createElement(GI,null,Ub.default.createElement(k$,null),Ub.default.createElement(D,null,"Opening browser to sign in…")),V&&Ub.default.createElement(GI,null,Ub.default.createElement(D,null,YrZ),Ub.default.createElement(s5,{value:b,onChange:W,onSubmit:(g)=>H(g,G.url),cursorOffset:N,onChangeCursorOffset:Y,columns:R})));case"creating_api_key":return Ub.default.createElement(GI,{flexDirection:"column",gap:1},Ub.default.createElement(GI,null,Ub.default.createElement(k$,null),Ub.default.createElement(D,null,"Creating API key for QuantWise…")));case"about_to_retry":return Ub.default.createElement(GI,{flexDirection:"column",gap:1},Ub.default.createElement(D,{color:l.permission},"Retrying…"));case"success":return Ub.default.createElement(GI,{flexDirection:"column",gap:1},Ub.default.createElement(D,{color:l.success},"Login successful. Press ",Ub.default.createElement(D,{bold:!0},"Enter")," to continue…"));case"error":return Ub.default.createElement(GI,{flexDirection:"column",gap:1},Ub.default.createElement(D,{color:l.error},"OAuth error: ",G.message),G.toRetry&&Ub.default.createElement(GI,{marginTop:1},Ub.default.createElement(D,{color:l.permission},"Press ",Ub.default.createElement(D,{bold:!0},"Enter")," to retry.")));default:return null}}let C={};if(!Q)C.header=Ub.default.createElement(GI,{key:"header",flexDirection:"column",gap:1},Ub.default.createElement(xqI,null),Ub.default.createElement(GI,{paddingBottom:1,paddingLeft:1},Ub.default.createElement(ENI,null)));if(G.state==="waiting_for_login"&&V)C.urlToCopy=Ub.default.createElement(GI,{flexDirection:"column",key:"urlToCopy",gap:1,paddingBottom:1},Ub.default.createElement(GI,{paddingX:1},Ub.default.createElement(D,{dimColor:!0},"Browser didn't open? Use the url below to sign in:")),Ub.default.createElement(GI,{width:1000},Ub.default.createElement(D,{dimColor:!0},G.url)));return Ub.default.createElement(GI,{flexDirection:"column",gap:1},Ub.default.createElement(HK,{items:Object.keys(C)},(g)=>C[g]),Ub.default.createElement(GI,{paddingLeft:1,flexDirection:"column",gap:1},A()))}var Ub,YrZ="Paste code here if prompted > ";var OqI=a(async()=>{yl();TW();VX();Ul();MqI();await gZ([oG(),n6(),ZrZ(),RLI(),pw(),U$(),QFI()]);Ub=hI(YG(),1)});function gdN(I){let G=zY(I.onDone);return zX.createElement(GI,{flexDirection:"column"},zX.createElement(XFI,{onDone:I.onDone}),zX.createElement(GI,{marginLeft:3},zX.createElement(D,{dimColor:!0},G.pending?zX.createElement(zX.Fragment,null,"Press ",G.keyName," again to exit"):"")))}var zX,crZ=()=>({type:"local-jsx",name:"login",description:brZ()?"Switch Anthropic accounts":"Sign in with your Anthropic account",isEnabled:!0,isHidden:!1,async call(I,G){return await OV(),zX.createElement(gdN,{onDone:async()=>{L$(G),I()}})},userFacingName(){return"login"}});var VrZ=a(async()=>{dFI();await gZ([OqI(),pw(),mX(),oG(),DXI()]);zX=hI(YG(),1)});var KqI,drZ;var mrZ=a(async()=>{MW();await gZ([pw(),oG()]);KqI=hI(YG(),1),drZ={type:"local-jsx",name:"logout",description:"Sign out from your Anthropic account",isEnabled:!0,isHidden:!1,async call(){await OV();let I=rZ();if(I.oauthAccount=void 0,I.primaryApiKey=void 0,I.hasCompletedOnboarding=!1,I.customApiKeyResponses?.approved)I.customApiKeyResponses.approved=[];XW(I);let G=KqI.createElement(D,null,"Successfully logged out from your Anthropic account.");return setTimeout(()=>{process.exit(0)},200),G},userFacingName(){return"logout"}}});async function sk(){let[I,G]=await Promise.all([H$Z(),U3()]);return{servers:I,clients:G}}function QrZ({connected:I,disabled:G}){let Z=dG();if(G)return iZ.createElement(D,{color:"gray"},"○ disabled");if(I)return iZ.createElement(D,{color:Z.success??"green"},"● connected");return iZ.createElement(D,{color:"red"},"✕ failed")}function adN({onDone:I}){let[G,Z]=RFI.useState({phase:"loading"}),l=zY(()=>I());if(RFI.useEffect(()=>{sk().then(({servers:b,clients:W})=>{if(b.length===0&&W.every((N)=>N.type==="failed")){I("No MCP servers connected. Use `claude mcp add` to configure a server.");return}Z({phase:"server-list",servers:b,clients:W})})},[]),G.phase==="loading")return iZ.createElement(GI,{paddingLeft:2},iZ.createElement(vK,{label:"Connecting to MCP servers..."}));if(G.phase==="server-list"){let{servers:b,clients:W}=G,N=v$(),Y=new Set(b.map((R)=>R.serverName)),c=W.filter((R)=>R.type==="failed").map((R)=>R.name),d=Object.keys(N).filter(C$),Q=[...b.map((R)=>({label:`${R.serverName} (${R.tools.length} tools) ● connected`,value:R.serverName})),...c.filter((R)=>!Y.has(R)&&!C$(R)).map((R)=>({label:`${R} ✕ failed`,value:R})),...d.map((R)=>({label:`${R} ○ disabled`,value:R})),{label:"← Exit",value:"__exit__"}],X=b.reduce((R,H)=>R+H.tools.length,0);return iZ.createElement(GI,{flexDirection:"column"},iZ.createElement(GI,{paddingLeft:2,marginBottom:1},iZ.createElement(D,{color:dG().text,bold:!0},"MCP Servers (",b.length," connected, ",X," tools total)")),iZ.createElement($Y,{options:Q,onChange:(R)=>{if(R==="__exit__"){I();return}let H=b.find((C)=>C.serverName===R),h=C$(R),A=Y.has(R);Z({phase:"server-detail",serverName:R,connected:A,disabled:h,server:H})}}),l.pending&&iZ.createElement(GI,{paddingLeft:2,marginTop:1},iZ.createElement(D,{dimColor:!0},"Press ",l.keyName," again to exit")))}if(G.phase==="server-detail"){let{serverName:b,connected:W,disabled:N,server:Y}=G,c=[...W&&Y?[{label:"\uD83D\uDD27 View Tools",value:"__tools__"}]:[],N?{label:"▶ Enable",value:"__enable__"}:{label:"⏸ Disable",value:"__disable__"},{label:"← Back to servers",value:"__back__"}];return iZ.createElement(GI,{flexDirection:"column"},iZ.createElement(GI,{paddingLeft:2,marginBottom:1,flexDirection:"column",gap:0},iZ.createElement(D,{bold:!0},b),iZ.createElement(GI,{marginTop:1,gap:2},iZ.createElement(D,{dimColor:!0},"Status:"),iZ.createElement(QrZ,{connected:W,disabled:N})),iZ.createElement(GI,{gap:2},iZ.createElement(D,{dimColor:!0},"Config:"),iZ.createElement(D,null,N?"disabled in this project":"enabled"))),iZ.createElement($Y,{options:c,onChange:(V)=>{if(V==="__tools__"&&Y)Z({phase:"tool-list",server:Y});else if(V==="__disable__")r7I(b),Z({phase:"loading"}),sk().then(({servers:d,clients:Q})=>Z({phase:"server-list",servers:d,clients:Q}));else if(V==="__enable__")w$Z(b),Z({phase:"loading"}),sk().then(({servers:d,clients:Q})=>Z({phase:"server-list",servers:d,clients:Q}));else Z({phase:"loading"}),sk().then(({servers:d,clients:Q})=>Z({phase:"server-list",servers:d,clients:Q}))}}),l.pending&&iZ.createElement(GI,{paddingLeft:2,marginTop:1},iZ.createElement(D,{dimColor:!0},"Press ",l.keyName," again to exit")))}if(G.phase==="tool-list"){let{server:b}=G,W=C$(b.serverName),N=[...b.tools.map((Y,c)=>({label:`${String(c+1).padStart(2," ")}. ${Y.name}`,value:String(c)})),{label:"⏸ Disable this server",value:"__disable__"},{label:"← Back to servers",value:"__back__"}];return iZ.createElement(GI,{flexDirection:"column"},iZ.createElement(GI,{paddingLeft:2,marginBottom:1,flexDirection:"column"},iZ.createElement(D,{color:dG().text,bold:!0},b.serverName),iZ.createElement(GI,{gap:2},iZ.createElement(D,{dimColor:!0},b.tools.length," tools"),iZ.createElement(QrZ,{connected:!0,disabled:W}))),iZ.createElement($Y,{options:N,onChange:(Y)=>{if(Y==="__back__"){Z({phase:"loading"}),sk().then(({servers:V,clients:d})=>Z({phase:"server-list",servers:V,clients:d}));return}if(Y==="__disable__"){r7I(b.serverName),Z({phase:"loading"}),sk().then(({servers:V,clients:d})=>Z({phase:"server-list",servers:V,clients:d}));return}let c=parseInt(Y,10);Z({phase:"tool-detail",server:b,toolIdx:c})}}),l.pending&&iZ.createElement(GI,{paddingLeft:2,marginTop:1},iZ.createElement(D,{dimColor:!0},"Press ",l.keyName," again to exit")))}if(G.phase==="tool-detail"){let{server:b,toolIdx:W}=G,N=b.tools[W];if(!N)return Z({phase:"tool-list",server:b}),null;return iZ.createElement(GI,{flexDirection:"column"},iZ.createElement(GI,{paddingLeft:2,marginBottom:1,flexDirection:"column"},iZ.createElement(D,{color:dG().text,bold:!0},b.serverName,":",N.name),N.description?iZ.createElement(GI,{marginTop:1},iZ.createElement(D,null,N.description)):iZ.createElement(GI,{marginTop:1},iZ.createElement(D,{dimColor:!0},"(no description)"))),iZ.createElement($Y,{options:[{label:"← Back to tool list",value:"__back__"},{label:"← Back to servers",value:"__servers__"},{label:"← Exit",value:"__exit__"}],onChange:(Y)=>{if(Y==="__back__")Z({phase:"tool-list",server:b});else if(Y==="__servers__")Z({phase:"loading"}),sk().then(({servers:c,clients:V})=>Z({phase:"server-list",servers:c,clients:V}));else I()}}),l.pending&&iZ.createElement(GI,{paddingLeft:2,marginTop:1},iZ.createElement(D,{dimColor:!0},"Press ",l.keyName," again to exit")))}return null}var iZ,RFI,XrZ;var FrZ=a(async()=>{yl();await gZ([oG(),_d(),jk(),mX()]);iZ=hI(YG(),1),RFI=hI(YG(),1);XrZ={type:"local-jsx",name:"mcp",description:"View and manage MCP servers",isEnabled:!0,isHidden:!1,async call(I){return iZ.createElement(adN,{onDone:I})},userFacingName(){return"mcp"}}});function RrZ({onDone:I}){let[G,Z]=I0.useState([]),[l,b]=I0.useState(!0),[W,N]=I0.useState(null),Y=rZ().model;I0.useEffect(()=>{async function d(){try{let Q=await RKG();Z(Q),b(!1)}catch(Q){N(Q instanceof Error?Q.message:"Failed to fetch models"),b(!1)}}d()},[]);let c=(d)=>{let Q=rZ();if(d==="__default__")delete Q.model;else Q.model=d;XW(Q),XKG(),I(d==="__default__"?void 0:d)};if(l)return I0.default.createElement(GI,{flexDirection:"column",paddingLeft:2},I0.default.createElement(GI,null,I0.default.createElement(vK,{label:"Fetching available models..."})));if(W)return I0.default.createElement(GI,{flexDirection:"column",paddingLeft:2},I0.default.createElement(D,{color:"red"},"Error: ",W));if(G.length===0)return I0.default.createElement(GI,{flexDirection:"column",paddingLeft:2},I0.default.createElement(D,{color:dG().warning},"No models available"));let V=[{label:`Use default${!Y?" (current)":""}`,value:"__default__"},...G.map((d)=>({label:`${d.display_name} (${d.id})${Y===d.id?" (current)":""}`,value:d.id}))];return I0.default.createElement(GI,{flexDirection:"column"},I0.default.createElement(GI,{paddingLeft:2,marginBottom:1},I0.default.createElement(D,{color:dG().text},"Select a model (use arrow keys, Enter to confirm):")),I0.default.createElement($Y,{options:V,onChange:c}),Y&&I0.default.createElement(GI,{paddingLeft:2,marginTop:1},I0.default.createElement(D,{dimColor:!0},"Current: ",Y)))}var I0;var HrZ=a(async()=>{yl();Nm();MW();await gZ([oG(),_d()]);I0=hI(YG(),1)});function zdN(I){let G=zY(()=>I.onDone(void 0));return BX.createElement(GI,{flexDirection:"column"},BX.createElement(RrZ,{onDone:I.onDone}),BX.createElement(GI,{marginLeft:3,marginTop:1},BX.createElement(D,{dimColor:!0},G.pending?BX.createElement(BX.Fragment,null,"Press ",G.keyName," again to exit"):"")))}var BX,hrZ;var wrZ=a(async()=>{await gZ([HrZ(),oG(),mX(),B0()]);BX=hI(YG(),1),hrZ={type:"local-jsx",name:"model",description:"Select a model to use",isEnabled:!0,isHidden:!1,async call(I){return BX.createElement(zdN,{onDone:(G)=>{if(G){let Z=A3(G),l=Z>=1000?`${(Z/1000).toFixed(0)}K`:Z.toString();I(`Model changed to: ${G}
@@ -1836,7 +1836,7 @@ Remember:
1836
1836
  4. Show the file and line number context for code review comments
1837
1837
  5. Use jq to parse the JSON responses
1838
1838
 
1839
- ${I?"Additional user input: "+I:""}`}var MrZ;var KrZ=a(()=>{a5();MrZ={type:"prompt",name:"pr-comments",description:"Get comments from a pull/merge request",progressMessage:"fetching PR/MR comments",isEnabled:!0,isHidden:!1,userFacingName(){return"pr-comments"},async getPromptForCommand(I){return[{role:"user",content:[{type:"text",text:await jM()==="gitlab"?fdN(I):_dN(I)}]}]}}});var sdN,DrZ;var jrZ=a(()=>{qpI();sdN={description:"Show release notes for the current or specified version",isEnabled:!1,isHidden:!1,name:"release-notes",userFacingName(){return"release-notes"},type:"local",async call(I){let Z=I?I.trim():"1.3.2",l=QWI[Z];if(!l||l.length===0)return`No release notes available for version ${Z}.`;let b=`Release notes for version ${Z}:`,W=l.map((N)=>`• ${N}`).join(`
1839
+ ${I?"Additional user input: "+I:""}`}var MrZ;var KrZ=a(()=>{a5();MrZ={type:"prompt",name:"pr-comments",description:"Get comments from a pull/merge request",progressMessage:"fetching PR/MR comments",isEnabled:!0,isHidden:!1,userFacingName(){return"pr-comments"},async getPromptForCommand(I){return[{role:"user",content:[{type:"text",text:await jM()==="gitlab"?fdN(I):_dN(I)}]}]}}});var sdN,DrZ;var jrZ=a(()=>{qpI();sdN={description:"Show release notes for the current or specified version",isEnabled:!1,isHidden:!1,name:"release-notes",userFacingName(){return"release-notes"},type:"local",async call(I){let Z=I?I.trim():"1.3.4",l=QWI[Z];if(!l||l.length===0)return`No release notes available for version ${Z}.`;let b=`Release notes for version ${Z}:`,W=l.map((N)=>`• ${N}`).join(`
1840
1840
  `);return`${b}
1841
1841
 
1842
1842
  ${W}`}},DrZ=sdN});function TqI(I){nrZ=I}var nrZ=null,$dN,qrZ;var SqI=a(async()=>{await NB();$dN={type:"local",name:"reload",description:"Reload skills and commands",isEnabled:!0,isHidden:!1,async call(){let I=await en();return nrZ?.(I),`Reloaded ${I.length} commands.`},userFacingName(){return"reload"}},qrZ=$dN});var odN,TrZ;var SrZ=a(()=>{Ul();odN={type:"local",name:"rename",description:"Rename the current conversation (visible in /resume)",isEnabled:!0,isHidden:!1,async call(I,G){let Z=G.options.messageLogName;if(!Z)return"Unable to rename: no active conversation.";let l=I.trim();if(!l){let b=nOG(Z);if(b)return`Current name: "${b}". Usage: /rename <new name>`;return"Usage: /rename <new name>"}return jOG(Z,l),`Conversation renamed to "${l}"`},userFacingName(){return"rename"}},TrZ=odN});function irZ({erroredToolUseIDs:I,messages:G,allMessages:Z,onDone:l,onRestore:b,onSummarize:W,tools:N,unresolvedToolUseIDs:Y}){let[c,V]=YR.useState("select-message"),[d,Q]=YR.useState(0),[X,R]=YR.useState(0),[H,h]=YR.useState(!1);YR.useEffect(()=>{JG("tengu_rewind_menu_opened",{})},[]);let A=YR.useMemo(()=>G.filter((lI)=>!(lI.type==="user"&&Array.isArray(lI.message.content)&&lI.message.content[0]?.type==="tool_result")).filter((lI)=>lI.type!=="assistant").filter((lI)=>{if(lI.type!=="user")return!0;let t=lI.message.content;if(typeof t==="string")return!t.includes("<command-name>");if(Array.isArray(t)&&t[0]?.type==="text")return!t[0].text.includes("<command-name>");return!0}),[G]),[C,g]=YR.useState(Math.max(0,A.length-1)),z=zY(()=>process.exit(0)),k=YR.useCallback(()=>{let lI=A[C];if(!lI||!Z.includes(lI))return;JG("tengu_rewind_restore",{index_from_end:(A.length-1-C).toString()}),b(Z.indexOf(lI))},[C,A,Z,b]),x=YR.useCallback(async()=>{let lI=A[C];if(!lI||!Z.includes(lI))return;h(!0),JG("tengu_rewind_summarize",{index_from_end:(A.length-1-C).toString()});try{await W(Z.indexOf(lI))}finally{h(!1)}},[C,A,Z,W]);Mb((lI,t)=>{if(H)return;if(t.tab||t.escape){if(c==="select-action")V("select-message"),R(0);else JG("tengu_rewind_menu_cancelled",{}),l();return}if(c==="select-message"){if(t.return){let QI=A[C];if(!QI||!Z.includes(QI))return;Q(C),V("select-action"),R(0);return}if(t.upArrow)if(t.ctrl||t.shift||t.meta)g(0);else g((QI)=>Math.max(0,QI-1));if(t.downArrow)if(t.ctrl||t.shift||t.meta)g(A.length-1);else g((QI)=>Math.min(A.length-1,QI+1));let aI=Number(lI);if(!isNaN(aI)&&aI>=1&&aI<=Math.min(9,A.length)){let QI=A[aI-1];if(QI&&Z.includes(QI))Q(aI-1),g(aI-1),V("select-action"),R(0)}}else if(c==="select-action"){if(t.return){let aI=uFI[X];if(aI.key==="restore")k();else if(aI.key==="summarize")x();else V("select-message"),R(0);return}if(t.upArrow)R((aI)=>Math.max(0,aI-1));if(t.downArrow)R((aI)=>Math.min(uFI.length-1,aI+1))}});let n=Math.max(0,Math.min(C-Math.floor(LFI/2),A.length-LFI)),_=YR.useMemo(()=>Lw(G).filter(I8),[G]);if(H)return Zl.createElement(GI,{flexDirection:"column",marginTop:1,paddingX:1},Zl.createElement(D,{color:"blue"},"Summarizing conversation..."));if(c==="select-action"){let lI=A[d],t=lI?typeof lI.message.content==="string"?lI.message.content.slice(0,60):Array.isArray(lI.message.content)&&lI.message.content[0]?.type==="text"?lI.message.content[0].text.slice(0,60):"(message)":"";return Zl.createElement(Zl.Fragment,null,Zl.createElement(GI,{flexDirection:"column",borderStyle:"round",borderColor:dG().secondaryBorder,height:4+uFI.length*2,paddingX:1,marginTop:1},Zl.createElement(GI,{flexDirection:"column",minHeight:2,marginBottom:1},Zl.createElement(D,{bold:!0},"Rewind action"),Zl.createElement(D,{dimColor:!0},"Selected: ",t,t.length>=60?"...":"")),uFI.map((aI,QI)=>{let lG=QI===X;return Zl.createElement(GI,{key:aI.key,flexDirection:"row",height:2,minHeight:2},Zl.createElement(GI,{width:4},lG?Zl.createElement(D,{color:"blue",bold:!0},HN.pointer," "):Zl.createElement(D,null," ")),Zl.createElement(GI,{flexDirection:"column"},Zl.createElement(D,{bold:lG,color:lG?"blue":void 0},aI.label),Zl.createElement(D,{dimColor:!0},aI.description)))})),Zl.createElement(GI,{marginLeft:3},Zl.createElement(D,{dimColor:!0},z.pending?Zl.createElement(Zl.Fragment,null,"Press ",z.keyName," again to exit"):Zl.createElement(Zl.Fragment,null,"↑/↓ to select · Enter to confirm · Esc to go back"))))}return Zl.createElement(Zl.Fragment,null,Zl.createElement(GI,{flexDirection:"column",borderStyle:"round",borderColor:dG().secondaryBorder,height:4+Math.min(LFI,A.length)*2,paddingX:1,marginTop:1},Zl.createElement(GI,{flexDirection:"column",minHeight:2,marginBottom:1},Zl.createElement(D,{bold:!0},"Rewind conversation"),Zl.createElement(D,{dimColor:!0},"Select a message to rewind to")),A.slice(n,n+LFI).map((lI,t)=>{let QI=n+t===C;return Zl.createElement(GI,{key:lI.uuid,flexDirection:"row",height:2,minHeight:2},Zl.createElement(GI,{width:7},QI?Zl.createElement(D,{color:"blue",bold:!0},HN.pointer," ",n+t+1," "):Zl.createElement(D,null," ",n+t+1," ")),Zl.createElement(GI,{height:1,overflow:"hidden",width:100},Array.isArray(lI.message.content)&&lI.message.content[0]?.type==="text"&&G8(lI.message.content[0].text)?Zl.createElement(D,{dimColor:!0,italic:!0},"(empty message)"):Zl.createElement(AE,{message:lI,messages:_,addMargin:!1,tools:N,verbose:!1,debug:!1,erroredToolUseIDs:I,inProgressToolUseIDs:new Set,unresolvedToolUseIDs:Y,shouldAnimate:!1,shouldShowDot:!1})))})),Zl.createElement(GI,{marginLeft:3},Zl.createElement(D,{dimColor:!0},z.pending?Zl.createElement(Zl.Fragment,null,"Press ",z.keyName," again to exit"):Zl.createElement(Zl.Fragment,null,"↑/↓ to select · Enter to choose action · Tab/Esc to cancel"))))}var Zl,YR,uFI,LFI=7;var PrZ=a(async()=>{oR();yl();TW();await gZ([oG(),s$(),WV(),mX()]);Zl=hI(YG(),1),YR=hI(YG(),1),uFI=[{key:"restore",label:"Restore conversation",description:"Rewind to this point"},{key:"summarize",label:"Summarize from here",description:"Compress messages after this point"},{key:"cancel",label:"Cancel",description:"Return to message list"}]});function iqI(I,G){let Z=G+1;while(Z<I.length&&I[Z].type!=="user")Z++;return Z}var PqI,_rZ;var frZ=a(async()=>{ws();await gZ([PrZ(),WV(),pw(),hE(),B0()]);PqI=hI(YG(),1),_rZ={type:"local-jsx",name:"rewind",description:"Rewind conversation to a previous point or summarize from a point",isEnabled:!0,isHidden:!1,userFacingName(){return"rewind"},async call(I,G){let Z=B4()(),l=x3(Z),b=(Y)=>{let c=iqI(Z,Y);N(),setImmediate(async()=>{await OV(),lB()([]),G.setForkConvoWithMessagesOnTheNextRender(Z.slice(0,c)),q2.cache.clear?.(),E3.cache.clear?.(),I()})},W=async(Y)=>{let c=iqI(Z,Y),V=Z.slice(0,c),d=Z.slice(c),Q=MY("Provide a detailed but concise summary of our conversation above. Focus on information that would be helpful for continuing the conversation, including what we did, what we're doing, which files we're working on, and what we're going to do next."),X=await ej(x3([...d,Q]),["You are a helpful AI assistant tasked with summarizing conversations."],0,G.options.tools,G.abortController.signal,{dangerouslySkipPermissions:!1,model:G.options.slowAndCapableModel,prependCLISysprompt:!0}),R=X.message.content,H=typeof R==="string"?R:R.length>0&&R[0]?.type==="text"?R[0].text:null;if(!H||H.startsWith(_1)){b(Y);return}X.message.usage={input_tokens:0,output_tokens:X.message.usage.output_tokens,cache_creation:null,cache_creation_input_tokens:0,cache_read_input_tokens:0,server_tool_use:null,service_tier:null},await OV(),lB()([]),G.setForkConvoWithMessagesOnTheNextRender([...V,MY("Summary of conversation after this point:"),X]),q2.cache.clear?.(),E3.cache.clear?.(),I()};function N(){G.abortController?.abort()}return PqI.createElement(irZ,{erroredToolUseIDs:new Set,unresolvedToolUseIDs:new Set,messages:l,allMessages:Z,onDone:()=>I(),onRestore:b,onSummarize:W,tools:G.options.tools})}}});var gFI;var _qI=a(async()=>{a5();await RH();gFI={type:"prompt",name:"review",description:"Review a pull/merge request",isEnabled:!0,isHidden:!1,progressMessage:"reviewing pull/merge request",userFacingName(){return"review"},async getPromptForCommand(I){let Z=await jM()==="gitlab",l=Z?"glab":"gh",b=Z?"mr":"pr",W=Z?"MR":"PR";return[{role:"user",content:[{type:"text",text:`
@@ -2056,7 +2056,7 @@ https://github.com/highlightjs/highlight.js/issues/2277`),MI=EI,LI=VI;if(JI===vo
2056
2056
 
2057
2057
  Files modified by other users:
2058
2058
  `+W}let l=(await Rw({systemPrompt:["You are an expert at analyzing git history. Given a list of files and their modification counts, return exactly five filenames that are frequently modified and represent core application logic (not auto-generated files, dependencies, or configuration). Make sure filenames are diverse, not all in the same folder, and are a mix of user and other users. Return only the filenames' basenames (without the path) separated by newlines with no explanation."],userPrompt:I})).message.content[0];if(!l||l.type!=="text")return[];let b=l.text.trim().split(`
2059
- `);if(b.length<5)return[];return b}catch(I){return DG(I),[]}}var bVl,C1I;var dSI=a(async()=>{MW();k2();QW();Ul();wY();a5();await B0();bVl=SHN(THN);C1I=cb(async()=>{let I=rZ(),G=Ob(),Z=Date.now(),l=G.exampleFilesGeneratedAt??0,b=604800000;if(Z-l>604800000)G.exampleFiles=[];let W={...I,numStartups:(I.numStartups??0)+1};if(XW(W),!G.exampleFiles?.length)iHN().then((Y)=>{if(Y.length)pN({...Ob(),exampleFiles:Y,exampleFilesGeneratedAt:Date.now()})});let N=G.exampleFiles?.length?Hz(G.exampleFiles):"<filepath>";return["fix lint errors","fix typecheck errors",`how does ${N} work?`,`refactor ${N}`,"how do I log an error?",`edit ${N} to...`,`write a test for ${N}`,"create a util logging.py that..."]})});function mSI(){return Ob().history??[]}function Zg(I){let G=Ob(),Z=G.history??[];if(Z[0]===I)return;Z.unshift(I),pN({...G,history:Z.slice(0,PHN)})}var PHN=100;var Lo=a(()=>{MW()});function WVl(I,G){let[Z,l]=QSI.useState(0),[b,W]=QSI.useState(""),N=(d)=>{if(d!==void 0){let Q=d.startsWith("!")?"bash":"prompt",X=Q==="bash"?d.slice(1):d;I(X,Q)}};function Y(){let d=mSI();if(Z<d.length){if(Z===0&&G.trim()!=="")W(G);let Q=Z+1;l(Q),N(d[Z])}}function c(){let d=mSI();if(Z>1){let Q=Z-1;l(Q),N(d[Q-1])}else if(Z===1)l(0),N(b)}function V(){W(""),l(0)}return{historyIndex:Z,setHistoryIndex:l,onHistoryUp:Y,onHistoryDown:c,resetHistory:V}}var QSI;var NVl=a(()=>{Lo();QSI=hI(YG(),1)});function YVl({commands:I,onInputChange:G,onSubmit:Z,setCursorOffset:l}){let[b,W]=go.useState([]),[N,Y]=go.useState(-1);function c(d){if(d.startsWith("/")){let Q=d.slice(1).toLowerCase(),R=I.filter((h)=>!h.isHidden).filter((h)=>{let A=[h.userFacingName()];if(h.aliases)A.push(...h.aliases);return A.some((C)=>C.toLowerCase().startsWith(Q))}).map((h)=>h.userFacingName());W(R);let H=N>-1?R.indexOf(b[N]):0;if(H>-1)Y(H);else Y(0)}else W([]),Y(-1)}Mb((d,Q)=>{if(b.length>0){if(Q.downArrow)return Y((X)=>X>=b.length-1?0:X+1),!0;else if(Q.upArrow)return Y((X)=>X<=0?b.length-1:X-1),!0;else if(Q.tab||Q.return&&N>=0){if(N===-1&&Q.tab)Y(0);let X=N>=0?N:0,R=b[X];if(!R)return!0;let H="/"+R+" ";if(G(H),l(H.length),W([]),Y(-1),Q.return){let h=D6(R,I);if(h.type!=="prompt"||(h.argNames??[]).length===0)Z(H,!0)}return!0}}});let V=go.useCallback(()=>{W([]),Y(-1)},[]);return{suggestions:b,selectedSuggestion:N,updateSuggestions:c,clearSuggestions:V}}var go;var cVl=a(async()=>{await gZ([oG(),NB()]);go=hI(YG(),1)});var VVl,p1I;var dVl=a(()=>{klI();VVl=hI(YG(),1);p1I=class p1I extends VVl.Component{constructor(I){super(I);this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(I){BlI(I)}render(){if(this.state.hasError)return null;return this.props.children}}});function XSI({debug:I,isUpdating:G,onChangeIsUpdating:Z,onAutoUpdaterResult:l,autoUpdaterResult:b}){let W=dG(),[N,Y]=y1I.useState({}),c=jY.useCallback(async()=>{if(G)return;let V="1.3.2",d=await _XI(),Q=await aKG();if(Y({global:V,latest:d}),!Q&&V&&d&&!mVl.gte(V,d)){let X=Date.now();Z(!0);let R=await Sn();if(Z(!1),R==="success")JG("tengu_auto_updater_success",{fromVersion:V,toVersion:d,durationMs:String(Date.now()-X)});else JG("tengu_auto_updater_fail",{fromVersion:V,attemptedVersion:d,status:R,durationMs:String(Date.now()-X)});l({version:d,status:R})}},[l]);if(y1I.useEffect(()=>{c()},[c]),qFI(c,1800000),I)return jY.createElement(GI,{flexDirection:"row"},jY.createElement(D,{dimColor:!0},"globalVersion: ",N.global," · latestVersion: ",N.latest));if(!b?.version&&(!N.global||!N.latest))return null;if(!b?.version&&!G)return null;return jY.createElement(GI,{flexDirection:"row"},I&&jY.createElement(D,{dimColor:!0},"globalVersion: ",N.global," · latestVersion: ",N.latest),G&&jY.createElement(jY.Fragment,null,jY.createElement(GI,null,jY.createElement(D,{color:W.secondaryText,dimColor:!0,wrap:"end"},"Auto-updating to v",N.latest,"…"))),b?.status==="success"&&b?.version?jY.createElement(D,{color:W.success},"✓ Update v",b.version," installed · Type ",jY.createElement(D,{bold:!0},"/restart")," ","to apply"):null,(b?.status==="install_failed"||b?.status==="no_permissions")&&jY.createElement(D,{color:W.error},"✗ Auto-update failed · Try ",jY.createElement(D,{bold:!0},"claude doctor")," or"," ",jY.createElement(D,{bold:!0},"npm i -g ","quantwise")))}var jY,mVl,y1I;var QVl=a(async()=>{yl();MW();M$();FTI();TW();await oG();jY=hI(YG(),1),mVl=hI(fx(),1),y1I=hI(YG(),1)});function FSI(I){return(vjI(I??"")-XVl)*0.6}function RSI({tokenUsage:I,model:G}){let Z=dG(),l=vjI(G??"")-XVl,b=l*0.6,W=l*0.8;if(I<b)return null;let N=I>=W;return ao.createElement(GI,{flexDirection:"row"},ao.createElement(D,{color:N?Z.error:Z.warning},"Context low (",Math.max(0,100-Math.round(I/l*100)),"% remaining) · Run /compact to compact & continue"))}var ao,XVl=1e4,dgc;var FVl=a(async()=>{yl();await gZ([oG(),B0()]);ao=hI(YG(),1);dgc=FSI()});function RVl({model:I,messages:G,columns:Z}){let[,l]=u1I.useState(0);u1I.useEffect(()=>{let h=setInterval(()=>l((A)=>A+1),1000);return()=>clearInterval(h)},[]);let b=zj();if(b===0)return null;let W=YE(G),N=z0I(G),Y=a0I(),c=W>0?Math.round(100*N/W):0,V=Z>=80,d=V?I:I.replace(/^claude-/,"").replace(/-\d{8}$/,""),Q=V?`${Df(W)} tokens (${c}% cached)`:`${Df(W)} tkn`,X=V?H6I(b):`$${b.toFixed(2)}`,R=V?bL(Y):bL(Y).replace(/\.(\d)s/,"s");return zo.createElement(GI,{paddingX:2},zo.createElement(D,{dimColor:!0},[d,Q].join(" · ")))}var zo,u1I;var HVl=a(async()=>{mk();await gZ([oG(),B0I()]);zo=hI(YG(),1),u1I=hI(YG(),1)});function hVl(I){return`[Pasted text +${(I.match(/\r\n|\r|\n/g)||[]).length} lines] `}function _HN({commands:I,forkNumber:G,messageLogName:Z,isDisabled:l,isLoading:b,onQuery:W,debug:N,verbose:Y,messages:c,setToolJSX:V,onAutoUpdaterResult:d,autoUpdaterResult:Q,tools:X,input:R,onInputChange:H,mode:h,onModeChange:A,submitCount:C,onSubmitCountChange:g,setIsLoading:z,setAbortController:k,onShowMessageSelector:x,setForkConvoWithMessagesOnTheNextRender:n,readFileTimestamps:_,permissionMode:lI,onPermissionModeChange:t}){let[aI,QI]=M0.useState(!1),[lG,uI]=M0.useState({show:!1}),[ZI,zI]=M0.useState({show:!1}),[EI,VI]=M0.useState(null),[JI,LI]=M0.useState(""),[MI,BI]=M0.useState(""),[FG,f]=M0.useState(R.length),[P,NI]=M0.useState(null),[GG,ZG]=M0.useState({show:!1});M0.useEffect(()=>{C1I().then((hG)=>{BI(`Try "${Hz(hG)}"`)}),G2().then(LI)},[]);let{columns:cG}=NY(),bI=M0.useMemo(()=>Math.max(...I.map((hG)=>hG.userFacingName().length))+5,[I]),{suggestions:dI,selectedSuggestion:CI,updateSuggestions:gI,clearSuggestions:DI}=YVl({commands:I,onInputChange:H,onSubmit:rI,setCursorOffset:f}),UI=M0.useCallback((hG)=>{if(hG.startsWith("!")){A("bash");return}gI(hG),H(hG)},[A,H,gI]),{resetHistory:sI,onHistoryUp:r,onHistoryDown:AI}=WVl((hG,vG)=>{UI(hG),A(vG)},R),yI=()=>{if(dI.length<=1)r()},qI=()=>{if(dI.length<=1)AI()};async function rI(hG,vG=!1){if(hG==="")return;if(l)return;if(b)return;if(dI.length>0&&!vG)return;if(["exit","quit",":q",":q!",":wq",":wq!"].includes(hG.trim()))fHN();let GZ=hG;if(P){let gG=hVl(P);if(GZ.includes(gG))GZ=GZ.replace(gG,P)}H(""),A("prompt"),DI(),VI(null),NI(null),g((gG)=>gG+1),z(!0);let xZ=new AbortController;k(xZ);let tG=await G2(),EG=await jFI(GZ,h,V,{options:{commands:I,forkNumber:G,messageLogName:Z,tools:X,verbose:Y,slowAndCapableModel:tG,maxThinkingTokens:0},messageId:void 0,abortController:xZ,readFileTimestamps:_,setForkConvoWithMessagesOnTheNextRender:n},EI??null);if(EG.length)W(EG,xZ);else{Zg(hG),sI();return}for(let gG of EG)if(gG.type==="user"){let _G=h==="bash"?`!${hG}`:hG;Zg(_G),sI()}}function BG(hG){A("prompt"),VI(hG)}function CG(hG){let vG=hG.replace(/\r/g,`
2059
+ `);if(b.length<5)return[];return b}catch(I){return DG(I),[]}}var bVl,C1I;var dSI=a(async()=>{MW();k2();QW();Ul();wY();a5();await B0();bVl=SHN(THN);C1I=cb(async()=>{let I=rZ(),G=Ob(),Z=Date.now(),l=G.exampleFilesGeneratedAt??0,b=604800000;if(Z-l>604800000)G.exampleFiles=[];let W={...I,numStartups:(I.numStartups??0)+1};if(XW(W),!G.exampleFiles?.length)iHN().then((Y)=>{if(Y.length)pN({...Ob(),exampleFiles:Y,exampleFilesGeneratedAt:Date.now()})});let N=G.exampleFiles?.length?Hz(G.exampleFiles):"<filepath>";return["fix lint errors","fix typecheck errors",`how does ${N} work?`,`refactor ${N}`,"how do I log an error?",`edit ${N} to...`,`write a test for ${N}`,"create a util logging.py that..."]})});function mSI(){return Ob().history??[]}function Zg(I){let G=Ob(),Z=G.history??[];if(Z[0]===I)return;Z.unshift(I),pN({...G,history:Z.slice(0,PHN)})}var PHN=100;var Lo=a(()=>{MW()});function WVl(I,G){let[Z,l]=QSI.useState(0),[b,W]=QSI.useState(""),N=(d)=>{if(d!==void 0){let Q=d.startsWith("!")?"bash":"prompt",X=Q==="bash"?d.slice(1):d;I(X,Q)}};function Y(){let d=mSI();if(Z<d.length){if(Z===0&&G.trim()!=="")W(G);let Q=Z+1;l(Q),N(d[Z])}}function c(){let d=mSI();if(Z>1){let Q=Z-1;l(Q),N(d[Q-1])}else if(Z===1)l(0),N(b)}function V(){W(""),l(0)}return{historyIndex:Z,setHistoryIndex:l,onHistoryUp:Y,onHistoryDown:c,resetHistory:V}}var QSI;var NVl=a(()=>{Lo();QSI=hI(YG(),1)});function YVl({commands:I,onInputChange:G,onSubmit:Z,setCursorOffset:l}){let[b,W]=go.useState([]),[N,Y]=go.useState(-1);function c(d){if(d.startsWith("/")){let Q=d.slice(1).toLowerCase(),R=I.filter((h)=>!h.isHidden).filter((h)=>{let A=[h.userFacingName()];if(h.aliases)A.push(...h.aliases);return A.some((C)=>C.toLowerCase().startsWith(Q))}).map((h)=>h.userFacingName());W(R);let H=N>-1?R.indexOf(b[N]):0;if(H>-1)Y(H);else Y(0)}else W([]),Y(-1)}Mb((d,Q)=>{if(b.length>0){if(Q.downArrow)return Y((X)=>X>=b.length-1?0:X+1),!0;else if(Q.upArrow)return Y((X)=>X<=0?b.length-1:X-1),!0;else if(Q.tab||Q.return&&N>=0){if(N===-1&&Q.tab)Y(0);let X=N>=0?N:0,R=b[X];if(!R)return!0;let H="/"+R+" ";if(G(H),l(H.length),W([]),Y(-1),Q.return){let h=D6(R,I);if(h.type!=="prompt"||(h.argNames??[]).length===0)Z(H,!0)}return!0}}});let V=go.useCallback(()=>{W([]),Y(-1)},[]);return{suggestions:b,selectedSuggestion:N,updateSuggestions:c,clearSuggestions:V}}var go;var cVl=a(async()=>{await gZ([oG(),NB()]);go=hI(YG(),1)});var VVl,p1I;var dVl=a(()=>{klI();VVl=hI(YG(),1);p1I=class p1I extends VVl.Component{constructor(I){super(I);this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(I){BlI(I)}render(){if(this.state.hasError)return null;return this.props.children}}});function XSI({debug:I,isUpdating:G,onChangeIsUpdating:Z,onAutoUpdaterResult:l,autoUpdaterResult:b}){let W=dG(),[N,Y]=y1I.useState({}),c=jY.useCallback(async()=>{if(G)return;let V="1.3.4",d=await _XI(),Q=await aKG();if(Y({global:V,latest:d}),!Q&&V&&d&&!mVl.gte(V,d)){let X=Date.now();Z(!0);let R=await Sn();if(Z(!1),R==="success")JG("tengu_auto_updater_success",{fromVersion:V,toVersion:d,durationMs:String(Date.now()-X)});else JG("tengu_auto_updater_fail",{fromVersion:V,attemptedVersion:d,status:R,durationMs:String(Date.now()-X)});l({version:d,status:R})}},[l]);if(y1I.useEffect(()=>{c()},[c]),qFI(c,1800000),I)return jY.createElement(GI,{flexDirection:"row"},jY.createElement(D,{dimColor:!0},"globalVersion: ",N.global," · latestVersion: ",N.latest));if(!b?.version&&(!N.global||!N.latest))return null;if(!b?.version&&!G)return null;return jY.createElement(GI,{flexDirection:"row"},I&&jY.createElement(D,{dimColor:!0},"globalVersion: ",N.global," · latestVersion: ",N.latest),G&&jY.createElement(jY.Fragment,null,jY.createElement(GI,null,jY.createElement(D,{color:W.secondaryText,dimColor:!0,wrap:"end"},"Auto-updating to v",N.latest,"…"))),b?.status==="success"&&b?.version?jY.createElement(D,{color:W.success},"✓ Update v",b.version," installed · Type ",jY.createElement(D,{bold:!0},"/restart")," ","to apply"):null,(b?.status==="install_failed"||b?.status==="no_permissions")&&jY.createElement(D,{color:W.error},"✗ Auto-update failed · Try ",jY.createElement(D,{bold:!0},"claude doctor")," or"," ",jY.createElement(D,{bold:!0},"npm i -g ","quantwise")))}var jY,mVl,y1I;var QVl=a(async()=>{yl();MW();M$();FTI();TW();await oG();jY=hI(YG(),1),mVl=hI(fx(),1),y1I=hI(YG(),1)});function FSI(I){return(vjI(I??"")-XVl)*0.6}function RSI({tokenUsage:I,model:G}){let Z=dG(),l=vjI(G??"")-XVl,b=l*0.6,W=l*0.8;if(I<b)return null;let N=I>=W;return ao.createElement(GI,{flexDirection:"row"},ao.createElement(D,{color:N?Z.error:Z.warning},"Context low (",Math.max(0,100-Math.round(I/l*100)),"% remaining) · Run /compact to compact & continue"))}var ao,XVl=1e4,dgc;var FVl=a(async()=>{yl();await gZ([oG(),B0()]);ao=hI(YG(),1);dgc=FSI()});function RVl({model:I,messages:G,columns:Z}){let[,l]=u1I.useState(0);u1I.useEffect(()=>{let h=setInterval(()=>l((A)=>A+1),1000);return()=>clearInterval(h)},[]);let b=zj();if(b===0)return null;let W=YE(G),N=z0I(G),Y=a0I(),c=W>0?Math.round(100*N/W):0,V=Z>=80,d=V?I:I.replace(/^claude-/,"").replace(/-\d{8}$/,""),Q=V?`${Df(W)} tokens (${c}% cached)`:`${Df(W)} tkn`,X=V?H6I(b):`$${b.toFixed(2)}`,R=V?bL(Y):bL(Y).replace(/\.(\d)s/,"s");return zo.createElement(GI,{paddingX:2},zo.createElement(D,{dimColor:!0},[d,Q].join(" · ")))}var zo,u1I;var HVl=a(async()=>{mk();await gZ([oG(),B0I()]);zo=hI(YG(),1),u1I=hI(YG(),1)});function hVl(I){return`[Pasted text +${(I.match(/\r\n|\r|\n/g)||[]).length} lines] `}function _HN({commands:I,forkNumber:G,messageLogName:Z,isDisabled:l,isLoading:b,onQuery:W,debug:N,verbose:Y,messages:c,setToolJSX:V,onAutoUpdaterResult:d,autoUpdaterResult:Q,tools:X,input:R,onInputChange:H,mode:h,onModeChange:A,submitCount:C,onSubmitCountChange:g,setIsLoading:z,setAbortController:k,onShowMessageSelector:x,setForkConvoWithMessagesOnTheNextRender:n,readFileTimestamps:_,permissionMode:lI,onPermissionModeChange:t}){let[aI,QI]=M0.useState(!1),[lG,uI]=M0.useState({show:!1}),[ZI,zI]=M0.useState({show:!1}),[EI,VI]=M0.useState(null),[JI,LI]=M0.useState(""),[MI,BI]=M0.useState(""),[FG,f]=M0.useState(R.length),[P,NI]=M0.useState(null),[GG,ZG]=M0.useState({show:!1});M0.useEffect(()=>{C1I().then((hG)=>{BI(`Try "${Hz(hG)}"`)}),G2().then(LI)},[]);let{columns:cG}=NY(),bI=M0.useMemo(()=>Math.max(...I.map((hG)=>hG.userFacingName().length))+5,[I]),{suggestions:dI,selectedSuggestion:CI,updateSuggestions:gI,clearSuggestions:DI}=YVl({commands:I,onInputChange:H,onSubmit:rI,setCursorOffset:f}),UI=M0.useCallback((hG)=>{if(hG.startsWith("!")){A("bash");return}gI(hG),H(hG)},[A,H,gI]),{resetHistory:sI,onHistoryUp:r,onHistoryDown:AI}=WVl((hG,vG)=>{UI(hG),A(vG)},R),yI=()=>{if(dI.length<=1)r()},qI=()=>{if(dI.length<=1)AI()};async function rI(hG,vG=!1){if(hG==="")return;if(l)return;if(b)return;if(dI.length>0&&!vG)return;if(["exit","quit",":q",":q!",":wq",":wq!"].includes(hG.trim()))fHN();let GZ=hG;if(P){let gG=hVl(P);if(GZ.includes(gG))GZ=GZ.replace(gG,P)}H(""),A("prompt"),DI(),VI(null),NI(null),g((gG)=>gG+1),z(!0);let xZ=new AbortController;k(xZ);let tG=await G2(),EG=await jFI(GZ,h,V,{options:{commands:I,forkNumber:G,messageLogName:Z,tools:X,verbose:Y,slowAndCapableModel:tG,maxThinkingTokens:0},messageId:void 0,abortController:xZ,readFileTimestamps:_,setForkConvoWithMessagesOnTheNextRender:n},EI??null);if(EG.length)W(EG,xZ);else{Zg(hG),sI();return}for(let gG of EG)if(gG.type==="user"){let _G=h==="bash"?`!${hG}`:hG;Zg(_G),sI()}}function BG(hG){A("prompt"),VI(hG)}function CG(hG){let vG=hG.replace(/\r/g,`
2060
2060
  `),GZ=hVl(vG),xZ=R.slice(0,FG)+GZ+R.slice(FG);H(xZ),f(FG+GZ.length),NI(vG)}Mb((hG,vG)=>{if(vG.shift&&vG.tab){let GZ=["default","auto-accept-edits","plan-mode"],tG=(GZ.indexOf(lI)+1)%GZ.length,EG=GZ[tG];t(EG),ZG({show:!0,text:`Mode: ${{default:"Default mode (ask for all permissions)","auto-accept-edits":"Auto-accept edits mode (no ask for file edits)","plan-mode":"Plan mode (read-only, creates plans for approval)"}[EG]}`}),setTimeout(()=>{ZG({show:!1})},2000);return}if(R===""&&(vG.escape||vG.backspace||vG.delete))A("prompt");if(vG.escape&&c.length>0&&!R&&!b)x()});let NZ=NY().columns-6,jZ=M0.useMemo(()=>YE(c),[c]),iG=dG();return cl.createElement(GI,{flexDirection:"column"},cl.createElement(GI,{alignItems:"flex-start",justifyContent:"flex-start",borderColor:h==="bash"?iG.bashBorder:iG.secondaryBorder,borderDimColor:!0,borderStyle:"round",marginTop:1,width:"100%"},cl.createElement(GI,{alignItems:"flex-start",alignSelf:"flex-start",flexWrap:"nowrap",justifyContent:"flex-start"},h==="bash"?cl.createElement(D,{color:iG.bashBorder}," ! "):cl.createElement(D,{color:b?iG.secondaryText:void 0}," > ")),cl.createElement(GI,{paddingRight:1,flexGrow:1},cl.createElement(s5,{multiline:!0,onSubmit:rI,onChange:UI,value:R,onHistoryUp:yI,onHistoryDown:qI,onHistoryReset:()=>sI(),placeholder:C>0?void 0:MI,onExit:()=>process.exit(0),onExitMessage:(hG,vG)=>uI({show:hG,key:vG}),onMessage:(hG,vG)=>zI({show:hG,text:vG}),onImagePaste:BG,columns:NZ,isDimmed:l||b,disableCursorMovementForUpDownKeys:dI.length>0,cursorOffset:FG,onChangeCursorOffset:f,onPaste:CG}))),dI.length===0&&cl.createElement(GI,{flexDirection:"row",justifyContent:"space-between",paddingX:2,paddingY:0},cl.createElement(GI,{justifyContent:"flex-start",gap:1},GG.show?cl.createElement(D,{dimColor:!0},GG.text):lG.show?cl.createElement(D,{dimColor:!0},"Press ",lG.key," again to exit"):ZI.show?cl.createElement(D,{dimColor:!0},ZI.text):cl.createElement(cl.Fragment,null,cl.createElement(D,{color:h==="bash"?iG.bashBorder:void 0,dimColor:h!=="bash"},"! for bash mode"),cl.createElement(D,{dimColor:!0},"· / for commands · esc to undo"),cl.createElement(D,{dimColor:!0},"· Shift+Tab to cycle modes"),lI!=="default"&&cl.createElement(D,{dimColor:!0},"· Permission: [",lI==="auto-accept-edits"?"auto-accept":lI,"]"))),cl.createElement(p1I,null,cl.createElement(GI,{justifyContent:"flex-end",gap:1},!Q&&!aI&&!N&&jZ<FSI(JI)&&cl.createElement(D,{dimColor:!0},yK.isEnabled&&X7G()?"shift + ⏎ for newline":"\\⏎ for newline"),N&&cl.createElement(D,{dimColor:!0},`${YE(c)} tokens (${Math.round(1e4*(z0I(c)||1)/(YE(c)||1))/100}% cached)`),cl.createElement(RSI,{tokenUsage:jZ,model:JI}),cl.createElement(XSI,{debug:N,onAutoUpdaterResult:d,autoUpdaterResult:Q,isUpdating:aI,onChangeIsUpdating:QI})))),dI.length>0&&cl.createElement(GI,{flexDirection:"row",justifyContent:"space-between",paddingX:2,paddingY:0},cl.createElement(GI,{flexDirection:"column"},dI.map((hG,vG)=>{let GZ=I.find((xZ)=>xZ.userFacingName()===hG.replace("/",""));return cl.createElement(GI,{key:hG,flexDirection:cG<80?"column":"row"},cl.createElement(GI,{width:cG<80?void 0:bI},cl.createElement(D,{color:vG===CI?iG.suggestion:void 0,dimColor:vG!==CI},"/",hG,GZ?.aliases&&GZ.aliases.length>0&&cl.createElement(D,{dimColor:!0}," (",GZ.aliases.join(", "),")"))),GZ&&cl.createElement(GI,{width:cG-(cG<80?4:bI+4),paddingLeft:cG<80?4:0},cl.createElement(D,{color:vG===CI?iG.suggestion:void 0,dimColor:vG!==CI,wrap:"wrap"},cl.createElement(D,{dimColor:vG!==CI},GZ.description,GZ.type==="prompt"&&GZ.argNames?.length?` (arguments: ${GZ.argNames.join(", ")})`:null))))})),cl.createElement(p1I,null,cl.createElement(GI,{justifyContent:"flex-end",gap:1},cl.createElement(RSI,{tokenUsage:YE(c),model:JI}),cl.createElement(XSI,{debug:N,onAutoUpdaterResult:d,autoUpdaterResult:Q,isUpdating:aI,onChangeIsUpdating:QI})))),cl.createElement(RVl,{model:JI,messages:c,columns:cG}))}function fHN(){IqI(""),process.exit(0)}var cl,M0,wVl;var JVl=a(async()=>{wY();NVl();Lo();dVl();VX();yl();Nm();await gZ([oG(),dSI(),WV(),cVl(),n6(),B0I(),QVl(),FVl(),pw(),dWI(),HVl()]);cl=hI(YG(),1),M0=hI(YG(),1);wVl=M0.memo(_HN)});function EVl(){AVl.useEffect(()=>{let I=Math.round(process.uptime()*1000);JG("tengu_timer",{event:"startup",durationMs:String(I)})},[])}var AVl;var vVl=a(()=>{TW();AVl=hI(YG(),1)});function CVl(){let[I,G]=Bo.useState(()=>{return Bh()?"loading":"missing"}),[Z,l]=Bo.useState(null),b=Bo.useCallback(async()=>{if(IbI()){G("valid");return}let W=Bh();if(!W){G("missing");return}try{let Y=await DnZ(W)?"valid":"invalid";G(Y);return}catch(N){l(N),G("error");return}},[]);return{status:I,reverify:b,error:Z}}var Bo;var pVl=a(async()=>{MW();await B0();Bo=hI(YG(),1)});function yVl(I,G,Z,l,b,W,N){Mb((Y,c)=>{if(!c.escape)return;if(N?.aborted)return;if(!N)return;if(!b)return;if(W)return;JG("tengu_cancel",{}),I(null),G(null),Z(null),l()})}var uVl=a(async()=>{TW();await oG()});function sHN(I){return LVl.useCallback(async(G,Z,l,b)=>{return new Promise((W)=>{function N(){JG("tengu_tool_use_cancelled",{messageID:b.message.id,toolName:G.name})}function Y(){W({result:!1,message:SL}),l.abortController.abort()}if(l.abortController.signal.aborted){N(),Y();return}return Ig(G,Z,l,b).then(async(c)=>{if(c.result){JG("tengu_tool_use_granted_in_config",{messageID:b.message.id,toolName:G.name}),W({result:!0});return}let[V,d]=await Promise.all([G.description(Z),G===wN?T0I(Xs.parse(Z).command,l.abortController.signal):Promise.resolve(null)]);if(l.abortController.signal.aborted){N(),Y();return}let Q=Math.random().toString(36).slice(2,10),X=!1,R=(H)=>{if(X)return;X=!0,I(null),eW.removePendingPermission(Q),W(H)};I({assistantMessage:b,tool:G,description:V,input:Z,commandPrefix:d,riskScore:null,onAbort(){N(),JG("tengu_tool_use_rejected_in_prompt",{messageID:b.message.id,toolName:G.name}),R({result:!1,message:SL}),l.abortController.abort()},onAllow(H){if(H==="permanent")JG("tengu_tool_use_granted_in_prompt_permanent",{messageID:b.message.id,toolName:G.name});else JG("tengu_tool_use_granted_in_prompt_temporary",{messageID:b.message.id,toolName:G.name});R({result:!0})},onReject(){JG("tengu_tool_use_rejected_in_prompt",{messageID:b.message.id,toolName:G.name}),R({result:!1,message:SL}),l.abortController.abort()}}),eW.addPendingPermission({requestId:Q,toolName:G.userFacingName(Z),description:V,input:Z,onAllow(H){if(H==="permanent")JG("tengu_tool_use_granted_in_prompt_permanent",{messageID:b.message.id,toolName:G.name});else JG("tengu_tool_use_granted_in_prompt_temporary",{messageID:b.message.id,toolName:G.name});R({result:!0})},onReject(){JG("tengu_tool_use_rejected_in_prompt",{messageID:b.message.id,toolName:G.name}),R({result:!1,message:SL}),l.abortController.abort()},savePermissionFn:()=>eJ(G,Z,d?.prefix??null)})}).catch((c)=>{if(c instanceof iM)N(),Y();else DG(c)})})},[I])}var LVl,gVl;var aVl=a(async()=>{TW();_M();Ul();bB();await gZ([P3(),RH(),Tf(),WV()]);LVl=hI(YG(),1);gVl=sHN});function BVl(I,G,Z){zVl.useEffect(()=>{xM(Fu(G,Z,0),I.filter((l)=>l.type!=="progress"))},[I,G,Z])}var zVl;var kVl=a(()=>{Ul();zVl=hI(YG(),1)});async function $HN(){return await LS("tengu-binary-feedback-config",{sampleFrequency:0})}function L1I(I){return I.message.content.map((G)=>{if(G.type==="text")return"text";if(G.type==="tool_use")return G.name;return G.type})}async function OVl(I,G,Z){let l=I.message.model,b=G.message.model,W=await KlI();JG("tengu_binary_feedback",{msg_id_A:I.message.id,msg_id_B:G.message.id,choice:{"prefer-left":I.message.id,"prefer-right":G.message.id,neither:void 0,"no-preference":void 0}[Z],choiceStr:Z,gitHead:W?.commitHash,gitBranch:W?.branchName,gitRepoRemoteUrl:W?.remoteUrl||void 0,gitRepoIsHeadOnRemote:W?.isHeadOnRemote?.toString(),gitRepoIsClean:W?.isClean?.toString(),modelA:l,modelB:b,temperatureA:String(Hs),temperatureB:String(Hs),seqA:String(L1I(I)),seqB:String(L1I(G))})}async function X8(I,G){JG("tengu_binary_feedback_sampling_decision",{decision:I.toString(),reason:G})}async function UVl(I,G,Z,l){JG("tengu_binary_feedback_display_decision",{decision:I.toString(),reason:l,msg_id_A:G.message.id,msg_id_B:Z.message.id,seqA:String(L1I(G)),seqB:String(L1I(Z))})}function oHN(I,G){if(I.type!==G.type)return!1;if(I.type==="text")return"text"in I&&"text"in G&&I.text===G.text;if(I.type==="tool_use"||I.type==="server_tool_use")return"name"in I&&"name"in G&&"input"in I&&"input"in G&&I.name===G.name&&clI(I.input,G.input);return clI(I,G)}function xVl(I,G){if(I.length!==G.length)return!1;return mCI(I,G).every(([Z,l])=>oHN(Z,l))}async function MVl(){if(process.env.DISABLE_BINARY_FEEDBACK)return X8(!1,"disabled_by_env_var"),!1;if(process.env.FORCE_BINARY_FEEDBACK)return X8(!0,"forced_by_env_var"),!0;if(process.env.USER_TYPE!=="ant")return X8(!1,"not_ant"),!1;let I=await $HN();if(I.sampleFrequency===0)return X8(!1,"top_level_frequency_zero"),!1;if(Math.random()>I.sampleFrequency)return X8(!1,"top_level_frequency_rng"),!1;return X8(!0),!0}function KVl(I,G){let Z=()=>UVl(!0,I,G),l=(Y)=>UVl(!1,I,G,Y),b=I.message.content.filter((Y)=>Y.type!=="thinking"&&Y.type!=="redacted_thinking"),W=G.message.content.filter((Y)=>Y.type!=="thinking"&&Y.type!=="redacted_thinking");if(!(b.some((Y)=>Y.type==="tool_use")||W.some((Y)=>Y.type==="tool_use"))){if(xVl(b,W))return l("contents_identical"),!1;return Z(),!0}if(xVl(b.filter((Y)=>Y.type==="tool_use"),W.filter((Y)=>Y.type==="tool_use")))return l("contents_identical"),!1;return Z(),!0}function DVl(I,G,Z){switch(Z){case"prefer-left":return{message:I,shouldSkipPermissionCheck:!0};case"prefer-right":return{message:G,shouldSkipPermissionCheck:!0};case"no-preference":return{message:Math.random()<0.5?I:G,shouldSkipPermissionCheck:!1};case"neither":return{message:null,shouldSkipPermissionCheck:!1}}}var HSI=a(async()=>{TW();wY();a5();await B0()});async function rHN(I,G,Z){if(process.env.USER_TYPE!=="ant"||!Z||!await MVl()){let W=await G();if(I.abortController.signal.aborted)return{message:null,shouldSkipPermissionCheck:!1};return{message:W,shouldSkipPermissionCheck:!1}}let[l,b]=await Promise.all([G(),G()]);if(I.abortController.signal.aborted)return{message:null,shouldSkipPermissionCheck:!1};if(b.isApiErrorMessage)return{message:l,shouldSkipPermissionCheck:!1};if(l.isApiErrorMessage)return{message:b,shouldSkipPermissionCheck:!1};if(!KVl(l,b))return{message:l,shouldSkipPermissionCheck:!1};return await Z(l,b)}async function*LE(I,G,Z,l,b,W){let N=nnZ(G,Z);function Y(){return ej(x3(I),N,b.options.thinkingConfig??b.options.maxThinkingTokens,b.options.tools,b.abortController.signal,{dangerouslySkipPermissions:b.options.dangerouslySkipPermissions??!1,model:b.options.slowAndCapableModel,prependCLISysprompt:!0})}let c=await rHN(b,Y,W);if(c.message===null){yield vQ(UJ);return}let{message:V,shouldSkipPermissionCheck:d}=c;yield V;let Q=V.message.content.filter((H)=>H.type==="tool_use");if(!Q.length)return;let X=[];if(Q.every((H)=>b.options.tools.find((h)=>h.name===H.name)?.isReadOnly())){for await(let H of eHN(Q,V,l,b,d))if(yield H,H.type==="user")X.push(H)}else for await(let H of IhN(Q,V,l,b,d))if(yield H,H.type==="user")X.push(H);if(b.abortController.signal.aborted){yield vQ(wL);return}let R=X.sort((H,h)=>{let A=Q.findIndex((g)=>g.id===H.message.content[0].id),C=Q.findIndex((g)=>g.id===h.message.content[0].id);return A-C});yield*await LE([...I,V,...R],G,Z,l,b,W)}async function*eHN(I,G,Z,l,b){yield*_nZ(I.map((W)=>jVl(W,new Set(I.map((N)=>N.id)),G,Z,l,b)),tHN)}async function*IhN(I,G,Z,l,b){for(let W of I)yield*jVl(W,new Set(I.map((N)=>N.id)),G,Z,l,b)}async function*jVl(I,G,Z,l,b,W){let N=I.name,Y=b.options.tools.find((V)=>V.name===N);if(!Y){JG("tengu_tool_use_error",{error:`No such tool available: ${N}`,messageID:Z.message.id,toolName:N,toolUseID:I.id}),yield MY([{type:"tool_result",content:`Error: No such tool available: ${N}`,is_error:!0,tool_use_id:I.id}]);return}let c=I.input;try{if(b.abortController.signal.aborted){JG("tengu_tool_use_cancelled",{toolName:Y.name,toolUseID:I.id}),yield MY([VeZ(I.id)]);return}for await(let V of ZhN(Y,I.id,G,c,b,l,Z,W))yield V}catch(V){DG(V)}}function GhN(I,G){switch(I.name){case wN.name:{let{command:Z,timeout:l}=wN.inputSchema.parse(G);return{command:Z.replace(`cd ${bZ()} && `,""),...l?{timeout:l}:{}}}default:return G}}async function*ZhN(I,G,Z,l,b,W,N,Y){let c=I.inputSchema.safeParse(l);if(!c.success){JG("tengu_tool_use_error",{error:`InputValidationError: ${c.error.message}`,messageID:N.message.id,toolName:I.name,toolInput:JSON.stringify(l).slice(0,200)}),yield MY([{type:"tool_result",content:`InputValidationError: ${c.error.message}`,is_error:!0,tool_use_id:G}]);return}let V=GhN(I,l),d=await I.validateInput?.(V,b);if(d?.result===!1){JG("tengu_tool_use_error",{error:d?.message.slice(0,2000),messageID:N.message.id,toolName:I.name,toolInput:JSON.stringify(l).slice(0,200),...d?.meta??{}}),yield MY([{type:"tool_result",content:d.message,is_error:!0,tool_use_id:G}]);return}let Q=Y?{result:!0}:await W(I,V,b,N);if(Q.result===!1){yield MY([{type:"tool_result",content:Q.message,is_error:!0,tool_use_id:G}]);return}try{let X=I.call(V,b,W);for await(let R of X)switch(R.type){case"result":JG("tengu_tool_use_success",{messageID:N.message.id,toolName:I.name}),yield MY([{type:"tool_result",content:R.resultForAssistant,tool_use_id:G}],{data:R.data,resultForAssistant:R.resultForAssistant});return;case"progress":JG("tengu_tool_use_progress",{messageID:N.message.id,toolName:I.name}),yield ceZ(G,Z,R.content,R.normalizedMessages,R.tools)}}catch(X){let R=lhN(X);DG(X),JG("tengu_tool_use_error",{error:R.slice(0,2000),messageID:N.message.id,toolName:I.name,toolInput:JSON.stringify(l).slice(0,1000)}),yield MY([{type:"tool_result",content:R,is_error:!0,tool_use_id:G}])}}function lhN(I){if(!(I instanceof Error))return String(I);let G=[I.message];if("stderr"in I&&typeof I.stderr==="string")G.push(I.stderr);if("stdout"in I&&typeof I.stdout==="string")G.push(I.stdout);let Z=G.filter(Boolean).join(`
2061
2061
  `);if(Z.length<=1e4)return Z;let l=5000,b=Z.slice(0,l),W=Z.slice(-l);return`${b}
2062
2062
 
@@ -2759,13 +2759,13 @@ Close the active psql session.
2759
2759
  `).length} lines truncated] ...
2760
2760
 
2761
2761
  ${l}`;return{totalLines:I.split(`
2762
- `).length,truncatedContent:b}}function $1l(I){return{host:I.host,port:I.port,database:I.database,user:I.user,password:I.password}}function YpN(I){if(!I.isAlive)return"disconnected";return"connected"}var o1l={name:"Psql",async description({action:I,command:G}){switch(I){case"connect":return"Connect to PostgreSQL database";case"query":return`psql: ${G||"execute query"}`;case"disconnect":return"Disconnect from PostgreSQL";default:return"PostgreSQL operation"}},async prompt(){return f1l},isReadOnly(){return!1},inputSchema:WpN,userFacingName({action:I}={}){if(I)return`Psql (${I})`;return"Psql"},async isEnabled(){try{return lpN("which psql",{stdio:"ignore"}),!0}catch{return!1}},needsPermissions(){return!0},async validateInput({action:I,command:G,host:Z,port:l,database:b,user:W,password:N}){switch(I){case"connect":return{result:!0};case"query":{if(!G)return{result:!1,message:"command is required for query action"};let Y=G.trim();if(Y.startsWith("\\!"))return{result:!1,message:"Shell escape commands are blocked. Use the Bash tool for shell commands."};if(/copy\s+.*\s+from\s+program/i.test(Y))return{result:!1,message:"COPY ... FROM PROGRAM is blocked for security reasons."};let c=PF.getActive($1l({host:Z,port:l,database:b,user:W,password:N}));if(!c||!c.isAlive)return{result:!1,message:"No active psql session. Use connect first."};return{result:!0}}case"disconnect":return{result:!0};default:return{result:!1,message:`Unknown action: ${I}`}}},renderToolUseMessage({action:I,command:G,database:Z,host:l}){switch(I){case"connect":{let b=Z||"default",W=l?`@${l}`:"";return`psql connect ${b}${W}`}case"query":return`psql> ${G}`;case"disconnect":return"psql disconnect";default:return`psql ${I}`}},renderToolUseRejectedMessage(){return Bt.createElement(gW,null)},renderToolResultMessage(I,{verbose:G}){return Bt.createElement(s1l,{content:I,verbose:G})},renderResultForAssistant({output:I,sessionStatus:G,interrupted:Z}){let l=[];if(I.trim())l.push(I.trim());let b=[];if(G)b.push(`Session: ${G}`);if(Z)b.push("Command was interrupted");if(b.length>0)l.push(`[${b.join(" | ")}]`);return l.join(bpN)||"(No output)"},async*call({action:I,host:G,port:Z,database:l,user:b,password:W,command:N,timeout:Y},{abortController:c}){let V=$1l({host:G,port:Z,database:l,user:b,password:W}),d,Q="",X=!1;try{switch(I){case"connect":{d=PF.getInstance(V);let C=await d.connect();Q=C.output,X=C.interrupted;break}case"query":{let C=PF.getActive(V);if(!C||!C.isAlive){Q="Error: No active psql session. Use connect first.",d=PF.getInstance(V);break}d=C;let g=await d.exec(N,c.signal,Y);Q=g.output,X=g.interrupted;break}case"disconnect":{let C=PF.getActive(V);if(!C){Q="No active psql session.",d=PF.getInstance(V);break}d=C,await d.disconnect(),Q="PostgreSQL session disconnected.";break}default:d=PF.getInstance(V)}}catch(C){DG(C),Q=`Error: ${C instanceof Error?C.message:String(C)}`,d??=PF.getInstance(V)}let R=YpN(d),{totalLines:H,truncatedContent:h}=NpN(Q.trim()),A={output:h,outputLines:H,sessionStatus:R,interrupted:X};yield{type:"result",resultForAssistant:this.renderResultForAssistant(A),data:A}}};wY();MW();await gZ([iTI(),jk()]);var B1I=()=>{return[$3,wN,J2l,v2l,L2l,CQ,cR,OF,o1,pQ,O0,RL,kX,k2l,O2l,T2l,GU,AQl,q1l,P1l,o1l]},bg=cb(async(I)=>{let G=k5()?[]:await xXI(),Z=[...B1I(),...G];if(I)Z.push(a2l);if(!k5())Z.push(Jo);let l=await Promise.all(Z.map((b)=>b.isEnabled()));return Z.filter((b,W)=>l[W])}),F2l=cb(async()=>{let I=B1I().filter((Z)=>Z.isReadOnly()),G=await Promise.all(I.map((Z)=>Z.isEnabled()));return I.filter((Z,l)=>G[l])});MW();Ul();await gZ([QFI(),RqI(),kqI()]);import{cwd as s2}from"process";yl();MW();TW();QW();await gZ([oG(),_d(),mX(),JNI()]);var Cm=hI(YG(),1);import{homedir as cpN}from"os";function t1l({onDone:I}){let G=dG();Cm.default.useEffect(()=>{JG("trust_dialog_shown",{})},[]);function Z(b){let W=Ob();switch(b){case"yes":{let N=cpN()===bZ();if(JG("trust_dialog_accept",{isHomeDir:String(N)}),!N)pN({...W,hasTrustDialogAccepted:!0});I();break}case"no":{process.exit(1);break}}}let l=zY(()=>process.exit(0));return Mb((b,W)=>{if(W.escape){process.exit(0);return}}),Cm.default.createElement(Cm.default.Fragment,null,Cm.default.createElement(GI,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:G.warning},Cm.default.createElement(D,{bold:!0,color:G.warning},"Do you trust the files in this folder?"),Cm.default.createElement(D,{bold:!0},process.cwd()),Cm.default.createElement(GI,{flexDirection:"column",gap:1},Cm.default.createElement(D,null,yN," may read files in this folder. Reading untrusted files may lead to ",yN," ","to behave in an unexpected ways."),Cm.default.createElement(D,null,"With your permission ",yN," may execute files in this folder. Executing untrusted code is unsafe."),Cm.default.createElement(tu,{url:"https://docs.anthropic.com/s/claude-code-security"})),Cm.default.createElement($Y,{options:[{label:"Yes, proceed",value:"yes"},{label:"No, exit",value:"no"}],onChange:(b)=>Z(b)})),Cm.default.createElement(GI,{marginLeft:3},Cm.default.createElement(D,{dimColor:!0},l.pending?Cm.default.createElement(Cm.default.Fragment,null,"Press ",l.keyName," again to exit"):Cm.default.createElement(Cm.default.Fragment,null,"Enter to confirm · Esc to exit"))))}MW();Nm();Ul();Ul();Ul();await rqI();var gU=hI(YG(),1);function m_I({context:I,type:G,logNumber:Z}){let[l,b]=gU.useState([]),[W,N]=gU.useState(!1);gU.useEffect(()=>{OM(G==="messages"?VF.messages():VF.errors()).then((c)=>{if(Z!==void 0){let V=c[Z>=0?Z:0];if(V)console.log(JSON.stringify(V.messages,null,2)),process.exit(0);else console.error("No log found at index",Z),process.exit(1)}b(c)}).catch((c)=>{if(DG(c),Z!==void 0)process.exit(1);else I.unmount?.()})},[I,G,Z]);function Y(c){let V=l[c];if(!V)return;N(!0),setTimeout(()=>{console.log(JSON.stringify(V.messages,null,2)),process.exit(0)},100)}if(Z!==void 0)return null;if(W)return null;return gU.default.createElement(UFI,{logs:l,onSelect:Y})}await ITI();var tnc=hI(khI(),1);enI();KJ();l7I();Ls();class Q_I{constructor(I){this._server=I}requestStream(I,G,Z){return this._server.requestStream(I,G,Z)}async getTask(I,G){return this._server.getTask({taskId:I},G)}async getTaskResult(I,G,Z){return this._server.getTaskResult({taskId:I},G,Z)}async listTasks(I,G){return this._server.listTasks(I?{cursor:I}:void 0,G)}async cancelTask(I,G){return this._server.cancelTask({taskId:I},G)}}class X_I extends Ss{constructor(I,G){super(G);if(this._serverInfo=I,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(ns.options.map((Z,l)=>[Z,l])),this.isMessageIgnored=(Z,l)=>{let b=this._loggingLevels.get(l);return b?this.LOG_LEVEL_SEVERITY.get(Z)<this.LOG_LEVEL_SEVERITY.get(b):!1},this._capabilities=G?.capabilities??{},this._instructions=G?.instructions,this._jsonSchemaValidator=G?.jsonSchemaValidator??new X$,this.setRequestHandler(znI,(Z)=>this._oninitialize(Z)),this.setNotificationHandler(QQI,()=>this.oninitialized?.()),this._capabilities.logging)this.setRequestHandler(_nI,async(Z,l)=>{let b=l.sessionId||l.requestInfo?.headers["mcp-session-id"]||void 0,{level:W}=Z.params,N=ns.safeParse(W);if(N.success)this._loggingLevels.set(b,N.data);return{}})}get experimental(){if(!this._experimental)this._experimental={tasks:new Q_I(this)};return this._experimental}registerCapabilities(I){if(this.transport)throw Error("Cannot register capabilities after connecting to transport");this._capabilities=EQI(this._capabilities,I)}setRequestHandler(I,G){let l=cn(I)?.method;if(!l)throw Error("Schema is missing a method literal");let b;if(pL(l)){let N=l;b=N._zod?.def?.value??N.value}else{let N=l;b=N._def?.value??N.value}if(typeof b!=="string")throw Error("Schema method literal must be a string");if(b==="tools/call"){let N=async(Y,c)=>{let V=MF(js,Y);if(!V.success){let R=V.error instanceof Error?V.error.message:String(V.error);throw new Vb(qb.InvalidParams,`Invalid tools/call request: ${R}`)}let{params:d}=V.data,Q=await Promise.resolve(G(Y,c));if(d.task){let R=MF(y3,Q);if(!R.success){let H=R.error instanceof Error?R.error.message:String(R.error);throw new Vb(qb.InvalidParams,`Invalid task creation result: ${H}`)}return R.data}let X=MF(XE,Q);if(!X.success){let R=X.error instanceof Error?X.error.message:String(X.error);throw new Vb(qb.InvalidParams,`Invalid tools/call result: ${R}`)}return X.data};return super.setRequestHandler(I,N)}return super.setRequestHandler(I,G)}assertCapabilityForMethod(I){switch(I){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw Error(`Client does not support sampling (required for ${I})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw Error(`Client does not support elicitation (required for ${I})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw Error(`Client does not support listing roots (required for ${I})`);break;case"ping":break}}assertNotificationCapability(I){switch(I){case"notifications/message":if(!this._capabilities.logging)throw Error(`Server does not support logging (required for ${I})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw Error(`Server does not support notifying about resources (required for ${I})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw Error(`Server does not support notifying of tool list changes (required for ${I})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw Error(`Server does not support notifying of prompt list changes (required for ${I})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw Error(`Client does not support URL elicitation (required for ${I})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(I){if(!this._capabilities)return;switch(I){case"completion/complete":if(!this._capabilities.completions)throw Error(`Server does not support completions (required for ${I})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw Error(`Server does not support logging (required for ${I})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw Error(`Server does not support prompts (required for ${I})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw Error(`Server does not support resources (required for ${I})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw Error(`Server does not support tools (required for ${I})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw Error(`Server does not support tasks capability (required for ${I})`);break;case"ping":case"initialize":break}}assertTaskCapability(I){YXI(this._clientCapabilities?.tasks?.requests,I,"Client")}assertTaskHandlerCapability(I){if(!this._capabilities)return;NXI(this._capabilities.tasks?.requests,I,"Server")}async _oninitialize(I){let G=I.params.protocolVersion;return this._clientCapabilities=I.params.capabilities,this._clientVersion=I.params.clientInfo,{protocolVersion:cQI.includes(G)?G:yL,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},p3)}async createMessage(I,G){if(I.tools||I.toolChoice){if(!this._clientCapabilities?.sampling?.tools)throw Error("Client does not support sampling tools capability.")}if(I.messages.length>0){let Z=I.messages[I.messages.length-1],l=Array.isArray(Z.content)?Z.content:[Z.content],b=l.some((c)=>c.type==="tool_result"),W=I.messages.length>1?I.messages[I.messages.length-2]:void 0,N=W?Array.isArray(W.content)?W.content:[W.content]:[],Y=N.some((c)=>c.type==="tool_use");if(b){if(l.some((c)=>c.type!=="tool_result"))throw Error("The last message must contain only tool_result content if any is present");if(!Y)throw Error("tool_result blocks are not matching any tool_use from the previous message")}if(Y){let c=new Set(N.filter((d)=>d.type==="tool_use").map((d)=>d.id)),V=new Set(l.filter((d)=>d.type==="tool_result").map((d)=>d.toolUseId));if(c.size!==V.size||![...c].every((d)=>V.has(d)))throw Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}if(I.tools)return this.request({method:"sampling/createMessage",params:I},Ts,G);return this.request({method:"sampling/createMessage",params:I},qs,G)}async elicitInput(I,G){switch(I.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw Error("Client does not support url elicitation.");let l=I;return this.request({method:"elicitation/create",params:l},Qn,G)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw Error("Client does not support form elicitation.");let l=I.mode==="form"?I:{...I,mode:"form"},b=await this.request({method:"elicitation/create",params:l},Qn,G);if(b.action==="accept"&&b.content&&l.requestedSchema)try{let N=this._jsonSchemaValidator.getValidator(l.requestedSchema)(b.content);if(!N.valid)throw new Vb(qb.InvalidParams,`Elicitation response content does not match requested schema: ${N.errorMessage}`)}catch(W){if(W instanceof Vb)throw W;throw new Vb(qb.InternalError,`Error validating elicitation response: ${W instanceof Error?W.message:String(W)}`)}return b}}}createElicitationCompletionNotifier(I,G){if(!this._clientCapabilities?.elicitation?.url)throw Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:I}},G)}async listRoots(I,G){return this.request({method:"roots/list",params:I},onI,G)}async sendLoggingMessage(I,G){if(this._capabilities.logging){if(!this.isMessageIgnored(I.level,G))return this.notification({method:"notifications/message",params:I})}}async sendResourceUpdated(I){return this.notification({method:"notifications/resources/updated",params:I})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}}F7I();import r1l from"node:process";class F_I{constructor(I=r1l.stdin,G=r1l.stdout){this._stdin=I,this._stdout=G,this._readBuffer=new F$,this._started=!1,this._ondata=(Z)=>{this._readBuffer.append(Z),this.processReadBuffer()},this._onerror=(Z)=>{this.onerror?.(Z)}}async start(){if(this._started)throw Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){while(!0)try{let I=this._readBuffer.readMessage();if(I===null)break;this.onmessage?.(I)}catch(I){this.onerror?.(I)}}async close(){if(this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0)this._stdin.pause();this._readBuffer.clear(),this.onclose?.()}send(I){return new Promise((G)=>{let Z=mXI(I);if(this._stdout.write(Z))G();else this._stdout.once("drain",G)})}}KJ();nf();QW();Nm();Ul();In();await gZ([P3(),hL(),RH(),tL(),HL(),fL(),IU(),i3(),_qI()]);var VpN={readFileTimestamps:{}},dpN=[gFI],R_I=[$3,wN,pQ,o1,CQ,cR,O0,OF];async function e1l(I){await H4(I);let G=new X_I({name:"claude/tengu",version:"1.3.2"},{capabilities:{tools:{}}});G.setRequestHandler(inI,async()=>{return{tools:await Promise.all(R_I.map(async(b)=>({name:b.name,description:await b.description({}),inputSchema:NL(b.inputSchema)})))}}),G.setRequestHandler(js,async(l)=>{let{name:b,arguments:W}=l.params,N=R_I.find((Y)=>Y.name===b);if(!N)throw Error(`Tool ${b} not found`);try{if(!await N.isEnabled())throw Error(`Tool ${b} is not enabled`);let Y=await G2(),c={abortController:new AbortController,options:{commands:dpN,tools:R_I,slowAndCapableModel:Y,forkNumber:0,messageLogName:"unused",maxThinkingTokens:0},messageId:void 0,readFileTimestamps:VpN.readFileTimestamps},V=await N.validateInput?.(W??{},c);if(V&&!V.result)throw Error(`Tool ${b} input is invalid: ${V.message}`);let d=N.call(W??{},c,Ig),Q=await EL(d);if(Q.type!=="result")throw Error(`Tool ${b} did not return a result`);let X=Q.resultForAssistant;return{content:Array.isArray(X)?X.map((R)=>({type:"text",text:typeof R==="string"?R:typeof R==="object"&&R!==null&&("text"in R)&&typeof R.text==="string"?R.text:JSON.stringify(R)})):[{type:"text",text:typeof X==="string"?X:JSON.stringify(X)}]}}catch(Y){return DG(Y),{isError:!0,content:[{type:"text",text:`Error: ${Y instanceof Error?Y.message:String(Y)}`}]}}});async function Z(){let l=new F_I;await G.connect(l)}return await Z()}k2();QW();Ul();tqI();await NB();Ul();Ul();import{promises as IRl}from"fs";import{join as mpN}from"path";var QpN=2592000000;function XpN(I){let G=I.split(".")[0].replace(/T(\d{2})-(\d{2})-(\d{2})-(\d{3})Z/,"T$1:$2:$3.$4Z");return new Date(G)}async function FpN(){let I=VF.messages(),G=VF.errors(),Z=new Date(Date.now()-QpN),l={messages:0,errors:0};for(let b of[I,G])try{let W=await IRl.readdir(b);for(let N of W)try{if(XpN(N)<Z)if(await IRl.unlink(mpN(b,N)),b===I)l.messages++;else l.errors++}catch(Y){DG(`Failed to process file ${N}: ${Y instanceof Error?Y.message:String(Y)}`)}}catch(W){if(W instanceof Error&&"code"in W&&W.code!=="ENOENT")DG(`Failed to cleanup directory ${b}: ${W instanceof Error?W.message:String(W)}`)}return l}function GRl(){setImmediate(FpN).unref()}MW();var ZRl={getCurrentProjectConfig:Ob,saveCurrentProjectConfig:pN};function lRl(I,G=ZRl){let Z=G.getCurrentProjectConfig();return`Allowed tools for ${I}:
2762
+ `).length,truncatedContent:b}}function $1l(I){return{host:I.host,port:I.port,database:I.database,user:I.user,password:I.password}}function YpN(I){if(!I.isAlive)return"disconnected";return"connected"}var o1l={name:"Psql",async description({action:I,command:G}){switch(I){case"connect":return"Connect to PostgreSQL database";case"query":return`psql: ${G||"execute query"}`;case"disconnect":return"Disconnect from PostgreSQL";default:return"PostgreSQL operation"}},async prompt(){return f1l},isReadOnly(){return!1},inputSchema:WpN,userFacingName({action:I}={}){if(I)return`Psql (${I})`;return"Psql"},async isEnabled(){try{return lpN("which psql",{stdio:"ignore"}),!0}catch{return!1}},needsPermissions(){return!0},async validateInput({action:I,command:G,host:Z,port:l,database:b,user:W,password:N}){switch(I){case"connect":return{result:!0};case"query":{if(!G)return{result:!1,message:"command is required for query action"};let Y=G.trim();if(Y.startsWith("\\!"))return{result:!1,message:"Shell escape commands are blocked. Use the Bash tool for shell commands."};if(/copy\s+.*\s+from\s+program/i.test(Y))return{result:!1,message:"COPY ... FROM PROGRAM is blocked for security reasons."};let c=PF.getActive($1l({host:Z,port:l,database:b,user:W,password:N}));if(!c||!c.isAlive)return{result:!1,message:"No active psql session. Use connect first."};return{result:!0}}case"disconnect":return{result:!0};default:return{result:!1,message:`Unknown action: ${I}`}}},renderToolUseMessage({action:I,command:G,database:Z,host:l}){switch(I){case"connect":{let b=Z||"default",W=l?`@${l}`:"";return`psql connect ${b}${W}`}case"query":return`psql> ${G}`;case"disconnect":return"psql disconnect";default:return`psql ${I}`}},renderToolUseRejectedMessage(){return Bt.createElement(gW,null)},renderToolResultMessage(I,{verbose:G}){return Bt.createElement(s1l,{content:I,verbose:G})},renderResultForAssistant({output:I,sessionStatus:G,interrupted:Z}){let l=[];if(I.trim())l.push(I.trim());let b=[];if(G)b.push(`Session: ${G}`);if(Z)b.push("Command was interrupted");if(b.length>0)l.push(`[${b.join(" | ")}]`);return l.join(bpN)||"(No output)"},async*call({action:I,host:G,port:Z,database:l,user:b,password:W,command:N,timeout:Y},{abortController:c}){let V=$1l({host:G,port:Z,database:l,user:b,password:W}),d,Q="",X=!1;try{switch(I){case"connect":{d=PF.getInstance(V);let C=await d.connect();Q=C.output,X=C.interrupted;break}case"query":{let C=PF.getActive(V);if(!C||!C.isAlive){Q="Error: No active psql session. Use connect first.",d=PF.getInstance(V);break}d=C;let g=await d.exec(N,c.signal,Y);Q=g.output,X=g.interrupted;break}case"disconnect":{let C=PF.getActive(V);if(!C){Q="No active psql session.",d=PF.getInstance(V);break}d=C,await d.disconnect(),Q="PostgreSQL session disconnected.";break}default:d=PF.getInstance(V)}}catch(C){DG(C),Q=`Error: ${C instanceof Error?C.message:String(C)}`,d??=PF.getInstance(V)}let R=YpN(d),{totalLines:H,truncatedContent:h}=NpN(Q.trim()),A={output:h,outputLines:H,sessionStatus:R,interrupted:X};yield{type:"result",resultForAssistant:this.renderResultForAssistant(A),data:A}}};wY();MW();await gZ([iTI(),jk()]);var B1I=()=>{return[$3,wN,J2l,v2l,L2l,CQ,cR,OF,o1,pQ,O0,RL,kX,k2l,O2l,T2l,GU,AQl,q1l,P1l,o1l]},bg=cb(async(I)=>{let G=k5()?[]:await xXI(),Z=[...B1I(),...G];if(I)Z.push(a2l);if(!k5())Z.push(Jo);let l=await Promise.all(Z.map((b)=>b.isEnabled()));return Z.filter((b,W)=>l[W])}),F2l=cb(async()=>{let I=B1I().filter((Z)=>Z.isReadOnly()),G=await Promise.all(I.map((Z)=>Z.isEnabled()));return I.filter((Z,l)=>G[l])});MW();Ul();await gZ([QFI(),RqI(),kqI()]);import{cwd as s2}from"process";yl();MW();TW();QW();await gZ([oG(),_d(),mX(),JNI()]);var Cm=hI(YG(),1);import{homedir as cpN}from"os";function t1l({onDone:I}){let G=dG();Cm.default.useEffect(()=>{JG("trust_dialog_shown",{})},[]);function Z(b){let W=Ob();switch(b){case"yes":{let N=cpN()===bZ();if(JG("trust_dialog_accept",{isHomeDir:String(N)}),!N)pN({...W,hasTrustDialogAccepted:!0});I();break}case"no":{process.exit(1);break}}}let l=zY(()=>process.exit(0));return Mb((b,W)=>{if(W.escape){process.exit(0);return}}),Cm.default.createElement(Cm.default.Fragment,null,Cm.default.createElement(GI,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:G.warning},Cm.default.createElement(D,{bold:!0,color:G.warning},"Do you trust the files in this folder?"),Cm.default.createElement(D,{bold:!0},process.cwd()),Cm.default.createElement(GI,{flexDirection:"column",gap:1},Cm.default.createElement(D,null,yN," may read files in this folder. Reading untrusted files may lead to ",yN," ","to behave in an unexpected ways."),Cm.default.createElement(D,null,"With your permission ",yN," may execute files in this folder. Executing untrusted code is unsafe."),Cm.default.createElement(tu,{url:"https://docs.anthropic.com/s/claude-code-security"})),Cm.default.createElement($Y,{options:[{label:"Yes, proceed",value:"yes"},{label:"No, exit",value:"no"}],onChange:(b)=>Z(b)})),Cm.default.createElement(GI,{marginLeft:3},Cm.default.createElement(D,{dimColor:!0},l.pending?Cm.default.createElement(Cm.default.Fragment,null,"Press ",l.keyName," again to exit"):Cm.default.createElement(Cm.default.Fragment,null,"Enter to confirm · Esc to exit"))))}MW();Nm();Ul();Ul();Ul();await rqI();var gU=hI(YG(),1);function m_I({context:I,type:G,logNumber:Z}){let[l,b]=gU.useState([]),[W,N]=gU.useState(!1);gU.useEffect(()=>{OM(G==="messages"?VF.messages():VF.errors()).then((c)=>{if(Z!==void 0){let V=c[Z>=0?Z:0];if(V)console.log(JSON.stringify(V.messages,null,2)),process.exit(0);else console.error("No log found at index",Z),process.exit(1)}b(c)}).catch((c)=>{if(DG(c),Z!==void 0)process.exit(1);else I.unmount?.()})},[I,G,Z]);function Y(c){let V=l[c];if(!V)return;N(!0),setTimeout(()=>{console.log(JSON.stringify(V.messages,null,2)),process.exit(0)},100)}if(Z!==void 0)return null;if(W)return null;return gU.default.createElement(UFI,{logs:l,onSelect:Y})}await ITI();var tnc=hI(khI(),1);enI();KJ();l7I();Ls();class Q_I{constructor(I){this._server=I}requestStream(I,G,Z){return this._server.requestStream(I,G,Z)}async getTask(I,G){return this._server.getTask({taskId:I},G)}async getTaskResult(I,G,Z){return this._server.getTaskResult({taskId:I},G,Z)}async listTasks(I,G){return this._server.listTasks(I?{cursor:I}:void 0,G)}async cancelTask(I,G){return this._server.cancelTask({taskId:I},G)}}class X_I extends Ss{constructor(I,G){super(G);if(this._serverInfo=I,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(ns.options.map((Z,l)=>[Z,l])),this.isMessageIgnored=(Z,l)=>{let b=this._loggingLevels.get(l);return b?this.LOG_LEVEL_SEVERITY.get(Z)<this.LOG_LEVEL_SEVERITY.get(b):!1},this._capabilities=G?.capabilities??{},this._instructions=G?.instructions,this._jsonSchemaValidator=G?.jsonSchemaValidator??new X$,this.setRequestHandler(znI,(Z)=>this._oninitialize(Z)),this.setNotificationHandler(QQI,()=>this.oninitialized?.()),this._capabilities.logging)this.setRequestHandler(_nI,async(Z,l)=>{let b=l.sessionId||l.requestInfo?.headers["mcp-session-id"]||void 0,{level:W}=Z.params,N=ns.safeParse(W);if(N.success)this._loggingLevels.set(b,N.data);return{}})}get experimental(){if(!this._experimental)this._experimental={tasks:new Q_I(this)};return this._experimental}registerCapabilities(I){if(this.transport)throw Error("Cannot register capabilities after connecting to transport");this._capabilities=EQI(this._capabilities,I)}setRequestHandler(I,G){let l=cn(I)?.method;if(!l)throw Error("Schema is missing a method literal");let b;if(pL(l)){let N=l;b=N._zod?.def?.value??N.value}else{let N=l;b=N._def?.value??N.value}if(typeof b!=="string")throw Error("Schema method literal must be a string");if(b==="tools/call"){let N=async(Y,c)=>{let V=MF(js,Y);if(!V.success){let R=V.error instanceof Error?V.error.message:String(V.error);throw new Vb(qb.InvalidParams,`Invalid tools/call request: ${R}`)}let{params:d}=V.data,Q=await Promise.resolve(G(Y,c));if(d.task){let R=MF(y3,Q);if(!R.success){let H=R.error instanceof Error?R.error.message:String(R.error);throw new Vb(qb.InvalidParams,`Invalid task creation result: ${H}`)}return R.data}let X=MF(XE,Q);if(!X.success){let R=X.error instanceof Error?X.error.message:String(X.error);throw new Vb(qb.InvalidParams,`Invalid tools/call result: ${R}`)}return X.data};return super.setRequestHandler(I,N)}return super.setRequestHandler(I,G)}assertCapabilityForMethod(I){switch(I){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw Error(`Client does not support sampling (required for ${I})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw Error(`Client does not support elicitation (required for ${I})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw Error(`Client does not support listing roots (required for ${I})`);break;case"ping":break}}assertNotificationCapability(I){switch(I){case"notifications/message":if(!this._capabilities.logging)throw Error(`Server does not support logging (required for ${I})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw Error(`Server does not support notifying about resources (required for ${I})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw Error(`Server does not support notifying of tool list changes (required for ${I})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw Error(`Server does not support notifying of prompt list changes (required for ${I})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw Error(`Client does not support URL elicitation (required for ${I})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(I){if(!this._capabilities)return;switch(I){case"completion/complete":if(!this._capabilities.completions)throw Error(`Server does not support completions (required for ${I})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw Error(`Server does not support logging (required for ${I})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw Error(`Server does not support prompts (required for ${I})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw Error(`Server does not support resources (required for ${I})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw Error(`Server does not support tools (required for ${I})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw Error(`Server does not support tasks capability (required for ${I})`);break;case"ping":case"initialize":break}}assertTaskCapability(I){YXI(this._clientCapabilities?.tasks?.requests,I,"Client")}assertTaskHandlerCapability(I){if(!this._capabilities)return;NXI(this._capabilities.tasks?.requests,I,"Server")}async _oninitialize(I){let G=I.params.protocolVersion;return this._clientCapabilities=I.params.capabilities,this._clientVersion=I.params.clientInfo,{protocolVersion:cQI.includes(G)?G:yL,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},p3)}async createMessage(I,G){if(I.tools||I.toolChoice){if(!this._clientCapabilities?.sampling?.tools)throw Error("Client does not support sampling tools capability.")}if(I.messages.length>0){let Z=I.messages[I.messages.length-1],l=Array.isArray(Z.content)?Z.content:[Z.content],b=l.some((c)=>c.type==="tool_result"),W=I.messages.length>1?I.messages[I.messages.length-2]:void 0,N=W?Array.isArray(W.content)?W.content:[W.content]:[],Y=N.some((c)=>c.type==="tool_use");if(b){if(l.some((c)=>c.type!=="tool_result"))throw Error("The last message must contain only tool_result content if any is present");if(!Y)throw Error("tool_result blocks are not matching any tool_use from the previous message")}if(Y){let c=new Set(N.filter((d)=>d.type==="tool_use").map((d)=>d.id)),V=new Set(l.filter((d)=>d.type==="tool_result").map((d)=>d.toolUseId));if(c.size!==V.size||![...c].every((d)=>V.has(d)))throw Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}if(I.tools)return this.request({method:"sampling/createMessage",params:I},Ts,G);return this.request({method:"sampling/createMessage",params:I},qs,G)}async elicitInput(I,G){switch(I.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw Error("Client does not support url elicitation.");let l=I;return this.request({method:"elicitation/create",params:l},Qn,G)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw Error("Client does not support form elicitation.");let l=I.mode==="form"?I:{...I,mode:"form"},b=await this.request({method:"elicitation/create",params:l},Qn,G);if(b.action==="accept"&&b.content&&l.requestedSchema)try{let N=this._jsonSchemaValidator.getValidator(l.requestedSchema)(b.content);if(!N.valid)throw new Vb(qb.InvalidParams,`Elicitation response content does not match requested schema: ${N.errorMessage}`)}catch(W){if(W instanceof Vb)throw W;throw new Vb(qb.InternalError,`Error validating elicitation response: ${W instanceof Error?W.message:String(W)}`)}return b}}}createElicitationCompletionNotifier(I,G){if(!this._clientCapabilities?.elicitation?.url)throw Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:I}},G)}async listRoots(I,G){return this.request({method:"roots/list",params:I},onI,G)}async sendLoggingMessage(I,G){if(this._capabilities.logging){if(!this.isMessageIgnored(I.level,G))return this.notification({method:"notifications/message",params:I})}}async sendResourceUpdated(I){return this.notification({method:"notifications/resources/updated",params:I})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}}F7I();import r1l from"node:process";class F_I{constructor(I=r1l.stdin,G=r1l.stdout){this._stdin=I,this._stdout=G,this._readBuffer=new F$,this._started=!1,this._ondata=(Z)=>{this._readBuffer.append(Z),this.processReadBuffer()},this._onerror=(Z)=>{this.onerror?.(Z)}}async start(){if(this._started)throw Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){while(!0)try{let I=this._readBuffer.readMessage();if(I===null)break;this.onmessage?.(I)}catch(I){this.onerror?.(I)}}async close(){if(this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0)this._stdin.pause();this._readBuffer.clear(),this.onclose?.()}send(I){return new Promise((G)=>{let Z=mXI(I);if(this._stdout.write(Z))G();else this._stdout.once("drain",G)})}}KJ();nf();QW();Nm();Ul();In();await gZ([P3(),hL(),RH(),tL(),HL(),fL(),IU(),i3(),_qI()]);var VpN={readFileTimestamps:{}},dpN=[gFI],R_I=[$3,wN,pQ,o1,CQ,cR,O0,OF];async function e1l(I){await H4(I);let G=new X_I({name:"claude/tengu",version:"1.3.4"},{capabilities:{tools:{}}});G.setRequestHandler(inI,async()=>{return{tools:await Promise.all(R_I.map(async(b)=>({name:b.name,description:await b.description({}),inputSchema:NL(b.inputSchema)})))}}),G.setRequestHandler(js,async(l)=>{let{name:b,arguments:W}=l.params,N=R_I.find((Y)=>Y.name===b);if(!N)throw Error(`Tool ${b} not found`);try{if(!await N.isEnabled())throw Error(`Tool ${b} is not enabled`);let Y=await G2(),c={abortController:new AbortController,options:{commands:dpN,tools:R_I,slowAndCapableModel:Y,forkNumber:0,messageLogName:"unused",maxThinkingTokens:0},messageId:void 0,readFileTimestamps:VpN.readFileTimestamps},V=await N.validateInput?.(W??{},c);if(V&&!V.result)throw Error(`Tool ${b} input is invalid: ${V.message}`);let d=N.call(W??{},c,Ig),Q=await EL(d);if(Q.type!=="result")throw Error(`Tool ${b} did not return a result`);let X=Q.resultForAssistant;return{content:Array.isArray(X)?X.map((R)=>({type:"text",text:typeof R==="string"?R:typeof R==="object"&&R!==null&&("text"in R)&&typeof R.text==="string"?R.text:JSON.stringify(R)})):[{type:"text",text:typeof X==="string"?X:JSON.stringify(X)}]}}catch(Y){return DG(Y),{isError:!0,content:[{type:"text",text:`Error: ${Y instanceof Error?Y.message:String(Y)}`}]}}});async function Z(){let l=new F_I;await G.connect(l)}return await Z()}k2();QW();Ul();tqI();await NB();Ul();Ul();import{promises as IRl}from"fs";import{join as mpN}from"path";var QpN=2592000000;function XpN(I){let G=I.split(".")[0].replace(/T(\d{2})-(\d{2})-(\d{2})-(\d{3})Z/,"T$1:$2:$3.$4Z");return new Date(G)}async function FpN(){let I=VF.messages(),G=VF.errors(),Z=new Date(Date.now()-QpN),l={messages:0,errors:0};for(let b of[I,G])try{let W=await IRl.readdir(b);for(let N of W)try{if(XpN(N)<Z)if(await IRl.unlink(mpN(b,N)),b===I)l.messages++;else l.errors++}catch(Y){DG(`Failed to process file ${N}: ${Y instanceof Error?Y.message:String(Y)}`)}}catch(W){if(W instanceof Error&&"code"in W&&W.code!=="ENOENT")DG(`Failed to cleanup directory ${b}: ${W instanceof Error?W.message:String(W)}`)}return l}function GRl(){setImmediate(FpN).unref()}MW();var ZRl={getCurrentProjectConfig:Ob,saveCurrentProjectConfig:pN};function lRl(I,G=ZRl){let Z=G.getCurrentProjectConfig();return`Allowed tools for ${I}:
2763
2763
  ${Z.allowedTools.join(`
2764
- `)}`}function bRl(I,G=ZRl){let Z=G.getCurrentProjectConfig(),l=Z.allowedTools.length,b=Z.allowedTools.filter((W)=>W!==I);if(l!==b.length)return Z.allowedTools=b,G.saveCurrentProjectConfig(Z),{success:!0,message:`Removed ${I} from the list of approved tools`};else return{success:!1,message:`${I} was not in the list of approved tools`}}await jk();await oG();var H_I=hI(YG(),1);yl();MW();wY();await gZ([oG(),_d()]);var _F=hI(YG(),1);await gZ([oG(),Si()]);var q8=hI(YG(),1);function TRI(){return q8.default.createElement(q8.default.Fragment,null,q8.default.createElement(D,null,"MCP servers provide additional functionality to Claude. They may execute code, make network requests, or access system resources via tool calls. All tool calls will require your explicit approval before execution. For more information, see"," ",q8.default.createElement(ou,{url:"https://docs.anthropic.com/s/claude-code-mcp"},"MCP documentation")),q8.default.createElement(D,{dimColor:!0},"Remember: You can always change these choices later by running `claude mcp reset-project-choices`"))}await mX();function WRl({serverNames:I,onDone:G}){let Z=dG();function l(W){let N=Ob();if(!N.approvedMcpJsonServers)N.approvedMcpJsonServers=[];if(!N.rejectedMcpJsonServers)N.rejectedMcpJsonServers=[];let[Y,c]=cCI(I,(V)=>W.includes(V));N.approvedMcpJsonServers.push(...Y),N.rejectedMcpJsonServers.push(...c),pN(N),G()}let b=zY(()=>process.exit());return Mb((W,N)=>{if(N.escape){let Y=Ob();if(!Y.rejectedMcpJsonServers)Y.rejectedMcpJsonServers=[];for(let c of I)if(!Y.rejectedMcpJsonServers.includes(c))Y.rejectedMcpJsonServers.push(c);pN(Y),G();return}}),_F.default.createElement(_F.default.Fragment,null,_F.default.createElement(GI,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:Z.warning},_F.default.createElement(D,{bold:!0,color:Z.warning},"New MCP Servers Detected"),_F.default.createElement(D,null,"This project contains a .mcp.json file with ",I.length," MCP servers that require your approval."),_F.default.createElement(TRI,null),_F.default.createElement(D,null,"Please select the servers you want to enable:"),_F.default.createElement(p8G,{options:I.map((W)=>({label:W,value:W})),defaultValue:I,onSubmit:l})),_F.default.createElement(GI,{marginLeft:3},_F.default.createElement(D,{dimColor:!0},b.pending?_F.default.createElement(_F.default.Fragment,null,"Press ",b.keyName," again to exit"):_F.default.createElement(_F.default.Fragment,null,"Space to select · Enter to confirm · Esc to reject all"))))}yl();MW();await gZ([oG(),_d()]);var KX=hI(YG(),1);await mX();function NRl({serverName:I,onDone:G}){let Z=dG();function l(W){let N=Ob();switch(W){case"yes":{if(!N.approvedMcpJsonServers)N.approvedMcpJsonServers=[];if(!N.approvedMcpJsonServers.includes(I))N.approvedMcpJsonServers.push(I);pN(N),G();break}case"no":{if(!N.rejectedMcpJsonServers)N.rejectedMcpJsonServers=[];if(!N.rejectedMcpJsonServers.includes(I))N.rejectedMcpJsonServers.push(I);pN(N),G();break}}}let b=zY(()=>process.exit(0));return Mb((W,N)=>{if(N.escape){G();return}}),KX.default.createElement(KX.default.Fragment,null,KX.default.createElement(GI,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:Z.warning},KX.default.createElement(D,{bold:!0,color:Z.warning},"New MCP Server Detected"),KX.default.createElement(D,null,"This project contains a .mcp.json file with an MCP server that requires your approval:"),KX.default.createElement(D,{bold:!0},I),KX.default.createElement(TRI,null),KX.default.createElement(D,null,"Do you want to approve this MCP server?"),KX.default.createElement($Y,{options:[{label:"Yes, approve this server",value:"yes"},{label:"No, reject this server",value:"no"}],onChange:(W)=>l(W)})),KX.default.createElement(GI,{marginLeft:3},KX.default.createElement(D,{dimColor:!0},b.pending?KX.default.createElement(KX.default.Fragment,null,"Press ",b.keyName," again to exit"):KX.default.createElement(KX.default.Fragment,null,"Enter to confirm · Esc to reject"))))}MW();await jk();async function YRl(){let I=$M(),G=Object.keys(I).filter((Z)=>o7I(Z)==="pending");if(G.length===0)return;await new Promise((Z)=>{let l=()=>{process.stdout.write("\x1B[2J\x1B[3J\x1B[H",()=>{Z()})};if(G.length===1&&G[0]!==void 0){let b=Rd(H_I.default.createElement(NRl,{serverName:G[0],onDone:()=>{b.unmount?.(),l()}}),{exitOnCtrlC:!1})}else{let b=Rd(H_I.default.createElement(WRl,{serverNames:G,onDone:()=>{b.unmount?.(),l()}}),{exitOnCtrlC:!1})}})}TW();AFI();tlI();NbI();M$();Ul();await gZ([qqI(),dSI(),IP(),pw()]);yl();await gZ([oG(),_d(),oG(),mX()]);var fF=hI(YG(),1);import{writeFileSync as RpN}from"fs";function HpN({filePath:I,errorDescription:G,onExit:Z,onReset:l}){let b=dG();Mb((Y,c)=>{if(c.escape)Z()});let W=zY(()=>process.exit(0)),N=(Y)=>{if(Y==="exit")Z();else l()};return fF.default.createElement(fF.default.Fragment,null,fF.default.createElement(GI,{flexDirection:"column",borderColor:b.error,borderStyle:"round",padding:1,width:70,gap:1},fF.default.createElement(D,{bold:!0},"Configuration Error"),fF.default.createElement(GI,{flexDirection:"column",gap:1},fF.default.createElement(D,null,"The configuration file at ",fF.default.createElement(D,{bold:!0},I)," contains invalid JSON."),fF.default.createElement(D,null,G)),fF.default.createElement(GI,{flexDirection:"column"},fF.default.createElement(D,{bold:!0},"Choose an option:"),fF.default.createElement($Y,{options:[{label:"Exit and fix manually",value:"exit"},{label:"Reset with default configuration",value:"reset"}],onChange:N}))),W.pending?fF.default.createElement(D,{dimColor:!0},"Press ",W.keyName," again to exit"):fF.default.createElement(Hd,null))}function cRl({error:I}){return new Promise((G)=>{Rd(fF.default.createElement(HpN,{filePath:I.filePath,errorDescription:I.message,onExit:()=>{G(),process.exit(1)},onReset:()=>{RpN(I.filePath,JSON.stringify(I.defaultConfig,null,2)),G(),process.exit(0)}}),{exitOnCtrlC:!1})})}_M();$1();OKG();function ApN(){let I=rZ();XW({...I,hasCompletedOnboarding:!0,lastOnboardingVersion:"1.3.2"})}async function EpN(I,G){let Z=rZ();if(!Z.theme||!Z.hasCompletedOnboarding)await OV(),await new Promise((l)=>{Rd(QA.default.createElement(mFI,{onDone:async()=>{ApN(),await OV(),l()}}),{exitOnCtrlC:!1})});if(process.env.ANTHROPIC_API_KEY&&process.env.USER_TYPE==="ant"){let l=sR(process.env.ANTHROPIC_API_KEY);if(GbI(l)==="new")await new Promise((W)=>{Rd(QA.default.createElement(cFI,{customApiKeyTruncated:l,onDone:async()=>{await OV(),W()}}),{exitOnCtrlC:!1})})}if(!G&&!I){if(!yKG())await new Promise((l)=>{Rd(QA.default.createElement(t1l,{onDone:()=>{rDI(),l()}}),{exitOnCtrlC:!1})});await YRl()}}function mRl(){let I=rZ();XW({...I,numStartups:(I.numStartups??0)+1})}async function aH(I,G){if(H4(I),rDI(),G){if(process.platform!=="win32"&&typeof process.getuid==="function"&&process.getuid()===0)console.error("--dangerously-skip-permissions cannot be used with root/sudo privileges for security reasons"),process.exit(1);let[W,N]=await Promise.all([sl.getIsDocker(),sl.hasInternetAccess()]);if(!W||N)console.error(`--dangerously-skip-permissions can only be used in Docker containers with no internet access but got Docker: ${W} and hasInternet: ${N}`),process.exit(1)}GRl(),C1I(),q2(),SM();let Z=rZ();if(Z.iterm2KeyBindingInstalled===!0&&Z.shiftEnterKeyBindingInstalled!==!0){let W={...Z,shiftEnterKeyBindingInstalled:!0};delete W.iterm2KeyBindingInstalled,XW(W)}let l=Ob();if(l.lastCost!==void 0&&l.lastDuration!==void 0)JG("tengu_exit",{last_session_cost:String(l.lastCost),last_session_api_duration:String(l.lastAPIDuration),last_session_duration:String(l.lastDuration),last_session_id:l.lastSessionId}),pN({...l,lastCost:void 0,lastAPIDuration:void 0,lastDuration:void 0,lastSessionId:void 0});if((Z.autoUpdaterStatus??"disabled")==="not_configured")JG("tengu_setup_auto_updater_not_configured",{}),await new Promise((W)=>{Rd(QA.default.createElement(D$,{onDone:()=>W()}))})}async function vpN(){try{gKG()}catch(Z){if(Z instanceof PM){await cRl({error:Z});return}}let I="",G={exitOnCtrlC:!1};if(!process.stdin.isTTY&&!process.env.CI&&!process.argv[2]?.match(/^(mcp|plugin)$/)){if(I=await ppN(),process.platform!=="win32")try{let Z=JpN("/dev/tty","r");G={...G,stdin:new wpN(Z)}}catch(Z){DG(`Could not open /dev/tty: ${Z}`)}}await CpN(I,G)}async function CpN(I,G){let Z=new d2l;Z.exitOverride(),Z.configureOutput({writeErr:(R)=>console.error(R.trimEnd())});let l={...G,exitOnCtrlC:!0},b=await WB(),W=b.filter((R)=>!R.isHidden).map((R)=>`/${R.name} - ${R.description}`).join(`
2764
+ `)}`}function bRl(I,G=ZRl){let Z=G.getCurrentProjectConfig(),l=Z.allowedTools.length,b=Z.allowedTools.filter((W)=>W!==I);if(l!==b.length)return Z.allowedTools=b,G.saveCurrentProjectConfig(Z),{success:!0,message:`Removed ${I} from the list of approved tools`};else return{success:!1,message:`${I} was not in the list of approved tools`}}await jk();await oG();var H_I=hI(YG(),1);yl();MW();wY();await gZ([oG(),_d()]);var _F=hI(YG(),1);await gZ([oG(),Si()]);var q8=hI(YG(),1);function TRI(){return q8.default.createElement(q8.default.Fragment,null,q8.default.createElement(D,null,"MCP servers provide additional functionality to Claude. They may execute code, make network requests, or access system resources via tool calls. All tool calls will require your explicit approval before execution. For more information, see"," ",q8.default.createElement(ou,{url:"https://docs.anthropic.com/s/claude-code-mcp"},"MCP documentation")),q8.default.createElement(D,{dimColor:!0},"Remember: You can always change these choices later by running `claude mcp reset-project-choices`"))}await mX();function WRl({serverNames:I,onDone:G}){let Z=dG();function l(W){let N=Ob();if(!N.approvedMcpJsonServers)N.approvedMcpJsonServers=[];if(!N.rejectedMcpJsonServers)N.rejectedMcpJsonServers=[];let[Y,c]=cCI(I,(V)=>W.includes(V));N.approvedMcpJsonServers.push(...Y),N.rejectedMcpJsonServers.push(...c),pN(N),G()}let b=zY(()=>process.exit());return Mb((W,N)=>{if(N.escape){let Y=Ob();if(!Y.rejectedMcpJsonServers)Y.rejectedMcpJsonServers=[];for(let c of I)if(!Y.rejectedMcpJsonServers.includes(c))Y.rejectedMcpJsonServers.push(c);pN(Y),G();return}}),_F.default.createElement(_F.default.Fragment,null,_F.default.createElement(GI,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:Z.warning},_F.default.createElement(D,{bold:!0,color:Z.warning},"New MCP Servers Detected"),_F.default.createElement(D,null,"This project contains a .mcp.json file with ",I.length," MCP servers that require your approval."),_F.default.createElement(TRI,null),_F.default.createElement(D,null,"Please select the servers you want to enable:"),_F.default.createElement(p8G,{options:I.map((W)=>({label:W,value:W})),defaultValue:I,onSubmit:l})),_F.default.createElement(GI,{marginLeft:3},_F.default.createElement(D,{dimColor:!0},b.pending?_F.default.createElement(_F.default.Fragment,null,"Press ",b.keyName," again to exit"):_F.default.createElement(_F.default.Fragment,null,"Space to select · Enter to confirm · Esc to reject all"))))}yl();MW();await gZ([oG(),_d()]);var KX=hI(YG(),1);await mX();function NRl({serverName:I,onDone:G}){let Z=dG();function l(W){let N=Ob();switch(W){case"yes":{if(!N.approvedMcpJsonServers)N.approvedMcpJsonServers=[];if(!N.approvedMcpJsonServers.includes(I))N.approvedMcpJsonServers.push(I);pN(N),G();break}case"no":{if(!N.rejectedMcpJsonServers)N.rejectedMcpJsonServers=[];if(!N.rejectedMcpJsonServers.includes(I))N.rejectedMcpJsonServers.push(I);pN(N),G();break}}}let b=zY(()=>process.exit(0));return Mb((W,N)=>{if(N.escape){G();return}}),KX.default.createElement(KX.default.Fragment,null,KX.default.createElement(GI,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:Z.warning},KX.default.createElement(D,{bold:!0,color:Z.warning},"New MCP Server Detected"),KX.default.createElement(D,null,"This project contains a .mcp.json file with an MCP server that requires your approval:"),KX.default.createElement(D,{bold:!0},I),KX.default.createElement(TRI,null),KX.default.createElement(D,null,"Do you want to approve this MCP server?"),KX.default.createElement($Y,{options:[{label:"Yes, approve this server",value:"yes"},{label:"No, reject this server",value:"no"}],onChange:(W)=>l(W)})),KX.default.createElement(GI,{marginLeft:3},KX.default.createElement(D,{dimColor:!0},b.pending?KX.default.createElement(KX.default.Fragment,null,"Press ",b.keyName," again to exit"):KX.default.createElement(KX.default.Fragment,null,"Enter to confirm · Esc to reject"))))}MW();await jk();async function YRl(){let I=$M(),G=Object.keys(I).filter((Z)=>o7I(Z)==="pending");if(G.length===0)return;await new Promise((Z)=>{let l=()=>{process.stdout.write("\x1B[2J\x1B[3J\x1B[H",()=>{Z()})};if(G.length===1&&G[0]!==void 0){let b=Rd(H_I.default.createElement(NRl,{serverName:G[0],onDone:()=>{b.unmount?.(),l()}}),{exitOnCtrlC:!1})}else{let b=Rd(H_I.default.createElement(WRl,{serverNames:G,onDone:()=>{b.unmount?.(),l()}}),{exitOnCtrlC:!1})}})}TW();AFI();tlI();NbI();M$();Ul();await gZ([qqI(),dSI(),IP(),pw()]);yl();await gZ([oG(),_d(),oG(),mX()]);var fF=hI(YG(),1);import{writeFileSync as RpN}from"fs";function HpN({filePath:I,errorDescription:G,onExit:Z,onReset:l}){let b=dG();Mb((Y,c)=>{if(c.escape)Z()});let W=zY(()=>process.exit(0)),N=(Y)=>{if(Y==="exit")Z();else l()};return fF.default.createElement(fF.default.Fragment,null,fF.default.createElement(GI,{flexDirection:"column",borderColor:b.error,borderStyle:"round",padding:1,width:70,gap:1},fF.default.createElement(D,{bold:!0},"Configuration Error"),fF.default.createElement(GI,{flexDirection:"column",gap:1},fF.default.createElement(D,null,"The configuration file at ",fF.default.createElement(D,{bold:!0},I)," contains invalid JSON."),fF.default.createElement(D,null,G)),fF.default.createElement(GI,{flexDirection:"column"},fF.default.createElement(D,{bold:!0},"Choose an option:"),fF.default.createElement($Y,{options:[{label:"Exit and fix manually",value:"exit"},{label:"Reset with default configuration",value:"reset"}],onChange:N}))),W.pending?fF.default.createElement(D,{dimColor:!0},"Press ",W.keyName," again to exit"):fF.default.createElement(Hd,null))}function cRl({error:I}){return new Promise((G)=>{Rd(fF.default.createElement(HpN,{filePath:I.filePath,errorDescription:I.message,onExit:()=>{G(),process.exit(1)},onReset:()=>{RpN(I.filePath,JSON.stringify(I.defaultConfig,null,2)),G(),process.exit(0)}}),{exitOnCtrlC:!1})})}_M();$1();OKG();function ApN(){let I=rZ();XW({...I,hasCompletedOnboarding:!0,lastOnboardingVersion:"1.3.4"})}async function EpN(I,G){let Z=rZ();if(!Z.theme||!Z.hasCompletedOnboarding)await OV(),await new Promise((l)=>{Rd(QA.default.createElement(mFI,{onDone:async()=>{ApN(),await OV(),l()}}),{exitOnCtrlC:!1})});if(process.env.ANTHROPIC_API_KEY&&process.env.USER_TYPE==="ant"){let l=sR(process.env.ANTHROPIC_API_KEY);if(GbI(l)==="new")await new Promise((W)=>{Rd(QA.default.createElement(cFI,{customApiKeyTruncated:l,onDone:async()=>{await OV(),W()}}),{exitOnCtrlC:!1})})}if(!G&&!I){if(!yKG())await new Promise((l)=>{Rd(QA.default.createElement(t1l,{onDone:()=>{rDI(),l()}}),{exitOnCtrlC:!1})});await YRl()}}function mRl(){let I=rZ();XW({...I,numStartups:(I.numStartups??0)+1})}async function aH(I,G){if(H4(I),rDI(),G){if(process.platform!=="win32"&&typeof process.getuid==="function"&&process.getuid()===0)console.error("--dangerously-skip-permissions cannot be used with root/sudo privileges for security reasons"),process.exit(1);let[W,N]=await Promise.all([sl.getIsDocker(),sl.hasInternetAccess()]);if(!W||N)console.error(`--dangerously-skip-permissions can only be used in Docker containers with no internet access but got Docker: ${W} and hasInternet: ${N}`),process.exit(1)}GRl(),C1I(),q2(),SM();let Z=rZ();if(Z.iterm2KeyBindingInstalled===!0&&Z.shiftEnterKeyBindingInstalled!==!0){let W={...Z,shiftEnterKeyBindingInstalled:!0};delete W.iterm2KeyBindingInstalled,XW(W)}let l=Ob();if(l.lastCost!==void 0&&l.lastDuration!==void 0)JG("tengu_exit",{last_session_cost:String(l.lastCost),last_session_api_duration:String(l.lastAPIDuration),last_session_duration:String(l.lastDuration),last_session_id:l.lastSessionId}),pN({...l,lastCost:void 0,lastAPIDuration:void 0,lastDuration:void 0,lastSessionId:void 0});if((Z.autoUpdaterStatus??"disabled")==="not_configured")JG("tengu_setup_auto_updater_not_configured",{}),await new Promise((W)=>{Rd(QA.default.createElement(D$,{onDone:()=>W()}))})}async function vpN(){try{gKG()}catch(Z){if(Z instanceof PM){await cRl({error:Z});return}}let I="",G={exitOnCtrlC:!1};if(!process.stdin.isTTY&&!process.env.CI&&!process.argv[2]?.match(/^(mcp|plugin)$/)){if(I=await ppN(),process.platform!=="win32")try{let Z=JpN("/dev/tty","r");G={...G,stdin:new wpN(Z)}}catch(Z){DG(`Could not open /dev/tty: ${Z}`)}}await CpN(I,G)}async function CpN(I,G){let Z=new d2l;Z.exitOverride(),Z.configureOutput({writeErr:(R)=>console.error(R.trimEnd())});let l={...G,exitOnCtrlC:!0},b=await WB(),W=b.filter((R)=>!R.isHidden).map((R)=>`/${R.name} - ${R.description}`).join(`
2765
2765
  `);if(Z.name("quantwise").description(`${yN} - starts an interactive session by default, use -p/--print for non-interactive output
2766
2766
 
2767
2767
  Slash commands available during an interactive session:
2768
2768
  ${W}`).argument("[prompt]","Your prompt",String).option("-c, --cwd <cwd>","The current working directory",String,s2()).option("-d, --debug","Enable debug mode",()=>!0).option("--verbose","Override verbose mode setting from config",()=>!0).option("-e, --enable-architect","Enable the Architect tool",()=>!0).option("-p, --print","Print response and exit (useful for pipes)",()=>!0).option("--dangerously-skip-permissions","Skip all permission checks. Only works in Docker containers with no internet access. Will crash otherwise.",()=>!0).action(async(R,{cwd:H,debug:h,verbose:A,enableArchitect:C,print:g,dangerouslySkipPermissions:z})=>{await EpN(z,g),JG("tengu_init",{entrypoint:"claude",hasInitialPrompt:Boolean(R).toString(),hasStdin:Boolean(I).toString(),enableArchitect:C?.toString()??"false",verbose:A?.toString()??"false",debug:h?.toString()??"false",print:g?.toString()??"false"}),await aH(H,z);let[k,x]=await Promise.all([bg(C??Ob().enableArchitectTool),U3()]);mRl();let n=[R,I].filter(Boolean).join(`
2769
- `);if(g){if(!n)console.error("Error: Input must be provided either through stdin or as a prompt argument when using --print"),process.exit(1);Zg(n);let{resultText:_}=await m2l({commands:b,hasPermissionsToUseTool:Ig,messageLogName:zlI(new Date),prompt:n,cwd:H,tools:k,dangerouslySkipPermissions:z});console.log(_),process.exit(0)}else{let _=await uS();if(IQ.start(),process.env.TELEGRAM_BOT_TOKEN&&process.env.TELEGRAM_OWNER_CHAT_ID)BFI().then(() => IeZ).then(({autoStartTelegram:lI})=>lI());if(process.env.BROWSER_RELAY_TOKEN)Promise.resolve().then(() => (kNI(),LrG)).then(({autoStartRelay:lI})=>lI());Rd(QA.default.createElement(t$,{commands:b,debug:h,initialPrompt:n,messageLogName:zlI(new Date),shouldShowPromptInput:!0,verbose:A,tools:k,dangerouslySkipPermissions:z,mcpClients:x,isDefaultModel:_}),G)}}).version("1.3.2","-v, --version"),process.env.USER_TYPE==="ant")Z.option("--melon","Enable melon mode").hook("preAction",async()=>{if(Z.opts().melon){let{runMelonWrapper:R}=await Promise.resolve().then(() => VRl);await R(),process.exit(0)}});let N=Z.command("config").description("Manage configuration (eg. claude config set -g theme dark)");N.command("get <key>").description("Get a config value").option("-c, --cwd <cwd>","The current working directory",String,s2()).option("-g, --global","Use global config").action(async(R,{cwd:H,global:h})=>{await aH(H,!1),console.log(zKG(R,h??!1)),process.exit(0)}),N.command("set <key> <value>").description("Set a config value").option("-c, --cwd <cwd>","The current working directory",String,s2()).option("-g, --global","Use global config").action(async(R,H,{cwd:h,global:A})=>{await aH(h,!1),BKG(R,H,A??!1),console.log(`Set ${R} to ${H}`),process.exit(0)}),N.command("remove <key>").description("Remove a config value").option("-c, --cwd <cwd>","The current working directory",String,s2()).option("-g, --global","Use global config").action(async(R,{cwd:H,global:h})=>{await aH(H,!1),kKG(R,h??!1),console.log(`Removed ${R}`),process.exit(0)}),N.command("list").description("List all config values").option("-c, --cwd <cwd>","The current working directory",String,s2()).option("-g, --global","Use global config",!1).action(async({cwd:R,global:H})=>{await aH(R,!1);let h=H?rCI(!0):rCI(!1);console.log(JSON.stringify(h,null,2)),process.exit(0)});let Y=Z.command("approved-tools").description("Manage approved tools");Y.command("list").description("List all approved tools").action(async()=>{let R=lRl(bZ());console.log(R),process.exit(0)}),Y.command("remove <tool>").description("Remove a tool from the list of approved tools").action(async(R)=>{let H=bRl(R);JG("tengu_approved_tool_remove",{tool:R,success:String(H.success)}),console.log(H.message),process.exit(H.success?0:1)});let c=Z.command("mcp").description("Configure and manage MCP servers");c.command("serve").description(`Start the ${yN} MCP server`).action(async()=>{let R=Z.opts().cwd??s2();if(JG("tengu_mcp_start",{providedCwd:R}),!dRl(R))console.error(`Error: Directory ${R} does not exist`),process.exit(1);try{await aH(R,!1),await e1l(R)}catch(H){console.error("Error: Failed to start MCP server:",H),process.exit(1)}}),c.command("add <name> <commandOrUrl> [args...]").description("Add an MCP server (stdio by default, use -t for http/sse)").option("-t, --transport <transport>","Transport type: stdio, http, or sse","stdio").option("-s, --scope <scope>","Configuration scope (local, user, or project)","local").option("--env <value>","Set environment variables (stdio only, e.g. --env KEY=value)",(R,H)=>[...H,R],[]).option("-H, --header <value>",'HTTP headers (http/sse only, e.g. -H "Auth: Bearer xxx")',(R,H)=>[...H,R],[]).option("--callback-port <port>","OAuth callback port",parseInt).option("--client-id <clientId>","OAuth client ID").option("--client-secret","Read OAuth client secret from MCP_CLIENT_SECRET env or stdin").action(async(R,H,h,A)=>{try{let C=A$(A.scope),g=A.transport;if(g==="http"||g==="sse"){JG("tengu_mcp_add",{name:R,type:g,scope:C});let z={type:g,url:H};if(A.header&&A.header.length>0){let x={};for(let n of A.header){let _=n.indexOf(":");if(_===-1)throw Error(`Invalid header format: ${n}. Expected "Name: Value"`);x[n.slice(0,_).trim()]=n.slice(_+1).trim()}z.headers=x}let k={};if(A.clientId)k.clientId=A.clientId;if(A.clientSecret){let x=process.env.MCP_CLIENT_SECRET;if(x)k.clientSecret=x;else{let n="";process.stdin.setEncoding("utf-8");for await(let _ of process.stdin)n+=_;k.clientSecret=n.trim()}}if(A.callbackPort)k.callbackPort=A.callbackPort;if(Object.keys(k).length>0)z.oauth=k;E$(R,z,C),console.log(`Added ${g} MCP server "${R}" with URL ${H} to ${C} config`)}else{JG("tengu_mcp_add",{name:R,type:"stdio",scope:C});let z=m$Z(A.env);E$(R,{type:"stdio",command:H,args:h||[],env:z},C),console.log(`Added stdio MCP server "${R}" with command: ${H} ${(h||[]).join(" ")} to ${C} config`)}process.exit(0)}catch(C){console.error(C.message),process.exit(1)}}),c.command("add-json <name> <json>").description("Add an MCP server from a JSON config string").option("-s, --scope <scope>","Configuration scope (local, user, or project)","local").option("--client-secret","Read OAuth client secret from MCP_CLIENT_SECRET env or stdin").action(async(R,H,h)=>{try{let A=A$(h.scope);JG("tengu_mcp_add_json",{name:R,scope:A});let C;try{C=JSON.parse(H)}catch{throw Error("Invalid JSON provided")}if(h.clientSecret&&"url"in C){let g=process.env.MCP_CLIENT_SECRET;if(g){if(!C.oauth)C.oauth={};C.oauth.clientSecret=g}}E$(R,C,A),console.log(`Added MCP server "${R}" from JSON to ${A} config`),process.exit(0)}catch(A){console.error(A.message),process.exit(1)}}),c.command("add-from-claude-desktop").description("Import MCP servers from Claude Desktop config").option("-s, --scope <scope>","Configuration scope (local, user, or project)","local").action(async(R)=>{try{let H=A$(R.scope);JG("tengu_mcp_add_from_desktop",{scope:H});let{homedir:h}=await import("os"),{join:A}=await import("path"),{readFileSync:C,existsSync:g}=await import("fs"),z;if(process.platform==="darwin")z=A(h(),"Library","Application Support","Claude","claude_desktop_config.json");else if(process.platform==="win32")z=A(process.env.APPDATA??"","Claude","claude_desktop_config.json");else z=A(h(),".config","Claude","claude_desktop_config.json");if(!g(z))console.error(`Claude Desktop config not found at: ${z}`),process.exit(1);let k=C(z,"utf-8"),x=JSON.parse(k);if(!x.mcpServers||Object.keys(x.mcpServers).length===0)console.log("No MCP servers found in Claude Desktop config."),process.exit(0);let n=0;for(let[_,lI]of Object.entries(x.mcpServers))E$(_,lI,H),console.log(` Added: ${_}`),n++;console.log(`
2769
+ `);if(g){if(!n)console.error("Error: Input must be provided either through stdin or as a prompt argument when using --print"),process.exit(1);Zg(n);let{resultText:_}=await m2l({commands:b,hasPermissionsToUseTool:Ig,messageLogName:zlI(new Date),prompt:n,cwd:H,tools:k,dangerouslySkipPermissions:z});console.log(_),process.exit(0)}else{let _=await uS();if(IQ.start(),process.env.TELEGRAM_BOT_TOKEN&&process.env.TELEGRAM_OWNER_CHAT_ID)BFI().then(() => IeZ).then(({autoStartTelegram:lI})=>lI());if(process.env.BROWSER_RELAY_TOKEN)Promise.resolve().then(() => (kNI(),LrG)).then(({autoStartRelay:lI})=>lI());Rd(QA.default.createElement(t$,{commands:b,debug:h,initialPrompt:n,messageLogName:zlI(new Date),shouldShowPromptInput:!0,verbose:A,tools:k,dangerouslySkipPermissions:z,mcpClients:x,isDefaultModel:_}),G)}}).version("1.3.4","-v, --version"),process.env.USER_TYPE==="ant")Z.option("--melon","Enable melon mode").hook("preAction",async()=>{if(Z.opts().melon){let{runMelonWrapper:R}=await Promise.resolve().then(() => VRl);await R(),process.exit(0)}});let N=Z.command("config").description("Manage configuration (eg. claude config set -g theme dark)");N.command("get <key>").description("Get a config value").option("-c, --cwd <cwd>","The current working directory",String,s2()).option("-g, --global","Use global config").action(async(R,{cwd:H,global:h})=>{await aH(H,!1),console.log(zKG(R,h??!1)),process.exit(0)}),N.command("set <key> <value>").description("Set a config value").option("-c, --cwd <cwd>","The current working directory",String,s2()).option("-g, --global","Use global config").action(async(R,H,{cwd:h,global:A})=>{await aH(h,!1),BKG(R,H,A??!1),console.log(`Set ${R} to ${H}`),process.exit(0)}),N.command("remove <key>").description("Remove a config value").option("-c, --cwd <cwd>","The current working directory",String,s2()).option("-g, --global","Use global config").action(async(R,{cwd:H,global:h})=>{await aH(H,!1),kKG(R,h??!1),console.log(`Removed ${R}`),process.exit(0)}),N.command("list").description("List all config values").option("-c, --cwd <cwd>","The current working directory",String,s2()).option("-g, --global","Use global config",!1).action(async({cwd:R,global:H})=>{await aH(R,!1);let h=H?rCI(!0):rCI(!1);console.log(JSON.stringify(h,null,2)),process.exit(0)});let Y=Z.command("approved-tools").description("Manage approved tools");Y.command("list").description("List all approved tools").action(async()=>{let R=lRl(bZ());console.log(R),process.exit(0)}),Y.command("remove <tool>").description("Remove a tool from the list of approved tools").action(async(R)=>{let H=bRl(R);JG("tengu_approved_tool_remove",{tool:R,success:String(H.success)}),console.log(H.message),process.exit(H.success?0:1)});let c=Z.command("mcp").description("Configure and manage MCP servers");c.command("serve").description(`Start the ${yN} MCP server`).action(async()=>{let R=Z.opts().cwd??s2();if(JG("tengu_mcp_start",{providedCwd:R}),!dRl(R))console.error(`Error: Directory ${R} does not exist`),process.exit(1);try{await aH(R,!1),await e1l(R)}catch(H){console.error("Error: Failed to start MCP server:",H),process.exit(1)}}),c.command("add <name> <commandOrUrl> [args...]").description("Add an MCP server (stdio by default, use -t for http/sse)").option("-t, --transport <transport>","Transport type: stdio, http, or sse","stdio").option("-s, --scope <scope>","Configuration scope (local, user, or project)","local").option("--env <value>","Set environment variables (stdio only, e.g. --env KEY=value)",(R,H)=>[...H,R],[]).option("-H, --header <value>",'HTTP headers (http/sse only, e.g. -H "Auth: Bearer xxx")',(R,H)=>[...H,R],[]).option("--callback-port <port>","OAuth callback port",parseInt).option("--client-id <clientId>","OAuth client ID").option("--client-secret","Read OAuth client secret from MCP_CLIENT_SECRET env or stdin").action(async(R,H,h,A)=>{try{let C=A$(A.scope),g=A.transport;if(g==="http"||g==="sse"){JG("tengu_mcp_add",{name:R,type:g,scope:C});let z={type:g,url:H};if(A.header&&A.header.length>0){let x={};for(let n of A.header){let _=n.indexOf(":");if(_===-1)throw Error(`Invalid header format: ${n}. Expected "Name: Value"`);x[n.slice(0,_).trim()]=n.slice(_+1).trim()}z.headers=x}let k={};if(A.clientId)k.clientId=A.clientId;if(A.clientSecret){let x=process.env.MCP_CLIENT_SECRET;if(x)k.clientSecret=x;else{let n="";process.stdin.setEncoding("utf-8");for await(let _ of process.stdin)n+=_;k.clientSecret=n.trim()}}if(A.callbackPort)k.callbackPort=A.callbackPort;if(Object.keys(k).length>0)z.oauth=k;E$(R,z,C),console.log(`Added ${g} MCP server "${R}" with URL ${H} to ${C} config`)}else{JG("tengu_mcp_add",{name:R,type:"stdio",scope:C});let z=m$Z(A.env);E$(R,{type:"stdio",command:H,args:h||[],env:z},C),console.log(`Added stdio MCP server "${R}" with command: ${H} ${(h||[]).join(" ")} to ${C} config`)}process.exit(0)}catch(C){console.error(C.message),process.exit(1)}}),c.command("add-json <name> <json>").description("Add an MCP server from a JSON config string").option("-s, --scope <scope>","Configuration scope (local, user, or project)","local").option("--client-secret","Read OAuth client secret from MCP_CLIENT_SECRET env or stdin").action(async(R,H,h)=>{try{let A=A$(h.scope);JG("tengu_mcp_add_json",{name:R,scope:A});let C;try{C=JSON.parse(H)}catch{throw Error("Invalid JSON provided")}if(h.clientSecret&&"url"in C){let g=process.env.MCP_CLIENT_SECRET;if(g){if(!C.oauth)C.oauth={};C.oauth.clientSecret=g}}E$(R,C,A),console.log(`Added MCP server "${R}" from JSON to ${A} config`),process.exit(0)}catch(A){console.error(A.message),process.exit(1)}}),c.command("add-from-claude-desktop").description("Import MCP servers from Claude Desktop config").option("-s, --scope <scope>","Configuration scope (local, user, or project)","local").action(async(R)=>{try{let H=A$(R.scope);JG("tengu_mcp_add_from_desktop",{scope:H});let{homedir:h}=await import("os"),{join:A}=await import("path"),{readFileSync:C,existsSync:g}=await import("fs"),z;if(process.platform==="darwin")z=A(h(),"Library","Application Support","Claude","claude_desktop_config.json");else if(process.platform==="win32")z=A(process.env.APPDATA??"","Claude","claude_desktop_config.json");else z=A(h(),".config","Claude","claude_desktop_config.json");if(!g(z))console.error(`Claude Desktop config not found at: ${z}`),process.exit(1);let k=C(z,"utf-8"),x=JSON.parse(k);if(!x.mcpServers||Object.keys(x.mcpServers).length===0)console.log("No MCP servers found in Claude Desktop config."),process.exit(0);let n=0;for(let[_,lI]of Object.entries(x.mcpServers))E$(_,lI,H),console.log(` Added: ${_}`),n++;console.log(`
2770
2770
  Imported ${n} MCP server(s) from Claude Desktop to ${H} config`),process.exit(0)}catch(H){console.error(H.message),process.exit(1)}}),c.command("remove <name>").description("Remove an MCP server").option("-s, --scope <scope>","Configuration scope (local, user, or project)").action(async(R,H)=>{try{let h=H.scope?A$(H.scope):void 0;JG("tengu_mcp_delete",{name:R,scope:h??"auto"}),Q$Z(R,h),console.log(`Removed MCP server "${R}"`),process.exit(0)}catch(h){console.error(h.message),process.exit(1)}}),c.command("list").description("List configured MCP servers").action(()=>{JG("tengu_mcp_list",{});let R=v$();if(Object.keys(R).length===0)console.log("No MCP servers configured. Use `claude mcp add` to add a server.");else for(let[H,h]of Object.entries(R))if("url"in h){let A=h.type;console.log(`${H}: ${h.url} (${A})`)}else console.log(`${H}: ${h.command} ${(h.args??[]).join(" ")} (stdio)`);process.exit(0)}),c.command("get <name>").description("Get details about an MCP server").action((R)=>{JG("tengu_mcp_get",{name:R});let H=UXI(R);if(!H)console.error(`No MCP server found with name: ${R}`),process.exit(1);if(console.log(`${R}:`),console.log(` Scope: ${H.scope}`),"url"in H){let h=H.type??"sse";if(console.log(` Type: ${h}`),console.log(` URL: ${H.url}`),H.headers&&Object.keys(H.headers).length>0){console.log(" Headers:");for(let[A,C]of Object.entries(H.headers))console.log(` ${A}: ${C}`)}if(H.oauth){if(H.oauth.clientId)if(console.log(` Client ID: ${H.oauth.clientId}`),H.oauth.clientSecret)console.log(" Auth: client_credentials");else console.log(" Auth: authorization_code (PKCE)");else console.log(" Auth: OAuth (dynamic registration)");if(H.oauth.callbackPort)console.log(` Callback Port: ${H.oauth.callbackPort}`)}}else if(console.log(" Type: stdio"),console.log(` Command: ${H.command}`),console.log(` Args: ${(H.args??[]).join(" ")}`),H.env){console.log(" Environment:");for(let[h,A]of Object.entries(H.env))console.log(` ${h}=${A}`)}process.exit(0)}),c.command("reset-project-choices").description("Reset all approved and rejected .mcp.json servers for this project").action(()=>{JG("tengu_mcp_reset_project_choices",{});let R=Ob();pN({...R,approvedMcpJsonServers:[],rejectedMcpJsonServers:[],approvedMcprcServers:[],rejectedMcprcServers:[]}),console.log("All .mcp.json server approvals and rejections have been reset."),console.log("You will be prompted for approval next time you start QuantWise."),process.exit(0)}),c.command("debug [name]").description("Diagnose MCP server connection issues").action(async(R)=>{JG("tengu_mcp_debug",{name:R??"all"});let H="\x1B[32m✓\x1B[0m",h="\x1B[33m⚠\x1B[0m",A="\x1B[31m✗\x1B[0m",C=(k)=>`\x1B[1m${k}\x1B[0m`,g=(k)=>`\x1B[2m${k}\x1B[0m`,z=R?[R]:Object.keys(v$());if(z.length===0)console.log("No MCP servers configured."),process.exit(0);for(let k of z){console.log(`
2771
- ${C(k)}`);let x=await J$Z(k),n=x.config;if("command"in n)console.log(g(` type: stdio | ${n.command} ${(n.args??[]).join(" ")}`));else if("url"in n)console.log(g(` type: ${n.type??"sse"} | ${n.url}`));for(let _ of x.checks){let lI=_.status==="ok"?H:_.status==="warn"?h:A,t=_.detail?g(` → ${_.detail}`):"";console.log(` ${lI} ${_.label}${t}`)}if(x.connectionResult.success)console.log(` ${H} Connected ${g(`(${x.connectionResult.tools??0} tools)`)}`);else if(console.log(` ${A} Connection failed`),x.connectionResult.error)console.log(g(` ${x.connectionResult.error}`))}console.log(),process.exit(0)});let V=Z.command("plugin").description("Manage plugins — install, search, and update from marketplaces"),d=V.command("marketplace").alias("mp").alias("market").description("Manage plugin marketplaces");if(d.command("add <url> [branch]").description("Register a plugin marketplace").option("-C, --project-dir <dir>","The project directory",String,s2()).action(async(R,H,{projectDir:h})=>{console.log(await hFI(R,H,h)),process.exit(0)}),d.command("update [name]").description("Update marketplace repo(s)").option("-C, --project-dir <dir>","The project directory",String,s2()).action(async(R,{projectDir:H})=>{console.log(await rn(R,H)),process.exit(0)}),d.command("list").description("List registered marketplaces").option("-C, --project-dir <dir>","The project directory",String,s2()).action(async({projectDir:R})=>{console.log(JFI(R)),process.exit(0)}),d.command("remove <name>").description("Remove a marketplace").option("-C, --project-dir <dir>","The project directory",String,s2()).action(async(R,{projectDir:H})=>{console.log(wFI(R,H)),process.exit(0)}),V.command("install <name>").description("Install a plugin (use name@marketplace to specify source)").option("-C, --project-dir <dir>","The project directory",String,s2()).action(async(R,{projectDir:H})=>{console.log(await EFI(R,H)),process.exit(0)}),V.command("uninstall <name>").description("Uninstall a plugin").option("-C, --project-dir <dir>","The project directory",String,s2()).action(async(R,{projectDir:H})=>{console.log(await vFI(R,H)),process.exit(0)}),V.command("list").description("List installed plugins").option("-C, --project-dir <dir>","The project directory",String,s2()).action(async({projectDir:R})=>{console.log(CFI(R)),process.exit(0)}),V.command("search <query>").description("Search plugins across marketplaces").option("-C, --project-dir <dir>","The project directory",String,s2()).action(async(R,{projectDir:H})=>{console.log(pFI(R,H)),process.exit(0)}),V.command("update [name]").description("Update installed plugin(s)").option("-C, --project-dir <dir>","The project directory",String,s2()).action(async(R,{projectDir:H})=>{console.log(await yFI(R,H)),process.exit(0)}),Z.command("doctor").description("Check the health of your QuantWise auto-updater").action(async()=>{JG("tengu_doctor_command",{}),await new Promise((R)=>{Rd(QA.default.createElement(D$,{onDone:()=>R(),doctorMode:!0}))}),process.exit(0)}),Z.command("resume").description("Resume a previous conversation. Optionally provide a number, file path, or search text to resume a specific conversation.").argument("[identifier]","A number (0, 1, 2, etc.), file path, or search text to resume a specific conversation").option("-c, --cwd <cwd>","The current working directory",String,s2()).option("-e, --enable-architect","Enable the Architect tool",()=>!0).option("-v, --verbose","Do not truncate message output",()=>!0).option("--dangerously-skip-permissions","Skip all permission checks. Only works in Docker containers with no internet access. Will crash otherwise.",()=>!0).action(async(R,{cwd:H,enableArchitect:h,dangerouslySkipPermissions:A,verbose:C})=>{await aH(H,A);let[g,z,k,x]=await Promise.all([bg(h??Ob().enableArchitectTool),WB(),OM(VF.messages()),U3()]);if(mRl(),R!==void 0){let n=Math.abs(parseInt(R)),_=!isNaN(n)&&String(n)===R.trim(),lI,t,aI;try{if(_){JG("tengu_resume",{number:n.toString()});let uI=k[n];if(!uI)console.error("No conversation found at index",n),process.exit(1);lI=await kFI(uI.fullPath),{date:t,forkNumber:aI}=uI}else if(dRl(R)){JG("tengu_resume",{filePath:R}),lI=await kFI(R);let uI=R.split("/"),ZI=uI[uI.length-1]??"unknown";({date:t,forkNumber:aI}=vCI(ZI))}else{JG("tengu_resume",{search:R});let uI=R.toLowerCase(),ZI=k.find((zI)=>{let EI=(zI.title||"").toLowerCase(),VI=(zI.firstPrompt||"").toLowerCase();return EI.includes(uI)||VI.includes(uI)});if(!ZI)console.error(`No conversation matching "${R}" found`),process.exit(1);lI=await kFI(ZI.fullPath),{date:t,forkNumber:aI}=ZI}let QI=MM(t,aI??1,0),lG=await uS();Rd(QA.default.createElement(t$,{initialPrompt:"",messageLogName:t,initialForkNumber:QI,shouldShowPromptInput:!0,verbose:C,commands:z,tools:g,initialMessages:lI,mcpClients:x,isDefaultModel:lG}),{exitOnCtrlC:!1})}catch(QI){DG(`Failed to load conversation: ${QI}`),process.exit(1)}}else{let n={},{unmount:_}=Rd(QA.default.createElement(xFI,{context:n,commands:z,logs:k,tools:g,verbose:C}),l);n.unmount=_}}),process.env.USER_TYPE==="ant"){Z.command("update").description("Check for updates and install if available").action(async()=>{if(await Ru(lMG))console.log("This version of QuantWise is no longer supported."),process.exit(0);JG("tengu_update_check",{}),console.log("Current version: 1.3.2"),console.log("Checking for updates...");let h=await _XI();if(!h)console.error("Failed to check for updates"),process.exit(1);if(h==="1.3.2")console.log(`${yN} is up to date`),process.exit(0);switch(console.log(`New version available: ${h}`),console.log("Installing update..."),await Sn()){case"success":console.log(`Successfully updated to version ${h}`);break;case"no_permissions":console.error("Error: Insufficient permissions to install update"),console.error("Try running with sudo or fix npm permissions"),process.exit(1);break;case"install_failed":console.error("Error: Failed to install update"),process.exit(1);break;case"in_progress":console.error("Error: Another instance is currently performing an update"),console.error("Please wait and try again later"),process.exit(1);break}process.exit(0)}),Z.command("log").description("Manage conversation logs.").argument("[number]","A number (0, 1, 2, etc.) to display a specific log",parseInt).option("-c, --cwd <cwd>","The current working directory",String,s2()).action(async(H,{cwd:h})=>{await aH(h,!1),JG("tengu_view_logs",{number:H?.toString()??""});let A={},{unmount:C}=Rd(QA.default.createElement(m_I,{context:A,type:"messages",logNumber:H}),l);A.unmount=C}),Z.command("error").description("View error logs. Optionally provide a number (0, -1, -2, etc.) to display a specific log.").argument("[number]","A number (0, 1, 2, etc.) to display a specific log",parseInt).option("-c, --cwd <cwd>","The current working directory",String,s2()).action(async(H,{cwd:h})=>{await aH(h,!1),JG("tengu_view_errors",{number:H?.toString()??""});let A={},{unmount:C}=Rd(QA.default.createElement(m_I,{context:A,type:"errors",logNumber:H}),l);A.unmount=C});let R=Z.command("context").description("Set static context (eg. claude context add-file ./src/*.py)");R.command("get <key>").option("-c, --cwd <cwd>","The current working directory",String,s2()).description("Get a value from context").action(async(H,{cwd:h})=>{await aH(h,!1),JG("tengu_context_get",{key:H});let{codeStyle:A,directoryStructure:C,...g}=await q2();console.log(g[H]),process.exit(0)}),R.command("set <key> <value>").description("Set a value in context").option("-c, --cwd <cwd>","The current working directory",String,s2()).action(async(H,h,{cwd:A})=>{await aH(A,!1),JG("tengu_context_set",{key:H}),g$Z(H,h),console.log(`Set context.${H} to "${h}"`),process.exit(0)}),R.command("list").description("List all context values").option("-c, --cwd <cwd>","The current working directory",String,s2()).action(async({cwd:H})=>{await aH(H,!1),JG("tengu_context_list",{});let{codeStyle:h,directoryStructure:A,gitStatus:C,...g}=await q2();console.log(JSON.stringify(g,null,2)),process.exit(0)}),R.command("remove <key>").description("Remove a value from context").option("-c, --cwd <cwd>","The current working directory",String,s2()).action(async(H,{cwd:h})=>{await aH(h,!1),JG("tengu_context_delete",{key:H}),a$Z(H),console.log(`Removed context.${H}`),process.exit(0)})}let Q=[...process.argv],X=Q.indexOf("resume");if(X>0){let R=Q.slice(X+1),H=[],h=[];for(let C=0;C<R.length;C++){let g=R[C];if(g.startsWith("-")){if(h.push(g),(g==="-c"||g==="--cwd")&&C+1<R.length)h.push(R[++C])}else H.push(g)}let A=[...Q.slice(0,X+1),...H.length>0?[H.join(" ")]:[],...h];try{await Z.parseAsync(A)}catch(C){if(C.code!=="commander.helpDisplayed")DG(C)}}else try{await Z.parseAsync(Q)}catch(R){if(R.code!=="commander.helpDisplayed")DG(R)}return Z}async function ppN(){if(process.stdin.isTTY)return"";let I="";for await(let G of process.stdin)I+=G;return I}process.on("exit",()=>{ypN(),IQ.stop(),_m.getInstance().close()});process.on("SIGINT",()=>{process.exit(0)});function ypN(){(process.stderr.isTTY?process.stderr:process.stdout.isTTY?process.stdout:void 0)?.write(`\x1B[?25h${Z3I}`)}vpN();export{ApN as completeOnboarding};
2771
+ ${C(k)}`);let x=await J$Z(k),n=x.config;if("command"in n)console.log(g(` type: stdio | ${n.command} ${(n.args??[]).join(" ")}`));else if("url"in n)console.log(g(` type: ${n.type??"sse"} | ${n.url}`));for(let _ of x.checks){let lI=_.status==="ok"?H:_.status==="warn"?h:A,t=_.detail?g(` → ${_.detail}`):"";console.log(` ${lI} ${_.label}${t}`)}if(x.connectionResult.success)console.log(` ${H} Connected ${g(`(${x.connectionResult.tools??0} tools)`)}`);else if(console.log(` ${A} Connection failed`),x.connectionResult.error)console.log(g(` ${x.connectionResult.error}`))}console.log(),process.exit(0)});let V=Z.command("plugin").description("Manage plugins — install, search, and update from marketplaces"),d=V.command("marketplace").alias("mp").alias("market").description("Manage plugin marketplaces");if(d.command("add <url> [branch]").description("Register a plugin marketplace").option("-C, --project-dir <dir>","The project directory",String,s2()).action(async(R,H,{projectDir:h})=>{console.log(await hFI(R,H,h)),process.exit(0)}),d.command("update [name]").description("Update marketplace repo(s)").option("-C, --project-dir <dir>","The project directory",String,s2()).action(async(R,{projectDir:H})=>{console.log(await rn(R,H)),process.exit(0)}),d.command("list").description("List registered marketplaces").option("-C, --project-dir <dir>","The project directory",String,s2()).action(async({projectDir:R})=>{console.log(JFI(R)),process.exit(0)}),d.command("remove <name>").description("Remove a marketplace").option("-C, --project-dir <dir>","The project directory",String,s2()).action(async(R,{projectDir:H})=>{console.log(wFI(R,H)),process.exit(0)}),V.command("install <name>").description("Install a plugin (use name@marketplace to specify source)").option("-C, --project-dir <dir>","The project directory",String,s2()).action(async(R,{projectDir:H})=>{console.log(await EFI(R,H)),process.exit(0)}),V.command("uninstall <name>").description("Uninstall a plugin").option("-C, --project-dir <dir>","The project directory",String,s2()).action(async(R,{projectDir:H})=>{console.log(await vFI(R,H)),process.exit(0)}),V.command("list").description("List installed plugins").option("-C, --project-dir <dir>","The project directory",String,s2()).action(async({projectDir:R})=>{console.log(CFI(R)),process.exit(0)}),V.command("search <query>").description("Search plugins across marketplaces").option("-C, --project-dir <dir>","The project directory",String,s2()).action(async(R,{projectDir:H})=>{console.log(pFI(R,H)),process.exit(0)}),V.command("update [name]").description("Update installed plugin(s)").option("-C, --project-dir <dir>","The project directory",String,s2()).action(async(R,{projectDir:H})=>{console.log(await yFI(R,H)),process.exit(0)}),Z.command("doctor").description("Check the health of your QuantWise auto-updater").action(async()=>{JG("tengu_doctor_command",{}),await new Promise((R)=>{Rd(QA.default.createElement(D$,{onDone:()=>R(),doctorMode:!0}))}),process.exit(0)}),Z.command("resume").description("Resume a previous conversation. Optionally provide a number, file path, or search text to resume a specific conversation.").argument("[identifier]","A number (0, 1, 2, etc.), file path, or search text to resume a specific conversation").option("-c, --cwd <cwd>","The current working directory",String,s2()).option("-e, --enable-architect","Enable the Architect tool",()=>!0).option("-v, --verbose","Do not truncate message output",()=>!0).option("--dangerously-skip-permissions","Skip all permission checks. Only works in Docker containers with no internet access. Will crash otherwise.",()=>!0).action(async(R,{cwd:H,enableArchitect:h,dangerouslySkipPermissions:A,verbose:C})=>{await aH(H,A);let[g,z,k,x]=await Promise.all([bg(h??Ob().enableArchitectTool),WB(),OM(VF.messages()),U3()]);if(mRl(),R!==void 0){let n=Math.abs(parseInt(R)),_=!isNaN(n)&&String(n)===R.trim(),lI,t,aI;try{if(_){JG("tengu_resume",{number:n.toString()});let uI=k[n];if(!uI)console.error("No conversation found at index",n),process.exit(1);lI=await kFI(uI.fullPath),{date:t,forkNumber:aI}=uI}else if(dRl(R)){JG("tengu_resume",{filePath:R}),lI=await kFI(R);let uI=R.split("/"),ZI=uI[uI.length-1]??"unknown";({date:t,forkNumber:aI}=vCI(ZI))}else{JG("tengu_resume",{search:R});let uI=R.toLowerCase(),ZI=k.find((zI)=>{let EI=(zI.title||"").toLowerCase(),VI=(zI.firstPrompt||"").toLowerCase();return EI.includes(uI)||VI.includes(uI)});if(!ZI)console.error(`No conversation matching "${R}" found`),process.exit(1);lI=await kFI(ZI.fullPath),{date:t,forkNumber:aI}=ZI}let QI=MM(t,aI??1,0),lG=await uS();Rd(QA.default.createElement(t$,{initialPrompt:"",messageLogName:t,initialForkNumber:QI,shouldShowPromptInput:!0,verbose:C,commands:z,tools:g,initialMessages:lI,mcpClients:x,isDefaultModel:lG}),{exitOnCtrlC:!1})}catch(QI){DG(`Failed to load conversation: ${QI}`),process.exit(1)}}else{let n={},{unmount:_}=Rd(QA.default.createElement(xFI,{context:n,commands:z,logs:k,tools:g,verbose:C}),l);n.unmount=_}}),process.env.USER_TYPE==="ant"){Z.command("update").description("Check for updates and install if available").action(async()=>{if(await Ru(lMG))console.log("This version of QuantWise is no longer supported."),process.exit(0);JG("tengu_update_check",{}),console.log("Current version: 1.3.4"),console.log("Checking for updates...");let h=await _XI();if(!h)console.error("Failed to check for updates"),process.exit(1);if(h==="1.3.4")console.log(`${yN} is up to date`),process.exit(0);switch(console.log(`New version available: ${h}`),console.log("Installing update..."),await Sn()){case"success":console.log(`Successfully updated to version ${h}`);break;case"no_permissions":console.error("Error: Insufficient permissions to install update"),console.error("Try running with sudo or fix npm permissions"),process.exit(1);break;case"install_failed":console.error("Error: Failed to install update"),process.exit(1);break;case"in_progress":console.error("Error: Another instance is currently performing an update"),console.error("Please wait and try again later"),process.exit(1);break}process.exit(0)}),Z.command("log").description("Manage conversation logs.").argument("[number]","A number (0, 1, 2, etc.) to display a specific log",parseInt).option("-c, --cwd <cwd>","The current working directory",String,s2()).action(async(H,{cwd:h})=>{await aH(h,!1),JG("tengu_view_logs",{number:H?.toString()??""});let A={},{unmount:C}=Rd(QA.default.createElement(m_I,{context:A,type:"messages",logNumber:H}),l);A.unmount=C}),Z.command("error").description("View error logs. Optionally provide a number (0, -1, -2, etc.) to display a specific log.").argument("[number]","A number (0, 1, 2, etc.) to display a specific log",parseInt).option("-c, --cwd <cwd>","The current working directory",String,s2()).action(async(H,{cwd:h})=>{await aH(h,!1),JG("tengu_view_errors",{number:H?.toString()??""});let A={},{unmount:C}=Rd(QA.default.createElement(m_I,{context:A,type:"errors",logNumber:H}),l);A.unmount=C});let R=Z.command("context").description("Set static context (eg. claude context add-file ./src/*.py)");R.command("get <key>").option("-c, --cwd <cwd>","The current working directory",String,s2()).description("Get a value from context").action(async(H,{cwd:h})=>{await aH(h,!1),JG("tengu_context_get",{key:H});let{codeStyle:A,directoryStructure:C,...g}=await q2();console.log(g[H]),process.exit(0)}),R.command("set <key> <value>").description("Set a value in context").option("-c, --cwd <cwd>","The current working directory",String,s2()).action(async(H,h,{cwd:A})=>{await aH(A,!1),JG("tengu_context_set",{key:H}),g$Z(H,h),console.log(`Set context.${H} to "${h}"`),process.exit(0)}),R.command("list").description("List all context values").option("-c, --cwd <cwd>","The current working directory",String,s2()).action(async({cwd:H})=>{await aH(H,!1),JG("tengu_context_list",{});let{codeStyle:h,directoryStructure:A,gitStatus:C,...g}=await q2();console.log(JSON.stringify(g,null,2)),process.exit(0)}),R.command("remove <key>").description("Remove a value from context").option("-c, --cwd <cwd>","The current working directory",String,s2()).action(async(H,{cwd:h})=>{await aH(h,!1),JG("tengu_context_delete",{key:H}),a$Z(H),console.log(`Removed context.${H}`),process.exit(0)})}let Q=[...process.argv],X=Q.indexOf("resume");if(X>0){let R=Q.slice(X+1),H=[],h=[];for(let C=0;C<R.length;C++){let g=R[C];if(g.startsWith("-")){if(h.push(g),(g==="-c"||g==="--cwd")&&C+1<R.length)h.push(R[++C])}else H.push(g)}let A=[...Q.slice(0,X+1),...H.length>0?[H.join(" ")]:[],...h];try{await Z.parseAsync(A)}catch(C){if(C.code!=="commander.helpDisplayed")DG(C)}}else try{await Z.parseAsync(Q)}catch(R){if(R.code!=="commander.helpDisplayed")DG(R)}return Z}async function ppN(){if(process.stdin.isTTY)return"";let I="";for await(let G of process.stdin)I+=G;return I}process.on("exit",()=>{ypN(),IQ.stop(),_m.getInstance().close()});process.on("SIGINT",()=>{process.exit(0)});function ypN(){(process.stderr.isTTY?process.stderr:process.stdout.isTTY?process.stdout:void 0)?.write(`\x1B[?25h${Z3I}`)}vpN();export{ApN as completeOnboarding};