@nimbus21.ai/the-link 3.13.0 → 3.13.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/the-link.js +19 -19
- package/package.json +1 -1
package/bin/the-link.js
CHANGED
|
@@ -4,12 +4,12 @@ var GJ0=Object.create;var{getPrototypeOf:HJ0,defineProperty:HQ,getOwnPropertyNam
|
|
|
4
4
|
`).join(`
|
|
5
5
|
`+X),Z.push(Y+"m+"+OX.exports.humanize(this.diff)+"\x1B[0m")}else Z[0]=Dj0()+J+" "+Z[0]}function Dj0(){if(nS.inspectOpts.hideDate)return"";return new Date().toISOString()+" "}function Oj0(...Z){return process.stderr.write(DX.formatWithOptions(nS.inspectOpts,...Z)+`
|
|
6
6
|
`)}function Lj0(Z){if(Z)process.env.DEBUG=Z;else delete process.env.DEBUG}function Cj0(){return process.env.DEBUG}function Pj0(Z){Z.inspectOpts={};let J=Object.keys(nS.inspectOpts);for(let Q=0;Q<J.length;Q++)Z.inspectOpts[J[Q]]=nS.inspectOpts[J[Q]]}OX.exports=LB()(nS);var{formatters:oS}=OX.exports;oS.o=function(Z){return this.inspectOpts.colors=this.useColors,DX.inspect(Z,this.inspectOpts).split(`
|
|
7
|
-
`).map((J)=>J.trim()).join(" ")};oS.O=function(Z){return this.inspectOpts.colors=this.useColors,DX.inspect(Z,this.inspectOpts)}});var rS=j((Pa0,CB)=>{if(typeof process>"u"||process.type==="renderer"||!1||process.__nwjs)CB.exports=iS();else CB.exports=sS()});var AQ=j((Ma0,tS)=>{var PB=E("path").sep;tS.exports=function(Z){var J=Z.split(PB),Q=J.lastIndexOf("node_modules");if(Q===-1)return;if(!J[Q+1])return;var $=J[Q+1][0]==="@",Y=$?J[Q+1]+"/"+J[Q+2]:J[Q+1],X=$?3:2,W="",K=Q+X-1;for(var z=0;z<=K;z++)if(z===K)W+=J[z];else W+=J[z]+PB;var G="",H=J.length-1;for(var B=Q+X;B<=H;B++)if(B===H)G+=J[B];else G+=J[B]+PB;return{name:Y,basedir:W,path:G}}});var _7=j((Ra0,RB)=>{var X4=E("path"),V9=E("module"),o0=rS()("require-in-the-middle"),Ej0=AQ();RB.exports=IQ;RB.exports.Hook=IQ;var MB,LX;if(V9.isBuiltin)LX=V9.isBuiltin;else if(V9.builtinModules)LX=(Z)=>{if(Z.startsWith("node:"))return!0;if(MB===void 0)MB=new Set(V9.builtinModules);return MB.has(Z)};else throw Error("'require-in-the-middle' requires Node.js >=v9.3.0 or >=v8.10.0");var fj0=/([/\\]index)?(\.js)?$/;class eS{constructor(){this._localCache=new Map,this._kRitmExports=Symbol("RitmExports")}has(Z,J){if(this._localCache.has(Z))return!0;else if(!J){let Q=E.cache[Z];return!!(Q&&(this._kRitmExports in Q))}else return!1}get(Z,J){let Q=this._localCache.get(Z);if(Q!==void 0)return Q;else if(!J){let $=E.cache[Z];return $&&$[this._kRitmExports]}}set(Z,J,Q){if(Q)this._localCache.set(Z,J);else if(Z in E.cache)E.cache[Z][this._kRitmExports]=J;else o0('non-core module is unexpectedly not in require.cache: "%s"',Z),this._localCache.set(Z,J)}}function IQ(Z,J,Q){if(this instanceof IQ===!1)return new IQ(Z,J,Q);if(typeof Z==="function")Q=Z,Z=null,J=null;else if(typeof J==="function")Q=J,J=null;if(typeof V9._resolveFilename!=="function"){console.error("Error: Expected Module._resolveFilename to be a function (was: %s) - aborting!",typeof V9._resolveFilename),console.error("Please report this error as an issue related to Node.js %s at https://github.com/nodejs/require-in-the-middle/issues",process.version);return}this._cache=new eS,this._unhooked=!1,this._origRequire=V9.prototype.require;let $=this,Y=new Set,X=J?J.internals===!0:!1,W=Array.isArray(Z);if(o0("registering require hook"),this._require=V9.prototype.require=function(z){if($._unhooked===!0)return o0("ignoring require call - module is soft-unhooked"),$._origRequire.apply(this,arguments);return K.call(this,arguments,!1)},typeof process.getBuiltinModule==="function")this._origGetBuiltinModule=process.getBuiltinModule,this._getBuiltinModule=process.getBuiltinModule=function(z){if($._unhooked===!0)return o0("ignoring process.getBuiltinModule call - module is soft-unhooked"),$._origGetBuiltinModule.apply(this,arguments);return K.call(this,arguments,!0)};function K(z,G){let H=z[0],B=LX(H),V;if(B){if(V=H,H.startsWith("node:")){let C=H.slice(5);if(LX(C))V=C}}else if(G)return o0("call to process.getBuiltinModule with unknown built-in id"),$._origGetBuiltinModule.apply(this,z);else try{V=V9._resolveFilename(H,this)}catch(C){return o0('Module._resolveFilename("%s") threw %j, calling original Module.require',H,C.message),$._origRequire.apply(this,z)}let F,U;if(o0("processing %s module require('%s'): %s",B===!0?"core":"non-core",H,V),$._cache.has(V,B)===!0)return o0("returning already patched cached module: %s",V),$._cache.get(V,B);let w=Y.has(V);if(w===!1)Y.add(V);let D=G?$._origGetBuiltinModule.apply(this,z):$._origRequire.apply(this,z);if(w===!0)return o0("module is in the process of being patched already - ignoring: %s",V),D;if(Y.delete(V),B===!0){if(W===!0&&Z.includes(V)===!1)return o0("ignoring core module not on whitelist: %s",V),D;F=V}else if(W===!0&&Z.includes(V)){let C=X4.parse(V);F=C.name,U=C.dir}else{let C=Ej0(V);if(C===void 0)return o0("could not parse filename: %s",V),D;F=C.name,U=C.basedir;let R=yj0(C);o0("resolved filename to module: %s (id: %s, resolved: %s, basedir: %s)",F,H,R,U);let T=!1;if(W){if(!H.startsWith(".")&&Z.includes(H))F=H,T=!0;if(!Z.includes(F)&&!Z.includes(R))return D;if(Z.includes(R)&&R!==F)F=R,T=!0}if(!T){let S;try{S=E.resolve(F,{paths:[U]})}catch(m){return o0("could not resolve module: %s",F),$._cache.set(V,D,B),D}if(S!==V)if(X===!0)F=F+X4.sep+X4.relative(U,V),o0("preparing to process require of internal file: %s",F);else return o0("ignoring require of non-main module file: %s",S),$._cache.set(V,D,B),D}}$._cache.set(V,D,B),o0("calling require hook: %s",F);let L=Q(D,F,U);return $._cache.set(V,L,B),o0("returning module: %s",F),L}}IQ.prototype.unhook=function(){if(this._unhooked=!0,this._require===V9.prototype.require)V9.prototype.require=this._origRequire,o0("require unhook successful");else o0("require unhook unsuccessful");if(process.getBuiltinModule!==void 0)if(this._getBuiltinModule===process.getBuiltinModule)process.getBuiltinModule=this._origGetBuiltinModule,o0("process.getBuiltinModule unhook successful");else o0("process.getBuiltinModule unhook unsuccessful")};function yj0(Z){let J=X4.sep!=="/"?Z.path.split(X4.sep).join("/"):Z.path;return X4.posix.join(Z.name,J).replace(fj0,"")}});var $_=j((J_)=>{Object.defineProperty(J_,"__esModule",{value:!0});J_.ModuleNameTrie=J_.ModuleNameSeparator=void 0;J_.ModuleNameSeparator="/";class kB{hooks=[];children=new Map}class Z_{_trie=new kB;_counter=0;insert(Z){let J=this._trie;for(let Q of Z.moduleName.split(J_.ModuleNameSeparator)){let $=J.children.get(Q);if(!$)$=new kB,J.children.set(Q,$);J=$}J.hooks.push({hook:Z,insertedId:this._counter++})}search(Z,{maintainInsertionOrder:J,fullOnly:Q}={}){let $=this._trie,Y=[],X=!0;for(let W of Z.split(J_.ModuleNameSeparator)){let K=$.children.get(W);if(!K){X=!1;break}if(!Q)Y.push(...K.hooks);$=K}if(Q&&X)Y.push(...$.hooks);if(Y.length===0)return[];if(Y.length===1)return[Y[0].hook];if(J)Y.sort((W,K)=>W.insertedId-K.insertedId);return Y.map(({hook:W})=>W)}}J_.ModuleNameTrie=Z_});var K_=j((X_)=>{Object.defineProperty(X_,"__esModule",{value:!0});X_.RequireInTheMiddleSingleton=void 0;var Sj0=_7(),Y_=E("path"),AB=$_(),_j0=["afterEach","after","beforeEach","before","describe","it"].every((Z)=>{return typeof global[Z]==="function"});class CX{_moduleNameTrie=new AB.ModuleNameTrie;static _instance;constructor(){this._initialize()}_initialize(){new Sj0.Hook(null,{internals:!0},(Z,J,Q)=>{let $=hj0(J),Y=this._moduleNameTrie.search($,{maintainInsertionOrder:!0,fullOnly:Q===void 0});for(let{onRequire:X}of Y)Z=X(Z,J,Q);return Z})}register(Z,J){let Q={moduleName:Z,onRequire:J};return this._moduleNameTrie.insert(Q),Q}static getInstance(){if(_j0)return new CX;return this._instance=this._instance??new CX}}X_.RequireInTheMiddleSingleton=CX;function hj0(Z){return Y_.sep!==AB.ModuleNameSeparator?Z.split(Y_.sep).join(AB.ModuleNameSeparator):Z}});var V_=j((xj0)=>{var z_=[],IB=new WeakMap,G_=new WeakMap,H_=new Map,B_=[],bj0={set(Z,J,Q){let $=IB.get(Z),Y=$&&$[J];if(typeof Y==="function")return Y(Q);return!0},get(Z,J){if(J===Symbol.toStringTag)return"Module";let Q=G_.get(Z)[J];if(typeof Q==="function")return Q()},defineProperty(Z,J,Q){if(!("value"in Q))throw Error("Getters/setters are not supported for exports property descriptors.");let $=IB.get(Z),Y=$&&$[J];if(typeof Y==="function")return Y(Q.value);return!0}};function vj0(Z,J,Q,$,Y){H_.set(Z,Y),IB.set(J,Q),G_.set(J,$);let X=new Proxy(J,bj0);z_.forEach((W)=>W(Z,X,Y)),B_.push([Z,X,Y])}xj0.register=vj0;xj0.importHooks=z_;xj0.specifiers=H_;xj0.toHook=B_});var yB=j((Ta0,K4)=>{var F_=E("path"),uj0=AQ(),{fileURLToPath:lj0}=E("url"),{MessageChannel:pj0}=E("worker_threads"),{isBuiltin:TB}=E("module");if(!TB)TB=()=>!0;var{importHooks:EB,specifiers:ij0,toHook:oj0}=V_();function U_(Z){EB.push(Z),oj0.forEach(([J,Q,$])=>Z(J,Q,$))}function q_(Z){let J=EB.indexOf(Z);if(J>-1)EB.splice(J,1)}function W4(Z,J,Q,$){let Y=Z(J,Q,$);if(Y&&Y!==J){if("default"in J)J.default=Y}}var fB;function nj0(){let{port1:Z,port2:J}=new pj0,Q=0,$;fB=(K)=>{Q++,Z.postMessage(K)},Z.on("message",()=>{if(Q--,$&&Q<=0)$()}).unref();function Y(){let K=setInterval(()=>{},1000),z=new Promise((G)=>{$=G}).then(()=>{clearInterval(K)});if(Q===0)$();return z}let X=J;return{registerOptions:{data:{addHookMessagePort:X,include:[]},transferList:[X]},addHookMessagePort:X,waitForAllMessagesAcknowledged:Y}}function TQ(Z,J,Q){if(this instanceof TQ===!1)return new TQ(Z,J,Q);if(typeof Z==="function")Q=Z,Z=null,J=null;else if(typeof J==="function")Q=J,J=null;let $=J?J.internals===!0:!1;if(fB&&Array.isArray(Z))fB(Z);this._iitmHook=(Y,X,W)=>{let K=Y,z=K.startsWith("node:"),G,H;if(z){let B=Y.slice(5);if(TB(B))Y=B}else if(K.startsWith("file://")){let B=Error.stackTraceLimit;Error.stackTraceLimit=0;try{G=lj0(Y),Y=G}catch(V){}if(Error.stackTraceLimit=B,G){let V=uj0(G);if(V)Y=V.name,H=V.basedir}}if(Z){for(let B of Z)if(G&&B===G)W4(Q,X,G,void 0);else if(B===Y){if(!H)W4(Q,X,Y,H);else if(H.endsWith(ij0.get(K)))W4(Q,X,Y,H);else if($){let V=Y+F_.sep+F_.relative(H,G);W4(Q,X,V,H)}}else if(B===W)W4(Q,X,W,H)}else W4(Q,X,Y,H)},U_(this._iitmHook)}TQ.prototype.unhook=function(){q_(this._iitmHook)};K4.exports=TQ;K4.exports.Hook=TQ;K4.exports.addHook=U_;K4.exports.removeHook=q_;K4.exports.createAddHookMessageChannel=nj0});var SB=j((w_)=>{Object.defineProperty(w_,"__esModule",{value:!0});w_.isWrapped=w_.safeExecuteInTheMiddleAsync=w_.safeExecuteInTheMiddle=void 0;function aj0(Z,J,Q){let $,Y;try{Y=Z()}catch(X){$=X}finally{if(J($,Y),$&&!Q)throw $;return Y}}w_.safeExecuteInTheMiddle=aj0;async function sj0(Z,J,Q){let $,Y;try{Y=await Z()}catch(X){$=X}finally{if(await J($,Y),$&&!Q)throw $;return Y}}w_.safeExecuteInTheMiddleAsync=sj0;function rj0(Z){return typeof Z==="function"&&typeof Z.__original==="function"&&typeof Z.__unwrap==="function"&&Z.__wrapped===!0}w_.isWrapped=rj0});var M_=j((C_)=>{Object.defineProperty(C_,"__esModule",{value:!0});C_.InstrumentationBase=void 0;var EQ=E("path"),D_=E("util"),ZD0=hS(),_B=DB(),JD0=cS(),QD0=K_(),$D0=yB(),fQ=I(),YD0=_7(),XD0=E("fs"),WD0=SB();class L_ extends JD0.InstrumentationAbstract{_modules;_hooks=[];_requireInTheMiddleSingleton=QD0.RequireInTheMiddleSingleton.getInstance();_enabled=!1;constructor(Z,J,Q){super(Z,J,Q);let $=this.init();if($&&!Array.isArray($))$=[$];if(this._modules=$||[],this._config.enabled)this.enable()}_wrap=(Z,J,Q)=>{if((0,WD0.isWrapped)(Z[J]))this._unwrap(Z,J);if(!D_.types.isProxy(Z))return(0,_B.wrap)(Z,J,Q);else{let $=(0,_B.wrap)(Object.assign({},Z),J,Q);return Object.defineProperty(Z,J,{value:$}),$}};_unwrap=(Z,J)=>{if(!D_.types.isProxy(Z))return(0,_B.unwrap)(Z,J);else return Object.defineProperty(Z,J,{value:Z[J]})};_massWrap=(Z,J,Q)=>{if(!Z){fQ.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){fQ.diag.error("must provide one or more functions to wrap on modules");return}Z.forEach(($)=>{J.forEach((Y)=>{this._wrap($,Y,Q)})})};_massUnwrap=(Z,J)=>{if(!Z){fQ.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){fQ.diag.error("must provide one or more functions to wrap on modules");return}Z.forEach((Q)=>{J.forEach(($)=>{this._unwrap(Q,$)})})};_warnOnPreloadedModules(){this._modules.forEach((Z)=>{let{name:J}=Z;try{let Q=E.resolve(J);if(E.cache[Q])this._diag.warn(`Module ${J} has been loaded before ${this.instrumentationName} so it might not work, please initialize it before requiring ${J}`)}catch{}})}_extractPackageVersion(Z){try{let J=(0,XD0.readFileSync)(EQ.join(Z,"package.json"),{encoding:"utf8"}),Q=JSON.parse(J).version;return typeof Q==="string"?Q:void 0}catch{fQ.diag.warn("Failed extracting version",Z)}return}_onRequire(Z,J,Q,$){if(!$){if(typeof Z.patch==="function"){if(Z.moduleExports=J,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs core module on require hook",{module:Z.name}),Z.patch(J)}return J}let Y=this._extractPackageVersion($);if(Z.moduleVersion=Y,Z.name===Q){if(O_(Z.supportedVersions,Y,Z.includePrerelease)){if(typeof Z.patch==="function"){if(Z.moduleExports=J,this._enabled)return this._diag.debug("Applying instrumentation patch for module on require hook",{module:Z.name,version:Z.moduleVersion,baseDir:$}),Z.patch(J,Z.moduleVersion)}}return J}let X=Z.files??[],W=EQ.normalize(Q);return X.filter((z)=>z.name===W&&O_(z.supportedVersions,Y,Z.includePrerelease)).reduce((z,G)=>{if(G.moduleExports=z,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs module file on require hook",{module:Z.name,version:Z.moduleVersion,fileName:G.name,baseDir:$}),G.patch(z,Z.moduleVersion);return z},J)}enable(){if(this._enabled)return;if(this._enabled=!0,this._hooks.length>0){for(let Z of this._modules){if(typeof Z.patch==="function"&&Z.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module on instrumentation enabled",{module:Z.name,version:Z.moduleVersion}),Z.patch(Z.moduleExports,Z.moduleVersion);for(let J of Z.files)if(J.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module file on instrumentation enabled",{module:Z.name,version:Z.moduleVersion,fileName:J.name}),J.patch(J.moduleExports,Z.moduleVersion)}return}this._warnOnPreloadedModules();for(let Z of this._modules){let J=(X,W,K)=>{if(!K&&EQ.isAbsolute(W)){let z=EQ.parse(W);W=z.name,K=z.dir}return this._onRequire(Z,X,W,K)},Q=(X,W,K)=>{return this._onRequire(Z,X,W,K)},$=EQ.isAbsolute(Z.name)?new YD0.Hook([Z.name],{internals:!0},Q):this._requireInTheMiddleSingleton.register(Z.name,Q);this._hooks.push($);let Y=new $D0.Hook([Z.name],{internals:!0},J);this._hooks.push(Y)}}disable(){if(!this._enabled)return;this._enabled=!1;for(let Z of this._modules){if(typeof Z.unpatch==="function"&&Z.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module on instrumentation disabled",{module:Z.name,version:Z.moduleVersion}),Z.unpatch(Z.moduleExports,Z.moduleVersion);for(let J of Z.files)if(J.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module file on instrumentation disabled",{module:Z.name,version:Z.moduleVersion,fileName:J.name}),J.unpatch(J.moduleExports,Z.moduleVersion)}}isEnabled(){return this._enabled}}C_.InstrumentationBase=L_;function O_(Z,J,Q){if(typeof J>"u")return Z.includes("*");return Z.some(($)=>{return(0,ZD0.satisfies)(J,$,{includePrerelease:Q})})}});var R_=j((hB)=>{Object.defineProperty(hB,"__esModule",{value:!0});hB.normalize=void 0;var KD0=E("path");Object.defineProperty(hB,"normalize",{enumerable:!0,get:function(){return KD0.normalize}})});var k_=j((PX)=>{Object.defineProperty(PX,"__esModule",{value:!0});PX.normalize=PX.InstrumentationBase=void 0;var GD0=M_();Object.defineProperty(PX,"InstrumentationBase",{enumerable:!0,get:function(){return GD0.InstrumentationBase}});var HD0=R_();Object.defineProperty(PX,"normalize",{enumerable:!0,get:function(){return HD0.normalize}})});var bB=j((MX)=>{Object.defineProperty(MX,"__esModule",{value:!0});MX.normalize=MX.InstrumentationBase=void 0;var N_=k_();Object.defineProperty(MX,"InstrumentationBase",{enumerable:!0,get:function(){return N_.InstrumentationBase}});Object.defineProperty(MX,"normalize",{enumerable:!0,get:function(){return N_.normalize}})});var E_=j((I_)=>{Object.defineProperty(I_,"__esModule",{value:!0});I_.InstrumentationNodeModuleDefinition=void 0;class A_{files;name;supportedVersions;patch;unpatch;constructor(Z,J,Q,$,Y){this.files=Y||[],this.name=Z,this.supportedVersions=J,this.patch=Q,this.unpatch=$}}I_.InstrumentationNodeModuleDefinition=A_});var __=j((y_)=>{Object.defineProperty(y_,"__esModule",{value:!0});y_.InstrumentationNodeModuleFile=void 0;var FD0=bB();class f_{name;supportedVersions;patch;unpatch;constructor(Z,J,Q,$){this.name=(0,FD0.normalize)(Z),this.supportedVersions=J,this.patch=Q,this.unpatch=$}}y_.InstrumentationNodeModuleFile=f_});var x_=j((b_)=>{Object.defineProperty(b_,"__esModule",{value:!0});b_.semconvStabilityFromStr=b_.SemconvStability=void 0;var RX;(function(Z){Z[Z.STABLE=1]="STABLE",Z[Z.OLD=2]="OLD",Z[Z.DUPLICATE=3]="DUPLICATE"})(RX=b_.SemconvStability||(b_.SemconvStability={}));function UD0(Z,J){let Q=RX.OLD,$=J?.split(",").map((Y)=>Y.trim()).filter((Y)=>Y!=="");for(let Y of $??[])if(Y.toLowerCase()===Z+"/dup"){Q=RX.DUPLICATE;break}else if(Y.toLowerCase()===Z)Q=RX.STABLE;return Q}b_.semconvStabilityFromStr=UD0});var n=j((F9)=>{Object.defineProperty(F9,"__esModule",{value:!0});F9.semconvStabilityFromStr=F9.SemconvStability=F9.safeExecuteInTheMiddleAsync=F9.safeExecuteInTheMiddle=F9.isWrapped=F9.InstrumentationNodeModuleFile=F9.InstrumentationNodeModuleDefinition=F9.InstrumentationBase=F9.registerInstrumentations=void 0;var qD0=RS();Object.defineProperty(F9,"registerInstrumentations",{enumerable:!0,get:function(){return qD0.registerInstrumentations}});var wD0=bB();Object.defineProperty(F9,"InstrumentationBase",{enumerable:!0,get:function(){return wD0.InstrumentationBase}});var jD0=E_();Object.defineProperty(F9,"InstrumentationNodeModuleDefinition",{enumerable:!0,get:function(){return jD0.InstrumentationNodeModuleDefinition}});var DD0=__();Object.defineProperty(F9,"InstrumentationNodeModuleFile",{enumerable:!0,get:function(){return DD0.InstrumentationNodeModuleFile}});var vB=SB();Object.defineProperty(F9,"isWrapped",{enumerable:!0,get:function(){return vB.isWrapped}});Object.defineProperty(F9,"safeExecuteInTheMiddle",{enumerable:!0,get:function(){return vB.safeExecuteInTheMiddle}});Object.defineProperty(F9,"safeExecuteInTheMiddleAsync",{enumerable:!0,get:function(){return vB.safeExecuteInTheMiddleAsync}});var g_=x_();Object.defineProperty(F9,"SemconvStability",{enumerable:!0,get:function(){return g_.SemconvStability}});Object.defineProperty(F9,"semconvStabilityFromStr",{enumerable:!0,get:function(){return g_.semconvStabilityFromStr}})});var m_=j((d_)=>{Object.defineProperty(d_,"__esModule",{value:!0});d_.HTTP_FLAVOR_VALUE_HTTP_1_1=d_.NET_TRANSPORT_VALUE_IP_UDP=d_.NET_TRANSPORT_VALUE_IP_TCP=d_.ATTR_NET_TRANSPORT=d_.ATTR_NET_PEER_PORT=d_.ATTR_NET_PEER_NAME=d_.ATTR_NET_PEER_IP=d_.ATTR_NET_HOST_PORT=d_.ATTR_NET_HOST_NAME=d_.ATTR_NET_HOST_IP=d_.ATTR_HTTP_USER_AGENT=d_.ATTR_HTTP_URL=d_.ATTR_HTTP_TARGET=d_.ATTR_HTTP_STATUS_CODE=d_.ATTR_HTTP_SERVER_NAME=d_.ATTR_HTTP_SCHEME=d_.ATTR_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=d_.ATTR_HTTP_RESPONSE_CONTENT_LENGTH=d_.ATTR_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=d_.ATTR_HTTP_REQUEST_CONTENT_LENGTH=d_.ATTR_HTTP_METHOD=d_.ATTR_HTTP_HOST=d_.ATTR_HTTP_FLAVOR=d_.ATTR_HTTP_CLIENT_IP=d_.USER_AGENT_SYNTHETIC_TYPE_VALUE_TEST=d_.USER_AGENT_SYNTHETIC_TYPE_VALUE_BOT=d_.ATTR_USER_AGENT_SYNTHETIC_TYPE=void 0;d_.ATTR_USER_AGENT_SYNTHETIC_TYPE="user_agent.synthetic.type";d_.USER_AGENT_SYNTHETIC_TYPE_VALUE_BOT="bot";d_.USER_AGENT_SYNTHETIC_TYPE_VALUE_TEST="test";d_.ATTR_HTTP_CLIENT_IP="http.client_ip";d_.ATTR_HTTP_FLAVOR="http.flavor";d_.ATTR_HTTP_HOST="http.host";d_.ATTR_HTTP_METHOD="http.method";d_.ATTR_HTTP_REQUEST_CONTENT_LENGTH="http.request_content_length";d_.ATTR_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED="http.request_content_length_uncompressed";d_.ATTR_HTTP_RESPONSE_CONTENT_LENGTH="http.response_content_length";d_.ATTR_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED="http.response_content_length_uncompressed";d_.ATTR_HTTP_SCHEME="http.scheme";d_.ATTR_HTTP_SERVER_NAME="http.server_name";d_.ATTR_HTTP_STATUS_CODE="http.status_code";d_.ATTR_HTTP_TARGET="http.target";d_.ATTR_HTTP_URL="http.url";d_.ATTR_HTTP_USER_AGENT="http.user_agent";d_.ATTR_NET_HOST_IP="net.host.ip";d_.ATTR_NET_HOST_NAME="net.host.name";d_.ATTR_NET_HOST_PORT="net.host.port";d_.ATTR_NET_PEER_IP="net.peer.ip";d_.ATTR_NET_PEER_NAME="net.peer.name";d_.ATTR_NET_PEER_PORT="net.peer.port";d_.ATTR_NET_TRANSPORT="net.transport";d_.NET_TRANSPORT_VALUE_IP_TCP="ip_tcp";d_.NET_TRANSPORT_VALUE_IP_UDP="ip_udp";d_.HTTP_FLAVOR_VALUE_HTTP_1_1="1.1"});var l_=j((u_)=>{Object.defineProperty(u_,"__esModule",{value:!0});u_.AttributeNames=void 0;var iD0;(function(Z){Z.HTTP_ERROR_NAME="http.error_name",Z.HTTP_ERROR_MESSAGE="http.error_message",Z.HTTP_STATUS_TEXT="http.status_text"})(iD0=u_.AttributeNames||(u_.AttributeNames={}))});var gB=j((p_)=>{Object.defineProperty(p_,"__esModule",{value:!0});p_.DEFAULT_QUERY_STRINGS_TO_REDACT=p_.STR_REDACTED=p_.SYNTHETIC_BOT_NAMES=p_.SYNTHETIC_TEST_NAMES=void 0;p_.SYNTHETIC_TEST_NAMES=["alwayson"];p_.SYNTHETIC_BOT_NAMES=["googlebot","bingbot"];p_.STR_REDACTED="REDACTED";p_.DEFAULT_QUERY_STRINGS_TO_REDACT=["sig","Signature","AWSAccessKeyId","X-Goog-Signature"]});var n_=j((ea0,o_)=>{var sD0=E("util");function dB(Z,J){Error.captureStackTrace(this,dB),this.name=this.constructor.name,this.message=Z,this.input=J}sD0.inherits(dB,Error);o_.exports=dB});var s_=j((Zs0,a_)=>{function rD0(Z){return Z===34||Z===40||Z===41||Z===44||Z===47||Z>=58&&Z<=64||Z>=91&&Z<=93||Z===123||Z===125}function tD0(Z){return Z===33||Z>=35&&Z<=39||Z===42||Z===43||Z===45||Z===46||Z>=48&&Z<=57||Z>=65&&Z<=90||Z>=94&&Z<=122||Z===124||Z===126}function eD0(Z){return Z>=32&&Z<=126}function Z20(Z){return Z>=128&&Z<=255}a_.exports={isDelimiter:rD0,isTokenChar:tD0,isExtended:Z20,isPrint:eD0}});var Jh=j((Js0,Zh)=>{var J20=E("util"),z4=n_(),kX=s_(),Q20=kX.isDelimiter,r_=kX.isTokenChar,t_=kX.isExtended,$20=kX.isPrint;function e_(Z){return Z.replace(/\\(.)/g,"$1")}function yQ(Z,J){return J20.format("Unexpected character '%s' at index %d",Z.charAt(J),J)}function Y20(Z){var J=!1,Q=!1,$=!1,Y={},X=[],W=-1,K=-1,z,G;for(var H=0;H<Z.length;H++)if(G=Z.charCodeAt(H),z===void 0){if(H!==0&&W===-1&&(G===32||G===9))continue;if(r_(G)){if(W===-1)W=H}else if(G===61&&W!==-1)z=Z.slice(W,H).toLowerCase(),W=-1;else throw new z4(yQ(Z,H),Z)}else if(Q&&(G===9||$20(G)||t_(G)))Q=!1;else if(r_(G)){if(K!==-1)throw new z4(yQ(Z,H),Z);if(W===-1)W=H}else if(Q20(G)||t_(G))if($){if(G===34)$=!1,K=H;else if(G===92){if(W===-1)W=H;Q=J=!0}else if(W===-1)W=H}else if(G===34&&Z.charCodeAt(H-1)===61)$=!0;else if((G===44||G===59)&&(W!==-1||K!==-1)){if(W!==-1){if(K===-1)K=H;Y[z]=J?e_(Z.slice(W,K)):Z.slice(W,K)}else Y[z]="";if(G===44)X.push(Y),Y={};z=void 0,W=K=-1}else throw new z4(yQ(Z,H),Z);else if(G===32||G===9){if(K!==-1)continue;if($){if(W===-1)W=H}else if(W!==-1)K=H;else throw new z4(yQ(Z,H),Z)}else throw new z4(yQ(Z,H),Z);if(z===void 0||$||W===-1&&K===-1||G===32||G===9)throw new z4("Unexpected end of input",Z);if(W!==-1){if(K===-1)K=H;Y[z]=J?e_(Z.slice(W,K)):Z.slice(W,K)}else Y[z]="";return X.push(Y),X}Zh.exports=Y20});var qh=j((Hh)=>{Object.defineProperty(Hh,"__esModule",{value:!0});Hh.headerCapture=Hh.getIncomingStableRequestMetricAttributesOnResponse=Hh.getIncomingRequestMetricAttributesOnResponse=Hh.getIncomingRequestAttributesOnResponse=Hh.getIncomingRequestMetricAttributes=Hh.getIncomingRequestAttributes=Hh.getRemoteClientAddress=Hh.getOutgoingStableRequestMetricAttributesOnResponse=Hh.getOutgoingRequestMetricAttributesOnResponse=Hh.getOutgoingRequestAttributesOnResponse=Hh.setAttributesFromHttpKind=Hh.getOutgoingRequestMetricAttributes=Hh.getOutgoingRequestAttributes=Hh.extractHostnameAndPort=Hh.isValidOptionsType=Hh.getRequestInfo=Hh.isCompressed=Hh.setResponseContentLengthAttribute=Hh.setRequestContentLengthAttribute=Hh.setSpanWithError=Hh.satisfiesPattern=Hh.parseResponseStatus=Hh.getAbsoluteUrl=void 0;var SQ=I(),J0=Y0(),u=m_(),Qh=YB(),j6=n(),X20=E("url"),AX=l_(),$h=gB(),NX=gB(),W20=Jh(),K20=(Z,J,Q="http:",$=Array.from(NX.DEFAULT_QUERY_STRINGS_TO_REDACT))=>{let Y=Z||{},X=Y.protocol||Q,W=(Y.port||"").toString(),K=Y.path||"/",z=Y.host||Y.hostname||J.host||"localhost";if(z.indexOf(":")===-1&&W&&W!=="80"&&W!=="443")z+=`:${W}`;if(K.includes("?"))try{let H=new URL(K,"http://localhost"),B=$||[];for(let V of B)if(H.searchParams.get(V))H.searchParams.set(V,NX.STR_REDACTED);K=`${H.pathname}${H.search}`}catch{}let G=Y.auth?`${NX.STR_REDACTED}:${NX.STR_REDACTED}@`:"";return`${X}//${G}${z}${K}`};Hh.getAbsoluteUrl=K20;var z20=(Z,J)=>{let Q=Z===SQ.SpanKind.CLIENT?400:500;if(J&&J>=100&&J<Q)return SQ.SpanStatusCode.UNSET;return SQ.SpanStatusCode.ERROR};Hh.parseResponseStatus=z20;var G20=(Z,J)=>{if(typeof J==="string")return J===Z;else if(J instanceof RegExp)return J.test(Z);else if(typeof J==="function")return J(Z);else throw TypeError("Pattern is in unsupported datatype")};Hh.satisfiesPattern=G20;var H20=(Z,J,Q)=>{let $=J.message;if(Q&j6.SemconvStability.OLD)Z.setAttribute(AX.AttributeNames.HTTP_ERROR_NAME,J.name),Z.setAttribute(AX.AttributeNames.HTTP_ERROR_MESSAGE,$);if(Q&j6.SemconvStability.STABLE)Z.setAttribute(J0.ATTR_ERROR_TYPE,J.name);Z.setStatus({code:SQ.SpanStatusCode.ERROR,message:$}),Z.recordException(J)};Hh.setSpanWithError=H20;var B20=(Z,J)=>{let Q=Xh(Z.headers);if(Q===null)return;if(Hh.isCompressed(Z.headers))J[u.ATTR_HTTP_REQUEST_CONTENT_LENGTH]=Q;else J[u.ATTR_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED]=Q};Hh.setRequestContentLengthAttribute=B20;var V20=(Z,J)=>{let Q=Xh(Z.headers);if(Q===null)return;if(Hh.isCompressed(Z.headers))J[u.ATTR_HTTP_RESPONSE_CONTENT_LENGTH]=Q;else J[u.ATTR_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED]=Q};Hh.setResponseContentLengthAttribute=V20;function Xh(Z){let J=Z["content-length"];if(J===void 0)return null;let Q=parseInt(J,10);if(isNaN(Q))return null;return Q}var F20=(Z)=>{let J=Z["content-encoding"];return!!J&&J!=="identity"};Hh.isCompressed=F20;function U20(Z){let{hostname:J,pathname:Q,port:$,username:Y,password:X,search:W,protocol:K,hash:z,href:G,origin:H,host:B}=new URL(Z),V={protocol:K,hostname:J&&J[0]==="["?J.slice(1,-1):J,hash:z,search:W,pathname:Q,path:`${Q||""}${W||""}`,href:G,origin:H,host:B};if($!=="")V.port=Number($);if(Y||X)V.auth=`${decodeURIComponent(Y)}:${decodeURIComponent(X)}`;return V}var q20=(Z,J,Q)=>{let $,Y,X,W=!1;if(typeof J==="string"){try{let z=U20(J);X=z,$=z.pathname||"/"}catch(z){W=!0,Z.verbose("Unable to parse URL provided to HTTP request, using fallback to determine path. Original error:",z),X={path:J},$=X.path||"/"}if(Y=`${X.protocol||"http:"}//${X.host}`,Q!==void 0)Object.assign(X,Q)}else if(J instanceof X20.URL){if(X={protocol:J.protocol,hostname:typeof J.hostname==="string"&&J.hostname.startsWith("[")?J.hostname.slice(1,-1):J.hostname,path:`${J.pathname||""}${J.search||""}`},J.port!=="")X.port=Number(J.port);if(J.username||J.password)X.auth=`${J.username}:${J.password}`;if($=J.pathname,Y=J.origin,Q!==void 0)Object.assign(X,Q)}else{X=Object.assign({protocol:J.host?"http:":void 0},J);let z=X.host||(X.port!=null?`${X.hostname}${X.port}`:X.hostname);if(Y=`${X.protocol||"http:"}//${z}`,$=J.pathname,!$&&X.path)try{$=new URL(X.path,Y).pathname||"/"}catch{$="/"}}let K=X.method?X.method.toUpperCase():"GET";return{origin:Y,pathname:$,method:K,optionsParsed:X,invalidUrl:W}};Hh.getRequestInfo=q20;var w20=(Z)=>{if(!Z)return!1;let J=typeof Z;return J==="string"||J==="object"&&!Array.isArray(Z)};Hh.isValidOptionsType=w20;var j20=(Z)=>{if(Z.hostname&&Z.port)return{hostname:Z.hostname,port:Z.port};let J=Z.host?.match(/^([^:/ ]+)(:\d{1,5})?/)||null,Q=Z.hostname||(J===null?"localhost":J[1]),$=Z.port;if(!$)if(J&&J[2])$=J[2].substring(1);else $=Z.protocol==="https:"?"443":"80";return{hostname:Q,port:$}};Hh.extractHostnameAndPort=j20;var D20=(Z,J,Q,$)=>{let{hostname:Y,port:X}=J,W=Z.method??"GET",K=zh(W),z=Z.headers||{},G=z["user-agent"],H=Hh.getAbsoluteUrl(Z,z,`${J.component}:`,J.redactedQueryParams),B={[u.ATTR_HTTP_URL]:H,[u.ATTR_HTTP_METHOD]:W,[u.ATTR_HTTP_TARGET]:Z.path||"/",[u.ATTR_NET_PEER_NAME]:Y,[u.ATTR_HTTP_HOST]:z.host??`${Y}:${X}`},V={[J0.ATTR_HTTP_REQUEST_METHOD]:K,[J0.ATTR_SERVER_ADDRESS]:Y,[J0.ATTR_SERVER_PORT]:Number(X),[J0.ATTR_URL_FULL]:H,[J0.ATTR_USER_AGENT_ORIGINAL]:G};if(W!==K)V[J0.ATTR_HTTP_REQUEST_METHOD_ORIGINAL]=W;if($&&G)V[u.ATTR_USER_AGENT_SYNTHETIC_TYPE]=Wh(G);if(G!==void 0)B[u.ATTR_HTTP_USER_AGENT]=G;switch(Q){case j6.SemconvStability.STABLE:return Object.assign(V,J.hookAttributes);case j6.SemconvStability.OLD:return Object.assign(B,J.hookAttributes)}return Object.assign(B,V,J.hookAttributes)};Hh.getOutgoingRequestAttributes=D20;var O20=(Z)=>{let J={};return J[u.ATTR_HTTP_METHOD]=Z[u.ATTR_HTTP_METHOD],J[u.ATTR_NET_PEER_NAME]=Z[u.ATTR_NET_PEER_NAME],J};Hh.getOutgoingRequestMetricAttributes=O20;var L20=(Z,J)=>{if(Z)if(J[u.ATTR_HTTP_FLAVOR]=Z,Z.toUpperCase()!=="QUIC")J[u.ATTR_NET_TRANSPORT]=u.NET_TRANSPORT_VALUE_IP_TCP;else J[u.ATTR_NET_TRANSPORT]=u.NET_TRANSPORT_VALUE_IP_UDP};Hh.setAttributesFromHttpKind=L20;var Wh=(Z)=>{let J=String(Z).toLowerCase();for(let Q of $h.SYNTHETIC_TEST_NAMES)if(J.includes(Q))return u.USER_AGENT_SYNTHETIC_TYPE_VALUE_TEST;for(let Q of $h.SYNTHETIC_BOT_NAMES)if(J.includes(Q))return u.USER_AGENT_SYNTHETIC_TYPE_VALUE_BOT;return},C20=(Z,J)=>{let{statusCode:Q,statusMessage:$,httpVersion:Y,socket:X}=Z,W={},K={};if(Q!=null)K[J0.ATTR_HTTP_RESPONSE_STATUS_CODE]=Q;if(X){let{remoteAddress:z,remotePort:G}=X;W[u.ATTR_NET_PEER_IP]=z,W[u.ATTR_NET_PEER_PORT]=G,K[J0.ATTR_NETWORK_PEER_ADDRESS]=z,K[J0.ATTR_NETWORK_PEER_PORT]=G,K[J0.ATTR_NETWORK_PROTOCOL_VERSION]=Z.httpVersion}if(Hh.setResponseContentLengthAttribute(Z,W),Q)W[u.ATTR_HTTP_STATUS_CODE]=Q,W[AX.AttributeNames.HTTP_STATUS_TEXT]=($||"").toUpperCase();switch(Hh.setAttributesFromHttpKind(Y,W),J){case j6.SemconvStability.STABLE:return K;case j6.SemconvStability.OLD:return W}return Object.assign(W,K)};Hh.getOutgoingRequestAttributesOnResponse=C20;var P20=(Z)=>{let J={};return J[u.ATTR_NET_PEER_PORT]=Z[u.ATTR_NET_PEER_PORT],J[u.ATTR_HTTP_STATUS_CODE]=Z[u.ATTR_HTTP_STATUS_CODE],J[u.ATTR_HTTP_FLAVOR]=Z[u.ATTR_HTTP_FLAVOR],J};Hh.getOutgoingRequestMetricAttributesOnResponse=P20;var M20=(Z)=>{let J={};if(Z[J0.ATTR_NETWORK_PROTOCOL_VERSION])J[J0.ATTR_NETWORK_PROTOCOL_VERSION]=Z[J0.ATTR_NETWORK_PROTOCOL_VERSION];if(Z[J0.ATTR_HTTP_RESPONSE_STATUS_CODE])J[J0.ATTR_HTTP_RESPONSE_STATUS_CODE]=Z[J0.ATTR_HTTP_RESPONSE_STATUS_CODE];return J};Hh.getOutgoingStableRequestMetricAttributesOnResponse=M20;function GZ(Z,J){let Q=Z.split(":");if(Q.length===1){if(J==="http")return{host:Q[0],port:"80"};if(J==="https")return{host:Q[0],port:"443"};return{host:Q[0]}}if(Q.length===2)return{host:Q[0],port:Q[1]};if(Q[0].startsWith("[")){if(Q[Q.length-1].endsWith("]")){if(J==="http")return{host:Z,port:"80"};if(J==="https")return{host:Z,port:"443"}}else if(Q[Q.length-2].endsWith("]"))return{host:Q.slice(0,-1).join(":"),port:Q[Q.length-1]}}return{host:Z}}function R20(Z,J){let Q=Z.headers.forwarded;if(Q){for(let X of Gh(Q))if(X.host)return GZ(X.host,X.proto)}let $=Z.headers["x-forwarded-host"];if(typeof $==="string"){if(typeof Z.headers["x-forwarded-proto"]==="string")return GZ($,Z.headers["x-forwarded-proto"]);if(Array.isArray(Z.headers["x-forwarded-proto"]))return GZ($,Z.headers["x-forwarded-proto"][0]);return GZ($)}else if(Array.isArray($)&&typeof $[0]==="string"&&$[0].length>0){if(typeof Z.headers["x-forwarded-proto"]==="string")return GZ($[0],Z.headers["x-forwarded-proto"]);if(Array.isArray(Z.headers["x-forwarded-proto"]))return GZ($[0],Z.headers["x-forwarded-proto"][0]);return GZ($[0])}let Y=Z.headers.host;if(typeof Y==="string"&&Y.length>0)return GZ(Y,J);return null}function Kh(Z){let J=Z.headers.forwarded;if(J){for(let Y of Gh(J))if(Y.for)return Yh(Y.for)}let Q=Z.headers["x-forwarded-for"];if(Q){let Y;if(typeof Q==="string")Y=Q;else if(Array.isArray(Q))Y=Q[0];if(typeof Y==="string")return Y=Y.split(",")[0].trim(),Yh(Y)}let $=Z.socket.remoteAddress;if($)return $;return null}Hh.getRemoteClientAddress=Kh;function Yh(Z){try{let{hostname:J}=new URL(`http://${Z}`);if(J.startsWith("[")&&J.endsWith("]"))return J.slice(1,-1);return J}catch{return Z}}function k20(Z,J,Q){try{if(J.headers.host)return new URL(J.url??"/",`${Z}://${J.headers.host}`);else{let $=new URL(J.url??"/",`${Z}://localhost`);return{pathname:$.pathname,search:$.search,toString:function(){return $.pathname+$.search}}}}catch($){return Q.verbose("Unable to get URL from request",$),{}}}var N20=(Z,J,Q)=>{let{component:$,enableSyntheticSourceDetection:Y,hookAttributes:X,semconvStability:W,serverName:K}=J,{headers:z,httpVersion:G,method:H}=Z,{host:B,"user-agent":V,"x-forwarded-for":F}=z,U=k20($,Z,Q),w,D;if(W!==j6.SemconvStability.OLD){let L=zh(H),C=R20(Z,$),R=Kh(Z);if(w={[J0.ATTR_HTTP_REQUEST_METHOD]:L,[J0.ATTR_URL_SCHEME]:$,[J0.ATTR_SERVER_ADDRESS]:C?.host,[J0.ATTR_NETWORK_PEER_ADDRESS]:Z.socket.remoteAddress,[J0.ATTR_NETWORK_PEER_PORT]:Z.socket.remotePort,[J0.ATTR_NETWORK_PROTOCOL_VERSION]:Z.httpVersion,[J0.ATTR_USER_AGENT_ORIGINAL]:V},U.pathname!=null)w[J0.ATTR_URL_PATH]=U.pathname;if(U.search)w[J0.ATTR_URL_QUERY]=U.search.slice(1);if(R!=null)w[J0.ATTR_CLIENT_ADDRESS]=R;if(C?.port!=null)w[J0.ATTR_SERVER_PORT]=Number(C.port);if(H!==L)w[J0.ATTR_HTTP_REQUEST_METHOD_ORIGINAL]=H;if(Y&&V)w[u.ATTR_USER_AGENT_SYNTHETIC_TYPE]=Wh(V)}if(W!==j6.SemconvStability.STABLE){let L=B?.replace(/^(.*)(:[0-9]{1,5})/,"$1")||"localhost";if(D={[u.ATTR_HTTP_URL]:U.toString(),[u.ATTR_HTTP_HOST]:B,[u.ATTR_NET_HOST_NAME]:L,[u.ATTR_HTTP_METHOD]:H,[u.ATTR_HTTP_SCHEME]:$},typeof F==="string")D[u.ATTR_HTTP_CLIENT_IP]=F.split(",")[0];if(typeof K==="string")D[u.ATTR_HTTP_SERVER_NAME]=K;if(U.pathname)D[u.ATTR_HTTP_TARGET]=U.pathname+U.search||"/";if(V!==void 0)D[u.ATTR_HTTP_USER_AGENT]=V;Hh.setRequestContentLengthAttribute(Z,D),Hh.setAttributesFromHttpKind(G,D)}switch(W){case j6.SemconvStability.STABLE:return Object.assign(w,X);case j6.SemconvStability.OLD:return Object.assign(D,X);default:return Object.assign(D,w,X)}};Hh.getIncomingRequestAttributes=N20;var A20=(Z)=>{let J={};return J[u.ATTR_HTTP_SCHEME]=Z[u.ATTR_HTTP_SCHEME],J[u.ATTR_HTTP_METHOD]=Z[u.ATTR_HTTP_METHOD],J[u.ATTR_NET_HOST_NAME]=Z[u.ATTR_NET_HOST_NAME],J[u.ATTR_HTTP_FLAVOR]=Z[u.ATTR_HTTP_FLAVOR],J};Hh.getIncomingRequestMetricAttributes=A20;var I20=(Z,J,Q)=>{let{socket:$}=Z,{statusCode:Y,statusMessage:X}=J,W={[J0.ATTR_HTTP_RESPONSE_STATUS_CODE]:Y},K=(0,Qh.getRPCMetadata)(SQ.context.active()),z={};if($){let{localAddress:G,localPort:H,remoteAddress:B,remotePort:V}=$;z[u.ATTR_NET_HOST_IP]=G,z[u.ATTR_NET_HOST_PORT]=H,z[u.ATTR_NET_PEER_IP]=B,z[u.ATTR_NET_PEER_PORT]=V}if(z[u.ATTR_HTTP_STATUS_CODE]=Y,z[AX.AttributeNames.HTTP_STATUS_TEXT]=(X||"").toUpperCase(),K?.type===Qh.RPCType.HTTP&&K.route!==void 0)z[J0.ATTR_HTTP_ROUTE]=K.route,W[J0.ATTR_HTTP_ROUTE]=K.route;switch(Q){case j6.SemconvStability.STABLE:return W;case j6.SemconvStability.OLD:return z}return Object.assign(z,W)};Hh.getIncomingRequestAttributesOnResponse=I20;var T20=(Z)=>{let J={};if(J[u.ATTR_HTTP_STATUS_CODE]=Z[u.ATTR_HTTP_STATUS_CODE],J[u.ATTR_NET_HOST_PORT]=Z[u.ATTR_NET_HOST_PORT],Z[J0.ATTR_HTTP_ROUTE]!==void 0)J[J0.ATTR_HTTP_ROUTE]=Z[J0.ATTR_HTTP_ROUTE];return J};Hh.getIncomingRequestMetricAttributesOnResponse=T20;var E20=(Z)=>{let J={};if(Z[J0.ATTR_HTTP_ROUTE]!==void 0)J[J0.ATTR_HTTP_ROUTE]=Z[J0.ATTR_HTTP_ROUTE];if(Z[J0.ATTR_HTTP_RESPONSE_STATUS_CODE])J[J0.ATTR_HTTP_RESPONSE_STATUS_CODE]=Z[J0.ATTR_HTTP_RESPONSE_STATUS_CODE];return J};Hh.getIncomingStableRequestMetricAttributesOnResponse=E20;function f20(Z,J,Q){let $=new Map;for(let Y=0,X=J.length;Y<X;Y++){let W=J[Y].toLowerCase();if(Q&j6.SemconvStability.STABLE)$.set(W,W);else $.set(W,W.replaceAll("-","_"))}return(Y)=>{let X={};for(let W of $.keys()){let K=Y(W);if(K===void 0)continue;let z=$.get(W),G=`http.${Z}.header.${z}`;if(typeof K==="string")X[G]=[K];else if(Array.isArray(K))X[G]=K;else X[G]=[K]}return X}}Hh.headerCapture=f20;var y20=new Set(["GET","HEAD","POST","PUT","DELETE","CONNECT","OPTIONS","TRACE","PATCH","QUERY"]);function zh(Z){if(Z==null)return"GET";let J=Z.toUpperCase();if(y20.has(J))return J;return"_OTHER"}function Gh(Z){try{return W20(Z)}catch{return[]}}});var Oh=j((jh)=>{Object.defineProperty(jh,"__esModule",{value:!0});jh.HttpInstrumentation=void 0;var r=I(),HZ=YB(),s20=E("url"),r20=oy(),q1=n(),uB=E("events"),I0=Y0(),n0=qh();class wh extends q1.InstrumentationBase{_spanNotEnded=new WeakSet;_headerCapture;_httpPatched=!1;_httpsPatched=!1;_semconvStability=q1.SemconvStability.OLD;constructor(Z={}){super("@opentelemetry/instrumentation-http",r20.VERSION,Z);this._semconvStability=(0,q1.semconvStabilityFromStr)("http",process.env.OTEL_SEMCONV_STABILITY_OPT_IN),this._headerCapture=this._createHeaderCapture(this._semconvStability)}_updateMetricInstruments(){this._oldHttpServerDurationHistogram=this.meter.createHistogram("http.server.duration",{description:"Measures the duration of inbound HTTP requests.",unit:"ms",valueType:r.ValueType.DOUBLE}),this._oldHttpClientDurationHistogram=this.meter.createHistogram("http.client.duration",{description:"Measures the duration of outbound HTTP requests.",unit:"ms",valueType:r.ValueType.DOUBLE}),this._stableHttpServerDurationHistogram=this.meter.createHistogram(I0.METRIC_HTTP_SERVER_REQUEST_DURATION,{description:"Duration of HTTP server requests.",unit:"s",valueType:r.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}}),this._stableHttpClientDurationHistogram=this.meter.createHistogram(I0.METRIC_HTTP_CLIENT_REQUEST_DURATION,{description:"Duration of HTTP client requests.",unit:"s",valueType:r.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}})}_recordServerDuration(Z,J,Q){if(this._semconvStability&q1.SemconvStability.OLD)this._oldHttpServerDurationHistogram.record(Z,J);if(this._semconvStability&q1.SemconvStability.STABLE)this._stableHttpServerDurationHistogram.record(Z/1000,Q)}_recordClientDuration(Z,J,Q){if(this._semconvStability&q1.SemconvStability.OLD)this._oldHttpClientDurationHistogram.record(Z,J);if(this._semconvStability&q1.SemconvStability.STABLE)this._stableHttpClientDurationHistogram.record(Z/1000,Q)}setConfig(Z={}){super.setConfig(Z),this._headerCapture=this._createHeaderCapture(this._semconvStability)}init(){return[this._getHttpsInstrumentation(),this._getHttpInstrumentation()]}_getHttpInstrumentation(){return new q1.InstrumentationNodeModuleDefinition("http",["*"],(Z)=>{if(this._httpPatched)return Z;this._httpPatched=!0;let J=Z[Symbol.toStringTag]==="Module";if(!this.getConfig().disableOutgoingRequestInstrumentation){let Q=this._wrap(Z,"request",this._getPatchOutgoingRequestFunction("http")),$=this._wrap(Z,"get",this._getPatchOutgoingGetFunction(Q));if(J)Z.default.request=Q,Z.default.get=$}if(!this.getConfig().disableIncomingRequestInstrumentation)this._wrap(Z.Server.prototype,"emit",this._getPatchIncomingRequestFunction("http"));return Z},(Z)=>{if(this._httpPatched=!1,Z===void 0)return;if(!this.getConfig().disableOutgoingRequestInstrumentation)this._unwrap(Z,"request"),this._unwrap(Z,"get");if(!this.getConfig().disableIncomingRequestInstrumentation)this._unwrap(Z.Server.prototype,"emit")})}_getHttpsInstrumentation(){return new q1.InstrumentationNodeModuleDefinition("https",["*"],(Z)=>{if(this._httpsPatched)return Z;this._httpsPatched=!0;let J=Z[Symbol.toStringTag]==="Module";if(!this.getConfig().disableOutgoingRequestInstrumentation){let Q=this._wrap(Z,"request",this._getPatchHttpsOutgoingRequestFunction("https")),$=this._wrap(Z,"get",this._getPatchHttpsOutgoingGetFunction(Q));if(J)Z.default.request=Q,Z.default.get=$}if(!this.getConfig().disableIncomingRequestInstrumentation)this._wrap(Z.Server.prototype,"emit",this._getPatchIncomingRequestFunction("https"));return Z},(Z)=>{if(this._httpsPatched=!1,Z===void 0)return;if(!this.getConfig().disableOutgoingRequestInstrumentation)this._unwrap(Z,"request"),this._unwrap(Z,"get");if(!this.getConfig().disableIncomingRequestInstrumentation)this._unwrap(Z.Server.prototype,"emit")})}_getPatchIncomingRequestFunction(Z){return(J)=>{return this._incomingRequestFunction(Z,J)}}_getPatchOutgoingRequestFunction(Z){return(J)=>{return this._outgoingRequestFunction(Z,J)}}_getPatchOutgoingGetFunction(Z){return(J)=>{return function($,...Y){let X=Z($,...Y);return X.end(),X}}}_getPatchHttpsOutgoingRequestFunction(Z){return(J)=>{let Q=this;return function(Y,...X){if(Z==="https"&&typeof Y==="object"&&Y?.constructor?.name!=="URL")Y=Object.assign({},Y),Q._setDefaultOptions(Y);return Q._getPatchOutgoingRequestFunction(Z)(J)(Y,...X)}}}_setDefaultOptions(Z){Z.protocol=Z.protocol||"https:",Z.port=Z.port||443}_getPatchHttpsOutgoingGetFunction(Z){return(J)=>{let Q=this;return function(Y,...X){return Q._getPatchOutgoingGetFunction(Z)(J)(Y,...X)}}}_traceClientRequest(Z,J,Q,$,Y){if(this.getConfig().requestHook)this._callRequestHook(J,Z);let X=!1;return Z.prependListener("response",(W)=>{if(this._diag.debug("outgoingRequest on response()"),Z.listenerCount("response")<=1)W.resume();let K=(0,n0.getOutgoingRequestAttributesOnResponse)(W,this._semconvStability);if(J.setAttributes(K),$=Object.assign($,(0,n0.getOutgoingRequestMetricAttributesOnResponse)(K)),Y=Object.assign(Y,(0,n0.getOutgoingStableRequestMetricAttributesOnResponse)(K)),this.getConfig().responseHook)this._callResponseHook(J,W);J.setAttributes(this._headerCapture.client.captureRequestHeaders((G)=>Z.getHeader(G))),J.setAttributes(this._headerCapture.client.captureResponseHeaders((G)=>W.headers[G])),r.context.bind(r.context.active(),W);let z=()=>{if(this._diag.debug("outgoingRequest on end()"),X)return;X=!0;let G;if(W.aborted&&!W.complete)G={code:r.SpanStatusCode.ERROR};else G={code:(0,n0.parseResponseStatus)(r.SpanKind.CLIENT,W.statusCode)};if(J.setStatus(G),this.getConfig().applyCustomAttributesOnSpan)(0,q1.safeExecuteInTheMiddle)(()=>this.getConfig().applyCustomAttributesOnSpan(J,Z,W),()=>{},!0);this._closeHttpSpan(J,r.SpanKind.CLIENT,Q,$,Y)};W.on("end",z),W.on(uB.errorMonitor,(G)=>{if(this._diag.debug("outgoingRequest on error()",G),X)return;X=!0,this._onOutgoingRequestError(J,$,Y,Q,G)})}),Z.on("close",()=>{if(this._diag.debug("outgoingRequest on request close()"),Z.aborted||X)return;X=!0,this._closeHttpSpan(J,r.SpanKind.CLIENT,Q,$,Y)}),Z.on(uB.errorMonitor,(W)=>{if(this._diag.debug("outgoingRequest on request error()",W),X)return;X=!0,this._onOutgoingRequestError(J,$,Y,Q,W)}),this._diag.debug("http.ClientRequest return request"),Z}_incomingRequestFunction(Z,J){let Q=this;return function(Y,...X){if(Y!=="request")return J.apply(this,[Y,...X]);let W=X[0],K=X[1],z=W.method||"GET";if(Q._diag.debug(`${Z} instrumentation incomingRequest`),(0,q1.safeExecuteInTheMiddle)(()=>Q.getConfig().ignoreIncomingRequestHook?.(W),(C)=>{if(C!=null)Q._diag.error("caught ignoreIncomingRequestHook error: ",C)},!0))return r.context.with((0,HZ.suppressTracing)(r.context.active()),()=>{return r.context.bind(r.context.active(),W),r.context.bind(r.context.active(),K),J.apply(this,[Y,...X])});let G=W.headers,H=(0,n0.getIncomingRequestAttributes)(W,{component:Z,serverName:Q.getConfig().serverName,hookAttributes:Q._callStartSpanHook(W,Q.getConfig().startIncomingSpanHook),semconvStability:Q._semconvStability,enableSyntheticSourceDetection:Q.getConfig().enableSyntheticSourceDetection||!1},Q._diag);Object.assign(H,Q._headerCapture.server.captureRequestHeaders((C)=>W.headers[C]));let B={kind:r.SpanKind.SERVER,attributes:H},V=(0,HZ.hrTime)(),F=(0,n0.getIncomingRequestMetricAttributes)(H),U={[I0.ATTR_HTTP_REQUEST_METHOD]:H[I0.ATTR_HTTP_REQUEST_METHOD],[I0.ATTR_URL_SCHEME]:H[I0.ATTR_URL_SCHEME]};if(H[I0.ATTR_NETWORK_PROTOCOL_VERSION])U[I0.ATTR_NETWORK_PROTOCOL_VERSION]=H[I0.ATTR_NETWORK_PROTOCOL_VERSION];let w=r.propagation.extract(r.ROOT_CONTEXT,G),D=Q._startHttpSpan(z,B,w),L={type:HZ.RPCType.HTTP,span:D};return r.context.with((0,HZ.setRPCMetadata)(r.trace.setSpan(w,D),L),()=>{if(r.context.bind(r.context.active(),W),r.context.bind(r.context.active(),K),Q.getConfig().requestHook)Q._callRequestHook(D,W);if(Q.getConfig().responseHook)Q._callResponseHook(D,K);let C=!1;return K.on("close",()=>{if(C)return;Q._onServerResponseFinish(W,K,D,F,U,V)}),K.on(uB.errorMonitor,(R)=>{C=!0,Q._onServerResponseError(D,F,U,V,R)}),(0,q1.safeExecuteInTheMiddle)(()=>J.apply(this,[Y,...X]),(R)=>{if(R)throw Q._onServerResponseError(D,F,U,V,R),R})})}}_outgoingRequestFunction(Z,J){let Q=this;return function(Y,...X){if(!(0,n0.isValidOptionsType)(Y))return J.apply(this,[Y,...X]);let W=typeof X[0]==="object"&&(typeof Y==="string"||Y instanceof s20.URL)?X.shift():void 0,{method:K,invalidUrl:z,optionsParsed:G}=(0,n0.getRequestInfo)(Q._diag,Y,W);if((0,q1.safeExecuteInTheMiddle)(()=>Q.getConfig().ignoreOutgoingRequestHook?.(G),(T)=>{if(T!=null)Q._diag.error("caught ignoreOutgoingRequestHook error: ",T)},!0))return J.apply(this,[G,...X]);let{hostname:H,port:B}=(0,n0.extractHostnameAndPort)(G),V=(0,n0.getOutgoingRequestAttributes)(G,{component:Z,port:B,hostname:H,hookAttributes:Q._callStartSpanHook(G,Q.getConfig().startOutgoingSpanHook),redactedQueryParams:Q.getConfig().redactedQueryParams},Q._semconvStability,Q.getConfig().enableSyntheticSourceDetection||!1),F=(0,HZ.hrTime)(),U=(0,n0.getOutgoingRequestMetricAttributes)(V),w={[I0.ATTR_HTTP_REQUEST_METHOD]:V[I0.ATTR_HTTP_REQUEST_METHOD],[I0.ATTR_SERVER_ADDRESS]:V[I0.ATTR_SERVER_ADDRESS],[I0.ATTR_SERVER_PORT]:V[I0.ATTR_SERVER_PORT]};if(V[I0.ATTR_HTTP_RESPONSE_STATUS_CODE])w[I0.ATTR_HTTP_RESPONSE_STATUS_CODE]=V[I0.ATTR_HTTP_RESPONSE_STATUS_CODE];if(V[I0.ATTR_NETWORK_PROTOCOL_VERSION])w[I0.ATTR_NETWORK_PROTOCOL_VERSION]=V[I0.ATTR_NETWORK_PROTOCOL_VERSION];let D={kind:r.SpanKind.CLIENT,attributes:V},L=Q._startHttpSpan(K,D),C=r.context.active(),R=r.trace.setSpan(C,L);if(!G.headers)G.headers={};else G.headers=Object.assign({},G.headers);return r.propagation.inject(R,G.headers),r.context.with(R,()=>{let T=X[X.length-1];if(typeof T==="function")X[X.length-1]=r.context.bind(C,T);let S=(0,q1.safeExecuteInTheMiddle)(()=>{if(z)return J.apply(this,[Y,...X]);else return J.apply(this,[G,...X])},(m)=>{if(m)throw Q._onOutgoingRequestError(L,U,w,F,m),m});return Q._diag.debug(`${Z} instrumentation outgoingRequest`),r.context.bind(C,S),Q._traceClientRequest(S,L,F,U,w)})}}_onServerResponseFinish(Z,J,Q,$,Y,X){let W=(0,n0.getIncomingRequestAttributesOnResponse)(Z,J,this._semconvStability);$=Object.assign($,(0,n0.getIncomingRequestMetricAttributesOnResponse)(W)),Y=Object.assign(Y,(0,n0.getIncomingStableRequestMetricAttributesOnResponse)(W)),Q.setAttributes(this._headerCapture.server.captureResponseHeaders((z)=>J.getHeader(z))),Q.setAttributes(W).setStatus({code:(0,n0.parseResponseStatus)(r.SpanKind.SERVER,J.statusCode)});let K=W[I0.ATTR_HTTP_ROUTE];if(K)Q.updateName(`${Z.method||"GET"} ${K}`);if(this.getConfig().applyCustomAttributesOnSpan)(0,q1.safeExecuteInTheMiddle)(()=>this.getConfig().applyCustomAttributesOnSpan(Q,Z,J),()=>{},!0);this._closeHttpSpan(Q,r.SpanKind.SERVER,X,$,Y)}_onOutgoingRequestError(Z,J,Q,$,Y){(0,n0.setSpanWithError)(Z,Y,this._semconvStability),Q[I0.ATTR_ERROR_TYPE]=Y.name,this._closeHttpSpan(Z,r.SpanKind.CLIENT,$,J,Q)}_onServerResponseError(Z,J,Q,$,Y){(0,n0.setSpanWithError)(Z,Y,this._semconvStability),Q[I0.ATTR_ERROR_TYPE]=Y.name,this._closeHttpSpan(Z,r.SpanKind.SERVER,$,J,Q)}_startHttpSpan(Z,J,Q=r.context.active()){let $=J.kind===r.SpanKind.CLIENT?this.getConfig().requireParentforOutgoingSpans:this.getConfig().requireParentforIncomingSpans,Y,X=r.trace.getSpan(Q);if($===!0&&(!X||!r.trace.isSpanContextValid(X.spanContext())))Y=r.trace.wrapSpanContext(r.INVALID_SPAN_CONTEXT);else if($===!0&&X?.spanContext().isRemote)Y=X;else Y=this.tracer.startSpan(Z,J,Q);return this._spanNotEnded.add(Y),Y}_closeHttpSpan(Z,J,Q,$,Y){if(!this._spanNotEnded.has(Z))return;Z.end(),this._spanNotEnded.delete(Z);let X=(0,HZ.hrTimeToMilliseconds)((0,HZ.hrTimeDuration)(Q,(0,HZ.hrTime)()));if(J===r.SpanKind.SERVER)this._recordServerDuration(X,$,Y);else if(J===r.SpanKind.CLIENT)this._recordClientDuration(X,$,Y)}_callResponseHook(Z,J){(0,q1.safeExecuteInTheMiddle)(()=>this.getConfig().responseHook(Z,J),()=>{},!0)}_callRequestHook(Z,J){(0,q1.safeExecuteInTheMiddle)(()=>this.getConfig().requestHook(Z,J),()=>{},!0)}_callStartSpanHook(Z,J){if(typeof J==="function")return(0,q1.safeExecuteInTheMiddle)(()=>J(Z),()=>{},!0)}_createHeaderCapture(Z){let J=this.getConfig();return{client:{captureRequestHeaders:(0,n0.headerCapture)("request",J.headersToSpanAttributes?.client?.requestHeaders??[],Z),captureResponseHeaders:(0,n0.headerCapture)("response",J.headersToSpanAttributes?.client?.responseHeaders??[],Z)},server:{captureRequestHeaders:(0,n0.headerCapture)("request",J.headersToSpanAttributes?.server?.requestHeaders??[],Z),captureResponseHeaders:(0,n0.headerCapture)("response",J.headersToSpanAttributes?.server?.responseHeaders??[],Z)}}}}jh.HttpInstrumentation=wh});var Lh=j((lB)=>{Object.defineProperty(lB,"__esModule",{value:!0});lB.HttpInstrumentation=void 0;var t20=Oh();Object.defineProperty(lB,"HttpInstrumentation",{enumerable:!0,get:function(){return t20.HttpInstrumentation}})});var M;var z0=q(()=>{M=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__});function M1(Z){switch(Ch.call(Z)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object WebAssembly.Exception]":return!0;default:return u9(Z,Error)}}function IX(Z,J){return Ch.call(Z)===`[object ${J}]`}function pB(Z){return IX(Z,"ErrorEvent")}function BZ(Z){return IX(Z,"String")}function VZ(Z){return typeof Z==="object"&&Z!==null&&"__sentry_template_string__"in Z&&"__sentry_template_values__"in Z}function h7(Z){return Z===null||VZ(Z)||typeof Z!=="object"&&typeof Z!=="function"}function c1(Z){return IX(Z,"Object")}function iB(Z){return typeof Event<"u"&&u9(Z,Event)}function oB(Z){return typeof Element<"u"&&u9(Z,Element)}function nB(Z){return IX(Z,"RegExp")}function X1(Z){return Boolean(Z?.then&&typeof Z.then==="function")}function aB(Z){return c1(Z)&&"nativeEvent"in Z&&"preventDefault"in Z&&"stopPropagation"in Z}function u9(Z,J){try{return Z instanceof J}catch{return!1}}function _Q(Z){return!!(typeof Z==="object"&&Z!==null&&(Z.__isVue||Z._isVue||Z.__v_isVNode))}var Ch;var S0=q(()=>{Ch=Object.prototype.toString});var d;var J1=q(()=>{d=globalThis});function Ph(Z,J={}){if(!Z)return"<unknown>";try{let Q=Z,$=5,Y=[],X=0,W=0,K=" > ",z=K.length,G,H=Array.isArray(J)?J:J.keyAttrs,B=!Array.isArray(J)&&J.maxStringLength||JO0;while(Q&&X++<$){if(G=QO0(Q,H),G==="html"||X>1&&W+Y.length*z+G.length>=B)break;Y.push(G),W+=G.length,Q=Q.parentNode}return Y.reverse().join(K)}catch{return"<unknown>"}}function QO0(Z,J){let Q=Z,$=[];if(!Q?.tagName)return"";if(ZO0.HTMLElement){if(Q instanceof HTMLElement&&Q.dataset){if(Q.dataset.sentryComponent)return Q.dataset.sentryComponent;if(Q.dataset.sentryElement)return Q.dataset.sentryElement}}$.push(Q.tagName.toLowerCase());let Y=J?.length?J.filter((X)=>Q.getAttribute(X)).map((X)=>[X,Q.getAttribute(X)]):null;if(Y?.length)Y.forEach((X)=>{$.push(`[${X[0]}="${X[1]}"]`)});else{if(Q.id)$.push(`#${Q.id}`);let X=Q.className;if(X&&BZ(X)){let W=X.split(/\s+/);for(let K of W)$.push(`.${K}`)}}for(let X of["aria-label","type","name","title","alt"]){let W=Q.getAttribute(X);if(W)$.push(`[${X}="${W}"]`)}return $.join("")}var ZO0,JO0=80;var Mh=q(()=>{S0();J1();ZO0=d});var e="10.46.0";var TX=()=>{};function S1(){return FZ(d),d}function FZ(Z){let J=Z.__SENTRY__=Z.__SENTRY__||{};return J.version=J.version||e,J[e]=J[e]||{}}function U9(Z,J,Q=d){let $=Q.__SENTRY__=Q.__SENTRY__||{},Y=$[e]=$[e]||{};return Y[Z]||(Y[Z]=J())}var u6=q(()=>{TX();J1()});function G0(Z){if(!("console"in d))return Z();let J=d.console,Q={},$=Object.keys(G4);$.forEach((Y)=>{let X=G4[Y];Q[Y]=J[Y],J[Y]=X});try{return Z()}finally{$.forEach((Y)=>{J[Y]=Q[Y]})}}function YO0(){rB().enabled=!0}function XO0(){rB().enabled=!1}function Rh(){return rB().enabled}function WO0(...Z){sB("log",...Z)}function KO0(...Z){sB("warn",...Z)}function zO0(...Z){sB("error",...Z)}function sB(Z,...J){if(!M)return;if(Rh())G0(()=>{d.console[Z](`${$O0}[${Z}]:`,...J)})}function rB(){if(!M)return{enabled:!1};return U9("loggerSettings",()=>({enabled:!1}))}var V8,$O0="Sentry Logger ",G4,O;var Z0=q(()=>{u6();z0();J1();V8=["debug","info","warn","error","log","assert","trace"],G4={};O={enable:YO0,disable:XO0,isEnabled:Rh,log:WO0,warn:KO0,error:zO0}});function m1(Z,J,Q){if(!(J in Z))return;let $=Z[J];if(typeof $!=="function")return;let Y=Q($);if(typeof Y==="function")Ah(Y,$);try{Z[J]=Y}catch{M&&O.log(`Failed to replace method "${J}" in object`,Z)}}function T0(Z,J,Q){try{Object.defineProperty(Z,J,{value:Q,writable:!0,configurable:!0})}catch{M&&O.log(`Failed to add non-enumerable property "${J}" to object`,Z)}}function Ah(Z,J){try{let Q=J.prototype||{};Z.prototype=J.prototype=Q,T0(Z,"__sentry_original__",J)}catch{}}function tB(Z){return Z.__sentry_original__}function EX(Z){if(M1(Z))return{message:Z.message,name:Z.name,stack:Z.stack,...Nh(Z)};else if(iB(Z)){let J={type:Z.type,target:kh(Z.target),currentTarget:kh(Z.currentTarget),...Nh(Z)};if(typeof CustomEvent<"u"&&u9(Z,CustomEvent))J.detail=Z.detail;return J}else return Z}function kh(Z){try{return oB(Z)?Ph(Z):Object.prototype.toString.call(Z)}catch{return"<unknown>"}}function Nh(Z){if(typeof Z==="object"&&Z!==null)return Object.fromEntries(Object.entries(Z));return{}}function eB(Z){let J=Object.keys(EX(Z));return J.sort(),!J[0]?"[object has no keys]":J.join(", ")}var R1=q(()=>{z0();Mh();Z0();S0()});function GO0(Z){try{let J=d.WeakRef;if(typeof J==="function")return new J(Z)}catch{}return Z}function HO0(Z){if(!Z)return;if(typeof Z==="object"&&"deref"in Z&&typeof Z.deref==="function")try{return Z.deref()}catch{return}return Z}function hQ(Z,J,Q){if(Z)T0(Z,Th,GO0(Q)),T0(Z,Ih,J)}function q9(Z){let J=Z;return{scope:J[Ih],isolationScope:HO0(J[Th])}}var Ih="_sentryScope",Th="_sentryIsolationScope";var H4=q(()=>{R1();J1()});function D6(Z){if(Z<400&&Z>=100)return{code:1};if(Z>=400&&Z<500)switch(Z){case 401:return{code:2,message:"unauthenticated"};case 403:return{code:2,message:"permission_denied"};case 404:return{code:2,message:"not_found"};case 409:return{code:2,message:"already_exists"};case 413:return{code:2,message:"failed_precondition"};case 429:return{code:2,message:"resource_exhausted"};case 499:return{code:2,message:"cancelled"};default:return{code:2,message:"invalid_argument"}}if(Z>=500&&Z<600)switch(Z){case 501:return{code:2,message:"unimplemented"};case 503:return{code:2,message:"unavailable"};case 504:return{code:2,message:"deadline_exceeded"};default:return{code:2,message:"internal_error"}}return{code:2,message:"internal_error"}}function l9(Z,J){Z.setAttribute("http.response.status_code",J);let Q=D6(J);if(Q.message!=="unknown_error")Z.setStatus(Q)}var ZV=0,UZ=1,a=2;var w1=()=>{};function b7(Z){if(B4!==void 0)return B4?B4(Z):Z();let J=Symbol.for("__SENTRY_SAFE_RANDOM_ID_WRAPPER__"),Q=d;if(J in Q&&typeof Q[J]==="function")return B4=Q[J],B4(Z);return B4=null,Z()}function W1(){return b7(()=>Math.random())}function l6(){return b7(()=>Date.now())}var B4;var F8=q(()=>{J1()});function yX(...Z){let J=Z.sort((Q,$)=>Q[0]-$[0]).map((Q)=>Q[1]);return(Q,$=0,Y=0)=>{let X=[],W=Q.split(`
|
|
7
|
+
`).map((J)=>J.trim()).join(" ")};oS.O=function(Z){return this.inspectOpts.colors=this.useColors,DX.inspect(Z,this.inspectOpts)}});var rS=j((Pa0,CB)=>{if(typeof process>"u"||process.type==="renderer"||!1||process.__nwjs)CB.exports=iS();else CB.exports=sS()});var AQ=j((Ma0,tS)=>{var PB=E("path").sep;tS.exports=function(Z){var J=Z.split(PB),Q=J.lastIndexOf("node_modules");if(Q===-1)return;if(!J[Q+1])return;var $=J[Q+1][0]==="@",Y=$?J[Q+1]+"/"+J[Q+2]:J[Q+1],X=$?3:2,W="",K=Q+X-1;for(var z=0;z<=K;z++)if(z===K)W+=J[z];else W+=J[z]+PB;var G="",H=J.length-1;for(var B=Q+X;B<=H;B++)if(B===H)G+=J[B];else G+=J[B]+PB;return{name:Y,basedir:W,path:G}}});var _7=j((Ra0,RB)=>{var X4=E("path"),V9=E("module"),o0=rS()("require-in-the-middle"),Ej0=AQ();RB.exports=IQ;RB.exports.Hook=IQ;var MB,LX;if(V9.isBuiltin)LX=V9.isBuiltin;else if(V9.builtinModules)LX=(Z)=>{if(Z.startsWith("node:"))return!0;if(MB===void 0)MB=new Set(V9.builtinModules);return MB.has(Z)};else throw Error("'require-in-the-middle' requires Node.js >=v9.3.0 or >=v8.10.0");var fj0=/([/\\]index)?(\.js)?$/;class eS{constructor(){this._localCache=new Map,this._kRitmExports=Symbol("RitmExports")}has(Z,J){if(this._localCache.has(Z))return!0;else if(!J){let Q=E.cache[Z];return!!(Q&&(this._kRitmExports in Q))}else return!1}get(Z,J){let Q=this._localCache.get(Z);if(Q!==void 0)return Q;else if(!J){let $=E.cache[Z];return $&&$[this._kRitmExports]}}set(Z,J,Q){if(Q)this._localCache.set(Z,J);else if(Z in E.cache)E.cache[Z][this._kRitmExports]=J;else o0('non-core module is unexpectedly not in require.cache: "%s"',Z),this._localCache.set(Z,J)}}function IQ(Z,J,Q){if(this instanceof IQ===!1)return new IQ(Z,J,Q);if(typeof Z==="function")Q=Z,Z=null,J=null;else if(typeof J==="function")Q=J,J=null;if(typeof V9._resolveFilename!=="function"){console.error("Error: Expected Module._resolveFilename to be a function (was: %s) - aborting!",typeof V9._resolveFilename),console.error("Please report this error as an issue related to Node.js %s at https://github.com/nodejs/require-in-the-middle/issues",process.version);return}this._cache=new eS,this._unhooked=!1,this._origRequire=V9.prototype.require;let $=this,Y=new Set,X=J?J.internals===!0:!1,W=Array.isArray(Z);if(o0("registering require hook"),this._require=V9.prototype.require=function(z){if($._unhooked===!0)return o0("ignoring require call - module is soft-unhooked"),$._origRequire.apply(this,arguments);return K.call(this,arguments,!1)},typeof process.getBuiltinModule==="function")this._origGetBuiltinModule=process.getBuiltinModule,this._getBuiltinModule=process.getBuiltinModule=function(z){if($._unhooked===!0)return o0("ignoring process.getBuiltinModule call - module is soft-unhooked"),$._origGetBuiltinModule.apply(this,arguments);return K.call(this,arguments,!0)};function K(z,G){let H=z[0],B=LX(H),V;if(B){if(V=H,H.startsWith("node:")){let C=H.slice(5);if(LX(C))V=C}}else if(G)return o0("call to process.getBuiltinModule with unknown built-in id"),$._origGetBuiltinModule.apply(this,z);else try{V=V9._resolveFilename(H,this)}catch(C){return o0('Module._resolveFilename("%s") threw %j, calling original Module.require',H,C.message),$._origRequire.apply(this,z)}let F,U;if(o0("processing %s module require('%s'): %s",B===!0?"core":"non-core",H,V),$._cache.has(V,B)===!0)return o0("returning already patched cached module: %s",V),$._cache.get(V,B);let w=Y.has(V);if(w===!1)Y.add(V);let D=G?$._origGetBuiltinModule.apply(this,z):$._origRequire.apply(this,z);if(w===!0)return o0("module is in the process of being patched already - ignoring: %s",V),D;if(Y.delete(V),B===!0){if(W===!0&&Z.includes(V)===!1)return o0("ignoring core module not on whitelist: %s",V),D;F=V}else if(W===!0&&Z.includes(V)){let C=X4.parse(V);F=C.name,U=C.dir}else{let C=Ej0(V);if(C===void 0)return o0("could not parse filename: %s",V),D;F=C.name,U=C.basedir;let R=yj0(C);o0("resolved filename to module: %s (id: %s, resolved: %s, basedir: %s)",F,H,R,U);let T=!1;if(W){if(!H.startsWith(".")&&Z.includes(H))F=H,T=!0;if(!Z.includes(F)&&!Z.includes(R))return D;if(Z.includes(R)&&R!==F)F=R,T=!0}if(!T){let _;try{_=E.resolve(F,{paths:[U]})}catch(m){return o0("could not resolve module: %s",F),$._cache.set(V,D,B),D}if(_!==V)if(X===!0)F=F+X4.sep+X4.relative(U,V),o0("preparing to process require of internal file: %s",F);else return o0("ignoring require of non-main module file: %s",_),$._cache.set(V,D,B),D}}$._cache.set(V,D,B),o0("calling require hook: %s",F);let L=Q(D,F,U);return $._cache.set(V,L,B),o0("returning module: %s",F),L}}IQ.prototype.unhook=function(){if(this._unhooked=!0,this._require===V9.prototype.require)V9.prototype.require=this._origRequire,o0("require unhook successful");else o0("require unhook unsuccessful");if(process.getBuiltinModule!==void 0)if(this._getBuiltinModule===process.getBuiltinModule)process.getBuiltinModule=this._origGetBuiltinModule,o0("process.getBuiltinModule unhook successful");else o0("process.getBuiltinModule unhook unsuccessful")};function yj0(Z){let J=X4.sep!=="/"?Z.path.split(X4.sep).join("/"):Z.path;return X4.posix.join(Z.name,J).replace(fj0,"")}});var $_=j((J_)=>{Object.defineProperty(J_,"__esModule",{value:!0});J_.ModuleNameTrie=J_.ModuleNameSeparator=void 0;J_.ModuleNameSeparator="/";class kB{hooks=[];children=new Map}class Z_{_trie=new kB;_counter=0;insert(Z){let J=this._trie;for(let Q of Z.moduleName.split(J_.ModuleNameSeparator)){let $=J.children.get(Q);if(!$)$=new kB,J.children.set(Q,$);J=$}J.hooks.push({hook:Z,insertedId:this._counter++})}search(Z,{maintainInsertionOrder:J,fullOnly:Q}={}){let $=this._trie,Y=[],X=!0;for(let W of Z.split(J_.ModuleNameSeparator)){let K=$.children.get(W);if(!K){X=!1;break}if(!Q)Y.push(...K.hooks);$=K}if(Q&&X)Y.push(...$.hooks);if(Y.length===0)return[];if(Y.length===1)return[Y[0].hook];if(J)Y.sort((W,K)=>W.insertedId-K.insertedId);return Y.map(({hook:W})=>W)}}J_.ModuleNameTrie=Z_});var K_=j((X_)=>{Object.defineProperty(X_,"__esModule",{value:!0});X_.RequireInTheMiddleSingleton=void 0;var Sj0=_7(),Y_=E("path"),AB=$_(),_j0=["afterEach","after","beforeEach","before","describe","it"].every((Z)=>{return typeof global[Z]==="function"});class CX{_moduleNameTrie=new AB.ModuleNameTrie;static _instance;constructor(){this._initialize()}_initialize(){new Sj0.Hook(null,{internals:!0},(Z,J,Q)=>{let $=hj0(J),Y=this._moduleNameTrie.search($,{maintainInsertionOrder:!0,fullOnly:Q===void 0});for(let{onRequire:X}of Y)Z=X(Z,J,Q);return Z})}register(Z,J){let Q={moduleName:Z,onRequire:J};return this._moduleNameTrie.insert(Q),Q}static getInstance(){if(_j0)return new CX;return this._instance=this._instance??new CX}}X_.RequireInTheMiddleSingleton=CX;function hj0(Z){return Y_.sep!==AB.ModuleNameSeparator?Z.split(Y_.sep).join(AB.ModuleNameSeparator):Z}});var V_=j((xj0)=>{var z_=[],IB=new WeakMap,G_=new WeakMap,H_=new Map,B_=[],bj0={set(Z,J,Q){let $=IB.get(Z),Y=$&&$[J];if(typeof Y==="function")return Y(Q);return!0},get(Z,J){if(J===Symbol.toStringTag)return"Module";let Q=G_.get(Z)[J];if(typeof Q==="function")return Q()},defineProperty(Z,J,Q){if(!("value"in Q))throw Error("Getters/setters are not supported for exports property descriptors.");let $=IB.get(Z),Y=$&&$[J];if(typeof Y==="function")return Y(Q.value);return!0}};function vj0(Z,J,Q,$,Y){H_.set(Z,Y),IB.set(J,Q),G_.set(J,$);let X=new Proxy(J,bj0);z_.forEach((W)=>W(Z,X,Y)),B_.push([Z,X,Y])}xj0.register=vj0;xj0.importHooks=z_;xj0.specifiers=H_;xj0.toHook=B_});var yB=j((Ta0,K4)=>{var F_=E("path"),uj0=AQ(),{fileURLToPath:lj0}=E("url"),{MessageChannel:pj0}=E("worker_threads"),{isBuiltin:TB}=E("module");if(!TB)TB=()=>!0;var{importHooks:EB,specifiers:ij0,toHook:oj0}=V_();function U_(Z){EB.push(Z),oj0.forEach(([J,Q,$])=>Z(J,Q,$))}function q_(Z){let J=EB.indexOf(Z);if(J>-1)EB.splice(J,1)}function W4(Z,J,Q,$){let Y=Z(J,Q,$);if(Y&&Y!==J){if("default"in J)J.default=Y}}var fB;function nj0(){let{port1:Z,port2:J}=new pj0,Q=0,$;fB=(K)=>{Q++,Z.postMessage(K)},Z.on("message",()=>{if(Q--,$&&Q<=0)$()}).unref();function Y(){let K=setInterval(()=>{},1000),z=new Promise((G)=>{$=G}).then(()=>{clearInterval(K)});if(Q===0)$();return z}let X=J;return{registerOptions:{data:{addHookMessagePort:X,include:[]},transferList:[X]},addHookMessagePort:X,waitForAllMessagesAcknowledged:Y}}function TQ(Z,J,Q){if(this instanceof TQ===!1)return new TQ(Z,J,Q);if(typeof Z==="function")Q=Z,Z=null,J=null;else if(typeof J==="function")Q=J,J=null;let $=J?J.internals===!0:!1;if(fB&&Array.isArray(Z))fB(Z);this._iitmHook=(Y,X,W)=>{let K=Y,z=K.startsWith("node:"),G,H;if(z){let B=Y.slice(5);if(TB(B))Y=B}else if(K.startsWith("file://")){let B=Error.stackTraceLimit;Error.stackTraceLimit=0;try{G=lj0(Y),Y=G}catch(V){}if(Error.stackTraceLimit=B,G){let V=uj0(G);if(V)Y=V.name,H=V.basedir}}if(Z){for(let B of Z)if(G&&B===G)W4(Q,X,G,void 0);else if(B===Y){if(!H)W4(Q,X,Y,H);else if(H.endsWith(ij0.get(K)))W4(Q,X,Y,H);else if($){let V=Y+F_.sep+F_.relative(H,G);W4(Q,X,V,H)}}else if(B===W)W4(Q,X,W,H)}else W4(Q,X,Y,H)},U_(this._iitmHook)}TQ.prototype.unhook=function(){q_(this._iitmHook)};K4.exports=TQ;K4.exports.Hook=TQ;K4.exports.addHook=U_;K4.exports.removeHook=q_;K4.exports.createAddHookMessageChannel=nj0});var SB=j((w_)=>{Object.defineProperty(w_,"__esModule",{value:!0});w_.isWrapped=w_.safeExecuteInTheMiddleAsync=w_.safeExecuteInTheMiddle=void 0;function aj0(Z,J,Q){let $,Y;try{Y=Z()}catch(X){$=X}finally{if(J($,Y),$&&!Q)throw $;return Y}}w_.safeExecuteInTheMiddle=aj0;async function sj0(Z,J,Q){let $,Y;try{Y=await Z()}catch(X){$=X}finally{if(await J($,Y),$&&!Q)throw $;return Y}}w_.safeExecuteInTheMiddleAsync=sj0;function rj0(Z){return typeof Z==="function"&&typeof Z.__original==="function"&&typeof Z.__unwrap==="function"&&Z.__wrapped===!0}w_.isWrapped=rj0});var M_=j((C_)=>{Object.defineProperty(C_,"__esModule",{value:!0});C_.InstrumentationBase=void 0;var EQ=E("path"),D_=E("util"),ZD0=hS(),_B=DB(),JD0=cS(),QD0=K_(),$D0=yB(),fQ=I(),YD0=_7(),XD0=E("fs"),WD0=SB();class L_ extends JD0.InstrumentationAbstract{_modules;_hooks=[];_requireInTheMiddleSingleton=QD0.RequireInTheMiddleSingleton.getInstance();_enabled=!1;constructor(Z,J,Q){super(Z,J,Q);let $=this.init();if($&&!Array.isArray($))$=[$];if(this._modules=$||[],this._config.enabled)this.enable()}_wrap=(Z,J,Q)=>{if((0,WD0.isWrapped)(Z[J]))this._unwrap(Z,J);if(!D_.types.isProxy(Z))return(0,_B.wrap)(Z,J,Q);else{let $=(0,_B.wrap)(Object.assign({},Z),J,Q);return Object.defineProperty(Z,J,{value:$}),$}};_unwrap=(Z,J)=>{if(!D_.types.isProxy(Z))return(0,_B.unwrap)(Z,J);else return Object.defineProperty(Z,J,{value:Z[J]})};_massWrap=(Z,J,Q)=>{if(!Z){fQ.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){fQ.diag.error("must provide one or more functions to wrap on modules");return}Z.forEach(($)=>{J.forEach((Y)=>{this._wrap($,Y,Q)})})};_massUnwrap=(Z,J)=>{if(!Z){fQ.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){fQ.diag.error("must provide one or more functions to wrap on modules");return}Z.forEach((Q)=>{J.forEach(($)=>{this._unwrap(Q,$)})})};_warnOnPreloadedModules(){this._modules.forEach((Z)=>{let{name:J}=Z;try{let Q=E.resolve(J);if(E.cache[Q])this._diag.warn(`Module ${J} has been loaded before ${this.instrumentationName} so it might not work, please initialize it before requiring ${J}`)}catch{}})}_extractPackageVersion(Z){try{let J=(0,XD0.readFileSync)(EQ.join(Z,"package.json"),{encoding:"utf8"}),Q=JSON.parse(J).version;return typeof Q==="string"?Q:void 0}catch{fQ.diag.warn("Failed extracting version",Z)}return}_onRequire(Z,J,Q,$){if(!$){if(typeof Z.patch==="function"){if(Z.moduleExports=J,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs core module on require hook",{module:Z.name}),Z.patch(J)}return J}let Y=this._extractPackageVersion($);if(Z.moduleVersion=Y,Z.name===Q){if(O_(Z.supportedVersions,Y,Z.includePrerelease)){if(typeof Z.patch==="function"){if(Z.moduleExports=J,this._enabled)return this._diag.debug("Applying instrumentation patch for module on require hook",{module:Z.name,version:Z.moduleVersion,baseDir:$}),Z.patch(J,Z.moduleVersion)}}return J}let X=Z.files??[],W=EQ.normalize(Q);return X.filter((z)=>z.name===W&&O_(z.supportedVersions,Y,Z.includePrerelease)).reduce((z,G)=>{if(G.moduleExports=z,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs module file on require hook",{module:Z.name,version:Z.moduleVersion,fileName:G.name,baseDir:$}),G.patch(z,Z.moduleVersion);return z},J)}enable(){if(this._enabled)return;if(this._enabled=!0,this._hooks.length>0){for(let Z of this._modules){if(typeof Z.patch==="function"&&Z.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module on instrumentation enabled",{module:Z.name,version:Z.moduleVersion}),Z.patch(Z.moduleExports,Z.moduleVersion);for(let J of Z.files)if(J.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module file on instrumentation enabled",{module:Z.name,version:Z.moduleVersion,fileName:J.name}),J.patch(J.moduleExports,Z.moduleVersion)}return}this._warnOnPreloadedModules();for(let Z of this._modules){let J=(X,W,K)=>{if(!K&&EQ.isAbsolute(W)){let z=EQ.parse(W);W=z.name,K=z.dir}return this._onRequire(Z,X,W,K)},Q=(X,W,K)=>{return this._onRequire(Z,X,W,K)},$=EQ.isAbsolute(Z.name)?new YD0.Hook([Z.name],{internals:!0},Q):this._requireInTheMiddleSingleton.register(Z.name,Q);this._hooks.push($);let Y=new $D0.Hook([Z.name],{internals:!0},J);this._hooks.push(Y)}}disable(){if(!this._enabled)return;this._enabled=!1;for(let Z of this._modules){if(typeof Z.unpatch==="function"&&Z.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module on instrumentation disabled",{module:Z.name,version:Z.moduleVersion}),Z.unpatch(Z.moduleExports,Z.moduleVersion);for(let J of Z.files)if(J.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module file on instrumentation disabled",{module:Z.name,version:Z.moduleVersion,fileName:J.name}),J.unpatch(J.moduleExports,Z.moduleVersion)}}isEnabled(){return this._enabled}}C_.InstrumentationBase=L_;function O_(Z,J,Q){if(typeof J>"u")return Z.includes("*");return Z.some(($)=>{return(0,ZD0.satisfies)(J,$,{includePrerelease:Q})})}});var R_=j((hB)=>{Object.defineProperty(hB,"__esModule",{value:!0});hB.normalize=void 0;var KD0=E("path");Object.defineProperty(hB,"normalize",{enumerable:!0,get:function(){return KD0.normalize}})});var k_=j((PX)=>{Object.defineProperty(PX,"__esModule",{value:!0});PX.normalize=PX.InstrumentationBase=void 0;var GD0=M_();Object.defineProperty(PX,"InstrumentationBase",{enumerable:!0,get:function(){return GD0.InstrumentationBase}});var HD0=R_();Object.defineProperty(PX,"normalize",{enumerable:!0,get:function(){return HD0.normalize}})});var bB=j((MX)=>{Object.defineProperty(MX,"__esModule",{value:!0});MX.normalize=MX.InstrumentationBase=void 0;var N_=k_();Object.defineProperty(MX,"InstrumentationBase",{enumerable:!0,get:function(){return N_.InstrumentationBase}});Object.defineProperty(MX,"normalize",{enumerable:!0,get:function(){return N_.normalize}})});var E_=j((I_)=>{Object.defineProperty(I_,"__esModule",{value:!0});I_.InstrumentationNodeModuleDefinition=void 0;class A_{files;name;supportedVersions;patch;unpatch;constructor(Z,J,Q,$,Y){this.files=Y||[],this.name=Z,this.supportedVersions=J,this.patch=Q,this.unpatch=$}}I_.InstrumentationNodeModuleDefinition=A_});var __=j((y_)=>{Object.defineProperty(y_,"__esModule",{value:!0});y_.InstrumentationNodeModuleFile=void 0;var FD0=bB();class f_{name;supportedVersions;patch;unpatch;constructor(Z,J,Q,$){this.name=(0,FD0.normalize)(Z),this.supportedVersions=J,this.patch=Q,this.unpatch=$}}y_.InstrumentationNodeModuleFile=f_});var x_=j((b_)=>{Object.defineProperty(b_,"__esModule",{value:!0});b_.semconvStabilityFromStr=b_.SemconvStability=void 0;var RX;(function(Z){Z[Z.STABLE=1]="STABLE",Z[Z.OLD=2]="OLD",Z[Z.DUPLICATE=3]="DUPLICATE"})(RX=b_.SemconvStability||(b_.SemconvStability={}));function UD0(Z,J){let Q=RX.OLD,$=J?.split(",").map((Y)=>Y.trim()).filter((Y)=>Y!=="");for(let Y of $??[])if(Y.toLowerCase()===Z+"/dup"){Q=RX.DUPLICATE;break}else if(Y.toLowerCase()===Z)Q=RX.STABLE;return Q}b_.semconvStabilityFromStr=UD0});var n=j((F9)=>{Object.defineProperty(F9,"__esModule",{value:!0});F9.semconvStabilityFromStr=F9.SemconvStability=F9.safeExecuteInTheMiddleAsync=F9.safeExecuteInTheMiddle=F9.isWrapped=F9.InstrumentationNodeModuleFile=F9.InstrumentationNodeModuleDefinition=F9.InstrumentationBase=F9.registerInstrumentations=void 0;var qD0=RS();Object.defineProperty(F9,"registerInstrumentations",{enumerable:!0,get:function(){return qD0.registerInstrumentations}});var wD0=bB();Object.defineProperty(F9,"InstrumentationBase",{enumerable:!0,get:function(){return wD0.InstrumentationBase}});var jD0=E_();Object.defineProperty(F9,"InstrumentationNodeModuleDefinition",{enumerable:!0,get:function(){return jD0.InstrumentationNodeModuleDefinition}});var DD0=__();Object.defineProperty(F9,"InstrumentationNodeModuleFile",{enumerable:!0,get:function(){return DD0.InstrumentationNodeModuleFile}});var vB=SB();Object.defineProperty(F9,"isWrapped",{enumerable:!0,get:function(){return vB.isWrapped}});Object.defineProperty(F9,"safeExecuteInTheMiddle",{enumerable:!0,get:function(){return vB.safeExecuteInTheMiddle}});Object.defineProperty(F9,"safeExecuteInTheMiddleAsync",{enumerable:!0,get:function(){return vB.safeExecuteInTheMiddleAsync}});var g_=x_();Object.defineProperty(F9,"SemconvStability",{enumerable:!0,get:function(){return g_.SemconvStability}});Object.defineProperty(F9,"semconvStabilityFromStr",{enumerable:!0,get:function(){return g_.semconvStabilityFromStr}})});var m_=j((d_)=>{Object.defineProperty(d_,"__esModule",{value:!0});d_.HTTP_FLAVOR_VALUE_HTTP_1_1=d_.NET_TRANSPORT_VALUE_IP_UDP=d_.NET_TRANSPORT_VALUE_IP_TCP=d_.ATTR_NET_TRANSPORT=d_.ATTR_NET_PEER_PORT=d_.ATTR_NET_PEER_NAME=d_.ATTR_NET_PEER_IP=d_.ATTR_NET_HOST_PORT=d_.ATTR_NET_HOST_NAME=d_.ATTR_NET_HOST_IP=d_.ATTR_HTTP_USER_AGENT=d_.ATTR_HTTP_URL=d_.ATTR_HTTP_TARGET=d_.ATTR_HTTP_STATUS_CODE=d_.ATTR_HTTP_SERVER_NAME=d_.ATTR_HTTP_SCHEME=d_.ATTR_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=d_.ATTR_HTTP_RESPONSE_CONTENT_LENGTH=d_.ATTR_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=d_.ATTR_HTTP_REQUEST_CONTENT_LENGTH=d_.ATTR_HTTP_METHOD=d_.ATTR_HTTP_HOST=d_.ATTR_HTTP_FLAVOR=d_.ATTR_HTTP_CLIENT_IP=d_.USER_AGENT_SYNTHETIC_TYPE_VALUE_TEST=d_.USER_AGENT_SYNTHETIC_TYPE_VALUE_BOT=d_.ATTR_USER_AGENT_SYNTHETIC_TYPE=void 0;d_.ATTR_USER_AGENT_SYNTHETIC_TYPE="user_agent.synthetic.type";d_.USER_AGENT_SYNTHETIC_TYPE_VALUE_BOT="bot";d_.USER_AGENT_SYNTHETIC_TYPE_VALUE_TEST="test";d_.ATTR_HTTP_CLIENT_IP="http.client_ip";d_.ATTR_HTTP_FLAVOR="http.flavor";d_.ATTR_HTTP_HOST="http.host";d_.ATTR_HTTP_METHOD="http.method";d_.ATTR_HTTP_REQUEST_CONTENT_LENGTH="http.request_content_length";d_.ATTR_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED="http.request_content_length_uncompressed";d_.ATTR_HTTP_RESPONSE_CONTENT_LENGTH="http.response_content_length";d_.ATTR_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED="http.response_content_length_uncompressed";d_.ATTR_HTTP_SCHEME="http.scheme";d_.ATTR_HTTP_SERVER_NAME="http.server_name";d_.ATTR_HTTP_STATUS_CODE="http.status_code";d_.ATTR_HTTP_TARGET="http.target";d_.ATTR_HTTP_URL="http.url";d_.ATTR_HTTP_USER_AGENT="http.user_agent";d_.ATTR_NET_HOST_IP="net.host.ip";d_.ATTR_NET_HOST_NAME="net.host.name";d_.ATTR_NET_HOST_PORT="net.host.port";d_.ATTR_NET_PEER_IP="net.peer.ip";d_.ATTR_NET_PEER_NAME="net.peer.name";d_.ATTR_NET_PEER_PORT="net.peer.port";d_.ATTR_NET_TRANSPORT="net.transport";d_.NET_TRANSPORT_VALUE_IP_TCP="ip_tcp";d_.NET_TRANSPORT_VALUE_IP_UDP="ip_udp";d_.HTTP_FLAVOR_VALUE_HTTP_1_1="1.1"});var l_=j((u_)=>{Object.defineProperty(u_,"__esModule",{value:!0});u_.AttributeNames=void 0;var iD0;(function(Z){Z.HTTP_ERROR_NAME="http.error_name",Z.HTTP_ERROR_MESSAGE="http.error_message",Z.HTTP_STATUS_TEXT="http.status_text"})(iD0=u_.AttributeNames||(u_.AttributeNames={}))});var gB=j((p_)=>{Object.defineProperty(p_,"__esModule",{value:!0});p_.DEFAULT_QUERY_STRINGS_TO_REDACT=p_.STR_REDACTED=p_.SYNTHETIC_BOT_NAMES=p_.SYNTHETIC_TEST_NAMES=void 0;p_.SYNTHETIC_TEST_NAMES=["alwayson"];p_.SYNTHETIC_BOT_NAMES=["googlebot","bingbot"];p_.STR_REDACTED="REDACTED";p_.DEFAULT_QUERY_STRINGS_TO_REDACT=["sig","Signature","AWSAccessKeyId","X-Goog-Signature"]});var n_=j((ea0,o_)=>{var sD0=E("util");function dB(Z,J){Error.captureStackTrace(this,dB),this.name=this.constructor.name,this.message=Z,this.input=J}sD0.inherits(dB,Error);o_.exports=dB});var s_=j((Zs0,a_)=>{function rD0(Z){return Z===34||Z===40||Z===41||Z===44||Z===47||Z>=58&&Z<=64||Z>=91&&Z<=93||Z===123||Z===125}function tD0(Z){return Z===33||Z>=35&&Z<=39||Z===42||Z===43||Z===45||Z===46||Z>=48&&Z<=57||Z>=65&&Z<=90||Z>=94&&Z<=122||Z===124||Z===126}function eD0(Z){return Z>=32&&Z<=126}function Z20(Z){return Z>=128&&Z<=255}a_.exports={isDelimiter:rD0,isTokenChar:tD0,isExtended:Z20,isPrint:eD0}});var Jh=j((Js0,Zh)=>{var J20=E("util"),z4=n_(),kX=s_(),Q20=kX.isDelimiter,r_=kX.isTokenChar,t_=kX.isExtended,$20=kX.isPrint;function e_(Z){return Z.replace(/\\(.)/g,"$1")}function yQ(Z,J){return J20.format("Unexpected character '%s' at index %d",Z.charAt(J),J)}function Y20(Z){var J=!1,Q=!1,$=!1,Y={},X=[],W=-1,K=-1,z,G;for(var H=0;H<Z.length;H++)if(G=Z.charCodeAt(H),z===void 0){if(H!==0&&W===-1&&(G===32||G===9))continue;if(r_(G)){if(W===-1)W=H}else if(G===61&&W!==-1)z=Z.slice(W,H).toLowerCase(),W=-1;else throw new z4(yQ(Z,H),Z)}else if(Q&&(G===9||$20(G)||t_(G)))Q=!1;else if(r_(G)){if(K!==-1)throw new z4(yQ(Z,H),Z);if(W===-1)W=H}else if(Q20(G)||t_(G))if($){if(G===34)$=!1,K=H;else if(G===92){if(W===-1)W=H;Q=J=!0}else if(W===-1)W=H}else if(G===34&&Z.charCodeAt(H-1)===61)$=!0;else if((G===44||G===59)&&(W!==-1||K!==-1)){if(W!==-1){if(K===-1)K=H;Y[z]=J?e_(Z.slice(W,K)):Z.slice(W,K)}else Y[z]="";if(G===44)X.push(Y),Y={};z=void 0,W=K=-1}else throw new z4(yQ(Z,H),Z);else if(G===32||G===9){if(K!==-1)continue;if($){if(W===-1)W=H}else if(W!==-1)K=H;else throw new z4(yQ(Z,H),Z)}else throw new z4(yQ(Z,H),Z);if(z===void 0||$||W===-1&&K===-1||G===32||G===9)throw new z4("Unexpected end of input",Z);if(W!==-1){if(K===-1)K=H;Y[z]=J?e_(Z.slice(W,K)):Z.slice(W,K)}else Y[z]="";return X.push(Y),X}Zh.exports=Y20});var qh=j((Hh)=>{Object.defineProperty(Hh,"__esModule",{value:!0});Hh.headerCapture=Hh.getIncomingStableRequestMetricAttributesOnResponse=Hh.getIncomingRequestMetricAttributesOnResponse=Hh.getIncomingRequestAttributesOnResponse=Hh.getIncomingRequestMetricAttributes=Hh.getIncomingRequestAttributes=Hh.getRemoteClientAddress=Hh.getOutgoingStableRequestMetricAttributesOnResponse=Hh.getOutgoingRequestMetricAttributesOnResponse=Hh.getOutgoingRequestAttributesOnResponse=Hh.setAttributesFromHttpKind=Hh.getOutgoingRequestMetricAttributes=Hh.getOutgoingRequestAttributes=Hh.extractHostnameAndPort=Hh.isValidOptionsType=Hh.getRequestInfo=Hh.isCompressed=Hh.setResponseContentLengthAttribute=Hh.setRequestContentLengthAttribute=Hh.setSpanWithError=Hh.satisfiesPattern=Hh.parseResponseStatus=Hh.getAbsoluteUrl=void 0;var SQ=I(),J0=Y0(),u=m_(),Qh=YB(),j6=n(),X20=E("url"),AX=l_(),$h=gB(),NX=gB(),W20=Jh(),K20=(Z,J,Q="http:",$=Array.from(NX.DEFAULT_QUERY_STRINGS_TO_REDACT))=>{let Y=Z||{},X=Y.protocol||Q,W=(Y.port||"").toString(),K=Y.path||"/",z=Y.host||Y.hostname||J.host||"localhost";if(z.indexOf(":")===-1&&W&&W!=="80"&&W!=="443")z+=`:${W}`;if(K.includes("?"))try{let H=new URL(K,"http://localhost"),B=$||[];for(let V of B)if(H.searchParams.get(V))H.searchParams.set(V,NX.STR_REDACTED);K=`${H.pathname}${H.search}`}catch{}let G=Y.auth?`${NX.STR_REDACTED}:${NX.STR_REDACTED}@`:"";return`${X}//${G}${z}${K}`};Hh.getAbsoluteUrl=K20;var z20=(Z,J)=>{let Q=Z===SQ.SpanKind.CLIENT?400:500;if(J&&J>=100&&J<Q)return SQ.SpanStatusCode.UNSET;return SQ.SpanStatusCode.ERROR};Hh.parseResponseStatus=z20;var G20=(Z,J)=>{if(typeof J==="string")return J===Z;else if(J instanceof RegExp)return J.test(Z);else if(typeof J==="function")return J(Z);else throw TypeError("Pattern is in unsupported datatype")};Hh.satisfiesPattern=G20;var H20=(Z,J,Q)=>{let $=J.message;if(Q&j6.SemconvStability.OLD)Z.setAttribute(AX.AttributeNames.HTTP_ERROR_NAME,J.name),Z.setAttribute(AX.AttributeNames.HTTP_ERROR_MESSAGE,$);if(Q&j6.SemconvStability.STABLE)Z.setAttribute(J0.ATTR_ERROR_TYPE,J.name);Z.setStatus({code:SQ.SpanStatusCode.ERROR,message:$}),Z.recordException(J)};Hh.setSpanWithError=H20;var B20=(Z,J)=>{let Q=Xh(Z.headers);if(Q===null)return;if(Hh.isCompressed(Z.headers))J[u.ATTR_HTTP_REQUEST_CONTENT_LENGTH]=Q;else J[u.ATTR_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED]=Q};Hh.setRequestContentLengthAttribute=B20;var V20=(Z,J)=>{let Q=Xh(Z.headers);if(Q===null)return;if(Hh.isCompressed(Z.headers))J[u.ATTR_HTTP_RESPONSE_CONTENT_LENGTH]=Q;else J[u.ATTR_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED]=Q};Hh.setResponseContentLengthAttribute=V20;function Xh(Z){let J=Z["content-length"];if(J===void 0)return null;let Q=parseInt(J,10);if(isNaN(Q))return null;return Q}var F20=(Z)=>{let J=Z["content-encoding"];return!!J&&J!=="identity"};Hh.isCompressed=F20;function U20(Z){let{hostname:J,pathname:Q,port:$,username:Y,password:X,search:W,protocol:K,hash:z,href:G,origin:H,host:B}=new URL(Z),V={protocol:K,hostname:J&&J[0]==="["?J.slice(1,-1):J,hash:z,search:W,pathname:Q,path:`${Q||""}${W||""}`,href:G,origin:H,host:B};if($!=="")V.port=Number($);if(Y||X)V.auth=`${decodeURIComponent(Y)}:${decodeURIComponent(X)}`;return V}var q20=(Z,J,Q)=>{let $,Y,X,W=!1;if(typeof J==="string"){try{let z=U20(J);X=z,$=z.pathname||"/"}catch(z){W=!0,Z.verbose("Unable to parse URL provided to HTTP request, using fallback to determine path. Original error:",z),X={path:J},$=X.path||"/"}if(Y=`${X.protocol||"http:"}//${X.host}`,Q!==void 0)Object.assign(X,Q)}else if(J instanceof X20.URL){if(X={protocol:J.protocol,hostname:typeof J.hostname==="string"&&J.hostname.startsWith("[")?J.hostname.slice(1,-1):J.hostname,path:`${J.pathname||""}${J.search||""}`},J.port!=="")X.port=Number(J.port);if(J.username||J.password)X.auth=`${J.username}:${J.password}`;if($=J.pathname,Y=J.origin,Q!==void 0)Object.assign(X,Q)}else{X=Object.assign({protocol:J.host?"http:":void 0},J);let z=X.host||(X.port!=null?`${X.hostname}${X.port}`:X.hostname);if(Y=`${X.protocol||"http:"}//${z}`,$=J.pathname,!$&&X.path)try{$=new URL(X.path,Y).pathname||"/"}catch{$="/"}}let K=X.method?X.method.toUpperCase():"GET";return{origin:Y,pathname:$,method:K,optionsParsed:X,invalidUrl:W}};Hh.getRequestInfo=q20;var w20=(Z)=>{if(!Z)return!1;let J=typeof Z;return J==="string"||J==="object"&&!Array.isArray(Z)};Hh.isValidOptionsType=w20;var j20=(Z)=>{if(Z.hostname&&Z.port)return{hostname:Z.hostname,port:Z.port};let J=Z.host?.match(/^([^:/ ]+)(:\d{1,5})?/)||null,Q=Z.hostname||(J===null?"localhost":J[1]),$=Z.port;if(!$)if(J&&J[2])$=J[2].substring(1);else $=Z.protocol==="https:"?"443":"80";return{hostname:Q,port:$}};Hh.extractHostnameAndPort=j20;var D20=(Z,J,Q,$)=>{let{hostname:Y,port:X}=J,W=Z.method??"GET",K=zh(W),z=Z.headers||{},G=z["user-agent"],H=Hh.getAbsoluteUrl(Z,z,`${J.component}:`,J.redactedQueryParams),B={[u.ATTR_HTTP_URL]:H,[u.ATTR_HTTP_METHOD]:W,[u.ATTR_HTTP_TARGET]:Z.path||"/",[u.ATTR_NET_PEER_NAME]:Y,[u.ATTR_HTTP_HOST]:z.host??`${Y}:${X}`},V={[J0.ATTR_HTTP_REQUEST_METHOD]:K,[J0.ATTR_SERVER_ADDRESS]:Y,[J0.ATTR_SERVER_PORT]:Number(X),[J0.ATTR_URL_FULL]:H,[J0.ATTR_USER_AGENT_ORIGINAL]:G};if(W!==K)V[J0.ATTR_HTTP_REQUEST_METHOD_ORIGINAL]=W;if($&&G)V[u.ATTR_USER_AGENT_SYNTHETIC_TYPE]=Wh(G);if(G!==void 0)B[u.ATTR_HTTP_USER_AGENT]=G;switch(Q){case j6.SemconvStability.STABLE:return Object.assign(V,J.hookAttributes);case j6.SemconvStability.OLD:return Object.assign(B,J.hookAttributes)}return Object.assign(B,V,J.hookAttributes)};Hh.getOutgoingRequestAttributes=D20;var O20=(Z)=>{let J={};return J[u.ATTR_HTTP_METHOD]=Z[u.ATTR_HTTP_METHOD],J[u.ATTR_NET_PEER_NAME]=Z[u.ATTR_NET_PEER_NAME],J};Hh.getOutgoingRequestMetricAttributes=O20;var L20=(Z,J)=>{if(Z)if(J[u.ATTR_HTTP_FLAVOR]=Z,Z.toUpperCase()!=="QUIC")J[u.ATTR_NET_TRANSPORT]=u.NET_TRANSPORT_VALUE_IP_TCP;else J[u.ATTR_NET_TRANSPORT]=u.NET_TRANSPORT_VALUE_IP_UDP};Hh.setAttributesFromHttpKind=L20;var Wh=(Z)=>{let J=String(Z).toLowerCase();for(let Q of $h.SYNTHETIC_TEST_NAMES)if(J.includes(Q))return u.USER_AGENT_SYNTHETIC_TYPE_VALUE_TEST;for(let Q of $h.SYNTHETIC_BOT_NAMES)if(J.includes(Q))return u.USER_AGENT_SYNTHETIC_TYPE_VALUE_BOT;return},C20=(Z,J)=>{let{statusCode:Q,statusMessage:$,httpVersion:Y,socket:X}=Z,W={},K={};if(Q!=null)K[J0.ATTR_HTTP_RESPONSE_STATUS_CODE]=Q;if(X){let{remoteAddress:z,remotePort:G}=X;W[u.ATTR_NET_PEER_IP]=z,W[u.ATTR_NET_PEER_PORT]=G,K[J0.ATTR_NETWORK_PEER_ADDRESS]=z,K[J0.ATTR_NETWORK_PEER_PORT]=G,K[J0.ATTR_NETWORK_PROTOCOL_VERSION]=Z.httpVersion}if(Hh.setResponseContentLengthAttribute(Z,W),Q)W[u.ATTR_HTTP_STATUS_CODE]=Q,W[AX.AttributeNames.HTTP_STATUS_TEXT]=($||"").toUpperCase();switch(Hh.setAttributesFromHttpKind(Y,W),J){case j6.SemconvStability.STABLE:return K;case j6.SemconvStability.OLD:return W}return Object.assign(W,K)};Hh.getOutgoingRequestAttributesOnResponse=C20;var P20=(Z)=>{let J={};return J[u.ATTR_NET_PEER_PORT]=Z[u.ATTR_NET_PEER_PORT],J[u.ATTR_HTTP_STATUS_CODE]=Z[u.ATTR_HTTP_STATUS_CODE],J[u.ATTR_HTTP_FLAVOR]=Z[u.ATTR_HTTP_FLAVOR],J};Hh.getOutgoingRequestMetricAttributesOnResponse=P20;var M20=(Z)=>{let J={};if(Z[J0.ATTR_NETWORK_PROTOCOL_VERSION])J[J0.ATTR_NETWORK_PROTOCOL_VERSION]=Z[J0.ATTR_NETWORK_PROTOCOL_VERSION];if(Z[J0.ATTR_HTTP_RESPONSE_STATUS_CODE])J[J0.ATTR_HTTP_RESPONSE_STATUS_CODE]=Z[J0.ATTR_HTTP_RESPONSE_STATUS_CODE];return J};Hh.getOutgoingStableRequestMetricAttributesOnResponse=M20;function GZ(Z,J){let Q=Z.split(":");if(Q.length===1){if(J==="http")return{host:Q[0],port:"80"};if(J==="https")return{host:Q[0],port:"443"};return{host:Q[0]}}if(Q.length===2)return{host:Q[0],port:Q[1]};if(Q[0].startsWith("[")){if(Q[Q.length-1].endsWith("]")){if(J==="http")return{host:Z,port:"80"};if(J==="https")return{host:Z,port:"443"}}else if(Q[Q.length-2].endsWith("]"))return{host:Q.slice(0,-1).join(":"),port:Q[Q.length-1]}}return{host:Z}}function R20(Z,J){let Q=Z.headers.forwarded;if(Q){for(let X of Gh(Q))if(X.host)return GZ(X.host,X.proto)}let $=Z.headers["x-forwarded-host"];if(typeof $==="string"){if(typeof Z.headers["x-forwarded-proto"]==="string")return GZ($,Z.headers["x-forwarded-proto"]);if(Array.isArray(Z.headers["x-forwarded-proto"]))return GZ($,Z.headers["x-forwarded-proto"][0]);return GZ($)}else if(Array.isArray($)&&typeof $[0]==="string"&&$[0].length>0){if(typeof Z.headers["x-forwarded-proto"]==="string")return GZ($[0],Z.headers["x-forwarded-proto"]);if(Array.isArray(Z.headers["x-forwarded-proto"]))return GZ($[0],Z.headers["x-forwarded-proto"][0]);return GZ($[0])}let Y=Z.headers.host;if(typeof Y==="string"&&Y.length>0)return GZ(Y,J);return null}function Kh(Z){let J=Z.headers.forwarded;if(J){for(let Y of Gh(J))if(Y.for)return Yh(Y.for)}let Q=Z.headers["x-forwarded-for"];if(Q){let Y;if(typeof Q==="string")Y=Q;else if(Array.isArray(Q))Y=Q[0];if(typeof Y==="string")return Y=Y.split(",")[0].trim(),Yh(Y)}let $=Z.socket.remoteAddress;if($)return $;return null}Hh.getRemoteClientAddress=Kh;function Yh(Z){try{let{hostname:J}=new URL(`http://${Z}`);if(J.startsWith("[")&&J.endsWith("]"))return J.slice(1,-1);return J}catch{return Z}}function k20(Z,J,Q){try{if(J.headers.host)return new URL(J.url??"/",`${Z}://${J.headers.host}`);else{let $=new URL(J.url??"/",`${Z}://localhost`);return{pathname:$.pathname,search:$.search,toString:function(){return $.pathname+$.search}}}}catch($){return Q.verbose("Unable to get URL from request",$),{}}}var N20=(Z,J,Q)=>{let{component:$,enableSyntheticSourceDetection:Y,hookAttributes:X,semconvStability:W,serverName:K}=J,{headers:z,httpVersion:G,method:H}=Z,{host:B,"user-agent":V,"x-forwarded-for":F}=z,U=k20($,Z,Q),w,D;if(W!==j6.SemconvStability.OLD){let L=zh(H),C=R20(Z,$),R=Kh(Z);if(w={[J0.ATTR_HTTP_REQUEST_METHOD]:L,[J0.ATTR_URL_SCHEME]:$,[J0.ATTR_SERVER_ADDRESS]:C?.host,[J0.ATTR_NETWORK_PEER_ADDRESS]:Z.socket.remoteAddress,[J0.ATTR_NETWORK_PEER_PORT]:Z.socket.remotePort,[J0.ATTR_NETWORK_PROTOCOL_VERSION]:Z.httpVersion,[J0.ATTR_USER_AGENT_ORIGINAL]:V},U.pathname!=null)w[J0.ATTR_URL_PATH]=U.pathname;if(U.search)w[J0.ATTR_URL_QUERY]=U.search.slice(1);if(R!=null)w[J0.ATTR_CLIENT_ADDRESS]=R;if(C?.port!=null)w[J0.ATTR_SERVER_PORT]=Number(C.port);if(H!==L)w[J0.ATTR_HTTP_REQUEST_METHOD_ORIGINAL]=H;if(Y&&V)w[u.ATTR_USER_AGENT_SYNTHETIC_TYPE]=Wh(V)}if(W!==j6.SemconvStability.STABLE){let L=B?.replace(/^(.*)(:[0-9]{1,5})/,"$1")||"localhost";if(D={[u.ATTR_HTTP_URL]:U.toString(),[u.ATTR_HTTP_HOST]:B,[u.ATTR_NET_HOST_NAME]:L,[u.ATTR_HTTP_METHOD]:H,[u.ATTR_HTTP_SCHEME]:$},typeof F==="string")D[u.ATTR_HTTP_CLIENT_IP]=F.split(",")[0];if(typeof K==="string")D[u.ATTR_HTTP_SERVER_NAME]=K;if(U.pathname)D[u.ATTR_HTTP_TARGET]=U.pathname+U.search||"/";if(V!==void 0)D[u.ATTR_HTTP_USER_AGENT]=V;Hh.setRequestContentLengthAttribute(Z,D),Hh.setAttributesFromHttpKind(G,D)}switch(W){case j6.SemconvStability.STABLE:return Object.assign(w,X);case j6.SemconvStability.OLD:return Object.assign(D,X);default:return Object.assign(D,w,X)}};Hh.getIncomingRequestAttributes=N20;var A20=(Z)=>{let J={};return J[u.ATTR_HTTP_SCHEME]=Z[u.ATTR_HTTP_SCHEME],J[u.ATTR_HTTP_METHOD]=Z[u.ATTR_HTTP_METHOD],J[u.ATTR_NET_HOST_NAME]=Z[u.ATTR_NET_HOST_NAME],J[u.ATTR_HTTP_FLAVOR]=Z[u.ATTR_HTTP_FLAVOR],J};Hh.getIncomingRequestMetricAttributes=A20;var I20=(Z,J,Q)=>{let{socket:$}=Z,{statusCode:Y,statusMessage:X}=J,W={[J0.ATTR_HTTP_RESPONSE_STATUS_CODE]:Y},K=(0,Qh.getRPCMetadata)(SQ.context.active()),z={};if($){let{localAddress:G,localPort:H,remoteAddress:B,remotePort:V}=$;z[u.ATTR_NET_HOST_IP]=G,z[u.ATTR_NET_HOST_PORT]=H,z[u.ATTR_NET_PEER_IP]=B,z[u.ATTR_NET_PEER_PORT]=V}if(z[u.ATTR_HTTP_STATUS_CODE]=Y,z[AX.AttributeNames.HTTP_STATUS_TEXT]=(X||"").toUpperCase(),K?.type===Qh.RPCType.HTTP&&K.route!==void 0)z[J0.ATTR_HTTP_ROUTE]=K.route,W[J0.ATTR_HTTP_ROUTE]=K.route;switch(Q){case j6.SemconvStability.STABLE:return W;case j6.SemconvStability.OLD:return z}return Object.assign(z,W)};Hh.getIncomingRequestAttributesOnResponse=I20;var T20=(Z)=>{let J={};if(J[u.ATTR_HTTP_STATUS_CODE]=Z[u.ATTR_HTTP_STATUS_CODE],J[u.ATTR_NET_HOST_PORT]=Z[u.ATTR_NET_HOST_PORT],Z[J0.ATTR_HTTP_ROUTE]!==void 0)J[J0.ATTR_HTTP_ROUTE]=Z[J0.ATTR_HTTP_ROUTE];return J};Hh.getIncomingRequestMetricAttributesOnResponse=T20;var E20=(Z)=>{let J={};if(Z[J0.ATTR_HTTP_ROUTE]!==void 0)J[J0.ATTR_HTTP_ROUTE]=Z[J0.ATTR_HTTP_ROUTE];if(Z[J0.ATTR_HTTP_RESPONSE_STATUS_CODE])J[J0.ATTR_HTTP_RESPONSE_STATUS_CODE]=Z[J0.ATTR_HTTP_RESPONSE_STATUS_CODE];return J};Hh.getIncomingStableRequestMetricAttributesOnResponse=E20;function f20(Z,J,Q){let $=new Map;for(let Y=0,X=J.length;Y<X;Y++){let W=J[Y].toLowerCase();if(Q&j6.SemconvStability.STABLE)$.set(W,W);else $.set(W,W.replaceAll("-","_"))}return(Y)=>{let X={};for(let W of $.keys()){let K=Y(W);if(K===void 0)continue;let z=$.get(W),G=`http.${Z}.header.${z}`;if(typeof K==="string")X[G]=[K];else if(Array.isArray(K))X[G]=K;else X[G]=[K]}return X}}Hh.headerCapture=f20;var y20=new Set(["GET","HEAD","POST","PUT","DELETE","CONNECT","OPTIONS","TRACE","PATCH","QUERY"]);function zh(Z){if(Z==null)return"GET";let J=Z.toUpperCase();if(y20.has(J))return J;return"_OTHER"}function Gh(Z){try{return W20(Z)}catch{return[]}}});var Oh=j((jh)=>{Object.defineProperty(jh,"__esModule",{value:!0});jh.HttpInstrumentation=void 0;var r=I(),HZ=YB(),s20=E("url"),r20=oy(),q1=n(),uB=E("events"),I0=Y0(),n0=qh();class wh extends q1.InstrumentationBase{_spanNotEnded=new WeakSet;_headerCapture;_httpPatched=!1;_httpsPatched=!1;_semconvStability=q1.SemconvStability.OLD;constructor(Z={}){super("@opentelemetry/instrumentation-http",r20.VERSION,Z);this._semconvStability=(0,q1.semconvStabilityFromStr)("http",process.env.OTEL_SEMCONV_STABILITY_OPT_IN),this._headerCapture=this._createHeaderCapture(this._semconvStability)}_updateMetricInstruments(){this._oldHttpServerDurationHistogram=this.meter.createHistogram("http.server.duration",{description:"Measures the duration of inbound HTTP requests.",unit:"ms",valueType:r.ValueType.DOUBLE}),this._oldHttpClientDurationHistogram=this.meter.createHistogram("http.client.duration",{description:"Measures the duration of outbound HTTP requests.",unit:"ms",valueType:r.ValueType.DOUBLE}),this._stableHttpServerDurationHistogram=this.meter.createHistogram(I0.METRIC_HTTP_SERVER_REQUEST_DURATION,{description:"Duration of HTTP server requests.",unit:"s",valueType:r.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}}),this._stableHttpClientDurationHistogram=this.meter.createHistogram(I0.METRIC_HTTP_CLIENT_REQUEST_DURATION,{description:"Duration of HTTP client requests.",unit:"s",valueType:r.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}})}_recordServerDuration(Z,J,Q){if(this._semconvStability&q1.SemconvStability.OLD)this._oldHttpServerDurationHistogram.record(Z,J);if(this._semconvStability&q1.SemconvStability.STABLE)this._stableHttpServerDurationHistogram.record(Z/1000,Q)}_recordClientDuration(Z,J,Q){if(this._semconvStability&q1.SemconvStability.OLD)this._oldHttpClientDurationHistogram.record(Z,J);if(this._semconvStability&q1.SemconvStability.STABLE)this._stableHttpClientDurationHistogram.record(Z/1000,Q)}setConfig(Z={}){super.setConfig(Z),this._headerCapture=this._createHeaderCapture(this._semconvStability)}init(){return[this._getHttpsInstrumentation(),this._getHttpInstrumentation()]}_getHttpInstrumentation(){return new q1.InstrumentationNodeModuleDefinition("http",["*"],(Z)=>{if(this._httpPatched)return Z;this._httpPatched=!0;let J=Z[Symbol.toStringTag]==="Module";if(!this.getConfig().disableOutgoingRequestInstrumentation){let Q=this._wrap(Z,"request",this._getPatchOutgoingRequestFunction("http")),$=this._wrap(Z,"get",this._getPatchOutgoingGetFunction(Q));if(J)Z.default.request=Q,Z.default.get=$}if(!this.getConfig().disableIncomingRequestInstrumentation)this._wrap(Z.Server.prototype,"emit",this._getPatchIncomingRequestFunction("http"));return Z},(Z)=>{if(this._httpPatched=!1,Z===void 0)return;if(!this.getConfig().disableOutgoingRequestInstrumentation)this._unwrap(Z,"request"),this._unwrap(Z,"get");if(!this.getConfig().disableIncomingRequestInstrumentation)this._unwrap(Z.Server.prototype,"emit")})}_getHttpsInstrumentation(){return new q1.InstrumentationNodeModuleDefinition("https",["*"],(Z)=>{if(this._httpsPatched)return Z;this._httpsPatched=!0;let J=Z[Symbol.toStringTag]==="Module";if(!this.getConfig().disableOutgoingRequestInstrumentation){let Q=this._wrap(Z,"request",this._getPatchHttpsOutgoingRequestFunction("https")),$=this._wrap(Z,"get",this._getPatchHttpsOutgoingGetFunction(Q));if(J)Z.default.request=Q,Z.default.get=$}if(!this.getConfig().disableIncomingRequestInstrumentation)this._wrap(Z.Server.prototype,"emit",this._getPatchIncomingRequestFunction("https"));return Z},(Z)=>{if(this._httpsPatched=!1,Z===void 0)return;if(!this.getConfig().disableOutgoingRequestInstrumentation)this._unwrap(Z,"request"),this._unwrap(Z,"get");if(!this.getConfig().disableIncomingRequestInstrumentation)this._unwrap(Z.Server.prototype,"emit")})}_getPatchIncomingRequestFunction(Z){return(J)=>{return this._incomingRequestFunction(Z,J)}}_getPatchOutgoingRequestFunction(Z){return(J)=>{return this._outgoingRequestFunction(Z,J)}}_getPatchOutgoingGetFunction(Z){return(J)=>{return function($,...Y){let X=Z($,...Y);return X.end(),X}}}_getPatchHttpsOutgoingRequestFunction(Z){return(J)=>{let Q=this;return function(Y,...X){if(Z==="https"&&typeof Y==="object"&&Y?.constructor?.name!=="URL")Y=Object.assign({},Y),Q._setDefaultOptions(Y);return Q._getPatchOutgoingRequestFunction(Z)(J)(Y,...X)}}}_setDefaultOptions(Z){Z.protocol=Z.protocol||"https:",Z.port=Z.port||443}_getPatchHttpsOutgoingGetFunction(Z){return(J)=>{let Q=this;return function(Y,...X){return Q._getPatchOutgoingGetFunction(Z)(J)(Y,...X)}}}_traceClientRequest(Z,J,Q,$,Y){if(this.getConfig().requestHook)this._callRequestHook(J,Z);let X=!1;return Z.prependListener("response",(W)=>{if(this._diag.debug("outgoingRequest on response()"),Z.listenerCount("response")<=1)W.resume();let K=(0,n0.getOutgoingRequestAttributesOnResponse)(W,this._semconvStability);if(J.setAttributes(K),$=Object.assign($,(0,n0.getOutgoingRequestMetricAttributesOnResponse)(K)),Y=Object.assign(Y,(0,n0.getOutgoingStableRequestMetricAttributesOnResponse)(K)),this.getConfig().responseHook)this._callResponseHook(J,W);J.setAttributes(this._headerCapture.client.captureRequestHeaders((G)=>Z.getHeader(G))),J.setAttributes(this._headerCapture.client.captureResponseHeaders((G)=>W.headers[G])),r.context.bind(r.context.active(),W);let z=()=>{if(this._diag.debug("outgoingRequest on end()"),X)return;X=!0;let G;if(W.aborted&&!W.complete)G={code:r.SpanStatusCode.ERROR};else G={code:(0,n0.parseResponseStatus)(r.SpanKind.CLIENT,W.statusCode)};if(J.setStatus(G),this.getConfig().applyCustomAttributesOnSpan)(0,q1.safeExecuteInTheMiddle)(()=>this.getConfig().applyCustomAttributesOnSpan(J,Z,W),()=>{},!0);this._closeHttpSpan(J,r.SpanKind.CLIENT,Q,$,Y)};W.on("end",z),W.on(uB.errorMonitor,(G)=>{if(this._diag.debug("outgoingRequest on error()",G),X)return;X=!0,this._onOutgoingRequestError(J,$,Y,Q,G)})}),Z.on("close",()=>{if(this._diag.debug("outgoingRequest on request close()"),Z.aborted||X)return;X=!0,this._closeHttpSpan(J,r.SpanKind.CLIENT,Q,$,Y)}),Z.on(uB.errorMonitor,(W)=>{if(this._diag.debug("outgoingRequest on request error()",W),X)return;X=!0,this._onOutgoingRequestError(J,$,Y,Q,W)}),this._diag.debug("http.ClientRequest return request"),Z}_incomingRequestFunction(Z,J){let Q=this;return function(Y,...X){if(Y!=="request")return J.apply(this,[Y,...X]);let W=X[0],K=X[1],z=W.method||"GET";if(Q._diag.debug(`${Z} instrumentation incomingRequest`),(0,q1.safeExecuteInTheMiddle)(()=>Q.getConfig().ignoreIncomingRequestHook?.(W),(C)=>{if(C!=null)Q._diag.error("caught ignoreIncomingRequestHook error: ",C)},!0))return r.context.with((0,HZ.suppressTracing)(r.context.active()),()=>{return r.context.bind(r.context.active(),W),r.context.bind(r.context.active(),K),J.apply(this,[Y,...X])});let G=W.headers,H=(0,n0.getIncomingRequestAttributes)(W,{component:Z,serverName:Q.getConfig().serverName,hookAttributes:Q._callStartSpanHook(W,Q.getConfig().startIncomingSpanHook),semconvStability:Q._semconvStability,enableSyntheticSourceDetection:Q.getConfig().enableSyntheticSourceDetection||!1},Q._diag);Object.assign(H,Q._headerCapture.server.captureRequestHeaders((C)=>W.headers[C]));let B={kind:r.SpanKind.SERVER,attributes:H},V=(0,HZ.hrTime)(),F=(0,n0.getIncomingRequestMetricAttributes)(H),U={[I0.ATTR_HTTP_REQUEST_METHOD]:H[I0.ATTR_HTTP_REQUEST_METHOD],[I0.ATTR_URL_SCHEME]:H[I0.ATTR_URL_SCHEME]};if(H[I0.ATTR_NETWORK_PROTOCOL_VERSION])U[I0.ATTR_NETWORK_PROTOCOL_VERSION]=H[I0.ATTR_NETWORK_PROTOCOL_VERSION];let w=r.propagation.extract(r.ROOT_CONTEXT,G),D=Q._startHttpSpan(z,B,w),L={type:HZ.RPCType.HTTP,span:D};return r.context.with((0,HZ.setRPCMetadata)(r.trace.setSpan(w,D),L),()=>{if(r.context.bind(r.context.active(),W),r.context.bind(r.context.active(),K),Q.getConfig().requestHook)Q._callRequestHook(D,W);if(Q.getConfig().responseHook)Q._callResponseHook(D,K);let C=!1;return K.on("close",()=>{if(C)return;Q._onServerResponseFinish(W,K,D,F,U,V)}),K.on(uB.errorMonitor,(R)=>{C=!0,Q._onServerResponseError(D,F,U,V,R)}),(0,q1.safeExecuteInTheMiddle)(()=>J.apply(this,[Y,...X]),(R)=>{if(R)throw Q._onServerResponseError(D,F,U,V,R),R})})}}_outgoingRequestFunction(Z,J){let Q=this;return function(Y,...X){if(!(0,n0.isValidOptionsType)(Y))return J.apply(this,[Y,...X]);let W=typeof X[0]==="object"&&(typeof Y==="string"||Y instanceof s20.URL)?X.shift():void 0,{method:K,invalidUrl:z,optionsParsed:G}=(0,n0.getRequestInfo)(Q._diag,Y,W);if((0,q1.safeExecuteInTheMiddle)(()=>Q.getConfig().ignoreOutgoingRequestHook?.(G),(T)=>{if(T!=null)Q._diag.error("caught ignoreOutgoingRequestHook error: ",T)},!0))return J.apply(this,[G,...X]);let{hostname:H,port:B}=(0,n0.extractHostnameAndPort)(G),V=(0,n0.getOutgoingRequestAttributes)(G,{component:Z,port:B,hostname:H,hookAttributes:Q._callStartSpanHook(G,Q.getConfig().startOutgoingSpanHook),redactedQueryParams:Q.getConfig().redactedQueryParams},Q._semconvStability,Q.getConfig().enableSyntheticSourceDetection||!1),F=(0,HZ.hrTime)(),U=(0,n0.getOutgoingRequestMetricAttributes)(V),w={[I0.ATTR_HTTP_REQUEST_METHOD]:V[I0.ATTR_HTTP_REQUEST_METHOD],[I0.ATTR_SERVER_ADDRESS]:V[I0.ATTR_SERVER_ADDRESS],[I0.ATTR_SERVER_PORT]:V[I0.ATTR_SERVER_PORT]};if(V[I0.ATTR_HTTP_RESPONSE_STATUS_CODE])w[I0.ATTR_HTTP_RESPONSE_STATUS_CODE]=V[I0.ATTR_HTTP_RESPONSE_STATUS_CODE];if(V[I0.ATTR_NETWORK_PROTOCOL_VERSION])w[I0.ATTR_NETWORK_PROTOCOL_VERSION]=V[I0.ATTR_NETWORK_PROTOCOL_VERSION];let D={kind:r.SpanKind.CLIENT,attributes:V},L=Q._startHttpSpan(K,D),C=r.context.active(),R=r.trace.setSpan(C,L);if(!G.headers)G.headers={};else G.headers=Object.assign({},G.headers);return r.propagation.inject(R,G.headers),r.context.with(R,()=>{let T=X[X.length-1];if(typeof T==="function")X[X.length-1]=r.context.bind(C,T);let _=(0,q1.safeExecuteInTheMiddle)(()=>{if(z)return J.apply(this,[Y,...X]);else return J.apply(this,[G,...X])},(m)=>{if(m)throw Q._onOutgoingRequestError(L,U,w,F,m),m});return Q._diag.debug(`${Z} instrumentation outgoingRequest`),r.context.bind(C,_),Q._traceClientRequest(_,L,F,U,w)})}}_onServerResponseFinish(Z,J,Q,$,Y,X){let W=(0,n0.getIncomingRequestAttributesOnResponse)(Z,J,this._semconvStability);$=Object.assign($,(0,n0.getIncomingRequestMetricAttributesOnResponse)(W)),Y=Object.assign(Y,(0,n0.getIncomingStableRequestMetricAttributesOnResponse)(W)),Q.setAttributes(this._headerCapture.server.captureResponseHeaders((z)=>J.getHeader(z))),Q.setAttributes(W).setStatus({code:(0,n0.parseResponseStatus)(r.SpanKind.SERVER,J.statusCode)});let K=W[I0.ATTR_HTTP_ROUTE];if(K)Q.updateName(`${Z.method||"GET"} ${K}`);if(this.getConfig().applyCustomAttributesOnSpan)(0,q1.safeExecuteInTheMiddle)(()=>this.getConfig().applyCustomAttributesOnSpan(Q,Z,J),()=>{},!0);this._closeHttpSpan(Q,r.SpanKind.SERVER,X,$,Y)}_onOutgoingRequestError(Z,J,Q,$,Y){(0,n0.setSpanWithError)(Z,Y,this._semconvStability),Q[I0.ATTR_ERROR_TYPE]=Y.name,this._closeHttpSpan(Z,r.SpanKind.CLIENT,$,J,Q)}_onServerResponseError(Z,J,Q,$,Y){(0,n0.setSpanWithError)(Z,Y,this._semconvStability),Q[I0.ATTR_ERROR_TYPE]=Y.name,this._closeHttpSpan(Z,r.SpanKind.SERVER,$,J,Q)}_startHttpSpan(Z,J,Q=r.context.active()){let $=J.kind===r.SpanKind.CLIENT?this.getConfig().requireParentforOutgoingSpans:this.getConfig().requireParentforIncomingSpans,Y,X=r.trace.getSpan(Q);if($===!0&&(!X||!r.trace.isSpanContextValid(X.spanContext())))Y=r.trace.wrapSpanContext(r.INVALID_SPAN_CONTEXT);else if($===!0&&X?.spanContext().isRemote)Y=X;else Y=this.tracer.startSpan(Z,J,Q);return this._spanNotEnded.add(Y),Y}_closeHttpSpan(Z,J,Q,$,Y){if(!this._spanNotEnded.has(Z))return;Z.end(),this._spanNotEnded.delete(Z);let X=(0,HZ.hrTimeToMilliseconds)((0,HZ.hrTimeDuration)(Q,(0,HZ.hrTime)()));if(J===r.SpanKind.SERVER)this._recordServerDuration(X,$,Y);else if(J===r.SpanKind.CLIENT)this._recordClientDuration(X,$,Y)}_callResponseHook(Z,J){(0,q1.safeExecuteInTheMiddle)(()=>this.getConfig().responseHook(Z,J),()=>{},!0)}_callRequestHook(Z,J){(0,q1.safeExecuteInTheMiddle)(()=>this.getConfig().requestHook(Z,J),()=>{},!0)}_callStartSpanHook(Z,J){if(typeof J==="function")return(0,q1.safeExecuteInTheMiddle)(()=>J(Z),()=>{},!0)}_createHeaderCapture(Z){let J=this.getConfig();return{client:{captureRequestHeaders:(0,n0.headerCapture)("request",J.headersToSpanAttributes?.client?.requestHeaders??[],Z),captureResponseHeaders:(0,n0.headerCapture)("response",J.headersToSpanAttributes?.client?.responseHeaders??[],Z)},server:{captureRequestHeaders:(0,n0.headerCapture)("request",J.headersToSpanAttributes?.server?.requestHeaders??[],Z),captureResponseHeaders:(0,n0.headerCapture)("response",J.headersToSpanAttributes?.server?.responseHeaders??[],Z)}}}}jh.HttpInstrumentation=wh});var Lh=j((lB)=>{Object.defineProperty(lB,"__esModule",{value:!0});lB.HttpInstrumentation=void 0;var t20=Oh();Object.defineProperty(lB,"HttpInstrumentation",{enumerable:!0,get:function(){return t20.HttpInstrumentation}})});var M;var z0=q(()=>{M=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__});function M1(Z){switch(Ch.call(Z)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object WebAssembly.Exception]":return!0;default:return u9(Z,Error)}}function IX(Z,J){return Ch.call(Z)===`[object ${J}]`}function pB(Z){return IX(Z,"ErrorEvent")}function BZ(Z){return IX(Z,"String")}function VZ(Z){return typeof Z==="object"&&Z!==null&&"__sentry_template_string__"in Z&&"__sentry_template_values__"in Z}function h7(Z){return Z===null||VZ(Z)||typeof Z!=="object"&&typeof Z!=="function"}function c1(Z){return IX(Z,"Object")}function iB(Z){return typeof Event<"u"&&u9(Z,Event)}function oB(Z){return typeof Element<"u"&&u9(Z,Element)}function nB(Z){return IX(Z,"RegExp")}function X1(Z){return Boolean(Z?.then&&typeof Z.then==="function")}function aB(Z){return c1(Z)&&"nativeEvent"in Z&&"preventDefault"in Z&&"stopPropagation"in Z}function u9(Z,J){try{return Z instanceof J}catch{return!1}}function _Q(Z){return!!(typeof Z==="object"&&Z!==null&&(Z.__isVue||Z._isVue||Z.__v_isVNode))}var Ch;var S0=q(()=>{Ch=Object.prototype.toString});var d;var J1=q(()=>{d=globalThis});function Ph(Z,J={}){if(!Z)return"<unknown>";try{let Q=Z,$=5,Y=[],X=0,W=0,K=" > ",z=K.length,G,H=Array.isArray(J)?J:J.keyAttrs,B=!Array.isArray(J)&&J.maxStringLength||JO0;while(Q&&X++<$){if(G=QO0(Q,H),G==="html"||X>1&&W+Y.length*z+G.length>=B)break;Y.push(G),W+=G.length,Q=Q.parentNode}return Y.reverse().join(K)}catch{return"<unknown>"}}function QO0(Z,J){let Q=Z,$=[];if(!Q?.tagName)return"";if(ZO0.HTMLElement){if(Q instanceof HTMLElement&&Q.dataset){if(Q.dataset.sentryComponent)return Q.dataset.sentryComponent;if(Q.dataset.sentryElement)return Q.dataset.sentryElement}}$.push(Q.tagName.toLowerCase());let Y=J?.length?J.filter((X)=>Q.getAttribute(X)).map((X)=>[X,Q.getAttribute(X)]):null;if(Y?.length)Y.forEach((X)=>{$.push(`[${X[0]}="${X[1]}"]`)});else{if(Q.id)$.push(`#${Q.id}`);let X=Q.className;if(X&&BZ(X)){let W=X.split(/\s+/);for(let K of W)$.push(`.${K}`)}}for(let X of["aria-label","type","name","title","alt"]){let W=Q.getAttribute(X);if(W)$.push(`[${X}="${W}"]`)}return $.join("")}var ZO0,JO0=80;var Mh=q(()=>{S0();J1();ZO0=d});var e="10.46.0";var TX=()=>{};function S1(){return FZ(d),d}function FZ(Z){let J=Z.__SENTRY__=Z.__SENTRY__||{};return J.version=J.version||e,J[e]=J[e]||{}}function U9(Z,J,Q=d){let $=Q.__SENTRY__=Q.__SENTRY__||{},Y=$[e]=$[e]||{};return Y[Z]||(Y[Z]=J())}var u6=q(()=>{TX();J1()});function G0(Z){if(!("console"in d))return Z();let J=d.console,Q={},$=Object.keys(G4);$.forEach((Y)=>{let X=G4[Y];Q[Y]=J[Y],J[Y]=X});try{return Z()}finally{$.forEach((Y)=>{J[Y]=Q[Y]})}}function YO0(){rB().enabled=!0}function XO0(){rB().enabled=!1}function Rh(){return rB().enabled}function WO0(...Z){sB("log",...Z)}function KO0(...Z){sB("warn",...Z)}function zO0(...Z){sB("error",...Z)}function sB(Z,...J){if(!M)return;if(Rh())G0(()=>{d.console[Z](`${$O0}[${Z}]:`,...J)})}function rB(){if(!M)return{enabled:!1};return U9("loggerSettings",()=>({enabled:!1}))}var V8,$O0="Sentry Logger ",G4,O;var Z0=q(()=>{u6();z0();J1();V8=["debug","info","warn","error","log","assert","trace"],G4={};O={enable:YO0,disable:XO0,isEnabled:Rh,log:WO0,warn:KO0,error:zO0}});function m1(Z,J,Q){if(!(J in Z))return;let $=Z[J];if(typeof $!=="function")return;let Y=Q($);if(typeof Y==="function")Ah(Y,$);try{Z[J]=Y}catch{M&&O.log(`Failed to replace method "${J}" in object`,Z)}}function T0(Z,J,Q){try{Object.defineProperty(Z,J,{value:Q,writable:!0,configurable:!0})}catch{M&&O.log(`Failed to add non-enumerable property "${J}" to object`,Z)}}function Ah(Z,J){try{let Q=J.prototype||{};Z.prototype=J.prototype=Q,T0(Z,"__sentry_original__",J)}catch{}}function tB(Z){return Z.__sentry_original__}function EX(Z){if(M1(Z))return{message:Z.message,name:Z.name,stack:Z.stack,...Nh(Z)};else if(iB(Z)){let J={type:Z.type,target:kh(Z.target),currentTarget:kh(Z.currentTarget),...Nh(Z)};if(typeof CustomEvent<"u"&&u9(Z,CustomEvent))J.detail=Z.detail;return J}else return Z}function kh(Z){try{return oB(Z)?Ph(Z):Object.prototype.toString.call(Z)}catch{return"<unknown>"}}function Nh(Z){if(typeof Z==="object"&&Z!==null)return Object.fromEntries(Object.entries(Z));return{}}function eB(Z){let J=Object.keys(EX(Z));return J.sort(),!J[0]?"[object has no keys]":J.join(", ")}var R1=q(()=>{z0();Mh();Z0();S0()});function GO0(Z){try{let J=d.WeakRef;if(typeof J==="function")return new J(Z)}catch{}return Z}function HO0(Z){if(!Z)return;if(typeof Z==="object"&&"deref"in Z&&typeof Z.deref==="function")try{return Z.deref()}catch{return}return Z}function hQ(Z,J,Q){if(Z)T0(Z,Th,GO0(Q)),T0(Z,Ih,J)}function q9(Z){let J=Z;return{scope:J[Ih],isolationScope:HO0(J[Th])}}var Ih="_sentryScope",Th="_sentryIsolationScope";var H4=q(()=>{R1();J1()});function D6(Z){if(Z<400&&Z>=100)return{code:1};if(Z>=400&&Z<500)switch(Z){case 401:return{code:2,message:"unauthenticated"};case 403:return{code:2,message:"permission_denied"};case 404:return{code:2,message:"not_found"};case 409:return{code:2,message:"already_exists"};case 413:return{code:2,message:"failed_precondition"};case 429:return{code:2,message:"resource_exhausted"};case 499:return{code:2,message:"cancelled"};default:return{code:2,message:"invalid_argument"}}if(Z>=500&&Z<600)switch(Z){case 501:return{code:2,message:"unimplemented"};case 503:return{code:2,message:"unavailable"};case 504:return{code:2,message:"deadline_exceeded"};default:return{code:2,message:"internal_error"}}return{code:2,message:"internal_error"}}function l9(Z,J){Z.setAttribute("http.response.status_code",J);let Q=D6(J);if(Q.message!=="unknown_error")Z.setStatus(Q)}var ZV=0,UZ=1,a=2;var w1=()=>{};function b7(Z){if(B4!==void 0)return B4?B4(Z):Z();let J=Symbol.for("__SENTRY_SAFE_RANDOM_ID_WRAPPER__"),Q=d;if(J in Q&&typeof Q[J]==="function")return B4=Q[J],B4(Z);return B4=null,Z()}function W1(){return b7(()=>Math.random())}function l6(){return b7(()=>Date.now())}var B4;var F8=q(()=>{J1()});function yX(...Z){let J=Z.sort((Q,$)=>Q[0]-$[0]).map((Q)=>Q[1]);return(Q,$=0,Y=0)=>{let X=[],W=Q.split(`
|
|
8
8
|
`);for(let K=$;K<W.length;K++){let z=W[K];if(z.length>1024)z=z.slice(0,1024);let G=Eh.test(z)?z.replace(Eh,"$1"):z;if(G.match(/\S*Error: /))continue;for(let H of J){let B=H(G);if(B){X.push(B);break}}if(X.length>=50+Y)break}return yh(X.slice(Y))}}function $V(Z){if(Array.isArray(Z))return yX(...Z);return Z}function yh(Z){if(!Z.length)return[];let J=Array.from(Z);if(/sentryWrapped/.test(fX(J).function||""))J.pop();if(J.reverse(),fh.test(fX(J).function||"")){if(J.pop(),fh.test(fX(J).function||""))J.pop()}return J.slice(0,50).map((Q)=>({...Q,filename:Q.filename||fX(J).filename,function:Q.function||"?"}))}function fX(Z){return Z[Z.length-1]||{}}function bQ(Z){try{if(!Z||typeof Z!=="function")return JV;return Z.name||JV}catch{return JV}}function SX(Z){let J=Z.exception;if(J){let Q=[];try{return J.values.forEach(($)=>{if($.stacktrace.frames)Q.push(...$.stacktrace.frames)}),Q}catch{return}}return}function _X(Z){return"__v_isVNode"in Z&&Z.__v_isVNode?"[VueVNode]":"[VueViewModel]"}function Sh(Z){let J=Z?.startsWith("file://")?Z.slice(7):Z;if(J?.match(/\/[A-Z]:/))J=J.slice(1);return J}var QV="?",Eh,fh,JV="<anonymous>";var v7=q(()=>{Eh=/\(error: (.*)\)/,fh=/captureMessage|captureException/});function p6(Z,J=0){if(typeof Z!=="string"||J===0)return Z;return Z.length<=J?Z:`${Z.slice(0,J)}...`}function YV(Z,J){let Q=Z,$=Q.length;if($<=150)return Q;if(J>$)J=$;let Y=Math.max(J-60,0);if(Y<5)Y=0;let X=Math.min(Y+140,$);if(X>$-5)X=$;if(X===$)Y=Math.max(X-140,0);if(Q=Q.slice(Y,X),Y>0)Q=`'{snip} ${Q}`;if(X<$)Q+=" {snip}";return Q}function V4(Z,J){if(!Array.isArray(Z))return"";let Q=[];for(let $=0;$<Z.length;$++){let Y=Z[$];try{if(_Q(Y))Q.push(_X(Y));else Q.push(String(Y))}catch{Q.push("[value cannot be serialized]")}}return Q.join(J)}function U8(Z,J,Q=!1){if(!BZ(Z))return!1;if(nB(J))return J.test(Z);if(BZ(J))return Q?Z===J:Z.includes(J);return!1}function qZ(Z,J=[],Q=!1){return J.some(($)=>U8(Z,$,Q))}var w9=q(()=>{S0();v7()});function BO0(){let Z=d;return Z.crypto||Z.msCrypto}function VO0(){return W1()*16}function a0(Z=BO0()){try{if(Z?.randomUUID)return b7(()=>Z.randomUUID()).replace(/-/g,"")}catch{}if(!XV)XV=[1e7]+1000+4000+8000+100000000000;return XV.replace(/[018]/g,(J)=>(J^(VO0()&15)>>J/4).toString(16))}function _h(Z){return Z.exception?.values?.[0]}function wZ(Z){let{message:J,event_id:Q}=Z;if(J)return J;let $=_h(Z);if($){if($.type&&$.value)return`${$.type}: ${$.value}`;return $.type||$.value||Q||"<unknown>"}return Q||"<unknown>"}function KV(Z,J,Q){let $=Z.exception=Z.exception||{},Y=$.values=$.values||[],X=Y[0]=Y[0]||{};if(!X.value)X.value=J||"";if(!X.type)X.type=Q||"Error"}function i6(Z,J){let Q=_h(Z);if(!Q)return;let $={type:"generic",handled:!0},Y=Q.mechanism;if(Q.mechanism={...$,...Y,...J},J&&"data"in J){let X={...Y?.data,...J.data};Q.mechanism.data=X}}function WV(Z){return parseInt(Z||"",10)}function zV(Z){let J=Z.match(FO0)||[],Q=WV(J[1]),$=WV(J[2]),Y=WV(J[3]);return{buildmetadata:J[5],major:isNaN(Q)?void 0:Q,minor:isNaN($)?void 0:$,patch:isNaN(Y)?void 0:Y,prerelease:J[4]}}function hX(Z){if(hh(Z))return!0;try{T0(Z,"__sentry_captured__",!0)}catch{}return!1}function hh(Z){try{return Z.__sentry_captured__}catch{}}var XV,FO0;var O6=q(()=>{R1();F8();J1();FO0=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/});function q8(){return l6()/vh}function UO0(){let{performance:Z}=d;if(!Z?.now||!Z.timeOrigin)return q8;let J=Z.timeOrigin;return()=>{return(J+b7(()=>Z.now()))/vh}}function u1(){return(bh??(bh=UO0()))()}var vh=1000,bh;var j9=q(()=>{F8();J1()});function xh(Z){let J=u1(),Q={sid:a0(),init:!0,timestamp:J,started:J,duration:0,status:"ok",errors:0,ignoreDuration:!1,toJSON:()=>qO0(Q)};if(Z)w8(Q,Z);return Q}function w8(Z,J={}){if(J.user){if(!Z.ipAddress&&J.user.ip_address)Z.ipAddress=J.user.ip_address;if(!Z.did&&!J.did)Z.did=J.user.id||J.user.email||J.user.username}if(Z.timestamp=J.timestamp||u1(),J.abnormal_mechanism)Z.abnormal_mechanism=J.abnormal_mechanism;if(J.ignoreDuration)Z.ignoreDuration=J.ignoreDuration;if(J.sid)Z.sid=J.sid.length===32?J.sid:a0();if(J.init!==void 0)Z.init=J.init;if(!Z.did&&J.did)Z.did=`${J.did}`;if(typeof J.started==="number")Z.started=J.started;if(Z.ignoreDuration)Z.duration=void 0;else if(typeof J.duration==="number")Z.duration=J.duration;else{let Q=Z.timestamp-Z.started;Z.duration=Q>=0?Q:0}if(J.release)Z.release=J.release;if(J.environment)Z.environment=J.environment;if(!Z.ipAddress&&J.ipAddress)Z.ipAddress=J.ipAddress;if(!Z.userAgent&&J.userAgent)Z.userAgent=J.userAgent;if(typeof J.errors==="number")Z.errors=J.errors;if(J.status)Z.status=J.status}function gh(Z,J){let Q={};if(J)Q={status:J};else if(Z.status==="ok")Q={status:"exited"};w8(Z,Q)}function qO0(Z){return{sid:`${Z.sid}`,init:Z.init,started:new Date(Z.started*1000).toISOString(),timestamp:new Date(Z.timestamp*1000).toISOString(),status:Z.status,errors:Z.errors,did:typeof Z.did==="number"||typeof Z.did==="string"?`${Z.did}`:void 0,duration:Z.duration,abnormal_mechanism:Z.abnormal_mechanism,attrs:{release:Z.release,environment:Z.environment,ip_address:Z.ipAddress,user_agent:Z.userAgent}}}var bX=q(()=>{O6();j9()});function jZ(Z,J,Q=2){if(!J||typeof J!=="object"||Q<=0)return J;if(Z&&Object.keys(J).length===0)return Z;let $={...Z};for(let Y in J)if(Object.prototype.hasOwnProperty.call(J,Y))$[Y]=jZ($[Y],J[Y],Q-1);return $}var vX=()=>{};function _1(){return a0()}function Y6(){return a0().substring(16)}var j8=q(()=>{O6()});function DZ(Z,J){if(J)T0(Z,GV,J);else delete Z[GV]}function D9(Z){return Z[GV]}var GV="_sentrySpan";var F4=q(()=>{R1()});class K1{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._attributes={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext={traceId:_1(),sampleRand:W1()}}clone(){let Z=new K1;if(Z._breadcrumbs=[...this._breadcrumbs],Z._tags={...this._tags},Z._attributes={...this._attributes},Z._extra={...this._extra},Z._contexts={...this._contexts},this._contexts.flags)Z._contexts.flags={values:[...this._contexts.flags.values]};return Z._user=this._user,Z._level=this._level,Z._session=this._session,Z._transactionName=this._transactionName,Z._fingerprint=this._fingerprint,Z._eventProcessors=[...this._eventProcessors],Z._attachments=[...this._attachments],Z._sdkProcessingMetadata={...this._sdkProcessingMetadata},Z._propagationContext={...this._propagationContext},Z._client=this._client,Z._lastEventId=this._lastEventId,Z._conversationId=this._conversationId,DZ(Z,D9(this)),Z}setClient(Z){this._client=Z}setLastEventId(Z){this._lastEventId=Z}getClient(){return this._client}lastEventId(){return this._lastEventId}addScopeListener(Z){this._scopeListeners.push(Z)}addEventProcessor(Z){return this._eventProcessors.push(Z),this}setUser(Z){if(this._user=Z||{email:void 0,id:void 0,ip_address:void 0,username:void 0},this._session)w8(this._session,{user:Z});return this._notifyScopeListeners(),this}getUser(){return this._user}setConversationId(Z){return this._conversationId=Z||void 0,this._notifyScopeListeners(),this}setTags(Z){return this._tags={...this._tags,...Z},this._notifyScopeListeners(),this}setTag(Z,J){return this.setTags({[Z]:J})}setAttributes(Z){return this._attributes={...this._attributes,...Z},this._notifyScopeListeners(),this}setAttribute(Z,J){return this.setAttributes({[Z]:J})}removeAttribute(Z){if(Z in this._attributes)delete this._attributes[Z],this._notifyScopeListeners();return this}setExtras(Z){return this._extra={...this._extra,...Z},this._notifyScopeListeners(),this}setExtra(Z,J){return this._extra={...this._extra,[Z]:J},this._notifyScopeListeners(),this}setFingerprint(Z){return this._fingerprint=Z,this._notifyScopeListeners(),this}setLevel(Z){return this._level=Z,this._notifyScopeListeners(),this}setTransactionName(Z){return this._transactionName=Z,this._notifyScopeListeners(),this}setContext(Z,J){if(J===null)delete this._contexts[Z];else this._contexts[Z]=J;return this._notifyScopeListeners(),this}setSession(Z){if(!Z)delete this._session;else this._session=Z;return this._notifyScopeListeners(),this}getSession(){return this._session}update(Z){if(!Z)return this;let J=typeof Z==="function"?Z(this):Z,Q=J instanceof K1?J.getScopeData():c1(J)?Z:void 0,{tags:$,attributes:Y,extra:X,user:W,contexts:K,level:z,fingerprint:G=[],propagationContext:H,conversationId:B}=Q||{};if(this._tags={...this._tags,...$},this._attributes={...this._attributes,...Y},this._extra={...this._extra,...X},this._contexts={...this._contexts,...K},W&&Object.keys(W).length)this._user=W;if(z)this._level=z;if(G.length)this._fingerprint=G;if(H)this._propagationContext=H;if(B)this._conversationId=B;return this}clear(){return this._breadcrumbs=[],this._tags={},this._attributes={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._session=void 0,this._conversationId=void 0,DZ(this,void 0),this._attachments=[],this.setPropagationContext({traceId:_1(),sampleRand:W1()}),this._notifyScopeListeners(),this}addBreadcrumb(Z,J){let Q=typeof J==="number"?J:wO0;if(Q<=0)return this;let $={timestamp:q8(),...Z,message:Z.message?p6(Z.message,2048):Z.message};if(this._breadcrumbs.push($),this._breadcrumbs.length>Q)this._breadcrumbs=this._breadcrumbs.slice(-Q),this._client?.recordDroppedEvent("buffer_overflow","log_item");return this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(Z){return this._attachments.push(Z),this}clearAttachments(){return this._attachments=[],this}getScopeData(){return{breadcrumbs:this._breadcrumbs,attachments:this._attachments,contexts:this._contexts,tags:this._tags,attributes:this._attributes,extra:this._extra,user:this._user,level:this._level,fingerprint:this._fingerprint||[],eventProcessors:this._eventProcessors,propagationContext:this._propagationContext,sdkProcessingMetadata:this._sdkProcessingMetadata,transactionName:this._transactionName,span:D9(this),conversationId:this._conversationId}}setSDKProcessingMetadata(Z){return this._sdkProcessingMetadata=jZ(this._sdkProcessingMetadata,Z,2),this}setPropagationContext(Z){return this._propagationContext=Z,this}getPropagationContext(){return this._propagationContext}captureException(Z,J){let Q=J?.event_id||a0();if(!this._client)return M&&O.warn("No client configured on scope - will not capture exception!"),Q;let $=Error("Sentry syntheticException");return this._client.captureException(Z,{originalException:Z,syntheticException:$,...J,event_id:Q},this),Q}captureMessage(Z,J,Q){let $=Q?.event_id||a0();if(!this._client)return M&&O.warn("No client configured on scope - will not capture message!"),$;let Y=Q?.syntheticException??Error(Z);return this._client.captureMessage(Z,J,{originalException:Z,syntheticException:Y,...Q,event_id:$},this),$}captureEvent(Z,J){let Q=Z.event_id||J?.event_id||a0();if(!this._client)return M&&O.warn("No client configured on scope - will not capture event!"),Q;return this._client.captureEvent(Z,{...J,event_id:Q},this),Q}_notifyScopeListeners(){if(!this._notifyingListeners)this._notifyingListeners=!0,this._scopeListeners.forEach((Z)=>{Z(this)}),this._notifyingListeners=!1}}var wO0=100;var U4=q(()=>{z0();bX();Z0();S0();vX();O6();j8();F8();F4();w9();j9()});function q4(){return U9("defaultCurrentScope",()=>new K1)}function X6(){return U9("defaultIsolationScope",()=>new K1)}var HV=q(()=>{u6();U4()});var dh=(Z)=>Z instanceof Promise&&!Z[ch],ch,xX=(Z,J,Q)=>{let $=Z.then((Y)=>{return J(Y),Y},(Y)=>{throw Q(Y),Y});return dh($)&&dh(Z)?$:jO0(Z,$)},jO0=(Z,J)=>{let Q=!1;for(let $ in Z){if($ in J)continue;Q=!0;let Y=Z[$];if(typeof Y==="function")Object.defineProperty(J,$,{value:(...X)=>Y.apply(Z,X),enumerable:!0,configurable:!0,writable:!0});else J[$]=Y}if(Q)Object.assign(J,{[ch]:!0});return J};var BV=q(()=>{ch=Symbol("chained PromiseLike")});class uh{constructor(Z,J){let Q;if(!Z)Q=new K1;else Q=Z;let $;if(!J)$=new K1;else $=J;this._stack=[{scope:Q}],this._isolationScope=$}withScope(Z){let J=this._pushScope(),Q;try{Q=Z(J)}catch($){throw this._popScope(),$}if(X1(Q))return xX(Q,()=>this._popScope(),()=>this._popScope());return this._popScope(),Q}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getIsolationScope(){return this._isolationScope}getStackTop(){return this._stack[this._stack.length-1]}_pushScope(){let Z=this.getScope().clone();return this._stack.push({client:this.getClient(),scope:Z}),Z}_popScope(){if(this._stack.length<=1)return!1;return!!this._stack.pop()}}function w4(){let Z=S1(),J=FZ(Z);return J.stack=J.stack||new uh(q4(),X6())}function DO0(Z){return w4().withScope(Z)}function OO0(Z,J){let Q=w4();return Q.withScope(()=>{return Q.getStackTop().scope=Z,J(Z)})}function mh(Z){return w4().withScope(()=>{return Z(w4().getIsolationScope())})}function lh(){return{withIsolationScope:mh,withScope:DO0,withSetScope:OO0,withSetIsolationScope:(Z,J)=>{return mh(J)},getCurrentScope:()=>w4().getScope(),getIsolationScope:()=>w4().getIsolationScope()}}var ph=q(()=>{HV();U4();BV();S0();u6()});function VV(Z){let J=S1(),Q=FZ(J);Q.acs=Z}function o6(Z){let J=FZ(Z);if(J.acs)return J.acs;return lh()}var j4=q(()=>{u6();ph()});function i(){let Z=S1();return o6(Z).getCurrentScope()}function x(){let Z=S1();return o6(Z).getIsolationScope()}function D8(){return U9("globalScope",()=>new K1)}function c0(...Z){let J=S1(),Q=o6(J);if(Z.length===2){let[$,Y]=Z;if(!$)return Q.withScope(Y);return Q.withSetScope($,Y)}return Q.withScope(Z[0])}function l1(...Z){let J=S1(),Q=o6(J);if(Z.length===2){let[$,Y]=Z;if(!$)return Q.withIsolationScope(Y);return Q.withSetIsolationScope($,Y)}return Q.withIsolationScope(Z[0])}function k(){return i().getClient()}function x7(Z){let J=Z.getPropagationContext(),{traceId:Q,parentSpanId:$,propagationSpanId:Y}=J,X={trace_id:Q,span_id:Y||Y6()};if($)X.parent_span_id=$;return X}var B0=q(()=>{j4();u6();U4();j8()});var H0="sentry.source",W6="sentry.sample_rate",FV="sentry.previous_trace_sample_rate",g="sentry.op",f="sentry.origin",gX="sentry.measurement_unit",dX="sentry.measurement_value",L6="sentry.custom_span_name",D4="sentry.profile_id",O4="sentry.exclusive_time",UV="cache.hit",qV="cache.key",wV="cache.item_size",vQ="http.request.method",OZ="url.full",jV="gen_ai.conversation.id";var m0=()=>{};function O9(Z){let J=g7(Z);if(!J)return;let Q=Object.entries(J).reduce(($,[Y,X])=>{if(Y.startsWith(L4)){let W=Y.slice(L4.length);$[W]=X}return $},{});if(Object.keys(Q).length>0)return Q;else return}function LZ(Z){if(!Z)return;let J=Object.entries(Z).reduce((Q,[$,Y])=>{if(Y)Q[`${L4}${$}`]=Y;return Q},{});return cX(J)}function g7(Z){if(!Z||!BZ(Z)&&!Array.isArray(Z))return;if(Array.isArray(Z))return Z.reduce((J,Q)=>{let $=ih(Q);return Object.entries($).forEach(([Y,X])=>{J[Y]=X}),J},{});return ih(Z)}function ih(Z){return Z.split(",").map((J)=>{let Q=J.indexOf("=");if(Q===-1)return[];let $=J.slice(0,Q),Y=J.slice(Q+1);return[$,Y].map((X)=>{try{return decodeURIComponent(X.trim())}catch{return}})}).reduce((J,[Q,$])=>{if(Q&&$)J[Q]=$;return J},{})}function cX(Z){if(Object.keys(Z).length===0)return;return Object.entries(Z).reduce((J,[Q,$],Y)=>{let X=`${encodeURIComponent(Q)}=${encodeURIComponent($)}`,W=Y===0?X:`${J},${X}`;if(W.length>oh)return M&&O.warn(`Not adding key: ${Q} with val: ${$} to baggage header due to exceeding baggage size limits.`),J;else return W},"")}var L4="sentry-",oh=8192;var C4=q(()=>{z0();Z0();S0()});function L9(Z,J,Q=()=>{},$=()=>{}){let Y;try{Y=Z()}catch(X){throw J(X),Q(),X}return LO0(Y,J,Q,$)}function LO0(Z,J,Q,$){if(X1(Z))return xX(Z,(Y)=>{Q(),$(Y)},(Y)=>{J(Y),Q()});return Q(),$(Z),Z}var mX=q(()=>{BV();S0()});function P0(Z){if(typeof __SENTRY_TRACING__==="boolean"&&!__SENTRY_TRACING__)return!1;let J=Z||k()?.getOptions();return!!J&&(J.tracesSampleRate!=null||!!J.tracesSampler)}var xQ=q(()=>{B0()});function C6(Z){if(typeof Z==="boolean")return Number(Z);let J=typeof Z==="string"?parseFloat(Z):Z;if(typeof J!=="number"||isNaN(J)||J<0||J>1)return;return J}var P4=()=>{};function MO0(Z){return Z==="http"||Z==="https"}function P6(Z,J=!1){let{host:Q,path:$,pass:Y,port:X,projectId:W,protocol:K,publicKey:z}=Z;return`${K}://${z}${J&&Y?`:${Y}`:""}@${Q}${X?`:${X}`:""}/${$?`${$}/`:$}${W}`}function RO0(Z){let J=PO0.exec(Z);if(!J){G0(()=>{console.error(`Invalid Sentry Dsn: ${Z}`)});return}let[Q,$,Y="",X="",W="",K=""]=J.slice(1),z="",G=K,H=G.split("/");if(H.length>1)z=H.slice(0,-1).join("/"),G=H.pop();if(G){let B=G.match(/^\d+/);if(B)G=B[0]}return nh({host:X,pass:Y,path:z,projectId:G,port:W,protocol:Q,publicKey:$})}function nh(Z){return{protocol:Z.protocol,publicKey:Z.publicKey||"",pass:Z.pass||"",host:Z.host,port:Z.port||"",path:Z.path||"",projectId:Z.projectId}}function kO0(Z){if(!M)return!0;let{port:J,projectId:Q,protocol:$}=Z;if(["protocol","publicKey","host","projectId"].find((W)=>{if(!Z[W])return O.error(`Invalid Sentry Dsn: ${W} missing`),!0;return!1}))return!1;if(!Q.match(/^\d+$/))return O.error(`Invalid Sentry Dsn: Invalid projectId ${Q}`),!1;if(!MO0($))return O.error(`Invalid Sentry Dsn: Invalid protocol ${$}`),!1;if(J&&isNaN(parseInt(J,10)))return O.error(`Invalid Sentry Dsn: Invalid port ${J}`),!1;return!0}function NO0(Z){return Z.match(CO0)?.[1]}function uX(Z){let J=Z.getOptions(),{host:Q}=Z.getDsn()||{},$;if(J.orgId)$=String(J.orgId);else if(Q)$=NO0(Q);return $}function ah(Z){let J=typeof Z==="string"?RO0(Z):nh(Z);if(!J||!kO0(J))return;return J}var CO0,PO0;var O8=q(()=>{z0();Z0();CO0=/^o(\d+)\./,PO0=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)((?:\[[:.%\w]+\]|[\w.-]+))(?::(\d+))?\/(.+)/});function sh(Z){if(!Z)return;let J=Z.match(gQ);if(!J)return;let Q;if(J[3]==="1")Q=!0;else if(J[3]==="0")Q=!1;return{traceId:J[1],parentSampled:Q,parentSpanId:J[2]}}function d7(Z,J){let Q=sh(Z),$=O9(J);if(!Q?.traceId)return{traceId:_1(),sampleRand:W1()};let Y=AO0(Q,$);if($)$.sample_rand=Y.toString();let{traceId:X,parentSpanId:W,parentSampled:K}=Q;return{traceId:X,parentSpanId:W,sampled:K,dsc:$||{},sampleRand:Y}}function CZ(Z=_1(),J=Y6(),Q){let $="";if(Q!==void 0)$=Q?"-1":"-0";return`${Z}-${J}${$}`}function PZ(Z=_1(),J=Y6(),Q){return`00-${Z}-${J}-${Q?"01":"00"}`}function AO0(Z,J){let Q=C6(J?.sample_rand);if(Q!==void 0)return Q;let $=C6(J?.sample_rate);if($&&Z?.parentSampled!==void 0)return Z.parentSampled?W1()*$:$+W1()*(1-$);else return W1()}function dQ(Z,J){let Q=uX(Z);if(J&&Q&&J!==Q)return O.log(`Won't continue trace because org IDs don't match (incoming baggage: ${J}, SDK options: ${Q})`),!1;if(Z.getOptions().strictTraceContinuation||!1){if(J&&!Q||!J&&Q)return O.log(`Starting a new trace because strict trace continuation is enabled but one org ID is missing (incoming baggage: ${J}, Sentry client: ${Q})`),!1}return!0}var gQ;var cQ=q(()=>{Z0();C4();O8();P4();j8();F8();gQ=new RegExp("^[ \\t]*([0-9a-f]{32})?-?([0-9a-f]{16})?-?([01])?[ \\t]*$")});function eh(Z){let{spanId:J,traceId:Q}=Z.spanContext(),{data:$,op:Y,parent_span_id:X,status:W,origin:K,links:z}=v(Z);return{parent_span_id:X,span_id:J,trace_id:Q,data:$,op:Y,status:W,origin:K,links:z}}function MZ(Z){let{spanId:J,traceId:Q,isRemote:$}=Z.spanContext(),Y=$?J:v(Z).parent_span_id,X=q9(Z).scope,W=$?X?.getPropagationContext().propagationSpanId||Y6():J;return{parent_span_id:Y,span_id:W,trace_id:Q}}function c7(Z){let{traceId:J,spanId:Q}=Z.spanContext(),$=C9(Z);return CZ(J,Q,$)}function Zb(Z){let{traceId:J,spanId:Q}=Z.spanContext(),$=C9(Z);return PZ(J,Q,$)}function m7(Z){if(Z&&Z.length>0)return Z.map(({context:{spanId:J,traceId:Q,traceFlags:$,...Y},attributes:X})=>({span_id:J,trace_id:Q,sampled:$===pX,attributes:X,...Y}));else return}function K6(Z){if(typeof Z==="number")return th(Z);if(Array.isArray(Z))return Z[0]+Z[1]/1e9;if(Z instanceof Date)return th(Z.getTime());return u1()}function th(Z){return Z>9999999999?Z/1000:Z}function v(Z){if(TO0(Z))return Z.getSpanJSON();let{spanId:J,traceId:Q}=Z.spanContext();if(IO0(Z)){let{attributes:$,startTime:Y,name:X,endTime:W,status:K,links:z}=Z,G="parentSpanId"in Z?Z.parentSpanId:("parentSpanContext"in Z)?Z.parentSpanContext?.spanId:void 0;return{span_id:J,trace_id:Q,data:$,description:X,parent_span_id:G,start_timestamp:K6(Y),timestamp:K6(W)||void 0,status:u7(K),op:$[g],origin:$[f],links:m7(z)}}return{span_id:J,trace_id:Q,start_timestamp:0,data:{}}}function IO0(Z){let J=Z;return!!J.attributes&&!!J.startTime&&!!J.name&&!!J.endTime&&!!J.status}function TO0(Z){return typeof Z.getSpanJSON==="function"}function C9(Z){let{traceFlags:J}=Z.spanContext();return J===pX}function u7(Z){if(!Z||Z.code===ZV)return;if(Z.code===UZ)return"ok";return Z.message||"internal_error"}function M4(Z,J){let Q=Z[DV]||Z;if(T0(J,DV,Q),Z[mQ])Z[mQ].add(J);else T0(Z,mQ,new Set([J]))}function l7(Z){let J=new Set;function Q($){if(J.has($))return;else if(C9($)){J.add($);let Y=$[mQ]?Array.from($[mQ]):[];for(let X of Y)Q(X)}}return Q(Z),Array.from(J)}function D0(Z){return Z[DV]||Z}function s0(){let Z=S1(),J=o6(Z);if(J.getActiveSpan)return J.getActiveSpan();return D9(i())}function uQ(){if(!rh)G0(()=>{console.warn("[Sentry] Returning null from `beforeSendSpan` is disallowed. To drop certain spans, configure the respective integrations directly or use `ignoreSpans`.")}),rh=!0}function lQ(Z,J){Z.updateName(J),Z.setAttributes({[H0]:"custom",[L6]:J})}var lX=0,pX=1,rh=!1,mQ="_sentryChildSpans",DV="_sentryRootSpan";var j1=q(()=>{j4();u6();B0();m0();w1();H4();R1();j8();j9();cQ();Z0();F4()});var R4="production";var iX=()=>{};function oX(Z,J){T0(Z,Jb,J)}function OV(Z,J){let Q=J.getOptions(),{publicKey:$}=J.getDsn()||{},Y={environment:Q.environment||R4,release:Q.release,public_key:$,trace_id:Z,org_id:uX(J)};return J.emit("createDsc",Y),Y}function p9(Z,J){let Q=J.getPropagationContext();return Q.dsc||OV(Q.traceId,Z)}function u0(Z){let J=k();if(!J)return{};let Q=D0(Z),$=v(Q),Y=$.data,X=Q.spanContext().traceState,W=X?.get("sentry.sample_rate")??Y[W6]??Y[FV];function K(U){if(typeof W==="number"||typeof W==="string")U.sample_rate=`${W}`;return U}let z=Q[Jb];if(z)return K(z);let G=X?.get("sentry.dsc"),H=G&&O9(G);if(H)return K(H);let B=OV(Z.spanContext().traceId,J),V=Y[H0],F=$.description;if(V!=="url"&&F)B.transaction=F;if(P0())B.sampled=String(C9(Q)),B.sample_rand=X?.get("sentry.sample_rand")??q9(Q).scope?.getPropagationContext().sampleRand.toString();return K(B),J.emit("createDsc",B,Q),B}function pQ(Z){let J=u0(Z);return LZ(J)}var Jb="_frozenDsc";var L8=q(()=>{iX();B0();m0();C4();O8();xQ();R1();j1();H4()});function iQ(Z){if(!M)return;let{description:J="< unknown name >",op:Q="< unknown op >",parent_span_id:$}=v(Z),{spanId:Y}=Z.spanContext(),X=C9(Z),W=D0(Z),K=W===Z,z=`[Tracing] Starting ${X?"sampled":"unsampled"} ${K?"root ":""}span`,G=[`op: ${Q}`,`name: ${J}`,`ID: ${Y}`];if($)G.push(`parent ID: ${$}`);if(!K){let{op:H,description:B}=v(W);if(G.push(`root ID: ${W.spanContext().spanId}`),H)G.push(`root op: ${H}`);if(B)G.push(`root description: ${B}`)}O.log(`${z}
|
|
9
9
|
${G.join(`
|
|
10
10
|
`)}`)}function oQ(Z){if(!M)return;let{description:J="< unknown name >",op:Q="< unknown op >"}=v(Z),{spanId:$}=Z.spanContext(),X=D0(Z)===Z,W=`[Tracing] Finishing "${Q}" ${X?"root ":""}span "${J}" with ID ${$}`;O.log(W)}var nX=q(()=>{z0();Z0();j1()});function nQ(Z,J,Q){if(!P0(Z))return[!1];let $=void 0,Y;if(typeof Z.tracesSampler==="function")Y=Z.tracesSampler({...J,inheritOrSampleWith:(K)=>{if(typeof J.parentSampleRate==="number")return J.parentSampleRate;if(typeof J.parentSampled==="boolean")return Number(J.parentSampled);return K}}),$=!0;else if(J.parentSampled!==void 0)Y=J.parentSampled;else if(typeof Z.tracesSampleRate<"u")Y=Z.tracesSampleRate,$=!0;let X=C6(Y);if(X===void 0)return M&&O.warn(`[Tracing] Discarding root span because of invalid sample rate. Sample rate must be a boolean or a number between 0 and 1. Got ${JSON.stringify(Y)} of type ${JSON.stringify(typeof Y)}.`),[!1];if(!X)return M&&O.log(`[Tracing] Discarding transaction because ${typeof Z.tracesSampler==="function"?"tracesSampler returned 0 or false":"a negative sampling decision was inherited or tracesSampleRate is set to 0"}`),[!1,X,$];let W=Q<X;if(!W)M&&O.log(`[Tracing] Discarding transaction because it's not included in the random sample (sampling rate = ${Number(Y)})`);return[W,X,$]}var LV=q(()=>{z0();Z0();xQ();P4()});class p7{constructor(Z={}){this._traceId=Z.traceId||_1(),this._spanId=Z.spanId||Y6()}spanContext(){return{spanId:this._spanId,traceId:this._traceId,traceFlags:lX}}end(Z){}setAttribute(Z,J){return this}setAttributes(Z){return this}setStatus(Z){return this}updateName(Z){return this}isRecording(){return!1}addEvent(Z,J,Q){return this}addLink(Z){return this}addLinks(Z){return this}recordException(Z,J){}}var Qb=q(()=>{j8();j1()});function _0(Z,J=100,Q=1/0){try{return CV("",Z,J,Q)}catch($){return{ERROR:`**non-serializable** (${$})`}}}function PV(Z,J=3,Q=102400){let $=_0(Z,J);if(SO0($)>Q)return PV(Z,J-1,Q);return $}function CV(Z,J,Q=1/0,$=1/0,Y=_O0()){let[X,W]=Y;if(J==null||["boolean","string"].includes(typeof J)||typeof J==="number"&&Number.isFinite(J))return J;let K=EO0(Z,J);if(!K.startsWith("[object "))return K;if(J.__sentry_skip_normalization__)return J;let z=typeof J.__sentry_override_normalization_depth__==="number"?J.__sentry_override_normalization_depth__:Q;if(z===0)return K.replace("object ","");if(X(J))return"[Circular ~]";let G=J;if(G&&typeof G.toJSON==="function")try{let F=G.toJSON();return CV("",F,z-1,$,Y)}catch{}let H=Array.isArray(J)?[]:{},B=0,V=EX(J);for(let F in V){if(!Object.prototype.hasOwnProperty.call(V,F))continue;if(B>=$){H[F]="[MaxProperties ~]";break}let U=V[F];H[F]=CV(F,U,z-1,$,Y),B++}return W(J),H}function EO0(Z,J){try{if(Z==="domain"&&J&&typeof J==="object"&&J._events)return"[Domain]";if(Z==="domainEmitter")return"[DomainEmitter]";if(typeof global<"u"&&J===global)return"[Global]";if(typeof window<"u"&&J===window)return"[Window]";if(typeof document<"u"&&J===document)return"[Document]";if(_Q(J))return _X(J);if(aB(J))return"[SyntheticEvent]";if(typeof J==="number"&&!Number.isFinite(J))return`[${J}]`;if(typeof J==="function")return`[Function: ${bQ(J)}]`;if(typeof J==="symbol")return`[${String(J)}]`;if(typeof J==="bigint")return`[BigInt: ${String(J)}]`;let Q=fO0(J);if(/^HTML(\w*)Element$/.test(Q))return`[HTMLElement: ${Q}]`;return`[object ${Q}]`}catch(Q){return`**non-serializable** (${Q})`}}function fO0(Z){let J=Object.getPrototypeOf(Z);return J?.constructor?J.constructor.name:"null prototype"}function yO0(Z){return~-encodeURI(Z).split(/%..|./).length}function SO0(Z){return yO0(JSON.stringify(Z))}function _O0(){let Z=new WeakSet;function J($){if(Z.has($))return!0;return Z.add($),!1}function Q($){Z.delete($)}return[J,Q]}var RZ=q(()=>{S0();R1();v7()});function p1(Z,J=[]){return[Z,J]}function RV(Z,J){let[Q,$]=Z;return[Q,[...$,J]]}function aQ(Z,J){let Q=Z[1];for(let $ of Q){let Y=$[0].type;if(J($,Y))return!0}return!1}function kV(Z,J){return aQ(Z,(Q,$)=>J.includes($))}function MV(Z){let J=FZ(d);return J.encodePolyfill?J.encodePolyfill(Z):new TextEncoder().encode(Z)}function sQ(Z){let[J,Q]=Z,$=JSON.stringify(J);function Y(X){if(typeof $==="string")$=typeof X==="string"?$+X:[MV($),X];else $.push(typeof X==="string"?MV(X):X)}for(let X of Q){let[W,K]=X;if(Y(`
|
|
11
11
|
${JSON.stringify(W)}
|
|
12
|
-
`),typeof K==="string"||K instanceof Uint8Array)Y(K);else{let z;try{z=JSON.stringify(K)}catch{z=JSON.stringify(_0(K))}Y(z)}}return typeof $==="string"?$:hO0($)}function hO0(Z){let J=Z.reduce((Y,X)=>Y+X.length,0),Q=new Uint8Array(J),$=0;for(let Y of Z)Q.set(Y,$),$+=Y.length;return Q}function NV(Z){return[{type:"span"},Z]}function AV(Z){let J=typeof Z.data==="string"?MV(Z.data):Z.data;return[{type:"attachment",length:J.length,filename:Z.filename,content_type:Z.contentType,attachment_type:Z.attachmentType},J]}function bO0(Z){return Z in $b}function aX(Z){return bO0(Z)?$b[Z]:Z}function sX(Z){if(!Z?.sdk)return;let{name:J,version:Q}=Z.sdk;return{name:J,version:Q}}function IV(Z,J,Q,$){let Y=Z.sdkProcessingMetadata?.dynamicSamplingContext;return{event_id:Z.event_id,sent_at:new Date().toISOString(),...J&&{sdk:J},...!!Q&&$&&{dsn:P6($)},...Y&&{trace:Y}}}var $b;var C8=q(()=>{u6();O8();RZ();J1();$b={sessions:"session",event:"error",client_report:"internal",user_report:"default",profile_chunk:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor",raw_security:"security",log:"log_item",trace_metric:"metric"}});function Yb(Z){O.log(`Ignoring span ${Z.op} - ${Z.description} because it matches \`ignoreSpans\`.`)}function rQ(Z,J){if(!J?.length||!Z.description)return!1;for(let Q of J){if(vO0(Q)){if(U8(Z.description,Q))return M&&Yb(Z),!0;continue}if(!Q.name&&!Q.op)continue;let $=Q.name?U8(Z.description,Q.name):!0,Y=Q.op?Z.op&&U8(Z.op,Q.op):!0;if($&&Y)return M&&Yb(Z),!0}return!1}function Xb(Z,J){let{parent_span_id:Q,span_id:$}=J;if(!Q)return;for(let Y of Z)if(Y.parent_span_id===$)Y.parent_span_id=Q}function vO0(Z){return typeof Z==="string"||Z instanceof RegExp}var TV=q(()=>{z0();Z0();w9()});function xO0(Z,J){if(!J)return Z;let Q=Z.sdk||{};return Z.sdk={...Q,name:Q.name||J.name,version:Q.version||J.version,integrations:[...Z.sdk?.integrations||[],...J.integrations||[]],packages:[...Z.sdk?.packages||[],...J.packages||[]],settings:Z.sdk?.settings||J.settings?{...Z.sdk?.settings,...J.settings}:void 0},Z}function Wb(Z,J,Q,$){let Y=sX(Q),X={sent_at:new Date().toISOString(),...Y&&{sdk:Y},...!!$&&J&&{dsn:P6(J)}},W="aggregates"in Z?[{type:"sessions"},Z]:[{type:"session"},Z.toJSON()];return p1(X,[W])}function Kb(Z,J,Q,$){let Y=sX(Q),X=Z.type&&Z.type!=="replay_event"?Z.type:"event";xO0(Z,Q?.sdk);let W=IV(Z,Y,$,J);return delete Z.sdkProcessingMetadata,p1(W,[[{type:X},Z]])}function zb(Z,J){function Q(F){return!!F.trace_id&&!!F.public_key}let $=u0(Z[0]),Y=J?.getDsn(),X=J?.getOptions().tunnel,W={sent_at:new Date().toISOString(),...Q($)&&{trace:$},...!!X&&Y&&{dsn:P6(Y)}},{beforeSendSpan:K,ignoreSpans:z}=J?.getOptions()||{},G=z?.length?Z.filter((F)=>!rQ(v(F),z)):Z,H=Z.length-G.length;if(H)J?.recordDroppedEvent("before_send","span",H);let B=K?(F)=>{let U=v(F),w=K(U);if(!w)return uQ(),U;return w}:v,V=[];for(let F of G){let U=B(F);if(U)V.push(NV(U))}return p1(W,V)}var EV=q(()=>{L8();O8();C8();TV();j1()});function tQ(Z,J,Q,$=s0()){let Y=$&&D0($);if(Y)M&&O.log(`[Measurement] Setting measurement on root span: ${Z} = ${J} ${Q}`),Y.addEvent(Z,{[dX]:J,[gX]:Q})}function i7(Z){if(!Z||Z.length===0)return;let J={};return Z.forEach((Q)=>{let $=Q.attributes||{},Y=$[gX],X=$[dX];if(typeof Y==="string"&&typeof X==="number")J[Q.name]={value:X,unit:Y}}),J}var fV=q(()=>{z0();m0();Z0();j1()});class eQ{constructor(Z={}){if(this._traceId=Z.traceId||_1(),this._spanId=Z.spanId||Y6(),this._startTime=Z.startTimestamp||u1(),this._links=Z.links,this._attributes={},this.setAttributes({[f]:"manual",[g]:Z.op,...Z.attributes}),this._name=Z.name,Z.parentSpanId)this._parentSpanId=Z.parentSpanId;if("sampled"in Z)this._sampled=Z.sampled;if(Z.endTimestamp)this._endTime=Z.endTimestamp;if(this._events=[],this._isStandaloneSpan=Z.isStandalone,this._endTime)this._onSpanEnded()}addLink(Z){if(this._links)this._links.push(Z);else this._links=[Z];return this}addLinks(Z){if(this._links)this._links.push(...Z);else this._links=Z;return this}recordException(Z,J){}spanContext(){let{_spanId:Z,_traceId:J,_sampled:Q}=this;return{spanId:Z,traceId:J,traceFlags:Q?pX:lX}}setAttribute(Z,J){if(J===void 0)delete this._attributes[Z];else this._attributes[Z]=J;return this}setAttributes(Z){return Object.keys(Z).forEach((J)=>this.setAttribute(J,Z[J])),this}updateStartTime(Z){this._startTime=K6(Z)}setStatus(Z){return this._status=Z,this}updateName(Z){return this._name=Z,this.setAttribute(H0,"custom"),this}end(Z){if(this._endTime)return;this._endTime=K6(Z),oQ(this),this._onSpanEnded()}getSpanJSON(){return{data:this._attributes,description:this._name,op:this._attributes[g],parent_span_id:this._parentSpanId,span_id:this._spanId,start_timestamp:this._startTime,status:u7(this._status),timestamp:this._endTime,trace_id:this._traceId,origin:this._attributes[f],profile_id:this._attributes[D4],exclusive_time:this._attributes[O4],measurements:i7(this._events),is_segment:this._isStandaloneSpan&&D0(this)===this||void 0,segment_id:this._isStandaloneSpan?D0(this).spanContext().spanId:void 0,links:m7(this._links)}}isRecording(){return!this._endTime&&!!this._sampled}addEvent(Z,J,Q){M&&O.log("[Tracing] Adding an event to span:",Z);let $=Hb(J)?J:Q||u1(),Y=Hb(J)?{}:J||{},X={name:Z,time:K6($),attributes:Y};return this._events.push(X),this}isStandaloneSpan(){return!!this._isStandaloneSpan}_onSpanEnded(){let Z=k();if(Z)Z.emit("spanEnd",this);if(!(this._isStandaloneSpan||this===D0(this)))return;if(this._isStandaloneSpan){if(this._sampled)dO0(zb([this],Z));else if(M&&O.log("[Tracing] Discarding standalone span because its trace was not chosen to be sampled."),Z)Z.recordDroppedEvent("sample_rate","span");return}let Q=this._convertSpanToTransaction();if(Q)(q9(this).scope||i()).captureEvent(Q)}_convertSpanToTransaction(){if(!Bb(v(this)))return;if(!this._name)M&&O.warn("Transaction has no name, falling back to `<unlabeled transaction>`."),this._name="<unlabeled transaction>";let{scope:Z,isolationScope:J}=q9(this),Q=Z?.getScopeData().sdkProcessingMetadata?.normalizedRequest;if(this._sampled!==!0)return;let Y=l7(this).filter((G)=>G!==this&&!gO0(G)).map((G)=>v(G)).filter(Bb),X=this._attributes[H0];delete this._attributes[L6],Y.forEach((G)=>{delete G.data[L6]});let W={contexts:{trace:eh(this)},spans:Y.length>Gb?Y.sort((G,H)=>G.start_timestamp-H.start_timestamp).slice(0,Gb):Y,start_timestamp:this._startTime,timestamp:this._endTime,transaction:this._name,type:"transaction",sdkProcessingMetadata:{capturedSpanScope:Z,capturedSpanIsolationScope:J,dynamicSamplingContext:u0(this)},request:Q,...X&&{transaction_info:{source:X}}},K=i7(this._events);if(K&&Object.keys(K).length)M&&O.log("[Measurements] Adding measurements to transaction event",JSON.stringify(K,void 0,2)),W.measurements=K;return W}}function Hb(Z){return Z&&typeof Z==="number"||Z instanceof Date||Array.isArray(Z)}function Bb(Z){return!!Z.start_timestamp&&!!Z.timestamp&&!!Z.span_id&&!!Z.trace_id}function gO0(Z){return Z instanceof eQ&&Z.isStandaloneSpan()}function dO0(Z){let J=k();if(!J)return;let Q=Z[1];if(!Q||Q.length===0){J.recordDroppedEvent("before_send","span");return}J.sendEnvelope(Z)}var Gb=1000;var Vb=q(()=>{B0();z0();EV();m0();Z0();j8();j1();j9();L8();nX();fV();H4()});function r0(Z,J){let Q=Z3();if(Q.startSpan)return Q.startSpan(Z,J);let $=SV(Z),{forceTransaction:Y,parentSpan:X,scope:W}=Z,K=W?.clone();return c0(K,()=>{return Ub(X)(()=>{let G=i(),H=_V(G,X),V=Z.onlyIfParent&&!H?new p7:yV({parentSpan:H,spanArguments:$,forceTransaction:Y,scope:G});return DZ(G,V),L9(()=>J(V),()=>{let{status:F}=v(V);if(V.isRecording()&&(!F||F==="ok"))V.setStatus({code:a,message:"internal_error"})},()=>{V.end()})})})}function h0(Z,J){let Q=Z3();if(Q.startSpanManual)return Q.startSpanManual(Z,J);let $=SV(Z),{forceTransaction:Y,parentSpan:X,scope:W}=Z,K=W?.clone();return c0(K,()=>{return Ub(X)(()=>{let G=i(),H=_V(G,X),V=Z.onlyIfParent&&!H?new p7:yV({parentSpan:H,spanArguments:$,forceTransaction:Y,scope:G});return DZ(G,V),L9(()=>J(V,()=>V.end()),()=>{let{status:F}=v(V);if(V.isRecording()&&(!F||F==="ok"))V.setStatus({code:a,message:"internal_error"})})})})}function P8(Z){let J=Z3();if(J.startInactiveSpan)return J.startInactiveSpan(Z);let Q=SV(Z),{forceTransaction:$,parentSpan:Y}=Z;return(Z.scope?(W)=>c0(Z.scope,W):Y!==void 0?(W)=>n6(Y,W):(W)=>W())(()=>{let W=i(),K=_V(W,Y);if(Z.onlyIfParent&&!K)return new p7;return yV({parentSpan:K,spanArguments:Q,forceTransaction:$,scope:W})})}function n6(Z,J){let Q=Z3();if(Q.withActiveSpan)return Q.withActiveSpan(Z,J);return c0(($)=>{return DZ($,Z||void 0),J($)})}function P9(Z){let J=Z3();if(J.suppressTracing)return J.suppressTracing(Z);return c0((Q)=>{Q.setSDKProcessingMetadata({[rX]:!0});let $=Z();return Q.setSDKProcessingMetadata({[rX]:void 0}),$})}function kZ(Z){return c0((J)=>{return J.setPropagationContext({traceId:_1(),sampleRand:W1()}),M&&O.log(`Starting a new trace with id ${J.getPropagationContext().traceId}`),n6(null,Z)})}function yV({parentSpan:Z,spanArguments:J,forceTransaction:Q,scope:$}){if(!P0()){let W=new p7;if(Q||!Z){let K={sampled:"false",sample_rate:"0",transaction:J.name,...u0(W)};oX(W,K)}return W}let Y=x(),X;if(Z&&!Q)X=cO0(Z,$,J),M4(Z,X);else if(Z){let W=u0(Z),{traceId:K,spanId:z}=Z.spanContext(),G=C9(Z);X=Fb({traceId:K,parentSpanId:z,...J},$,G),oX(X,W)}else{let{traceId:W,dsc:K,parentSpanId:z,sampled:G}={...Y.getPropagationContext(),...$.getPropagationContext()};if(X=Fb({traceId:W,parentSpanId:z,...J},$,G),K)oX(X,K)}return iQ(X),hQ(X,$,Y),X}function SV(Z){let Q={isStandalone:(Z.experimental||{}).standalone,...Z};if(Z.startTime){let $={...Q};return $.startTimestamp=K6(Z.startTime),delete $.startTime,$}return Q}function Z3(){let Z=S1();return o6(Z)}function Fb(Z,J,Q){let $=k(),Y=$?.getOptions()||{},{name:X=""}=Z,W={spanAttributes:{...Z.attributes},spanName:X,parentSampled:Q};$?.emit("beforeSampling",W,{decision:!1});let K=W.parentSampled??Q,z=W.spanAttributes,G=J.getPropagationContext(),[H,B,V]=J.getScopeData().sdkProcessingMetadata[rX]?[!1]:nQ(Y,{name:X,parentSampled:K,attributes:z,parentSampleRate:C6(G.dsc?.sample_rate)},G.sampleRand),F=new eQ({...Z,attributes:{[H0]:"custom",[W6]:B!==void 0&&V?B:void 0,...z},sampled:H});if(!H&&$)M&&O.log("[Tracing] Discarding root span because its trace was not chosen to be sampled."),$.recordDroppedEvent("sample_rate","transaction");if($)$.emit("spanStart",F);return F}function cO0(Z,J,Q){let{spanId:$,traceId:Y}=Z.spanContext(),X=J.getScopeData().sdkProcessingMetadata[rX]?!1:C9(Z),W=X?new eQ({...Q,parentSpanId:$,traceId:Y,sampled:X}):new p7({traceId:Y});M4(Z,W);let K=k();if(K){if(K.emit("spanStart",W),Q.endTimestamp)K.emit("spanEnd",W)}return W}function _V(Z,J){if(J)return J;if(J===null)return;let Q=D9(Z);if(!Q)return;let $=k();if(($?$.getOptions():{}).parentSpanIsAlwaysRootSpan)return D0(Q);return Q}function Ub(Z){return Z!==void 0?(J)=>{return n6(Z,J)}:(J)=>J()}var rX="__SENTRY_SUPPRESS_TRACING__",o7=(Z,J)=>{let Q=S1(),$=o6(Q);if($.continueTrace)return $.continueTrace(Z,J);let{sentryTrace:Y,baggage:X}=Z,W=k(),K=O9(X);if(W&&!dQ(W,K?.org_id))return kZ(J);return c0((z)=>{let G=d7(Y,X);return z.setPropagationContext(G),DZ(z,void 0),J()})};var M6=q(()=>{j4();u6();B0();z0();m0();C4();Z0();mX();xQ();P4();j8();F8();F4();j1();cQ();L8();nX();LV();Qb();Vb();w1();H4()});function M8(Z){return new J3((J)=>{J(Z)})}function k4(Z){return new J3((J,Q)=>{Q(Z)})}class J3{constructor(Z){this._state=hV,this._handlers=[],this._runExecutor(Z)}then(Z,J){return new J3((Q,$)=>{this._handlers.push([!1,(Y)=>{if(!Z)Q(Y);else try{Q(Z(Y))}catch(X){$(X)}},(Y)=>{if(!J)$(Y);else try{Q(J(Y))}catch(X){$(X)}}]),this._executeHandlers()})}catch(Z){return this.then((J)=>J,Z)}finally(Z){return new J3((J,Q)=>{let $,Y;return this.then((X)=>{if(Y=!1,$=X,Z)Z()},(X)=>{if(Y=!0,$=X,Z)Z()}).then(()=>{if(Y){Q($);return}J($)})})}_executeHandlers(){if(this._state===hV)return;let Z=this._handlers.slice();this._handlers=[],Z.forEach((J)=>{if(J[0])return;if(this._state===qb)J[1](this._value);if(this._state===wb)J[2](this._value);J[0]=!0})}_runExecutor(Z){let J=(Y,X)=>{if(this._state!==hV)return;if(X1(X)){X.then(Q,$);return}this._state=Y,this._value=X,this._executeHandlers()},Q=(Y)=>{J(qb,Y)},$=(Y)=>{J(wb,Y)};try{Z(Q,$)}catch(Y){$(Y)}}}var hV=0,qb=1,wb=2;var N4=q(()=>{S0()});function jb(Z,J,Q,$=0){try{let Y=bV(J,Q,Z,$);return X1(Y)?Y:M8(Y)}catch(Y){return k4(Y)}}function bV(Z,J,Q,$){let Y=Q[$];if(!Z||!Y)return Z;let X=Y({...Z},J);if(M&&X===null&&O.log(`Event processor "${Y.id||"?"}" dropped event`),X1(X))return X.then((W)=>bV(W,J,Q,$+1));return bV(X,J,Q,$+1)}var Db=q(()=>{z0();Z0();S0();N4()});function Q3(Z){let J=d._sentryDebugIds,Q=d._debugIds;if(!J&&!Q)return{};let $=J?Object.keys(J):[],Y=Q?Object.keys(Q):[];if(NZ&&$.length===Ob&&Y.length===Lb)return NZ;if(Ob=$.length,Lb=Y.length,NZ={},!n7)n7={};let X=(W,K)=>{for(let z of W){let G=K[z],H=n7?.[z];if(H&&NZ&&G){if(NZ[H[0]]=G,n7)n7[z]=[H[0],G]}else if(G){let B=Z(z);for(let V=B.length-1;V>=0;V--){let U=B[V]?.filename;if(U&&NZ&&n7){NZ[U]=G,n7[z]=[U,G];break}}}}};if(J)X($,J);if(Q)X(Y,Q);return NZ}var n7,Ob,Lb,NZ;var vV=q(()=>{J1()});function gV(Z,J){let{fingerprint:Q,span:$,breadcrumbs:Y,sdkProcessingMetadata:X}=J;if(mO0(Z,J),$)pO0(Z,$);iO0(Z,Q),uO0(Z,Y),lO0(Z,X)}function xV(Z,J){let{extra:Q,tags:$,attributes:Y,user:X,contexts:W,level:K,sdkProcessingMetadata:z,breadcrumbs:G,fingerprint:H,eventProcessors:B,attachments:V,propagationContext:F,transactionName:U,span:w}=J;if($3(Z,"extra",Q),$3(Z,"tags",$),$3(Z,"attributes",Y),$3(Z,"user",X),$3(Z,"contexts",W),Z.sdkProcessingMetadata=jZ(Z.sdkProcessingMetadata,z,2),K)Z.level=K;if(U)Z.transactionName=U;if(w)Z.span=w;if(G.length)Z.breadcrumbs=[...Z.breadcrumbs,...G];if(H.length)Z.fingerprint=[...Z.fingerprint,...H];if(B.length)Z.eventProcessors=[...Z.eventProcessors,...B];if(V.length)Z.attachments=[...Z.attachments,...V];Z.propagationContext={...Z.propagationContext,...F}}function $3(Z,J,Q){Z[J]=jZ(Z[J],Q,1)}function M9(Z,J){let Q=D8().getScopeData();return Z&&xV(Q,Z.getScopeData()),J&&xV(Q,J.getScopeData()),Q}function mO0(Z,J){let{extra:Q,tags:$,user:Y,contexts:X,level:W,transactionName:K}=J;if(Object.keys(Q).length)Z.extra={...Q,...Z.extra};if(Object.keys($).length)Z.tags={...$,...Z.tags};if(Object.keys(Y).length)Z.user={...Y,...Z.user};if(Object.keys(X).length)Z.contexts={...X,...Z.contexts};if(W)Z.level=W;if(K&&Z.type!=="transaction")Z.transaction=K}function uO0(Z,J){let Q=[...Z.breadcrumbs||[],...J];Z.breadcrumbs=Q.length?Q:void 0}function lO0(Z,J){Z.sdkProcessingMetadata={...Z.sdkProcessingMetadata,...J}}function pO0(Z,J){Z.contexts={trace:MZ(J),...Z.contexts},Z.sdkProcessingMetadata={dynamicSamplingContext:u0(J),...Z.sdkProcessingMetadata};let Q=D0(J),$=v(Q).description;if($&&!Z.transaction&&Z.type==="transaction")Z.transaction=$}function iO0(Z,J){if(Z.fingerprint=Z.fingerprint?Array.isArray(Z.fingerprint)?Z.fingerprint:[Z.fingerprint]:[],J)Z.fingerprint=Z.fingerprint.concat(J);if(!Z.fingerprint.length)delete Z.fingerprint}var A4=q(()=>{B0();L8();vX();j1()});function Cb(Z,J,Q,$,Y,X){let{normalizeDepth:W=3,normalizeMaxBreadth:K=1000}=Z,z={...J,event_id:J.event_id||Q.event_id||a0(),timestamp:J.timestamp||q8()},G=Q.integrations||Z.integrations.map((L)=>L.name);if(oO0(z,Z),sO0(z,G),Y)Y.emit("applyFrameMetadata",J);if(J.type===void 0)nO0(z,Z.stackParser);let H=tO0($,Q.captureContext);if(Q.mechanism)i6(z,Q.mechanism);let B=Y?Y.getEventProcessors():[],V=M9(X,H),F=[...Q.attachments||[],...V.attachments];if(F.length)Q.attachments=F;gV(z,V);let U=[...B,...V.eventProcessors];return(Q.data&&Q.data.__sentry__===!0?M8(z):jb(U,z,Q)).then((L)=>{if(L)aO0(L);if(typeof W==="number"&&W>0)return rO0(L,W,K);return L})}function oO0(Z,J){let{environment:Q,release:$,dist:Y,maxValueLength:X}=J;if(Z.environment=Z.environment||Q||R4,!Z.release&&$)Z.release=$;if(!Z.dist&&Y)Z.dist=Y;let W=Z.request;if(W?.url&&X)W.url=p6(W.url,X);if(X)Z.exception?.values?.forEach((K)=>{if(K.value)K.value=p6(K.value,X)})}function nO0(Z,J){let Q=Q3(J);Z.exception?.values?.forEach(($)=>{$.stacktrace?.frames?.forEach((Y)=>{if(Y.filename)Y.debug_id=Q[Y.filename]})})}function aO0(Z){let J={};if(Z.exception?.values?.forEach(($)=>{$.stacktrace?.frames?.forEach((Y)=>{if(Y.debug_id){if(Y.abs_path)J[Y.abs_path]=Y.debug_id;else if(Y.filename)J[Y.filename]=Y.debug_id;delete Y.debug_id}})}),Object.keys(J).length===0)return;Z.debug_meta=Z.debug_meta||{},Z.debug_meta.images=Z.debug_meta.images||[];let Q=Z.debug_meta.images;Object.entries(J).forEach(([$,Y])=>{Q.push({type:"sourcemap",code_file:$,debug_id:Y})})}function sO0(Z,J){if(J.length>0)Z.sdk=Z.sdk||{},Z.sdk.integrations=[...Z.sdk.integrations||[],...J]}function rO0(Z,J,Q){if(!Z)return null;let $={...Z,...Z.breadcrumbs&&{breadcrumbs:Z.breadcrumbs.map((Y)=>({...Y,...Y.data&&{data:_0(Y.data,J,Q)}}))},...Z.user&&{user:_0(Z.user,J,Q)},...Z.contexts&&{contexts:_0(Z.contexts,J,Q)},...Z.extra&&{extra:_0(Z.extra,J,Q)}};if(Z.contexts?.trace&&$.contexts){if($.contexts.trace=Z.contexts.trace,Z.contexts.trace.data)$.contexts.trace.data=_0(Z.contexts.trace.data,J,Q)}if(Z.spans)$.spans=Z.spans.map((Y)=>{return{...Y,...Y.data&&{data:_0(Y.data,J,Q)}}});if(Z.contexts?.flags&&$.contexts)$.contexts.flags=_0(Z.contexts.flags,3,Q);return $}function tO0(Z,J){if(!J)return Z;let Q=Z?Z.clone():new K1;return Q.update(J),Q}function Pb(Z){if(!Z)return;if(eO0(Z))return{captureContext:Z};if(JL0(Z))return{captureContext:Z};return Z}function eO0(Z){return Z instanceof K1||typeof Z==="function"}function JL0(Z){return Object.keys(Z).some((J)=>ZL0.includes(J))}var ZL0;var dV=q(()=>{iX();Db();U4();vV();O6();RZ();A4();w9();N4();j9();ZL0=["user","level","extra","contexts","tags","fingerprint","propagationContext"]});function _(Z,J){return i().captureException(Z,Pb(J))}function s7(Z,J){let Q=typeof J==="string"?J:void 0,$=typeof J!=="string"?{captureContext:J}:void 0;return i().captureMessage(Z,Q,$)}function r7(Z,J){return i().captureEvent(Z,J)}function Y3(Z,J){x().setContext(Z,J)}function X3(Z){x().setExtras(Z)}function W3(Z,J){x().setExtra(Z,J)}function K3(Z){x().setTags(Z)}function z3(Z,J){x().setTag(Z,J)}function G3(Z){x().setUser(Z)}function tX(Z){x().setConversationId(Z)}function H3(){return x().lastEventId()}function a7(Z,J){let Q=i(),$=k();if(!$)M&&O.warn("Cannot capture check-in. No client defined.");else if(!$.captureCheckIn)M&&O.warn("Cannot capture check-in. Client does not support sending check-ins.");else return $.captureCheckIn(Z,J,Q);return a0()}function a6(Z,J,Q){function $(){let Y=a7({monitorSlug:Z,status:"in_progress"},Q),X=u1();function W(z){a7({monitorSlug:Z,status:z,checkInId:Y,duration:u1()-X})}let K;try{K=J()}catch(z){throw W("error"),z}if(X1(K))return K.then((z)=>{return W("ok"),z},(z)=>{throw W("error"),z});return W("ok"),K}return l1(()=>Q?.isolateTrace?kZ($):$())}async function t7(Z){let J=k();if(J)return J.flush(Z);return M&&O.warn("Cannot flush events. No client defined."),Promise.resolve(!1)}async function B3(Z){let J=k();if(J)return J.close(Z);return M&&O.warn("Cannot flush events and disable SDK. No client defined."),Promise.resolve(!1)}function V3(){return!!k()}function R8(){let Z=k();return Z?.getOptions().enabled!==!1&&!!Z?.getTransport()}function F3(Z){x().addEventProcessor(Z)}function e7(Z){let J=x(),{user:Q}=M9(J,i()),{userAgent:$}=d.navigator||{},Y=xh({user:Q,...$&&{userAgent:$},...Z}),X=J.getSession();if(X?.status==="ok")w8(X,{status:"exited"});return k8(),J.setSession(Y),Y}function k8(){let Z=x(),Q=i().getSession()||Z.getSession();if(Q)gh(Q);Mb(),Z.setSession()}function Mb(){let Z=x(),J=k(),Q=Z.getSession();if(Q&&J)J.captureSession(Q)}function U3(Z=!1){if(Z){k8();return}Mb()}var k1=q(()=>{B0();z0();bX();M6();Z0();S0();O6();dV();A4();j9();J1()});function Rb(Z,J,Q,$,Y){let X={sent_at:new Date().toISOString()};if(Q?.sdk)X.sdk={name:Q.sdk.name,version:Q.sdk.version};if(!!$&&!!Y)X.dsn=P6(Y);if(J)X.trace=J;let W=QL0(Z);return p1(X,[W])}function QL0(Z){return[{type:"check_in"},Z]}var kb=q(()=>{O8();C8()});function YL0(Z){let J=Z.protocol?`${Z.protocol}:`:"",Q=Z.port?`:${Z.port}`:"";return`${J}//${Z.host}${Q}${Z.path?`/${Z.path}`:""}/api/`}function XL0(Z){return`${YL0(Z)}${Z.projectId}/envelope/`}function WL0(Z,J){let Q={sentry_version:$L0};if(Z.publicKey)Q.sentry_key=Z.publicKey;if(J)Q.sentry_client=`${J.name}/${J.version}`;return new URLSearchParams(Q).toString()}function Nb(Z,J,Q){return J?J:`${XL0(Z)}?${WL0(Z,Q)}`}var $L0="7";var Ab=()=>{};function KL0(Z){let J={};return Z.forEach((Q)=>{let{name:$}=Q,Y=J[$];if(Y&&!Y.isDefaultInstance&&Q.isDefaultInstance)return;J[$]=Q}),Object.values(J)}function mV(Z){let J=Z.defaultIntegrations||[],Q=Z.integrations;J.forEach((Y)=>{Y.isDefaultInstance=!0});let $;if(Array.isArray(Q))$=[...J,...Q];else if(typeof Q==="function"){let Y=Q(J);$=Array.isArray(Y)?Y:[Y]}else $=J;return KL0($)}function Ib(Z,J){let Q={};return J.forEach(($)=>{if($)lV(Z,$,Q)}),Q}function uV(Z,J){for(let Q of J)if(Q?.afterAllSetup)Q.afterAllSetup(Z)}function lV(Z,J,Q){if(Q[J.name]){M&&O.log(`Integration skipped because it was already installed: ${J.name}`);return}if(Q[J.name]=J,!cV.includes(J.name)&&typeof J.setupOnce==="function")J.setupOnce(),cV.push(J.name);if(J.setup&&typeof J.setup==="function")J.setup(Z);if(typeof J.preprocessEvent==="function"){let $=J.preprocessEvent.bind(J);Z.on("preprocessEvent",(Y,X)=>$(Y,X,Z))}if(typeof J.processEvent==="function"){let $=J.processEvent.bind(J),Y=Object.assign((X,W)=>$(X,W,Z),{id:J.name});Z.addEventProcessor(Y)}M&&O.log(`Integration installed: ${J.name}`)}function q3(Z){let J=k();if(!J){M&&O.warn(`Cannot add integration "${Z.name}" because no SDK Client is available.`);return}J.addIntegration(Z)}function P(Z){return Z}var cV;var D1=q(()=>{B0();z0();Z0();cV=[]});function zL0(Z){return typeof Z==="object"&&Z!=null&&!Array.isArray(Z)&&Object.keys(Z).includes("value")}function GL0(Z,J){let{value:Q,unit:$}=zL0(Z)?Z:{value:Z,unit:void 0},Y=HL0(Q),X=$&&typeof $==="string"?{unit:$}:{};if(Y)return{...Y,...X};if(!J||J==="skip-undefined"&&Q===void 0)return;let W="";try{W=JSON.stringify(Q)??""}catch{}return{value:W,type:"string",...X}}function I4(Z,J=!1){let Q={};for(let[$,Y]of Object.entries(Z??{})){let X=GL0(Y,J);if(X)Q[$]=X}return Q}function HL0(Z){let J=typeof Z==="string"?"string":typeof Z==="boolean"?"boolean":typeof Z==="number"&&!Number.isNaN(Z)?Number.isInteger(Z)?"integer":"double":null;if(J)return{value:Z,type:J}}var pV=()=>{};function eX(Z){let J=Math.floor(Z*1000);if(oV!==void 0&&J!==oV)iV=0;let Q=iV;return iV++,oV=J,{key:"sentry.timestamp.sequence",value:{value:Q,type:"integer"}}}var iV=0,oV;var nV=()=>{};function T4(Z,J){if(!J)return[void 0,void 0];return c0(J,()=>{let Q=s0(),$=Q?MZ(Q):x7(J);return[Q?u0(Q):p9(Z,J),$]})}var ZW=q(()=>{B0();L8();j1()});var Tb;var Eb=q(()=>{Tb={trace:1,debug:5,info:9,warn:13,error:17,fatal:21}});function BL0(Z){return[{type:"log",item_count:Z.length,content_type:"application/vnd.sentry.items.log+json"},{items:Z}]}function fb(Z,J,Q,$){let Y={};if(J?.sdk)Y.sdk={name:J.sdk.name,version:J.sdk.version};if(!!Q&&!!$)Y.dsn=P6($);return p1(Y,[BL0(Z)])}var yb=q(()=>{O8();C8()});function i9(Z,J,Q,$=!0){if(Q&&(!Z[J]||$))Z[J]=Q}function Sb(Z,J){let Q=aV(),$=_b(Z);if($===void 0)Q.set(Z,[J]);else if($.length>=VL0)Z5(Z,$),Q.set(Z,[J]);else Q.set(Z,[...$,J])}function R9(Z,J=i(),Q=Sb){let $=J?.getClient()??k();if(!$){M&&O.warn("No client available to capture log.");return}let{release:Y,environment:X,enableLogs:W=!1,beforeSendLog:K}=$.getOptions();if(!W){M&&O.warn("logging option not enabled, log will not be captured.");return}let[,z]=T4($,J),G={...Z.attributes},{user:{id:H,email:B,username:V},attributes:F={}}=M9(x(),J);i9(G,"user.id",H,!1),i9(G,"user.email",B,!1),i9(G,"user.name",V,!1),i9(G,"sentry.release",Y),i9(G,"sentry.environment",X);let{name:U,version:w}=$.getSdkMetadata()?.sdk??{};i9(G,"sentry.sdk.name",U),i9(G,"sentry.sdk.version",w);let D=$.getIntegrationByName("Replay"),L=D?.getReplayId(!0);if(i9(G,"sentry.replay_id",L),L&&D?.getRecordingMode()==="buffer")i9(G,"sentry._internal.replay_is_buffering",!0);let C=Z.message;if(VZ(C)){let{__sentry_template_string__:U1,__sentry_template_values__:P7=[]}=C;if(P7?.length)G["sentry.message.template"]=U1;P7.forEach((a5,uY)=>{G[`sentry.message.parameter.${uY}`]=a5})}let R=D9(J);i9(G,"sentry.trace.parent_span_id",R?.spanContext().spanId);let T={...Z,attributes:G};$.emit("beforeCaptureLog",T);let S=K?G0(()=>K(T)):T;if(!S){$.recordDroppedEvent("before_send","log_item",1),M&&O.warn("beforeSendLog returned null, log will not be captured.");return}let{level:m,message:l,attributes:y0={},severityNumber:$6}=S,c9=u1(),m9=eX(c9),n5={timestamp:c9,level:m,body:l,trace_id:z?.trace_id,severity_number:$6??Tb[m],attributes:{...I4(F),...I4(y0,!0),[m9.key]:m9.value}};Q($,n5),$.emit("afterCaptureLog",S)}function Z5(Z,J){let Q=J??_b(Z)??[];if(Q.length===0)return;let $=Z.getOptions(),Y=fb(Q,$._metadata,$.tunnel,Z.getDsn());aV().set(Z,[]),Z.emit("flushLogs"),Z.sendEnvelope(Y)}function _b(Z){return aV().get(Z)}function aV(){return U9("clientToLogBufferMap",()=>new WeakMap)}var VL0=100;var w3=q(()=>{pV();u6();B0();z0();Z0();S0();A4();F4();j9();nV();ZW();Eb();yb()});function FL0(Z){return[{type:"trace_metric",item_count:Z.length,content_type:"application/vnd.sentry.items.trace-metric+json"},{items:Z}]}function hb(Z,J,Q,$){let Y={};if(J?.sdk)Y.sdk={name:J.sdk.name,version:J.sdk.version};if(!!Q&&!!$)Y.dsn=P6($);return p1(Y,[FL0(Z)])}var bb=q(()=>{O8();C8()});function N8(Z,J,Q,$=!0){if(Q&&($||!(J in Z)))Z[J]=Q}function qL0(Z,J){let Q=rV(),$=xb(Z);if($===void 0)Q.set(Z,[J]);else if($.length>=UL0)sV(Z,$),Q.set(Z,[J]);else Q.set(Z,[...$,J])}function wL0(Z,J,Q){let{release:$,environment:Y}=J.getOptions(),X={...Z.attributes};N8(X,"user.id",Q.id,!1),N8(X,"user.email",Q.email,!1),N8(X,"user.name",Q.username,!1),N8(X,"sentry.release",$),N8(X,"sentry.environment",Y);let{name:W,version:K}=J.getSdkMetadata()?.sdk??{};N8(X,"sentry.sdk.name",W),N8(X,"sentry.sdk.version",K);let z=J.getIntegrationByName("Replay"),G=z?.getReplayId(!0);if(N8(X,"sentry.replay_id",G),G&&z?.getRecordingMode()==="buffer")N8(X,"sentry._internal.replay_is_buffering",!0);return{...Z,attributes:X}}function jL0(Z,J,Q,$){let[,Y]=T4(J,Q),X=D9(Q),W=X?X.spanContext().traceId:Y?.trace_id,K=X?X.spanContext().spanId:void 0,z=u1(),G=eX(z);return{timestamp:z,trace_id:W??"",span_id:K,name:Z.name,type:Z.type,unit:Z.unit,value:Z.value,attributes:{...I4($),...I4(Z.attributes,"skip-undefined"),[G.key]:G.value}}}function vb(Z,J){let Q=J?.scope??i(),$=J?.captureSerializedMetric??qL0,Y=Q?.getClient()??k();if(!Y){M&&O.warn("No client available to capture metric.");return}let{_experiments:X,enableMetrics:W,beforeSendMetric:K}=Y.getOptions();if(!(W??X?.enableMetrics??!0)){M&&O.warn("metrics option not enabled, metric will not be captured.");return}let{user:G,attributes:H}=M9(x(),Q),B=wL0(Z,Y,G);Y.emit("processMetric",B);let V=K||X?.beforeSendMetric,F=V?V(B):B;if(!F){M&&O.log("`beforeSendMetric` returned `null`, will not send metric.");return}let U=jL0(F,Y,Q,H);M&&O.log("[Metric]",U),$(Y,U),Y.emit("afterCaptureMetric",F)}function sV(Z,J){let Q=J??xb(Z)??[];if(Q.length===0)return;let $=Z.getOptions(),Y=hb(Q,$._metadata,$.tunnel,Z.getDsn());rV().set(Z,[]),Z.emit("flushMetrics"),Z.sendEnvelope(Y)}function xb(Z){return rV().get(Z)}function rV(){return U9("clientToMetricBufferMap",()=>new WeakMap)}var UL0=1000;var tV=q(()=>{pV();u6();B0();z0();Z0();A4();F4();j9();nV();ZW();bb()});function JW(Z){if(typeof Z==="object"&&typeof Z.unref==="function")Z.unref();return Z}var eV=()=>{};function E4(Z=100){let J=new Set;function Q(){return J.size<Z}function $(W){J.delete(W)}function Y(W){if(!Q())return k4(j3);let K=W();return J.add(K),K.then(()=>$(K),()=>$(K)),K}function X(W){if(!J.size)return M8(!0);let K=Promise.allSettled(Array.from(J)).then(()=>!0);if(!W)return K;let z=[K,new Promise((G)=>JW(setTimeout(()=>G(!1),W)))];return Promise.race(z)}return{get $(){return Array.from(J)},add:Y,drain:X}}var j3;var QW=q(()=>{N4();eV();j3=Symbol.for("SentryBufferFullError")});function OL0(Z,J=l6()){let Q=parseInt(`${Z}`,10);if(!isNaN(Q))return Q*1000;let $=Date.parse(`${Z}`);if(!isNaN($))return $-J;return DL0}function LL0(Z,J){return Z[J]||Z.all||0}function gb(Z,J,Q=l6()){return LL0(Z,J)>Q}function db(Z,{statusCode:J,headers:Q},$=l6()){let Y={...Z},X=Q?.["x-sentry-rate-limits"],W=Q?.["retry-after"];if(X)for(let K of X.trim().split(",")){let[z,G,,,H]=K.split(":",5),B=parseInt(z,10),V=(!isNaN(B)?B:60)*1000;if(!G)Y.all=$+V;else for(let F of G.split(";"))if(F==="metric_bucket"){if(!H||H.split(";").includes("custom"))Y[F]=$+V}else Y[F]=$+V}else if(W)Y.all=$+OL0(W,$);else if(J===429)Y.all=$+60000;return Y}var DL0=60000;var cb=q(()=>{F8()});function o9(Z,J,Q=E4(Z.bufferSize||D3)){let $={},Y=(W)=>Q.drain(W);function X(W){let K=[];if(aQ(W,(B,V)=>{let F=aX(V);if(gb($,F))Z.recordDroppedEvent("ratelimit_backoff",F);else K.push(B)}),K.length===0)return Promise.resolve({});let z=p1(W[0],K),G=(B)=>{if(kV(z,["client_report"])){M&&O.warn(`Dropping client report. Will not send outcomes (reason: ${B}).`);return}aQ(z,(V,F)=>{Z.recordDroppedEvent(B,aX(F))})},H=()=>J({body:sQ(z)}).then((B)=>{if(B.statusCode===413)return M&&O.error("Sentry responded with status code 413. Envelope was discarded due to exceeding size limits."),G("send_error"),B;if(M&&B.statusCode!==void 0&&(B.statusCode<200||B.statusCode>=300))O.warn(`Sentry responded with status code ${B.statusCode} to sent event.`);return $=db($,B),B},(B)=>{throw G("network_error"),M&&O.error("Encountered error running transport request:",B),B});return Q.add(H).then((B)=>B,(B)=>{if(B===j3)return M&&O.error("Skipped sending event because buffer is full."),G("queue_overflow"),Promise.resolve({});else throw B})}return{send:X,flush:Y}}var D3=64;var $W=q(()=>{z0();Z0();C8();QW();cb()});function mb(Z,J,Q){let $=[{type:"client_report"},{timestamp:Q||q8(),discarded_events:Z}];return p1(J?{dsn:J}:{},[$])}var ub=q(()=>{C8();j9()});function YW(Z){let J=[];if(Z.message)J.push(Z.message);try{let Q=Z.exception.values[Z.exception.values.length-1];if(Q?.value){if(J.push(Q.value),Q.type)J.push(`${Q.type}: ${Q.value}`)}}catch{}return J}var ZF=()=>{};function lb(Z){let{trace_id:J,parent_span_id:Q,span_id:$,status:Y,origin:X,data:W,op:K}=Z.contexts?.trace??{};return{data:W??{},description:Z.transaction,op:K,parent_span_id:Q,span_id:$??"",start_timestamp:Z.start_timestamp??0,status:Y,timestamp:Z.timestamp,trace_id:J??"",origin:X,profile_id:W?.[D4],exclusive_time:W?.[O4],measurements:Z.measurements,is_segment:!0}}function pb(Z){return{type:"transaction",timestamp:Z.timestamp,start_timestamp:Z.start_timestamp,transaction:Z.description,contexts:{trace:{trace_id:Z.trace_id,span_id:Z.span_id,parent_span_id:Z.parent_span_id,op:Z.op,status:Z.status,origin:Z.origin,data:{...Z.data,...Z.profile_id&&{[D4]:Z.profile_id},...Z.exclusive_time&&{[O4]:Z.exclusive_time}}}},measurements:Z.measurements}}var ib=q(()=>{m0()});function XW(Z){return{message:Z,[Zv]:!0}}function JF(Z){return{message:Z,[Jv]:!0}}function ab(Z){return!!Z&&typeof Z==="object"&&Zv in Z}function sb(Z){return!!Z&&typeof Z==="object"&&Jv in Z}function rb(Z,J,Q,$,Y){let X=0,W,K=!1;Z.on(Q,()=>{X=0,clearTimeout(W),K=!1}),Z.on(J,(z)=>{if(X+=$(z),X>=800000)Y(Z);else if(!K)K=!0,W=JW(setTimeout(()=>{Y(Z)},CL0))}),Z.on("flush",()=>{Y(Z)})}class $F{constructor(Z){if(this._options=Z,this._integrations={},this._numProcessing=0,this._outcomes={},this._hooks={},this._eventProcessors=[],this._promiseBuffer=E4(Z.transportOptions?.bufferSize??D3),Z.dsn)this._dsn=ah(Z.dsn);else M&&O.warn("No DSN provided, client will not send events.");if(this._dsn){let Q=Nb(this._dsn,Z.tunnel,Z._metadata?Z._metadata.sdk:void 0);this._transport=Z.transport({tunnel:this._options.tunnel,recordDroppedEvent:this.recordDroppedEvent.bind(this),...Z.transportOptions,url:Q})}if(this._options.enableLogs=this._options.enableLogs??this._options._experiments?.enableLogs,this._options.enableLogs)rb(this,"afterCaptureLog","flushLogs",kL0,Z5);if(this._options.enableMetrics??this._options._experiments?.enableMetrics??!0)rb(this,"afterCaptureMetric","flushMetrics",RL0,sV)}captureException(Z,J,Q){let $=a0();if(hX(Z))return M&&O.log(ob),$;let Y={event_id:$,...J};return this._process(()=>this.eventFromException(Z,Y).then((X)=>this._captureEvent(X,Y,Q)).then((X)=>X),"error"),Y.event_id}captureMessage(Z,J,Q,$){let Y={event_id:a0(),...Q},X=VZ(Z)?Z:String(Z),W=h7(Z),K=W?this.eventFromMessage(X,J,Y):this.eventFromException(Z,Y);return this._process(()=>K.then((z)=>this._captureEvent(z,Y,$)),W?"unknown":"error"),Y.event_id}captureEvent(Z,J,Q){let $=a0();if(J?.originalException&&hX(J.originalException))return M&&O.log(ob),$;let Y={event_id:$,...J},X=Z.sdkProcessingMetadata||{},W=X.capturedSpanScope,K=X.capturedSpanIsolationScope,z=tb(Z.type);return this._process(()=>this._captureEvent(Z,Y,W||Q,K),z),Y.event_id}captureSession(Z){this.sendSession(Z),w8(Z,{init:!1})}getDsn(){return this._dsn}getOptions(){return this._options}getSdkMetadata(){return this._options._metadata}getTransport(){return this._transport}async flush(Z){let J=this._transport;if(!J)return!0;this.emit("flush");let Q=await this._isClientDoneProcessing(Z),$=await J.flush(Z);return Q&&$}async close(Z){Z5(this);let J=await this.flush(Z);return this.getOptions().enabled=!1,this.emit("close"),J}getEventProcessors(){return this._eventProcessors}addEventProcessor(Z){this._eventProcessors.push(Z)}init(){if(this._isEnabled()||this._options.integrations.some(({name:Z})=>Z.startsWith("Spotlight")))this._setupIntegrations()}getIntegrationByName(Z){return this._integrations[Z]}addIntegration(Z){let J=this._integrations[Z.name];if(lV(this,Z,this._integrations),!J)uV(this,[Z])}sendEvent(Z,J={}){this.emit("beforeSendEvent",Z,J);let Q=Kb(Z,this._dsn,this._options._metadata,this._options.tunnel);for(let $ of J.attachments||[])Q=RV(Q,AV($));this.sendEnvelope(Q).then(($)=>this.emit("afterSendEvent",Z,$))}sendSession(Z){let{release:J,environment:Q=R4}=this._options;if("aggregates"in Z){let Y=Z.attrs||{};if(!Y.release&&!J){M&&O.warn(nb);return}Y.release=Y.release||J,Y.environment=Y.environment||Q,Z.attrs=Y}else{if(!Z.release&&!J){M&&O.warn(nb);return}Z.release=Z.release||J,Z.environment=Z.environment||Q}this.emit("beforeSendSession",Z);let $=Wb(Z,this._dsn,this._options._metadata,this._options.tunnel);this.sendEnvelope($)}recordDroppedEvent(Z,J,Q=1){if(this._options.sendClientReports){let $=`${Z}:${J}`;M&&O.log(`Recording outcome: "${$}"${Q>1?` (${Q} times)`:""}`),this._outcomes[$]=(this._outcomes[$]||0)+Q}}on(Z,J){let Q=this._hooks[Z]=this._hooks[Z]||new Set,$=(...Y)=>J(...Y);return Q.add($),()=>{Q.delete($)}}emit(Z,...J){let Q=this._hooks[Z];if(Q)Q.forEach(($)=>$(...J))}async sendEnvelope(Z){if(this.emit("beforeEnvelope",Z),this._isEnabled()&&this._transport)try{return await this._transport.send(Z)}catch(J){return M&&O.error("Error while sending envelope:",J),{}}return M&&O.error("Transport disabled"),{}}dispose(){}_setupIntegrations(){let{integrations:Z}=this._options;this._integrations=Ib(this,Z),uV(this,Z)}_updateSessionFromEvent(Z,J){let Q=J.level==="fatal",$=!1,Y=J.exception?.values;if(Y){$=!0,Q=!1;for(let K of Y)if(K.mechanism?.handled===!1){Q=!0;break}}let X=Z.status==="ok";if(X&&Z.errors===0||X&&Q)w8(Z,{...Q&&{status:"crashed"},errors:Z.errors||Number($||Q)}),this.captureSession(Z)}async _isClientDoneProcessing(Z){let J=0;while(!Z||J<Z){if(await new Promise((Q)=>setTimeout(Q,1)),!this._numProcessing)return!0;J++}return!1}_isEnabled(){return this.getOptions().enabled!==!1&&this._transport!==void 0}_prepareEvent(Z,J,Q,$){let Y=this.getOptions(),X=Object.keys(this._integrations);if(!J.integrations&&X?.length)J.integrations=X;if(this.emit("preprocessEvent",Z,J),!Z.type)$.setLastEventId(Z.event_id||J.event_id);return Cb(Y,Z,J,Q,this,$).then((W)=>{if(W===null)return W;this.emit("postprocessEvent",W,J),W.contexts={trace:{...W.contexts?.trace,...x7(Q)},...W.contexts};let K=p9(this,Q);return W.sdkProcessingMetadata={dynamicSamplingContext:K,...W.sdkProcessingMetadata},W})}_captureEvent(Z,J={},Q=i(),$=x()){if(M&&QF(Z))O.log(`Captured error event \`${YW(Z)[0]||"<unknown>"}\``);return this._processEvent(Z,J,Q,$).then((Y)=>{return Y.event_id},(Y)=>{if(M)if(sb(Y))O.log(Y.message);else if(ab(Y))O.warn(Y.message);else O.warn(Y);return})}_processEvent(Z,J,Q,$){let Y=this.getOptions(),{sampleRate:X}=Y,W=Qv(Z),K=QF(Z),G=`before send for type \`${Z.type||"error"}\``,H=typeof X>"u"?void 0:C6(X);if(K&&typeof H==="number"&&W1()>H)return this.recordDroppedEvent("sample_rate","error"),k4(JF(`Discarding event because it's not included in the random sample (sampling rate = ${X})`));let B=tb(Z.type);return this._prepareEvent(Z,J,Q,$).then((V)=>{if(V===null)throw this.recordDroppedEvent("event_processor",B),JF("An event processor returned `null`, will not send event.");if(J.data?.__sentry__===!0)return V;let U=ML0(this,Y,V,J);return PL0(U,G)}).then((V)=>{if(V===null){if(this.recordDroppedEvent("before_send",B),W){let D=1+(Z.spans||[]).length;this.recordDroppedEvent("before_send","span",D)}throw JF(`${G} returned \`null\`, will not send event.`)}let F=Q.getSession()||$.getSession();if(K&&F)this._updateSessionFromEvent(F,V);if(W){let w=V.sdkProcessingMetadata?.spanCountBeforeProcessing||0,D=V.spans?V.spans.length:0,L=w-D;if(L>0)this.recordDroppedEvent("before_send","span",L)}let U=V.transaction_info;if(W&&U&&V.transaction!==Z.transaction)V.transaction_info={...U,source:"custom"};return this.sendEvent(V,J),V}).then(null,(V)=>{if(sb(V)||ab(V))throw V;throw this.captureException(V,{mechanism:{handled:!1,type:"internal"},data:{__sentry__:!0},originalException:V}),XW(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event.
|
|
12
|
+
`),typeof K==="string"||K instanceof Uint8Array)Y(K);else{let z;try{z=JSON.stringify(K)}catch{z=JSON.stringify(_0(K))}Y(z)}}return typeof $==="string"?$:hO0($)}function hO0(Z){let J=Z.reduce((Y,X)=>Y+X.length,0),Q=new Uint8Array(J),$=0;for(let Y of Z)Q.set(Y,$),$+=Y.length;return Q}function NV(Z){return[{type:"span"},Z]}function AV(Z){let J=typeof Z.data==="string"?MV(Z.data):Z.data;return[{type:"attachment",length:J.length,filename:Z.filename,content_type:Z.contentType,attachment_type:Z.attachmentType},J]}function bO0(Z){return Z in $b}function aX(Z){return bO0(Z)?$b[Z]:Z}function sX(Z){if(!Z?.sdk)return;let{name:J,version:Q}=Z.sdk;return{name:J,version:Q}}function IV(Z,J,Q,$){let Y=Z.sdkProcessingMetadata?.dynamicSamplingContext;return{event_id:Z.event_id,sent_at:new Date().toISOString(),...J&&{sdk:J},...!!Q&&$&&{dsn:P6($)},...Y&&{trace:Y}}}var $b;var C8=q(()=>{u6();O8();RZ();J1();$b={sessions:"session",event:"error",client_report:"internal",user_report:"default",profile_chunk:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor",raw_security:"security",log:"log_item",trace_metric:"metric"}});function Yb(Z){O.log(`Ignoring span ${Z.op} - ${Z.description} because it matches \`ignoreSpans\`.`)}function rQ(Z,J){if(!J?.length||!Z.description)return!1;for(let Q of J){if(vO0(Q)){if(U8(Z.description,Q))return M&&Yb(Z),!0;continue}if(!Q.name&&!Q.op)continue;let $=Q.name?U8(Z.description,Q.name):!0,Y=Q.op?Z.op&&U8(Z.op,Q.op):!0;if($&&Y)return M&&Yb(Z),!0}return!1}function Xb(Z,J){let{parent_span_id:Q,span_id:$}=J;if(!Q)return;for(let Y of Z)if(Y.parent_span_id===$)Y.parent_span_id=Q}function vO0(Z){return typeof Z==="string"||Z instanceof RegExp}var TV=q(()=>{z0();Z0();w9()});function xO0(Z,J){if(!J)return Z;let Q=Z.sdk||{};return Z.sdk={...Q,name:Q.name||J.name,version:Q.version||J.version,integrations:[...Z.sdk?.integrations||[],...J.integrations||[]],packages:[...Z.sdk?.packages||[],...J.packages||[]],settings:Z.sdk?.settings||J.settings?{...Z.sdk?.settings,...J.settings}:void 0},Z}function Wb(Z,J,Q,$){let Y=sX(Q),X={sent_at:new Date().toISOString(),...Y&&{sdk:Y},...!!$&&J&&{dsn:P6(J)}},W="aggregates"in Z?[{type:"sessions"},Z]:[{type:"session"},Z.toJSON()];return p1(X,[W])}function Kb(Z,J,Q,$){let Y=sX(Q),X=Z.type&&Z.type!=="replay_event"?Z.type:"event";xO0(Z,Q?.sdk);let W=IV(Z,Y,$,J);return delete Z.sdkProcessingMetadata,p1(W,[[{type:X},Z]])}function zb(Z,J){function Q(F){return!!F.trace_id&&!!F.public_key}let $=u0(Z[0]),Y=J?.getDsn(),X=J?.getOptions().tunnel,W={sent_at:new Date().toISOString(),...Q($)&&{trace:$},...!!X&&Y&&{dsn:P6(Y)}},{beforeSendSpan:K,ignoreSpans:z}=J?.getOptions()||{},G=z?.length?Z.filter((F)=>!rQ(v(F),z)):Z,H=Z.length-G.length;if(H)J?.recordDroppedEvent("before_send","span",H);let B=K?(F)=>{let U=v(F),w=K(U);if(!w)return uQ(),U;return w}:v,V=[];for(let F of G){let U=B(F);if(U)V.push(NV(U))}return p1(W,V)}var EV=q(()=>{L8();O8();C8();TV();j1()});function tQ(Z,J,Q,$=s0()){let Y=$&&D0($);if(Y)M&&O.log(`[Measurement] Setting measurement on root span: ${Z} = ${J} ${Q}`),Y.addEvent(Z,{[dX]:J,[gX]:Q})}function i7(Z){if(!Z||Z.length===0)return;let J={};return Z.forEach((Q)=>{let $=Q.attributes||{},Y=$[gX],X=$[dX];if(typeof Y==="string"&&typeof X==="number")J[Q.name]={value:X,unit:Y}}),J}var fV=q(()=>{z0();m0();Z0();j1()});class eQ{constructor(Z={}){if(this._traceId=Z.traceId||_1(),this._spanId=Z.spanId||Y6(),this._startTime=Z.startTimestamp||u1(),this._links=Z.links,this._attributes={},this.setAttributes({[f]:"manual",[g]:Z.op,...Z.attributes}),this._name=Z.name,Z.parentSpanId)this._parentSpanId=Z.parentSpanId;if("sampled"in Z)this._sampled=Z.sampled;if(Z.endTimestamp)this._endTime=Z.endTimestamp;if(this._events=[],this._isStandaloneSpan=Z.isStandalone,this._endTime)this._onSpanEnded()}addLink(Z){if(this._links)this._links.push(Z);else this._links=[Z];return this}addLinks(Z){if(this._links)this._links.push(...Z);else this._links=Z;return this}recordException(Z,J){}spanContext(){let{_spanId:Z,_traceId:J,_sampled:Q}=this;return{spanId:Z,traceId:J,traceFlags:Q?pX:lX}}setAttribute(Z,J){if(J===void 0)delete this._attributes[Z];else this._attributes[Z]=J;return this}setAttributes(Z){return Object.keys(Z).forEach((J)=>this.setAttribute(J,Z[J])),this}updateStartTime(Z){this._startTime=K6(Z)}setStatus(Z){return this._status=Z,this}updateName(Z){return this._name=Z,this.setAttribute(H0,"custom"),this}end(Z){if(this._endTime)return;this._endTime=K6(Z),oQ(this),this._onSpanEnded()}getSpanJSON(){return{data:this._attributes,description:this._name,op:this._attributes[g],parent_span_id:this._parentSpanId,span_id:this._spanId,start_timestamp:this._startTime,status:u7(this._status),timestamp:this._endTime,trace_id:this._traceId,origin:this._attributes[f],profile_id:this._attributes[D4],exclusive_time:this._attributes[O4],measurements:i7(this._events),is_segment:this._isStandaloneSpan&&D0(this)===this||void 0,segment_id:this._isStandaloneSpan?D0(this).spanContext().spanId:void 0,links:m7(this._links)}}isRecording(){return!this._endTime&&!!this._sampled}addEvent(Z,J,Q){M&&O.log("[Tracing] Adding an event to span:",Z);let $=Hb(J)?J:Q||u1(),Y=Hb(J)?{}:J||{},X={name:Z,time:K6($),attributes:Y};return this._events.push(X),this}isStandaloneSpan(){return!!this._isStandaloneSpan}_onSpanEnded(){let Z=k();if(Z)Z.emit("spanEnd",this);if(!(this._isStandaloneSpan||this===D0(this)))return;if(this._isStandaloneSpan){if(this._sampled)dO0(zb([this],Z));else if(M&&O.log("[Tracing] Discarding standalone span because its trace was not chosen to be sampled."),Z)Z.recordDroppedEvent("sample_rate","span");return}let Q=this._convertSpanToTransaction();if(Q)(q9(this).scope||i()).captureEvent(Q)}_convertSpanToTransaction(){if(!Bb(v(this)))return;if(!this._name)M&&O.warn("Transaction has no name, falling back to `<unlabeled transaction>`."),this._name="<unlabeled transaction>";let{scope:Z,isolationScope:J}=q9(this),Q=Z?.getScopeData().sdkProcessingMetadata?.normalizedRequest;if(this._sampled!==!0)return;let Y=l7(this).filter((G)=>G!==this&&!gO0(G)).map((G)=>v(G)).filter(Bb),X=this._attributes[H0];delete this._attributes[L6],Y.forEach((G)=>{delete G.data[L6]});let W={contexts:{trace:eh(this)},spans:Y.length>Gb?Y.sort((G,H)=>G.start_timestamp-H.start_timestamp).slice(0,Gb):Y,start_timestamp:this._startTime,timestamp:this._endTime,transaction:this._name,type:"transaction",sdkProcessingMetadata:{capturedSpanScope:Z,capturedSpanIsolationScope:J,dynamicSamplingContext:u0(this)},request:Q,...X&&{transaction_info:{source:X}}},K=i7(this._events);if(K&&Object.keys(K).length)M&&O.log("[Measurements] Adding measurements to transaction event",JSON.stringify(K,void 0,2)),W.measurements=K;return W}}function Hb(Z){return Z&&typeof Z==="number"||Z instanceof Date||Array.isArray(Z)}function Bb(Z){return!!Z.start_timestamp&&!!Z.timestamp&&!!Z.span_id&&!!Z.trace_id}function gO0(Z){return Z instanceof eQ&&Z.isStandaloneSpan()}function dO0(Z){let J=k();if(!J)return;let Q=Z[1];if(!Q||Q.length===0){J.recordDroppedEvent("before_send","span");return}J.sendEnvelope(Z)}var Gb=1000;var Vb=q(()=>{B0();z0();EV();m0();Z0();j8();j1();j9();L8();nX();fV();H4()});function r0(Z,J){let Q=Z3();if(Q.startSpan)return Q.startSpan(Z,J);let $=SV(Z),{forceTransaction:Y,parentSpan:X,scope:W}=Z,K=W?.clone();return c0(K,()=>{return Ub(X)(()=>{let G=i(),H=_V(G,X),V=Z.onlyIfParent&&!H?new p7:yV({parentSpan:H,spanArguments:$,forceTransaction:Y,scope:G});return DZ(G,V),L9(()=>J(V),()=>{let{status:F}=v(V);if(V.isRecording()&&(!F||F==="ok"))V.setStatus({code:a,message:"internal_error"})},()=>{V.end()})})})}function h0(Z,J){let Q=Z3();if(Q.startSpanManual)return Q.startSpanManual(Z,J);let $=SV(Z),{forceTransaction:Y,parentSpan:X,scope:W}=Z,K=W?.clone();return c0(K,()=>{return Ub(X)(()=>{let G=i(),H=_V(G,X),V=Z.onlyIfParent&&!H?new p7:yV({parentSpan:H,spanArguments:$,forceTransaction:Y,scope:G});return DZ(G,V),L9(()=>J(V,()=>V.end()),()=>{let{status:F}=v(V);if(V.isRecording()&&(!F||F==="ok"))V.setStatus({code:a,message:"internal_error"})})})})}function P8(Z){let J=Z3();if(J.startInactiveSpan)return J.startInactiveSpan(Z);let Q=SV(Z),{forceTransaction:$,parentSpan:Y}=Z;return(Z.scope?(W)=>c0(Z.scope,W):Y!==void 0?(W)=>n6(Y,W):(W)=>W())(()=>{let W=i(),K=_V(W,Y);if(Z.onlyIfParent&&!K)return new p7;return yV({parentSpan:K,spanArguments:Q,forceTransaction:$,scope:W})})}function n6(Z,J){let Q=Z3();if(Q.withActiveSpan)return Q.withActiveSpan(Z,J);return c0(($)=>{return DZ($,Z||void 0),J($)})}function P9(Z){let J=Z3();if(J.suppressTracing)return J.suppressTracing(Z);return c0((Q)=>{Q.setSDKProcessingMetadata({[rX]:!0});let $=Z();return Q.setSDKProcessingMetadata({[rX]:void 0}),$})}function kZ(Z){return c0((J)=>{return J.setPropagationContext({traceId:_1(),sampleRand:W1()}),M&&O.log(`Starting a new trace with id ${J.getPropagationContext().traceId}`),n6(null,Z)})}function yV({parentSpan:Z,spanArguments:J,forceTransaction:Q,scope:$}){if(!P0()){let W=new p7;if(Q||!Z){let K={sampled:"false",sample_rate:"0",transaction:J.name,...u0(W)};oX(W,K)}return W}let Y=x(),X;if(Z&&!Q)X=cO0(Z,$,J),M4(Z,X);else if(Z){let W=u0(Z),{traceId:K,spanId:z}=Z.spanContext(),G=C9(Z);X=Fb({traceId:K,parentSpanId:z,...J},$,G),oX(X,W)}else{let{traceId:W,dsc:K,parentSpanId:z,sampled:G}={...Y.getPropagationContext(),...$.getPropagationContext()};if(X=Fb({traceId:W,parentSpanId:z,...J},$,G),K)oX(X,K)}return iQ(X),hQ(X,$,Y),X}function SV(Z){let Q={isStandalone:(Z.experimental||{}).standalone,...Z};if(Z.startTime){let $={...Q};return $.startTimestamp=K6(Z.startTime),delete $.startTime,$}return Q}function Z3(){let Z=S1();return o6(Z)}function Fb(Z,J,Q){let $=k(),Y=$?.getOptions()||{},{name:X=""}=Z,W={spanAttributes:{...Z.attributes},spanName:X,parentSampled:Q};$?.emit("beforeSampling",W,{decision:!1});let K=W.parentSampled??Q,z=W.spanAttributes,G=J.getPropagationContext(),[H,B,V]=J.getScopeData().sdkProcessingMetadata[rX]?[!1]:nQ(Y,{name:X,parentSampled:K,attributes:z,parentSampleRate:C6(G.dsc?.sample_rate)},G.sampleRand),F=new eQ({...Z,attributes:{[H0]:"custom",[W6]:B!==void 0&&V?B:void 0,...z},sampled:H});if(!H&&$)M&&O.log("[Tracing] Discarding root span because its trace was not chosen to be sampled."),$.recordDroppedEvent("sample_rate","transaction");if($)$.emit("spanStart",F);return F}function cO0(Z,J,Q){let{spanId:$,traceId:Y}=Z.spanContext(),X=J.getScopeData().sdkProcessingMetadata[rX]?!1:C9(Z),W=X?new eQ({...Q,parentSpanId:$,traceId:Y,sampled:X}):new p7({traceId:Y});M4(Z,W);let K=k();if(K){if(K.emit("spanStart",W),Q.endTimestamp)K.emit("spanEnd",W)}return W}function _V(Z,J){if(J)return J;if(J===null)return;let Q=D9(Z);if(!Q)return;let $=k();if(($?$.getOptions():{}).parentSpanIsAlwaysRootSpan)return D0(Q);return Q}function Ub(Z){return Z!==void 0?(J)=>{return n6(Z,J)}:(J)=>J()}var rX="__SENTRY_SUPPRESS_TRACING__",o7=(Z,J)=>{let Q=S1(),$=o6(Q);if($.continueTrace)return $.continueTrace(Z,J);let{sentryTrace:Y,baggage:X}=Z,W=k(),K=O9(X);if(W&&!dQ(W,K?.org_id))return kZ(J);return c0((z)=>{let G=d7(Y,X);return z.setPropagationContext(G),DZ(z,void 0),J()})};var M6=q(()=>{j4();u6();B0();z0();m0();C4();Z0();mX();xQ();P4();j8();F8();F4();j1();cQ();L8();nX();LV();Qb();Vb();w1();H4()});function M8(Z){return new J3((J)=>{J(Z)})}function k4(Z){return new J3((J,Q)=>{Q(Z)})}class J3{constructor(Z){this._state=hV,this._handlers=[],this._runExecutor(Z)}then(Z,J){return new J3((Q,$)=>{this._handlers.push([!1,(Y)=>{if(!Z)Q(Y);else try{Q(Z(Y))}catch(X){$(X)}},(Y)=>{if(!J)$(Y);else try{Q(J(Y))}catch(X){$(X)}}]),this._executeHandlers()})}catch(Z){return this.then((J)=>J,Z)}finally(Z){return new J3((J,Q)=>{let $,Y;return this.then((X)=>{if(Y=!1,$=X,Z)Z()},(X)=>{if(Y=!0,$=X,Z)Z()}).then(()=>{if(Y){Q($);return}J($)})})}_executeHandlers(){if(this._state===hV)return;let Z=this._handlers.slice();this._handlers=[],Z.forEach((J)=>{if(J[0])return;if(this._state===qb)J[1](this._value);if(this._state===wb)J[2](this._value);J[0]=!0})}_runExecutor(Z){let J=(Y,X)=>{if(this._state!==hV)return;if(X1(X)){X.then(Q,$);return}this._state=Y,this._value=X,this._executeHandlers()},Q=(Y)=>{J(qb,Y)},$=(Y)=>{J(wb,Y)};try{Z(Q,$)}catch(Y){$(Y)}}}var hV=0,qb=1,wb=2;var N4=q(()=>{S0()});function jb(Z,J,Q,$=0){try{let Y=bV(J,Q,Z,$);return X1(Y)?Y:M8(Y)}catch(Y){return k4(Y)}}function bV(Z,J,Q,$){let Y=Q[$];if(!Z||!Y)return Z;let X=Y({...Z},J);if(M&&X===null&&O.log(`Event processor "${Y.id||"?"}" dropped event`),X1(X))return X.then((W)=>bV(W,J,Q,$+1));return bV(X,J,Q,$+1)}var Db=q(()=>{z0();Z0();S0();N4()});function Q3(Z){let J=d._sentryDebugIds,Q=d._debugIds;if(!J&&!Q)return{};let $=J?Object.keys(J):[],Y=Q?Object.keys(Q):[];if(NZ&&$.length===Ob&&Y.length===Lb)return NZ;if(Ob=$.length,Lb=Y.length,NZ={},!n7)n7={};let X=(W,K)=>{for(let z of W){let G=K[z],H=n7?.[z];if(H&&NZ&&G){if(NZ[H[0]]=G,n7)n7[z]=[H[0],G]}else if(G){let B=Z(z);for(let V=B.length-1;V>=0;V--){let U=B[V]?.filename;if(U&&NZ&&n7){NZ[U]=G,n7[z]=[U,G];break}}}}};if(J)X($,J);if(Q)X(Y,Q);return NZ}var n7,Ob,Lb,NZ;var vV=q(()=>{J1()});function gV(Z,J){let{fingerprint:Q,span:$,breadcrumbs:Y,sdkProcessingMetadata:X}=J;if(mO0(Z,J),$)pO0(Z,$);iO0(Z,Q),uO0(Z,Y),lO0(Z,X)}function xV(Z,J){let{extra:Q,tags:$,attributes:Y,user:X,contexts:W,level:K,sdkProcessingMetadata:z,breadcrumbs:G,fingerprint:H,eventProcessors:B,attachments:V,propagationContext:F,transactionName:U,span:w}=J;if($3(Z,"extra",Q),$3(Z,"tags",$),$3(Z,"attributes",Y),$3(Z,"user",X),$3(Z,"contexts",W),Z.sdkProcessingMetadata=jZ(Z.sdkProcessingMetadata,z,2),K)Z.level=K;if(U)Z.transactionName=U;if(w)Z.span=w;if(G.length)Z.breadcrumbs=[...Z.breadcrumbs,...G];if(H.length)Z.fingerprint=[...Z.fingerprint,...H];if(B.length)Z.eventProcessors=[...Z.eventProcessors,...B];if(V.length)Z.attachments=[...Z.attachments,...V];Z.propagationContext={...Z.propagationContext,...F}}function $3(Z,J,Q){Z[J]=jZ(Z[J],Q,1)}function M9(Z,J){let Q=D8().getScopeData();return Z&&xV(Q,Z.getScopeData()),J&&xV(Q,J.getScopeData()),Q}function mO0(Z,J){let{extra:Q,tags:$,user:Y,contexts:X,level:W,transactionName:K}=J;if(Object.keys(Q).length)Z.extra={...Q,...Z.extra};if(Object.keys($).length)Z.tags={...$,...Z.tags};if(Object.keys(Y).length)Z.user={...Y,...Z.user};if(Object.keys(X).length)Z.contexts={...X,...Z.contexts};if(W)Z.level=W;if(K&&Z.type!=="transaction")Z.transaction=K}function uO0(Z,J){let Q=[...Z.breadcrumbs||[],...J];Z.breadcrumbs=Q.length?Q:void 0}function lO0(Z,J){Z.sdkProcessingMetadata={...Z.sdkProcessingMetadata,...J}}function pO0(Z,J){Z.contexts={trace:MZ(J),...Z.contexts},Z.sdkProcessingMetadata={dynamicSamplingContext:u0(J),...Z.sdkProcessingMetadata};let Q=D0(J),$=v(Q).description;if($&&!Z.transaction&&Z.type==="transaction")Z.transaction=$}function iO0(Z,J){if(Z.fingerprint=Z.fingerprint?Array.isArray(Z.fingerprint)?Z.fingerprint:[Z.fingerprint]:[],J)Z.fingerprint=Z.fingerprint.concat(J);if(!Z.fingerprint.length)delete Z.fingerprint}var A4=q(()=>{B0();L8();vX();j1()});function Cb(Z,J,Q,$,Y,X){let{normalizeDepth:W=3,normalizeMaxBreadth:K=1000}=Z,z={...J,event_id:J.event_id||Q.event_id||a0(),timestamp:J.timestamp||q8()},G=Q.integrations||Z.integrations.map((L)=>L.name);if(oO0(z,Z),sO0(z,G),Y)Y.emit("applyFrameMetadata",J);if(J.type===void 0)nO0(z,Z.stackParser);let H=tO0($,Q.captureContext);if(Q.mechanism)i6(z,Q.mechanism);let B=Y?Y.getEventProcessors():[],V=M9(X,H),F=[...Q.attachments||[],...V.attachments];if(F.length)Q.attachments=F;gV(z,V);let U=[...B,...V.eventProcessors];return(Q.data&&Q.data.__sentry__===!0?M8(z):jb(U,z,Q)).then((L)=>{if(L)aO0(L);if(typeof W==="number"&&W>0)return rO0(L,W,K);return L})}function oO0(Z,J){let{environment:Q,release:$,dist:Y,maxValueLength:X}=J;if(Z.environment=Z.environment||Q||R4,!Z.release&&$)Z.release=$;if(!Z.dist&&Y)Z.dist=Y;let W=Z.request;if(W?.url&&X)W.url=p6(W.url,X);if(X)Z.exception?.values?.forEach((K)=>{if(K.value)K.value=p6(K.value,X)})}function nO0(Z,J){let Q=Q3(J);Z.exception?.values?.forEach(($)=>{$.stacktrace?.frames?.forEach((Y)=>{if(Y.filename)Y.debug_id=Q[Y.filename]})})}function aO0(Z){let J={};if(Z.exception?.values?.forEach(($)=>{$.stacktrace?.frames?.forEach((Y)=>{if(Y.debug_id){if(Y.abs_path)J[Y.abs_path]=Y.debug_id;else if(Y.filename)J[Y.filename]=Y.debug_id;delete Y.debug_id}})}),Object.keys(J).length===0)return;Z.debug_meta=Z.debug_meta||{},Z.debug_meta.images=Z.debug_meta.images||[];let Q=Z.debug_meta.images;Object.entries(J).forEach(([$,Y])=>{Q.push({type:"sourcemap",code_file:$,debug_id:Y})})}function sO0(Z,J){if(J.length>0)Z.sdk=Z.sdk||{},Z.sdk.integrations=[...Z.sdk.integrations||[],...J]}function rO0(Z,J,Q){if(!Z)return null;let $={...Z,...Z.breadcrumbs&&{breadcrumbs:Z.breadcrumbs.map((Y)=>({...Y,...Y.data&&{data:_0(Y.data,J,Q)}}))},...Z.user&&{user:_0(Z.user,J,Q)},...Z.contexts&&{contexts:_0(Z.contexts,J,Q)},...Z.extra&&{extra:_0(Z.extra,J,Q)}};if(Z.contexts?.trace&&$.contexts){if($.contexts.trace=Z.contexts.trace,Z.contexts.trace.data)$.contexts.trace.data=_0(Z.contexts.trace.data,J,Q)}if(Z.spans)$.spans=Z.spans.map((Y)=>{return{...Y,...Y.data&&{data:_0(Y.data,J,Q)}}});if(Z.contexts?.flags&&$.contexts)$.contexts.flags=_0(Z.contexts.flags,3,Q);return $}function tO0(Z,J){if(!J)return Z;let Q=Z?Z.clone():new K1;return Q.update(J),Q}function Pb(Z){if(!Z)return;if(eO0(Z))return{captureContext:Z};if(JL0(Z))return{captureContext:Z};return Z}function eO0(Z){return Z instanceof K1||typeof Z==="function"}function JL0(Z){return Object.keys(Z).some((J)=>ZL0.includes(J))}var ZL0;var dV=q(()=>{iX();Db();U4();vV();O6();RZ();A4();w9();N4();j9();ZL0=["user","level","extra","contexts","tags","fingerprint","propagationContext"]});function h(Z,J){return i().captureException(Z,Pb(J))}function s7(Z,J){let Q=typeof J==="string"?J:void 0,$=typeof J!=="string"?{captureContext:J}:void 0;return i().captureMessage(Z,Q,$)}function r7(Z,J){return i().captureEvent(Z,J)}function Y3(Z,J){x().setContext(Z,J)}function X3(Z){x().setExtras(Z)}function W3(Z,J){x().setExtra(Z,J)}function K3(Z){x().setTags(Z)}function z3(Z,J){x().setTag(Z,J)}function G3(Z){x().setUser(Z)}function tX(Z){x().setConversationId(Z)}function H3(){return x().lastEventId()}function a7(Z,J){let Q=i(),$=k();if(!$)M&&O.warn("Cannot capture check-in. No client defined.");else if(!$.captureCheckIn)M&&O.warn("Cannot capture check-in. Client does not support sending check-ins.");else return $.captureCheckIn(Z,J,Q);return a0()}function a6(Z,J,Q){function $(){let Y=a7({monitorSlug:Z,status:"in_progress"},Q),X=u1();function W(z){a7({monitorSlug:Z,status:z,checkInId:Y,duration:u1()-X})}let K;try{K=J()}catch(z){throw W("error"),z}if(X1(K))return K.then((z)=>{return W("ok"),z},(z)=>{throw W("error"),z});return W("ok"),K}return l1(()=>Q?.isolateTrace?kZ($):$())}async function t7(Z){let J=k();if(J)return J.flush(Z);return M&&O.warn("Cannot flush events. No client defined."),Promise.resolve(!1)}async function B3(Z){let J=k();if(J)return J.close(Z);return M&&O.warn("Cannot flush events and disable SDK. No client defined."),Promise.resolve(!1)}function V3(){return!!k()}function R8(){let Z=k();return Z?.getOptions().enabled!==!1&&!!Z?.getTransport()}function F3(Z){x().addEventProcessor(Z)}function e7(Z){let J=x(),{user:Q}=M9(J,i()),{userAgent:$}=d.navigator||{},Y=xh({user:Q,...$&&{userAgent:$},...Z}),X=J.getSession();if(X?.status==="ok")w8(X,{status:"exited"});return k8(),J.setSession(Y),Y}function k8(){let Z=x(),Q=i().getSession()||Z.getSession();if(Q)gh(Q);Mb(),Z.setSession()}function Mb(){let Z=x(),J=k(),Q=Z.getSession();if(Q&&J)J.captureSession(Q)}function U3(Z=!1){if(Z){k8();return}Mb()}var k1=q(()=>{B0();z0();bX();M6();Z0();S0();O6();dV();A4();j9();J1()});function Rb(Z,J,Q,$,Y){let X={sent_at:new Date().toISOString()};if(Q?.sdk)X.sdk={name:Q.sdk.name,version:Q.sdk.version};if(!!$&&!!Y)X.dsn=P6(Y);if(J)X.trace=J;let W=QL0(Z);return p1(X,[W])}function QL0(Z){return[{type:"check_in"},Z]}var kb=q(()=>{O8();C8()});function YL0(Z){let J=Z.protocol?`${Z.protocol}:`:"",Q=Z.port?`:${Z.port}`:"";return`${J}//${Z.host}${Q}${Z.path?`/${Z.path}`:""}/api/`}function XL0(Z){return`${YL0(Z)}${Z.projectId}/envelope/`}function WL0(Z,J){let Q={sentry_version:$L0};if(Z.publicKey)Q.sentry_key=Z.publicKey;if(J)Q.sentry_client=`${J.name}/${J.version}`;return new URLSearchParams(Q).toString()}function Nb(Z,J,Q){return J?J:`${XL0(Z)}?${WL0(Z,Q)}`}var $L0="7";var Ab=()=>{};function KL0(Z){let J={};return Z.forEach((Q)=>{let{name:$}=Q,Y=J[$];if(Y&&!Y.isDefaultInstance&&Q.isDefaultInstance)return;J[$]=Q}),Object.values(J)}function mV(Z){let J=Z.defaultIntegrations||[],Q=Z.integrations;J.forEach((Y)=>{Y.isDefaultInstance=!0});let $;if(Array.isArray(Q))$=[...J,...Q];else if(typeof Q==="function"){let Y=Q(J);$=Array.isArray(Y)?Y:[Y]}else $=J;return KL0($)}function Ib(Z,J){let Q={};return J.forEach(($)=>{if($)lV(Z,$,Q)}),Q}function uV(Z,J){for(let Q of J)if(Q?.afterAllSetup)Q.afterAllSetup(Z)}function lV(Z,J,Q){if(Q[J.name]){M&&O.log(`Integration skipped because it was already installed: ${J.name}`);return}if(Q[J.name]=J,!cV.includes(J.name)&&typeof J.setupOnce==="function")J.setupOnce(),cV.push(J.name);if(J.setup&&typeof J.setup==="function")J.setup(Z);if(typeof J.preprocessEvent==="function"){let $=J.preprocessEvent.bind(J);Z.on("preprocessEvent",(Y,X)=>$(Y,X,Z))}if(typeof J.processEvent==="function"){let $=J.processEvent.bind(J),Y=Object.assign((X,W)=>$(X,W,Z),{id:J.name});Z.addEventProcessor(Y)}M&&O.log(`Integration installed: ${J.name}`)}function q3(Z){let J=k();if(!J){M&&O.warn(`Cannot add integration "${Z.name}" because no SDK Client is available.`);return}J.addIntegration(Z)}function P(Z){return Z}var cV;var D1=q(()=>{B0();z0();Z0();cV=[]});function zL0(Z){return typeof Z==="object"&&Z!=null&&!Array.isArray(Z)&&Object.keys(Z).includes("value")}function GL0(Z,J){let{value:Q,unit:$}=zL0(Z)?Z:{value:Z,unit:void 0},Y=HL0(Q),X=$&&typeof $==="string"?{unit:$}:{};if(Y)return{...Y,...X};if(!J||J==="skip-undefined"&&Q===void 0)return;let W="";try{W=JSON.stringify(Q)??""}catch{}return{value:W,type:"string",...X}}function I4(Z,J=!1){let Q={};for(let[$,Y]of Object.entries(Z??{})){let X=GL0(Y,J);if(X)Q[$]=X}return Q}function HL0(Z){let J=typeof Z==="string"?"string":typeof Z==="boolean"?"boolean":typeof Z==="number"&&!Number.isNaN(Z)?Number.isInteger(Z)?"integer":"double":null;if(J)return{value:Z,type:J}}var pV=()=>{};function eX(Z){let J=Math.floor(Z*1000);if(oV!==void 0&&J!==oV)iV=0;let Q=iV;return iV++,oV=J,{key:"sentry.timestamp.sequence",value:{value:Q,type:"integer"}}}var iV=0,oV;var nV=()=>{};function T4(Z,J){if(!J)return[void 0,void 0];return c0(J,()=>{let Q=s0(),$=Q?MZ(Q):x7(J);return[Q?u0(Q):p9(Z,J),$]})}var ZW=q(()=>{B0();L8();j1()});var Tb;var Eb=q(()=>{Tb={trace:1,debug:5,info:9,warn:13,error:17,fatal:21}});function BL0(Z){return[{type:"log",item_count:Z.length,content_type:"application/vnd.sentry.items.log+json"},{items:Z}]}function fb(Z,J,Q,$){let Y={};if(J?.sdk)Y.sdk={name:J.sdk.name,version:J.sdk.version};if(!!Q&&!!$)Y.dsn=P6($);return p1(Y,[BL0(Z)])}var yb=q(()=>{O8();C8()});function i9(Z,J,Q,$=!0){if(Q&&(!Z[J]||$))Z[J]=Q}function Sb(Z,J){let Q=aV(),$=_b(Z);if($===void 0)Q.set(Z,[J]);else if($.length>=VL0)Z5(Z,$),Q.set(Z,[J]);else Q.set(Z,[...$,J])}function R9(Z,J=i(),Q=Sb){let $=J?.getClient()??k();if(!$){M&&O.warn("No client available to capture log.");return}let{release:Y,environment:X,enableLogs:W=!1,beforeSendLog:K}=$.getOptions();if(!W){M&&O.warn("logging option not enabled, log will not be captured.");return}let[,z]=T4($,J),G={...Z.attributes},{user:{id:H,email:B,username:V},attributes:F={}}=M9(x(),J);i9(G,"user.id",H,!1),i9(G,"user.email",B,!1),i9(G,"user.name",V,!1),i9(G,"sentry.release",Y),i9(G,"sentry.environment",X);let{name:U,version:w}=$.getSdkMetadata()?.sdk??{};i9(G,"sentry.sdk.name",U),i9(G,"sentry.sdk.version",w);let D=$.getIntegrationByName("Replay"),L=D?.getReplayId(!0);if(i9(G,"sentry.replay_id",L),L&&D?.getRecordingMode()==="buffer")i9(G,"sentry._internal.replay_is_buffering",!0);let C=Z.message;if(VZ(C)){let{__sentry_template_string__:U1,__sentry_template_values__:P7=[]}=C;if(P7?.length)G["sentry.message.template"]=U1;P7.forEach((a5,uY)=>{G[`sentry.message.parameter.${uY}`]=a5})}let R=D9(J);i9(G,"sentry.trace.parent_span_id",R?.spanContext().spanId);let T={...Z,attributes:G};$.emit("beforeCaptureLog",T);let _=K?G0(()=>K(T)):T;if(!_){$.recordDroppedEvent("before_send","log_item",1),M&&O.warn("beforeSendLog returned null, log will not be captured.");return}let{level:m,message:l,attributes:y0={},severityNumber:$6}=_,c9=u1(),m9=eX(c9),n5={timestamp:c9,level:m,body:l,trace_id:z?.trace_id,severity_number:$6??Tb[m],attributes:{...I4(F),...I4(y0,!0),[m9.key]:m9.value}};Q($,n5),$.emit("afterCaptureLog",_)}function Z5(Z,J){let Q=J??_b(Z)??[];if(Q.length===0)return;let $=Z.getOptions(),Y=fb(Q,$._metadata,$.tunnel,Z.getDsn());aV().set(Z,[]),Z.emit("flushLogs"),Z.sendEnvelope(Y)}function _b(Z){return aV().get(Z)}function aV(){return U9("clientToLogBufferMap",()=>new WeakMap)}var VL0=100;var w3=q(()=>{pV();u6();B0();z0();Z0();S0();A4();F4();j9();nV();ZW();Eb();yb()});function FL0(Z){return[{type:"trace_metric",item_count:Z.length,content_type:"application/vnd.sentry.items.trace-metric+json"},{items:Z}]}function hb(Z,J,Q,$){let Y={};if(J?.sdk)Y.sdk={name:J.sdk.name,version:J.sdk.version};if(!!Q&&!!$)Y.dsn=P6($);return p1(Y,[FL0(Z)])}var bb=q(()=>{O8();C8()});function N8(Z,J,Q,$=!0){if(Q&&($||!(J in Z)))Z[J]=Q}function qL0(Z,J){let Q=rV(),$=xb(Z);if($===void 0)Q.set(Z,[J]);else if($.length>=UL0)sV(Z,$),Q.set(Z,[J]);else Q.set(Z,[...$,J])}function wL0(Z,J,Q){let{release:$,environment:Y}=J.getOptions(),X={...Z.attributes};N8(X,"user.id",Q.id,!1),N8(X,"user.email",Q.email,!1),N8(X,"user.name",Q.username,!1),N8(X,"sentry.release",$),N8(X,"sentry.environment",Y);let{name:W,version:K}=J.getSdkMetadata()?.sdk??{};N8(X,"sentry.sdk.name",W),N8(X,"sentry.sdk.version",K);let z=J.getIntegrationByName("Replay"),G=z?.getReplayId(!0);if(N8(X,"sentry.replay_id",G),G&&z?.getRecordingMode()==="buffer")N8(X,"sentry._internal.replay_is_buffering",!0);return{...Z,attributes:X}}function jL0(Z,J,Q,$){let[,Y]=T4(J,Q),X=D9(Q),W=X?X.spanContext().traceId:Y?.trace_id,K=X?X.spanContext().spanId:void 0,z=u1(),G=eX(z);return{timestamp:z,trace_id:W??"",span_id:K,name:Z.name,type:Z.type,unit:Z.unit,value:Z.value,attributes:{...I4($),...I4(Z.attributes,"skip-undefined"),[G.key]:G.value}}}function vb(Z,J){let Q=J?.scope??i(),$=J?.captureSerializedMetric??qL0,Y=Q?.getClient()??k();if(!Y){M&&O.warn("No client available to capture metric.");return}let{_experiments:X,enableMetrics:W,beforeSendMetric:K}=Y.getOptions();if(!(W??X?.enableMetrics??!0)){M&&O.warn("metrics option not enabled, metric will not be captured.");return}let{user:G,attributes:H}=M9(x(),Q),B=wL0(Z,Y,G);Y.emit("processMetric",B);let V=K||X?.beforeSendMetric,F=V?V(B):B;if(!F){M&&O.log("`beforeSendMetric` returned `null`, will not send metric.");return}let U=jL0(F,Y,Q,H);M&&O.log("[Metric]",U),$(Y,U),Y.emit("afterCaptureMetric",F)}function sV(Z,J){let Q=J??xb(Z)??[];if(Q.length===0)return;let $=Z.getOptions(),Y=hb(Q,$._metadata,$.tunnel,Z.getDsn());rV().set(Z,[]),Z.emit("flushMetrics"),Z.sendEnvelope(Y)}function xb(Z){return rV().get(Z)}function rV(){return U9("clientToMetricBufferMap",()=>new WeakMap)}var UL0=1000;var tV=q(()=>{pV();u6();B0();z0();Z0();A4();F4();j9();nV();ZW();bb()});function JW(Z){if(typeof Z==="object"&&typeof Z.unref==="function")Z.unref();return Z}var eV=()=>{};function E4(Z=100){let J=new Set;function Q(){return J.size<Z}function $(W){J.delete(W)}function Y(W){if(!Q())return k4(j3);let K=W();return J.add(K),K.then(()=>$(K),()=>$(K)),K}function X(W){if(!J.size)return M8(!0);let K=Promise.allSettled(Array.from(J)).then(()=>!0);if(!W)return K;let z=[K,new Promise((G)=>JW(setTimeout(()=>G(!1),W)))];return Promise.race(z)}return{get $(){return Array.from(J)},add:Y,drain:X}}var j3;var QW=q(()=>{N4();eV();j3=Symbol.for("SentryBufferFullError")});function OL0(Z,J=l6()){let Q=parseInt(`${Z}`,10);if(!isNaN(Q))return Q*1000;let $=Date.parse(`${Z}`);if(!isNaN($))return $-J;return DL0}function LL0(Z,J){return Z[J]||Z.all||0}function gb(Z,J,Q=l6()){return LL0(Z,J)>Q}function db(Z,{statusCode:J,headers:Q},$=l6()){let Y={...Z},X=Q?.["x-sentry-rate-limits"],W=Q?.["retry-after"];if(X)for(let K of X.trim().split(",")){let[z,G,,,H]=K.split(":",5),B=parseInt(z,10),V=(!isNaN(B)?B:60)*1000;if(!G)Y.all=$+V;else for(let F of G.split(";"))if(F==="metric_bucket"){if(!H||H.split(";").includes("custom"))Y[F]=$+V}else Y[F]=$+V}else if(W)Y.all=$+OL0(W,$);else if(J===429)Y.all=$+60000;return Y}var DL0=60000;var cb=q(()=>{F8()});function o9(Z,J,Q=E4(Z.bufferSize||D3)){let $={},Y=(W)=>Q.drain(W);function X(W){let K=[];if(aQ(W,(B,V)=>{let F=aX(V);if(gb($,F))Z.recordDroppedEvent("ratelimit_backoff",F);else K.push(B)}),K.length===0)return Promise.resolve({});let z=p1(W[0],K),G=(B)=>{if(kV(z,["client_report"])){M&&O.warn(`Dropping client report. Will not send outcomes (reason: ${B}).`);return}aQ(z,(V,F)=>{Z.recordDroppedEvent(B,aX(F))})},H=()=>J({body:sQ(z)}).then((B)=>{if(B.statusCode===413)return M&&O.error("Sentry responded with status code 413. Envelope was discarded due to exceeding size limits."),G("send_error"),B;if(M&&B.statusCode!==void 0&&(B.statusCode<200||B.statusCode>=300))O.warn(`Sentry responded with status code ${B.statusCode} to sent event.`);return $=db($,B),B},(B)=>{throw G("network_error"),M&&O.error("Encountered error running transport request:",B),B});return Q.add(H).then((B)=>B,(B)=>{if(B===j3)return M&&O.error("Skipped sending event because buffer is full."),G("queue_overflow"),Promise.resolve({});else throw B})}return{send:X,flush:Y}}var D3=64;var $W=q(()=>{z0();Z0();C8();QW();cb()});function mb(Z,J,Q){let $=[{type:"client_report"},{timestamp:Q||q8(),discarded_events:Z}];return p1(J?{dsn:J}:{},[$])}var ub=q(()=>{C8();j9()});function YW(Z){let J=[];if(Z.message)J.push(Z.message);try{let Q=Z.exception.values[Z.exception.values.length-1];if(Q?.value){if(J.push(Q.value),Q.type)J.push(`${Q.type}: ${Q.value}`)}}catch{}return J}var ZF=()=>{};function lb(Z){let{trace_id:J,parent_span_id:Q,span_id:$,status:Y,origin:X,data:W,op:K}=Z.contexts?.trace??{};return{data:W??{},description:Z.transaction,op:K,parent_span_id:Q,span_id:$??"",start_timestamp:Z.start_timestamp??0,status:Y,timestamp:Z.timestamp,trace_id:J??"",origin:X,profile_id:W?.[D4],exclusive_time:W?.[O4],measurements:Z.measurements,is_segment:!0}}function pb(Z){return{type:"transaction",timestamp:Z.timestamp,start_timestamp:Z.start_timestamp,transaction:Z.description,contexts:{trace:{trace_id:Z.trace_id,span_id:Z.span_id,parent_span_id:Z.parent_span_id,op:Z.op,status:Z.status,origin:Z.origin,data:{...Z.data,...Z.profile_id&&{[D4]:Z.profile_id},...Z.exclusive_time&&{[O4]:Z.exclusive_time}}}},measurements:Z.measurements}}var ib=q(()=>{m0()});function XW(Z){return{message:Z,[Zv]:!0}}function JF(Z){return{message:Z,[Jv]:!0}}function ab(Z){return!!Z&&typeof Z==="object"&&Zv in Z}function sb(Z){return!!Z&&typeof Z==="object"&&Jv in Z}function rb(Z,J,Q,$,Y){let X=0,W,K=!1;Z.on(Q,()=>{X=0,clearTimeout(W),K=!1}),Z.on(J,(z)=>{if(X+=$(z),X>=800000)Y(Z);else if(!K)K=!0,W=JW(setTimeout(()=>{Y(Z)},CL0))}),Z.on("flush",()=>{Y(Z)})}class $F{constructor(Z){if(this._options=Z,this._integrations={},this._numProcessing=0,this._outcomes={},this._hooks={},this._eventProcessors=[],this._promiseBuffer=E4(Z.transportOptions?.bufferSize??D3),Z.dsn)this._dsn=ah(Z.dsn);else M&&O.warn("No DSN provided, client will not send events.");if(this._dsn){let Q=Nb(this._dsn,Z.tunnel,Z._metadata?Z._metadata.sdk:void 0);this._transport=Z.transport({tunnel:this._options.tunnel,recordDroppedEvent:this.recordDroppedEvent.bind(this),...Z.transportOptions,url:Q})}if(this._options.enableLogs=this._options.enableLogs??this._options._experiments?.enableLogs,this._options.enableLogs)rb(this,"afterCaptureLog","flushLogs",kL0,Z5);if(this._options.enableMetrics??this._options._experiments?.enableMetrics??!0)rb(this,"afterCaptureMetric","flushMetrics",RL0,sV)}captureException(Z,J,Q){let $=a0();if(hX(Z))return M&&O.log(ob),$;let Y={event_id:$,...J};return this._process(()=>this.eventFromException(Z,Y).then((X)=>this._captureEvent(X,Y,Q)).then((X)=>X),"error"),Y.event_id}captureMessage(Z,J,Q,$){let Y={event_id:a0(),...Q},X=VZ(Z)?Z:String(Z),W=h7(Z),K=W?this.eventFromMessage(X,J,Y):this.eventFromException(Z,Y);return this._process(()=>K.then((z)=>this._captureEvent(z,Y,$)),W?"unknown":"error"),Y.event_id}captureEvent(Z,J,Q){let $=a0();if(J?.originalException&&hX(J.originalException))return M&&O.log(ob),$;let Y={event_id:$,...J},X=Z.sdkProcessingMetadata||{},W=X.capturedSpanScope,K=X.capturedSpanIsolationScope,z=tb(Z.type);return this._process(()=>this._captureEvent(Z,Y,W||Q,K),z),Y.event_id}captureSession(Z){this.sendSession(Z),w8(Z,{init:!1})}getDsn(){return this._dsn}getOptions(){return this._options}getSdkMetadata(){return this._options._metadata}getTransport(){return this._transport}async flush(Z){let J=this._transport;if(!J)return!0;this.emit("flush");let Q=await this._isClientDoneProcessing(Z),$=await J.flush(Z);return Q&&$}async close(Z){Z5(this);let J=await this.flush(Z);return this.getOptions().enabled=!1,this.emit("close"),J}getEventProcessors(){return this._eventProcessors}addEventProcessor(Z){this._eventProcessors.push(Z)}init(){if(this._isEnabled()||this._options.integrations.some(({name:Z})=>Z.startsWith("Spotlight")))this._setupIntegrations()}getIntegrationByName(Z){return this._integrations[Z]}addIntegration(Z){let J=this._integrations[Z.name];if(lV(this,Z,this._integrations),!J)uV(this,[Z])}sendEvent(Z,J={}){this.emit("beforeSendEvent",Z,J);let Q=Kb(Z,this._dsn,this._options._metadata,this._options.tunnel);for(let $ of J.attachments||[])Q=RV(Q,AV($));this.sendEnvelope(Q).then(($)=>this.emit("afterSendEvent",Z,$))}sendSession(Z){let{release:J,environment:Q=R4}=this._options;if("aggregates"in Z){let Y=Z.attrs||{};if(!Y.release&&!J){M&&O.warn(nb);return}Y.release=Y.release||J,Y.environment=Y.environment||Q,Z.attrs=Y}else{if(!Z.release&&!J){M&&O.warn(nb);return}Z.release=Z.release||J,Z.environment=Z.environment||Q}this.emit("beforeSendSession",Z);let $=Wb(Z,this._dsn,this._options._metadata,this._options.tunnel);this.sendEnvelope($)}recordDroppedEvent(Z,J,Q=1){if(this._options.sendClientReports){let $=`${Z}:${J}`;M&&O.log(`Recording outcome: "${$}"${Q>1?` (${Q} times)`:""}`),this._outcomes[$]=(this._outcomes[$]||0)+Q}}on(Z,J){let Q=this._hooks[Z]=this._hooks[Z]||new Set,$=(...Y)=>J(...Y);return Q.add($),()=>{Q.delete($)}}emit(Z,...J){let Q=this._hooks[Z];if(Q)Q.forEach(($)=>$(...J))}async sendEnvelope(Z){if(this.emit("beforeEnvelope",Z),this._isEnabled()&&this._transport)try{return await this._transport.send(Z)}catch(J){return M&&O.error("Error while sending envelope:",J),{}}return M&&O.error("Transport disabled"),{}}dispose(){}_setupIntegrations(){let{integrations:Z}=this._options;this._integrations=Ib(this,Z),uV(this,Z)}_updateSessionFromEvent(Z,J){let Q=J.level==="fatal",$=!1,Y=J.exception?.values;if(Y){$=!0,Q=!1;for(let K of Y)if(K.mechanism?.handled===!1){Q=!0;break}}let X=Z.status==="ok";if(X&&Z.errors===0||X&&Q)w8(Z,{...Q&&{status:"crashed"},errors:Z.errors||Number($||Q)}),this.captureSession(Z)}async _isClientDoneProcessing(Z){let J=0;while(!Z||J<Z){if(await new Promise((Q)=>setTimeout(Q,1)),!this._numProcessing)return!0;J++}return!1}_isEnabled(){return this.getOptions().enabled!==!1&&this._transport!==void 0}_prepareEvent(Z,J,Q,$){let Y=this.getOptions(),X=Object.keys(this._integrations);if(!J.integrations&&X?.length)J.integrations=X;if(this.emit("preprocessEvent",Z,J),!Z.type)$.setLastEventId(Z.event_id||J.event_id);return Cb(Y,Z,J,Q,this,$).then((W)=>{if(W===null)return W;this.emit("postprocessEvent",W,J),W.contexts={trace:{...W.contexts?.trace,...x7(Q)},...W.contexts};let K=p9(this,Q);return W.sdkProcessingMetadata={dynamicSamplingContext:K,...W.sdkProcessingMetadata},W})}_captureEvent(Z,J={},Q=i(),$=x()){if(M&&QF(Z))O.log(`Captured error event \`${YW(Z)[0]||"<unknown>"}\``);return this._processEvent(Z,J,Q,$).then((Y)=>{return Y.event_id},(Y)=>{if(M)if(sb(Y))O.log(Y.message);else if(ab(Y))O.warn(Y.message);else O.warn(Y);return})}_processEvent(Z,J,Q,$){let Y=this.getOptions(),{sampleRate:X}=Y,W=Qv(Z),K=QF(Z),G=`before send for type \`${Z.type||"error"}\``,H=typeof X>"u"?void 0:C6(X);if(K&&typeof H==="number"&&W1()>H)return this.recordDroppedEvent("sample_rate","error"),k4(JF(`Discarding event because it's not included in the random sample (sampling rate = ${X})`));let B=tb(Z.type);return this._prepareEvent(Z,J,Q,$).then((V)=>{if(V===null)throw this.recordDroppedEvent("event_processor",B),JF("An event processor returned `null`, will not send event.");if(J.data?.__sentry__===!0)return V;let U=ML0(this,Y,V,J);return PL0(U,G)}).then((V)=>{if(V===null){if(this.recordDroppedEvent("before_send",B),W){let D=1+(Z.spans||[]).length;this.recordDroppedEvent("before_send","span",D)}throw JF(`${G} returned \`null\`, will not send event.`)}let F=Q.getSession()||$.getSession();if(K&&F)this._updateSessionFromEvent(F,V);if(W){let w=V.sdkProcessingMetadata?.spanCountBeforeProcessing||0,D=V.spans?V.spans.length:0,L=w-D;if(L>0)this.recordDroppedEvent("before_send","span",L)}let U=V.transaction_info;if(W&&U&&V.transaction!==Z.transaction)V.transaction_info={...U,source:"custom"};return this.sendEvent(V,J),V}).then(null,(V)=>{if(sb(V)||ab(V))throw V;throw this.captureException(V,{mechanism:{handled:!1,type:"internal"},data:{__sentry__:!0},originalException:V}),XW(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event.
|
|
13
13
|
Reason: ${V}`)})}_process(Z,J){this._numProcessing++,this._promiseBuffer.add(Z).then((Q)=>{return this._numProcessing--,Q},(Q)=>{if(this._numProcessing--,Q===j3)this.recordDroppedEvent("queue_overflow",J);return Q})}_clearOutcomes(){let Z=this._outcomes;return this._outcomes={},Object.entries(Z).map(([J,Q])=>{let[$,Y]=J.split(":");return{reason:$,category:Y,quantity:Q}})}_flushOutcomes(){M&&O.log("Flushing outcomes...");let Z=this._clearOutcomes();if(Z.length===0){M&&O.log("No outcomes to send");return}if(!this._dsn){M&&O.log("No dsn provided, will not send outcomes");return}M&&O.log("Sending outcomes:",Z);let J=mb(Z,this._options.tunnel&&P6(this._dsn));this.sendEnvelope(J)}}function tb(Z){return Z==="replay_event"?"replay":Z||"error"}function PL0(Z,J){let Q=`${J} must return \`null\` or a valid event.`;if(X1(Z))return Z.then(($)=>{if(!c1($)&&$!==null)throw XW(Q);return $},($)=>{throw XW(`${J} rejected with ${$}`)});else if(!c1(Z)&&Z!==null)throw XW(Q);return Z}function ML0(Z,J,Q,$){let{beforeSend:Y,beforeSendTransaction:X,beforeSendSpan:W,ignoreSpans:K}=J,z=Q;if(QF(z)&&Y)return Y(z,$);if(Qv(z)){if(W||K){let G=lb(z);if(K?.length&&rQ(G,K))return null;if(W){let H=W(G);if(!H)uQ();else z=jZ(Q,pb(H))}if(z.spans){let H=[],B=z.spans;for(let F of B){if(K?.length&&rQ(F,K)){Xb(B,F);continue}if(W){let U=W(F);if(!U)uQ(),H.push(F);else H.push(U)}else H.push(F)}let V=z.spans.length-H.length;if(V)Z.recordDroppedEvent("before_send","span",V);z.spans=H}}if(X){if(z.spans){let G=z.spans.length;z.sdkProcessingMetadata={...Q.sdkProcessingMetadata,spanCountBeforeProcessing:G}}return X(z,$)}}return z}function QF(Z){return Z.type===void 0}function Qv(Z){return Z.type==="transaction"}function RL0(Z){let J=0;if(Z.name)J+=Z.name.length*2;return J+=8,J+$v(Z.attributes)}function kL0(Z){let J=0;if(Z.message)J+=Z.message.length*2;return J+$v(Z.attributes)}function $v(Z){if(!Z)return 0;let J=0;return Object.values(Z).forEach((Q)=>{if(Array.isArray(Q))J+=Q.length*eb(Q[0]);else if(h7(Q))J+=eb(Q);else J+=100}),J}function eb(Z){if(typeof Z==="string")return Z.length*2;else if(typeof Z==="number")return 8;else if(typeof Z==="boolean")return 4;return 0}var ob="Not capturing exception because it's already been captured.",nb="Discarded session because of missing or non-string release",Zv,Jv,CL0=5000;var Yv=q(()=>{Ab();iX();B0();z0();EV();D1();w3();tV();bX();L8();$W();ub();Z0();O8();C8();ZF();S0();vX();O6();P4();dV();QW();F8();TV();j1();N4();eV();ib();Zv=Symbol.for("SentryInternalError"),Jv=Symbol.for("SentryDoNotSendEventError")});function f4(Z,J){WW[Z]=WW[Z]||[],WW[Z].push(J)}function y4(Z,J){if(!Xv[Z]){Xv[Z]=!0;try{J()}catch(Q){M&&O.error(`Error while instrumenting ${Z}`,Q)}}}function S4(Z,J){let Q=Z&&WW[Z];if(!Q)return;for(let $ of Q)try{$(J)}catch(Y){M&&O.error(`Error while triggering instrumentation handler.
|
|
14
14
|
Type: ${Z}
|
|
15
15
|
Name: ${bQ($)}
|
|
@@ -21,23 +21,23 @@ Event: ${wZ(Z)}.
|
|
|
21
21
|
Url: ${HW(Z)}`),!0;if(!tL0(Z,J.allowUrls))return M&&O.warn(`Event dropped due to not being matched by \`allowUrls\` option.
|
|
22
22
|
Event: ${wZ(Z)}.
|
|
23
23
|
Url: ${HW(Z)}`),!0}else if(Z.type==="transaction"){if(sL0(Z,J.ignoreTransactions))return M&&O.warn(`Event dropped due to being matched by \`ignoreTransactions\` option.
|
|
24
|
-
Event: ${wZ(Z)}`),!0}return!1}function aL0(Z,J){if(!J?.length)return!1;return YW(Z).some((Q)=>qZ(Q,J))}function sL0(Z,J){if(!J?.length)return!1;let Q=Z.transaction;return Q?qZ(Q,J):!1}function rL0(Z,J){if(!J?.length)return!1;let Q=HW(Z);return!Q?!1:qZ(Q,J)}function tL0(Z,J){if(!J?.length)return!0;let Q=HW(Z);return!Q?!0:qZ(Q,J)}function eL0(Z=[]){for(let J=Z.length-1;J>=0;J--){let Q=Z[J];if(Q&&Q.filename!=="<anonymous>"&&Q.filename!=="[native code]")return Q.filename||null}return null}function HW(Z){try{let Q=[...Z.exception?.values??[]].reverse().find(($)=>$.mechanism?.parent_id===void 0&&$.stacktrace?.frames?.length)?.stacktrace?.frames;return Q?eL0(Q):null}catch{return M&&O.error(`Cannot extract url for event ${wZ(Z)}`),null}}function ZC0(Z){if(!Z.exception?.values?.length)return!1;return!Z.message&&!Z.exception.values.some((J)=>J.stacktrace||J.type&&J.type!=="Error"||J.value)}var iL0,oL0="EventFilters",v4,f8;var dv=q(()=>{z0();D1();Z0();ZF();O6();w9();iL0=[/^Script error\.?$/,/^Javascript error: Script error\.? on line 0$/,/^ResizeObserver loop completed with undelivered notifications.$/,/^Cannot redefine property: googletag$/,/^Can't find variable: gmo$/,/^undefined is not an object \(evaluating 'a\.[A-Z]'\)$/,/can't redefine non-configurable property "solana"/,/vv\(\)\.getRestrictions is not a function/,/Can't find variable: _AutofillCallbackHandler/,/Object Not Found Matching Id:\d+, MethodName:simulateEvent/,/^Java exception was raised during method invocation$/],v4=P((Z={})=>{let J;return{name:oL0,setup(Q){let $=Q.getOptions();J=gv(Z,$)},processEvent(Q,$,Y){if(!J){let X=Y.getOptions();J=gv(Z,X)}return nL0(Q,J)?null:Q}}}),f8=P((Z={})=>{return{...v4(Z),name:"InboundFilters"}})});function uv(Z,J,Q,$,Y,X){if(!Y.exception?.values||!X||!u9(X.originalException,Error))return;let W=Y.exception.values.length>0?Y.exception.values[Y.exception.values.length-1]:void 0;if(W)Y.exception.values=wF(Z,J,$,X.originalException,Q,Y.exception.values,W,0)}function wF(Z,J,Q,$,Y,X,W,K){if(X.length>=Q+1)return X;let z=[...X];if(u9($[Y],Error)){cv(W,K,$);let G=Z(J,$[Y]),H=z.length;mv(G,Y,H,K),z=wF(Z,J,Q,$[Y],Y,[G,...z],G,H)}if(lv($))$.errors.forEach((G,H)=>{if(u9(G,Error)){cv(W,K,$);let B=Z(J,G),V=z.length;mv(B,`errors[${H}]`,V,K),z=wF(Z,J,Q,G,Y,[B,...z],B,V)}});return z}function lv(Z){return Array.isArray(Z.errors)}function cv(Z,J,Q){Z.mechanism={handled:!0,type:"auto.core.linked_errors",...lv(Q)&&{is_exception_group:!0},...Z.mechanism,exception_id:J}}function mv(Z,J,Q,$){Z.mechanism={handled:!0,...Z.mechanism,type:"chained",source:J,exception_id:Q,parent_id:$}}var pv=q(()=>{S0()});var JC0="cause",QC0=5,$C0="LinkedErrors",YC0=(Z={})=>{let J=Z.limit||QC0,Q=Z.key||JC0;return{name:$C0,preprocessEvent($,Y,X){let W=X.getOptions();uv(WF,W.stackParser,Q,J,$,Y)}}},y8;var iv=q(()=>{D1();pv();KF();y8=P(YC0)});function ov(Z){let J={},Q=0;while(Q<Z.length){let $=Z.indexOf("=",Q);if($===-1)break;let Y=Z.indexOf(";",Q);if(Y===-1)Y=Z.length;else if(Y<$){Q=Z.lastIndexOf(";",$-1)+1;continue}let X=Z.slice(Q,$).trim();if(J[X]===void 0){let W=Z.slice($+1,Y).trim();if(W.charCodeAt(0)===34)W=W.slice(1,-1);try{J[X]=W.indexOf("%")!==-1?decodeURIComponent(W):W}catch{J[X]=W}}Q=Y+1}return J}var nv=()=>{};function av(Z){let J={};for(let X of Object.keys(Z))J[X.toLowerCase()]=Z[X];return jF.map((X)=>{let W=J[X.toLowerCase()],K=Array.isArray(W)?W.join(";"):W;if(X==="Forwarded")return XC0(K);return K?.split(",").map((z)=>z.trim())}).reduce((X,W)=>{if(!W)return X;return X.concat(W)},[]).find((X)=>X!==null&&WC0(X))||null}function XC0(Z){if(!Z)return null;for(let J of Z.split(";"))if(J.startsWith("for="))return J.slice(4);return null}function WC0(Z){return/(?:^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$)|(?:^(?:(?:[a-fA-F\d]{1,4}:){7}(?:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,2}|:)|(?:[a-fA-F\d]{1,4}:){4}(?:(?::[a-fA-F\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,3}|:)|(?:[a-fA-F\d]{1,4}:){3}(?:(?::[a-fA-F\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,4}|:)|(?:[a-fA-F\d]{1,4}:){2}(?:(?::[a-fA-F\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,5}|:)|(?:[a-fA-F\d]{1,4}:){1}(?:(?::[a-fA-F\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,6}|:)|(?::(?:(?::[a-fA-F\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,7}|:)))(?:%[0-9a-zA-Z]{1,})?$)/.test(Z)}var jF;var sv=q(()=>{jF=["X-Client-IP","X-Forwarded-For","Fly-Client-IP","CF-Connecting-IP","Fastly-Client-Ip","True-Client-Ip","X-Real-IP","X-Cluster-Client-IP","X-Forwarded","Forwarded-For","Forwarded","X-Vercel-Forwarded-For"]});function HC0(Z,J,Q,$){if(Z.request={...Z.request,...BC0(J,$)},$.ip){let Y=J.headers&&av(J.headers)||Q.ipAddress;if(Y)Z.user={...Z.user,ip_address:Y}}}function BC0(Z,J){let Q={},$={...Z.headers};if(J.headers){if(Q.headers=$,!J.cookies)delete $.cookie;if(!J.ip)jF.forEach((Y)=>{delete $[Y]})}if(Q.method=Z.method,J.url)Q.url=Z.url;if(J.cookies){let Y=Z.cookies||($?.cookie?ov($.cookie):void 0);Q.cookies=Y||{}}if(J.query_string)Q.query_string=Z.query_string;if(J.data)Q.data=Z.data;return Q}var KC0,zC0="RequestData",GC0=(Z={})=>{let J={...KC0,...Z.include};return{name:zC0,processEvent(Q,$,Y){let{sdkProcessingMetadata:X={}}=Q,{normalizedRequest:W,ipAddress:K}=X,z={...J,ip:J.ip??Y.getOptions().sendDefaultPii};if(W)HC0(Q,W,{ipAddress:K},z);return Q}}},S8;var rv=q(()=>{D1();nv();sv();KC0={cookies:!0,data:!0,headers:!0,query_string:!0,url:!0},S8=P(GC0)});function x4(Z){f4("console",Z),y4("console",VC0)}function VC0(){if(!("console"in d))return;V8.forEach(function(Z){if(!(Z in d.console))return;m1(d.console,Z,function(J){return G4[Z]=J,function(...Q){S4("console",{args:Q,level:Z}),G4[Z]?.apply(d.console,Q)}})})}var BW=q(()=>{Z0();R1();J1();KW()});function EZ(Z){return Z==="warn"?"warning":["fatal","error","warning","log","info","debug"].includes(Z)?Z:"log"}var VW=()=>{};function qC0(Z,J,Q){let $=EZ(J),Y=Error(),X={level:EZ(J),extra:{arguments:Z}};c0((W)=>{if(W.addEventProcessor((G)=>{return G.logger="console",i6(G,{handled:Q,type:"auto.core.capture_console"}),G}),J==="assert"){if(!Z[0]){let G=`Assertion failed: ${V4(Z.slice(1)," ")||"console.assert"}`;W.setExtra("arguments",Z.slice(1)),W.captureMessage(G,$,{captureContext:X,syntheticException:Y})}return}let K=Z.find((G)=>G instanceof Error);if(K){_(K,X);return}let z=V4(Z," ");W.captureMessage(z,$,{captureContext:X,syntheticException:Y})})}var FC0="CaptureConsole",UC0=(Z={})=>{let J=Z.levels||V8,Q=Z.handled??!0;return{name:FC0,setup($){if(!("console"in d))return;x4(({args:Y,level:X})=>{if(k()!==$||!J.includes(X))return;qC0(Y,X,Q)})}}},C3;var tv=q(()=>{B0();k1();BW();D1();Z0();O6();VW();w9();J1();C3=P(UC0)});function DC0(Z,J){if(!J)return!1;if(OC0(Z,J))return!0;if(LC0(Z,J))return!0;return!1}function OC0(Z,J){let Q=Z.message,$=J.message;if(!Q&&!$)return!1;if(Q&&!$||!Q&&$)return!1;if(Q!==$)return!1;if(!Jx(Z,J))return!1;if(!Zx(Z,J))return!1;return!0}function LC0(Z,J){let Q=ev(J),$=ev(Z);if(!Q||!$)return!1;if(Q.type!==$.type||Q.value!==$.value)return!1;if(!Jx(Z,J))return!1;if(!Zx(Z,J))return!1;return!0}function Zx(Z,J){let Q=SX(Z),$=SX(J);if(!Q&&!$)return!0;if(Q&&!$||!Q&&$)return!1;if(Q=Q,$=$,$.length!==Q.length)return!1;for(let Y=0;Y<$.length;Y++){let X=$[Y],W=Q[Y];if(X.filename!==W.filename||X.lineno!==W.lineno||X.colno!==W.colno||X.function!==W.function)return!1}return!0}function Jx(Z,J){let Q=Z.fingerprint,$=J.fingerprint;if(!Q&&!$)return!0;if(Q&&!$||!Q&&$)return!1;Q=Q,$=$;try{return Q.join("")===$.join("")}catch{return!1}}function ev(Z){return Z.exception?.values?.[0]}var wC0="Dedupe",jC0=()=>{let Z;return{name:wC0,processEvent(J){if(J.type)return J;try{if(DC0(J,Z))return M&&O.warn("Event dropped due to being a duplicate of previously captured event."),null}catch{}return Z=J}}},P3;var Qx=q(()=>{z0();D1();Z0();v7();P3=P(jC0)});function MC0(Z,J={},Q,$,Y){if(!J.originalException||!M1(J.originalException))return Z;let X=J.originalException.name||J.originalException.constructor.name,W=$x(J.originalException,$,Y);if(W){let K={...Z.contexts},z=_0(W,Q);if(c1(z))T0(z,"__sentry_skip_normalization__",!0),K[X]=z;return{...Z,contexts:K}}return Z}function $x(Z,J,Q){try{let $=["name","message","stack","line","column","fileName","lineNumber","columnNumber","toJSON"],Y={};for(let X of Object.keys(Z)){if($.indexOf(X)!==-1)continue;let W=Z[X];Y[X]=M1(W)||typeof W==="string"?Q?p6(`${W}`,Q):`${W}`:W}if(J&&Z.cause!==void 0)if(M1(Z.cause)){let X=Z.cause.name||Z.cause.constructor.name;Y.cause={[X]:$x(Z.cause,!1,Q)}}else Y.cause=Z.cause;if(typeof Z.toJSON==="function"){let X=Z.toJSON();for(let W of Object.keys(X)){let K=X[W];Y[W]=M1(K)?K.toString():K}}return Y}catch($){M&&O.error("Unable to extract extra data from the Error object:",$)}return null}var CC0="ExtraErrorData",PC0=(Z={})=>{let{depth:J=3,captureErrorCause:Q=!0}=Z;return{name:CC0,processEvent($,Y,X){let{maxValueLength:W}=X.getOptions();return MC0($,Y,J,Q,W)}}},M3;var Yx=q(()=>{z0();D1();Z0();S0();RZ();R1();w9();M3=P(PC0)});function RC0(Z,J){let Q=0;for(let $=Z.length-1;$>=0;$--){let Y=Z[$];if(Y===".")Z.splice($,1);else if(Y==="..")Z.splice($,1),Q++;else if(Q)Z.splice($,1),Q--}if(J)for(;Q--;Q)Z.unshift("..");return Z}function Wx(Z){let J=Z.length>1024?`<truncated>${Z.slice(-1024)}`:Z,Q=kC0.exec(J);return Q?Q.slice(1):[]}function DF(...Z){let J="",Q=!1;for(let $=Z.length-1;$>=-1&&!Q;$--){let Y=$>=0?Z[$]:"/";if(!Y)continue;J=`${Y}/${J}`,Q=Y.charAt(0)==="/"}return J=RC0(J.split("/").filter(($)=>!!$),!Q).join("/"),(Q?"/":"")+J||"."}function Xx(Z){let J=0;for(;J<Z.length;J++)if(Z[J]!=="")break;let Q=Z.length-1;for(;Q>=0;Q--)if(Z[Q]!=="")break;if(J>Q)return[];return Z.slice(J,Q-J+1)}function OF(Z,J){Z=DF(Z).slice(1),J=DF(J).slice(1);let Q=Xx(Z.split("/")),$=Xx(J.split("/")),Y=Math.min(Q.length,$.length),X=Y;for(let K=0;K<Y;K++)if(Q[K]!==$[K]){X=K;break}let W=[];for(let K=X;K<Q.length;K++)W.push("..");return W=W.concat($.slice(X)),W.join("/")}function LF(Z){let J=Wx(Z),Q=J[0]||"",$=J[1];if(!Q&&!$)return".";if($)$=$.slice(0,$.length-1);return Q+$}function CF(Z,J){let Q=Wx(Z)[2]||"";if(J&&Q.slice(J.length*-1)===J)Q=Q.slice(0,Q.length-J.length);return Q}var kC0;var PF=q(()=>{kC0=/^(\S+:\\|\/?)([\s\S]*?)((?:\.{1,2}|[^/\\]+?|)(\.[^./\\]*|))(?:[/\\]*)$/});function AC0({isBrowser:Z,root:J,prefix:Q}){return($)=>{if(!$.filename)return $;let Y=/^[a-zA-Z]:\\/.test($.filename)||$.filename.includes("\\")&&!$.filename.includes("/"),X=/^\//.test($.filename);if(Z){if(J){let W=$.filename;if(W.indexOf(J)===0)$.filename=W.replace(J,Q)}}else if(Y||X){let W=Y?$.filename.replace(/^[a-zA-Z]:/,"").replace(/\\/g,"/"):$.filename,K=J?OF(J,W):CF(W);$.filename=`${Q}${K}`}return $}}var NC0="RewriteFrames",R3;var Kx=q(()=>{D1();PF();J1();R3=P((Z={})=>{let J=Z.root,Q=Z.prefix||"app:///",$="window"in d&&!!d.window,Y=Z.iteratee||AC0({isBrowser:$,root:J,prefix:Q});function X(K){try{return{...K,exception:{...K.exception,values:K.exception.values.map((z)=>({...z,...z.stacktrace&&{stacktrace:W(z.stacktrace)}}))}}}catch{return K}}function W(K){return{...K,frames:K?.frames?.map((z)=>Y(z))}}return{name:NC0,processEvent(K){let z=K;if(K.exception&&Array.isArray(K.exception.values))z=X(z);return z}}})});function FW(Z){try{Z.__SENTRY_INSTRUMENTED__=!0}catch{}}function UW(Z){try{return Z.__SENTRY_INSTRUMENTED__}catch{return!1}}function fC0(Z,J={}){switch(Z){case"GET":return"select";case"POST":if(J.Prefer?.includes("resolution="))return"upsert";else return"insert";case"PATCH":return"update";case"DELETE":return"delete";default:return"<unknown-op>"}}function yC0(Z,J){if(J===""||J==="*")return"select(*)";if(Z==="select")return`select(${J})`;if(Z==="or"||Z.endsWith(".or"))return`${Z}${J}`;let[Q,...$]=J.split("."),Y;if(Q?.startsWith("fts"))Y="textSearch";else if(Q?.startsWith("plfts"))Y="textSearch[plain]";else if(Q?.startsWith("phfts"))Y="textSearch[phrase]";else if(Q?.startsWith("wfts"))Y="textSearch[websearch]";else Y=Q&&EC0[Q]||"filter";return`${Y}(${Z}, ${$.join(".")})`}function zx(Z,J=!1){return new Proxy(Z,{apply(Q,$,Y){return r0({name:`auth ${J?"(admin) ":""}${Z.name}`,attributes:{[f]:"auto.db.supabase",[g]:"db","db.system":"postgresql","db.operation":`auth.${J?"admin.":""}${Z.name}`}},(X)=>{return Reflect.apply(Q,$,Y).then((W)=>{if(W&&typeof W==="object"&&"error"in W&&W.error)X.setStatus({code:a}),_(W.error,{mechanism:{handled:!1,type:"auto.db.supabase.auth"}});else X.setStatus({code:UZ});return X.end(),W}).catch((W)=>{throw X.setStatus({code:a}),X.end(),_(W,{mechanism:{handled:!1,type:"auto.db.supabase.auth"}}),W}).then(...Y)})}})}function SC0(Z){let J=Z.auth;if(!J||UW(Z.auth))return;for(let Q of IC0){let $=J[Q];if(!$)continue;if(typeof Z.auth[Q]==="function")Z.auth[Q]=zx($)}for(let Q of TC0){let $=J.admin[Q];if(!$)continue;if(typeof Z.auth.admin[Q]==="function")Z.auth.admin[Q]=zx($,!0)}FW(Z.auth)}function _C0(Z){if(UW(Z.prototype.from))return;Z.prototype.from=new Proxy(Z.prototype.from,{apply(J,Q,$){let Y=Reflect.apply(J,Q,$),X=Y.constructor;return bC0(X),Y}}),FW(Z.prototype.from)}function hC0(Z){if(UW(Z.prototype.then))return;Z.prototype.then=new Proxy(Z.prototype.then,{apply(J,Q,$){let Y=Gx,X=Q,W=fC0(X.method,X.headers);if(!Y.includes(W))return Reflect.apply(J,Q,$);if(!X?.url?.pathname||typeof X.url.pathname!=="string")return Reflect.apply(J,Q,$);let K=X.url.pathname.split("/"),z=K.length>0?K[K.length-1]:"",G=[];for(let[F,U]of X.url.searchParams.entries())G.push(yC0(F,U));let H=Object.create(null);if(c1(X.body))for(let[F,U]of Object.entries(X.body))H[F]=U;let B=`${W==="select"?"":`${W}${H?"(...) ":""}`}${G.join(" ")} from(${z})`,V={"db.table":z,"db.schema":X.schema,"db.url":X.url.origin,"db.sdk":X.headers["X-Client-Info"],"db.system":"postgresql","db.operation":W,[f]:"auto.db.supabase",[g]:"db"};if(G.length)V["db.query"]=G;if(Object.keys(H).length)V["db.body"]=H;return r0({name:B,attributes:V},(F)=>{return Reflect.apply(J,Q,[]).then((U)=>{if(F){if(U&&typeof U==="object"&&"status"in U)l9(F,U.status||500);F.end()}if(U.error){let L=Error(U.error.message);if(U.error.code)L.code=U.error.code;if(U.error.details)L.details=U.error.details;let C={};if(G.length)C.query=G;if(Object.keys(H).length)C.body=H;_(L,(R)=>{return R.addEventProcessor((T)=>{return i6(T,{handled:!1,type:"auto.db.supabase.postgres"}),T}),R.setContext("supabase",C),R})}let w={type:"supabase",category:`db.${W}`,message:B},D={};if(G.length)D.query=G;if(Object.keys(H).length)D.body=H;if(Object.keys(D).length)w.data=D;return N1(w),U},(U)=>{if(F)l9(F,500),F.end();throw U}).then(...$)})}}),FW(Z.prototype.then)}function bC0(Z){for(let J of Gx){if(UW(Z.prototype[J]))continue;Z.prototype[J]=new Proxy(Z.prototype[J],{apply(Q,$,Y){let X=Reflect.apply(Q,$,Y),W=X.constructor;return M&&O.log(`Instrumenting ${J} operation's PostgRESTFilterBuilder`),hC0(W),X}}),FW(Z.prototype[J])}}var IC0,TC0,EC0,Gx,g4=(Z)=>{if(!Z){M&&O.warn("Supabase integration was not installed because no Supabase client was provided.");return}let J=Z.constructor===Function?Z:Z.constructor;_C0(J),SC0(Z)},vC0="Supabase",xC0=(Z)=>{return{setupOnce(){g4(Z)},name:vC0}},k3;var Hx=q(()=>{GW();z0();k1();D1();m0();Z0();O6();S0();w1();M6();IC0=["reauthenticate","signInAnonymously","signInWithOAuth","signInWithIdToken","signInWithOtp","signInWithPassword","signInWithSSO","signOut","signUp","verifyOtp"],TC0=["createUser","deleteUser","listUsers","getUserById","updateUserById","inviteUserByEmail"],EC0={eq:"eq",neq:"neq",gt:"gt",gte:"gte",lt:"lt",lte:"lte",like:"like","like(all)":"likeAllOf","like(any)":"likeAnyOf",ilike:"ilike","ilike(all)":"ilikeAllOf","ilike(any)":"ilikeAnyOf",is:"is",in:"in",cs:"contains",cd:"containedBy",sr:"rangeGt",nxl:"rangeGte",sl:"rangeLt",nxr:"rangeLte",adj:"rangeAdjacent",ov:"overlaps",fts:"",plfts:"plain",phfts:"phrase",wfts:"websearch",not:"not"},Gx=["select","insert","upsert","update","delete"];k3=P((Z)=>{return xC0(Z.supabaseClient)})});function kF(Z,J){if(!Z||typeof Z!=="function")return M&&O.warn("instrumentPostgresJsSql: provided value is not a valid postgres.js sql instance"),Z;return RF(Z,{requireParentSpan:!0,...J})}function RF(Z,J,Q){if(Z[MF])return Z;let $=new Proxy(Z,{apply(Y,X,W){let K=Reflect.apply(Y,X,W);if(K&&typeof K==="object"&&"handle"in K)Vx(K,$,J);return K},get(Y,X){let W=Y[X];if(typeof X!=="string"||typeof W!=="function")return W;if(X==="unsafe"||X==="file")return cC0(W,Y,$,J);if(X==="begin"||X==="reserve")return mC0(W,Y,$,J);return W}});if(Q)$[qW]=Q;else oC0(Z,$);return Z[MF]=!0,$[MF]=!0,$}function cC0(Z,J,Q,$){return function(...Y){let X=Reflect.apply(Z,J,Y);if(X&&typeof X==="object"&&"handle"in X)Vx(X,Q,$);return X}}function mC0(Z,J,Q,$){return function(...Y){let X=Q[qW];if(typeof Y[Y.length-1]!=="function"){let H=Reflect.apply(Z,J,Y);if(H&&typeof H.then==="function")return H.then((B)=>{return RF(B,$,X)});return H}let K=Y.length===1?Y[0]:Y[1],z=function(H){let B=RF(H,$,X);return K(B)},G=Y.length===1?[z]:[Y[0],z];return Reflect.apply(Z,J,G)}}function Vx(Z,J,Q){if(Z.handle?.__sentryWrapped)return;Z[dC0]=!0;let $=Z.handle,Y=async function(...X){if(!uC0(Q))return $.apply(this,X);let W=lC0(Z.strings),K=pC0(W);return h0({name:K||"postgresjs.query",op:"db"},(z)=>{z.setAttribute(f,"auto.db.postgresjs"),z.setAttributes({"db.system.name":"postgres","db.query.text":K});let G=J?J[qW]:void 0;if(iC0(z,G),Q.requestHook)try{Q.requestHook(z,K,G)}catch(B){z.setAttribute("sentry.hook.error","requestHook failed"),M&&O.error("Error in requestHook for PostgresJs instrumentation:",B)}let H=this;H.resolve=new Proxy(H.resolve,{apply:(B,V,F)=>{try{Bx(z,K,F?.[0]?.command),z.end()}catch(U){M&&O.error("Error ending span in resolve callback:",U)}return Reflect.apply(B,V,F)}}),H.reject=new Proxy(H.reject,{apply:(B,V,F)=>{try{z.setStatus({code:a,message:F?.[0]?.message||"unknown_error"}),z.setAttribute("db.response.status_code",F?.[0]?.code||"unknown"),z.setAttribute("error.type",F?.[0]?.name||"unknown"),Bx(z,K),z.end()}catch(U){M&&O.error("Error ending span in reject callback:",U)}return Reflect.apply(B,V,F)}});try{return $.apply(this,X)}catch(B){throw z.setStatus({code:a,message:B instanceof Error?B.message:"unknown_error"}),z.end(),B}})};Y.__sentryWrapped=!0,Z.handle=Y}function uC0(Z){return s0()!==void 0||!Z.requireParentSpan}function lC0(Z){if(!Z?.length)return;if(Z.length===1)return Z[0]||void 0;return Z.reduce((J,Q,$)=>$===0?Q:`${J}$${$}${Q}`,"")}function pC0(Z){if(!Z)return"Unknown SQL Query";return Z.replace(/--.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/;\s*$/,"").replace(/\s+/g," ").trim().replace(/\bX'[0-9A-Fa-f]*'/gi,"?").replace(/\bB'[01]*'/gi,"?").replace(/'(?:[^']|'')*'/g,"?").replace(/\b0x[0-9A-Fa-f]+/gi,"?").replace(/\b(?:TRUE|FALSE)\b/gi,"?").replace(/-?\b\d+\.?\d*[eE][+-]?\d+\b/g,"?").replace(/-?\b\d+\.\d+\b/g,"?").replace(/-?\.\d+\b/g,"?").replace(/(?<!\$)-?\b\d+\b/g,"?").replace(/\bIN\b\s*\(\s*\?(?:\s*,\s*\?)*\s*\)/gi,"IN (?)").replace(/\bIN\b\s*\(\s*\$\d+(?:\s*,\s*\$\d+)*\s*\)/gi,"IN ($?)")}function iC0(Z,J){if(!J)return;if(J.ATTR_DB_NAMESPACE)Z.setAttribute("db.namespace",J.ATTR_DB_NAMESPACE);if(J.ATTR_SERVER_ADDRESS)Z.setAttribute("server.address",J.ATTR_SERVER_ADDRESS);if(J.ATTR_SERVER_PORT!==void 0){let Q=parseInt(J.ATTR_SERVER_PORT,10);if(!isNaN(Q))Z.setAttribute("server.port",Q)}}function Bx(Z,J,Q){if(Q){Z.setAttribute("db.operation.name",Q);return}let $=J?.match(gC0);if($?.[1])Z.setAttribute("db.operation.name",$[1].toUpperCase())}function oC0(Z,J){let Q=Z;if(!Q.options||typeof Q.options!=="object")return;let $=Q.options,Y=$.host?.[0]||"localhost",X=$.port?.[0]||5432,W={ATTR_DB_NAMESPACE:typeof $.database==="string"&&$.database!==""?$.database:void 0,ATTR_SERVER_ADDRESS:Y,ATTR_SERVER_PORT:String(X)};J[qW]=W}var gC0,qW,MF,dC0;var Fx=q(()=>{z0();m0();Z0();j1();w1();M6();gC0=/^(SELECT|INSERT|UPDATE|DELETE|CREATE|DROP|ALTER)/i,qW=Symbol("sentryPostgresConnectionContext"),MF=Symbol.for("sentry.instrumented.postgresjs"),dC0=Symbol.for("sentry.query.from.instrumented.sql")});function sC0(Z){return M1(Z)&&Z.name==="ZodError"&&Array.isArray(Z.issues)}function rC0(Z){return{...Z,path:"path"in Z&&Array.isArray(Z.path)?Z.path.join("."):void 0,keys:"keys"in Z?JSON.stringify(Z.keys):void 0,unionErrors:"unionErrors"in Z?JSON.stringify(Z.unionErrors):void 0}}function tC0(Z){return Z.map((J)=>{if(typeof J==="number")return"<array>";else return J}).join(".")}function eC0(Z){let J=new Set;for(let $ of Z.issues){let Y=tC0($.path);if(Y.length>0)J.add(Y)}let Q=Array.from(J);if(Q.length===0){let $="variable";if(Z.issues.length>0){let Y=Z.issues[0];if(Y!==void 0&&"expected"in Y&&typeof Y.expected==="string")$=Y.expected}return`Failed to validate ${$}`}return`Failed to validate keys: ${p6(Q.join(", "),100)}`}function ZP0(Z,J=!1,Q,$){if(!Q.exception?.values||!$.originalException||!sC0($.originalException)||$.originalException.issues.length===0)return Q;try{let X=(J?$.originalException.issues:$.originalException.issues.slice(0,Z)).map(rC0);if(J){if(!Array.isArray($.attachments))$.attachments=[];$.attachments.push({filename:"zod_issues.json",data:JSON.stringify({issues:X})})}return{...Q,exception:{...Q.exception,values:[{...Q.exception.values[0],value:eC0($.originalException)},...Q.exception.values.slice(1)]},extra:{...Q.extra,"zoderror.issues":X.slice(0,Z)}}}catch(Y){return{...Q,extra:{...Q.extra,"zoderrors sentry integration parse error":{message:"an exception was thrown while processing ZodError within applyZodErrorsToEvent()",error:Y instanceof Error?`${Y.name}: ${Y.message}
|
|
25
|
-
${Y.stack}`:"unknown"}}}}}var nC0=10,aC0="ZodErrors",JP0=(Z={})=>{let J=Z.limit??nC0;return{name:aC0,processEvent(Q,$){return ZP0(J,Z.saveZodIssuesAsAttachment,Q,$)}}},N3;var Ux=q(()=>{D1();S0();w9();N3=P(JP0)});function $P0(Z,J){let Q={category:"console",data:{arguments:J,logger:"console"},level:EZ(Z),message:qx(J)};if(Z==="assert")if(J[0]===!1){let $=J.slice(1);Q.message=$.length>0?`Assertion failed: ${qx($)}`:"Assertion failed",Q.data.arguments=$}else return;N1(Q,{input:J,level:Z})}function qx(Z){return"util"in d&&typeof d.util.format==="function"?d.util.format(...Z):V4(Z," ")}var QP0="Console",_8;var wx=q(()=>{GW();B0();BW();D1();Z0();VW();w9();J1();_8=P((Z={})=>{let J=new Set(Z.levels||V8);return{name:QP0,setup(Q){x4(({args:$,level:Y})=>{if(k()!==Q||!J.has(Y))return;$P0(Y,$)})}}})});function jW(Z){let Q=i().getScopeData().contexts.flags,$=Q?Q.values:[];if(!$.length)return Z;if(Z.contexts===void 0)Z.contexts={};return Z.contexts.flags={values:[...$]},Z}function DW(Z,J,Q=YP0){let $=i().getScopeData().contexts;if(!$.flags)$.flags={values:[]};let Y=$.flags.values;WP0(Y,Z,J,Q)}function WP0(Z,J,Q,$){if(typeof Q!=="boolean")return;if(Z.length>$){M&&O.error(`[Feature Flags] insertToFlagBuffer called on a buffer larger than maxSize=${$}`);return}let Y=Z.findIndex((X)=>X.flag===J);if(Y!==-1)Z.splice(Y,1);if(Z.length===$)Z.shift();Z.push({flag:J,result:Q})}function OW(Z,J,Q=XP0){if(typeof J!=="boolean")return;let $=s0();if(!$)return;let Y=v($).data;if(`${wW}${Z}`in Y){$.setAttribute(`${wW}${Z}`,J);return}if(Object.keys(Y).filter((W)=>W.startsWith(wW)).length<Q)$.setAttribute(`${wW}${Z}`,J)}var YP0=100,XP0=10,wW="flag.evaluation.";var NF=q(()=>{B0();z0();Z0();j1()});var A3;var jx=q(()=>{D1();NF();A3=P(()=>{return{name:"FeatureFlags",processEvent(Z,J,Q){return jW(Z)},addFeatureFlag(Z,J){DW(Z,J),OW(Z,J)}}})});function Dx(Z){return function(...J){let Q=J[0],$=Z.apply(this,J);if(typeof Q==="string"&&typeof $==="boolean")DW(Q,$),OW(Q,$);return $}}var AF;var Ox=q(()=>{D1();NF();R1();AF=P(({growthbookClass:Z})=>{return{name:"GrowthBook",setupOnce(){let J=Z.prototype;if(typeof J.isOn==="function")m1(J,"isOn",Dx);if(typeof J.getFeatureValue==="function")m1(J,"getFeatureValue",Dx)},processEvent(J,Q,$){return jW(J)}}})});var KP0="ConversationId",zP0=()=>{return{name:KP0,setup(Z){Z.on("spanStart",(J)=>{let Q=i().getScopeData(),$=x().getScopeData(),Y=Q.conversationId||$.conversationId;if(Y)J.setAttribute(jV,Y)})}}},IF;var Lx=q(()=>{B0();D1();m0();IF=P(zP0)});function Cx(Z){return!!Z&&typeof Z._profiler<"u"&&typeof Z._profiler.start==="function"&&typeof Z._profiler.stop==="function"}function GP0(){let Z=k();if(!Z){M&&O.warn("No Sentry client available, profiling is not started");return}let J=Z.getIntegrationByName("ProfilingIntegration");if(!J){M&&O.warn("ProfilingIntegration is not available");return}if(!Cx(J)){M&&O.warn("Profiler is not available on profiling integration.");return}J._profiler.start()}function HP0(){let Z=k();if(!Z){M&&O.warn("No Sentry client available, profiling is not started");return}let J=Z.getIntegrationByName("ProfilingIntegration");if(!J){M&&O.warn("ProfilingIntegration is not available");return}if(!Cx(J)){M&&O.warn("Profiler is not available on profiling integration.");return}J._profiler.stop()}var I3;var Px=q(()=>{B0();z0();Z0();I3={startProfiler:GP0,stopProfiler:HP0}});function BP0(Z){if(typeof Z==="object"&&Z!==null&&"ok"in Z&&!Z.ok&&"error"in Z)_(Z.error,Mx)}function T3(Z={}){return async function(J){let{path:Q,type:$,next:Y,rawInput:X,getRawInput:W}=J,z=k()?.getOptions(),G={procedure_path:Q,procedure_type:$};if(T0(G,"__sentry_override_normalization_depth__",1+(z?.normalizeDepth??5)),Z.attachRpcInput!==void 0?Z.attachRpcInput:z?.sendDefaultPii){if(X!==void 0)G.input=_0(X);if(W!==void 0&&typeof W==="function")try{let H=await W();G.input=_0(H)}catch{}}return l1((H)=>{return H.setContext("trpc",G),h0({name:`trpc/${Q}`,op:"rpc.server",attributes:{[H0]:"route",[f]:"auto.rpc.trpc"},forceTransaction:!!Z.forceTransaction},async(B)=>{try{let V=await Y();return BP0(V),B.end(),V}catch(V){throw _(V,Mx),B.end(),V}})})}}var Mx;var Rx=q(()=>{B0();k1();m0();R1();RZ();M6();Mx={mechanism:{handled:!1,type:"auto.rpc.trpc.middleware"}}});function h8(Z,J,Q){try{if(!k())return;let Y=s0();if(Y?.isRecording())Y.setStatus({code:a,message:"internal_error"});_(Z,{mechanism:{type:"auto.ai.mcp_server",handled:!1,data:{error_type:J||"handler_execution",...Q}}})}catch{}}var TF=q(()=>{B0();k1();j1();w1()});function EF(Z,J){m1(Z,J,(Q)=>{return function($,...Y){let X=Y[Y.length-1];if(typeof X!=="function")return Q.call(this,$,...Y);let W=VP0(X,J,$);return Q.call(this,$,...Y.slice(0,-1),W)}})}function VP0(Z,J,Q){return function(...$){try{return FP0.call(this,Z,J,Q,$)}catch(Y){return M&&O.warn("MCP handler wrapping failed:",Y),Z.apply(this,$)}}}function FP0(Z,J,Q,$){try{let Y=Z.apply(this,$);if(Y&&typeof Y==="object"&&typeof Y.then==="function")return Promise.resolve(Y).catch((X)=>{throw kx(X,J,Q),X});return Y}catch(Y){throw kx(Y,J,Q),Y}}function kx(Z,J,Q){try{let $={};if(J==="tool")if($.tool_name=Q,Z.name==="ProtocolValidationError"||Z.message.includes("validation")||Z.message.includes("protocol"))h8(Z,"validation",$);else if(Z.name==="ServerTimeoutError"||Z.message.includes("timed out")||Z.message.includes("timeout"))h8(Z,"timeout",$);else h8(Z,"tool_execution",$);else if(J==="resource")$.resource_uri=Q,h8(Z,"resource_execution",$);else if(J==="prompt")$.prompt_name=Q,h8(Z,"prompt_execution",$)}catch($){}}function UP0(Z){EF(Z,"tool")}function qP0(Z){EF(Z,"resource")}function wP0(Z){EF(Z,"prompt")}function Nx(Z){UP0(Z),qP0(Z),wP0(Z)}var Ax=q(()=>{z0();Z0();R1();TF()});var fF="mcp.method.name",Ix="mcp.request.id",Tx="mcp.session.id",Ex="mcp.transport",yF="mcp.server.name",SF="mcp.server.title",_F="mcp.server.version",d4="mcp.protocol.version",fx="mcp.tool.name",fZ="mcp.resource.uri",yx="mcp.prompt.name",Sx="mcp.tool.result.is_error",_x="mcp.tool.result.content_count",hx="mcp.prompt.result.description",bx="mcp.prompt.result.message_count",LW="mcp.request.argument",vx="mcp.logging.level",xx="mcp.logging.logger",gx="mcp.logging.data_type",dx="mcp.logging.message",cx="network.transport",mx="network.protocol.version",CW="client.address",PW="client.port",hF="mcp.server",ux="mcp.notification.client_to_server",lx="mcp.notification.server_to_client",px="auto.function.mcp_server",bF="auto.mcp.notification",ix="route";var b8=()=>{};function ox(Z){return typeof Z==="object"&&Z!==null&&"jsonrpc"in Z&&Z.jsonrpc==="2.0"&&"method"in Z&&"id"in Z}function vF(Z){return typeof Z==="object"&&Z!==null&&"jsonrpc"in Z&&Z.jsonrpc==="2.0"&&"method"in Z&&!("id"in Z)}function nx(Z){return typeof Z==="object"&&Z!==null&&"jsonrpc"in Z&&Z.jsonrpc==="2.0"&&"id"in Z&&(("result"in Z)||("error"in Z))}function ax(Z){if(typeof Z==="object"&&Z!==null&&"resource"in Z&&"tool"in Z&&"prompt"in Z&&"connect"in Z)return!0;return M&&O.warn("Did not patch MCP server. Interface is incompatible."),!1}function R6(Z){return Z!=null&&typeof Z==="object"}var E3=q(()=>{z0();Z0()});function jP0(Z,J){let Q={[_x]:Z.length};for(let[$,Y]of Z.entries()){if(!R6(Y))continue;let X=Z.length===1?"mcp.tool.result":`mcp.tool.result.${$}`;if(typeof Y.type==="string")Q[`${X}.content_type`]=Y.type;if(J){let W=(z,G)=>{if(typeof G==="string")Q[`${X}.${z}`]=G};if(W("mime_type",Y.mimeType),W("uri",Y.uri),W("name",Y.name),typeof Y.text==="string")Q[`${X}.content`]=Y.text;if(typeof Y.data==="string")Q[`${X}.data_size`]=Y.data.length;let K=Y.resource;if(R6(K))W("resource_uri",K.uri),W("resource_mime_type",K.mimeType)}}return Q}function sx(Z,J){if(!R6(Z))return{};let Q=Array.isArray(Z.content)?jP0(Z.content,J):{};if(typeof Z.isError==="boolean")Q[Sx]=Z.isError;return Q}function rx(Z,J){let Q={};if(!R6(Z))return Q;if(J&&typeof Z.description==="string")Q[hx]=Z.description;if(Array.isArray(Z.messages)){if(Q[bx]=Z.messages.length,J){let $=Z.messages;for(let[Y,X]of $.entries()){if(!R6(X))continue;let W=$.length===1?"mcp.prompt.result":`mcp.prompt.result.${Y}`;if(((z,G)=>{if(typeof G==="string"){let H=$.length===1?`${W}.message_${z}`:`${W}.${z}`;Q[H]=G}})("role",X.role),R6(X.content)){let z=X.content;if(typeof z.text==="string"){let G=$.length===1?`${W}.message_content`:`${W}.content`;Q[G]=z.text}}}}}return Q}var tx=q(()=>{b8();E3()});function MW(Z){let J=Z.sessionId;if(J)return xF.get(J);return ex.get(Z)}function Zg(Z,J){let Q=Z.sessionId;if(Q)xF.set(Q,J);else ex.set(Z,J)}function Jg(Z,J){Zg(Z,J)}function Qg(Z,J){let Q=MW(Z)||{};Zg(Z,{...Q,...J})}function $g(Z){return MW(Z)?.clientInfo}function Yg(Z){return MW(Z)?.protocolVersion}function Xg(Z){return MW(Z)}function Wg(Z){let J=Z.sessionId;if(J)xF.delete(J)}var xF,ex;var gF=q(()=>{xF=new Map,ex=new WeakMap});function Kg(Z){let J={};if(R6(Z)){if(typeof Z.name==="string")J.name=Z.name;if(typeof Z.title==="string")J.title=Z.title;if(typeof Z.version==="string")J.version=Z.version}return J}function zg(Z){let J={};if(R6(Z.params)){if(typeof Z.params.protocolVersion==="string")J.protocolVersion=Z.params.protocolVersion;if(Z.params.clientInfo)J.clientInfo=Kg(Z.params.clientInfo)}return J}function RW(Z){let J={};if(R6(Z)){if(typeof Z.protocolVersion==="string")J.protocolVersion=Z.protocolVersion;if(Z.serverInfo)J.serverInfo=Kg(Z.serverInfo)}return J}function DP0(Z){let J=$g(Z),Q={};if(J?.name)Q["mcp.client.name"]=J.name;if(J?.title)Q["mcp.client.title"]=J.title;if(J?.version)Q["mcp.client.version"]=J.version;return Q}function Gg(Z){let J={};if(Z?.name)J["mcp.client.name"]=Z.name;if(Z?.title)J["mcp.client.title"]=Z.title;if(Z?.version)J["mcp.client.version"]=Z.version;return J}function OP0(Z){let J=Xg(Z)?.serverInfo,Q={};if(J?.name)Q[yF]=J.name;if(J?.title)Q[SF]=J.title;if(J?.version)Q[_F]=J.version;return Q}function Hg(Z){let J={};if(Z?.name)J[yF]=Z.name;if(Z?.title)J[SF]=Z.title;if(Z?.version)J[_F]=Z.version;return J}function LP0(Z){return{address:Z?.requestInfo?.remoteAddress||Z?.clientAddress||Z?.request?.ip||Z?.request?.connection?.remoteAddress,port:Z?.requestInfo?.remotePort||Z?.clientPort||Z?.request?.connection?.remotePort}}function CP0(Z){if(!Z?.constructor)return{mcpTransport:"unknown",networkTransport:"unknown"};let J=typeof Z.constructor?.name==="string"?Z.constructor.name:"unknown",Q="unknown",$=J.toLowerCase();if($.includes("stdio"))Q="pipe";else if($.includes("http")||$.includes("sse"))Q="tcp";return{mcpTransport:J,networkTransport:Q}}function dF(Z,J){let Q=Z&&"sessionId"in Z?Z.sessionId:void 0,$=J?LP0(J):{},{mcpTransport:Y,networkTransport:X}=CP0(Z),W=DP0(Z),K=OP0(Z),z=Yg(Z);return{...Q&&{[Tx]:Q},...$.address&&{[CW]:$.address},...$.port&&{[PW]:$.port},[Ex]:Y,[cx]:X,[mx]:"2.0",...z&&{[d4]:z},...W,...K}}var kW=q(()=>{b8();gF();E3()});function Bg(Z){let J=Z.sessionId;if(J){let $=NW.get(J);if(!$)$=new Map,NW.set(J,$);return $}let Q=cF.get(Z);if(!Q)Q=new Map,cF.set(Z,Q);return Q}function Vg(Z,J,Q,$){Bg(Z).set(J,{span:Q,method:$,startTime:Date.now()})}function Fg(Z,J,Q,$){let Y=Bg(Z),X=Y.get(J);if(X){let{span:W,method:K}=X;if(K==="initialize"){let z=RW(Q),H={...Hg(z.serverInfo)};if(z.protocolVersion)H[d4]=z.protocolVersion;W.setAttributes(H)}else if(K==="tools/call"){let z=sx(Q,$.recordOutputs);W.setAttributes(z)}else if(K==="prompts/get"){let z=rx(Q,$.recordOutputs);W.setAttributes(z)}W.end(),Y.delete(J)}}function Ug(Z){let J=Z.sessionId;if(J){let $=NW.get(J);if($){for(let[,Y]of $)Y.span.setStatus({code:a,message:"cancelled"}),Y.span.end();NW.delete(J)}return}let Q=cF.get(Z);if(Q){for(let[,$]of Q)$.span.setStatus({code:a,message:"cancelled"}),$.span.end();Q.clear()}}var NW,cF;var qg=q(()=>{w1();b8();tx();kW();NW=new Map,cF=new WeakMap});function f3(Z,J){let Q=wg[Z];if(!Q)return{attributes:{}};let $=Q.targetField&&typeof J?.[Q.targetField]==="string"?J[Q.targetField]:void 0;return{target:$,attributes:$&&Q.targetAttribute?{[Q.targetAttribute]:$}:{}}}function jg(Z,J){let Q={},$=wg[Z];if(!$)return Q;if($.captureArguments&&$.argumentsField&&J?.[$.argumentsField]){let Y=J[$.argumentsField];if(typeof Y==="object"&&Y!==null)for(let[X,W]of Object.entries(Y))Q[`${LW}.${X.toLowerCase()}`]=JSON.stringify(W)}if($.captureUri&&J?.uri)Q[`${LW}.uri`]=JSON.stringify(J.uri);if($.captureName&&J?.name)Q[`${LW}.name`]=JSON.stringify(J.name);return Q}var wg;var mF=q(()=>{b8();wg={"tools/call":{targetField:"name",targetAttribute:fx,captureArguments:!0,argumentsField:"arguments"},"resources/read":{targetField:"uri",targetAttribute:fZ,captureUri:!0},"resources/subscribe":{targetField:"uri",targetAttribute:fZ},"resources/unsubscribe":{targetField:"uri",targetAttribute:fZ},"prompts/get":{targetField:"name",targetAttribute:yx,captureName:!0,captureArguments:!0,argumentsField:"arguments"}}});function PP0(Z){return typeof Z==="string"?Z:JSON.stringify(Z)}function MP0(Z,J,Q){let $={};switch(Z){case"notifications/cancelled":if(J?.requestId)$["mcp.cancelled.request_id"]=String(J.requestId);if(J?.reason)$["mcp.cancelled.reason"]=String(J.reason);break;case"notifications/message":if(J?.level)$[vx]=String(J.level);if(J?.logger)$[xx]=String(J.logger);if(J?.data!==void 0){if($[gx]=typeof J.data,Q)$[dx]=PP0(J.data)}break;case"notifications/progress":if(J?.progressToken)$["mcp.progress.token"]=String(J.progressToken);if(typeof J?.progress==="number")$["mcp.progress.current"]=J.progress;if(typeof J?.total==="number"){if($["mcp.progress.total"]=J.total,typeof J?.progress==="number")$["mcp.progress.percentage"]=J.progress/J.total*100}if(J?.message)$["mcp.progress.message"]=String(J.message);break;case"notifications/resources/updated":if(J?.uri){$[fZ]=String(J.uri);let Y=A8(String(J.uri));if(Y&&!$5(Y))$["mcp.resource.protocol"]=Y.protocol.replace(":","")}break;case"notifications/initialized":$["mcp.lifecycle.phase"]="initialization_complete",$["mcp.protocol.ready"]=1;break}return $}function uF(Z,J,Q,$){if(Z==="request"){let Y=J,X=f3(Y.method,Q||{});return{...Y.id!==void 0&&{[Ix]:String(Y.id)},...X.attributes,...$?jg(Y.method,Q||{}):{}}}return MP0(J.method,Q||{},$)}var Dg=q(()=>{VF();b8();mF()});function kP0(Z){return RP0.has(Z)}function lF(Z,J){if(J)return Z;return Object.entries(Z).reduce((Q,[$,Y])=>{if(!kP0($))Q[$]=Y;return Q},{})}var RP0;var Og=q(()=>{b8();RP0=new Set([CW,PW,fZ])});function Lg(Z,J){return J?`${Z} ${J}`:Z}function Cg(Z){let J,Q;switch(Z){case"request":J=hF,Q=px;break;case"notification-incoming":J=ux,Q=bF;break;case"notification-outgoing":J=lx,Q=bF;break}return{[g]:J,[f]:Q,[H0]:ix}}function Pg(Z){let{type:J,message:Q,transport:$,extra:Y,callback:X,options:W}=Z,{method:K}=Q,z=Q.params,G;if(J==="request"){let U=f3(K,z||{});G=Lg(K,U.target)}else G=K;let H={...dF($,Y),[fF]:K,...uF(J,Q,z,W?.recordInputs),...Cg(J)},B=k(),V=Boolean(B?.getOptions().sendDefaultPii),F=lF(H,V);return r0({name:G,forceTransaction:!0,attributes:F},X)}function Mg(Z,J,Q,$,Y){return Pg({type:"notification-incoming",message:Z,transport:J,extra:Q,callback:Y,options:$})}function Rg(Z,J,Q,$){return Pg({type:"notification-outgoing",message:Z,transport:J,options:Q,callback:$})}function kg(Z,J,Q,$){let{method:Y}=Z,X=Z.params,W=f3(Y,X||{}),K=Lg(Y,W.target),z={...dF(J,Q),[fF]:Y,...uF("request",Z,X,$?.recordInputs),...Cg("request")},G=k(),H=Boolean(G?.getOptions().sendDefaultPii),B=lF(z,H);return{name:K,op:hF,forceTransaction:!0,attributes:B}}var Ng=q(()=>{B0();m0();M6();Dg();b8();mF();Og();kW()});function Ag(Z,J){if(Z.onmessage)m1(Z,"onmessage",(Q)=>{return function($,Y){if(ox($)){let X=$.method==="initialize",W;if(X)try{W=zg($),Jg(this,W)}catch{}let K=x().clone();return l1(K,()=>{let z=kg($,this,Y,J),G=P8(z);if(X&&W)G.setAttributes({...Gg(W.clientInfo),...W.protocolVersion&&{[d4]:W.protocolVersion}});return Vg(this,$.id,G,$.method),n6(G,()=>{return Q.call(this,$,Y)})})}if(vF($))return Mg($,this,Y,J,()=>{return Q.call(this,$,Y)});return Q.call(this,$,Y)}})}function Ig(Z,J){if(Z.send)m1(Z,"send",(Q)=>{return async function(...$){let[Y]=$;if(vF(Y))return Rg(Y,this,J,()=>{return Q.call(this,...$)});if(nx(Y)){if(Y.id!==null&&Y.id!==void 0){if(Y.error)NP0(Y.error);if(R6(Y.result)){if(Y.result.protocolVersion||Y.result.serverInfo)try{let X=RW(Y.result);Qg(this,X)}catch{}}Fg(this,Y.id,Y.result,J)}}return Q.call(this,...$)}})}function Tg(Z){if(Z.onclose)m1(Z,"onclose",(J)=>{return function(...Q){return Ug(this),Wg(this),J.call(this,...Q)}})}function Eg(Z){if(Z.onerror)m1(Z,"onerror",(J)=>{return function(Q){return AP0(Q),J.call(this,Q)}})}function NP0(Z){try{if(Z&&typeof Z==="object"&&"code"in Z&&"message"in Z){let J=Z;if(J.code===-32603||J.code>=-32099&&J.code<=-32000){let $=Error(J.message);$.name=`JsonRpcError_${J.code}`,h8($,"protocol")}}}catch{}}function AP0(Z){try{h8(Z,"transport")}catch{}}var fg=q(()=>{B0();R1();M6();b8();qg();TF();kW();gF();Ng();E3()});function y3(Z,J){if(yg.has(Z))return Z;if(!ax(Z))return Z;let Q=Z,$=k(),Y=Boolean($?.getOptions().sendDefaultPii),X={recordInputs:J?.recordInputs??Y,recordOutputs:J?.recordOutputs??Y};return m1(Q,"connect",(W)=>{return async function(K,...z){let G=await W.call(this,K,...z);return Ag(K,X),Ig(K,X),Tg(K),Eg(K),G}}),Nx(Q),yg.add(Z),Z}var yg;var Sg=q(()=>{B0();R1();Ax();fg();E3();yg=new WeakSet});function S3(Z,J={},Q=i()){let{message:$,name:Y,email:X,url:W,source:K,associatedEventId:z,tags:G}=Z,H={contexts:{feedback:{contact_email:X,name:Y,message:$,url:W,source:K,associated_event_id:z}},type:"feedback",level:"info",tags:G},B=Q?.getClient()||k();if(B)B.emit("beforeSendFeedback",H,J);return Q.captureEvent(H,J)}var _g=q(()=>{B0()});function c4(Z,J,Q){return"util"in d&&typeof d.util.format==="function"?d.util.format(...Z):IP0(Z,J,Q)}function IP0(Z,J,Q){return Z.map(($)=>h7($)?String($):JSON.stringify(_0($,J,Q))).join(" ")}function AW(Z){return/%[sdifocO]/.test(Z)}function IW(Z,J){let Q={},$=Array(J.length).fill("{}").join(" ");return Q["sentry.message.template"]=`${Z} ${$}`,J.forEach((Y,X)=>{Q[`sentry.message.parameter.${X}`]=Y}),Q}var pF=q(()=>{S0();RZ();J1()});var TP0="ConsoleLogs",hg,EP0=(Z={})=>{let J=Z.levels||V8;return{name:TP0,setup(Q){let{enableLogs:$,normalizeDepth:Y=3,normalizeMaxBreadth:X=1000}=Q.getOptions();if(!$){M&&O.warn("`enableLogs` is not enabled, ConsoleLogs integration disabled");return}x4(({args:W,level:K})=>{if(k()!==Q||!J.includes(K))return;let z=W[0],G=W.slice(1);if(K==="assert"){if(!z){let F=G.length>0?`Assertion failed: ${c4(G,Y,X)}`:"Assertion failed";R9({level:"error",message:F,attributes:hg})}return}let H=K==="log",B=W.length>1&&typeof W[0]==="string"&&!AW(W[0]),V={...hg,...B?IW(z,G):{}};R9({level:H?"info":K,message:c4(W,Y,X),severityNumber:H?10:void 0,attributes:V})})}}},_3;var bg=q(()=>{B0();z0();BW();D1();m0();Z0();w3();pF();hg={[f]:"auto.log.console"},_3=P(EP0)});var m4={};y1(m4,{gauge:()=>yP0,distribution:()=>SP0,count:()=>fP0});function iF(Z,J,Q,$){vb({type:Z,name:J,value:Q,unit:$?.unit,attributes:$?.attributes},{scope:$?.scope})}function fP0(Z,J=1,Q){iF("counter",Z,J,Q)}function yP0(Z,J,Q){iF("gauge",Z,J,Q)}function SP0(Z,J,Q){iF("distribution",Z,J,Q)}var vg=q(()=>{tV()});function h3(Z={}){let J=new Set(Z.levels??_P0),Q=Z.client;return{log($){let{type:Y,level:X,message:W,args:K,tag:z,date:G,...H}=$,B=Q||k();if(!B)return;let V=vP0(Y,X);if(!J.has(V))return;let{normalizeDepth:F=3,normalizeMaxBreadth:U=1000}=B.getOptions(),w={};for(let[L,C]of Object.entries(H))w[L]=_0(C,F,U);if(w["sentry.origin"]="auto.log.consola",z)w["consola.tag"]=z;if(Y)w["consola.type"]=Y;if(X!=null&&typeof X==="number")w["consola.level"]=X;let D=gP0(xP0(K,F,U),F,U);if(D?.attributes)Object.assign(w,D.attributes);R9({level:V,message:D?.message||W||K&&c4(K,F,U)||"",attributes:w})}}}function vP0(Z,J){if(Z==="verbose")return"debug";if(Z==="silent")return"trace";if(Z){let Q=hP0[Z];if(Q)return Q}if(typeof J==="number"){let Q=bP0[J];if(Q)return Q}return"info"}function xP0(Z,J,Q){if(!Z?.length)return{message:""};let $=c4(Z,J,Q),Y=Z[0];if(c1(Y)){let X=typeof Z[1]==="string"?2:1,W=Z.slice(X);return{message:$,attributes:Y,messageParameters:W}}else{let X=Z.slice(1),W=X.length>0&&typeof Y==="string"&&!AW(Y);return{message:$,messageTemplate:W?Y:void 0,messageParameters:W?X:void 0}}}function gP0(Z,J,Q){let{message:$,attributes:Y,messageTemplate:X,messageParameters:W}=Z,K={};if(X&&W){let z=IW(X,W);for(let[G,H]of Object.entries(z))K[G]=G.startsWith("sentry.message.parameter.")?_0(H,J,Q):H}else if(W&&W.length>0)W.forEach((z,G)=>{K[`sentry.message.parameter.${G}`]=_0(z,J,Q)});return{message:$,attributes:{..._0(Y,J,Q),...K}}}var _P0,hP0,bP0;var xg=q(()=>{B0();w3();pF();S0();RZ();_P0=["trace","debug","info","warn","error","fatal"];hP0={silent:"trace",fatal:"fatal",error:"error",warn:"warn",log:"info",info:"info",success:"info",fail:"error",ready:"info",start:"info",box:"info",debug:"debug",trace:"trace",verbose:"debug",critical:"fatal",notice:"info"},bP0={0:"fatal",1:"warn",2:"info",3:"info",4:"debug",5:"trace"}});var gg="gen_ai.prompt",yZ="gen_ai.system",l0="gen_ai.request.model",u4="gen_ai.request.stream",SZ="gen_ai.request.temperature",l4="gen_ai.request.max_tokens",_Z="gen_ai.request.frequency_penalty",p4="gen_ai.request.presence_penalty",hZ="gen_ai.request.top_p",TW="gen_ai.request.top_k",dg="gen_ai.request.encoding_format",cg="gen_ai.request.dimensions",z6="gen_ai.response.finish_reasons",z1="gen_ai.response.model",s6="gen_ai.response.id",mg="gen_ai.response.stop_reason",M0="gen_ai.usage.input_tokens",t0="gen_ai.usage.output_tokens",i1="gen_ai.usage.total_tokens",A1="gen_ai.operation.name",o1="sentry.sdk_meta.gen_ai.input.messages.original_length",I1="gen_ai.input.messages",ug="gen_ai.output.messages",k6="gen_ai.system_instructions",Q1="gen_ai.response.text",n9="gen_ai.request.available_tools",X5="gen_ai.response.streaming",O1="gen_ai.response.tool_calls",oF="gen_ai.agent.name",lg="gen_ai.pipeline.name",b3="gen_ai.conversation.id",pg="gen_ai.usage.cache_creation_input_tokens",ig="gen_ai.usage.cache_read_input_tokens",nF="gen_ai.usage.input_tokens.cache_write",bZ="gen_ai.usage.input_tokens.cached",EW="gen_ai.invoke_agent",og="gen_ai.generate_text",ng="gen_ai.stream_text",ag="gen_ai.generate_object",sg="gen_ai.stream_object",fW="gen_ai.embeddings.input",rg="gen_ai.embeddings",tg="gen_ai.embeddings",eg="gen_ai.rerank",Zd="gen_ai.execute_tool",W5="gen_ai.tool.name",aF="gen_ai.tool.call.id",sF="gen_ai.tool.type",yW="gen_ai.tool.input",SW="gen_ai.tool.output",Jd="gen_ai.tool.description",rF="openai.response.id",tF="openai.response.model",eF="openai.response.timestamp",Qd="openai.usage.completion_tokens",$d="openai.usage.prompt_tokens",K5,ZU="anthropic.response.timestamp";var h1=q(()=>{K5={CHAT:"chat",EMBEDDINGS:"embeddings"}});var v3,JU,QU,Yd,Xd,Wd;var $U=q(()=>{v3=new Map,JU=new Set(["ai.generateText","ai.streamText","ai.generateObject","ai.streamObject"]),QU=new Set(["ai.generateText.doGenerate","ai.streamText.doStream","ai.generateObject.doGenerate","ai.streamObject.doStream"]),Yd=new Set(["ai.embed.doEmbed","ai.embedMany.doEmbed"]),Xd=new Set(["ai.rerank.doRerank"]),Wd={"ai.embed.doEmbed":"embeddings","ai.embedMany.doEmbed":"embeddings","ai.rerank.doRerank":"rerank"}});function vZ(Z){if(!Z||typeof Z!=="object")return!1;return cP0(Z)||zd(Z)||dP0(Z)||Gd(Z)||Hd(Z)||mP0(Z)||uP0(Z)||lP0(Z)||pP0(Z)||iP0(Z)||oP0(Z)||nP0(Z)}function dP0(Z){if(!("image_url"in Z))return!1;if(typeof Z.image_url==="string")return Z.image_url.startsWith("data:");return Kd(Z)}function Kd(Z){return"image_url"in Z&&!!Z.image_url&&typeof Z.image_url==="object"&&"url"in Z.image_url&&typeof Z.image_url.url==="string"&&Z.image_url.url.startsWith("data:")}function cP0(Z){return"type"in Z&&typeof Z.type==="string"&&"source"in Z&&vZ(Z.source)}function zd(Z){return"inlineData"in Z&&!!Z.inlineData&&typeof Z.inlineData==="object"&&"data"in Z.inlineData&&typeof Z.inlineData.data==="string"}function Gd(Z){return"type"in Z&&Z.type==="input_audio"&&"input_audio"in Z&&!!Z.input_audio&&typeof Z.input_audio==="object"&&"data"in Z.input_audio&&typeof Z.input_audio.data==="string"}function Hd(Z){return"type"in Z&&Z.type==="file"&&"file"in Z&&!!Z.file&&typeof Z.file==="object"&&"file_data"in Z.file&&typeof Z.file.file_data==="string"}function mP0(Z){return"media_type"in Z&&typeof Z.media_type==="string"&&"data"in Z}function uP0(Z){return"type"in Z&&Z.type==="file"&&"mediaType"in Z&&typeof Z.mediaType==="string"&&"data"in Z&&typeof Z.data==="string"&&!Z.data.startsWith("http://")&&!Z.data.startsWith("https://")}function lP0(Z){return"type"in Z&&Z.type==="image"&&"image"in Z&&typeof Z.image==="string"&&!Z.image.startsWith("http://")&&!Z.image.startsWith("https://")}function pP0(Z){return"type"in Z&&(Z.type==="blob"||Z.type==="base64")}function iP0(Z){return"b64_json"in Z}function oP0(Z){return"type"in Z&&"result"in Z&&Z.type==="image_generation"}function nP0(Z){return"uri"in Z&&typeof Z.uri==="string"&&Z.uri.startsWith("data:")}function z5(Z){let J={...Z};if(vZ(J.source))J.source=z5(J.source);if(zd(Z))J.inlineData={...Z.inlineData,data:x3};if(Kd(Z))J.image_url={...Z.image_url,url:x3};if(Gd(Z))J.input_audio={...Z.input_audio,data:x3};if(Hd(Z))J.file={...Z.file,file_data:x3};for(let Q of aP0)if(typeof J[Q]==="string")J[Q]=x3;return J}var x3="[Blob substitute]",aP0;var YU=q(()=>{aP0=["image_url","data","content","b64_json","result","uri","image"]});function hW(Z,J){if(_W(Z)<=J)return Z;let Q=0,$=Z.length,Y="";while(Q<=$){let X=Math.floor((Q+$)/2),W=Z.slice(0,X);if(_W(W)<=J)Y=W,Q=X+1;else $=X-1}return Y}function sP0(Z){if(typeof Z==="string")return Z;if("text"in Z&&typeof Z.text==="string")return Z.text;return""}function Bd(Z,J){if(typeof Z==="string")return J;return{...Z,text:J}}function rP0(Z){return Z!==null&&typeof Z==="object"&&"content"in Z&&typeof Z.content==="string"}function Fd(Z){return Z!==null&&typeof Z==="object"&&"content"in Z&&Array.isArray(Z.content)}function Ud(Z){return Z!==null&&typeof Z==="object"&&"parts"in Z&&Array.isArray(Z.parts)&&Z.parts.length>0}function tP0(Z,J){let Q={...Z,content:""},$=WU(Q),Y=J-$;if(Y<=0)return[];let X=hW(Z.content,Y);return[{...Z,content:X}]}function eP0(Z){if("parts"in Z&&Array.isArray(Z.parts))return{key:"parts",items:Z.parts};if("content"in Z&&Array.isArray(Z.content))return{key:"content",items:Z.content};return{key:null,items:[]}}function ZM0(Z,J){let{key:Q,items:$}=eP0(Z);if(Q===null||$.length===0)return[];let Y=$.map((z)=>Bd(z,"")),X=WU({...Z,[Q]:Y}),W=J-X;if(W<=0)return[];let K=[];for(let z of $){let G=sP0(z),H=_W(G);if(H<=W)K.push(z),W-=H;else if(K.length===0){let B=hW(G,W);if(B)K.push(Bd(z,B));break}else break}if(K.length<=0)return[];else return[{...Z,[Q]:K}]}function JM0(Z,J){if(!Z)return[];if(typeof Z==="string"){let Q=hW(Z,J);return Q?[Q]:[]}if(typeof Z!=="object")return[];if(rP0(Z))return tP0(Z,J);if(Fd(Z)||Ud(Z))return ZM0(Z,J);return[]}function XU(Z){return Z.map((Q)=>{let $=void 0;if(!!Q&&typeof Q==="object"){if(Fd(Q))$={...Q,content:XU(Q.content)};else if("content"in Q&&vZ(Q.content))$={...Q,content:z5(Q.content)};if(Ud(Q))$={...$??Q,parts:XU(Q.parts)};if(vZ($))$=z5($);else if(vZ(Q))$=z5(Q)}return $??Q})}function QM0(Z,J){if(!Array.isArray(Z)||Z.length===0)return Z;let Q=J-2,$=Z[Z.length-1],Y=XU([$]),X=Y[0];if(WU(X)<=Q)return Y;return JM0(X,Q)}function xZ(Z){return QM0(Z,Vd)}function qd(Z){return hW(Z,Vd)}var Vd=20000,_W=(Z)=>{return new TextEncoder().encode(Z).length},WU=(Z)=>{return _W(JSON.stringify(Z))};var g3=q(()=>{YU()});function a9(Z){let J=Boolean(k()?.getOptions().sendDefaultPii);return{...Z,recordInputs:Z?.recordInputs??J,recordOutputs:Z?.recordOutputs??J}}function G5(Z){if(Z.includes("messages"))return"chat";if(Z.includes("completions"))return"text_completion";if(Z.includes("generateContent"))return"generate_content";if(Z.includes("models"))return"models";if(Z.includes("chat"))return"chat";return Z.split(".").pop()||"unknown"}function i4(Z){return`gen_ai.${G5(Z)}`}function o4(Z,J){return Z?`${Z}.${J}`:J}function d3(Z,J,Q,$,Y){if(J!==void 0)Z.setAttributes({[M0]:J});if(Q!==void 0)Z.setAttributes({[t0]:Q});if(J!==void 0||Q!==void 0||$!==void 0||Y!==void 0){let X=(J??0)+(Q??0)+($??0)+(Y??0);Z.setAttributes({[i1]:X})}}function H5(Z){if(typeof Z==="string")return qd(Z);if(Array.isArray(Z)){let J=xZ(Z);return JSON.stringify(J)}return JSON.stringify(Z)}function N6(Z){if(!Array.isArray(Z))return{systemInstructions:void 0,filteredMessages:Z};let J=Z.findIndex((W)=>W&&typeof W==="object"&&("role"in W)&&W.role==="system");if(J===-1)return{systemInstructions:void 0,filteredMessages:Z};let Q=Z[J],$=typeof Q.content==="string"?Q.content:Q.content!==void 0?JSON.stringify(Q.content):void 0;if(!$)return{systemInstructions:void 0,filteredMessages:Z};let Y=JSON.stringify([{type:"text",content:$}]),X=[...Z.slice(0,J),...Z.slice(J+1)];return{systemInstructions:Y,filteredMessages:X}}async function $M0(Z,J,Q){let $=Z.catch((W)=>{throw _(W,{mechanism:{handled:!1,type:Q}}),W}),Y=await J,X=await $;if(X&&typeof X==="object"&&"data"in X)return{...X,data:Y};return Y}function n4(Z,J,Q){if(!X1(Z))return J;return new Proxy(Z,{get($,Y){let W=Y in Promise.prototype||Y===Symbol.toStringTag?J:$,K=Reflect.get(W,Y);if(Y==="withResponse"&&typeof K==="function")return function(){let G=K.call($);return $M0(G,J,Q)};return typeof K==="function"?K.bind(W):K}})}var s9=q(()=>{k1();B0();S0();h1();g3()});var bW="operation.name",wd="ai.operationId",vW="ai.prompt",jd="ai.schema",Dd="ai.response.object",KU="ai.values",zU="ai.response.text",GU="ai.response.toolCalls",Od="ai.response.finishReason",B5="ai.prompt.messages",a4="ai.prompt.tools",c3="ai.model.id",Ld="ai.response.providerMetadata",Cd="ai.usage.cachedInputTokens",Pd="ai.telemetry.functionId",Md="ai.usage.completionTokens",Rd="ai.usage.promptTokens",kd="ai.usage.tokens",HU="ai.toolCall.name",BU="ai.toolCall.id",Nd="ai.toolCall.args",Ad="ai.toolCall.result";var VU=()=>{};function Td(Z,J){let Q=Z.parent_span_id;if(!Q)return;let $=Z.data[M0],Y=Z.data[t0];if(typeof $==="number"||typeof Y==="number"){let X=J.get(Q)||{inputTokens:0,outputTokens:0};if(typeof $==="number")X.inputTokens+=$;if(typeof Y==="number")X.outputTokens+=Y;J.set(Q,X)}}function FU(Z,J){let Q=J.get(Z.span_id);if(!Q||!Z.data)return;if(Q.inputTokens>0)Z.data[M0]=Q.inputTokens;if(Q.outputTokens>0)Z.data[t0]=Q.outputTokens;if(Q.inputTokens>0||Q.outputTokens>0)Z.data["gen_ai.usage.total_tokens"]=Q.inputTokens+Q.outputTokens}function YM0(Z){let J=new Map;for(let Q of Z){let $=Q.data[n9];if(typeof $!=="string")continue;try{let Y=JSON.parse($);for(let X of Y)if(X.name&&X.description&&!J.has(X.name))J.set(X.name,X.description)}catch{}}return J}function Ed(Z,J){let Q=YM0(Z);for(let $ of Z){if($.op==="gen_ai.execute_tool"){let Y=$.data[W5];if(typeof Y==="string"){let X=Q.get(Y);if(X)$.data[Jd]=X}}if($.op==="gen_ai.invoke_agent")FU($,J)}}function UU(Z){return v3.get(Z)}function qU(Z){v3.delete(Z)}function fd(Z){let J=Z.map((Q)=>{if(typeof Q==="string")try{return JSON.parse(Q)}catch{return Q}return Q});return JSON.stringify(J)}function Id(Z){return Z.filter((J)=>!!J&&typeof J==="object"&&("role"in J)&&("content"in J))}function XM0(Z){try{let J=JSON.parse(Z);if(!!J&&typeof J==="object"){let{messages:Q}=J,{prompt:$,system:Y}=J,X=[];if(typeof Y==="string")X.push({role:"system",content:Y});if(typeof Q==="string")try{Q=JSON.parse(Q)}catch{}if(Array.isArray(Q))return X.push(...Id(Q)),X;if(Array.isArray($))return X.push(...Id($)),X;if(typeof $==="string")X.push({role:"user",content:$});if(X.length>0)return X}}catch{}return[]}function yd(Z,J){if(typeof J[vW]==="string"&&!J[I1]&&!J[B5]){let Q=J[vW],$=XM0(Q);if($.length){let{systemInstructions:Y,filteredMessages:X}=N6($);if(Y)Z.setAttribute(k6,Y);let W=Array.isArray(X)?X.length:0,K=H5(X);Z.setAttributes({[vW]:K,[I1]:K,[o1]:W})}}else if(typeof J[B5]==="string")try{let Q=JSON.parse(J[B5]);if(Array.isArray(Q)){let{systemInstructions:$,filteredMessages:Y}=N6(Q);if($)Z.setAttribute(k6,$);let X=Array.isArray(Y)?Y.length:0,W=H5(Y);Z.setAttributes({[B5]:W,[I1]:W,[o1]:X})}}catch{}}function Sd(Z){switch(Z){case"ai.generateText":case"ai.streamText":case"ai.generateObject":case"ai.streamObject":return EW;case"ai.generateText.doGenerate":return og;case"ai.streamText.doStream":return ng;case"ai.generateObject.doGenerate":return ag;case"ai.streamObject.doStream":return sg;case"ai.embed.doEmbed":return rg;case"ai.embedMany.doEmbed":return tg;case"ai.rerank.doRerank":return eg;case"ai.toolCall":return Zd;default:if(Z.startsWith("ai.stream"))return"ai.run";return}}var wU=q(()=>{h1();s9();$U();VU()});function WM0(Z){if(JU.has(Z))return"invoke_agent";if(QU.has(Z))return"generate_content";if(Yd.has(Z))return"embeddings";if(Xd.has(Z))return"rerank";if(Z==="ai.toolCall")return"execute_tool";return Z}function KM0(Z){let{data:J,description:Q}=v(Z);if(!Q)return;if(J[HU]&&J[BU]&&Q==="ai.toolCall"){VM0(Z,J);return}if(!J[wd]&&!Q.startsWith("ai."))return;FM0(Z,Q,J)}function zM0(Z){if(Z.type==="transaction"&&Z.spans){let J=new Map;for(let $ of Z.spans)BM0($),Td($,J);Ed(Z.spans,J);let Q=Z.contexts?.trace;if(Q?.op==="gen_ai.invoke_agent")FU(Q,J)}return Z}function GM0(Z){if(typeof Z!=="string")return"stop";switch(Z){case"tool-calls":return"tool_call";case"stop":case"length":case"content_filter":case"error":return Z;default:return Z}}function HM0(Z){let J=Z[zU],Q=Z[GU],$=Z[Od];if(J==null&&Q==null)return;let Y=[];if(typeof J==="string"&&J.length>0)Y.push({type:"text",content:J});if(Q!=null)try{let X=typeof Q==="string"?JSON.parse(Q):Q;if(Array.isArray(X)){for(let W of X){let K=W.input??W.args;Y.push({type:"tool_call",id:W.toolCallId,name:W.toolName,arguments:typeof K==="string"?K:JSON.stringify(K??{})})}delete Z[GU]}}catch{}if(Y.length>0){let X={role:"assistant",parts:Y,finish_reason:GM0($)};Z[ug]=JSON.stringify([X]),delete Z[zU]}}function BM0(Z){let{data:J,origin:Q}=Z;if(Q!=="auto.vercelai.otel")return;if(Z.status&&Z.status!=="ok")Z.status="internal_error";if(T1(J,Md,t0),T1(J,Rd,M0),T1(J,Cd,bZ),T1(J,"ai.usage.inputTokens",M0),T1(J,"ai.usage.outputTokens",t0),T1(J,kd,M0),T1(J,"ai.response.avgOutputTokensPerSecond","ai.response.avgCompletionTokensPerSecond"),typeof J[M0]==="number"&&typeof J[bZ]==="number")J[M0]=J[M0]+J[bZ];if(typeof J[M0]==="number"){let $=typeof J[t0]==="number"?J[t0]:0;J[i1]=$+J[M0]}if(J[a4]&&Array.isArray(J[a4]))J[a4]=fd(J[a4]);if(J[bW]){let $=WM0(J[bW]);J[A1]=$,delete J[bW]}if(T1(J,B5,I1),HM0(J),T1(J,Dd,"gen_ai.response.object"),T1(J,a4,"gen_ai.request.available_tools"),T1(J,Nd,yW),T1(J,Ad,SW),T1(J,jd,"gen_ai.request.schema"),T1(J,c3,l0),Array.isArray(J[KU])){let $=J[KU].map((Y)=>{try{return JSON.parse(Y)}catch{return Y}});J[fW]=$.length===1?$[0]:JSON.stringify($)}UM0(J);for(let $ of Object.keys(J))if($.startsWith("ai."))T1(J,$,`vercel.${$}`)}function T1(Z,J,Q){if(Z[J]!=null)Z[Q]=Z[J],delete Z[J]}function VM0(Z,J){Z.setAttribute(f,"auto.vercelai.otel"),Z.setAttribute(g,"gen_ai.execute_tool"),Z.setAttribute(A1,"execute_tool"),T1(J,HU,W5),T1(J,BU,aF);let Q=J[aF];if(typeof Q==="string")v3.set(Q,Z.spanContext());if(!J[sF])Z.setAttribute(sF,"function");let $=J[W5];if($)Z.updateName(`execute_tool ${$}`)}function FM0(Z,J,Q){Z.setAttribute(f,"auto.vercelai.otel");let $=J.replace("ai.","");Z.setAttribute("ai.pipeline.name",$),Z.updateName($);let Y=Q[Pd];if(Y&&typeof Y==="string")Z.setAttribute("gen_ai.function_id",Y);if(yd(Z,Q),Q[c3]&&!Q[z1])Z.setAttribute(z1,Q[c3]);Z.setAttribute("ai.streaming",J.includes("stream"));let X=Sd(J);if(X)Z.setAttribute(g,X);if(JU.has(J)){if(Y&&typeof Y==="string")Z.updateName(`invoke_agent ${Y}`);else Z.updateName("invoke_agent");return}let W=Q[c3];if(W){let K=QU.has(J)?"generate_content":Wd[J];if(K)Z.updateName(`${K} ${W}`)}}function xW(Z){Z.on("spanStart",KM0),Z.addEventProcessor(Object.assign(zM0,{id:"VercelAiEventProcessor"}))}function UM0(Z){let J=Z[Ld];if(J)try{let Q=JSON.parse(J),$=Q.openai??Q.azure;if($){if(A9(Z,bZ,$.cachedPromptTokens),A9(Z,"gen_ai.usage.output_tokens.reasoning",$.reasoningTokens),A9(Z,"gen_ai.usage.output_tokens.prediction_accepted",$.acceptedPredictionTokens),A9(Z,"gen_ai.usage.output_tokens.prediction_rejected",$.rejectedPredictionTokens),!Z["gen_ai.conversation.id"])A9(Z,"gen_ai.conversation.id",$.responseId)}if(Q.anthropic){let Y=Q.anthropic.usage?.cache_read_input_tokens??Q.anthropic.cacheReadInputTokens;A9(Z,bZ,Y);let X=Q.anthropic.usage?.cache_creation_input_tokens??Q.anthropic.cacheCreationInputTokens;A9(Z,nF,X)}if(Q.bedrock?.usage)A9(Z,bZ,Q.bedrock.usage.cacheReadInputTokens),A9(Z,nF,Q.bedrock.usage.cacheWriteInputTokens);if(Q.deepseek)A9(Z,bZ,Q.deepseek.promptCacheHitTokens),A9(Z,"gen_ai.usage.input_tokens.cache_miss",Q.deepseek.promptCacheMissTokens)}catch{}}function A9(Z,J,Q){if(Q!=null)Z[J]=Q}var _d=q(()=>{m0();j1();h1();$U();wU();VU()});var gZ="OpenAI",hd,qM0,bd;var gW=q(()=>{hd=["responses.create","chat.completions.create","embeddings.create","conversations.create"],qM0=["response.output_item.added","response.function_call_arguments.delta","response.function_call_arguments.done","response.output_item.done"],bd=["response.created","response.in_progress","response.failed","response.completed","response.incomplete","response.queued","response.output_text.delta",...qM0]});function dW(Z){if(Z.includes("chat.completions"))return K5.CHAT;if(Z.includes("responses"))return K5.CHAT;if(Z.includes("embeddings"))return K5.EMBEDDINGS;if(Z.includes("conversations"))return K5.CHAT;return Z.split(".").pop()||"unknown"}function vd(Z){return`gen_ai.${dW(Z)}`}function xd(Z){return hd.includes(Z)}function gd(Z){return Z!==null&&typeof Z==="object"&&"object"in Z&&Z.object==="chat.completion"}function dd(Z){return Z!==null&&typeof Z==="object"&&"object"in Z&&Z.object==="response"}function cd(Z){if(Z===null||typeof Z!=="object"||!("object"in Z))return!1;let J=Z;return J.object==="list"&&typeof J.model==="string"&&J.model.toLowerCase().includes("embedding")}function md(Z){return Z!==null&&typeof Z==="object"&&"object"in Z&&Z.object==="conversation"}function ud(Z){return Z!==null&&typeof Z==="object"&&"type"in Z&&typeof Z.type==="string"&&Z.type.startsWith("response.")}function ld(Z){return Z!==null&&typeof Z==="object"&&"object"in Z&&Z.object==="chat.completion.chunk"}function pd(Z,J,Q){if(cW(Z,J.id,J.model,J.created),J.usage)m3(Z,J.usage.prompt_tokens,J.usage.completion_tokens,J.usage.total_tokens);if(Array.isArray(J.choices)){let $=J.choices.map((Y)=>Y.finish_reason).filter((Y)=>Y!==null);if($.length>0)Z.setAttributes({[z6]:JSON.stringify($)});if(Q){let Y=J.choices.map((X)=>X.message?.tool_calls).filter((X)=>Array.isArray(X)&&X.length>0).flat();if(Y.length>0)Z.setAttributes({[O1]:JSON.stringify(Y)})}}}function id(Z,J,Q){if(cW(Z,J.id,J.model,J.created_at),J.status)Z.setAttributes({[z6]:JSON.stringify([J.status])});if(J.usage)m3(Z,J.usage.input_tokens,J.usage.output_tokens,J.usage.total_tokens);if(Q){let $=J;if(Array.isArray($.output)&&$.output.length>0){let Y=$.output.filter((X)=>typeof X==="object"&&X!==null&&X.type==="function_call");if(Y.length>0)Z.setAttributes({[O1]:JSON.stringify(Y)})}}}function od(Z,J){if(Z.setAttributes({[tF]:J.model,[z1]:J.model}),J.usage)m3(Z,J.usage.prompt_tokens,void 0,J.usage.total_tokens)}function nd(Z,J){let{id:Q,created_at:$}=J;if(Z.setAttributes({[rF]:Q,[s6]:Q,[b3]:Q}),$)Z.setAttributes({[eF]:new Date($*1000).toISOString()})}function m3(Z,J,Q,$){if(J!==void 0)Z.setAttributes({[$d]:J,[M0]:J});if(Q!==void 0)Z.setAttributes({[Qd]:Q,[t0]:Q});if($!==void 0)Z.setAttributes({[i1]:$})}function cW(Z,J,Q,$){Z.setAttributes({[rF]:J,[s6]:J}),Z.setAttributes({[tF]:Q,[z1]:Q}),Z.setAttributes({[eF]:new Date($*1000).toISOString()})}function wM0(Z){if("conversation"in Z&&typeof Z.conversation==="string")return Z.conversation;if("previous_response_id"in Z&&typeof Z.previous_response_id==="string")return Z.previous_response_id;return}function ad(Z){let J={[l0]:Z.model??"unknown"};if("temperature"in Z)J[SZ]=Z.temperature;if("top_p"in Z)J[hZ]=Z.top_p;if("frequency_penalty"in Z)J[_Z]=Z.frequency_penalty;if("presence_penalty"in Z)J[p4]=Z.presence_penalty;if("stream"in Z)J[u4]=Z.stream;if("encoding_format"in Z)J[dg]=Z.encoding_format;if("dimensions"in Z)J[cg]=Z.dimensions;let Q=wM0(Z);if(Q)J[b3]=Q;return J}var jU=q(()=>{h1();gW()});function jM0(Z,J){for(let Q of Z){let $=Q.index;if($===void 0||!Q.function)continue;if(!($ in J.chatCompletionToolCalls))J.chatCompletionToolCalls[$]={...Q,function:{name:Q.function.name,arguments:Q.function.arguments||""}};else{let Y=J.chatCompletionToolCalls[$];if(Q.function.arguments&&Y?.function)Y.function.arguments+=Q.function.arguments}}}function DM0(Z,J,Q){if(J.responseId=Z.id??J.responseId,J.responseModel=Z.model??J.responseModel,J.responseTimestamp=Z.created??J.responseTimestamp,Z.usage)J.promptTokens=Z.usage.prompt_tokens,J.completionTokens=Z.usage.completion_tokens,J.totalTokens=Z.usage.total_tokens;for(let $ of Z.choices??[]){if(Q){if($.delta?.content)J.responseTexts.push($.delta.content);if($.delta?.tool_calls)jM0($.delta.tool_calls,J)}if($.finish_reason)J.finishReasons.push($.finish_reason)}}function OM0(Z,J,Q,$){if(!(Z&&typeof Z==="object")){J.eventTypes.push("unknown:non-object");return}if(Z instanceof Error){$.setStatus({code:a,message:"internal_error"}),_(Z,{mechanism:{handled:!1,type:"auto.ai.openai.stream-response"}});return}if(!("type"in Z))return;let Y=Z;if(!bd.includes(Y.type)){J.eventTypes.push(Y.type);return}if(Q){if(Y.type==="response.output_item.done"&&"item"in Y)J.responsesApiToolCalls.push(Y.item);if(Y.type==="response.output_text.delta"&&"delta"in Y&&Y.delta){J.responseTexts.push(Y.delta);return}}if("response"in Y){let{response:X}=Y;if(J.responseId=X.id??J.responseId,J.responseModel=X.model??J.responseModel,J.responseTimestamp=X.created_at??J.responseTimestamp,X.usage)J.promptTokens=X.usage.input_tokens,J.completionTokens=X.usage.output_tokens,J.totalTokens=X.usage.total_tokens;if(X.status)J.finishReasons.push(X.status);if(Q&&X.output_text)J.responseTexts.push(X.output_text)}}async function*sd(Z,J,Q){let $={eventTypes:[],responseTexts:[],finishReasons:[],responseId:"",responseModel:"",responseTimestamp:0,promptTokens:void 0,completionTokens:void 0,totalTokens:void 0,chatCompletionToolCalls:{},responsesApiToolCalls:[]};try{for await(let Y of Z){if(ld(Y))DM0(Y,$,Q);else if(ud(Y))OM0(Y,$,Q,J);yield Y}}finally{if(cW(J,$.responseId,$.responseModel,$.responseTimestamp),m3(J,$.promptTokens,$.completionTokens,$.totalTokens),J.setAttributes({[X5]:!0}),$.finishReasons.length)J.setAttributes({[z6]:JSON.stringify($.finishReasons)});if(Q&&$.responseTexts.length)J.setAttributes({[Q1]:$.responseTexts.join("")});let X=[...Object.values($.chatCompletionToolCalls),...$.responsesApiToolCalls];if(X.length>0)J.setAttributes({[O1]:JSON.stringify(X)});J.end()}}var rd=q(()=>{k1();w1();h1();gW();jU()});function LM0(Z){let J=Array.isArray(Z.tools)?Z.tools:[],$=Z.web_search_options&&typeof Z.web_search_options==="object"?[{type:"web_search_options",...Z.web_search_options}]:[],Y=[...J,...$];if(Y.length===0)return;try{return JSON.stringify(Y)}catch(X){M&&O.error("Failed to serialize OpenAI tools:",X);return}}function CM0(Z,J){let Q={[yZ]:"openai",[A1]:dW(J),[f]:"auto.ai.openai"};if(Z.length>0&&typeof Z[0]==="object"&&Z[0]!==null){let $=Z[0],Y=LM0($);if(Y)Q[n9]=Y;Object.assign(Q,ad($))}else Q[l0]="unknown";return Q}function PM0(Z,J,Q){if(!J||typeof J!=="object")return;let $=J;if(gd($)){if(pd(Z,$,Q),Q&&$.choices?.length){let Y=$.choices.map((X)=>X.message?.content||"");Z.setAttributes({[Q1]:JSON.stringify(Y)})}}else if(dd($)){if(id(Z,$,Q),Q&&$.output_text)Z.setAttributes({[Q1]:$.output_text})}else if(cd($))od(Z,$);else if(md($))nd(Z,$)}function td(Z,J,Q){if(Q===K5.EMBEDDINGS&&"input"in J){let K=J.input;if(K==null)return;if(typeof K==="string"&&K.length===0)return;if(Array.isArray(K)&&K.length===0)return;Z.setAttribute(fW,typeof K==="string"?K:JSON.stringify(K));return}let $="input"in J?J.input:("messages"in J)?J.messages:void 0;if(!$)return;if(Array.isArray($)&&$.length===0)return;let{systemInstructions:Y,filteredMessages:X}=N6($);if(Y)Z.setAttribute(k6,Y);let W=H5(X);if(Z.setAttribute(I1,W),Array.isArray(X))Z.setAttribute(o1,X.length);else Z.setAttribute(o1,1)}function MM0(Z,J,Q,$){return function(...X){let W=CM0(X,J),K=W[l0]||"unknown",z=dW(J),G=X[0],H=G&&typeof G==="object"&&G.stream===!0,B={name:`${z} ${K}`,op:vd(J),attributes:W};if(H){let U,w=h0(B,(D)=>{if(U=Z.apply(Q,X),$.recordInputs&&G)td(D,G,z);return(async()=>{try{let L=await U;return sd(L,D,$.recordOutputs??!1)}catch(L){throw D.setStatus({code:a,message:"internal_error"}),_(L,{mechanism:{handled:!1,type:"auto.ai.openai.stream",data:{function:J}}}),D.end(),L}})()});return n4(U,w,"auto.ai.openai")}let V,F=r0(B,(U)=>{if(V=Z.apply(Q,X),$.recordInputs&&G)td(U,G,z);return V.then((w)=>{return PM0(U,w,$.recordOutputs),w},(w)=>{throw _(w,{mechanism:{handled:!1,type:"auto.ai.openai",data:{function:J}}}),w})});return n4(V,F,"auto.ai.openai")}}function ed(Z,J="",Q){return new Proxy(Z,{get($,Y){let X=$[Y],W=o4(J,String(Y));if(typeof X==="function"&&xd(W))return MM0(X,W,$,Q);if(typeof X==="function")return X.bind($);if(X&&typeof X==="object")return ed(X,W,Q);return X}})}function s4(Z,J){return ed(Z,"",a9(J))}var Zc=q(()=>{z0();k1();m0();Z0();w1();M6();h1();s9();rd();jU()});var dZ="Anthropic_AI",Jc;var DU=q(()=>{Jc=["messages.create","messages.stream","messages.countTokens","models.get","completions.create","models.retrieve","beta.messages.create"]});function Qc(Z){return Jc.includes(Z)}function $c(Z,J){if(Array.isArray(J)&&J.length===0)return;let{systemInstructions:Q,filteredMessages:$}=N6(J);if(Q)Z.setAttributes({[k6]:Q});let Y=Array.isArray($)?$.length:1;Z.setAttributes({[I1]:H5($),[o1]:Y})}function OU(Z){if(!Z)return"internal_error";return RM0[Z]||"internal_error"}function Yc(Z,J){if(J.error)Z.setStatus({code:a,message:OU(J.error.type)}),_(J.error,{mechanism:{handled:!1,type:"auto.ai.anthropic.anthropic_error"}})}function Xc(Z){let{system:J,messages:Q,input:$}=Z,Y=typeof J==="string"?[{role:"system",content:Z.system}]:[],X=Array.isArray($)?$:$!=null?[$]:void 0,W=Array.isArray(Q)?Q:Q!=null?[Q]:[],K=X??W;return[...Y,...K]}var RM0;var LU=q(()=>{k1();w1();h1();s9();DU();RM0={invalid_request_error:"invalid_argument",authentication_error:"unauthenticated",permission_error:"permission_denied",not_found_error:"not_found",request_too_large:"failed_precondition",rate_limit_error:"resource_exhausted",api_error:"internal_error",overloaded_error:"unavailable"}});function kM0(Z,J){if("type"in Z&&typeof Z.type==="string"){if(Z.type==="error")return J.setStatus({code:a,message:OU(Z.error?.type)}),_(Z.error,{mechanism:{handled:!1,type:"auto.ai.anthropic.anthropic_error"}}),!0}return!1}function NM0(Z,J){if(Z.type==="message_delta"&&Z.usage){if("output_tokens"in Z.usage&&typeof Z.usage.output_tokens==="number")J.completionTokens=Z.usage.output_tokens}if(Z.message){let Q=Z.message;if(Q.id)J.responseId=Q.id;if(Q.model)J.responseModel=Q.model;if(Q.stop_reason)J.finishReasons.push(Q.stop_reason);if(Q.usage){if(typeof Q.usage.input_tokens==="number")J.promptTokens=Q.usage.input_tokens;if(typeof Q.usage.cache_creation_input_tokens==="number")J.cacheCreationInputTokens=Q.usage.cache_creation_input_tokens;if(typeof Q.usage.cache_read_input_tokens==="number")J.cacheReadInputTokens=Q.usage.cache_read_input_tokens}}}function AM0(Z,J){if(Z.type!=="content_block_start"||typeof Z.index!=="number"||!Z.content_block)return;if(Z.content_block.type==="tool_use"||Z.content_block.type==="server_tool_use")J.activeToolBlocks[Z.index]={id:Z.content_block.id,name:Z.content_block.name,inputJsonParts:[]}}function IM0(Z,J,Q){if(Z.type!=="content_block_delta"||!Z.delta)return;if(typeof Z.index==="number"&&"partial_json"in Z.delta&&typeof Z.delta.partial_json==="string"){let $=J.activeToolBlocks[Z.index];if($)$.inputJsonParts.push(Z.delta.partial_json)}if(Q&&typeof Z.delta.text==="string")J.responseTexts.push(Z.delta.text)}function TM0(Z,J){if(Z.type!=="content_block_stop"||typeof Z.index!=="number")return;let Q=J.activeToolBlocks[Z.index];if(!Q)return;let $=Q.inputJsonParts.join(""),Y;try{Y=$?JSON.parse($):{}}catch{Y={__unparsed:$}}J.toolCalls.push({type:"tool_use",id:Q.id,name:Q.name,input:Y}),delete J.activeToolBlocks[Z.index]}function Wc(Z,J,Q,$){if(!(Z&&typeof Z==="object"))return;if(kM0(Z,$))return;NM0(Z,J),AM0(Z,J),IM0(Z,J,Q),TM0(Z,J)}function EM0(Z,J,Q){if(!J.isRecording())return;if(Z.responseId)J.setAttributes({[s6]:Z.responseId});if(Z.responseModel)J.setAttributes({[z1]:Z.responseModel});if(d3(J,Z.promptTokens,Z.completionTokens,Z.cacheCreationInputTokens,Z.cacheReadInputTokens),J.setAttributes({[X5]:!0}),Z.finishReasons.length>0)J.setAttributes({[z6]:JSON.stringify(Z.finishReasons)});if(Q&&Z.responseTexts.length>0)J.setAttributes({[Q1]:Z.responseTexts.join("")});if(Q&&Z.toolCalls.length>0)J.setAttributes({[O1]:JSON.stringify(Z.toolCalls)});J.end()}async function*Kc(Z,J,Q){let $={responseTexts:[],finishReasons:[],responseId:"",responseModel:"",promptTokens:void 0,completionTokens:void 0,cacheCreationInputTokens:void 0,cacheReadInputTokens:void 0,toolCalls:[],activeToolBlocks:{}};try{for await(let Y of Z)Wc(Y,$,Q,J),yield Y}finally{if($.responseId)J.setAttributes({[s6]:$.responseId});if($.responseModel)J.setAttributes({[z1]:$.responseModel});if(d3(J,$.promptTokens,$.completionTokens,$.cacheCreationInputTokens,$.cacheReadInputTokens),J.setAttributes({[X5]:!0}),$.finishReasons.length>0)J.setAttributes({[z6]:JSON.stringify($.finishReasons)});if(Q&&$.responseTexts.length>0)J.setAttributes({[Q1]:$.responseTexts.join("")});if(Q&&$.toolCalls.length>0)J.setAttributes({[O1]:JSON.stringify($.toolCalls)});J.end()}}function zc(Z,J,Q){let $={responseTexts:[],finishReasons:[],responseId:"",responseModel:"",promptTokens:void 0,completionTokens:void 0,cacheCreationInputTokens:void 0,cacheReadInputTokens:void 0,toolCalls:[],activeToolBlocks:{}};return Z.on("streamEvent",(Y)=>{Wc(Y,$,Q,J)}),Z.on("message",()=>{EM0($,J,Q)}),Z.on("error",(Y)=>{if(_(Y,{mechanism:{handled:!1,type:"auto.ai.anthropic.stream_error"}}),J.isRecording())J.setStatus({code:a,message:"internal_error"}),J.end()}),Z}var Gc=q(()=>{k1();w1();h1();s9();LU()});function fM0(Z,J){let Q={[yZ]:"anthropic",[A1]:G5(J),[f]:"auto.ai.anthropic"};if(Z.length>0&&typeof Z[0]==="object"&&Z[0]!==null){let $=Z[0];if($.tools&&Array.isArray($.tools))Q[n9]=JSON.stringify($.tools);if(Q[l0]=$.model??"unknown","temperature"in $)Q[SZ]=$.temperature;if("top_p"in $)Q[hZ]=$.top_p;if("stream"in $)Q[u4]=$.stream;if("top_k"in $)Q[TW]=$.top_k;if("frequency_penalty"in $)Q[_Z]=$.frequency_penalty;if("max_tokens"in $)Q[l4]=$.max_tokens}else if(J==="models.retrieve"||J==="models.get")Q[l0]=Z[0];else Q[l0]="unknown";return Q}function CU(Z,J){let Q=Xc(J);if($c(Z,Q),"prompt"in J)Z.setAttributes({[gg]:JSON.stringify(J.prompt)})}function yM0(Z,J){if("content"in J){if(Array.isArray(J.content)){Z.setAttributes({[Q1]:J.content.map(($)=>$.text).filter(($)=>!!$).join("")});let Q=[];for(let $ of J.content)if($.type==="tool_use"||$.type==="server_tool_use")Q.push($);if(Q.length>0)Z.setAttributes({[O1]:JSON.stringify(Q)})}}if("completion"in J)Z.setAttributes({[Q1]:J.completion});if("input_tokens"in J)Z.setAttributes({[Q1]:JSON.stringify(J.input_tokens)})}function SM0(Z,J){if("id"in J&&"model"in J){if(Z.setAttributes({[s6]:J.id,[z1]:J.model}),"created"in J&&typeof J.created==="number")Z.setAttributes({[ZU]:new Date(J.created*1000).toISOString()});if("created_at"in J&&typeof J.created_at==="number")Z.setAttributes({[ZU]:new Date(J.created_at*1000).toISOString()});if("usage"in J&&J.usage)d3(Z,J.usage.input_tokens,J.usage.output_tokens,J.usage.cache_creation_input_tokens,J.usage.cache_read_input_tokens)}}function _M0(Z,J,Q){if(!J||typeof J!=="object")return;if("type"in J&&J.type==="error"){Yc(Z,J);return}if(Q)yM0(Z,J);SM0(Z,J)}function Hc(Z,J,Q){if(_(Z,{mechanism:{handled:!1,type:"auto.ai.anthropic",data:{function:Q}}}),J.isRecording())J.setStatus({code:a,message:"internal_error"}),J.end();throw Z}function hM0(Z,J,Q,$,Y,X,W,K,z,G,H){let B=Y[l0]??"unknown",V={name:`${X} ${B}`,op:i4(W),attributes:Y};if(G&&!H){let F,U=h0(V,(w)=>{if(F=Z.apply(Q,$),z.recordInputs&&K)CU(w,K);return(async()=>{try{let D=await F;return Kc(D,w,z.recordOutputs??!1)}catch(D){return Hc(D,w,W)}})()});return n4(F,U,"auto.ai.anthropic")}else return h0(V,(F)=>{try{if(z.recordInputs&&K)CU(F,K);let U=J.apply(Q,$);return zc(U,F,z.recordOutputs??!1)}catch(U){return Hc(U,F,W)}})}function bM0(Z,J,Q,$){return new Proxy(Z,{apply(Y,X,W){let K=fM0(W,J),z=K[l0]??"unknown",G=G5(J),H=typeof W[0]==="object"?W[0]:void 0,B=Boolean(H?.stream),V=J==="messages.stream";if(B||V)return hM0(Z,Y,Q,W,K,G,J,H,$,B,V);let F,U=r0({name:`${G} ${z}`,op:i4(J),attributes:K},(w)=>{if(F=Y.apply(Q,W),$.recordInputs&&H)CU(w,H);return F.then((D)=>{return _M0(w,D,$.recordOutputs),D},(D)=>{throw _(D,{mechanism:{handled:!1,type:"auto.ai.anthropic",data:{function:J}}}),D})});return n4(F,U,"auto.ai.anthropic")}})}function Bc(Z,J="",Q){return new Proxy(Z,{get($,Y){let X=$[Y],W=o4(J,String(Y));if(typeof X==="function"&&Qc(W))return bM0(X,W,$,Q);if(typeof X==="function")return X.bind($);if(X&&typeof X==="object")return Bc(X,W,Q);return X}})}function r4(Z,J){return Bc(Z,"",a9(J))}var Vc=q(()=>{k1();m0();w1();M6();h1();s9();Gc();LU()});var cZ="Google_GenAI",PU,Fc="google_genai",MU="chats.create",Uc="chat";var mW=q(()=>{PU=["models.generateContent","models.generateContentStream","chats.create","sendMessage","sendMessageStream"]});function vM0(Z,J){let Q=Z?.promptFeedback;if(Q?.blockReason){let $=Q.blockReasonMessage??Q.blockReason;return J.setStatus({code:a,message:"internal_error"}),_(`Content blocked: ${$}`,{mechanism:{handled:!1,type:"auto.ai.google_genai"}}),!0}return!1}function xM0(Z,J){if(typeof Z.responseId==="string")J.responseId=Z.responseId;if(typeof Z.modelVersion==="string")J.responseModel=Z.modelVersion;let Q=Z.usageMetadata;if(Q){if(typeof Q.promptTokenCount==="number")J.promptTokens=Q.promptTokenCount;if(typeof Q.candidatesTokenCount==="number")J.completionTokens=Q.candidatesTokenCount;if(typeof Q.totalTokenCount==="number")J.totalTokens=Q.totalTokenCount}}function gM0(Z,J,Q){if(Array.isArray(Z.functionCalls))J.toolCalls.push(...Z.functionCalls);for(let $ of Z.candidates??[]){if($?.finishReason&&!J.finishReasons.includes($.finishReason))J.finishReasons.push($.finishReason);for(let Y of $?.content?.parts??[]){if(Q&&Y.text)J.responseTexts.push(Y.text);if(Y.functionCall)J.toolCalls.push({type:"function",id:Y.functionCall.id,name:Y.functionCall.name,arguments:Y.functionCall.args})}}}function dM0(Z,J,Q,$){if(!Z||vM0(Z,$))return;xM0(Z,J),gM0(Z,J,Q)}async function*qc(Z,J,Q){let $={responseTexts:[],finishReasons:[],toolCalls:[]};try{for await(let Y of Z)dM0(Y,$,Q,J),yield Y}finally{let Y={[X5]:!0};if($.responseId)Y[s6]=$.responseId;if($.responseModel)Y[z1]=$.responseModel;if($.promptTokens!==void 0)Y[M0]=$.promptTokens;if($.completionTokens!==void 0)Y[t0]=$.completionTokens;if($.totalTokens!==void 0)Y[i1]=$.totalTokens;if($.finishReasons.length)Y[z6]=JSON.stringify($.finishReasons);if(Q&&$.responseTexts.length)Y[Q1]=$.responseTexts.join("");if(Q&&$.toolCalls.length)Y[O1]=JSON.stringify($.toolCalls);J.setAttributes(Y),J.end()}}var wc=q(()=>{k1();w1();h1()});function jc(Z){if(PU.includes(Z))return!0;let J=Z.split(".").pop();return PU.includes(J)}function Dc(Z){return Z.includes("Stream")}function t4(Z,J="user"){if(typeof Z==="string")return[{role:J,content:Z}];if(Array.isArray(Z))return Z.flatMap((Q)=>t4(Q,J));if(typeof Z!=="object"||!Z)return[];if("role"in Z&&typeof Z.role==="string")return[Z];if("parts"in Z)return[{...Z,role:J}];return[{role:J,content:Z}]}var Oc=q(()=>{mW()});function Lc(Z,J){if("model"in Z&&typeof Z.model==="string")return Z.model;if(J&&typeof J==="object"){let Q=J;if("model"in Q&&typeof Q.model==="string")return Q.model;if("modelVersion"in Q&&typeof Q.modelVersion==="string")return Q.modelVersion}return"unknown"}function cM0(Z){let J={};if("temperature"in Z&&typeof Z.temperature==="number")J[SZ]=Z.temperature;if("topP"in Z&&typeof Z.topP==="number")J[hZ]=Z.topP;if("topK"in Z&&typeof Z.topK==="number")J[TW]=Z.topK;if("maxOutputTokens"in Z&&typeof Z.maxOutputTokens==="number")J[l4]=Z.maxOutputTokens;if("frequencyPenalty"in Z&&typeof Z.frequencyPenalty==="number")J[_Z]=Z.frequencyPenalty;if("presencePenalty"in Z&&typeof Z.presencePenalty==="number")J[p4]=Z.presencePenalty;return J}function mM0(Z,J,Q){let $={[yZ]:Fc,[A1]:G5(Z),[f]:"auto.ai.google_genai"};if(J){if($[l0]=Lc(J,Q),"config"in J&&typeof J.config==="object"&&J.config){let Y=J.config;if(Object.assign($,cM0(Y)),"tools"in Y&&Array.isArray(Y.tools)){let X=Y.tools.flatMap((W)=>W.functionDeclarations);$[n9]=JSON.stringify(X)}}}else $[l0]=Lc({},Q);return $}function Cc(Z,J){let Q=[];if("config"in J&&J.config&&typeof J.config==="object"&&"systemInstruction"in J.config&&J.config.systemInstruction)Q.push(...t4(J.config.systemInstruction,"system"));if("history"in J)Q.push(...t4(J.history,"user"));if("contents"in J)Q.push(...t4(J.contents,"user"));if("message"in J)Q.push(...t4(J.message,"user"));if(Array.isArray(Q)&&Q.length){let{systemInstructions:$,filteredMessages:Y}=N6(Q);if($)Z.setAttribute(k6,$);let X=Array.isArray(Y)?Y.length:0;Z.setAttributes({[o1]:X,[I1]:JSON.stringify(xZ(Y))})}}function uM0(Z,J,Q){if(!J||typeof J!=="object")return;if(J.modelVersion)Z.setAttribute(z1,J.modelVersion);if(J.usageMetadata&&typeof J.usageMetadata==="object"){let $=J.usageMetadata;if(typeof $.promptTokenCount==="number")Z.setAttributes({[M0]:$.promptTokenCount});if(typeof $.candidatesTokenCount==="number")Z.setAttributes({[t0]:$.candidatesTokenCount});if(typeof $.totalTokenCount==="number")Z.setAttributes({[i1]:$.totalTokenCount})}if(Q&&Array.isArray(J.candidates)&&J.candidates.length>0){let $=J.candidates.map((Y)=>{if(Y.content?.parts&&Array.isArray(Y.content.parts))return Y.content.parts.map((X)=>typeof X.text==="string"?X.text:"").filter((X)=>X.length>0).join("");return""}).filter((Y)=>Y.length>0);if($.length>0)Z.setAttributes({[Q1]:$.join("")})}if(Q&&J.functionCalls){let $=J.functionCalls;if(Array.isArray($)&&$.length>0)Z.setAttributes({[O1]:JSON.stringify($)})}}function Pc(Z,J,Q,$){let Y=J===MU;return new Proxy(Z,{apply(X,W,K){let z=K[0],G=mM0(J,z,Q),H=G[l0]??"unknown",B=G5(J);if(Dc(J))return h0({name:`${B} ${H}`,op:i4(J),attributes:G},async(V)=>{try{if($.recordInputs&&z)Cc(V,z);let F=await X.apply(Q,K);return qc(F,V,Boolean($.recordOutputs))}catch(F){throw V.setStatus({code:a,message:"internal_error"}),_(F,{mechanism:{handled:!1,type:"auto.ai.google_genai",data:{function:J}}}),V.end(),F}});return r0({name:Y?`${B} ${H} create`:`${B} ${H}`,op:i4(J),attributes:G},(V)=>{if($.recordInputs&&z)Cc(V,z);return L9(()=>X.apply(Q,K),(F)=>{_(F,{mechanism:{handled:!1,type:"auto.ai.google_genai",data:{function:J}}})},()=>{},(F)=>{if(!Y)uM0(V,F,$.recordOutputs)})})}})}function RU(Z,J="",Q){return new Proxy(Z,{get:($,Y,X)=>{let W=Reflect.get($,Y,X),K=o4(J,String(Y));if(typeof W==="function"&&jc(K)){if(K===MU){let z=Pc(W,K,$,Q);return function(...H){let B=z(...H);if(B&&typeof B==="object")return RU(B,Uc,Q);return B}}return Pc(W,K,$,Q)}if(typeof W==="function")return W.bind($);if(W&&typeof W==="object")return RU(W,K,Q);return W}})}function e4(Z,J){return RU(Z,"",a9(J))}var Mc=q(()=>{k1();m0();w1();M6();mX();h1();g3();s9();mW();wc();Oc()});var uW="LangChain",V5="auto.ai.langchain",Rc;var lW=q(()=>{Rc={human:"user",ai:"assistant",assistant:"assistant",system:"system",function:"function",tool:"tool"}});function v8(Z){if(typeof Z==="string")return Z;try{return JSON.stringify(Z)}catch{return String(Z)}}function ZJ(Z){if(Array.isArray(Z))try{let J=Z.map((Q)=>Q&&typeof Q==="object"&&vZ(Q)?z5(Q):Q);return JSON.stringify(J)}catch{return String(Z)}return v8(Z)}function u3(Z){let J=Z.toLowerCase();return Rc[J]??J}function kc(Z){if(Z.includes("System"))return"system";if(Z.includes("Human"))return"user";if(Z.includes("AI")||Z.includes("Assistant"))return"assistant";if(Z.includes("Function"))return"function";if(Z.includes("Tool"))return"tool";return"user"}function kU(Z){if(!Z||Array.isArray(Z))return;return Z.invocation_params}function l3(Z){return Z.map((J)=>{let Q=J._getType;if(typeof Q==="function"){let Y=Q.call(J);return{role:u3(Y),content:ZJ(J.content)}}if(J.lc===1&&J.kwargs){let Y=J.id,X=Array.isArray(Y)&&Y.length>0?Y[Y.length-1]:"",W=typeof X==="string"?kc(X):"user";return{role:u3(W),content:ZJ(J.kwargs?.content)}}if(J.type){let Y=String(J.type).toLowerCase();return{role:u3(Y),content:ZJ(J.content)}}if(J.role)return{role:u3(String(J.role)),content:ZJ(J.content)};let $=J.constructor?.name;if($&&$!=="Object")return{role:u3(kc($)),content:ZJ(J.content)};return{role:"user",content:ZJ(J.content)}})}function lM0(Z,J,Q){let $={},Y="kwargs"in Z?Z.kwargs:void 0,X=J?.temperature??Q?.ls_temperature??Y?.temperature;A6($,SZ,X);let W=J?.max_tokens??Q?.ls_max_tokens??Y?.max_tokens;A6($,l4,W);let K=J?.top_p??Y?.top_p;A6($,hZ,K);let z=J?.frequency_penalty;A6($,_Z,z);let G=J?.presence_penalty;if(A6($,p4,G),J&&"stream"in J)r6($,u4,Boolean(J.stream));return $}function Nc(Z,J,Q,$,Y){return{[yZ]:v8(Z??"langchain"),[A1]:"chat",[l0]:v8(J),[f]:V5,...lM0(Q,$,Y)}}function Ac(Z,J,Q,$,Y){let X=Y?.ls_provider,W=$?.model??Y?.ls_model_name??"unknown",K=Nc(X,W,Z,$,Y);if(Q&&Array.isArray(J)&&J.length>0){r6(K,o1,J.length);let z=J.map((G)=>({role:"user",content:G}));r6(K,I1,v8(z))}return K}function Ic(Z,J,Q,$,Y){let X=Y?.ls_provider??Z.id?.[2],W=$?.model??Y?.ls_model_name??"unknown",K=Nc(X,W,Z,$,Y);if(Q&&Array.isArray(J)&&J.length>0){let z=l3(J.flat()),{systemInstructions:G,filteredMessages:H}=N6(z);if(G)r6(K,k6,G);let B=Array.isArray(H)?H.length:0;r6(K,o1,B);let V=xZ(H);r6(K,I1,v8(V))}return K}function pM0(Z,J){let Q=[],$=Z.flat();for(let Y of $){let X=Y.message?.content;if(Array.isArray(X))for(let W of X){let K=W;if(K.type==="tool_use")Q.push(K)}}if(Q.length>0)r6(J,O1,v8(Q))}function iM0(Z,J){if(!Z)return;let{tokenUsage:Q,usage:$}=Z;if(Q)A6(J,M0,Q.promptTokens),A6(J,t0,Q.completionTokens),A6(J,i1,Q.totalTokens);else if($){A6(J,M0,$.input_tokens),A6(J,t0,$.output_tokens);let Y=Number($.input_tokens),X=Number($.output_tokens),W=(Number.isNaN(Y)?0:Y)+(Number.isNaN(X)?0:X);if(W>0)A6(J,i1,W);if($.cache_creation_input_tokens!==void 0)A6(J,pg,$.cache_creation_input_tokens);if($.cache_read_input_tokens!==void 0)A6(J,ig,$.cache_read_input_tokens)}}function Tc(Z,J){if(!Z)return;let Q={};if(Array.isArray(Z.generations)){let G=Z.generations.flat().map((H)=>{if(H.generationInfo?.finish_reason)return H.generationInfo.finish_reason;if(H.generation_info?.finish_reason)return H.generation_info.finish_reason;return null}).filter((H)=>typeof H==="string");if(G.length>0)r6(Q,z6,v8(G));if(pM0(Z.generations,Q),J){let H=Z.generations.flat().map((B)=>B.text??B.message?.content).filter((B)=>typeof B==="string");if(H.length>0)r6(Q,Q1,v8(H))}}iM0(Z.llmOutput,Q);let $=Z.llmOutput,X=Z.generations?.[0]?.[0]?.message,W=$?.model_name??$?.model??X?.response_metadata?.model_name;if(W)r6(Q,z1,W);let K=$?.id??X?.id;if(K)r6(Q,s6,K);let z=$?.stop_reason??X?.response_metadata?.finish_reason;if(z)r6(Q,mg,v8(z));return Q}var r6=(Z,J,Q)=>{if(Q!=null)Z[J]=Q},A6=(Z,J,Q)=>{let $=Number(Q);if(!Number.isNaN($))Z[J]=$};var pW=q(()=>{m0();h1();YU();g3();s9();lW()});function JJ(Z={}){let{recordInputs:J,recordOutputs:Q}=a9(Z),$=new Map,Y=(W)=>{let K=$.get(W);if(K?.isRecording())K.end(),$.delete(W)},X={lc_serializable:!1,lc_namespace:["langchain_core","callbacks","sentry"],lc_secrets:void 0,lc_attributes:void 0,lc_aliases:void 0,lc_serializable_keys:void 0,lc_id:["langchain_core","callbacks","sentry"],lc_kwargs:{},name:"SentryCallbackHandler",ignoreLLM:!1,ignoreChain:!1,ignoreAgent:!1,ignoreRetriever:!1,ignoreCustomEvent:!1,raiseError:!1,awaitHandlers:!0,handleLLMStart(W,K,z,G,H,B,V,F){let U=kU(B),w=Ac(W,K,J,U,V),D=w[l0],L=w[A1];h0({name:`${L} ${D}`,op:"gen_ai.chat",attributes:{...w,[g]:"gen_ai.chat"}},(C)=>{return $.set(z,C),C})},handleChatModelStart(W,K,z,G,H,B,V,F){let U=kU(B),w=Ic(W,K,J,U,V),D=w[l0],L=w[A1];h0({name:`${L} ${D}`,op:"gen_ai.chat",attributes:{...w,[g]:"gen_ai.chat"}},(C)=>{return $.set(z,C),C})},handleLLMEnd(W,K,z,G,H){let B=$.get(K);if(B?.isRecording()){let V=Tc(W,Q);if(V)B.setAttributes(V);Y(K)}},handleLLMError(W,K){let z=$.get(K);if(z?.isRecording())z.setStatus({code:a,message:"internal_error"}),Y(K);_(W,{mechanism:{handled:!1,type:`${V5}.llm_error_handler`}})},handleChainStart(W,K,z,G,H,B,V,F){let U=F||W.name||"unknown_chain",w={[f]:"auto.ai.langchain","langchain.chain.name":U};if(J)w["langchain.chain.inputs"]=JSON.stringify(K);h0({name:`chain ${U}`,op:"gen_ai.invoke_agent",attributes:{...w,[g]:"gen_ai.invoke_agent"}},(D)=>{return $.set(z,D),D})},handleChainEnd(W,K){let z=$.get(K);if(z?.isRecording()){if(Q)z.setAttributes({"langchain.chain.outputs":JSON.stringify(W)});Y(K)}},handleChainError(W,K){let z=$.get(K);if(z?.isRecording())z.setStatus({code:a,message:"internal_error"}),Y(K);_(W,{mechanism:{handled:!1,type:`${V5}.chain_error_handler`}})},handleToolStart(W,K,z,G){let H=W.name||"unknown_tool",B={[f]:V5,[W5]:H};if(J)B[yW]=K;h0({name:`execute_tool ${H}`,op:"gen_ai.execute_tool",attributes:{...B,[g]:"gen_ai.execute_tool"}},(V)=>{return $.set(z,V),V})},handleToolEnd(W,K){let z=$.get(K);if(z?.isRecording()){if(Q)z.setAttributes({[SW]:JSON.stringify(W)});Y(K)}},handleToolError(W,K){let z=$.get(K);if(z?.isRecording())z.setStatus({code:a,message:"internal_error"}),Y(K);_(W,{mechanism:{handled:!1,type:`${V5}.tool_error_handler`}})},copy(){return X},toJSON(){return{lc:1,type:"not_implemented",id:X.lc_id}},toJSONNotImplemented(){return{lc:1,type:"not_implemented",id:X.lc_id}}};return X}var Ec=q(()=>{k1();m0();w1();M6();h1();s9();lW();pW()});var iW="LangGraph",NU="auto.ai.langgraph";var AU=()=>{};function oM0(Z){if(!Z||Z.length===0)return null;let J=[];for(let Q of Z)if(Q&&typeof Q==="object"){let $=Q.tool_calls;if($&&Array.isArray($))J.push(...$)}return J.length>0?J:null}function nM0(Z){let J=Z,Q=0,$=0,Y=0;if(J.usage_metadata&&typeof J.usage_metadata==="object"){let X=J.usage_metadata;if(typeof X.input_tokens==="number")Q=X.input_tokens;if(typeof X.output_tokens==="number")$=X.output_tokens;if(typeof X.total_tokens==="number")Y=X.total_tokens;return{inputTokens:Q,outputTokens:$,totalTokens:Y}}if(J.response_metadata&&typeof J.response_metadata==="object"){let X=J.response_metadata;if(X.tokenUsage&&typeof X.tokenUsage==="object"){let W=X.tokenUsage;if(typeof W.promptTokens==="number")Q=W.promptTokens;if(typeof W.completionTokens==="number")$=W.completionTokens;if(typeof W.totalTokens==="number")Y=W.totalTokens}}return{inputTokens:Q,outputTokens:$,totalTokens:Y}}function aM0(Z,J){let Q=J;if(Q.response_metadata&&typeof Q.response_metadata==="object"){let $=Q.response_metadata;if($.model_name&&typeof $.model_name==="string")Z.setAttribute(z1,$.model_name);if($.finish_reason&&typeof $.finish_reason==="string")Z.setAttribute(z6,[$.finish_reason])}}function fc(Z){if(!Z.builder?.nodes?.tools?.runnable?.tools)return null;let J=Z.builder?.nodes?.tools?.runnable?.tools;if(!J||!Array.isArray(J)||J.length===0)return null;return J.map((Q)=>({name:Q.lc_kwargs?.name,description:Q.lc_kwargs?.description,schema:Q.lc_kwargs?.schema}))}function yc(Z,J,Q){let Y=Q?.messages;if(!Y||!Array.isArray(Y))return;let X=J?.length??0,W=Y.length>X?Y.slice(X):[];if(W.length===0)return;let K=oM0(W);if(K)Z.setAttribute(O1,JSON.stringify(K));let z=l3(W);Z.setAttribute(Q1,JSON.stringify(z));let G=0,H=0,B=0;for(let V of W){let F=nM0(V);G+=F.inputTokens,H+=F.outputTokens,B+=F.totalTokens,aM0(Z,V)}if(G>0)Z.setAttribute(M0,G);if(H>0)Z.setAttribute(t0,H);if(B>0)Z.setAttribute(i1,B)}var Sc=q(()=>{h1();pW()});function p3(Z,J){return new Proxy(Z,{apply(Q,$,Y){return r0({op:"gen_ai.create_agent",name:"create_agent",attributes:{[f]:NU,[g]:"gen_ai.create_agent",[A1]:"create_agent"}},(X)=>{try{let W=Reflect.apply(Q,$,Y),K=Y.length>0?Y[0]:{};if(K?.name&&typeof K.name==="string")X.setAttribute(oF,K.name),X.updateName(`create_agent ${K.name}`);let z=W.invoke;if(z&&typeof z==="function")W.invoke=sM0(z.bind(W),W,K,J);return W}catch(W){throw X.setStatus({code:a,message:"internal_error"}),_(W,{mechanism:{handled:!1,type:"auto.ai.langgraph.error"}}),W}})}})}function sM0(Z,J,Q,$){return new Proxy(Z,{apply(Y,X,W){return r0({op:"gen_ai.invoke_agent",name:"invoke_agent",attributes:{[f]:NU,[g]:EW,[A1]:"invoke_agent"}},async(K)=>{try{let z=Q?.name;if(z&&typeof z==="string")K.setAttribute(lg,z),K.setAttribute(oF,z),K.updateName(`invoke_agent ${z}`);let B=(W.length>1?W[1]:void 0)?.configurable?.thread_id;if(B&&typeof B==="string")K.setAttribute(b3,B);let V=fc(J);if(V)K.setAttribute(n9,JSON.stringify(V));let{recordInputs:F,recordOutputs:U}=$,w=W.length>0?W[0]?.messages??[]:[];if(w&&F){let L=l3(w),{systemInstructions:C,filteredMessages:R}=N6(L);if(C)K.setAttribute(k6,C);let T=xZ(R),S=Array.isArray(R)?R.length:0;K.setAttributes({[I1]:JSON.stringify(T),[o1]:S})}let D=await Reflect.apply(Y,X,W);if(U)yc(K,w??null,D);return D}catch(z){throw K.setStatus({code:a,message:"internal_error"}),_(z,{mechanism:{handled:!1,type:"auto.ai.langgraph.error"}}),z}})}})}function QJ(Z,J){return Z.compile=p3(Z.compile,a9(J)),Z}var _c=q(()=>{k1();m0();w1();M6();h1();g3();s9();pW();AU();Sc()});function i3(Z){if(Z===void 0)return;else if(Z>=400&&Z<500)return"warning";else if(Z>=500)return"error";else return}var hc=()=>{};function bc(){return typeof __SENTRY_BROWSER_BUNDLE__<"u"&&!!__SENTRY_BROWSER_BUNDLE__}var vc=()=>{};function xc(){return!bc()&&Object.prototype.toString.call(typeof process<"u"?process:0)==="[object process]"}var gc=q(()=>{vc()});function I9(){return typeof window<"u"&&(!xc()||rM0())}function rM0(){return d.process?.type==="renderer"}var dc=q(()=>{gc();J1()});function o3(Z,J,Q){let $=Z[J];if(typeof $!=="function")return;try{Z[J]=Q}catch{Object.defineProperty(Z,J,{value:Q,writable:!0,configurable:!0,enumerable:!0})}if(Z.default===$)try{Z.default=Q}catch{Object.defineProperty(Z,"default",{value:Q,writable:!0,configurable:!0,enumerable:!0})}}var cc=()=>{};function uc(Z,J=!1){return!(J||Z&&!Z.startsWith("/")&&!Z.match(/^[A-Z]:/)&&!Z.startsWith(".")&&!Z.match(/^[a-zA-Z]([a-zA-Z0-9.\-+])*:\/\//))&&Z!==void 0&&!Z.includes("node_modules/")}function lc(Z){let J=/^\s*[-]{4,}$/,Q=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/,$=/at (?:async )?(.+?) \(data:(.*?),/;return(Y)=>{let X=Y.match($);if(X)return{filename:`<data:${X[2]}>`,function:X[1]};let W=Y.match(Q);if(W){let K,z,G,H,B;if(W[1]){G=W[1];let w=G.lastIndexOf(".");if(G[w-1]===".")w--;if(w>0){K=G.slice(0,w),z=G.slice(w+1);let D=K.indexOf(".Module");if(D>0)G=G.slice(D+1),K=K.slice(0,D)}H=void 0}if(z)H=K,B=z;if(z==="<anonymous>")B=void 0,G=void 0;if(G===void 0)B=B||QV,G=H?`${H}.${B}`:B;let V=Sh(W[2]),F=W[5]==="native";if(!V&&W[5]&&!F)V=W[5];let U=V?tM0(V):void 0;return{filename:U??V,module:U&&Z?.(U),function:G,lineno:mc(W[3]),colno:mc(W[4]),in_app:uc(V||"",F)}}if(Y.match(J))return{filename:Y};return}}function IU(Z){return[90,lc(Z)]}function mc(Z){return parseInt(Z||"",10)||void 0}function tM0(Z){try{return decodeURI(Z)}catch{return}}var pc=q(()=>{v7()});class I6{constructor(Z){this._maxSize=Z,this._cache=new Map}get size(){return this._cache.size}get(Z){let J=this._cache.get(Z);if(J===void 0)return;return this._cache.delete(Z),this._cache.set(Z,J),J}set(Z,J){if(this._cache.size>=this._maxSize){let Q=this._cache.keys().next().value;this._cache.delete(Q)}this._cache.set(Z,J)}remove(Z){let J=this._cache.get(Z);if(J)this._cache.delete(Z);return J}clear(){this._cache.clear()}keys(){return Array.from(this._cache.keys())}values(){let Z=[];return this._cache.forEach((J)=>Z.push(J)),Z}}var ic=()=>{};var N=q(()=>{H4();w1();M6();L8();fV();LV();nX();m0();k1();B0();HV();j4();U4();Ov();Lv();$W();D1();Cv();Pv();A4();xQ();mX();Rv();j1();P4();kv();UF();Av();Iv();Tv();hv();GW();xv();dv();iv();rv();tv();Qx();Yx();Kx();Hx();Fx();Ux();wx();jx();Ox();Lx();Px();Rx();Sg();_g();w3();bg();vg();xg();_d();wU();Zc();gW();Vc();DU();Mc();mW();Ec();lW();_c();AU();hc();J1();S0();dc();Z0();O6();R1();PF();VW();cc();v7();pc();w9();cQ();C8();C4();VF();ic();j8();TX();vV();F8()});var n3=j((oc)=>{Object.defineProperty(oc,"__esModule",{value:!0});oc.isTracingSuppressed=oc.unsuppressTracing=oc.suppressTracing=void 0;var eM0=I(),TU=(0,eM0.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function ZR0(Z){return Z.setValue(TU,!0)}oc.suppressTracing=ZR0;function JR0(Z){return Z.deleteValue(TU)}oc.unsuppressTracing=JR0;function QR0(Z){return Z.getValue(TU)===!0}oc.isTracingSuppressed=QR0});var EU=j((ac)=>{Object.defineProperty(ac,"__esModule",{value:!0});ac.BAGGAGE_MAX_TOTAL_LENGTH=ac.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=ac.BAGGAGE_MAX_NAME_VALUE_PAIRS=ac.BAGGAGE_HEADER=ac.BAGGAGE_ITEMS_SEPARATOR=ac.BAGGAGE_PROPERTIES_SEPARATOR=ac.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;ac.BAGGAGE_KEY_PAIR_SEPARATOR="=";ac.BAGGAGE_PROPERTIES_SEPARATOR=";";ac.BAGGAGE_ITEMS_SEPARATOR=",";ac.BAGGAGE_HEADER="baggage";ac.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;ac.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;ac.BAGGAGE_MAX_TOTAL_LENGTH=8192});var fU=j((tc)=>{Object.defineProperty(tc,"__esModule",{value:!0});tc.parseKeyPairsIntoRecord=tc.parsePairKeyValue=tc.getKeyPairs=tc.serializeKeyPairs=void 0;var BR0=I(),$J=EU();function VR0(Z){return Z.reduce((J,Q)=>{let $=`${J}${J!==""?$J.BAGGAGE_ITEMS_SEPARATOR:""}${Q}`;return $.length>$J.BAGGAGE_MAX_TOTAL_LENGTH?J:$},"")}tc.serializeKeyPairs=VR0;function FR0(Z){return Z.getAllEntries().map(([J,Q])=>{let $=`${encodeURIComponent(J)}=${encodeURIComponent(Q.value)}`;if(Q.metadata!==void 0)$+=$J.BAGGAGE_PROPERTIES_SEPARATOR+Q.metadata.toString();return $})}tc.getKeyPairs=FR0;function rc(Z){if(!Z)return;let J=Z.indexOf($J.BAGGAGE_PROPERTIES_SEPARATOR),Q=J===-1?Z:Z.substring(0,J),$=Q.indexOf($J.BAGGAGE_KEY_PAIR_SEPARATOR);if($<=0)return;let Y=Q.substring(0,$).trim(),X=Q.substring($+1).trim();if(!Y||!X)return;let W,K;try{W=decodeURIComponent(Y),K=decodeURIComponent(X)}catch{return}let z;if(J!==-1&&J<Z.length-1){let G=Z.substring(J+1);z=(0,BR0.baggageEntryMetadataFromString)(G)}return{key:W,value:K,metadata:z}}tc.parsePairKeyValue=rc;function UR0(Z){let J={};if(typeof Z==="string"&&Z.length>0)Z.split($J.BAGGAGE_ITEMS_SEPARATOR).forEach((Q)=>{let $=rc(Q);if($!==void 0&&$.value.length>0)J[$.key]=$.value});return J}tc.parseKeyPairsIntoRecord=UR0});var $m=j((Jm)=>{Object.defineProperty(Jm,"__esModule",{value:!0});Jm.W3CBaggagePropagator=void 0;var yU=I(),DR0=n3(),F5=EU(),SU=fU();class Zm{inject(Z,J,Q){let $=yU.propagation.getBaggage(Z);if(!$||(0,DR0.isTracingSuppressed)(Z))return;let Y=(0,SU.getKeyPairs)($).filter((W)=>{return W.length<=F5.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS}).slice(0,F5.BAGGAGE_MAX_NAME_VALUE_PAIRS),X=(0,SU.serializeKeyPairs)(Y);if(X.length>0)Q.set(J,F5.BAGGAGE_HEADER,X)}extract(Z,J,Q){let $=Q.get(J,F5.BAGGAGE_HEADER),Y=Array.isArray($)?$.join(F5.BAGGAGE_ITEMS_SEPARATOR):$;if(!Y)return Z;let X={};if(Y.length===0)return Z;if(Y.split(F5.BAGGAGE_ITEMS_SEPARATOR).forEach((K)=>{let z=(0,SU.parsePairKeyValue)(K);if(z){let G={value:z.value};if(z.metadata)G.metadata=z.metadata;X[z.key]=G}}),Object.entries(X).length===0)return Z;return yU.propagation.setBaggage(Z,yU.propagation.createBaggage(X))}fields(){return[F5.BAGGAGE_HEADER]}}Jm.W3CBaggagePropagator=Zm});var Km=j((Xm)=>{Object.defineProperty(Xm,"__esModule",{value:!0});Xm.AnchoredClock=void 0;class Ym{_monotonicClock;_epochMillis;_performanceMillis;constructor(Z,J){this._monotonicClock=J,this._epochMillis=Z.now(),this._performanceMillis=J.now()}now(){let Z=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+Z}}Xm.AnchoredClock=Ym});var Um=j((Vm)=>{Object.defineProperty(Vm,"__esModule",{value:!0});Vm.isAttributeValue=Vm.isAttributeKey=Vm.sanitizeAttributes=void 0;var zm=I();function OR0(Z){let J={};if(typeof Z!=="object"||Z==null)return J;for(let Q in Z){if(!Object.prototype.hasOwnProperty.call(Z,Q))continue;if(!Gm(Q)){zm.diag.warn(`Invalid attribute key: ${Q}`);continue}let $=Z[Q];if(!Hm($)){zm.diag.warn(`Invalid attribute value set for key: ${Q}`);continue}if(Array.isArray($))J[Q]=$.slice();else J[Q]=$}return J}Vm.sanitizeAttributes=OR0;function Gm(Z){return typeof Z==="string"&&Z!==""}Vm.isAttributeKey=Gm;function Hm(Z){if(Z==null)return!0;if(Array.isArray(Z))return LR0(Z);return Bm(typeof Z)}Vm.isAttributeValue=Hm;function LR0(Z){let J;for(let Q of Z){if(Q==null)continue;let $=typeof Q;if($===J)continue;if(!J){if(Bm($)){J=$;continue}return!1}return!1}return!0}function Bm(Z){switch(Z){case"number":case"boolean":case"string":return!0}return!1}});var _U=j((qm)=>{Object.defineProperty(qm,"__esModule",{value:!0});qm.loggingErrorHandler=void 0;var MR0=I();function RR0(){return(Z)=>{MR0.diag.error(kR0(Z))}}qm.loggingErrorHandler=RR0;function kR0(Z){if(typeof Z==="string")return Z;else return JSON.stringify(NR0(Z))}function NR0(Z){let J={},Q=Z;while(Q!==null)Object.getOwnPropertyNames(Q).forEach(($)=>{if(J[$])return;let Y=Q[$];if(Y)J[$]=String(Y)}),Q=Object.getPrototypeOf(Q);return J}});var Lm=j((Dm)=>{Object.defineProperty(Dm,"__esModule",{value:!0});Dm.globalErrorHandler=Dm.setGlobalErrorHandler=void 0;var AR0=_U(),jm=(0,AR0.loggingErrorHandler)();function IR0(Z){jm=Z}Dm.setGlobalErrorHandler=IR0;function TR0(Z){try{jm(Z)}catch{}}Dm.globalErrorHandler=TR0});var Nm=j((Rm)=>{Object.defineProperty(Rm,"__esModule",{value:!0});Rm.getStringListFromEnv=Rm.getBooleanFromEnv=Rm.getStringFromEnv=Rm.getNumberFromEnv=void 0;var Cm=I(),Pm=E("util");function fR0(Z){let J=process.env[Z];if(J==null||J.trim()==="")return;let Q=Number(J);if(isNaN(Q)){Cm.diag.warn(`Unknown value ${(0,Pm.inspect)(J)} for ${Z}, expected a number, using defaults`);return}return Q}Rm.getNumberFromEnv=fR0;function Mm(Z){let J=process.env[Z];if(J==null||J.trim()==="")return;return J}Rm.getStringFromEnv=Mm;function yR0(Z){let J=process.env[Z]?.trim().toLowerCase();if(J==null||J==="")return!1;if(J==="true")return!0;else if(J==="false")return!1;else return Cm.diag.warn(`Unknown value ${(0,Pm.inspect)(J)} for ${Z}, expected 'true' or 'false', falling back to 'false' (default)`),!1}Rm.getBooleanFromEnv=yR0;function SR0(Z){return Mm(Z)?.split(",").map((J)=>J.trim()).filter((J)=>J!=="")}Rm.getStringListFromEnv=SR0});var Tm=j((Am)=>{Object.defineProperty(Am,"__esModule",{value:!0});Am._globalThis=void 0;Am._globalThis=globalThis});var ym=j((Em)=>{Object.defineProperty(Em,"__esModule",{value:!0});Em.VERSION=void 0;Em.VERSION="2.6.1"});var hm=j((Sm)=>{Object.defineProperty(Sm,"__esModule",{value:!0});Sm.ATTR_PROCESS_RUNTIME_NAME=void 0;Sm.ATTR_PROCESS_RUNTIME_NAME="process.runtime.name"});var xm=j((bm)=>{Object.defineProperty(bm,"__esModule",{value:!0});bm.SDK_INFO=void 0;var vR0=ym(),oW=Y0(),xR0=hm();bm.SDK_INFO={[oW.ATTR_TELEMETRY_SDK_NAME]:"opentelemetry",[xR0.ATTR_PROCESS_RUNTIME_NAME]:"node",[oW.ATTR_TELEMETRY_SDK_LANGUAGE]:oW.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS,[oW.ATTR_TELEMETRY_SDK_VERSION]:vR0.VERSION}});var dm=j((mZ)=>{Object.defineProperty(mZ,"__esModule",{value:!0});mZ.otperformance=mZ.SDK_INFO=mZ._globalThis=mZ.getStringListFromEnv=mZ.getNumberFromEnv=mZ.getBooleanFromEnv=mZ.getStringFromEnv=void 0;var nW=Nm();Object.defineProperty(mZ,"getStringFromEnv",{enumerable:!0,get:function(){return nW.getStringFromEnv}});Object.defineProperty(mZ,"getBooleanFromEnv",{enumerable:!0,get:function(){return nW.getBooleanFromEnv}});Object.defineProperty(mZ,"getNumberFromEnv",{enumerable:!0,get:function(){return nW.getNumberFromEnv}});Object.defineProperty(mZ,"getStringListFromEnv",{enumerable:!0,get:function(){return nW.getStringListFromEnv}});var gR0=Tm();Object.defineProperty(mZ,"_globalThis",{enumerable:!0,get:function(){return gR0._globalThis}});var dR0=xm();Object.defineProperty(mZ,"SDK_INFO",{enumerable:!0,get:function(){return dR0.SDK_INFO}});mZ.otperformance=performance});var hU=j((x8)=>{Object.defineProperty(x8,"__esModule",{value:!0});x8.getStringListFromEnv=x8.getNumberFromEnv=x8.getStringFromEnv=x8.getBooleanFromEnv=x8.otperformance=x8._globalThis=x8.SDK_INFO=void 0;var U5=dm();Object.defineProperty(x8,"SDK_INFO",{enumerable:!0,get:function(){return U5.SDK_INFO}});Object.defineProperty(x8,"_globalThis",{enumerable:!0,get:function(){return U5._globalThis}});Object.defineProperty(x8,"otperformance",{enumerable:!0,get:function(){return U5.otperformance}});Object.defineProperty(x8,"getBooleanFromEnv",{enumerable:!0,get:function(){return U5.getBooleanFromEnv}});Object.defineProperty(x8,"getStringFromEnv",{enumerable:!0,get:function(){return U5.getStringFromEnv}});Object.defineProperty(x8,"getNumberFromEnv",{enumerable:!0,get:function(){return U5.getNumberFromEnv}});Object.defineProperty(x8,"getStringListFromEnv",{enumerable:!0,get:function(){return U5.getStringListFromEnv}})});var im=j((lm)=>{Object.defineProperty(lm,"__esModule",{value:!0});lm.addHrTimes=lm.isTimeInput=lm.isTimeInputHrTime=lm.hrTimeToMicroseconds=lm.hrTimeToMilliseconds=lm.hrTimeToNanoseconds=lm.hrTimeToTimeStamp=lm.hrTimeDuration=lm.timeInputToHrTime=lm.hrTime=lm.getTimeOrigin=lm.millisToHrTime=void 0;var aW=hU(),cm=9,mR0=6,uR0=Math.pow(10,mR0),sW=Math.pow(10,cm);function a3(Z){let J=Z/1000,Q=Math.trunc(J),$=Math.round(Z%1000*uR0);return[Q,$]}lm.millisToHrTime=a3;function lR0(){return aW.otperformance.timeOrigin}lm.getTimeOrigin=lR0;function mm(Z){let J=a3(aW.otperformance.timeOrigin),Q=a3(typeof Z==="number"?Z:aW.otperformance.now());return um(J,Q)}lm.hrTime=mm;function pR0(Z){if(bU(Z))return Z;else if(typeof Z==="number")if(Z<aW.otperformance.timeOrigin)return mm(Z);else return a3(Z);else if(Z instanceof Date)return a3(Z.getTime());else throw TypeError("Invalid input type")}lm.timeInputToHrTime=pR0;function iR0(Z,J){let Q=J[0]-Z[0],$=J[1]-Z[1];if($<0)Q-=1,$+=sW;return[Q,$]}lm.hrTimeDuration=iR0;function oR0(Z){let J=cm,Q=`${"0".repeat(J)}${Z[1]}Z`,$=Q.substring(Q.length-J-1);return new Date(Z[0]*1000).toISOString().replace("000Z",$)}lm.hrTimeToTimeStamp=oR0;function nR0(Z){return Z[0]*sW+Z[1]}lm.hrTimeToNanoseconds=nR0;function aR0(Z){return Z[0]*1000+Z[1]/1e6}lm.hrTimeToMilliseconds=aR0;function sR0(Z){return Z[0]*1e6+Z[1]/1000}lm.hrTimeToMicroseconds=sR0;function bU(Z){return Array.isArray(Z)&&Z.length===2&&typeof Z[0]==="number"&&typeof Z[1]==="number"}lm.isTimeInputHrTime=bU;function rR0(Z){return bU(Z)||typeof Z==="number"||Z instanceof Date}lm.isTimeInput=rR0;function um(Z,J){let Q=[Z[0]+J[0],Z[1]+J[1]];if(Q[1]>=sW)Q[1]-=sW,Q[0]+=1;return Q}lm.addHrTimes=um});var am=j((om)=>{Object.defineProperty(om,"__esModule",{value:!0});om.unrefTimer=void 0;function Gk0(Z){if(typeof Z!=="number")Z.unref()}om.unrefTimer=Gk0});var rm=j((sm)=>{Object.defineProperty(sm,"__esModule",{value:!0});sm.ExportResultCode=void 0;var Hk0;(function(Z){Z[Z.SUCCESS=0]="SUCCESS",Z[Z.FAILED=1]="FAILED"})(Hk0=sm.ExportResultCode||(sm.ExportResultCode={}))});var Qu=j((Zu)=>{Object.defineProperty(Zu,"__esModule",{value:!0});Zu.CompositePropagator=void 0;var tm=I();class em{_propagators;_fields;constructor(Z={}){this._propagators=Z.propagators??[],this._fields=Array.from(new Set(this._propagators.map((J)=>typeof J.fields==="function"?J.fields():[]).reduce((J,Q)=>J.concat(Q),[])))}inject(Z,J,Q){for(let $ of this._propagators)try{$.inject(Z,J,Q)}catch(Y){tm.diag.warn(`Failed to inject with ${$.constructor.name}. Err: ${Y.message}`)}}extract(Z,J,Q){return this._propagators.reduce(($,Y)=>{try{return Y.extract($,J,Q)}catch(X){tm.diag.warn(`Failed to extract with ${Y.constructor.name}. Err: ${X.message}`)}return $},Z)}fields(){return this._fields.slice()}}Zu.CompositePropagator=em});var Xu=j(($u)=>{Object.defineProperty($u,"__esModule",{value:!0});$u.validateValue=$u.validateKey=void 0;var xU="[_0-9a-z-*/]",Bk0=`[a-z]${xU}{0,255}`,Vk0=`[a-z0-9]${xU}{0,240}@[a-z]${xU}{0,13}`,Fk0=new RegExp(`^(?:${Bk0}|${Vk0})$`),Uk0=/^[ -~]{0,255}[!-~]$/,qk0=/,|=/;function wk0(Z){return Fk0.test(Z)}$u.validateKey=wk0;function jk0(Z){return Uk0.test(Z)&&!qk0.test(Z)}$u.validateValue=jk0});var dU=j((Hu)=>{Object.defineProperty(Hu,"__esModule",{value:!0});Hu.TraceState=void 0;var Wu=Xu(),Ku=32,Ok0=512,zu=",",Gu="=";class gU{_internalState=new Map;constructor(Z){if(Z)this._parse(Z)}set(Z,J){let Q=this._clone();if(Q._internalState.has(Z))Q._internalState.delete(Z);return Q._internalState.set(Z,J),Q}unset(Z){let J=this._clone();return J._internalState.delete(Z),J}get(Z){return this._internalState.get(Z)}serialize(){return this._keys().reduce((Z,J)=>{return Z.push(J+Gu+this.get(J)),Z},[]).join(zu)}_parse(Z){if(Z.length>Ok0)return;if(this._internalState=Z.split(zu).reverse().reduce((J,Q)=>{let $=Q.trim(),Y=$.indexOf(Gu);if(Y!==-1){let X=$.slice(0,Y),W=$.slice(Y+1,Q.length);if((0,Wu.validateKey)(X)&&(0,Wu.validateValue)(W))J.set(X,W)}return J},new Map),this._internalState.size>Ku)this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,Ku))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let Z=new gU;return Z._internalState=new Map(this._internalState),Z}}Hu.TraceState=gU});var wu=j((Uu)=>{Object.defineProperty(Uu,"__esModule",{value:!0});Uu.W3CTraceContextPropagator=Uu.parseTraceParent=Uu.TRACE_STATE_HEADER=Uu.TRACE_PARENT_HEADER=void 0;var rW=I(),Lk0=n3(),Ck0=dU();Uu.TRACE_PARENT_HEADER="traceparent";Uu.TRACE_STATE_HEADER="tracestate";var Pk0="00",Mk0="(?!ff)[\\da-f]{2}",Rk0="(?![0]{32})[\\da-f]{32}",kk0="(?![0]{16})[\\da-f]{16}",Nk0="[\\da-f]{2}",Ak0=new RegExp(`^\\s?(${Mk0})-(${Rk0})-(${kk0})-(${Nk0})(-.*)?\\s?$`);function Vu(Z){let J=Ak0.exec(Z);if(!J)return null;if(J[1]==="00"&&J[5])return null;return{traceId:J[2],spanId:J[3],traceFlags:parseInt(J[4],16)}}Uu.parseTraceParent=Vu;class Fu{inject(Z,J,Q){let $=rW.trace.getSpanContext(Z);if(!$||(0,Lk0.isTracingSuppressed)(Z)||!(0,rW.isSpanContextValid)($))return;let Y=`${Pk0}-${$.traceId}-${$.spanId}-0${Number($.traceFlags||rW.TraceFlags.NONE).toString(16)}`;if(Q.set(J,Uu.TRACE_PARENT_HEADER,Y),$.traceState)Q.set(J,Uu.TRACE_STATE_HEADER,$.traceState.serialize())}extract(Z,J,Q){let $=Q.get(J,Uu.TRACE_PARENT_HEADER);if(!$)return Z;let Y=Array.isArray($)?$[0]:$;if(typeof Y!=="string")return Z;let X=Vu(Y);if(!X)return Z;X.isRemote=!0;let W=Q.get(J,Uu.TRACE_STATE_HEADER);if(W){let K=Array.isArray(W)?W.join(","):W;X.traceState=new Ck0.TraceState(typeof K==="string"?K:void 0)}return rW.trace.setSpanContext(Z,X)}fields(){return[Uu.TRACE_PARENT_HEADER,Uu.TRACE_STATE_HEADER]}}Uu.W3CTraceContextPropagator=Fu});var Lu=j((Du)=>{Object.defineProperty(Du,"__esModule",{value:!0});Du.getRPCMetadata=Du.deleteRPCMetadata=Du.setRPCMetadata=Du.RPCType=void 0;var Tk0=I(),cU=(0,Tk0.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),Ek0;(function(Z){Z.HTTP="http"})(Ek0=Du.RPCType||(Du.RPCType={}));function fk0(Z,J){return Z.setValue(cU,J)}Du.setRPCMetadata=fk0;function yk0(Z){return Z.deleteValue(cU)}Du.deleteRPCMetadata=yk0;function Sk0(Z){return Z.getValue(cU)}Du.getRPCMetadata=Sk0});var Au=j((ku)=>{Object.defineProperty(ku,"__esModule",{value:!0});ku.isPlainObject=void 0;var bk0="[object Object]",vk0="[object Null]",xk0="[object Undefined]",gk0=Function.prototype,Cu=gk0.toString,dk0=Cu.call(Object),ck0=Object.getPrototypeOf,Pu=Object.prototype,Mu=Pu.hasOwnProperty,q5=Symbol?Symbol.toStringTag:void 0,Ru=Pu.toString;function mk0(Z){if(!uk0(Z)||lk0(Z)!==bk0)return!1;let J=ck0(Z);if(J===null)return!0;let Q=Mu.call(J,"constructor")&&J.constructor;return typeof Q=="function"&&Q instanceof Q&&Cu.call(Q)===dk0}ku.isPlainObject=mk0;function uk0(Z){return Z!=null&&typeof Z=="object"}function lk0(Z){if(Z==null)return Z===void 0?xk0:vk0;return q5&&q5 in Object(Z)?pk0(Z):ik0(Z)}function pk0(Z){let J=Mu.call(Z,q5),Q=Z[q5],$=!1;try{Z[q5]=void 0,$=!0}catch{}let Y=Ru.call(Z);if($)if(J)Z[q5]=Q;else delete Z[q5];return Y}function ik0(Z){return Ru.call(Z)}});var _u=j((yu)=>{Object.defineProperty(yu,"__esModule",{value:!0});yu.merge=void 0;var Iu=Au(),ok0=20;function nk0(...Z){let J=Z.shift(),Q=new WeakMap;while(Z.length>0)J=Eu(J,Z.shift(),0,Q);return J}yu.merge=nk0;function mU(Z){if(JK(Z))return Z.slice();return Z}function Eu(Z,J,Q=0,$){let Y;if(Q>ok0)return;if(Q++,ZK(Z)||ZK(J)||fu(J))Y=mU(J);else if(JK(Z)){if(Y=Z.slice(),JK(J))for(let X=0,W=J.length;X<W;X++)Y.push(mU(J[X]));else if(s3(J)){let X=Object.keys(J);for(let W=0,K=X.length;W<K;W++){let z=X[W];Y[z]=mU(J[z])}}}else if(s3(Z))if(s3(J)){if(!ak0(Z,J))return J;Y=Object.assign({},Z);let X=Object.keys(J);for(let W=0,K=X.length;W<K;W++){let z=X[W],G=J[z];if(ZK(G))if(typeof G>"u")delete Y[z];else Y[z]=G;else{let H=Y[z],B=G;if(Tu(Z,z,$)||Tu(J,z,$))delete Y[z];else{if(s3(H)&&s3(B)){let V=$.get(H)||[],F=$.get(B)||[];V.push({obj:Z,key:z}),F.push({obj:J,key:z}),$.set(H,V),$.set(B,F)}Y[z]=Eu(Y[z],G,Q,$)}}}}else Y=J;return Y}function Tu(Z,J,Q){let $=Q.get(Z[J])||[];for(let Y=0,X=$.length;Y<X;Y++){let W=$[Y];if(W.key===J&&W.obj===Z)return!0}return!1}function JK(Z){return Array.isArray(Z)}function fu(Z){return typeof Z==="function"}function s3(Z){return!ZK(Z)&&!JK(Z)&&!fu(Z)&&typeof Z==="object"}function ZK(Z){return typeof Z==="string"||typeof Z==="number"||typeof Z==="boolean"||typeof Z>"u"||Z instanceof Date||Z instanceof RegExp||Z===null}function ak0(Z,J){if(!(0,Iu.isPlainObject)(Z)||!(0,Iu.isPlainObject)(J))return!1;return!0}});var vu=j((hu)=>{Object.defineProperty(hu,"__esModule",{value:!0});hu.callWithTimeout=hu.TimeoutError=void 0;class QK extends Error{constructor(Z){super(Z);Object.setPrototypeOf(this,QK.prototype)}}hu.TimeoutError=QK;function sk0(Z,J){let Q,$=new Promise(function(X,W){Q=setTimeout(function(){W(new QK("Operation timed out."))},J)});return Promise.race([Z,$]).then((Y)=>{return clearTimeout(Q),Y},(Y)=>{throw clearTimeout(Q),Y})}hu.callWithTimeout=sk0});var cu=j((gu)=>{Object.defineProperty(gu,"__esModule",{value:!0});gu.isUrlIgnored=gu.urlMatches=void 0;function xu(Z,J){if(typeof J==="string")return Z===J;else return!!Z.match(J)}gu.urlMatches=xu;function tk0(Z,J){if(!J)return!1;for(let Q of J)if(xu(Z,Q))return!0;return!1}gu.isUrlIgnored=tk0});var pu=j((uu)=>{Object.defineProperty(uu,"__esModule",{value:!0});uu.Deferred=void 0;class mu{_promise;_resolve;_reject;constructor(){this._promise=new Promise((Z,J)=>{this._resolve=Z,this._reject=J})}get promise(){return this._promise}resolve(Z){this._resolve(Z)}reject(Z){this._reject(Z)}}uu.Deferred=mu});var au=j((ou)=>{Object.defineProperty(ou,"__esModule",{value:!0});ou.BindOnceFuture=void 0;var ZN0=pu();class iu{_isCalled=!1;_deferred=new ZN0.Deferred;_callback;_that;constructor(Z,J){this._callback=Z,this._that=J}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...Z){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...Z)).then((J)=>this._deferred.resolve(J),(J)=>this._deferred.reject(J))}catch(J){this._deferred.reject(J)}}return this._deferred.promise}}ou.BindOnceFuture=iu});var eu=j((ru)=>{Object.defineProperty(ru,"__esModule",{value:!0});ru.diagLogLevelFromString=void 0;var g8=I(),su={ALL:g8.DiagLogLevel.ALL,VERBOSE:g8.DiagLogLevel.VERBOSE,DEBUG:g8.DiagLogLevel.DEBUG,INFO:g8.DiagLogLevel.INFO,WARN:g8.DiagLogLevel.WARN,ERROR:g8.DiagLogLevel.ERROR,NONE:g8.DiagLogLevel.NONE};function JN0(Z){if(Z==null)return;let J=su[Z.toUpperCase()];if(J==null)return g8.diag.warn(`Unknown log level "${Z}", expected one of ${Object.keys(su)}, using default`),g8.DiagLogLevel.INFO;return J}ru.diagLogLevelFromString=JN0});var $l=j((Jl)=>{Object.defineProperty(Jl,"__esModule",{value:!0});Jl._export=void 0;var Zl=I(),QN0=n3();function $N0(Z,J){return new Promise((Q)=>{Zl.context.with((0,QN0.suppressTracing)(Zl.context.active()),()=>{Z.export(J,Q)})})}Jl._export=$N0});var R0=j((o)=>{Object.defineProperty(o,"__esModule",{value:!0});o.internal=o.diagLogLevelFromString=o.BindOnceFuture=o.urlMatches=o.isUrlIgnored=o.callWithTimeout=o.TimeoutError=o.merge=o.TraceState=o.unsuppressTracing=o.suppressTracing=o.isTracingSuppressed=o.setRPCMetadata=o.getRPCMetadata=o.deleteRPCMetadata=o.RPCType=o.parseTraceParent=o.W3CTraceContextPropagator=o.TRACE_STATE_HEADER=o.TRACE_PARENT_HEADER=o.CompositePropagator=o.otperformance=o.getStringListFromEnv=o.getNumberFromEnv=o.getBooleanFromEnv=o.getStringFromEnv=o._globalThis=o.SDK_INFO=o.parseKeyPairsIntoRecord=o.ExportResultCode=o.unrefTimer=o.timeInputToHrTime=o.millisToHrTime=o.isTimeInputHrTime=o.isTimeInput=o.hrTimeToTimeStamp=o.hrTimeToNanoseconds=o.hrTimeToMilliseconds=o.hrTimeToMicroseconds=o.hrTimeDuration=o.hrTime=o.getTimeOrigin=o.addHrTimes=o.loggingErrorHandler=o.setGlobalErrorHandler=o.globalErrorHandler=o.sanitizeAttributes=o.isAttributeValue=o.AnchoredClock=o.W3CBaggagePropagator=void 0;var YN0=$m();Object.defineProperty(o,"W3CBaggagePropagator",{enumerable:!0,get:function(){return YN0.W3CBaggagePropagator}});var XN0=Km();Object.defineProperty(o,"AnchoredClock",{enumerable:!0,get:function(){return XN0.AnchoredClock}});var Yl=Um();Object.defineProperty(o,"isAttributeValue",{enumerable:!0,get:function(){return Yl.isAttributeValue}});Object.defineProperty(o,"sanitizeAttributes",{enumerable:!0,get:function(){return Yl.sanitizeAttributes}});var Xl=Lm();Object.defineProperty(o,"globalErrorHandler",{enumerable:!0,get:function(){return Xl.globalErrorHandler}});Object.defineProperty(o,"setGlobalErrorHandler",{enumerable:!0,get:function(){return Xl.setGlobalErrorHandler}});var WN0=_U();Object.defineProperty(o,"loggingErrorHandler",{enumerable:!0,get:function(){return WN0.loggingErrorHandler}});var t6=im();Object.defineProperty(o,"addHrTimes",{enumerable:!0,get:function(){return t6.addHrTimes}});Object.defineProperty(o,"getTimeOrigin",{enumerable:!0,get:function(){return t6.getTimeOrigin}});Object.defineProperty(o,"hrTime",{enumerable:!0,get:function(){return t6.hrTime}});Object.defineProperty(o,"hrTimeDuration",{enumerable:!0,get:function(){return t6.hrTimeDuration}});Object.defineProperty(o,"hrTimeToMicroseconds",{enumerable:!0,get:function(){return t6.hrTimeToMicroseconds}});Object.defineProperty(o,"hrTimeToMilliseconds",{enumerable:!0,get:function(){return t6.hrTimeToMilliseconds}});Object.defineProperty(o,"hrTimeToNanoseconds",{enumerable:!0,get:function(){return t6.hrTimeToNanoseconds}});Object.defineProperty(o,"hrTimeToTimeStamp",{enumerable:!0,get:function(){return t6.hrTimeToTimeStamp}});Object.defineProperty(o,"isTimeInput",{enumerable:!0,get:function(){return t6.isTimeInput}});Object.defineProperty(o,"isTimeInputHrTime",{enumerable:!0,get:function(){return t6.isTimeInputHrTime}});Object.defineProperty(o,"millisToHrTime",{enumerable:!0,get:function(){return t6.millisToHrTime}});Object.defineProperty(o,"timeInputToHrTime",{enumerable:!0,get:function(){return t6.timeInputToHrTime}});var KN0=am();Object.defineProperty(o,"unrefTimer",{enumerable:!0,get:function(){return KN0.unrefTimer}});var zN0=rm();Object.defineProperty(o,"ExportResultCode",{enumerable:!0,get:function(){return zN0.ExportResultCode}});var GN0=fU();Object.defineProperty(o,"parseKeyPairsIntoRecord",{enumerable:!0,get:function(){return GN0.parseKeyPairsIntoRecord}});var w5=hU();Object.defineProperty(o,"SDK_INFO",{enumerable:!0,get:function(){return w5.SDK_INFO}});Object.defineProperty(o,"_globalThis",{enumerable:!0,get:function(){return w5._globalThis}});Object.defineProperty(o,"getStringFromEnv",{enumerable:!0,get:function(){return w5.getStringFromEnv}});Object.defineProperty(o,"getBooleanFromEnv",{enumerable:!0,get:function(){return w5.getBooleanFromEnv}});Object.defineProperty(o,"getNumberFromEnv",{enumerable:!0,get:function(){return w5.getNumberFromEnv}});Object.defineProperty(o,"getStringListFromEnv",{enumerable:!0,get:function(){return w5.getStringListFromEnv}});Object.defineProperty(o,"otperformance",{enumerable:!0,get:function(){return w5.otperformance}});var HN0=Qu();Object.defineProperty(o,"CompositePropagator",{enumerable:!0,get:function(){return HN0.CompositePropagator}});var $K=wu();Object.defineProperty(o,"TRACE_PARENT_HEADER",{enumerable:!0,get:function(){return $K.TRACE_PARENT_HEADER}});Object.defineProperty(o,"TRACE_STATE_HEADER",{enumerable:!0,get:function(){return $K.TRACE_STATE_HEADER}});Object.defineProperty(o,"W3CTraceContextPropagator",{enumerable:!0,get:function(){return $K.W3CTraceContextPropagator}});Object.defineProperty(o,"parseTraceParent",{enumerable:!0,get:function(){return $K.parseTraceParent}});var YK=Lu();Object.defineProperty(o,"RPCType",{enumerable:!0,get:function(){return YK.RPCType}});Object.defineProperty(o,"deleteRPCMetadata",{enumerable:!0,get:function(){return YK.deleteRPCMetadata}});Object.defineProperty(o,"getRPCMetadata",{enumerable:!0,get:function(){return YK.getRPCMetadata}});Object.defineProperty(o,"setRPCMetadata",{enumerable:!0,get:function(){return YK.setRPCMetadata}});var uU=n3();Object.defineProperty(o,"isTracingSuppressed",{enumerable:!0,get:function(){return uU.isTracingSuppressed}});Object.defineProperty(o,"suppressTracing",{enumerable:!0,get:function(){return uU.suppressTracing}});Object.defineProperty(o,"unsuppressTracing",{enumerable:!0,get:function(){return uU.unsuppressTracing}});var BN0=dU();Object.defineProperty(o,"TraceState",{enumerable:!0,get:function(){return BN0.TraceState}});var VN0=_u();Object.defineProperty(o,"merge",{enumerable:!0,get:function(){return VN0.merge}});var Wl=vu();Object.defineProperty(o,"TimeoutError",{enumerable:!0,get:function(){return Wl.TimeoutError}});Object.defineProperty(o,"callWithTimeout",{enumerable:!0,get:function(){return Wl.callWithTimeout}});var Kl=cu();Object.defineProperty(o,"isUrlIgnored",{enumerable:!0,get:function(){return Kl.isUrlIgnored}});Object.defineProperty(o,"urlMatches",{enumerable:!0,get:function(){return Kl.urlMatches}});var FN0=au();Object.defineProperty(o,"BindOnceFuture",{enumerable:!0,get:function(){return FN0.BindOnceFuture}});var UN0=eu();Object.defineProperty(o,"diagLogLevelFromString",{enumerable:!0,get:function(){return UN0.diagLogLevelFromString}});var qN0=$l();o.internal={_export:qN0._export}});var s;var e6=q(()=>{s=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__});var XK="@sentry/instrumentation-http",Gl=1048576;var lU=()=>{};function Hl(Z,J,Q,$){let Y=0,X=[];s&&O.log($,"Patching request.on");let W=new WeakMap,K=Q==="small"?1000:Q==="medium"?1e4:Gl;try{Z.on=new Proxy(Z.on,{apply:(z,G,H)=>{let[B,V,...F]=H;if(B==="data"){s&&O.log($,`Handling request.on("data") with maximum body size of ${K}b`);let U=new Proxy(V,{apply:(w,D,L)=>{try{let C=L[0],R=Buffer.from(C);if(Y<K)X.push(R),Y+=R.byteLength;else if(s)O.log($,`Dropping request body chunk because maximum body length of ${K}b is exceeded.`)}catch(C){s&&O.error($,"Encountered error while storing body chunk.")}return Reflect.apply(w,D,L)}});return W.set(V,U),Reflect.apply(z,G,[B,U,...F])}return Reflect.apply(z,G,H)}}),Z.off=new Proxy(Z.off,{apply:(z,G,H)=>{let[,B]=H,V=W.get(B);if(V){W.delete(B);let F=H.slice();return F[1]=V,Reflect.apply(z,G,F)}return Reflect.apply(z,G,H)}}),Z.on("end",()=>{try{let z=Buffer.concat(X).toString("utf-8");if(z){let H=Buffer.byteLength(z,"utf-8")>K?`${Buffer.from(z).subarray(0,K-3).toString("utf-8")}...`:z;J.setSDKProcessingMetadata({normalizedRequest:{data:H}})}}catch(z){if(s)O.error($,"Error building captured request body",z)}})}catch(z){if(s)O.error($,"Error patching request to capture body",z)}}var Bl=q(()=>{N();e6();lU()});import{subscribe as wN0}from"diagnostics_channel";function Ul(Z,J){T0(Z,"_startSpanCallback",new WeakRef(J))}function DN0(Z,{ignoreRequestBody:J,maxRequestBodySize:Q,sessions:$,sessionFlushingDelayMS:Y}){let X=Z.emit;if(Fl.has(X))return;let W=new Proxy(X,{apply(K,z,G){if(G[0]!=="request")return K.apply(z,G);let H=k();if(uZ.context.active().getValue(Vl)||!H)return K.apply(z,G);s&&O.log(iU,"Handling incoming request");let B=x().clone(),V=G[1],F=G[2],U=TZ(V),w=V.ip||V.socket?.remoteAddress,D=V.url||"/";if(Q!=="none"&&!J?.(D,V))Hl(V,B,Q,iU);B.setSDKProcessingMetadata({normalizedRequest:U,ipAddress:w});let L=(V.method||"GET").toUpperCase(),C=I8(D),R=`${L} ${C}`;if(B.setTransactionName(R),$&&H)ON0(H,{requestIsolationScope:B,response:F,sessionFlushingDelayMS:Y??60000});return l1(B,()=>{let T={traceId:_1(),sampleRand:W1(),propagationSpanId:Y6()};i().setPropagationContext({...T}),B.setPropagationContext({...T});let S=uZ.propagation.extract(uZ.context.active(),U.headers).setValue(Vl,!0);return uZ.context.with(S,()=>{H.emit("httpServerRequest",V,F,U);let m=V._startSpanCallback?.deref();if(m)return m(()=>K.apply(z,G));return K.apply(z,G)})})}});Fl.add(W),Z.emit=W}function ON0(Z,{requestIsolationScope:J,response:Q,sessionFlushingDelayMS:$}){J.setSDKProcessingMetadata({requestSession:{status:"ok"}}),Q.once("close",()=>{let Y=J.getScopeData().sdkProcessingMetadata.requestSession;if(Z&&Y){s&&O.log(`Recorded request session with status: ${Y.status}`);let X=new Date;X.setSeconds(0,0);let W=X.toISOString(),K=pU.get(Z),z=K?.[W]||{exited:0,crashed:0,errored:0};if(z[{ok:"exited",crashed:"crashed",errored:"errored"}[Y.status]]++,K)K[W]=z;else{s&&O.log("Opened new request session aggregate.");let G={[W]:z};pU.set(Z,G);let H=()=>{clearTimeout(V),B(),pU.delete(Z);let F=Object.entries(G).map(([U,w])=>({started:U,exited:w.exited,errored:w.errored,crashed:w.crashed}));Z.sendSession({aggregates:F})},B=Z.on("flush",()=>{s&&O.log("Sending request session aggregate due to client flush"),H()}),V=setTimeout(()=>{s&&O.log("Sending request session aggregate due to flushing schedule"),H()},$).unref()}}})}var uZ,Vl,iU="Http.Server",pU,Fl,jN0=(Z={})=>{let J={sessions:Z.sessions??!0,sessionFlushingDelayMS:Z.sessionFlushingDelayMS??60000,maxRequestBodySize:Z.maxRequestBodySize??"medium",ignoreRequestBody:Z.ignoreRequestBody};return{name:iU,setupOnce(){wN0("http.server.request.start",($)=>{DN0($.server,J)})},afterAllSetup(Q){if(s&&Q.getIntegrationByName("Http"))O.warn("It seems that you have manually added `httpServerIntegration` while `httpIntegration` is also present. Make sure to remove `httpServerIntegration` when adding `httpIntegration`.")}}},lZ;var WK=q(()=>{N();e6();Bl();uZ=A(I(),1),Vl=uZ.createContextKey("sentry_http_server_instrumented"),pU=new Map,Fl=new WeakSet;lZ=jN0});import{errorMonitor as LN0}from"events";function PN0(Z){return Z.headers["next-router-prefetch"]==="1"}function MN0(Z){let J=I8(Z);if(J.match(/\.(ico|png|jpg|jpeg|gif|svg|css|js|woff|woff2|ttf|eot|webp|avif)$/))return!0;if(J.match(/^\/(robots\.txt|sitemap\.xml|manifest\.json|browserconfig\.xml)$/))return!0;return!1}function RN0(Z,{ignoreStaticAssets:J,ignoreIncomingRequests:Q}){if(d8.isTracingSuppressed(T6.context.active()))return!0;let $=Z.url,Y=Z.method?.toUpperCase();if(Y==="OPTIONS"||Y==="HEAD"||!$)return!0;if(J&&Y==="GET"&&MN0($))return!0;if(Q?.($,Z))return!0;return!1}function kN0(Z){let J=NN0(Z.headers);if(J==null)return{};if(AN0(Z.headers))return{["http.request_content_length"]:J};else return{["http.request_content_length_uncompressed"]:J}}function NN0(Z){let J=Z["content-length"];if(J===void 0)return null;let Q=parseInt(J,10);if(isNaN(Q))return null;return Q}function AN0(Z){let J=Z["content-encoding"];return!!J&&J!=="identity"}function IN0(Z,J){let{socket:Q}=Z,{statusCode:$,statusMessage:Y}=J,X={[E6.ATTR_HTTP_RESPONSE_STATUS_CODE]:$,[E6.SEMATTRS_HTTP_STATUS_CODE]:$,"http.status_text":Y?.toUpperCase()},W=d8.getRPCMetadata(T6.context.active());if(Q){let{localAddress:K,localPort:z,remoteAddress:G,remotePort:H}=Q;X[E6.SEMATTRS_NET_HOST_IP]=K,X[E6.SEMATTRS_NET_HOST_PORT]=z,X[E6.SEMATTRS_NET_PEER_IP]=G,X["net.peer.port"]=H}if(X[E6.SEMATTRS_HTTP_STATUS_CODE]=$,X["http.status_text"]=(Y||"").toUpperCase(),W?.type===d8.RPCType.HTTP&&W.route!==void 0){let K=W.route;X[E6.ATTR_HTTP_ROUTE]=K}return X}function TN0(Z,J){return J.some((Q)=>{if(typeof Q==="number")return Q===Z;let[$,Y]=Q;return Z>=$&&Z<=Y})}var T6,d8,E6,ql="Http.ServerSpans",CN0=(Z={})=>{let J=Z.ignoreStaticAssets??!0,Q=Z.ignoreIncomingRequests,$=Z.ignoreStatusCodes??[[401,404],[301,303],[305,399]],{onSpanCreated:Y}=Z,{requestHook:X,responseHook:W,applyCustomAttributesOnSpan:K}=Z.instrumentation??{};return{name:ql,setup(z){if(typeof __SENTRY_TRACING__<"u"&&!__SENTRY_TRACING__)return;z.on("httpServerRequest",(G,H,B)=>{let V=G,F=H;Ul(V,(w)=>{if(RN0(V,{ignoreStaticAssets:J,ignoreIncomingRequests:Q}))return s&&O.log(ql,"Skipping span creation for incoming request",V.url),w();let D=B.url||V.url||"/",L=A8(D),C=V.headers,R=C["user-agent"],T=C["x-forwarded-for"],S=V.httpVersion,m=C.host,l=m?.replace(/^(.*)(:[0-9]{1,5})/,"$1")||"localhost",y0=z.tracer,$6=D.startsWith("https")?"https":"http",c9=B.method||V.method?.toUpperCase()||"GET",m9=L?L.pathname:I8(D),n5=`${c9} ${m9}`,U1=y0.startSpan(n5,{kind:T6.SpanKind.SERVER,attributes:{[g]:"http.server",[f]:"auto.http.otel.http","sentry.http.prefetch":PN0(V)||void 0,"http.url":D,"http.method":B.method,"http.target":L?`${L.pathname}${L.search}`:m9,"http.host":m,"net.host.name":l,"http.client_ip":typeof T==="string"?T.split(",")[0]:void 0,"http.user_agent":R,"http.scheme":$6,"http.flavor":S,"net.transport":S?.toUpperCase()==="QUIC"?"ip_udp":"ip_tcp",...kN0(V),...T8(B.headers||{},z.getOptions().sendDefaultPii??!1)}});X?.(U1,V),W?.(U1,F),K?.(U1,V,F),Y?.(U1,V,F);let P7={type:d8.RPCType.HTTP,span:U1};return T6.context.with(d8.setRPCMetadata(T6.trace.setSpan(T6.context.active(),U1),P7),()=>{T6.context.bind(T6.context.active(),V),T6.context.bind(T6.context.active(),F);let a5=!1;function uY(lY){if(a5)return;a5=!0;let cO=IN0(V,F);U1.setAttributes(cO),U1.setStatus(lY),U1.end();let mO=cO["http.route"];if(mO)x().setTransactionName(`${V.method?.toUpperCase()||"GET"} ${mO}`)}return F.on("close",()=>{uY(D6(F.statusCode))}),F.on(LN0,()=>{let lY=D6(F.statusCode);uY(lY.code===a?lY:{code:a})}),w()})})})},processEvent(z){if(z.type==="transaction"){let G=z.contexts?.trace?.data?.["http.response.status_code"];if(typeof G==="number"){if(TN0(G,$))return s&&O.log("Dropping transaction due to status code",G),null}}return z},afterAllSetup(z){if(!s)return;if(z.getIntegrationByName("Http"))O.warn("It seems that you have manually added `httpServerSpansIntergation` while `httpIntegration` is also present. Make sure to remove `httpIntegration` when adding `httpServerSpansIntegration`.");if(!z.getIntegrationByName("Http.Server"))O.error("It seems that you have manually added `httpServerSpansIntergation` without adding `httpServerIntegration`. This is a requiement for spans to be created - please add the `httpServerIntegration` integration.")}}},pZ;var oU=q(()=>{N();e6();WK();T6=A(I(),1),d8=A(R0(),1),E6=A(Y0(),1),pZ=CN0});function r3(Z,J){if(!Z)return J;let Q=g7(Z),$=g7(J);if(!$)return Z;let Y={...Q};return Object.entries($).forEach(([X,W])=>{if(X.startsWith("sentry-")||!Y[X])Y[X]=W}),cX(Y)}var nU=q(()=>{N()});function wl(Z,J){let Q=EN0(Z),$=J?.statusCode,Y=i3($);N1({category:"http",data:{status_code:$,...Q},type:"http",level:Y},{event:"response",request:Z,response:J})}function KK(Z,J){let Q=zK(Z),{tracePropagationTargets:$,propagateTraceparent:Y}=k()?.getOptions()||{},X=Y5(Q,$,J)?N9({propagateTraceparent:Y}):void 0;if(!X)return;let{"sentry-trace":W,baggage:K,traceparent:z}=X;if(W&&!Z.getHeader("sentry-trace"))try{Z.setHeader("sentry-trace",W),s&&O.log(YJ,"Added sentry-trace header to outgoing request")}catch(G){s&&O.error(YJ,"Failed to add sentry-trace header to outgoing request:",M1(G)?G.message:"Unknown error")}if(z&&!Z.getHeader("traceparent"))try{Z.setHeader("traceparent",z),s&&O.log(YJ,"Added traceparent header to outgoing request")}catch(G){s&&O.error(YJ,"Failed to add traceparent header to outgoing request:",M1(G)?G.message:"Unknown error")}if(K){let G=r3(Z.getHeader("baggage"),K);if(G)try{Z.setHeader("baggage",G),s&&O.log(YJ,"Added baggage header to outgoing request")}catch(H){s&&O.error(YJ,"Failed to add baggage header to outgoing request:",M1(H)?H.message:"Unknown error")}}}function EN0(Z){try{let J=Z.getHeader("host")||Z.host,Q=new URL(Z.path,`${Z.protocol}//${J}`),$=AZ(Q.toString()),Y={url:IZ($),"http.method":Z.method||"GET"};if($.search)Y["http.query"]=$.search;if($.hash)Y["http.fragment"]=$.hash;return Y}catch{return{}}}function jl(Z){return{method:Z.method,protocol:Z.protocol,host:Z.host,hostname:Z.host,path:Z.path,headers:Z.getHeaders()}}function zK(Z){let J=Z.getHeader("host")||Z.host,Q=Z.protocol,$=Z.path;return`${Q}//${J}${$}`}var YJ="@sentry/instrumentation-http";var Dl=q(()=>{N();e6();nU()});import{subscribe as aU,unsubscribe as sU}from"diagnostics_channel";import{errorMonitor as Ol}from"events";function fN0(Z){let J=zK(Z),[Q,$]=BF(A8(J),"client","auto.http.otel.http",Z),Y=Z.getHeader("user-agent");return[Q,{[g]:"http.client","otel.kind":"CLIENT",[L1.ATTR_USER_AGENT_ORIGINAL]:Y,[L1.ATTR_URL_FULL]:J,"http.url":J,"http.method":Z.method,"http.target":Z.path||"/","net.peer.name":Z.host,"http.host":Z.getHeader("host"),...$}]}function yN0(Z){let{statusCode:J,statusMessage:Q,httpVersion:$,socket:Y}=Z,X=$.toUpperCase()!=="QUIC"?"ip_tcp":"ip_udp",W={[L1.ATTR_HTTP_RESPONSE_STATUS_CODE]:J,[L1.ATTR_NETWORK_PROTOCOL_VERSION]:$,"http.flavor":$,[L1.ATTR_NETWORK_TRANSPORT]:X,"net.transport":X,["http.status_text"]:Q?.toUpperCase(),"http.status_code":J,...SN0(Z)};if(Y){let{remoteAddress:K,remotePort:z}=Y;W[L1.ATTR_NETWORK_PEER_ADDRESS]=K,W[L1.ATTR_NETWORK_PEER_PORT]=z,W["net.peer.ip"]=K,W["net.peer.port"]=z}return W}function SN0(Z){let J=_N0(Z.headers);if(J==null)return{};if(hN0(Z.headers))return{[L1.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH]:J};else return{[L1.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED]:J}}function _N0(Z){let J=Z["content-length"];if(typeof J==="number")return J;if(typeof J!=="string")return;let Q=parseInt(J,10);if(isNaN(Q))return;return Q}function hN0(Z){let J=Z["content-encoding"];return!!J&&J!=="identity"}var n1,Ll,t3,L1,XJ;var rU=q(()=>{N();e6();lU();Dl();n1=A(I(),1),Ll=A(R0(),1),t3=A(n(),1),L1=A(Y0(),1);XJ=class XJ extends t3.InstrumentationBase{constructor(Z={}){super(XK,e,Z);this._propagationDecisionMap=new I6(100),this._ignoreOutgoingRequestsMap=new WeakMap}init(){let Z=!1,J=(W)=>{let K=W;this._onOutgoingRequestFinish(K.request,K.response)},Q=(W)=>{let K=W;this._onOutgoingRequestFinish(K.request,void 0)},$=(W)=>{let K=W;this._onOutgoingRequestCreated(K.request)},Y=(W)=>{if(Z)return W;if(Z=!0,aU("http.client.response.finish",J),aU("http.client.request.error",Q),this.getConfig().propagateTraceInOutgoingRequests||this.getConfig().createSpansForOutgoingRequests)aU("http.client.request.created",$);return W},X=()=>{sU("http.client.response.finish",J),sU("http.client.request.error",Q),sU("http.client.request.created",$)};return[new t3.InstrumentationNodeModuleDefinition("http",["*"],Y,X),new t3.InstrumentationNodeModuleDefinition("https",["*"],Y,X)]}_startSpanForOutgoingRequest(Z){let J=Z.once,[Q,$]=fN0(Z),Y=P8({name:Q,attributes:$,onlyIfParent:!0});this.getConfig().outgoingRequestHook?.(Y,Z);let X=new Proxy(J,{apply(z,G,H){let[B]=H;if(B!=="response")return z.apply(G,H);let V=n1.context.active(),F=n1.trace.setSpan(V,Y);return n1.context.with(F,()=>{return z.apply(G,H)})}});Z.once=X;let W=!1,K=(z)=>{if(W)return;W=!0,Y.setStatus(z),Y.end()};return Z.prependListener("response",(z)=>{if(Z.listenerCount("response")<=1)z.resume();n1.context.bind(n1.context.active(),z);let G=yN0(z);Y.setAttributes(G),this.getConfig().outgoingResponseHook?.(Y,z),this.getConfig().outgoingRequestApplyCustomAttributes?.(Y,Z,z);let H=(B=!1)=>{this._diag.debug("outgoingRequest on end()");let V=B||typeof z.statusCode!=="number"||z.aborted&&!z.complete?{code:n1.SpanStatusCode.ERROR}:D6(z.statusCode);K(V)};z.on("end",()=>{H()}),z.on(Ol,(B)=>{this._diag.debug("outgoingRequest on response error()",B),H(!0)})}),Z.on("close",()=>{K({code:n1.SpanStatusCode.UNSET})}),Z.on(Ol,(z)=>{this._diag.debug("outgoingRequest on request error()",z),K({code:n1.SpanStatusCode.ERROR})}),Y}_onOutgoingRequestFinish(Z,J){s&&O.log(XK,"Handling finished outgoing request");let Q=this.getConfig().breadcrumbs,$=typeof Q>"u"?!0:Q,Y=this._ignoreOutgoingRequestsMap.get(Z)??this._shouldIgnoreOutgoingRequest(Z);if(this._ignoreOutgoingRequestsMap.set(Z,Y),$&&!Y)wl(Z,J)}_onOutgoingRequestCreated(Z){s&&O.log(XK,"Handling outgoing request created");let J=this._ignoreOutgoingRequestsMap.get(Z)??this._shouldIgnoreOutgoingRequest(Z);if(this._ignoreOutgoingRequestsMap.set(Z,J),J)return;let Q=this.getConfig().createSpansForOutgoingRequests&&(this.getConfig().spans??!0),$=this.getConfig().propagateTraceInOutgoingRequests;if(Q){let Y=this._startSpanForOutgoingRequest(Z);if($&&Y.isRecording()){let X=n1.trace.setSpan(n1.context.active(),Y);n1.context.with(X,()=>{KK(Z,this._propagationDecisionMap)})}else if($)KK(Z,this._propagationDecisionMap)}else if($)KK(Z,this._propagationDecisionMap)}_shouldIgnoreOutgoingRequest(Z){if(Ll.isTracingSuppressed(n1.context.active()))return!0;let J=this.getConfig().ignoreOutgoingRequests;if(!J)return!1;let Q=jl(Z),$=zK(Z);return J($,Q)}}});var b1,c8,e3;var j5=q(()=>{N();b1=zV(process.versions.node),c8=b1.major,e3=b1.minor});function Pl(Z,J){let Q=HK(Z.origin,Z.path),{tracePropagationTargets:$,propagateTraceparent:Y}=k()?.getOptions()||{},X=Y5(Q,$,J)?N9({propagateTraceparent:Y}):void 0;if(!X)return;let{"sentry-trace":W,baggage:K,traceparent:z}=X;if(Array.isArray(Z.headers)){let G=Z.headers;if(W&&!G.includes(GK))G.push(GK,W);if(z&&!G.includes("traceparent"))G.push("traceparent",z);let H=G.findIndex((B)=>B===tU);if(K&&H===-1)G.push(tU,K);else if(K){let B=G[H+1],V=r3(B,K);if(V)G[H+1]=V}}else{let G=Z.headers;if(W&&!G.includes(`${GK}:`))Z.headers+=`${GK}: ${W}\r
|
|
24
|
+
Event: ${wZ(Z)}`),!0}return!1}function aL0(Z,J){if(!J?.length)return!1;return YW(Z).some((Q)=>qZ(Q,J))}function sL0(Z,J){if(!J?.length)return!1;let Q=Z.transaction;return Q?qZ(Q,J):!1}function rL0(Z,J){if(!J?.length)return!1;let Q=HW(Z);return!Q?!1:qZ(Q,J)}function tL0(Z,J){if(!J?.length)return!0;let Q=HW(Z);return!Q?!0:qZ(Q,J)}function eL0(Z=[]){for(let J=Z.length-1;J>=0;J--){let Q=Z[J];if(Q&&Q.filename!=="<anonymous>"&&Q.filename!=="[native code]")return Q.filename||null}return null}function HW(Z){try{let Q=[...Z.exception?.values??[]].reverse().find(($)=>$.mechanism?.parent_id===void 0&&$.stacktrace?.frames?.length)?.stacktrace?.frames;return Q?eL0(Q):null}catch{return M&&O.error(`Cannot extract url for event ${wZ(Z)}`),null}}function ZC0(Z){if(!Z.exception?.values?.length)return!1;return!Z.message&&!Z.exception.values.some((J)=>J.stacktrace||J.type&&J.type!=="Error"||J.value)}var iL0,oL0="EventFilters",v4,f8;var dv=q(()=>{z0();D1();Z0();ZF();O6();w9();iL0=[/^Script error\.?$/,/^Javascript error: Script error\.? on line 0$/,/^ResizeObserver loop completed with undelivered notifications.$/,/^Cannot redefine property: googletag$/,/^Can't find variable: gmo$/,/^undefined is not an object \(evaluating 'a\.[A-Z]'\)$/,/can't redefine non-configurable property "solana"/,/vv\(\)\.getRestrictions is not a function/,/Can't find variable: _AutofillCallbackHandler/,/Object Not Found Matching Id:\d+, MethodName:simulateEvent/,/^Java exception was raised during method invocation$/],v4=P((Z={})=>{let J;return{name:oL0,setup(Q){let $=Q.getOptions();J=gv(Z,$)},processEvent(Q,$,Y){if(!J){let X=Y.getOptions();J=gv(Z,X)}return nL0(Q,J)?null:Q}}}),f8=P((Z={})=>{return{...v4(Z),name:"InboundFilters"}})});function uv(Z,J,Q,$,Y,X){if(!Y.exception?.values||!X||!u9(X.originalException,Error))return;let W=Y.exception.values.length>0?Y.exception.values[Y.exception.values.length-1]:void 0;if(W)Y.exception.values=wF(Z,J,$,X.originalException,Q,Y.exception.values,W,0)}function wF(Z,J,Q,$,Y,X,W,K){if(X.length>=Q+1)return X;let z=[...X];if(u9($[Y],Error)){cv(W,K,$);let G=Z(J,$[Y]),H=z.length;mv(G,Y,H,K),z=wF(Z,J,Q,$[Y],Y,[G,...z],G,H)}if(lv($))$.errors.forEach((G,H)=>{if(u9(G,Error)){cv(W,K,$);let B=Z(J,G),V=z.length;mv(B,`errors[${H}]`,V,K),z=wF(Z,J,Q,G,Y,[B,...z],B,V)}});return z}function lv(Z){return Array.isArray(Z.errors)}function cv(Z,J,Q){Z.mechanism={handled:!0,type:"auto.core.linked_errors",...lv(Q)&&{is_exception_group:!0},...Z.mechanism,exception_id:J}}function mv(Z,J,Q,$){Z.mechanism={handled:!0,...Z.mechanism,type:"chained",source:J,exception_id:Q,parent_id:$}}var pv=q(()=>{S0()});var JC0="cause",QC0=5,$C0="LinkedErrors",YC0=(Z={})=>{let J=Z.limit||QC0,Q=Z.key||JC0;return{name:$C0,preprocessEvent($,Y,X){let W=X.getOptions();uv(WF,W.stackParser,Q,J,$,Y)}}},y8;var iv=q(()=>{D1();pv();KF();y8=P(YC0)});function ov(Z){let J={},Q=0;while(Q<Z.length){let $=Z.indexOf("=",Q);if($===-1)break;let Y=Z.indexOf(";",Q);if(Y===-1)Y=Z.length;else if(Y<$){Q=Z.lastIndexOf(";",$-1)+1;continue}let X=Z.slice(Q,$).trim();if(J[X]===void 0){let W=Z.slice($+1,Y).trim();if(W.charCodeAt(0)===34)W=W.slice(1,-1);try{J[X]=W.indexOf("%")!==-1?decodeURIComponent(W):W}catch{J[X]=W}}Q=Y+1}return J}var nv=()=>{};function av(Z){let J={};for(let X of Object.keys(Z))J[X.toLowerCase()]=Z[X];return jF.map((X)=>{let W=J[X.toLowerCase()],K=Array.isArray(W)?W.join(";"):W;if(X==="Forwarded")return XC0(K);return K?.split(",").map((z)=>z.trim())}).reduce((X,W)=>{if(!W)return X;return X.concat(W)},[]).find((X)=>X!==null&&WC0(X))||null}function XC0(Z){if(!Z)return null;for(let J of Z.split(";"))if(J.startsWith("for="))return J.slice(4);return null}function WC0(Z){return/(?:^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$)|(?:^(?:(?:[a-fA-F\d]{1,4}:){7}(?:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,2}|:)|(?:[a-fA-F\d]{1,4}:){4}(?:(?::[a-fA-F\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,3}|:)|(?:[a-fA-F\d]{1,4}:){3}(?:(?::[a-fA-F\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,4}|:)|(?:[a-fA-F\d]{1,4}:){2}(?:(?::[a-fA-F\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,5}|:)|(?:[a-fA-F\d]{1,4}:){1}(?:(?::[a-fA-F\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,6}|:)|(?::(?:(?::[a-fA-F\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,7}|:)))(?:%[0-9a-zA-Z]{1,})?$)/.test(Z)}var jF;var sv=q(()=>{jF=["X-Client-IP","X-Forwarded-For","Fly-Client-IP","CF-Connecting-IP","Fastly-Client-Ip","True-Client-Ip","X-Real-IP","X-Cluster-Client-IP","X-Forwarded","Forwarded-For","Forwarded","X-Vercel-Forwarded-For"]});function HC0(Z,J,Q,$){if(Z.request={...Z.request,...BC0(J,$)},$.ip){let Y=J.headers&&av(J.headers)||Q.ipAddress;if(Y)Z.user={...Z.user,ip_address:Y}}}function BC0(Z,J){let Q={},$={...Z.headers};if(J.headers){if(Q.headers=$,!J.cookies)delete $.cookie;if(!J.ip)jF.forEach((Y)=>{delete $[Y]})}if(Q.method=Z.method,J.url)Q.url=Z.url;if(J.cookies){let Y=Z.cookies||($?.cookie?ov($.cookie):void 0);Q.cookies=Y||{}}if(J.query_string)Q.query_string=Z.query_string;if(J.data)Q.data=Z.data;return Q}var KC0,zC0="RequestData",GC0=(Z={})=>{let J={...KC0,...Z.include};return{name:zC0,processEvent(Q,$,Y){let{sdkProcessingMetadata:X={}}=Q,{normalizedRequest:W,ipAddress:K}=X,z={...J,ip:J.ip??Y.getOptions().sendDefaultPii};if(W)HC0(Q,W,{ipAddress:K},z);return Q}}},S8;var rv=q(()=>{D1();nv();sv();KC0={cookies:!0,data:!0,headers:!0,query_string:!0,url:!0},S8=P(GC0)});function x4(Z){f4("console",Z),y4("console",VC0)}function VC0(){if(!("console"in d))return;V8.forEach(function(Z){if(!(Z in d.console))return;m1(d.console,Z,function(J){return G4[Z]=J,function(...Q){S4("console",{args:Q,level:Z}),G4[Z]?.apply(d.console,Q)}})})}var BW=q(()=>{Z0();R1();J1();KW()});function EZ(Z){return Z==="warn"?"warning":["fatal","error","warning","log","info","debug"].includes(Z)?Z:"log"}var VW=()=>{};function qC0(Z,J,Q){let $=EZ(J),Y=Error(),X={level:EZ(J),extra:{arguments:Z}};c0((W)=>{if(W.addEventProcessor((G)=>{return G.logger="console",i6(G,{handled:Q,type:"auto.core.capture_console"}),G}),J==="assert"){if(!Z[0]){let G=`Assertion failed: ${V4(Z.slice(1)," ")||"console.assert"}`;W.setExtra("arguments",Z.slice(1)),W.captureMessage(G,$,{captureContext:X,syntheticException:Y})}return}let K=Z.find((G)=>G instanceof Error);if(K){h(K,X);return}let z=V4(Z," ");W.captureMessage(z,$,{captureContext:X,syntheticException:Y})})}var FC0="CaptureConsole",UC0=(Z={})=>{let J=Z.levels||V8,Q=Z.handled??!0;return{name:FC0,setup($){if(!("console"in d))return;x4(({args:Y,level:X})=>{if(k()!==$||!J.includes(X))return;qC0(Y,X,Q)})}}},C3;var tv=q(()=>{B0();k1();BW();D1();Z0();O6();VW();w9();J1();C3=P(UC0)});function DC0(Z,J){if(!J)return!1;if(OC0(Z,J))return!0;if(LC0(Z,J))return!0;return!1}function OC0(Z,J){let Q=Z.message,$=J.message;if(!Q&&!$)return!1;if(Q&&!$||!Q&&$)return!1;if(Q!==$)return!1;if(!Jx(Z,J))return!1;if(!Zx(Z,J))return!1;return!0}function LC0(Z,J){let Q=ev(J),$=ev(Z);if(!Q||!$)return!1;if(Q.type!==$.type||Q.value!==$.value)return!1;if(!Jx(Z,J))return!1;if(!Zx(Z,J))return!1;return!0}function Zx(Z,J){let Q=SX(Z),$=SX(J);if(!Q&&!$)return!0;if(Q&&!$||!Q&&$)return!1;if(Q=Q,$=$,$.length!==Q.length)return!1;for(let Y=0;Y<$.length;Y++){let X=$[Y],W=Q[Y];if(X.filename!==W.filename||X.lineno!==W.lineno||X.colno!==W.colno||X.function!==W.function)return!1}return!0}function Jx(Z,J){let Q=Z.fingerprint,$=J.fingerprint;if(!Q&&!$)return!0;if(Q&&!$||!Q&&$)return!1;Q=Q,$=$;try{return Q.join("")===$.join("")}catch{return!1}}function ev(Z){return Z.exception?.values?.[0]}var wC0="Dedupe",jC0=()=>{let Z;return{name:wC0,processEvent(J){if(J.type)return J;try{if(DC0(J,Z))return M&&O.warn("Event dropped due to being a duplicate of previously captured event."),null}catch{}return Z=J}}},P3;var Qx=q(()=>{z0();D1();Z0();v7();P3=P(jC0)});function MC0(Z,J={},Q,$,Y){if(!J.originalException||!M1(J.originalException))return Z;let X=J.originalException.name||J.originalException.constructor.name,W=$x(J.originalException,$,Y);if(W){let K={...Z.contexts},z=_0(W,Q);if(c1(z))T0(z,"__sentry_skip_normalization__",!0),K[X]=z;return{...Z,contexts:K}}return Z}function $x(Z,J,Q){try{let $=["name","message","stack","line","column","fileName","lineNumber","columnNumber","toJSON"],Y={};for(let X of Object.keys(Z)){if($.indexOf(X)!==-1)continue;let W=Z[X];Y[X]=M1(W)||typeof W==="string"?Q?p6(`${W}`,Q):`${W}`:W}if(J&&Z.cause!==void 0)if(M1(Z.cause)){let X=Z.cause.name||Z.cause.constructor.name;Y.cause={[X]:$x(Z.cause,!1,Q)}}else Y.cause=Z.cause;if(typeof Z.toJSON==="function"){let X=Z.toJSON();for(let W of Object.keys(X)){let K=X[W];Y[W]=M1(K)?K.toString():K}}return Y}catch($){M&&O.error("Unable to extract extra data from the Error object:",$)}return null}var CC0="ExtraErrorData",PC0=(Z={})=>{let{depth:J=3,captureErrorCause:Q=!0}=Z;return{name:CC0,processEvent($,Y,X){let{maxValueLength:W}=X.getOptions();return MC0($,Y,J,Q,W)}}},M3;var Yx=q(()=>{z0();D1();Z0();S0();RZ();R1();w9();M3=P(PC0)});function RC0(Z,J){let Q=0;for(let $=Z.length-1;$>=0;$--){let Y=Z[$];if(Y===".")Z.splice($,1);else if(Y==="..")Z.splice($,1),Q++;else if(Q)Z.splice($,1),Q--}if(J)for(;Q--;Q)Z.unshift("..");return Z}function Wx(Z){let J=Z.length>1024?`<truncated>${Z.slice(-1024)}`:Z,Q=kC0.exec(J);return Q?Q.slice(1):[]}function DF(...Z){let J="",Q=!1;for(let $=Z.length-1;$>=-1&&!Q;$--){let Y=$>=0?Z[$]:"/";if(!Y)continue;J=`${Y}/${J}`,Q=Y.charAt(0)==="/"}return J=RC0(J.split("/").filter(($)=>!!$),!Q).join("/"),(Q?"/":"")+J||"."}function Xx(Z){let J=0;for(;J<Z.length;J++)if(Z[J]!=="")break;let Q=Z.length-1;for(;Q>=0;Q--)if(Z[Q]!=="")break;if(J>Q)return[];return Z.slice(J,Q-J+1)}function OF(Z,J){Z=DF(Z).slice(1),J=DF(J).slice(1);let Q=Xx(Z.split("/")),$=Xx(J.split("/")),Y=Math.min(Q.length,$.length),X=Y;for(let K=0;K<Y;K++)if(Q[K]!==$[K]){X=K;break}let W=[];for(let K=X;K<Q.length;K++)W.push("..");return W=W.concat($.slice(X)),W.join("/")}function LF(Z){let J=Wx(Z),Q=J[0]||"",$=J[1];if(!Q&&!$)return".";if($)$=$.slice(0,$.length-1);return Q+$}function CF(Z,J){let Q=Wx(Z)[2]||"";if(J&&Q.slice(J.length*-1)===J)Q=Q.slice(0,Q.length-J.length);return Q}var kC0;var PF=q(()=>{kC0=/^(\S+:\\|\/?)([\s\S]*?)((?:\.{1,2}|[^/\\]+?|)(\.[^./\\]*|))(?:[/\\]*)$/});function AC0({isBrowser:Z,root:J,prefix:Q}){return($)=>{if(!$.filename)return $;let Y=/^[a-zA-Z]:\\/.test($.filename)||$.filename.includes("\\")&&!$.filename.includes("/"),X=/^\//.test($.filename);if(Z){if(J){let W=$.filename;if(W.indexOf(J)===0)$.filename=W.replace(J,Q)}}else if(Y||X){let W=Y?$.filename.replace(/^[a-zA-Z]:/,"").replace(/\\/g,"/"):$.filename,K=J?OF(J,W):CF(W);$.filename=`${Q}${K}`}return $}}var NC0="RewriteFrames",R3;var Kx=q(()=>{D1();PF();J1();R3=P((Z={})=>{let J=Z.root,Q=Z.prefix||"app:///",$="window"in d&&!!d.window,Y=Z.iteratee||AC0({isBrowser:$,root:J,prefix:Q});function X(K){try{return{...K,exception:{...K.exception,values:K.exception.values.map((z)=>({...z,...z.stacktrace&&{stacktrace:W(z.stacktrace)}}))}}}catch{return K}}function W(K){return{...K,frames:K?.frames?.map((z)=>Y(z))}}return{name:NC0,processEvent(K){let z=K;if(K.exception&&Array.isArray(K.exception.values))z=X(z);return z}}})});function FW(Z){try{Z.__SENTRY_INSTRUMENTED__=!0}catch{}}function UW(Z){try{return Z.__SENTRY_INSTRUMENTED__}catch{return!1}}function fC0(Z,J={}){switch(Z){case"GET":return"select";case"POST":if(J.Prefer?.includes("resolution="))return"upsert";else return"insert";case"PATCH":return"update";case"DELETE":return"delete";default:return"<unknown-op>"}}function yC0(Z,J){if(J===""||J==="*")return"select(*)";if(Z==="select")return`select(${J})`;if(Z==="or"||Z.endsWith(".or"))return`${Z}${J}`;let[Q,...$]=J.split("."),Y;if(Q?.startsWith("fts"))Y="textSearch";else if(Q?.startsWith("plfts"))Y="textSearch[plain]";else if(Q?.startsWith("phfts"))Y="textSearch[phrase]";else if(Q?.startsWith("wfts"))Y="textSearch[websearch]";else Y=Q&&EC0[Q]||"filter";return`${Y}(${Z}, ${$.join(".")})`}function zx(Z,J=!1){return new Proxy(Z,{apply(Q,$,Y){return r0({name:`auth ${J?"(admin) ":""}${Z.name}`,attributes:{[f]:"auto.db.supabase",[g]:"db","db.system":"postgresql","db.operation":`auth.${J?"admin.":""}${Z.name}`}},(X)=>{return Reflect.apply(Q,$,Y).then((W)=>{if(W&&typeof W==="object"&&"error"in W&&W.error)X.setStatus({code:a}),h(W.error,{mechanism:{handled:!1,type:"auto.db.supabase.auth"}});else X.setStatus({code:UZ});return X.end(),W}).catch((W)=>{throw X.setStatus({code:a}),X.end(),h(W,{mechanism:{handled:!1,type:"auto.db.supabase.auth"}}),W}).then(...Y)})}})}function SC0(Z){let J=Z.auth;if(!J||UW(Z.auth))return;for(let Q of IC0){let $=J[Q];if(!$)continue;if(typeof Z.auth[Q]==="function")Z.auth[Q]=zx($)}for(let Q of TC0){let $=J.admin[Q];if(!$)continue;if(typeof Z.auth.admin[Q]==="function")Z.auth.admin[Q]=zx($,!0)}FW(Z.auth)}function _C0(Z){if(UW(Z.prototype.from))return;Z.prototype.from=new Proxy(Z.prototype.from,{apply(J,Q,$){let Y=Reflect.apply(J,Q,$),X=Y.constructor;return bC0(X),Y}}),FW(Z.prototype.from)}function hC0(Z){if(UW(Z.prototype.then))return;Z.prototype.then=new Proxy(Z.prototype.then,{apply(J,Q,$){let Y=Gx,X=Q,W=fC0(X.method,X.headers);if(!Y.includes(W))return Reflect.apply(J,Q,$);if(!X?.url?.pathname||typeof X.url.pathname!=="string")return Reflect.apply(J,Q,$);let K=X.url.pathname.split("/"),z=K.length>0?K[K.length-1]:"",G=[];for(let[F,U]of X.url.searchParams.entries())G.push(yC0(F,U));let H=Object.create(null);if(c1(X.body))for(let[F,U]of Object.entries(X.body))H[F]=U;let B=`${W==="select"?"":`${W}${H?"(...) ":""}`}${G.join(" ")} from(${z})`,V={"db.table":z,"db.schema":X.schema,"db.url":X.url.origin,"db.sdk":X.headers["X-Client-Info"],"db.system":"postgresql","db.operation":W,[f]:"auto.db.supabase",[g]:"db"};if(G.length)V["db.query"]=G;if(Object.keys(H).length)V["db.body"]=H;return r0({name:B,attributes:V},(F)=>{return Reflect.apply(J,Q,[]).then((U)=>{if(F){if(U&&typeof U==="object"&&"status"in U)l9(F,U.status||500);F.end()}if(U.error){let L=Error(U.error.message);if(U.error.code)L.code=U.error.code;if(U.error.details)L.details=U.error.details;let C={};if(G.length)C.query=G;if(Object.keys(H).length)C.body=H;h(L,(R)=>{return R.addEventProcessor((T)=>{return i6(T,{handled:!1,type:"auto.db.supabase.postgres"}),T}),R.setContext("supabase",C),R})}let w={type:"supabase",category:`db.${W}`,message:B},D={};if(G.length)D.query=G;if(Object.keys(H).length)D.body=H;if(Object.keys(D).length)w.data=D;return N1(w),U},(U)=>{if(F)l9(F,500),F.end();throw U}).then(...$)})}}),FW(Z.prototype.then)}function bC0(Z){for(let J of Gx){if(UW(Z.prototype[J]))continue;Z.prototype[J]=new Proxy(Z.prototype[J],{apply(Q,$,Y){let X=Reflect.apply(Q,$,Y),W=X.constructor;return M&&O.log(`Instrumenting ${J} operation's PostgRESTFilterBuilder`),hC0(W),X}}),FW(Z.prototype[J])}}var IC0,TC0,EC0,Gx,g4=(Z)=>{if(!Z){M&&O.warn("Supabase integration was not installed because no Supabase client was provided.");return}let J=Z.constructor===Function?Z:Z.constructor;_C0(J),SC0(Z)},vC0="Supabase",xC0=(Z)=>{return{setupOnce(){g4(Z)},name:vC0}},k3;var Hx=q(()=>{GW();z0();k1();D1();m0();Z0();O6();S0();w1();M6();IC0=["reauthenticate","signInAnonymously","signInWithOAuth","signInWithIdToken","signInWithOtp","signInWithPassword","signInWithSSO","signOut","signUp","verifyOtp"],TC0=["createUser","deleteUser","listUsers","getUserById","updateUserById","inviteUserByEmail"],EC0={eq:"eq",neq:"neq",gt:"gt",gte:"gte",lt:"lt",lte:"lte",like:"like","like(all)":"likeAllOf","like(any)":"likeAnyOf",ilike:"ilike","ilike(all)":"ilikeAllOf","ilike(any)":"ilikeAnyOf",is:"is",in:"in",cs:"contains",cd:"containedBy",sr:"rangeGt",nxl:"rangeGte",sl:"rangeLt",nxr:"rangeLte",adj:"rangeAdjacent",ov:"overlaps",fts:"",plfts:"plain",phfts:"phrase",wfts:"websearch",not:"not"},Gx=["select","insert","upsert","update","delete"];k3=P((Z)=>{return xC0(Z.supabaseClient)})});function kF(Z,J){if(!Z||typeof Z!=="function")return M&&O.warn("instrumentPostgresJsSql: provided value is not a valid postgres.js sql instance"),Z;return RF(Z,{requireParentSpan:!0,...J})}function RF(Z,J,Q){if(Z[MF])return Z;let $=new Proxy(Z,{apply(Y,X,W){let K=Reflect.apply(Y,X,W);if(K&&typeof K==="object"&&"handle"in K)Vx(K,$,J);return K},get(Y,X){let W=Y[X];if(typeof X!=="string"||typeof W!=="function")return W;if(X==="unsafe"||X==="file")return cC0(W,Y,$,J);if(X==="begin"||X==="reserve")return mC0(W,Y,$,J);return W}});if(Q)$[qW]=Q;else oC0(Z,$);return Z[MF]=!0,$[MF]=!0,$}function cC0(Z,J,Q,$){return function(...Y){let X=Reflect.apply(Z,J,Y);if(X&&typeof X==="object"&&"handle"in X)Vx(X,Q,$);return X}}function mC0(Z,J,Q,$){return function(...Y){let X=Q[qW];if(typeof Y[Y.length-1]!=="function"){let H=Reflect.apply(Z,J,Y);if(H&&typeof H.then==="function")return H.then((B)=>{return RF(B,$,X)});return H}let K=Y.length===1?Y[0]:Y[1],z=function(H){let B=RF(H,$,X);return K(B)},G=Y.length===1?[z]:[Y[0],z];return Reflect.apply(Z,J,G)}}function Vx(Z,J,Q){if(Z.handle?.__sentryWrapped)return;Z[dC0]=!0;let $=Z.handle,Y=async function(...X){if(!uC0(Q))return $.apply(this,X);let W=lC0(Z.strings),K=pC0(W);return h0({name:K||"postgresjs.query",op:"db"},(z)=>{z.setAttribute(f,"auto.db.postgresjs"),z.setAttributes({"db.system.name":"postgres","db.query.text":K});let G=J?J[qW]:void 0;if(iC0(z,G),Q.requestHook)try{Q.requestHook(z,K,G)}catch(B){z.setAttribute("sentry.hook.error","requestHook failed"),M&&O.error("Error in requestHook for PostgresJs instrumentation:",B)}let H=this;H.resolve=new Proxy(H.resolve,{apply:(B,V,F)=>{try{Bx(z,K,F?.[0]?.command),z.end()}catch(U){M&&O.error("Error ending span in resolve callback:",U)}return Reflect.apply(B,V,F)}}),H.reject=new Proxy(H.reject,{apply:(B,V,F)=>{try{z.setStatus({code:a,message:F?.[0]?.message||"unknown_error"}),z.setAttribute("db.response.status_code",F?.[0]?.code||"unknown"),z.setAttribute("error.type",F?.[0]?.name||"unknown"),Bx(z,K),z.end()}catch(U){M&&O.error("Error ending span in reject callback:",U)}return Reflect.apply(B,V,F)}});try{return $.apply(this,X)}catch(B){throw z.setStatus({code:a,message:B instanceof Error?B.message:"unknown_error"}),z.end(),B}})};Y.__sentryWrapped=!0,Z.handle=Y}function uC0(Z){return s0()!==void 0||!Z.requireParentSpan}function lC0(Z){if(!Z?.length)return;if(Z.length===1)return Z[0]||void 0;return Z.reduce((J,Q,$)=>$===0?Q:`${J}$${$}${Q}`,"")}function pC0(Z){if(!Z)return"Unknown SQL Query";return Z.replace(/--.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/;\s*$/,"").replace(/\s+/g," ").trim().replace(/\bX'[0-9A-Fa-f]*'/gi,"?").replace(/\bB'[01]*'/gi,"?").replace(/'(?:[^']|'')*'/g,"?").replace(/\b0x[0-9A-Fa-f]+/gi,"?").replace(/\b(?:TRUE|FALSE)\b/gi,"?").replace(/-?\b\d+\.?\d*[eE][+-]?\d+\b/g,"?").replace(/-?\b\d+\.\d+\b/g,"?").replace(/-?\.\d+\b/g,"?").replace(/(?<!\$)-?\b\d+\b/g,"?").replace(/\bIN\b\s*\(\s*\?(?:\s*,\s*\?)*\s*\)/gi,"IN (?)").replace(/\bIN\b\s*\(\s*\$\d+(?:\s*,\s*\$\d+)*\s*\)/gi,"IN ($?)")}function iC0(Z,J){if(!J)return;if(J.ATTR_DB_NAMESPACE)Z.setAttribute("db.namespace",J.ATTR_DB_NAMESPACE);if(J.ATTR_SERVER_ADDRESS)Z.setAttribute("server.address",J.ATTR_SERVER_ADDRESS);if(J.ATTR_SERVER_PORT!==void 0){let Q=parseInt(J.ATTR_SERVER_PORT,10);if(!isNaN(Q))Z.setAttribute("server.port",Q)}}function Bx(Z,J,Q){if(Q){Z.setAttribute("db.operation.name",Q);return}let $=J?.match(gC0);if($?.[1])Z.setAttribute("db.operation.name",$[1].toUpperCase())}function oC0(Z,J){let Q=Z;if(!Q.options||typeof Q.options!=="object")return;let $=Q.options,Y=$.host?.[0]||"localhost",X=$.port?.[0]||5432,W={ATTR_DB_NAMESPACE:typeof $.database==="string"&&$.database!==""?$.database:void 0,ATTR_SERVER_ADDRESS:Y,ATTR_SERVER_PORT:String(X)};J[qW]=W}var gC0,qW,MF,dC0;var Fx=q(()=>{z0();m0();Z0();j1();w1();M6();gC0=/^(SELECT|INSERT|UPDATE|DELETE|CREATE|DROP|ALTER)/i,qW=Symbol("sentryPostgresConnectionContext"),MF=Symbol.for("sentry.instrumented.postgresjs"),dC0=Symbol.for("sentry.query.from.instrumented.sql")});function sC0(Z){return M1(Z)&&Z.name==="ZodError"&&Array.isArray(Z.issues)}function rC0(Z){return{...Z,path:"path"in Z&&Array.isArray(Z.path)?Z.path.join("."):void 0,keys:"keys"in Z?JSON.stringify(Z.keys):void 0,unionErrors:"unionErrors"in Z?JSON.stringify(Z.unionErrors):void 0}}function tC0(Z){return Z.map((J)=>{if(typeof J==="number")return"<array>";else return J}).join(".")}function eC0(Z){let J=new Set;for(let $ of Z.issues){let Y=tC0($.path);if(Y.length>0)J.add(Y)}let Q=Array.from(J);if(Q.length===0){let $="variable";if(Z.issues.length>0){let Y=Z.issues[0];if(Y!==void 0&&"expected"in Y&&typeof Y.expected==="string")$=Y.expected}return`Failed to validate ${$}`}return`Failed to validate keys: ${p6(Q.join(", "),100)}`}function ZP0(Z,J=!1,Q,$){if(!Q.exception?.values||!$.originalException||!sC0($.originalException)||$.originalException.issues.length===0)return Q;try{let X=(J?$.originalException.issues:$.originalException.issues.slice(0,Z)).map(rC0);if(J){if(!Array.isArray($.attachments))$.attachments=[];$.attachments.push({filename:"zod_issues.json",data:JSON.stringify({issues:X})})}return{...Q,exception:{...Q.exception,values:[{...Q.exception.values[0],value:eC0($.originalException)},...Q.exception.values.slice(1)]},extra:{...Q.extra,"zoderror.issues":X.slice(0,Z)}}}catch(Y){return{...Q,extra:{...Q.extra,"zoderrors sentry integration parse error":{message:"an exception was thrown while processing ZodError within applyZodErrorsToEvent()",error:Y instanceof Error?`${Y.name}: ${Y.message}
|
|
25
|
+
${Y.stack}`:"unknown"}}}}}var nC0=10,aC0="ZodErrors",JP0=(Z={})=>{let J=Z.limit??nC0;return{name:aC0,processEvent(Q,$){return ZP0(J,Z.saveZodIssuesAsAttachment,Q,$)}}},N3;var Ux=q(()=>{D1();S0();w9();N3=P(JP0)});function $P0(Z,J){let Q={category:"console",data:{arguments:J,logger:"console"},level:EZ(Z),message:qx(J)};if(Z==="assert")if(J[0]===!1){let $=J.slice(1);Q.message=$.length>0?`Assertion failed: ${qx($)}`:"Assertion failed",Q.data.arguments=$}else return;N1(Q,{input:J,level:Z})}function qx(Z){return"util"in d&&typeof d.util.format==="function"?d.util.format(...Z):V4(Z," ")}var QP0="Console",_8;var wx=q(()=>{GW();B0();BW();D1();Z0();VW();w9();J1();_8=P((Z={})=>{let J=new Set(Z.levels||V8);return{name:QP0,setup(Q){x4(({args:$,level:Y})=>{if(k()!==Q||!J.has(Y))return;$P0(Y,$)})}}})});function jW(Z){let Q=i().getScopeData().contexts.flags,$=Q?Q.values:[];if(!$.length)return Z;if(Z.contexts===void 0)Z.contexts={};return Z.contexts.flags={values:[...$]},Z}function DW(Z,J,Q=YP0){let $=i().getScopeData().contexts;if(!$.flags)$.flags={values:[]};let Y=$.flags.values;WP0(Y,Z,J,Q)}function WP0(Z,J,Q,$){if(typeof Q!=="boolean")return;if(Z.length>$){M&&O.error(`[Feature Flags] insertToFlagBuffer called on a buffer larger than maxSize=${$}`);return}let Y=Z.findIndex((X)=>X.flag===J);if(Y!==-1)Z.splice(Y,1);if(Z.length===$)Z.shift();Z.push({flag:J,result:Q})}function OW(Z,J,Q=XP0){if(typeof J!=="boolean")return;let $=s0();if(!$)return;let Y=v($).data;if(`${wW}${Z}`in Y){$.setAttribute(`${wW}${Z}`,J);return}if(Object.keys(Y).filter((W)=>W.startsWith(wW)).length<Q)$.setAttribute(`${wW}${Z}`,J)}var YP0=100,XP0=10,wW="flag.evaluation.";var NF=q(()=>{B0();z0();Z0();j1()});var A3;var jx=q(()=>{D1();NF();A3=P(()=>{return{name:"FeatureFlags",processEvent(Z,J,Q){return jW(Z)},addFeatureFlag(Z,J){DW(Z,J),OW(Z,J)}}})});function Dx(Z){return function(...J){let Q=J[0],$=Z.apply(this,J);if(typeof Q==="string"&&typeof $==="boolean")DW(Q,$),OW(Q,$);return $}}var AF;var Ox=q(()=>{D1();NF();R1();AF=P(({growthbookClass:Z})=>{return{name:"GrowthBook",setupOnce(){let J=Z.prototype;if(typeof J.isOn==="function")m1(J,"isOn",Dx);if(typeof J.getFeatureValue==="function")m1(J,"getFeatureValue",Dx)},processEvent(J,Q,$){return jW(J)}}})});var KP0="ConversationId",zP0=()=>{return{name:KP0,setup(Z){Z.on("spanStart",(J)=>{let Q=i().getScopeData(),$=x().getScopeData(),Y=Q.conversationId||$.conversationId;if(Y)J.setAttribute(jV,Y)})}}},IF;var Lx=q(()=>{B0();D1();m0();IF=P(zP0)});function Cx(Z){return!!Z&&typeof Z._profiler<"u"&&typeof Z._profiler.start==="function"&&typeof Z._profiler.stop==="function"}function GP0(){let Z=k();if(!Z){M&&O.warn("No Sentry client available, profiling is not started");return}let J=Z.getIntegrationByName("ProfilingIntegration");if(!J){M&&O.warn("ProfilingIntegration is not available");return}if(!Cx(J)){M&&O.warn("Profiler is not available on profiling integration.");return}J._profiler.start()}function HP0(){let Z=k();if(!Z){M&&O.warn("No Sentry client available, profiling is not started");return}let J=Z.getIntegrationByName("ProfilingIntegration");if(!J){M&&O.warn("ProfilingIntegration is not available");return}if(!Cx(J)){M&&O.warn("Profiler is not available on profiling integration.");return}J._profiler.stop()}var I3;var Px=q(()=>{B0();z0();Z0();I3={startProfiler:GP0,stopProfiler:HP0}});function BP0(Z){if(typeof Z==="object"&&Z!==null&&"ok"in Z&&!Z.ok&&"error"in Z)h(Z.error,Mx)}function T3(Z={}){return async function(J){let{path:Q,type:$,next:Y,rawInput:X,getRawInput:W}=J,z=k()?.getOptions(),G={procedure_path:Q,procedure_type:$};if(T0(G,"__sentry_override_normalization_depth__",1+(z?.normalizeDepth??5)),Z.attachRpcInput!==void 0?Z.attachRpcInput:z?.sendDefaultPii){if(X!==void 0)G.input=_0(X);if(W!==void 0&&typeof W==="function")try{let H=await W();G.input=_0(H)}catch{}}return l1((H)=>{return H.setContext("trpc",G),h0({name:`trpc/${Q}`,op:"rpc.server",attributes:{[H0]:"route",[f]:"auto.rpc.trpc"},forceTransaction:!!Z.forceTransaction},async(B)=>{try{let V=await Y();return BP0(V),B.end(),V}catch(V){throw h(V,Mx),B.end(),V}})})}}var Mx;var Rx=q(()=>{B0();k1();m0();R1();RZ();M6();Mx={mechanism:{handled:!1,type:"auto.rpc.trpc.middleware"}}});function h8(Z,J,Q){try{if(!k())return;let Y=s0();if(Y?.isRecording())Y.setStatus({code:a,message:"internal_error"});h(Z,{mechanism:{type:"auto.ai.mcp_server",handled:!1,data:{error_type:J||"handler_execution",...Q}}})}catch{}}var TF=q(()=>{B0();k1();j1();w1()});function EF(Z,J){m1(Z,J,(Q)=>{return function($,...Y){let X=Y[Y.length-1];if(typeof X!=="function")return Q.call(this,$,...Y);let W=VP0(X,J,$);return Q.call(this,$,...Y.slice(0,-1),W)}})}function VP0(Z,J,Q){return function(...$){try{return FP0.call(this,Z,J,Q,$)}catch(Y){return M&&O.warn("MCP handler wrapping failed:",Y),Z.apply(this,$)}}}function FP0(Z,J,Q,$){try{let Y=Z.apply(this,$);if(Y&&typeof Y==="object"&&typeof Y.then==="function")return Promise.resolve(Y).catch((X)=>{throw kx(X,J,Q),X});return Y}catch(Y){throw kx(Y,J,Q),Y}}function kx(Z,J,Q){try{let $={};if(J==="tool")if($.tool_name=Q,Z.name==="ProtocolValidationError"||Z.message.includes("validation")||Z.message.includes("protocol"))h8(Z,"validation",$);else if(Z.name==="ServerTimeoutError"||Z.message.includes("timed out")||Z.message.includes("timeout"))h8(Z,"timeout",$);else h8(Z,"tool_execution",$);else if(J==="resource")$.resource_uri=Q,h8(Z,"resource_execution",$);else if(J==="prompt")$.prompt_name=Q,h8(Z,"prompt_execution",$)}catch($){}}function UP0(Z){EF(Z,"tool")}function qP0(Z){EF(Z,"resource")}function wP0(Z){EF(Z,"prompt")}function Nx(Z){UP0(Z),qP0(Z),wP0(Z)}var Ax=q(()=>{z0();Z0();R1();TF()});var fF="mcp.method.name",Ix="mcp.request.id",Tx="mcp.session.id",Ex="mcp.transport",yF="mcp.server.name",SF="mcp.server.title",_F="mcp.server.version",d4="mcp.protocol.version",fx="mcp.tool.name",fZ="mcp.resource.uri",yx="mcp.prompt.name",Sx="mcp.tool.result.is_error",_x="mcp.tool.result.content_count",hx="mcp.prompt.result.description",bx="mcp.prompt.result.message_count",LW="mcp.request.argument",vx="mcp.logging.level",xx="mcp.logging.logger",gx="mcp.logging.data_type",dx="mcp.logging.message",cx="network.transport",mx="network.protocol.version",CW="client.address",PW="client.port",hF="mcp.server",ux="mcp.notification.client_to_server",lx="mcp.notification.server_to_client",px="auto.function.mcp_server",bF="auto.mcp.notification",ix="route";var b8=()=>{};function ox(Z){return typeof Z==="object"&&Z!==null&&"jsonrpc"in Z&&Z.jsonrpc==="2.0"&&"method"in Z&&"id"in Z}function vF(Z){return typeof Z==="object"&&Z!==null&&"jsonrpc"in Z&&Z.jsonrpc==="2.0"&&"method"in Z&&!("id"in Z)}function nx(Z){return typeof Z==="object"&&Z!==null&&"jsonrpc"in Z&&Z.jsonrpc==="2.0"&&"id"in Z&&(("result"in Z)||("error"in Z))}function ax(Z){if(typeof Z==="object"&&Z!==null&&"resource"in Z&&"tool"in Z&&"prompt"in Z&&"connect"in Z)return!0;return M&&O.warn("Did not patch MCP server. Interface is incompatible."),!1}function R6(Z){return Z!=null&&typeof Z==="object"}var E3=q(()=>{z0();Z0()});function jP0(Z,J){let Q={[_x]:Z.length};for(let[$,Y]of Z.entries()){if(!R6(Y))continue;let X=Z.length===1?"mcp.tool.result":`mcp.tool.result.${$}`;if(typeof Y.type==="string")Q[`${X}.content_type`]=Y.type;if(J){let W=(z,G)=>{if(typeof G==="string")Q[`${X}.${z}`]=G};if(W("mime_type",Y.mimeType),W("uri",Y.uri),W("name",Y.name),typeof Y.text==="string")Q[`${X}.content`]=Y.text;if(typeof Y.data==="string")Q[`${X}.data_size`]=Y.data.length;let K=Y.resource;if(R6(K))W("resource_uri",K.uri),W("resource_mime_type",K.mimeType)}}return Q}function sx(Z,J){if(!R6(Z))return{};let Q=Array.isArray(Z.content)?jP0(Z.content,J):{};if(typeof Z.isError==="boolean")Q[Sx]=Z.isError;return Q}function rx(Z,J){let Q={};if(!R6(Z))return Q;if(J&&typeof Z.description==="string")Q[hx]=Z.description;if(Array.isArray(Z.messages)){if(Q[bx]=Z.messages.length,J){let $=Z.messages;for(let[Y,X]of $.entries()){if(!R6(X))continue;let W=$.length===1?"mcp.prompt.result":`mcp.prompt.result.${Y}`;if(((z,G)=>{if(typeof G==="string"){let H=$.length===1?`${W}.message_${z}`:`${W}.${z}`;Q[H]=G}})("role",X.role),R6(X.content)){let z=X.content;if(typeof z.text==="string"){let G=$.length===1?`${W}.message_content`:`${W}.content`;Q[G]=z.text}}}}}return Q}var tx=q(()=>{b8();E3()});function MW(Z){let J=Z.sessionId;if(J)return xF.get(J);return ex.get(Z)}function Zg(Z,J){let Q=Z.sessionId;if(Q)xF.set(Q,J);else ex.set(Z,J)}function Jg(Z,J){Zg(Z,J)}function Qg(Z,J){let Q=MW(Z)||{};Zg(Z,{...Q,...J})}function $g(Z){return MW(Z)?.clientInfo}function Yg(Z){return MW(Z)?.protocolVersion}function Xg(Z){return MW(Z)}function Wg(Z){let J=Z.sessionId;if(J)xF.delete(J)}var xF,ex;var gF=q(()=>{xF=new Map,ex=new WeakMap});function Kg(Z){let J={};if(R6(Z)){if(typeof Z.name==="string")J.name=Z.name;if(typeof Z.title==="string")J.title=Z.title;if(typeof Z.version==="string")J.version=Z.version}return J}function zg(Z){let J={};if(R6(Z.params)){if(typeof Z.params.protocolVersion==="string")J.protocolVersion=Z.params.protocolVersion;if(Z.params.clientInfo)J.clientInfo=Kg(Z.params.clientInfo)}return J}function RW(Z){let J={};if(R6(Z)){if(typeof Z.protocolVersion==="string")J.protocolVersion=Z.protocolVersion;if(Z.serverInfo)J.serverInfo=Kg(Z.serverInfo)}return J}function DP0(Z){let J=$g(Z),Q={};if(J?.name)Q["mcp.client.name"]=J.name;if(J?.title)Q["mcp.client.title"]=J.title;if(J?.version)Q["mcp.client.version"]=J.version;return Q}function Gg(Z){let J={};if(Z?.name)J["mcp.client.name"]=Z.name;if(Z?.title)J["mcp.client.title"]=Z.title;if(Z?.version)J["mcp.client.version"]=Z.version;return J}function OP0(Z){let J=Xg(Z)?.serverInfo,Q={};if(J?.name)Q[yF]=J.name;if(J?.title)Q[SF]=J.title;if(J?.version)Q[_F]=J.version;return Q}function Hg(Z){let J={};if(Z?.name)J[yF]=Z.name;if(Z?.title)J[SF]=Z.title;if(Z?.version)J[_F]=Z.version;return J}function LP0(Z){return{address:Z?.requestInfo?.remoteAddress||Z?.clientAddress||Z?.request?.ip||Z?.request?.connection?.remoteAddress,port:Z?.requestInfo?.remotePort||Z?.clientPort||Z?.request?.connection?.remotePort}}function CP0(Z){if(!Z?.constructor)return{mcpTransport:"unknown",networkTransport:"unknown"};let J=typeof Z.constructor?.name==="string"?Z.constructor.name:"unknown",Q="unknown",$=J.toLowerCase();if($.includes("stdio"))Q="pipe";else if($.includes("http")||$.includes("sse"))Q="tcp";return{mcpTransport:J,networkTransport:Q}}function dF(Z,J){let Q=Z&&"sessionId"in Z?Z.sessionId:void 0,$=J?LP0(J):{},{mcpTransport:Y,networkTransport:X}=CP0(Z),W=DP0(Z),K=OP0(Z),z=Yg(Z);return{...Q&&{[Tx]:Q},...$.address&&{[CW]:$.address},...$.port&&{[PW]:$.port},[Ex]:Y,[cx]:X,[mx]:"2.0",...z&&{[d4]:z},...W,...K}}var kW=q(()=>{b8();gF();E3()});function Bg(Z){let J=Z.sessionId;if(J){let $=NW.get(J);if(!$)$=new Map,NW.set(J,$);return $}let Q=cF.get(Z);if(!Q)Q=new Map,cF.set(Z,Q);return Q}function Vg(Z,J,Q,$){Bg(Z).set(J,{span:Q,method:$,startTime:Date.now()})}function Fg(Z,J,Q,$){let Y=Bg(Z),X=Y.get(J);if(X){let{span:W,method:K}=X;if(K==="initialize"){let z=RW(Q),H={...Hg(z.serverInfo)};if(z.protocolVersion)H[d4]=z.protocolVersion;W.setAttributes(H)}else if(K==="tools/call"){let z=sx(Q,$.recordOutputs);W.setAttributes(z)}else if(K==="prompts/get"){let z=rx(Q,$.recordOutputs);W.setAttributes(z)}W.end(),Y.delete(J)}}function Ug(Z){let J=Z.sessionId;if(J){let $=NW.get(J);if($){for(let[,Y]of $)Y.span.setStatus({code:a,message:"cancelled"}),Y.span.end();NW.delete(J)}return}let Q=cF.get(Z);if(Q){for(let[,$]of Q)$.span.setStatus({code:a,message:"cancelled"}),$.span.end();Q.clear()}}var NW,cF;var qg=q(()=>{w1();b8();tx();kW();NW=new Map,cF=new WeakMap});function f3(Z,J){let Q=wg[Z];if(!Q)return{attributes:{}};let $=Q.targetField&&typeof J?.[Q.targetField]==="string"?J[Q.targetField]:void 0;return{target:$,attributes:$&&Q.targetAttribute?{[Q.targetAttribute]:$}:{}}}function jg(Z,J){let Q={},$=wg[Z];if(!$)return Q;if($.captureArguments&&$.argumentsField&&J?.[$.argumentsField]){let Y=J[$.argumentsField];if(typeof Y==="object"&&Y!==null)for(let[X,W]of Object.entries(Y))Q[`${LW}.${X.toLowerCase()}`]=JSON.stringify(W)}if($.captureUri&&J?.uri)Q[`${LW}.uri`]=JSON.stringify(J.uri);if($.captureName&&J?.name)Q[`${LW}.name`]=JSON.stringify(J.name);return Q}var wg;var mF=q(()=>{b8();wg={"tools/call":{targetField:"name",targetAttribute:fx,captureArguments:!0,argumentsField:"arguments"},"resources/read":{targetField:"uri",targetAttribute:fZ,captureUri:!0},"resources/subscribe":{targetField:"uri",targetAttribute:fZ},"resources/unsubscribe":{targetField:"uri",targetAttribute:fZ},"prompts/get":{targetField:"name",targetAttribute:yx,captureName:!0,captureArguments:!0,argumentsField:"arguments"}}});function PP0(Z){return typeof Z==="string"?Z:JSON.stringify(Z)}function MP0(Z,J,Q){let $={};switch(Z){case"notifications/cancelled":if(J?.requestId)$["mcp.cancelled.request_id"]=String(J.requestId);if(J?.reason)$["mcp.cancelled.reason"]=String(J.reason);break;case"notifications/message":if(J?.level)$[vx]=String(J.level);if(J?.logger)$[xx]=String(J.logger);if(J?.data!==void 0){if($[gx]=typeof J.data,Q)$[dx]=PP0(J.data)}break;case"notifications/progress":if(J?.progressToken)$["mcp.progress.token"]=String(J.progressToken);if(typeof J?.progress==="number")$["mcp.progress.current"]=J.progress;if(typeof J?.total==="number"){if($["mcp.progress.total"]=J.total,typeof J?.progress==="number")$["mcp.progress.percentage"]=J.progress/J.total*100}if(J?.message)$["mcp.progress.message"]=String(J.message);break;case"notifications/resources/updated":if(J?.uri){$[fZ]=String(J.uri);let Y=A8(String(J.uri));if(Y&&!$5(Y))$["mcp.resource.protocol"]=Y.protocol.replace(":","")}break;case"notifications/initialized":$["mcp.lifecycle.phase"]="initialization_complete",$["mcp.protocol.ready"]=1;break}return $}function uF(Z,J,Q,$){if(Z==="request"){let Y=J,X=f3(Y.method,Q||{});return{...Y.id!==void 0&&{[Ix]:String(Y.id)},...X.attributes,...$?jg(Y.method,Q||{}):{}}}return MP0(J.method,Q||{},$)}var Dg=q(()=>{VF();b8();mF()});function kP0(Z){return RP0.has(Z)}function lF(Z,J){if(J)return Z;return Object.entries(Z).reduce((Q,[$,Y])=>{if(!kP0($))Q[$]=Y;return Q},{})}var RP0;var Og=q(()=>{b8();RP0=new Set([CW,PW,fZ])});function Lg(Z,J){return J?`${Z} ${J}`:Z}function Cg(Z){let J,Q;switch(Z){case"request":J=hF,Q=px;break;case"notification-incoming":J=ux,Q=bF;break;case"notification-outgoing":J=lx,Q=bF;break}return{[g]:J,[f]:Q,[H0]:ix}}function Pg(Z){let{type:J,message:Q,transport:$,extra:Y,callback:X,options:W}=Z,{method:K}=Q,z=Q.params,G;if(J==="request"){let U=f3(K,z||{});G=Lg(K,U.target)}else G=K;let H={...dF($,Y),[fF]:K,...uF(J,Q,z,W?.recordInputs),...Cg(J)},B=k(),V=Boolean(B?.getOptions().sendDefaultPii),F=lF(H,V);return r0({name:G,forceTransaction:!0,attributes:F},X)}function Mg(Z,J,Q,$,Y){return Pg({type:"notification-incoming",message:Z,transport:J,extra:Q,callback:Y,options:$})}function Rg(Z,J,Q,$){return Pg({type:"notification-outgoing",message:Z,transport:J,options:Q,callback:$})}function kg(Z,J,Q,$){let{method:Y}=Z,X=Z.params,W=f3(Y,X||{}),K=Lg(Y,W.target),z={...dF(J,Q),[fF]:Y,...uF("request",Z,X,$?.recordInputs),...Cg("request")},G=k(),H=Boolean(G?.getOptions().sendDefaultPii),B=lF(z,H);return{name:K,op:hF,forceTransaction:!0,attributes:B}}var Ng=q(()=>{B0();m0();M6();Dg();b8();mF();Og();kW()});function Ag(Z,J){if(Z.onmessage)m1(Z,"onmessage",(Q)=>{return function($,Y){if(ox($)){let X=$.method==="initialize",W;if(X)try{W=zg($),Jg(this,W)}catch{}let K=x().clone();return l1(K,()=>{let z=kg($,this,Y,J),G=P8(z);if(X&&W)G.setAttributes({...Gg(W.clientInfo),...W.protocolVersion&&{[d4]:W.protocolVersion}});return Vg(this,$.id,G,$.method),n6(G,()=>{return Q.call(this,$,Y)})})}if(vF($))return Mg($,this,Y,J,()=>{return Q.call(this,$,Y)});return Q.call(this,$,Y)}})}function Ig(Z,J){if(Z.send)m1(Z,"send",(Q)=>{return async function(...$){let[Y]=$;if(vF(Y))return Rg(Y,this,J,()=>{return Q.call(this,...$)});if(nx(Y)){if(Y.id!==null&&Y.id!==void 0){if(Y.error)NP0(Y.error);if(R6(Y.result)){if(Y.result.protocolVersion||Y.result.serverInfo)try{let X=RW(Y.result);Qg(this,X)}catch{}}Fg(this,Y.id,Y.result,J)}}return Q.call(this,...$)}})}function Tg(Z){if(Z.onclose)m1(Z,"onclose",(J)=>{return function(...Q){return Ug(this),Wg(this),J.call(this,...Q)}})}function Eg(Z){if(Z.onerror)m1(Z,"onerror",(J)=>{return function(Q){return AP0(Q),J.call(this,Q)}})}function NP0(Z){try{if(Z&&typeof Z==="object"&&"code"in Z&&"message"in Z){let J=Z;if(J.code===-32603||J.code>=-32099&&J.code<=-32000){let $=Error(J.message);$.name=`JsonRpcError_${J.code}`,h8($,"protocol")}}}catch{}}function AP0(Z){try{h8(Z,"transport")}catch{}}var fg=q(()=>{B0();R1();M6();b8();qg();TF();kW();gF();Ng();E3()});function y3(Z,J){if(yg.has(Z))return Z;if(!ax(Z))return Z;let Q=Z,$=k(),Y=Boolean($?.getOptions().sendDefaultPii),X={recordInputs:J?.recordInputs??Y,recordOutputs:J?.recordOutputs??Y};return m1(Q,"connect",(W)=>{return async function(K,...z){let G=await W.call(this,K,...z);return Ag(K,X),Ig(K,X),Tg(K),Eg(K),G}}),Nx(Q),yg.add(Z),Z}var yg;var Sg=q(()=>{B0();R1();Ax();fg();E3();yg=new WeakSet});function S3(Z,J={},Q=i()){let{message:$,name:Y,email:X,url:W,source:K,associatedEventId:z,tags:G}=Z,H={contexts:{feedback:{contact_email:X,name:Y,message:$,url:W,source:K,associated_event_id:z}},type:"feedback",level:"info",tags:G},B=Q?.getClient()||k();if(B)B.emit("beforeSendFeedback",H,J);return Q.captureEvent(H,J)}var _g=q(()=>{B0()});function c4(Z,J,Q){return"util"in d&&typeof d.util.format==="function"?d.util.format(...Z):IP0(Z,J,Q)}function IP0(Z,J,Q){return Z.map(($)=>h7($)?String($):JSON.stringify(_0($,J,Q))).join(" ")}function AW(Z){return/%[sdifocO]/.test(Z)}function IW(Z,J){let Q={},$=Array(J.length).fill("{}").join(" ");return Q["sentry.message.template"]=`${Z} ${$}`,J.forEach((Y,X)=>{Q[`sentry.message.parameter.${X}`]=Y}),Q}var pF=q(()=>{S0();RZ();J1()});var TP0="ConsoleLogs",hg,EP0=(Z={})=>{let J=Z.levels||V8;return{name:TP0,setup(Q){let{enableLogs:$,normalizeDepth:Y=3,normalizeMaxBreadth:X=1000}=Q.getOptions();if(!$){M&&O.warn("`enableLogs` is not enabled, ConsoleLogs integration disabled");return}x4(({args:W,level:K})=>{if(k()!==Q||!J.includes(K))return;let z=W[0],G=W.slice(1);if(K==="assert"){if(!z){let F=G.length>0?`Assertion failed: ${c4(G,Y,X)}`:"Assertion failed";R9({level:"error",message:F,attributes:hg})}return}let H=K==="log",B=W.length>1&&typeof W[0]==="string"&&!AW(W[0]),V={...hg,...B?IW(z,G):{}};R9({level:H?"info":K,message:c4(W,Y,X),severityNumber:H?10:void 0,attributes:V})})}}},_3;var bg=q(()=>{B0();z0();BW();D1();m0();Z0();w3();pF();hg={[f]:"auto.log.console"},_3=P(EP0)});var m4={};y1(m4,{gauge:()=>yP0,distribution:()=>SP0,count:()=>fP0});function iF(Z,J,Q,$){vb({type:Z,name:J,value:Q,unit:$?.unit,attributes:$?.attributes},{scope:$?.scope})}function fP0(Z,J=1,Q){iF("counter",Z,J,Q)}function yP0(Z,J,Q){iF("gauge",Z,J,Q)}function SP0(Z,J,Q){iF("distribution",Z,J,Q)}var vg=q(()=>{tV()});function h3(Z={}){let J=new Set(Z.levels??_P0),Q=Z.client;return{log($){let{type:Y,level:X,message:W,args:K,tag:z,date:G,...H}=$,B=Q||k();if(!B)return;let V=vP0(Y,X);if(!J.has(V))return;let{normalizeDepth:F=3,normalizeMaxBreadth:U=1000}=B.getOptions(),w={};for(let[L,C]of Object.entries(H))w[L]=_0(C,F,U);if(w["sentry.origin"]="auto.log.consola",z)w["consola.tag"]=z;if(Y)w["consola.type"]=Y;if(X!=null&&typeof X==="number")w["consola.level"]=X;let D=gP0(xP0(K,F,U),F,U);if(D?.attributes)Object.assign(w,D.attributes);R9({level:V,message:D?.message||W||K&&c4(K,F,U)||"",attributes:w})}}}function vP0(Z,J){if(Z==="verbose")return"debug";if(Z==="silent")return"trace";if(Z){let Q=hP0[Z];if(Q)return Q}if(typeof J==="number"){let Q=bP0[J];if(Q)return Q}return"info"}function xP0(Z,J,Q){if(!Z?.length)return{message:""};let $=c4(Z,J,Q),Y=Z[0];if(c1(Y)){let X=typeof Z[1]==="string"?2:1,W=Z.slice(X);return{message:$,attributes:Y,messageParameters:W}}else{let X=Z.slice(1),W=X.length>0&&typeof Y==="string"&&!AW(Y);return{message:$,messageTemplate:W?Y:void 0,messageParameters:W?X:void 0}}}function gP0(Z,J,Q){let{message:$,attributes:Y,messageTemplate:X,messageParameters:W}=Z,K={};if(X&&W){let z=IW(X,W);for(let[G,H]of Object.entries(z))K[G]=G.startsWith("sentry.message.parameter.")?_0(H,J,Q):H}else if(W&&W.length>0)W.forEach((z,G)=>{K[`sentry.message.parameter.${G}`]=_0(z,J,Q)});return{message:$,attributes:{..._0(Y,J,Q),...K}}}var _P0,hP0,bP0;var xg=q(()=>{B0();w3();pF();S0();RZ();_P0=["trace","debug","info","warn","error","fatal"];hP0={silent:"trace",fatal:"fatal",error:"error",warn:"warn",log:"info",info:"info",success:"info",fail:"error",ready:"info",start:"info",box:"info",debug:"debug",trace:"trace",verbose:"debug",critical:"fatal",notice:"info"},bP0={0:"fatal",1:"warn",2:"info",3:"info",4:"debug",5:"trace"}});var gg="gen_ai.prompt",yZ="gen_ai.system",l0="gen_ai.request.model",u4="gen_ai.request.stream",SZ="gen_ai.request.temperature",l4="gen_ai.request.max_tokens",_Z="gen_ai.request.frequency_penalty",p4="gen_ai.request.presence_penalty",hZ="gen_ai.request.top_p",TW="gen_ai.request.top_k",dg="gen_ai.request.encoding_format",cg="gen_ai.request.dimensions",z6="gen_ai.response.finish_reasons",z1="gen_ai.response.model",s6="gen_ai.response.id",mg="gen_ai.response.stop_reason",M0="gen_ai.usage.input_tokens",t0="gen_ai.usage.output_tokens",i1="gen_ai.usage.total_tokens",A1="gen_ai.operation.name",o1="sentry.sdk_meta.gen_ai.input.messages.original_length",I1="gen_ai.input.messages",ug="gen_ai.output.messages",k6="gen_ai.system_instructions",Q1="gen_ai.response.text",n9="gen_ai.request.available_tools",X5="gen_ai.response.streaming",O1="gen_ai.response.tool_calls",oF="gen_ai.agent.name",lg="gen_ai.pipeline.name",b3="gen_ai.conversation.id",pg="gen_ai.usage.cache_creation_input_tokens",ig="gen_ai.usage.cache_read_input_tokens",nF="gen_ai.usage.input_tokens.cache_write",bZ="gen_ai.usage.input_tokens.cached",EW="gen_ai.invoke_agent",og="gen_ai.generate_text",ng="gen_ai.stream_text",ag="gen_ai.generate_object",sg="gen_ai.stream_object",fW="gen_ai.embeddings.input",rg="gen_ai.embeddings",tg="gen_ai.embeddings",eg="gen_ai.rerank",Zd="gen_ai.execute_tool",W5="gen_ai.tool.name",aF="gen_ai.tool.call.id",sF="gen_ai.tool.type",yW="gen_ai.tool.input",SW="gen_ai.tool.output",Jd="gen_ai.tool.description",rF="openai.response.id",tF="openai.response.model",eF="openai.response.timestamp",Qd="openai.usage.completion_tokens",$d="openai.usage.prompt_tokens",K5,ZU="anthropic.response.timestamp";var h1=q(()=>{K5={CHAT:"chat",EMBEDDINGS:"embeddings"}});var v3,JU,QU,Yd,Xd,Wd;var $U=q(()=>{v3=new Map,JU=new Set(["ai.generateText","ai.streamText","ai.generateObject","ai.streamObject"]),QU=new Set(["ai.generateText.doGenerate","ai.streamText.doStream","ai.generateObject.doGenerate","ai.streamObject.doStream"]),Yd=new Set(["ai.embed.doEmbed","ai.embedMany.doEmbed"]),Xd=new Set(["ai.rerank.doRerank"]),Wd={"ai.embed.doEmbed":"embeddings","ai.embedMany.doEmbed":"embeddings","ai.rerank.doRerank":"rerank"}});function vZ(Z){if(!Z||typeof Z!=="object")return!1;return cP0(Z)||zd(Z)||dP0(Z)||Gd(Z)||Hd(Z)||mP0(Z)||uP0(Z)||lP0(Z)||pP0(Z)||iP0(Z)||oP0(Z)||nP0(Z)}function dP0(Z){if(!("image_url"in Z))return!1;if(typeof Z.image_url==="string")return Z.image_url.startsWith("data:");return Kd(Z)}function Kd(Z){return"image_url"in Z&&!!Z.image_url&&typeof Z.image_url==="object"&&"url"in Z.image_url&&typeof Z.image_url.url==="string"&&Z.image_url.url.startsWith("data:")}function cP0(Z){return"type"in Z&&typeof Z.type==="string"&&"source"in Z&&vZ(Z.source)}function zd(Z){return"inlineData"in Z&&!!Z.inlineData&&typeof Z.inlineData==="object"&&"data"in Z.inlineData&&typeof Z.inlineData.data==="string"}function Gd(Z){return"type"in Z&&Z.type==="input_audio"&&"input_audio"in Z&&!!Z.input_audio&&typeof Z.input_audio==="object"&&"data"in Z.input_audio&&typeof Z.input_audio.data==="string"}function Hd(Z){return"type"in Z&&Z.type==="file"&&"file"in Z&&!!Z.file&&typeof Z.file==="object"&&"file_data"in Z.file&&typeof Z.file.file_data==="string"}function mP0(Z){return"media_type"in Z&&typeof Z.media_type==="string"&&"data"in Z}function uP0(Z){return"type"in Z&&Z.type==="file"&&"mediaType"in Z&&typeof Z.mediaType==="string"&&"data"in Z&&typeof Z.data==="string"&&!Z.data.startsWith("http://")&&!Z.data.startsWith("https://")}function lP0(Z){return"type"in Z&&Z.type==="image"&&"image"in Z&&typeof Z.image==="string"&&!Z.image.startsWith("http://")&&!Z.image.startsWith("https://")}function pP0(Z){return"type"in Z&&(Z.type==="blob"||Z.type==="base64")}function iP0(Z){return"b64_json"in Z}function oP0(Z){return"type"in Z&&"result"in Z&&Z.type==="image_generation"}function nP0(Z){return"uri"in Z&&typeof Z.uri==="string"&&Z.uri.startsWith("data:")}function z5(Z){let J={...Z};if(vZ(J.source))J.source=z5(J.source);if(zd(Z))J.inlineData={...Z.inlineData,data:x3};if(Kd(Z))J.image_url={...Z.image_url,url:x3};if(Gd(Z))J.input_audio={...Z.input_audio,data:x3};if(Hd(Z))J.file={...Z.file,file_data:x3};for(let Q of aP0)if(typeof J[Q]==="string")J[Q]=x3;return J}var x3="[Blob substitute]",aP0;var YU=q(()=>{aP0=["image_url","data","content","b64_json","result","uri","image"]});function hW(Z,J){if(_W(Z)<=J)return Z;let Q=0,$=Z.length,Y="";while(Q<=$){let X=Math.floor((Q+$)/2),W=Z.slice(0,X);if(_W(W)<=J)Y=W,Q=X+1;else $=X-1}return Y}function sP0(Z){if(typeof Z==="string")return Z;if("text"in Z&&typeof Z.text==="string")return Z.text;return""}function Bd(Z,J){if(typeof Z==="string")return J;return{...Z,text:J}}function rP0(Z){return Z!==null&&typeof Z==="object"&&"content"in Z&&typeof Z.content==="string"}function Fd(Z){return Z!==null&&typeof Z==="object"&&"content"in Z&&Array.isArray(Z.content)}function Ud(Z){return Z!==null&&typeof Z==="object"&&"parts"in Z&&Array.isArray(Z.parts)&&Z.parts.length>0}function tP0(Z,J){let Q={...Z,content:""},$=WU(Q),Y=J-$;if(Y<=0)return[];let X=hW(Z.content,Y);return[{...Z,content:X}]}function eP0(Z){if("parts"in Z&&Array.isArray(Z.parts))return{key:"parts",items:Z.parts};if("content"in Z&&Array.isArray(Z.content))return{key:"content",items:Z.content};return{key:null,items:[]}}function ZM0(Z,J){let{key:Q,items:$}=eP0(Z);if(Q===null||$.length===0)return[];let Y=$.map((z)=>Bd(z,"")),X=WU({...Z,[Q]:Y}),W=J-X;if(W<=0)return[];let K=[];for(let z of $){let G=sP0(z),H=_W(G);if(H<=W)K.push(z),W-=H;else if(K.length===0){let B=hW(G,W);if(B)K.push(Bd(z,B));break}else break}if(K.length<=0)return[];else return[{...Z,[Q]:K}]}function JM0(Z,J){if(!Z)return[];if(typeof Z==="string"){let Q=hW(Z,J);return Q?[Q]:[]}if(typeof Z!=="object")return[];if(rP0(Z))return tP0(Z,J);if(Fd(Z)||Ud(Z))return ZM0(Z,J);return[]}function XU(Z){return Z.map((Q)=>{let $=void 0;if(!!Q&&typeof Q==="object"){if(Fd(Q))$={...Q,content:XU(Q.content)};else if("content"in Q&&vZ(Q.content))$={...Q,content:z5(Q.content)};if(Ud(Q))$={...$??Q,parts:XU(Q.parts)};if(vZ($))$=z5($);else if(vZ(Q))$=z5(Q)}return $??Q})}function QM0(Z,J){if(!Array.isArray(Z)||Z.length===0)return Z;let Q=J-2,$=Z[Z.length-1],Y=XU([$]),X=Y[0];if(WU(X)<=Q)return Y;return JM0(X,Q)}function xZ(Z){return QM0(Z,Vd)}function qd(Z){return hW(Z,Vd)}var Vd=20000,_W=(Z)=>{return new TextEncoder().encode(Z).length},WU=(Z)=>{return _W(JSON.stringify(Z))};var g3=q(()=>{YU()});function a9(Z){let J=Boolean(k()?.getOptions().sendDefaultPii);return{...Z,recordInputs:Z?.recordInputs??J,recordOutputs:Z?.recordOutputs??J}}function G5(Z){if(Z.includes("messages"))return"chat";if(Z.includes("completions"))return"text_completion";if(Z.includes("generateContent"))return"generate_content";if(Z.includes("models"))return"models";if(Z.includes("chat"))return"chat";return Z.split(".").pop()||"unknown"}function i4(Z){return`gen_ai.${G5(Z)}`}function o4(Z,J){return Z?`${Z}.${J}`:J}function d3(Z,J,Q,$,Y){if(J!==void 0)Z.setAttributes({[M0]:J});if(Q!==void 0)Z.setAttributes({[t0]:Q});if(J!==void 0||Q!==void 0||$!==void 0||Y!==void 0){let X=(J??0)+(Q??0)+($??0)+(Y??0);Z.setAttributes({[i1]:X})}}function H5(Z){if(typeof Z==="string")return qd(Z);if(Array.isArray(Z)){let J=xZ(Z);return JSON.stringify(J)}return JSON.stringify(Z)}function N6(Z){if(!Array.isArray(Z))return{systemInstructions:void 0,filteredMessages:Z};let J=Z.findIndex((W)=>W&&typeof W==="object"&&("role"in W)&&W.role==="system");if(J===-1)return{systemInstructions:void 0,filteredMessages:Z};let Q=Z[J],$=typeof Q.content==="string"?Q.content:Q.content!==void 0?JSON.stringify(Q.content):void 0;if(!$)return{systemInstructions:void 0,filteredMessages:Z};let Y=JSON.stringify([{type:"text",content:$}]),X=[...Z.slice(0,J),...Z.slice(J+1)];return{systemInstructions:Y,filteredMessages:X}}async function $M0(Z,J,Q){let $=Z.catch((W)=>{throw h(W,{mechanism:{handled:!1,type:Q}}),W}),Y=await J,X=await $;if(X&&typeof X==="object"&&"data"in X)return{...X,data:Y};return Y}function n4(Z,J,Q){if(!X1(Z))return J;return new Proxy(Z,{get($,Y){let W=Y in Promise.prototype||Y===Symbol.toStringTag?J:$,K=Reflect.get(W,Y);if(Y==="withResponse"&&typeof K==="function")return function(){let G=K.call($);return $M0(G,J,Q)};return typeof K==="function"?K.bind(W):K}})}var s9=q(()=>{k1();B0();S0();h1();g3()});var bW="operation.name",wd="ai.operationId",vW="ai.prompt",jd="ai.schema",Dd="ai.response.object",KU="ai.values",zU="ai.response.text",GU="ai.response.toolCalls",Od="ai.response.finishReason",B5="ai.prompt.messages",a4="ai.prompt.tools",c3="ai.model.id",Ld="ai.response.providerMetadata",Cd="ai.usage.cachedInputTokens",Pd="ai.telemetry.functionId",Md="ai.usage.completionTokens",Rd="ai.usage.promptTokens",kd="ai.usage.tokens",HU="ai.toolCall.name",BU="ai.toolCall.id",Nd="ai.toolCall.args",Ad="ai.toolCall.result";var VU=()=>{};function Td(Z,J){let Q=Z.parent_span_id;if(!Q)return;let $=Z.data[M0],Y=Z.data[t0];if(typeof $==="number"||typeof Y==="number"){let X=J.get(Q)||{inputTokens:0,outputTokens:0};if(typeof $==="number")X.inputTokens+=$;if(typeof Y==="number")X.outputTokens+=Y;J.set(Q,X)}}function FU(Z,J){let Q=J.get(Z.span_id);if(!Q||!Z.data)return;if(Q.inputTokens>0)Z.data[M0]=Q.inputTokens;if(Q.outputTokens>0)Z.data[t0]=Q.outputTokens;if(Q.inputTokens>0||Q.outputTokens>0)Z.data["gen_ai.usage.total_tokens"]=Q.inputTokens+Q.outputTokens}function YM0(Z){let J=new Map;for(let Q of Z){let $=Q.data[n9];if(typeof $!=="string")continue;try{let Y=JSON.parse($);for(let X of Y)if(X.name&&X.description&&!J.has(X.name))J.set(X.name,X.description)}catch{}}return J}function Ed(Z,J){let Q=YM0(Z);for(let $ of Z){if($.op==="gen_ai.execute_tool"){let Y=$.data[W5];if(typeof Y==="string"){let X=Q.get(Y);if(X)$.data[Jd]=X}}if($.op==="gen_ai.invoke_agent")FU($,J)}}function UU(Z){return v3.get(Z)}function qU(Z){v3.delete(Z)}function fd(Z){let J=Z.map((Q)=>{if(typeof Q==="string")try{return JSON.parse(Q)}catch{return Q}return Q});return JSON.stringify(J)}function Id(Z){return Z.filter((J)=>!!J&&typeof J==="object"&&("role"in J)&&("content"in J))}function XM0(Z){try{let J=JSON.parse(Z);if(!!J&&typeof J==="object"){let{messages:Q}=J,{prompt:$,system:Y}=J,X=[];if(typeof Y==="string")X.push({role:"system",content:Y});if(typeof Q==="string")try{Q=JSON.parse(Q)}catch{}if(Array.isArray(Q))return X.push(...Id(Q)),X;if(Array.isArray($))return X.push(...Id($)),X;if(typeof $==="string")X.push({role:"user",content:$});if(X.length>0)return X}}catch{}return[]}function yd(Z,J){if(typeof J[vW]==="string"&&!J[I1]&&!J[B5]){let Q=J[vW],$=XM0(Q);if($.length){let{systemInstructions:Y,filteredMessages:X}=N6($);if(Y)Z.setAttribute(k6,Y);let W=Array.isArray(X)?X.length:0,K=H5(X);Z.setAttributes({[vW]:K,[I1]:K,[o1]:W})}}else if(typeof J[B5]==="string")try{let Q=JSON.parse(J[B5]);if(Array.isArray(Q)){let{systemInstructions:$,filteredMessages:Y}=N6(Q);if($)Z.setAttribute(k6,$);let X=Array.isArray(Y)?Y.length:0,W=H5(Y);Z.setAttributes({[B5]:W,[I1]:W,[o1]:X})}}catch{}}function Sd(Z){switch(Z){case"ai.generateText":case"ai.streamText":case"ai.generateObject":case"ai.streamObject":return EW;case"ai.generateText.doGenerate":return og;case"ai.streamText.doStream":return ng;case"ai.generateObject.doGenerate":return ag;case"ai.streamObject.doStream":return sg;case"ai.embed.doEmbed":return rg;case"ai.embedMany.doEmbed":return tg;case"ai.rerank.doRerank":return eg;case"ai.toolCall":return Zd;default:if(Z.startsWith("ai.stream"))return"ai.run";return}}var wU=q(()=>{h1();s9();$U();VU()});function WM0(Z){if(JU.has(Z))return"invoke_agent";if(QU.has(Z))return"generate_content";if(Yd.has(Z))return"embeddings";if(Xd.has(Z))return"rerank";if(Z==="ai.toolCall")return"execute_tool";return Z}function KM0(Z){let{data:J,description:Q}=v(Z);if(!Q)return;if(J[HU]&&J[BU]&&Q==="ai.toolCall"){VM0(Z,J);return}if(!J[wd]&&!Q.startsWith("ai."))return;FM0(Z,Q,J)}function zM0(Z){if(Z.type==="transaction"&&Z.spans){let J=new Map;for(let $ of Z.spans)BM0($),Td($,J);Ed(Z.spans,J);let Q=Z.contexts?.trace;if(Q?.op==="gen_ai.invoke_agent")FU(Q,J)}return Z}function GM0(Z){if(typeof Z!=="string")return"stop";switch(Z){case"tool-calls":return"tool_call";case"stop":case"length":case"content_filter":case"error":return Z;default:return Z}}function HM0(Z){let J=Z[zU],Q=Z[GU],$=Z[Od];if(J==null&&Q==null)return;let Y=[];if(typeof J==="string"&&J.length>0)Y.push({type:"text",content:J});if(Q!=null)try{let X=typeof Q==="string"?JSON.parse(Q):Q;if(Array.isArray(X)){for(let W of X){let K=W.input??W.args;Y.push({type:"tool_call",id:W.toolCallId,name:W.toolName,arguments:typeof K==="string"?K:JSON.stringify(K??{})})}delete Z[GU]}}catch{}if(Y.length>0){let X={role:"assistant",parts:Y,finish_reason:GM0($)};Z[ug]=JSON.stringify([X]),delete Z[zU]}}function BM0(Z){let{data:J,origin:Q}=Z;if(Q!=="auto.vercelai.otel")return;if(Z.status&&Z.status!=="ok")Z.status="internal_error";if(T1(J,Md,t0),T1(J,Rd,M0),T1(J,Cd,bZ),T1(J,"ai.usage.inputTokens",M0),T1(J,"ai.usage.outputTokens",t0),T1(J,kd,M0),T1(J,"ai.response.avgOutputTokensPerSecond","ai.response.avgCompletionTokensPerSecond"),typeof J[M0]==="number"&&typeof J[bZ]==="number")J[M0]=J[M0]+J[bZ];if(typeof J[M0]==="number"){let $=typeof J[t0]==="number"?J[t0]:0;J[i1]=$+J[M0]}if(J[a4]&&Array.isArray(J[a4]))J[a4]=fd(J[a4]);if(J[bW]){let $=WM0(J[bW]);J[A1]=$,delete J[bW]}if(T1(J,B5,I1),HM0(J),T1(J,Dd,"gen_ai.response.object"),T1(J,a4,"gen_ai.request.available_tools"),T1(J,Nd,yW),T1(J,Ad,SW),T1(J,jd,"gen_ai.request.schema"),T1(J,c3,l0),Array.isArray(J[KU])){let $=J[KU].map((Y)=>{try{return JSON.parse(Y)}catch{return Y}});J[fW]=$.length===1?$[0]:JSON.stringify($)}UM0(J);for(let $ of Object.keys(J))if($.startsWith("ai."))T1(J,$,`vercel.${$}`)}function T1(Z,J,Q){if(Z[J]!=null)Z[Q]=Z[J],delete Z[J]}function VM0(Z,J){Z.setAttribute(f,"auto.vercelai.otel"),Z.setAttribute(g,"gen_ai.execute_tool"),Z.setAttribute(A1,"execute_tool"),T1(J,HU,W5),T1(J,BU,aF);let Q=J[aF];if(typeof Q==="string")v3.set(Q,Z.spanContext());if(!J[sF])Z.setAttribute(sF,"function");let $=J[W5];if($)Z.updateName(`execute_tool ${$}`)}function FM0(Z,J,Q){Z.setAttribute(f,"auto.vercelai.otel");let $=J.replace("ai.","");Z.setAttribute("ai.pipeline.name",$),Z.updateName($);let Y=Q[Pd];if(Y&&typeof Y==="string")Z.setAttribute("gen_ai.function_id",Y);if(yd(Z,Q),Q[c3]&&!Q[z1])Z.setAttribute(z1,Q[c3]);Z.setAttribute("ai.streaming",J.includes("stream"));let X=Sd(J);if(X)Z.setAttribute(g,X);if(JU.has(J)){if(Y&&typeof Y==="string")Z.updateName(`invoke_agent ${Y}`);else Z.updateName("invoke_agent");return}let W=Q[c3];if(W){let K=QU.has(J)?"generate_content":Wd[J];if(K)Z.updateName(`${K} ${W}`)}}function xW(Z){Z.on("spanStart",KM0),Z.addEventProcessor(Object.assign(zM0,{id:"VercelAiEventProcessor"}))}function UM0(Z){let J=Z[Ld];if(J)try{let Q=JSON.parse(J),$=Q.openai??Q.azure;if($){if(A9(Z,bZ,$.cachedPromptTokens),A9(Z,"gen_ai.usage.output_tokens.reasoning",$.reasoningTokens),A9(Z,"gen_ai.usage.output_tokens.prediction_accepted",$.acceptedPredictionTokens),A9(Z,"gen_ai.usage.output_tokens.prediction_rejected",$.rejectedPredictionTokens),!Z["gen_ai.conversation.id"])A9(Z,"gen_ai.conversation.id",$.responseId)}if(Q.anthropic){let Y=Q.anthropic.usage?.cache_read_input_tokens??Q.anthropic.cacheReadInputTokens;A9(Z,bZ,Y);let X=Q.anthropic.usage?.cache_creation_input_tokens??Q.anthropic.cacheCreationInputTokens;A9(Z,nF,X)}if(Q.bedrock?.usage)A9(Z,bZ,Q.bedrock.usage.cacheReadInputTokens),A9(Z,nF,Q.bedrock.usage.cacheWriteInputTokens);if(Q.deepseek)A9(Z,bZ,Q.deepseek.promptCacheHitTokens),A9(Z,"gen_ai.usage.input_tokens.cache_miss",Q.deepseek.promptCacheMissTokens)}catch{}}function A9(Z,J,Q){if(Q!=null)Z[J]=Q}var _d=q(()=>{m0();j1();h1();$U();wU();VU()});var gZ="OpenAI",hd,qM0,bd;var gW=q(()=>{hd=["responses.create","chat.completions.create","embeddings.create","conversations.create"],qM0=["response.output_item.added","response.function_call_arguments.delta","response.function_call_arguments.done","response.output_item.done"],bd=["response.created","response.in_progress","response.failed","response.completed","response.incomplete","response.queued","response.output_text.delta",...qM0]});function dW(Z){if(Z.includes("chat.completions"))return K5.CHAT;if(Z.includes("responses"))return K5.CHAT;if(Z.includes("embeddings"))return K5.EMBEDDINGS;if(Z.includes("conversations"))return K5.CHAT;return Z.split(".").pop()||"unknown"}function vd(Z){return`gen_ai.${dW(Z)}`}function xd(Z){return hd.includes(Z)}function gd(Z){return Z!==null&&typeof Z==="object"&&"object"in Z&&Z.object==="chat.completion"}function dd(Z){return Z!==null&&typeof Z==="object"&&"object"in Z&&Z.object==="response"}function cd(Z){if(Z===null||typeof Z!=="object"||!("object"in Z))return!1;let J=Z;return J.object==="list"&&typeof J.model==="string"&&J.model.toLowerCase().includes("embedding")}function md(Z){return Z!==null&&typeof Z==="object"&&"object"in Z&&Z.object==="conversation"}function ud(Z){return Z!==null&&typeof Z==="object"&&"type"in Z&&typeof Z.type==="string"&&Z.type.startsWith("response.")}function ld(Z){return Z!==null&&typeof Z==="object"&&"object"in Z&&Z.object==="chat.completion.chunk"}function pd(Z,J,Q){if(cW(Z,J.id,J.model,J.created),J.usage)m3(Z,J.usage.prompt_tokens,J.usage.completion_tokens,J.usage.total_tokens);if(Array.isArray(J.choices)){let $=J.choices.map((Y)=>Y.finish_reason).filter((Y)=>Y!==null);if($.length>0)Z.setAttributes({[z6]:JSON.stringify($)});if(Q){let Y=J.choices.map((X)=>X.message?.tool_calls).filter((X)=>Array.isArray(X)&&X.length>0).flat();if(Y.length>0)Z.setAttributes({[O1]:JSON.stringify(Y)})}}}function id(Z,J,Q){if(cW(Z,J.id,J.model,J.created_at),J.status)Z.setAttributes({[z6]:JSON.stringify([J.status])});if(J.usage)m3(Z,J.usage.input_tokens,J.usage.output_tokens,J.usage.total_tokens);if(Q){let $=J;if(Array.isArray($.output)&&$.output.length>0){let Y=$.output.filter((X)=>typeof X==="object"&&X!==null&&X.type==="function_call");if(Y.length>0)Z.setAttributes({[O1]:JSON.stringify(Y)})}}}function od(Z,J){if(Z.setAttributes({[tF]:J.model,[z1]:J.model}),J.usage)m3(Z,J.usage.prompt_tokens,void 0,J.usage.total_tokens)}function nd(Z,J){let{id:Q,created_at:$}=J;if(Z.setAttributes({[rF]:Q,[s6]:Q,[b3]:Q}),$)Z.setAttributes({[eF]:new Date($*1000).toISOString()})}function m3(Z,J,Q,$){if(J!==void 0)Z.setAttributes({[$d]:J,[M0]:J});if(Q!==void 0)Z.setAttributes({[Qd]:Q,[t0]:Q});if($!==void 0)Z.setAttributes({[i1]:$})}function cW(Z,J,Q,$){Z.setAttributes({[rF]:J,[s6]:J}),Z.setAttributes({[tF]:Q,[z1]:Q}),Z.setAttributes({[eF]:new Date($*1000).toISOString()})}function wM0(Z){if("conversation"in Z&&typeof Z.conversation==="string")return Z.conversation;if("previous_response_id"in Z&&typeof Z.previous_response_id==="string")return Z.previous_response_id;return}function ad(Z){let J={[l0]:Z.model??"unknown"};if("temperature"in Z)J[SZ]=Z.temperature;if("top_p"in Z)J[hZ]=Z.top_p;if("frequency_penalty"in Z)J[_Z]=Z.frequency_penalty;if("presence_penalty"in Z)J[p4]=Z.presence_penalty;if("stream"in Z)J[u4]=Z.stream;if("encoding_format"in Z)J[dg]=Z.encoding_format;if("dimensions"in Z)J[cg]=Z.dimensions;let Q=wM0(Z);if(Q)J[b3]=Q;return J}var jU=q(()=>{h1();gW()});function jM0(Z,J){for(let Q of Z){let $=Q.index;if($===void 0||!Q.function)continue;if(!($ in J.chatCompletionToolCalls))J.chatCompletionToolCalls[$]={...Q,function:{name:Q.function.name,arguments:Q.function.arguments||""}};else{let Y=J.chatCompletionToolCalls[$];if(Q.function.arguments&&Y?.function)Y.function.arguments+=Q.function.arguments}}}function DM0(Z,J,Q){if(J.responseId=Z.id??J.responseId,J.responseModel=Z.model??J.responseModel,J.responseTimestamp=Z.created??J.responseTimestamp,Z.usage)J.promptTokens=Z.usage.prompt_tokens,J.completionTokens=Z.usage.completion_tokens,J.totalTokens=Z.usage.total_tokens;for(let $ of Z.choices??[]){if(Q){if($.delta?.content)J.responseTexts.push($.delta.content);if($.delta?.tool_calls)jM0($.delta.tool_calls,J)}if($.finish_reason)J.finishReasons.push($.finish_reason)}}function OM0(Z,J,Q,$){if(!(Z&&typeof Z==="object")){J.eventTypes.push("unknown:non-object");return}if(Z instanceof Error){$.setStatus({code:a,message:"internal_error"}),h(Z,{mechanism:{handled:!1,type:"auto.ai.openai.stream-response"}});return}if(!("type"in Z))return;let Y=Z;if(!bd.includes(Y.type)){J.eventTypes.push(Y.type);return}if(Q){if(Y.type==="response.output_item.done"&&"item"in Y)J.responsesApiToolCalls.push(Y.item);if(Y.type==="response.output_text.delta"&&"delta"in Y&&Y.delta){J.responseTexts.push(Y.delta);return}}if("response"in Y){let{response:X}=Y;if(J.responseId=X.id??J.responseId,J.responseModel=X.model??J.responseModel,J.responseTimestamp=X.created_at??J.responseTimestamp,X.usage)J.promptTokens=X.usage.input_tokens,J.completionTokens=X.usage.output_tokens,J.totalTokens=X.usage.total_tokens;if(X.status)J.finishReasons.push(X.status);if(Q&&X.output_text)J.responseTexts.push(X.output_text)}}async function*sd(Z,J,Q){let $={eventTypes:[],responseTexts:[],finishReasons:[],responseId:"",responseModel:"",responseTimestamp:0,promptTokens:void 0,completionTokens:void 0,totalTokens:void 0,chatCompletionToolCalls:{},responsesApiToolCalls:[]};try{for await(let Y of Z){if(ld(Y))DM0(Y,$,Q);else if(ud(Y))OM0(Y,$,Q,J);yield Y}}finally{if(cW(J,$.responseId,$.responseModel,$.responseTimestamp),m3(J,$.promptTokens,$.completionTokens,$.totalTokens),J.setAttributes({[X5]:!0}),$.finishReasons.length)J.setAttributes({[z6]:JSON.stringify($.finishReasons)});if(Q&&$.responseTexts.length)J.setAttributes({[Q1]:$.responseTexts.join("")});let X=[...Object.values($.chatCompletionToolCalls),...$.responsesApiToolCalls];if(X.length>0)J.setAttributes({[O1]:JSON.stringify(X)});J.end()}}var rd=q(()=>{k1();w1();h1();gW();jU()});function LM0(Z){let J=Array.isArray(Z.tools)?Z.tools:[],$=Z.web_search_options&&typeof Z.web_search_options==="object"?[{type:"web_search_options",...Z.web_search_options}]:[],Y=[...J,...$];if(Y.length===0)return;try{return JSON.stringify(Y)}catch(X){M&&O.error("Failed to serialize OpenAI tools:",X);return}}function CM0(Z,J){let Q={[yZ]:"openai",[A1]:dW(J),[f]:"auto.ai.openai"};if(Z.length>0&&typeof Z[0]==="object"&&Z[0]!==null){let $=Z[0],Y=LM0($);if(Y)Q[n9]=Y;Object.assign(Q,ad($))}else Q[l0]="unknown";return Q}function PM0(Z,J,Q){if(!J||typeof J!=="object")return;let $=J;if(gd($)){if(pd(Z,$,Q),Q&&$.choices?.length){let Y=$.choices.map((X)=>X.message?.content||"");Z.setAttributes({[Q1]:JSON.stringify(Y)})}}else if(dd($)){if(id(Z,$,Q),Q&&$.output_text)Z.setAttributes({[Q1]:$.output_text})}else if(cd($))od(Z,$);else if(md($))nd(Z,$)}function td(Z,J,Q){if(Q===K5.EMBEDDINGS&&"input"in J){let K=J.input;if(K==null)return;if(typeof K==="string"&&K.length===0)return;if(Array.isArray(K)&&K.length===0)return;Z.setAttribute(fW,typeof K==="string"?K:JSON.stringify(K));return}let $="input"in J?J.input:("messages"in J)?J.messages:void 0;if(!$)return;if(Array.isArray($)&&$.length===0)return;let{systemInstructions:Y,filteredMessages:X}=N6($);if(Y)Z.setAttribute(k6,Y);let W=H5(X);if(Z.setAttribute(I1,W),Array.isArray(X))Z.setAttribute(o1,X.length);else Z.setAttribute(o1,1)}function MM0(Z,J,Q,$){return function(...X){let W=CM0(X,J),K=W[l0]||"unknown",z=dW(J),G=X[0],H=G&&typeof G==="object"&&G.stream===!0,B={name:`${z} ${K}`,op:vd(J),attributes:W};if(H){let U,w=h0(B,(D)=>{if(U=Z.apply(Q,X),$.recordInputs&&G)td(D,G,z);return(async()=>{try{let L=await U;return sd(L,D,$.recordOutputs??!1)}catch(L){throw D.setStatus({code:a,message:"internal_error"}),h(L,{mechanism:{handled:!1,type:"auto.ai.openai.stream",data:{function:J}}}),D.end(),L}})()});return n4(U,w,"auto.ai.openai")}let V,F=r0(B,(U)=>{if(V=Z.apply(Q,X),$.recordInputs&&G)td(U,G,z);return V.then((w)=>{return PM0(U,w,$.recordOutputs),w},(w)=>{throw h(w,{mechanism:{handled:!1,type:"auto.ai.openai",data:{function:J}}}),w})});return n4(V,F,"auto.ai.openai")}}function ed(Z,J="",Q){return new Proxy(Z,{get($,Y){let X=$[Y],W=o4(J,String(Y));if(typeof X==="function"&&xd(W))return MM0(X,W,$,Q);if(typeof X==="function")return X.bind($);if(X&&typeof X==="object")return ed(X,W,Q);return X}})}function s4(Z,J){return ed(Z,"",a9(J))}var Zc=q(()=>{z0();k1();m0();Z0();w1();M6();h1();s9();rd();jU()});var dZ="Anthropic_AI",Jc;var DU=q(()=>{Jc=["messages.create","messages.stream","messages.countTokens","models.get","completions.create","models.retrieve","beta.messages.create"]});function Qc(Z){return Jc.includes(Z)}function $c(Z,J){if(Array.isArray(J)&&J.length===0)return;let{systemInstructions:Q,filteredMessages:$}=N6(J);if(Q)Z.setAttributes({[k6]:Q});let Y=Array.isArray($)?$.length:1;Z.setAttributes({[I1]:H5($),[o1]:Y})}function OU(Z){if(!Z)return"internal_error";return RM0[Z]||"internal_error"}function Yc(Z,J){if(J.error)Z.setStatus({code:a,message:OU(J.error.type)}),h(J.error,{mechanism:{handled:!1,type:"auto.ai.anthropic.anthropic_error"}})}function Xc(Z){let{system:J,messages:Q,input:$}=Z,Y=typeof J==="string"?[{role:"system",content:Z.system}]:[],X=Array.isArray($)?$:$!=null?[$]:void 0,W=Array.isArray(Q)?Q:Q!=null?[Q]:[],K=X??W;return[...Y,...K]}var RM0;var LU=q(()=>{k1();w1();h1();s9();DU();RM0={invalid_request_error:"invalid_argument",authentication_error:"unauthenticated",permission_error:"permission_denied",not_found_error:"not_found",request_too_large:"failed_precondition",rate_limit_error:"resource_exhausted",api_error:"internal_error",overloaded_error:"unavailable"}});function kM0(Z,J){if("type"in Z&&typeof Z.type==="string"){if(Z.type==="error")return J.setStatus({code:a,message:OU(Z.error?.type)}),h(Z.error,{mechanism:{handled:!1,type:"auto.ai.anthropic.anthropic_error"}}),!0}return!1}function NM0(Z,J){if(Z.type==="message_delta"&&Z.usage){if("output_tokens"in Z.usage&&typeof Z.usage.output_tokens==="number")J.completionTokens=Z.usage.output_tokens}if(Z.message){let Q=Z.message;if(Q.id)J.responseId=Q.id;if(Q.model)J.responseModel=Q.model;if(Q.stop_reason)J.finishReasons.push(Q.stop_reason);if(Q.usage){if(typeof Q.usage.input_tokens==="number")J.promptTokens=Q.usage.input_tokens;if(typeof Q.usage.cache_creation_input_tokens==="number")J.cacheCreationInputTokens=Q.usage.cache_creation_input_tokens;if(typeof Q.usage.cache_read_input_tokens==="number")J.cacheReadInputTokens=Q.usage.cache_read_input_tokens}}}function AM0(Z,J){if(Z.type!=="content_block_start"||typeof Z.index!=="number"||!Z.content_block)return;if(Z.content_block.type==="tool_use"||Z.content_block.type==="server_tool_use")J.activeToolBlocks[Z.index]={id:Z.content_block.id,name:Z.content_block.name,inputJsonParts:[]}}function IM0(Z,J,Q){if(Z.type!=="content_block_delta"||!Z.delta)return;if(typeof Z.index==="number"&&"partial_json"in Z.delta&&typeof Z.delta.partial_json==="string"){let $=J.activeToolBlocks[Z.index];if($)$.inputJsonParts.push(Z.delta.partial_json)}if(Q&&typeof Z.delta.text==="string")J.responseTexts.push(Z.delta.text)}function TM0(Z,J){if(Z.type!=="content_block_stop"||typeof Z.index!=="number")return;let Q=J.activeToolBlocks[Z.index];if(!Q)return;let $=Q.inputJsonParts.join(""),Y;try{Y=$?JSON.parse($):{}}catch{Y={__unparsed:$}}J.toolCalls.push({type:"tool_use",id:Q.id,name:Q.name,input:Y}),delete J.activeToolBlocks[Z.index]}function Wc(Z,J,Q,$){if(!(Z&&typeof Z==="object"))return;if(kM0(Z,$))return;NM0(Z,J),AM0(Z,J),IM0(Z,J,Q),TM0(Z,J)}function EM0(Z,J,Q){if(!J.isRecording())return;if(Z.responseId)J.setAttributes({[s6]:Z.responseId});if(Z.responseModel)J.setAttributes({[z1]:Z.responseModel});if(d3(J,Z.promptTokens,Z.completionTokens,Z.cacheCreationInputTokens,Z.cacheReadInputTokens),J.setAttributes({[X5]:!0}),Z.finishReasons.length>0)J.setAttributes({[z6]:JSON.stringify(Z.finishReasons)});if(Q&&Z.responseTexts.length>0)J.setAttributes({[Q1]:Z.responseTexts.join("")});if(Q&&Z.toolCalls.length>0)J.setAttributes({[O1]:JSON.stringify(Z.toolCalls)});J.end()}async function*Kc(Z,J,Q){let $={responseTexts:[],finishReasons:[],responseId:"",responseModel:"",promptTokens:void 0,completionTokens:void 0,cacheCreationInputTokens:void 0,cacheReadInputTokens:void 0,toolCalls:[],activeToolBlocks:{}};try{for await(let Y of Z)Wc(Y,$,Q,J),yield Y}finally{if($.responseId)J.setAttributes({[s6]:$.responseId});if($.responseModel)J.setAttributes({[z1]:$.responseModel});if(d3(J,$.promptTokens,$.completionTokens,$.cacheCreationInputTokens,$.cacheReadInputTokens),J.setAttributes({[X5]:!0}),$.finishReasons.length>0)J.setAttributes({[z6]:JSON.stringify($.finishReasons)});if(Q&&$.responseTexts.length>0)J.setAttributes({[Q1]:$.responseTexts.join("")});if(Q&&$.toolCalls.length>0)J.setAttributes({[O1]:JSON.stringify($.toolCalls)});J.end()}}function zc(Z,J,Q){let $={responseTexts:[],finishReasons:[],responseId:"",responseModel:"",promptTokens:void 0,completionTokens:void 0,cacheCreationInputTokens:void 0,cacheReadInputTokens:void 0,toolCalls:[],activeToolBlocks:{}};return Z.on("streamEvent",(Y)=>{Wc(Y,$,Q,J)}),Z.on("message",()=>{EM0($,J,Q)}),Z.on("error",(Y)=>{if(h(Y,{mechanism:{handled:!1,type:"auto.ai.anthropic.stream_error"}}),J.isRecording())J.setStatus({code:a,message:"internal_error"}),J.end()}),Z}var Gc=q(()=>{k1();w1();h1();s9();LU()});function fM0(Z,J){let Q={[yZ]:"anthropic",[A1]:G5(J),[f]:"auto.ai.anthropic"};if(Z.length>0&&typeof Z[0]==="object"&&Z[0]!==null){let $=Z[0];if($.tools&&Array.isArray($.tools))Q[n9]=JSON.stringify($.tools);if(Q[l0]=$.model??"unknown","temperature"in $)Q[SZ]=$.temperature;if("top_p"in $)Q[hZ]=$.top_p;if("stream"in $)Q[u4]=$.stream;if("top_k"in $)Q[TW]=$.top_k;if("frequency_penalty"in $)Q[_Z]=$.frequency_penalty;if("max_tokens"in $)Q[l4]=$.max_tokens}else if(J==="models.retrieve"||J==="models.get")Q[l0]=Z[0];else Q[l0]="unknown";return Q}function CU(Z,J){let Q=Xc(J);if($c(Z,Q),"prompt"in J)Z.setAttributes({[gg]:JSON.stringify(J.prompt)})}function yM0(Z,J){if("content"in J){if(Array.isArray(J.content)){Z.setAttributes({[Q1]:J.content.map(($)=>$.text).filter(($)=>!!$).join("")});let Q=[];for(let $ of J.content)if($.type==="tool_use"||$.type==="server_tool_use")Q.push($);if(Q.length>0)Z.setAttributes({[O1]:JSON.stringify(Q)})}}if("completion"in J)Z.setAttributes({[Q1]:J.completion});if("input_tokens"in J)Z.setAttributes({[Q1]:JSON.stringify(J.input_tokens)})}function SM0(Z,J){if("id"in J&&"model"in J){if(Z.setAttributes({[s6]:J.id,[z1]:J.model}),"created"in J&&typeof J.created==="number")Z.setAttributes({[ZU]:new Date(J.created*1000).toISOString()});if("created_at"in J&&typeof J.created_at==="number")Z.setAttributes({[ZU]:new Date(J.created_at*1000).toISOString()});if("usage"in J&&J.usage)d3(Z,J.usage.input_tokens,J.usage.output_tokens,J.usage.cache_creation_input_tokens,J.usage.cache_read_input_tokens)}}function _M0(Z,J,Q){if(!J||typeof J!=="object")return;if("type"in J&&J.type==="error"){Yc(Z,J);return}if(Q)yM0(Z,J);SM0(Z,J)}function Hc(Z,J,Q){if(h(Z,{mechanism:{handled:!1,type:"auto.ai.anthropic",data:{function:Q}}}),J.isRecording())J.setStatus({code:a,message:"internal_error"}),J.end();throw Z}function hM0(Z,J,Q,$,Y,X,W,K,z,G,H){let B=Y[l0]??"unknown",V={name:`${X} ${B}`,op:i4(W),attributes:Y};if(G&&!H){let F,U=h0(V,(w)=>{if(F=Z.apply(Q,$),z.recordInputs&&K)CU(w,K);return(async()=>{try{let D=await F;return Kc(D,w,z.recordOutputs??!1)}catch(D){return Hc(D,w,W)}})()});return n4(F,U,"auto.ai.anthropic")}else return h0(V,(F)=>{try{if(z.recordInputs&&K)CU(F,K);let U=J.apply(Q,$);return zc(U,F,z.recordOutputs??!1)}catch(U){return Hc(U,F,W)}})}function bM0(Z,J,Q,$){return new Proxy(Z,{apply(Y,X,W){let K=fM0(W,J),z=K[l0]??"unknown",G=G5(J),H=typeof W[0]==="object"?W[0]:void 0,B=Boolean(H?.stream),V=J==="messages.stream";if(B||V)return hM0(Z,Y,Q,W,K,G,J,H,$,B,V);let F,U=r0({name:`${G} ${z}`,op:i4(J),attributes:K},(w)=>{if(F=Y.apply(Q,W),$.recordInputs&&H)CU(w,H);return F.then((D)=>{return _M0(w,D,$.recordOutputs),D},(D)=>{throw h(D,{mechanism:{handled:!1,type:"auto.ai.anthropic",data:{function:J}}}),D})});return n4(F,U,"auto.ai.anthropic")}})}function Bc(Z,J="",Q){return new Proxy(Z,{get($,Y){let X=$[Y],W=o4(J,String(Y));if(typeof X==="function"&&Qc(W))return bM0(X,W,$,Q);if(typeof X==="function")return X.bind($);if(X&&typeof X==="object")return Bc(X,W,Q);return X}})}function r4(Z,J){return Bc(Z,"",a9(J))}var Vc=q(()=>{k1();m0();w1();M6();h1();s9();Gc();LU()});var cZ="Google_GenAI",PU,Fc="google_genai",MU="chats.create",Uc="chat";var mW=q(()=>{PU=["models.generateContent","models.generateContentStream","chats.create","sendMessage","sendMessageStream"]});function vM0(Z,J){let Q=Z?.promptFeedback;if(Q?.blockReason){let $=Q.blockReasonMessage??Q.blockReason;return J.setStatus({code:a,message:"internal_error"}),h(`Content blocked: ${$}`,{mechanism:{handled:!1,type:"auto.ai.google_genai"}}),!0}return!1}function xM0(Z,J){if(typeof Z.responseId==="string")J.responseId=Z.responseId;if(typeof Z.modelVersion==="string")J.responseModel=Z.modelVersion;let Q=Z.usageMetadata;if(Q){if(typeof Q.promptTokenCount==="number")J.promptTokens=Q.promptTokenCount;if(typeof Q.candidatesTokenCount==="number")J.completionTokens=Q.candidatesTokenCount;if(typeof Q.totalTokenCount==="number")J.totalTokens=Q.totalTokenCount}}function gM0(Z,J,Q){if(Array.isArray(Z.functionCalls))J.toolCalls.push(...Z.functionCalls);for(let $ of Z.candidates??[]){if($?.finishReason&&!J.finishReasons.includes($.finishReason))J.finishReasons.push($.finishReason);for(let Y of $?.content?.parts??[]){if(Q&&Y.text)J.responseTexts.push(Y.text);if(Y.functionCall)J.toolCalls.push({type:"function",id:Y.functionCall.id,name:Y.functionCall.name,arguments:Y.functionCall.args})}}}function dM0(Z,J,Q,$){if(!Z||vM0(Z,$))return;xM0(Z,J),gM0(Z,J,Q)}async function*qc(Z,J,Q){let $={responseTexts:[],finishReasons:[],toolCalls:[]};try{for await(let Y of Z)dM0(Y,$,Q,J),yield Y}finally{let Y={[X5]:!0};if($.responseId)Y[s6]=$.responseId;if($.responseModel)Y[z1]=$.responseModel;if($.promptTokens!==void 0)Y[M0]=$.promptTokens;if($.completionTokens!==void 0)Y[t0]=$.completionTokens;if($.totalTokens!==void 0)Y[i1]=$.totalTokens;if($.finishReasons.length)Y[z6]=JSON.stringify($.finishReasons);if(Q&&$.responseTexts.length)Y[Q1]=$.responseTexts.join("");if(Q&&$.toolCalls.length)Y[O1]=JSON.stringify($.toolCalls);J.setAttributes(Y),J.end()}}var wc=q(()=>{k1();w1();h1()});function jc(Z){if(PU.includes(Z))return!0;let J=Z.split(".").pop();return PU.includes(J)}function Dc(Z){return Z.includes("Stream")}function t4(Z,J="user"){if(typeof Z==="string")return[{role:J,content:Z}];if(Array.isArray(Z))return Z.flatMap((Q)=>t4(Q,J));if(typeof Z!=="object"||!Z)return[];if("role"in Z&&typeof Z.role==="string")return[Z];if("parts"in Z)return[{...Z,role:J}];return[{role:J,content:Z}]}var Oc=q(()=>{mW()});function Lc(Z,J){if("model"in Z&&typeof Z.model==="string")return Z.model;if(J&&typeof J==="object"){let Q=J;if("model"in Q&&typeof Q.model==="string")return Q.model;if("modelVersion"in Q&&typeof Q.modelVersion==="string")return Q.modelVersion}return"unknown"}function cM0(Z){let J={};if("temperature"in Z&&typeof Z.temperature==="number")J[SZ]=Z.temperature;if("topP"in Z&&typeof Z.topP==="number")J[hZ]=Z.topP;if("topK"in Z&&typeof Z.topK==="number")J[TW]=Z.topK;if("maxOutputTokens"in Z&&typeof Z.maxOutputTokens==="number")J[l4]=Z.maxOutputTokens;if("frequencyPenalty"in Z&&typeof Z.frequencyPenalty==="number")J[_Z]=Z.frequencyPenalty;if("presencePenalty"in Z&&typeof Z.presencePenalty==="number")J[p4]=Z.presencePenalty;return J}function mM0(Z,J,Q){let $={[yZ]:Fc,[A1]:G5(Z),[f]:"auto.ai.google_genai"};if(J){if($[l0]=Lc(J,Q),"config"in J&&typeof J.config==="object"&&J.config){let Y=J.config;if(Object.assign($,cM0(Y)),"tools"in Y&&Array.isArray(Y.tools)){let X=Y.tools.flatMap((W)=>W.functionDeclarations);$[n9]=JSON.stringify(X)}}}else $[l0]=Lc({},Q);return $}function Cc(Z,J){let Q=[];if("config"in J&&J.config&&typeof J.config==="object"&&"systemInstruction"in J.config&&J.config.systemInstruction)Q.push(...t4(J.config.systemInstruction,"system"));if("history"in J)Q.push(...t4(J.history,"user"));if("contents"in J)Q.push(...t4(J.contents,"user"));if("message"in J)Q.push(...t4(J.message,"user"));if(Array.isArray(Q)&&Q.length){let{systemInstructions:$,filteredMessages:Y}=N6(Q);if($)Z.setAttribute(k6,$);let X=Array.isArray(Y)?Y.length:0;Z.setAttributes({[o1]:X,[I1]:JSON.stringify(xZ(Y))})}}function uM0(Z,J,Q){if(!J||typeof J!=="object")return;if(J.modelVersion)Z.setAttribute(z1,J.modelVersion);if(J.usageMetadata&&typeof J.usageMetadata==="object"){let $=J.usageMetadata;if(typeof $.promptTokenCount==="number")Z.setAttributes({[M0]:$.promptTokenCount});if(typeof $.candidatesTokenCount==="number")Z.setAttributes({[t0]:$.candidatesTokenCount});if(typeof $.totalTokenCount==="number")Z.setAttributes({[i1]:$.totalTokenCount})}if(Q&&Array.isArray(J.candidates)&&J.candidates.length>0){let $=J.candidates.map((Y)=>{if(Y.content?.parts&&Array.isArray(Y.content.parts))return Y.content.parts.map((X)=>typeof X.text==="string"?X.text:"").filter((X)=>X.length>0).join("");return""}).filter((Y)=>Y.length>0);if($.length>0)Z.setAttributes({[Q1]:$.join("")})}if(Q&&J.functionCalls){let $=J.functionCalls;if(Array.isArray($)&&$.length>0)Z.setAttributes({[O1]:JSON.stringify($)})}}function Pc(Z,J,Q,$){let Y=J===MU;return new Proxy(Z,{apply(X,W,K){let z=K[0],G=mM0(J,z,Q),H=G[l0]??"unknown",B=G5(J);if(Dc(J))return h0({name:`${B} ${H}`,op:i4(J),attributes:G},async(V)=>{try{if($.recordInputs&&z)Cc(V,z);let F=await X.apply(Q,K);return qc(F,V,Boolean($.recordOutputs))}catch(F){throw V.setStatus({code:a,message:"internal_error"}),h(F,{mechanism:{handled:!1,type:"auto.ai.google_genai",data:{function:J}}}),V.end(),F}});return r0({name:Y?`${B} ${H} create`:`${B} ${H}`,op:i4(J),attributes:G},(V)=>{if($.recordInputs&&z)Cc(V,z);return L9(()=>X.apply(Q,K),(F)=>{h(F,{mechanism:{handled:!1,type:"auto.ai.google_genai",data:{function:J}}})},()=>{},(F)=>{if(!Y)uM0(V,F,$.recordOutputs)})})}})}function RU(Z,J="",Q){return new Proxy(Z,{get:($,Y,X)=>{let W=Reflect.get($,Y,X),K=o4(J,String(Y));if(typeof W==="function"&&jc(K)){if(K===MU){let z=Pc(W,K,$,Q);return function(...H){let B=z(...H);if(B&&typeof B==="object")return RU(B,Uc,Q);return B}}return Pc(W,K,$,Q)}if(typeof W==="function")return W.bind($);if(W&&typeof W==="object")return RU(W,K,Q);return W}})}function e4(Z,J){return RU(Z,"",a9(J))}var Mc=q(()=>{k1();m0();w1();M6();mX();h1();g3();s9();mW();wc();Oc()});var uW="LangChain",V5="auto.ai.langchain",Rc;var lW=q(()=>{Rc={human:"user",ai:"assistant",assistant:"assistant",system:"system",function:"function",tool:"tool"}});function v8(Z){if(typeof Z==="string")return Z;try{return JSON.stringify(Z)}catch{return String(Z)}}function ZJ(Z){if(Array.isArray(Z))try{let J=Z.map((Q)=>Q&&typeof Q==="object"&&vZ(Q)?z5(Q):Q);return JSON.stringify(J)}catch{return String(Z)}return v8(Z)}function u3(Z){let J=Z.toLowerCase();return Rc[J]??J}function kc(Z){if(Z.includes("System"))return"system";if(Z.includes("Human"))return"user";if(Z.includes("AI")||Z.includes("Assistant"))return"assistant";if(Z.includes("Function"))return"function";if(Z.includes("Tool"))return"tool";return"user"}function kU(Z){if(!Z||Array.isArray(Z))return;return Z.invocation_params}function l3(Z){return Z.map((J)=>{let Q=J._getType;if(typeof Q==="function"){let Y=Q.call(J);return{role:u3(Y),content:ZJ(J.content)}}if(J.lc===1&&J.kwargs){let Y=J.id,X=Array.isArray(Y)&&Y.length>0?Y[Y.length-1]:"",W=typeof X==="string"?kc(X):"user";return{role:u3(W),content:ZJ(J.kwargs?.content)}}if(J.type){let Y=String(J.type).toLowerCase();return{role:u3(Y),content:ZJ(J.content)}}if(J.role)return{role:u3(String(J.role)),content:ZJ(J.content)};let $=J.constructor?.name;if($&&$!=="Object")return{role:u3(kc($)),content:ZJ(J.content)};return{role:"user",content:ZJ(J.content)}})}function lM0(Z,J,Q){let $={},Y="kwargs"in Z?Z.kwargs:void 0,X=J?.temperature??Q?.ls_temperature??Y?.temperature;A6($,SZ,X);let W=J?.max_tokens??Q?.ls_max_tokens??Y?.max_tokens;A6($,l4,W);let K=J?.top_p??Y?.top_p;A6($,hZ,K);let z=J?.frequency_penalty;A6($,_Z,z);let G=J?.presence_penalty;if(A6($,p4,G),J&&"stream"in J)r6($,u4,Boolean(J.stream));return $}function Nc(Z,J,Q,$,Y){return{[yZ]:v8(Z??"langchain"),[A1]:"chat",[l0]:v8(J),[f]:V5,...lM0(Q,$,Y)}}function Ac(Z,J,Q,$,Y){let X=Y?.ls_provider,W=$?.model??Y?.ls_model_name??"unknown",K=Nc(X,W,Z,$,Y);if(Q&&Array.isArray(J)&&J.length>0){r6(K,o1,J.length);let z=J.map((G)=>({role:"user",content:G}));r6(K,I1,v8(z))}return K}function Ic(Z,J,Q,$,Y){let X=Y?.ls_provider??Z.id?.[2],W=$?.model??Y?.ls_model_name??"unknown",K=Nc(X,W,Z,$,Y);if(Q&&Array.isArray(J)&&J.length>0){let z=l3(J.flat()),{systemInstructions:G,filteredMessages:H}=N6(z);if(G)r6(K,k6,G);let B=Array.isArray(H)?H.length:0;r6(K,o1,B);let V=xZ(H);r6(K,I1,v8(V))}return K}function pM0(Z,J){let Q=[],$=Z.flat();for(let Y of $){let X=Y.message?.content;if(Array.isArray(X))for(let W of X){let K=W;if(K.type==="tool_use")Q.push(K)}}if(Q.length>0)r6(J,O1,v8(Q))}function iM0(Z,J){if(!Z)return;let{tokenUsage:Q,usage:$}=Z;if(Q)A6(J,M0,Q.promptTokens),A6(J,t0,Q.completionTokens),A6(J,i1,Q.totalTokens);else if($){A6(J,M0,$.input_tokens),A6(J,t0,$.output_tokens);let Y=Number($.input_tokens),X=Number($.output_tokens),W=(Number.isNaN(Y)?0:Y)+(Number.isNaN(X)?0:X);if(W>0)A6(J,i1,W);if($.cache_creation_input_tokens!==void 0)A6(J,pg,$.cache_creation_input_tokens);if($.cache_read_input_tokens!==void 0)A6(J,ig,$.cache_read_input_tokens)}}function Tc(Z,J){if(!Z)return;let Q={};if(Array.isArray(Z.generations)){let G=Z.generations.flat().map((H)=>{if(H.generationInfo?.finish_reason)return H.generationInfo.finish_reason;if(H.generation_info?.finish_reason)return H.generation_info.finish_reason;return null}).filter((H)=>typeof H==="string");if(G.length>0)r6(Q,z6,v8(G));if(pM0(Z.generations,Q),J){let H=Z.generations.flat().map((B)=>B.text??B.message?.content).filter((B)=>typeof B==="string");if(H.length>0)r6(Q,Q1,v8(H))}}iM0(Z.llmOutput,Q);let $=Z.llmOutput,X=Z.generations?.[0]?.[0]?.message,W=$?.model_name??$?.model??X?.response_metadata?.model_name;if(W)r6(Q,z1,W);let K=$?.id??X?.id;if(K)r6(Q,s6,K);let z=$?.stop_reason??X?.response_metadata?.finish_reason;if(z)r6(Q,mg,v8(z));return Q}var r6=(Z,J,Q)=>{if(Q!=null)Z[J]=Q},A6=(Z,J,Q)=>{let $=Number(Q);if(!Number.isNaN($))Z[J]=$};var pW=q(()=>{m0();h1();YU();g3();s9();lW()});function JJ(Z={}){let{recordInputs:J,recordOutputs:Q}=a9(Z),$=new Map,Y=(W)=>{let K=$.get(W);if(K?.isRecording())K.end(),$.delete(W)},X={lc_serializable:!1,lc_namespace:["langchain_core","callbacks","sentry"],lc_secrets:void 0,lc_attributes:void 0,lc_aliases:void 0,lc_serializable_keys:void 0,lc_id:["langchain_core","callbacks","sentry"],lc_kwargs:{},name:"SentryCallbackHandler",ignoreLLM:!1,ignoreChain:!1,ignoreAgent:!1,ignoreRetriever:!1,ignoreCustomEvent:!1,raiseError:!1,awaitHandlers:!0,handleLLMStart(W,K,z,G,H,B,V,F){let U=kU(B),w=Ac(W,K,J,U,V),D=w[l0],L=w[A1];h0({name:`${L} ${D}`,op:"gen_ai.chat",attributes:{...w,[g]:"gen_ai.chat"}},(C)=>{return $.set(z,C),C})},handleChatModelStart(W,K,z,G,H,B,V,F){let U=kU(B),w=Ic(W,K,J,U,V),D=w[l0],L=w[A1];h0({name:`${L} ${D}`,op:"gen_ai.chat",attributes:{...w,[g]:"gen_ai.chat"}},(C)=>{return $.set(z,C),C})},handleLLMEnd(W,K,z,G,H){let B=$.get(K);if(B?.isRecording()){let V=Tc(W,Q);if(V)B.setAttributes(V);Y(K)}},handleLLMError(W,K){let z=$.get(K);if(z?.isRecording())z.setStatus({code:a,message:"internal_error"}),Y(K);h(W,{mechanism:{handled:!1,type:`${V5}.llm_error_handler`}})},handleChainStart(W,K,z,G,H,B,V,F){let U=F||W.name||"unknown_chain",w={[f]:"auto.ai.langchain","langchain.chain.name":U};if(J)w["langchain.chain.inputs"]=JSON.stringify(K);h0({name:`chain ${U}`,op:"gen_ai.invoke_agent",attributes:{...w,[g]:"gen_ai.invoke_agent"}},(D)=>{return $.set(z,D),D})},handleChainEnd(W,K){let z=$.get(K);if(z?.isRecording()){if(Q)z.setAttributes({"langchain.chain.outputs":JSON.stringify(W)});Y(K)}},handleChainError(W,K){let z=$.get(K);if(z?.isRecording())z.setStatus({code:a,message:"internal_error"}),Y(K);h(W,{mechanism:{handled:!1,type:`${V5}.chain_error_handler`}})},handleToolStart(W,K,z,G){let H=W.name||"unknown_tool",B={[f]:V5,[W5]:H};if(J)B[yW]=K;h0({name:`execute_tool ${H}`,op:"gen_ai.execute_tool",attributes:{...B,[g]:"gen_ai.execute_tool"}},(V)=>{return $.set(z,V),V})},handleToolEnd(W,K){let z=$.get(K);if(z?.isRecording()){if(Q)z.setAttributes({[SW]:JSON.stringify(W)});Y(K)}},handleToolError(W,K){let z=$.get(K);if(z?.isRecording())z.setStatus({code:a,message:"internal_error"}),Y(K);h(W,{mechanism:{handled:!1,type:`${V5}.tool_error_handler`}})},copy(){return X},toJSON(){return{lc:1,type:"not_implemented",id:X.lc_id}},toJSONNotImplemented(){return{lc:1,type:"not_implemented",id:X.lc_id}}};return X}var Ec=q(()=>{k1();m0();w1();M6();h1();s9();lW();pW()});var iW="LangGraph",NU="auto.ai.langgraph";var AU=()=>{};function oM0(Z){if(!Z||Z.length===0)return null;let J=[];for(let Q of Z)if(Q&&typeof Q==="object"){let $=Q.tool_calls;if($&&Array.isArray($))J.push(...$)}return J.length>0?J:null}function nM0(Z){let J=Z,Q=0,$=0,Y=0;if(J.usage_metadata&&typeof J.usage_metadata==="object"){let X=J.usage_metadata;if(typeof X.input_tokens==="number")Q=X.input_tokens;if(typeof X.output_tokens==="number")$=X.output_tokens;if(typeof X.total_tokens==="number")Y=X.total_tokens;return{inputTokens:Q,outputTokens:$,totalTokens:Y}}if(J.response_metadata&&typeof J.response_metadata==="object"){let X=J.response_metadata;if(X.tokenUsage&&typeof X.tokenUsage==="object"){let W=X.tokenUsage;if(typeof W.promptTokens==="number")Q=W.promptTokens;if(typeof W.completionTokens==="number")$=W.completionTokens;if(typeof W.totalTokens==="number")Y=W.totalTokens}}return{inputTokens:Q,outputTokens:$,totalTokens:Y}}function aM0(Z,J){let Q=J;if(Q.response_metadata&&typeof Q.response_metadata==="object"){let $=Q.response_metadata;if($.model_name&&typeof $.model_name==="string")Z.setAttribute(z1,$.model_name);if($.finish_reason&&typeof $.finish_reason==="string")Z.setAttribute(z6,[$.finish_reason])}}function fc(Z){if(!Z.builder?.nodes?.tools?.runnable?.tools)return null;let J=Z.builder?.nodes?.tools?.runnable?.tools;if(!J||!Array.isArray(J)||J.length===0)return null;return J.map((Q)=>({name:Q.lc_kwargs?.name,description:Q.lc_kwargs?.description,schema:Q.lc_kwargs?.schema}))}function yc(Z,J,Q){let Y=Q?.messages;if(!Y||!Array.isArray(Y))return;let X=J?.length??0,W=Y.length>X?Y.slice(X):[];if(W.length===0)return;let K=oM0(W);if(K)Z.setAttribute(O1,JSON.stringify(K));let z=l3(W);Z.setAttribute(Q1,JSON.stringify(z));let G=0,H=0,B=0;for(let V of W){let F=nM0(V);G+=F.inputTokens,H+=F.outputTokens,B+=F.totalTokens,aM0(Z,V)}if(G>0)Z.setAttribute(M0,G);if(H>0)Z.setAttribute(t0,H);if(B>0)Z.setAttribute(i1,B)}var Sc=q(()=>{h1();pW()});function p3(Z,J){return new Proxy(Z,{apply(Q,$,Y){return r0({op:"gen_ai.create_agent",name:"create_agent",attributes:{[f]:NU,[g]:"gen_ai.create_agent",[A1]:"create_agent"}},(X)=>{try{let W=Reflect.apply(Q,$,Y),K=Y.length>0?Y[0]:{};if(K?.name&&typeof K.name==="string")X.setAttribute(oF,K.name),X.updateName(`create_agent ${K.name}`);let z=W.invoke;if(z&&typeof z==="function")W.invoke=sM0(z.bind(W),W,K,J);return W}catch(W){throw X.setStatus({code:a,message:"internal_error"}),h(W,{mechanism:{handled:!1,type:"auto.ai.langgraph.error"}}),W}})}})}function sM0(Z,J,Q,$){return new Proxy(Z,{apply(Y,X,W){return r0({op:"gen_ai.invoke_agent",name:"invoke_agent",attributes:{[f]:NU,[g]:EW,[A1]:"invoke_agent"}},async(K)=>{try{let z=Q?.name;if(z&&typeof z==="string")K.setAttribute(lg,z),K.setAttribute(oF,z),K.updateName(`invoke_agent ${z}`);let B=(W.length>1?W[1]:void 0)?.configurable?.thread_id;if(B&&typeof B==="string")K.setAttribute(b3,B);let V=fc(J);if(V)K.setAttribute(n9,JSON.stringify(V));let{recordInputs:F,recordOutputs:U}=$,w=W.length>0?W[0]?.messages??[]:[];if(w&&F){let L=l3(w),{systemInstructions:C,filteredMessages:R}=N6(L);if(C)K.setAttribute(k6,C);let T=xZ(R),_=Array.isArray(R)?R.length:0;K.setAttributes({[I1]:JSON.stringify(T),[o1]:_})}let D=await Reflect.apply(Y,X,W);if(U)yc(K,w??null,D);return D}catch(z){throw K.setStatus({code:a,message:"internal_error"}),h(z,{mechanism:{handled:!1,type:"auto.ai.langgraph.error"}}),z}})}})}function QJ(Z,J){return Z.compile=p3(Z.compile,a9(J)),Z}var _c=q(()=>{k1();m0();w1();M6();h1();g3();s9();pW();AU();Sc()});function i3(Z){if(Z===void 0)return;else if(Z>=400&&Z<500)return"warning";else if(Z>=500)return"error";else return}var hc=()=>{};function bc(){return typeof __SENTRY_BROWSER_BUNDLE__<"u"&&!!__SENTRY_BROWSER_BUNDLE__}var vc=()=>{};function xc(){return!bc()&&Object.prototype.toString.call(typeof process<"u"?process:0)==="[object process]"}var gc=q(()=>{vc()});function I9(){return typeof window<"u"&&(!xc()||rM0())}function rM0(){return d.process?.type==="renderer"}var dc=q(()=>{gc();J1()});function o3(Z,J,Q){let $=Z[J];if(typeof $!=="function")return;try{Z[J]=Q}catch{Object.defineProperty(Z,J,{value:Q,writable:!0,configurable:!0,enumerable:!0})}if(Z.default===$)try{Z.default=Q}catch{Object.defineProperty(Z,"default",{value:Q,writable:!0,configurable:!0,enumerable:!0})}}var cc=()=>{};function uc(Z,J=!1){return!(J||Z&&!Z.startsWith("/")&&!Z.match(/^[A-Z]:/)&&!Z.startsWith(".")&&!Z.match(/^[a-zA-Z]([a-zA-Z0-9.\-+])*:\/\//))&&Z!==void 0&&!Z.includes("node_modules/")}function lc(Z){let J=/^\s*[-]{4,}$/,Q=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/,$=/at (?:async )?(.+?) \(data:(.*?),/;return(Y)=>{let X=Y.match($);if(X)return{filename:`<data:${X[2]}>`,function:X[1]};let W=Y.match(Q);if(W){let K,z,G,H,B;if(W[1]){G=W[1];let w=G.lastIndexOf(".");if(G[w-1]===".")w--;if(w>0){K=G.slice(0,w),z=G.slice(w+1);let D=K.indexOf(".Module");if(D>0)G=G.slice(D+1),K=K.slice(0,D)}H=void 0}if(z)H=K,B=z;if(z==="<anonymous>")B=void 0,G=void 0;if(G===void 0)B=B||QV,G=H?`${H}.${B}`:B;let V=Sh(W[2]),F=W[5]==="native";if(!V&&W[5]&&!F)V=W[5];let U=V?tM0(V):void 0;return{filename:U??V,module:U&&Z?.(U),function:G,lineno:mc(W[3]),colno:mc(W[4]),in_app:uc(V||"",F)}}if(Y.match(J))return{filename:Y};return}}function IU(Z){return[90,lc(Z)]}function mc(Z){return parseInt(Z||"",10)||void 0}function tM0(Z){try{return decodeURI(Z)}catch{return}}var pc=q(()=>{v7()});class I6{constructor(Z){this._maxSize=Z,this._cache=new Map}get size(){return this._cache.size}get(Z){let J=this._cache.get(Z);if(J===void 0)return;return this._cache.delete(Z),this._cache.set(Z,J),J}set(Z,J){if(this._cache.size>=this._maxSize){let Q=this._cache.keys().next().value;this._cache.delete(Q)}this._cache.set(Z,J)}remove(Z){let J=this._cache.get(Z);if(J)this._cache.delete(Z);return J}clear(){this._cache.clear()}keys(){return Array.from(this._cache.keys())}values(){let Z=[];return this._cache.forEach((J)=>Z.push(J)),Z}}var ic=()=>{};var N=q(()=>{H4();w1();M6();L8();fV();LV();nX();m0();k1();B0();HV();j4();U4();Ov();Lv();$W();D1();Cv();Pv();A4();xQ();mX();Rv();j1();P4();kv();UF();Av();Iv();Tv();hv();GW();xv();dv();iv();rv();tv();Qx();Yx();Kx();Hx();Fx();Ux();wx();jx();Ox();Lx();Px();Rx();Sg();_g();w3();bg();vg();xg();_d();wU();Zc();gW();Vc();DU();Mc();mW();Ec();lW();_c();AU();hc();J1();S0();dc();Z0();O6();R1();PF();VW();cc();v7();pc();w9();cQ();C8();C4();VF();ic();j8();TX();vV();F8()});var n3=j((oc)=>{Object.defineProperty(oc,"__esModule",{value:!0});oc.isTracingSuppressed=oc.unsuppressTracing=oc.suppressTracing=void 0;var eM0=I(),TU=(0,eM0.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function ZR0(Z){return Z.setValue(TU,!0)}oc.suppressTracing=ZR0;function JR0(Z){return Z.deleteValue(TU)}oc.unsuppressTracing=JR0;function QR0(Z){return Z.getValue(TU)===!0}oc.isTracingSuppressed=QR0});var EU=j((ac)=>{Object.defineProperty(ac,"__esModule",{value:!0});ac.BAGGAGE_MAX_TOTAL_LENGTH=ac.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=ac.BAGGAGE_MAX_NAME_VALUE_PAIRS=ac.BAGGAGE_HEADER=ac.BAGGAGE_ITEMS_SEPARATOR=ac.BAGGAGE_PROPERTIES_SEPARATOR=ac.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;ac.BAGGAGE_KEY_PAIR_SEPARATOR="=";ac.BAGGAGE_PROPERTIES_SEPARATOR=";";ac.BAGGAGE_ITEMS_SEPARATOR=",";ac.BAGGAGE_HEADER="baggage";ac.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;ac.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;ac.BAGGAGE_MAX_TOTAL_LENGTH=8192});var fU=j((tc)=>{Object.defineProperty(tc,"__esModule",{value:!0});tc.parseKeyPairsIntoRecord=tc.parsePairKeyValue=tc.getKeyPairs=tc.serializeKeyPairs=void 0;var BR0=I(),$J=EU();function VR0(Z){return Z.reduce((J,Q)=>{let $=`${J}${J!==""?$J.BAGGAGE_ITEMS_SEPARATOR:""}${Q}`;return $.length>$J.BAGGAGE_MAX_TOTAL_LENGTH?J:$},"")}tc.serializeKeyPairs=VR0;function FR0(Z){return Z.getAllEntries().map(([J,Q])=>{let $=`${encodeURIComponent(J)}=${encodeURIComponent(Q.value)}`;if(Q.metadata!==void 0)$+=$J.BAGGAGE_PROPERTIES_SEPARATOR+Q.metadata.toString();return $})}tc.getKeyPairs=FR0;function rc(Z){if(!Z)return;let J=Z.indexOf($J.BAGGAGE_PROPERTIES_SEPARATOR),Q=J===-1?Z:Z.substring(0,J),$=Q.indexOf($J.BAGGAGE_KEY_PAIR_SEPARATOR);if($<=0)return;let Y=Q.substring(0,$).trim(),X=Q.substring($+1).trim();if(!Y||!X)return;let W,K;try{W=decodeURIComponent(Y),K=decodeURIComponent(X)}catch{return}let z;if(J!==-1&&J<Z.length-1){let G=Z.substring(J+1);z=(0,BR0.baggageEntryMetadataFromString)(G)}return{key:W,value:K,metadata:z}}tc.parsePairKeyValue=rc;function UR0(Z){let J={};if(typeof Z==="string"&&Z.length>0)Z.split($J.BAGGAGE_ITEMS_SEPARATOR).forEach((Q)=>{let $=rc(Q);if($!==void 0&&$.value.length>0)J[$.key]=$.value});return J}tc.parseKeyPairsIntoRecord=UR0});var $m=j((Jm)=>{Object.defineProperty(Jm,"__esModule",{value:!0});Jm.W3CBaggagePropagator=void 0;var yU=I(),DR0=n3(),F5=EU(),SU=fU();class Zm{inject(Z,J,Q){let $=yU.propagation.getBaggage(Z);if(!$||(0,DR0.isTracingSuppressed)(Z))return;let Y=(0,SU.getKeyPairs)($).filter((W)=>{return W.length<=F5.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS}).slice(0,F5.BAGGAGE_MAX_NAME_VALUE_PAIRS),X=(0,SU.serializeKeyPairs)(Y);if(X.length>0)Q.set(J,F5.BAGGAGE_HEADER,X)}extract(Z,J,Q){let $=Q.get(J,F5.BAGGAGE_HEADER),Y=Array.isArray($)?$.join(F5.BAGGAGE_ITEMS_SEPARATOR):$;if(!Y)return Z;let X={};if(Y.length===0)return Z;if(Y.split(F5.BAGGAGE_ITEMS_SEPARATOR).forEach((K)=>{let z=(0,SU.parsePairKeyValue)(K);if(z){let G={value:z.value};if(z.metadata)G.metadata=z.metadata;X[z.key]=G}}),Object.entries(X).length===0)return Z;return yU.propagation.setBaggage(Z,yU.propagation.createBaggage(X))}fields(){return[F5.BAGGAGE_HEADER]}}Jm.W3CBaggagePropagator=Zm});var Km=j((Xm)=>{Object.defineProperty(Xm,"__esModule",{value:!0});Xm.AnchoredClock=void 0;class Ym{_monotonicClock;_epochMillis;_performanceMillis;constructor(Z,J){this._monotonicClock=J,this._epochMillis=Z.now(),this._performanceMillis=J.now()}now(){let Z=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+Z}}Xm.AnchoredClock=Ym});var Um=j((Vm)=>{Object.defineProperty(Vm,"__esModule",{value:!0});Vm.isAttributeValue=Vm.isAttributeKey=Vm.sanitizeAttributes=void 0;var zm=I();function OR0(Z){let J={};if(typeof Z!=="object"||Z==null)return J;for(let Q in Z){if(!Object.prototype.hasOwnProperty.call(Z,Q))continue;if(!Gm(Q)){zm.diag.warn(`Invalid attribute key: ${Q}`);continue}let $=Z[Q];if(!Hm($)){zm.diag.warn(`Invalid attribute value set for key: ${Q}`);continue}if(Array.isArray($))J[Q]=$.slice();else J[Q]=$}return J}Vm.sanitizeAttributes=OR0;function Gm(Z){return typeof Z==="string"&&Z!==""}Vm.isAttributeKey=Gm;function Hm(Z){if(Z==null)return!0;if(Array.isArray(Z))return LR0(Z);return Bm(typeof Z)}Vm.isAttributeValue=Hm;function LR0(Z){let J;for(let Q of Z){if(Q==null)continue;let $=typeof Q;if($===J)continue;if(!J){if(Bm($)){J=$;continue}return!1}return!1}return!0}function Bm(Z){switch(Z){case"number":case"boolean":case"string":return!0}return!1}});var _U=j((qm)=>{Object.defineProperty(qm,"__esModule",{value:!0});qm.loggingErrorHandler=void 0;var MR0=I();function RR0(){return(Z)=>{MR0.diag.error(kR0(Z))}}qm.loggingErrorHandler=RR0;function kR0(Z){if(typeof Z==="string")return Z;else return JSON.stringify(NR0(Z))}function NR0(Z){let J={},Q=Z;while(Q!==null)Object.getOwnPropertyNames(Q).forEach(($)=>{if(J[$])return;let Y=Q[$];if(Y)J[$]=String(Y)}),Q=Object.getPrototypeOf(Q);return J}});var Lm=j((Dm)=>{Object.defineProperty(Dm,"__esModule",{value:!0});Dm.globalErrorHandler=Dm.setGlobalErrorHandler=void 0;var AR0=_U(),jm=(0,AR0.loggingErrorHandler)();function IR0(Z){jm=Z}Dm.setGlobalErrorHandler=IR0;function TR0(Z){try{jm(Z)}catch{}}Dm.globalErrorHandler=TR0});var Nm=j((Rm)=>{Object.defineProperty(Rm,"__esModule",{value:!0});Rm.getStringListFromEnv=Rm.getBooleanFromEnv=Rm.getStringFromEnv=Rm.getNumberFromEnv=void 0;var Cm=I(),Pm=E("util");function fR0(Z){let J=process.env[Z];if(J==null||J.trim()==="")return;let Q=Number(J);if(isNaN(Q)){Cm.diag.warn(`Unknown value ${(0,Pm.inspect)(J)} for ${Z}, expected a number, using defaults`);return}return Q}Rm.getNumberFromEnv=fR0;function Mm(Z){let J=process.env[Z];if(J==null||J.trim()==="")return;return J}Rm.getStringFromEnv=Mm;function yR0(Z){let J=process.env[Z]?.trim().toLowerCase();if(J==null||J==="")return!1;if(J==="true")return!0;else if(J==="false")return!1;else return Cm.diag.warn(`Unknown value ${(0,Pm.inspect)(J)} for ${Z}, expected 'true' or 'false', falling back to 'false' (default)`),!1}Rm.getBooleanFromEnv=yR0;function SR0(Z){return Mm(Z)?.split(",").map((J)=>J.trim()).filter((J)=>J!=="")}Rm.getStringListFromEnv=SR0});var Tm=j((Am)=>{Object.defineProperty(Am,"__esModule",{value:!0});Am._globalThis=void 0;Am._globalThis=globalThis});var ym=j((Em)=>{Object.defineProperty(Em,"__esModule",{value:!0});Em.VERSION=void 0;Em.VERSION="2.6.1"});var hm=j((Sm)=>{Object.defineProperty(Sm,"__esModule",{value:!0});Sm.ATTR_PROCESS_RUNTIME_NAME=void 0;Sm.ATTR_PROCESS_RUNTIME_NAME="process.runtime.name"});var xm=j((bm)=>{Object.defineProperty(bm,"__esModule",{value:!0});bm.SDK_INFO=void 0;var vR0=ym(),oW=Y0(),xR0=hm();bm.SDK_INFO={[oW.ATTR_TELEMETRY_SDK_NAME]:"opentelemetry",[xR0.ATTR_PROCESS_RUNTIME_NAME]:"node",[oW.ATTR_TELEMETRY_SDK_LANGUAGE]:oW.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS,[oW.ATTR_TELEMETRY_SDK_VERSION]:vR0.VERSION}});var dm=j((mZ)=>{Object.defineProperty(mZ,"__esModule",{value:!0});mZ.otperformance=mZ.SDK_INFO=mZ._globalThis=mZ.getStringListFromEnv=mZ.getNumberFromEnv=mZ.getBooleanFromEnv=mZ.getStringFromEnv=void 0;var nW=Nm();Object.defineProperty(mZ,"getStringFromEnv",{enumerable:!0,get:function(){return nW.getStringFromEnv}});Object.defineProperty(mZ,"getBooleanFromEnv",{enumerable:!0,get:function(){return nW.getBooleanFromEnv}});Object.defineProperty(mZ,"getNumberFromEnv",{enumerable:!0,get:function(){return nW.getNumberFromEnv}});Object.defineProperty(mZ,"getStringListFromEnv",{enumerable:!0,get:function(){return nW.getStringListFromEnv}});var gR0=Tm();Object.defineProperty(mZ,"_globalThis",{enumerable:!0,get:function(){return gR0._globalThis}});var dR0=xm();Object.defineProperty(mZ,"SDK_INFO",{enumerable:!0,get:function(){return dR0.SDK_INFO}});mZ.otperformance=performance});var hU=j((x8)=>{Object.defineProperty(x8,"__esModule",{value:!0});x8.getStringListFromEnv=x8.getNumberFromEnv=x8.getStringFromEnv=x8.getBooleanFromEnv=x8.otperformance=x8._globalThis=x8.SDK_INFO=void 0;var U5=dm();Object.defineProperty(x8,"SDK_INFO",{enumerable:!0,get:function(){return U5.SDK_INFO}});Object.defineProperty(x8,"_globalThis",{enumerable:!0,get:function(){return U5._globalThis}});Object.defineProperty(x8,"otperformance",{enumerable:!0,get:function(){return U5.otperformance}});Object.defineProperty(x8,"getBooleanFromEnv",{enumerable:!0,get:function(){return U5.getBooleanFromEnv}});Object.defineProperty(x8,"getStringFromEnv",{enumerable:!0,get:function(){return U5.getStringFromEnv}});Object.defineProperty(x8,"getNumberFromEnv",{enumerable:!0,get:function(){return U5.getNumberFromEnv}});Object.defineProperty(x8,"getStringListFromEnv",{enumerable:!0,get:function(){return U5.getStringListFromEnv}})});var im=j((lm)=>{Object.defineProperty(lm,"__esModule",{value:!0});lm.addHrTimes=lm.isTimeInput=lm.isTimeInputHrTime=lm.hrTimeToMicroseconds=lm.hrTimeToMilliseconds=lm.hrTimeToNanoseconds=lm.hrTimeToTimeStamp=lm.hrTimeDuration=lm.timeInputToHrTime=lm.hrTime=lm.getTimeOrigin=lm.millisToHrTime=void 0;var aW=hU(),cm=9,mR0=6,uR0=Math.pow(10,mR0),sW=Math.pow(10,cm);function a3(Z){let J=Z/1000,Q=Math.trunc(J),$=Math.round(Z%1000*uR0);return[Q,$]}lm.millisToHrTime=a3;function lR0(){return aW.otperformance.timeOrigin}lm.getTimeOrigin=lR0;function mm(Z){let J=a3(aW.otperformance.timeOrigin),Q=a3(typeof Z==="number"?Z:aW.otperformance.now());return um(J,Q)}lm.hrTime=mm;function pR0(Z){if(bU(Z))return Z;else if(typeof Z==="number")if(Z<aW.otperformance.timeOrigin)return mm(Z);else return a3(Z);else if(Z instanceof Date)return a3(Z.getTime());else throw TypeError("Invalid input type")}lm.timeInputToHrTime=pR0;function iR0(Z,J){let Q=J[0]-Z[0],$=J[1]-Z[1];if($<0)Q-=1,$+=sW;return[Q,$]}lm.hrTimeDuration=iR0;function oR0(Z){let J=cm,Q=`${"0".repeat(J)}${Z[1]}Z`,$=Q.substring(Q.length-J-1);return new Date(Z[0]*1000).toISOString().replace("000Z",$)}lm.hrTimeToTimeStamp=oR0;function nR0(Z){return Z[0]*sW+Z[1]}lm.hrTimeToNanoseconds=nR0;function aR0(Z){return Z[0]*1000+Z[1]/1e6}lm.hrTimeToMilliseconds=aR0;function sR0(Z){return Z[0]*1e6+Z[1]/1000}lm.hrTimeToMicroseconds=sR0;function bU(Z){return Array.isArray(Z)&&Z.length===2&&typeof Z[0]==="number"&&typeof Z[1]==="number"}lm.isTimeInputHrTime=bU;function rR0(Z){return bU(Z)||typeof Z==="number"||Z instanceof Date}lm.isTimeInput=rR0;function um(Z,J){let Q=[Z[0]+J[0],Z[1]+J[1]];if(Q[1]>=sW)Q[1]-=sW,Q[0]+=1;return Q}lm.addHrTimes=um});var am=j((om)=>{Object.defineProperty(om,"__esModule",{value:!0});om.unrefTimer=void 0;function Gk0(Z){if(typeof Z!=="number")Z.unref()}om.unrefTimer=Gk0});var rm=j((sm)=>{Object.defineProperty(sm,"__esModule",{value:!0});sm.ExportResultCode=void 0;var Hk0;(function(Z){Z[Z.SUCCESS=0]="SUCCESS",Z[Z.FAILED=1]="FAILED"})(Hk0=sm.ExportResultCode||(sm.ExportResultCode={}))});var Qu=j((Zu)=>{Object.defineProperty(Zu,"__esModule",{value:!0});Zu.CompositePropagator=void 0;var tm=I();class em{_propagators;_fields;constructor(Z={}){this._propagators=Z.propagators??[],this._fields=Array.from(new Set(this._propagators.map((J)=>typeof J.fields==="function"?J.fields():[]).reduce((J,Q)=>J.concat(Q),[])))}inject(Z,J,Q){for(let $ of this._propagators)try{$.inject(Z,J,Q)}catch(Y){tm.diag.warn(`Failed to inject with ${$.constructor.name}. Err: ${Y.message}`)}}extract(Z,J,Q){return this._propagators.reduce(($,Y)=>{try{return Y.extract($,J,Q)}catch(X){tm.diag.warn(`Failed to extract with ${Y.constructor.name}. Err: ${X.message}`)}return $},Z)}fields(){return this._fields.slice()}}Zu.CompositePropagator=em});var Xu=j(($u)=>{Object.defineProperty($u,"__esModule",{value:!0});$u.validateValue=$u.validateKey=void 0;var xU="[_0-9a-z-*/]",Bk0=`[a-z]${xU}{0,255}`,Vk0=`[a-z0-9]${xU}{0,240}@[a-z]${xU}{0,13}`,Fk0=new RegExp(`^(?:${Bk0}|${Vk0})$`),Uk0=/^[ -~]{0,255}[!-~]$/,qk0=/,|=/;function wk0(Z){return Fk0.test(Z)}$u.validateKey=wk0;function jk0(Z){return Uk0.test(Z)&&!qk0.test(Z)}$u.validateValue=jk0});var dU=j((Hu)=>{Object.defineProperty(Hu,"__esModule",{value:!0});Hu.TraceState=void 0;var Wu=Xu(),Ku=32,Ok0=512,zu=",",Gu="=";class gU{_internalState=new Map;constructor(Z){if(Z)this._parse(Z)}set(Z,J){let Q=this._clone();if(Q._internalState.has(Z))Q._internalState.delete(Z);return Q._internalState.set(Z,J),Q}unset(Z){let J=this._clone();return J._internalState.delete(Z),J}get(Z){return this._internalState.get(Z)}serialize(){return this._keys().reduce((Z,J)=>{return Z.push(J+Gu+this.get(J)),Z},[]).join(zu)}_parse(Z){if(Z.length>Ok0)return;if(this._internalState=Z.split(zu).reverse().reduce((J,Q)=>{let $=Q.trim(),Y=$.indexOf(Gu);if(Y!==-1){let X=$.slice(0,Y),W=$.slice(Y+1,Q.length);if((0,Wu.validateKey)(X)&&(0,Wu.validateValue)(W))J.set(X,W)}return J},new Map),this._internalState.size>Ku)this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,Ku))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let Z=new gU;return Z._internalState=new Map(this._internalState),Z}}Hu.TraceState=gU});var wu=j((Uu)=>{Object.defineProperty(Uu,"__esModule",{value:!0});Uu.W3CTraceContextPropagator=Uu.parseTraceParent=Uu.TRACE_STATE_HEADER=Uu.TRACE_PARENT_HEADER=void 0;var rW=I(),Lk0=n3(),Ck0=dU();Uu.TRACE_PARENT_HEADER="traceparent";Uu.TRACE_STATE_HEADER="tracestate";var Pk0="00",Mk0="(?!ff)[\\da-f]{2}",Rk0="(?![0]{32})[\\da-f]{32}",kk0="(?![0]{16})[\\da-f]{16}",Nk0="[\\da-f]{2}",Ak0=new RegExp(`^\\s?(${Mk0})-(${Rk0})-(${kk0})-(${Nk0})(-.*)?\\s?$`);function Vu(Z){let J=Ak0.exec(Z);if(!J)return null;if(J[1]==="00"&&J[5])return null;return{traceId:J[2],spanId:J[3],traceFlags:parseInt(J[4],16)}}Uu.parseTraceParent=Vu;class Fu{inject(Z,J,Q){let $=rW.trace.getSpanContext(Z);if(!$||(0,Lk0.isTracingSuppressed)(Z)||!(0,rW.isSpanContextValid)($))return;let Y=`${Pk0}-${$.traceId}-${$.spanId}-0${Number($.traceFlags||rW.TraceFlags.NONE).toString(16)}`;if(Q.set(J,Uu.TRACE_PARENT_HEADER,Y),$.traceState)Q.set(J,Uu.TRACE_STATE_HEADER,$.traceState.serialize())}extract(Z,J,Q){let $=Q.get(J,Uu.TRACE_PARENT_HEADER);if(!$)return Z;let Y=Array.isArray($)?$[0]:$;if(typeof Y!=="string")return Z;let X=Vu(Y);if(!X)return Z;X.isRemote=!0;let W=Q.get(J,Uu.TRACE_STATE_HEADER);if(W){let K=Array.isArray(W)?W.join(","):W;X.traceState=new Ck0.TraceState(typeof K==="string"?K:void 0)}return rW.trace.setSpanContext(Z,X)}fields(){return[Uu.TRACE_PARENT_HEADER,Uu.TRACE_STATE_HEADER]}}Uu.W3CTraceContextPropagator=Fu});var Lu=j((Du)=>{Object.defineProperty(Du,"__esModule",{value:!0});Du.getRPCMetadata=Du.deleteRPCMetadata=Du.setRPCMetadata=Du.RPCType=void 0;var Tk0=I(),cU=(0,Tk0.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),Ek0;(function(Z){Z.HTTP="http"})(Ek0=Du.RPCType||(Du.RPCType={}));function fk0(Z,J){return Z.setValue(cU,J)}Du.setRPCMetadata=fk0;function yk0(Z){return Z.deleteValue(cU)}Du.deleteRPCMetadata=yk0;function Sk0(Z){return Z.getValue(cU)}Du.getRPCMetadata=Sk0});var Au=j((ku)=>{Object.defineProperty(ku,"__esModule",{value:!0});ku.isPlainObject=void 0;var bk0="[object Object]",vk0="[object Null]",xk0="[object Undefined]",gk0=Function.prototype,Cu=gk0.toString,dk0=Cu.call(Object),ck0=Object.getPrototypeOf,Pu=Object.prototype,Mu=Pu.hasOwnProperty,q5=Symbol?Symbol.toStringTag:void 0,Ru=Pu.toString;function mk0(Z){if(!uk0(Z)||lk0(Z)!==bk0)return!1;let J=ck0(Z);if(J===null)return!0;let Q=Mu.call(J,"constructor")&&J.constructor;return typeof Q=="function"&&Q instanceof Q&&Cu.call(Q)===dk0}ku.isPlainObject=mk0;function uk0(Z){return Z!=null&&typeof Z=="object"}function lk0(Z){if(Z==null)return Z===void 0?xk0:vk0;return q5&&q5 in Object(Z)?pk0(Z):ik0(Z)}function pk0(Z){let J=Mu.call(Z,q5),Q=Z[q5],$=!1;try{Z[q5]=void 0,$=!0}catch{}let Y=Ru.call(Z);if($)if(J)Z[q5]=Q;else delete Z[q5];return Y}function ik0(Z){return Ru.call(Z)}});var _u=j((yu)=>{Object.defineProperty(yu,"__esModule",{value:!0});yu.merge=void 0;var Iu=Au(),ok0=20;function nk0(...Z){let J=Z.shift(),Q=new WeakMap;while(Z.length>0)J=Eu(J,Z.shift(),0,Q);return J}yu.merge=nk0;function mU(Z){if(JK(Z))return Z.slice();return Z}function Eu(Z,J,Q=0,$){let Y;if(Q>ok0)return;if(Q++,ZK(Z)||ZK(J)||fu(J))Y=mU(J);else if(JK(Z)){if(Y=Z.slice(),JK(J))for(let X=0,W=J.length;X<W;X++)Y.push(mU(J[X]));else if(s3(J)){let X=Object.keys(J);for(let W=0,K=X.length;W<K;W++){let z=X[W];Y[z]=mU(J[z])}}}else if(s3(Z))if(s3(J)){if(!ak0(Z,J))return J;Y=Object.assign({},Z);let X=Object.keys(J);for(let W=0,K=X.length;W<K;W++){let z=X[W],G=J[z];if(ZK(G))if(typeof G>"u")delete Y[z];else Y[z]=G;else{let H=Y[z],B=G;if(Tu(Z,z,$)||Tu(J,z,$))delete Y[z];else{if(s3(H)&&s3(B)){let V=$.get(H)||[],F=$.get(B)||[];V.push({obj:Z,key:z}),F.push({obj:J,key:z}),$.set(H,V),$.set(B,F)}Y[z]=Eu(Y[z],G,Q,$)}}}}else Y=J;return Y}function Tu(Z,J,Q){let $=Q.get(Z[J])||[];for(let Y=0,X=$.length;Y<X;Y++){let W=$[Y];if(W.key===J&&W.obj===Z)return!0}return!1}function JK(Z){return Array.isArray(Z)}function fu(Z){return typeof Z==="function"}function s3(Z){return!ZK(Z)&&!JK(Z)&&!fu(Z)&&typeof Z==="object"}function ZK(Z){return typeof Z==="string"||typeof Z==="number"||typeof Z==="boolean"||typeof Z>"u"||Z instanceof Date||Z instanceof RegExp||Z===null}function ak0(Z,J){if(!(0,Iu.isPlainObject)(Z)||!(0,Iu.isPlainObject)(J))return!1;return!0}});var vu=j((hu)=>{Object.defineProperty(hu,"__esModule",{value:!0});hu.callWithTimeout=hu.TimeoutError=void 0;class QK extends Error{constructor(Z){super(Z);Object.setPrototypeOf(this,QK.prototype)}}hu.TimeoutError=QK;function sk0(Z,J){let Q,$=new Promise(function(X,W){Q=setTimeout(function(){W(new QK("Operation timed out."))},J)});return Promise.race([Z,$]).then((Y)=>{return clearTimeout(Q),Y},(Y)=>{throw clearTimeout(Q),Y})}hu.callWithTimeout=sk0});var cu=j((gu)=>{Object.defineProperty(gu,"__esModule",{value:!0});gu.isUrlIgnored=gu.urlMatches=void 0;function xu(Z,J){if(typeof J==="string")return Z===J;else return!!Z.match(J)}gu.urlMatches=xu;function tk0(Z,J){if(!J)return!1;for(let Q of J)if(xu(Z,Q))return!0;return!1}gu.isUrlIgnored=tk0});var pu=j((uu)=>{Object.defineProperty(uu,"__esModule",{value:!0});uu.Deferred=void 0;class mu{_promise;_resolve;_reject;constructor(){this._promise=new Promise((Z,J)=>{this._resolve=Z,this._reject=J})}get promise(){return this._promise}resolve(Z){this._resolve(Z)}reject(Z){this._reject(Z)}}uu.Deferred=mu});var au=j((ou)=>{Object.defineProperty(ou,"__esModule",{value:!0});ou.BindOnceFuture=void 0;var ZN0=pu();class iu{_isCalled=!1;_deferred=new ZN0.Deferred;_callback;_that;constructor(Z,J){this._callback=Z,this._that=J}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...Z){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...Z)).then((J)=>this._deferred.resolve(J),(J)=>this._deferred.reject(J))}catch(J){this._deferred.reject(J)}}return this._deferred.promise}}ou.BindOnceFuture=iu});var eu=j((ru)=>{Object.defineProperty(ru,"__esModule",{value:!0});ru.diagLogLevelFromString=void 0;var g8=I(),su={ALL:g8.DiagLogLevel.ALL,VERBOSE:g8.DiagLogLevel.VERBOSE,DEBUG:g8.DiagLogLevel.DEBUG,INFO:g8.DiagLogLevel.INFO,WARN:g8.DiagLogLevel.WARN,ERROR:g8.DiagLogLevel.ERROR,NONE:g8.DiagLogLevel.NONE};function JN0(Z){if(Z==null)return;let J=su[Z.toUpperCase()];if(J==null)return g8.diag.warn(`Unknown log level "${Z}", expected one of ${Object.keys(su)}, using default`),g8.DiagLogLevel.INFO;return J}ru.diagLogLevelFromString=JN0});var $l=j((Jl)=>{Object.defineProperty(Jl,"__esModule",{value:!0});Jl._export=void 0;var Zl=I(),QN0=n3();function $N0(Z,J){return new Promise((Q)=>{Zl.context.with((0,QN0.suppressTracing)(Zl.context.active()),()=>{Z.export(J,Q)})})}Jl._export=$N0});var R0=j((o)=>{Object.defineProperty(o,"__esModule",{value:!0});o.internal=o.diagLogLevelFromString=o.BindOnceFuture=o.urlMatches=o.isUrlIgnored=o.callWithTimeout=o.TimeoutError=o.merge=o.TraceState=o.unsuppressTracing=o.suppressTracing=o.isTracingSuppressed=o.setRPCMetadata=o.getRPCMetadata=o.deleteRPCMetadata=o.RPCType=o.parseTraceParent=o.W3CTraceContextPropagator=o.TRACE_STATE_HEADER=o.TRACE_PARENT_HEADER=o.CompositePropagator=o.otperformance=o.getStringListFromEnv=o.getNumberFromEnv=o.getBooleanFromEnv=o.getStringFromEnv=o._globalThis=o.SDK_INFO=o.parseKeyPairsIntoRecord=o.ExportResultCode=o.unrefTimer=o.timeInputToHrTime=o.millisToHrTime=o.isTimeInputHrTime=o.isTimeInput=o.hrTimeToTimeStamp=o.hrTimeToNanoseconds=o.hrTimeToMilliseconds=o.hrTimeToMicroseconds=o.hrTimeDuration=o.hrTime=o.getTimeOrigin=o.addHrTimes=o.loggingErrorHandler=o.setGlobalErrorHandler=o.globalErrorHandler=o.sanitizeAttributes=o.isAttributeValue=o.AnchoredClock=o.W3CBaggagePropagator=void 0;var YN0=$m();Object.defineProperty(o,"W3CBaggagePropagator",{enumerable:!0,get:function(){return YN0.W3CBaggagePropagator}});var XN0=Km();Object.defineProperty(o,"AnchoredClock",{enumerable:!0,get:function(){return XN0.AnchoredClock}});var Yl=Um();Object.defineProperty(o,"isAttributeValue",{enumerable:!0,get:function(){return Yl.isAttributeValue}});Object.defineProperty(o,"sanitizeAttributes",{enumerable:!0,get:function(){return Yl.sanitizeAttributes}});var Xl=Lm();Object.defineProperty(o,"globalErrorHandler",{enumerable:!0,get:function(){return Xl.globalErrorHandler}});Object.defineProperty(o,"setGlobalErrorHandler",{enumerable:!0,get:function(){return Xl.setGlobalErrorHandler}});var WN0=_U();Object.defineProperty(o,"loggingErrorHandler",{enumerable:!0,get:function(){return WN0.loggingErrorHandler}});var t6=im();Object.defineProperty(o,"addHrTimes",{enumerable:!0,get:function(){return t6.addHrTimes}});Object.defineProperty(o,"getTimeOrigin",{enumerable:!0,get:function(){return t6.getTimeOrigin}});Object.defineProperty(o,"hrTime",{enumerable:!0,get:function(){return t6.hrTime}});Object.defineProperty(o,"hrTimeDuration",{enumerable:!0,get:function(){return t6.hrTimeDuration}});Object.defineProperty(o,"hrTimeToMicroseconds",{enumerable:!0,get:function(){return t6.hrTimeToMicroseconds}});Object.defineProperty(o,"hrTimeToMilliseconds",{enumerable:!0,get:function(){return t6.hrTimeToMilliseconds}});Object.defineProperty(o,"hrTimeToNanoseconds",{enumerable:!0,get:function(){return t6.hrTimeToNanoseconds}});Object.defineProperty(o,"hrTimeToTimeStamp",{enumerable:!0,get:function(){return t6.hrTimeToTimeStamp}});Object.defineProperty(o,"isTimeInput",{enumerable:!0,get:function(){return t6.isTimeInput}});Object.defineProperty(o,"isTimeInputHrTime",{enumerable:!0,get:function(){return t6.isTimeInputHrTime}});Object.defineProperty(o,"millisToHrTime",{enumerable:!0,get:function(){return t6.millisToHrTime}});Object.defineProperty(o,"timeInputToHrTime",{enumerable:!0,get:function(){return t6.timeInputToHrTime}});var KN0=am();Object.defineProperty(o,"unrefTimer",{enumerable:!0,get:function(){return KN0.unrefTimer}});var zN0=rm();Object.defineProperty(o,"ExportResultCode",{enumerable:!0,get:function(){return zN0.ExportResultCode}});var GN0=fU();Object.defineProperty(o,"parseKeyPairsIntoRecord",{enumerable:!0,get:function(){return GN0.parseKeyPairsIntoRecord}});var w5=hU();Object.defineProperty(o,"SDK_INFO",{enumerable:!0,get:function(){return w5.SDK_INFO}});Object.defineProperty(o,"_globalThis",{enumerable:!0,get:function(){return w5._globalThis}});Object.defineProperty(o,"getStringFromEnv",{enumerable:!0,get:function(){return w5.getStringFromEnv}});Object.defineProperty(o,"getBooleanFromEnv",{enumerable:!0,get:function(){return w5.getBooleanFromEnv}});Object.defineProperty(o,"getNumberFromEnv",{enumerable:!0,get:function(){return w5.getNumberFromEnv}});Object.defineProperty(o,"getStringListFromEnv",{enumerable:!0,get:function(){return w5.getStringListFromEnv}});Object.defineProperty(o,"otperformance",{enumerable:!0,get:function(){return w5.otperformance}});var HN0=Qu();Object.defineProperty(o,"CompositePropagator",{enumerable:!0,get:function(){return HN0.CompositePropagator}});var $K=wu();Object.defineProperty(o,"TRACE_PARENT_HEADER",{enumerable:!0,get:function(){return $K.TRACE_PARENT_HEADER}});Object.defineProperty(o,"TRACE_STATE_HEADER",{enumerable:!0,get:function(){return $K.TRACE_STATE_HEADER}});Object.defineProperty(o,"W3CTraceContextPropagator",{enumerable:!0,get:function(){return $K.W3CTraceContextPropagator}});Object.defineProperty(o,"parseTraceParent",{enumerable:!0,get:function(){return $K.parseTraceParent}});var YK=Lu();Object.defineProperty(o,"RPCType",{enumerable:!0,get:function(){return YK.RPCType}});Object.defineProperty(o,"deleteRPCMetadata",{enumerable:!0,get:function(){return YK.deleteRPCMetadata}});Object.defineProperty(o,"getRPCMetadata",{enumerable:!0,get:function(){return YK.getRPCMetadata}});Object.defineProperty(o,"setRPCMetadata",{enumerable:!0,get:function(){return YK.setRPCMetadata}});var uU=n3();Object.defineProperty(o,"isTracingSuppressed",{enumerable:!0,get:function(){return uU.isTracingSuppressed}});Object.defineProperty(o,"suppressTracing",{enumerable:!0,get:function(){return uU.suppressTracing}});Object.defineProperty(o,"unsuppressTracing",{enumerable:!0,get:function(){return uU.unsuppressTracing}});var BN0=dU();Object.defineProperty(o,"TraceState",{enumerable:!0,get:function(){return BN0.TraceState}});var VN0=_u();Object.defineProperty(o,"merge",{enumerable:!0,get:function(){return VN0.merge}});var Wl=vu();Object.defineProperty(o,"TimeoutError",{enumerable:!0,get:function(){return Wl.TimeoutError}});Object.defineProperty(o,"callWithTimeout",{enumerable:!0,get:function(){return Wl.callWithTimeout}});var Kl=cu();Object.defineProperty(o,"isUrlIgnored",{enumerable:!0,get:function(){return Kl.isUrlIgnored}});Object.defineProperty(o,"urlMatches",{enumerable:!0,get:function(){return Kl.urlMatches}});var FN0=au();Object.defineProperty(o,"BindOnceFuture",{enumerable:!0,get:function(){return FN0.BindOnceFuture}});var UN0=eu();Object.defineProperty(o,"diagLogLevelFromString",{enumerable:!0,get:function(){return UN0.diagLogLevelFromString}});var qN0=$l();o.internal={_export:qN0._export}});var s;var e6=q(()=>{s=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__});var XK="@sentry/instrumentation-http",Gl=1048576;var lU=()=>{};function Hl(Z,J,Q,$){let Y=0,X=[];s&&O.log($,"Patching request.on");let W=new WeakMap,K=Q==="small"?1000:Q==="medium"?1e4:Gl;try{Z.on=new Proxy(Z.on,{apply:(z,G,H)=>{let[B,V,...F]=H;if(B==="data"){s&&O.log($,`Handling request.on("data") with maximum body size of ${K}b`);let U=new Proxy(V,{apply:(w,D,L)=>{try{let C=L[0],R=Buffer.from(C);if(Y<K)X.push(R),Y+=R.byteLength;else if(s)O.log($,`Dropping request body chunk because maximum body length of ${K}b is exceeded.`)}catch(C){s&&O.error($,"Encountered error while storing body chunk.")}return Reflect.apply(w,D,L)}});return W.set(V,U),Reflect.apply(z,G,[B,U,...F])}return Reflect.apply(z,G,H)}}),Z.off=new Proxy(Z.off,{apply:(z,G,H)=>{let[,B]=H,V=W.get(B);if(V){W.delete(B);let F=H.slice();return F[1]=V,Reflect.apply(z,G,F)}return Reflect.apply(z,G,H)}}),Z.on("end",()=>{try{let z=Buffer.concat(X).toString("utf-8");if(z){let H=Buffer.byteLength(z,"utf-8")>K?`${Buffer.from(z).subarray(0,K-3).toString("utf-8")}...`:z;J.setSDKProcessingMetadata({normalizedRequest:{data:H}})}}catch(z){if(s)O.error($,"Error building captured request body",z)}})}catch(z){if(s)O.error($,"Error patching request to capture body",z)}}var Bl=q(()=>{N();e6();lU()});import{subscribe as wN0}from"diagnostics_channel";function Ul(Z,J){T0(Z,"_startSpanCallback",new WeakRef(J))}function DN0(Z,{ignoreRequestBody:J,maxRequestBodySize:Q,sessions:$,sessionFlushingDelayMS:Y}){let X=Z.emit;if(Fl.has(X))return;let W=new Proxy(X,{apply(K,z,G){if(G[0]!=="request")return K.apply(z,G);let H=k();if(uZ.context.active().getValue(Vl)||!H)return K.apply(z,G);s&&O.log(iU,"Handling incoming request");let B=x().clone(),V=G[1],F=G[2],U=TZ(V),w=V.ip||V.socket?.remoteAddress,D=V.url||"/";if(Q!=="none"&&!J?.(D,V))Hl(V,B,Q,iU);B.setSDKProcessingMetadata({normalizedRequest:U,ipAddress:w});let L=(V.method||"GET").toUpperCase(),C=I8(D),R=`${L} ${C}`;if(B.setTransactionName(R),$&&H)ON0(H,{requestIsolationScope:B,response:F,sessionFlushingDelayMS:Y??60000});return l1(B,()=>{let T={traceId:_1(),sampleRand:W1(),propagationSpanId:Y6()};i().setPropagationContext({...T}),B.setPropagationContext({...T});let _=uZ.propagation.extract(uZ.context.active(),U.headers).setValue(Vl,!0);return uZ.context.with(_,()=>{H.emit("httpServerRequest",V,F,U);let m=V._startSpanCallback?.deref();if(m)return m(()=>K.apply(z,G));return K.apply(z,G)})})}});Fl.add(W),Z.emit=W}function ON0(Z,{requestIsolationScope:J,response:Q,sessionFlushingDelayMS:$}){J.setSDKProcessingMetadata({requestSession:{status:"ok"}}),Q.once("close",()=>{let Y=J.getScopeData().sdkProcessingMetadata.requestSession;if(Z&&Y){s&&O.log(`Recorded request session with status: ${Y.status}`);let X=new Date;X.setSeconds(0,0);let W=X.toISOString(),K=pU.get(Z),z=K?.[W]||{exited:0,crashed:0,errored:0};if(z[{ok:"exited",crashed:"crashed",errored:"errored"}[Y.status]]++,K)K[W]=z;else{s&&O.log("Opened new request session aggregate.");let G={[W]:z};pU.set(Z,G);let H=()=>{clearTimeout(V),B(),pU.delete(Z);let F=Object.entries(G).map(([U,w])=>({started:U,exited:w.exited,errored:w.errored,crashed:w.crashed}));Z.sendSession({aggregates:F})},B=Z.on("flush",()=>{s&&O.log("Sending request session aggregate due to client flush"),H()}),V=setTimeout(()=>{s&&O.log("Sending request session aggregate due to flushing schedule"),H()},$).unref()}}})}var uZ,Vl,iU="Http.Server",pU,Fl,jN0=(Z={})=>{let J={sessions:Z.sessions??!0,sessionFlushingDelayMS:Z.sessionFlushingDelayMS??60000,maxRequestBodySize:Z.maxRequestBodySize??"medium",ignoreRequestBody:Z.ignoreRequestBody};return{name:iU,setupOnce(){wN0("http.server.request.start",($)=>{DN0($.server,J)})},afterAllSetup(Q){if(s&&Q.getIntegrationByName("Http"))O.warn("It seems that you have manually added `httpServerIntegration` while `httpIntegration` is also present. Make sure to remove `httpServerIntegration` when adding `httpIntegration`.")}}},lZ;var WK=q(()=>{N();e6();Bl();uZ=A(I(),1),Vl=uZ.createContextKey("sentry_http_server_instrumented"),pU=new Map,Fl=new WeakSet;lZ=jN0});import{errorMonitor as LN0}from"events";function PN0(Z){return Z.headers["next-router-prefetch"]==="1"}function MN0(Z){let J=I8(Z);if(J.match(/\.(ico|png|jpg|jpeg|gif|svg|css|js|woff|woff2|ttf|eot|webp|avif)$/))return!0;if(J.match(/^\/(robots\.txt|sitemap\.xml|manifest\.json|browserconfig\.xml)$/))return!0;return!1}function RN0(Z,{ignoreStaticAssets:J,ignoreIncomingRequests:Q}){if(d8.isTracingSuppressed(T6.context.active()))return!0;let $=Z.url,Y=Z.method?.toUpperCase();if(Y==="OPTIONS"||Y==="HEAD"||!$)return!0;if(J&&Y==="GET"&&MN0($))return!0;if(Q?.($,Z))return!0;return!1}function kN0(Z){let J=NN0(Z.headers);if(J==null)return{};if(AN0(Z.headers))return{["http.request_content_length"]:J};else return{["http.request_content_length_uncompressed"]:J}}function NN0(Z){let J=Z["content-length"];if(J===void 0)return null;let Q=parseInt(J,10);if(isNaN(Q))return null;return Q}function AN0(Z){let J=Z["content-encoding"];return!!J&&J!=="identity"}function IN0(Z,J){let{socket:Q}=Z,{statusCode:$,statusMessage:Y}=J,X={[E6.ATTR_HTTP_RESPONSE_STATUS_CODE]:$,[E6.SEMATTRS_HTTP_STATUS_CODE]:$,"http.status_text":Y?.toUpperCase()},W=d8.getRPCMetadata(T6.context.active());if(Q){let{localAddress:K,localPort:z,remoteAddress:G,remotePort:H}=Q;X[E6.SEMATTRS_NET_HOST_IP]=K,X[E6.SEMATTRS_NET_HOST_PORT]=z,X[E6.SEMATTRS_NET_PEER_IP]=G,X["net.peer.port"]=H}if(X[E6.SEMATTRS_HTTP_STATUS_CODE]=$,X["http.status_text"]=(Y||"").toUpperCase(),W?.type===d8.RPCType.HTTP&&W.route!==void 0){let K=W.route;X[E6.ATTR_HTTP_ROUTE]=K}return X}function TN0(Z,J){return J.some((Q)=>{if(typeof Q==="number")return Q===Z;let[$,Y]=Q;return Z>=$&&Z<=Y})}var T6,d8,E6,ql="Http.ServerSpans",CN0=(Z={})=>{let J=Z.ignoreStaticAssets??!0,Q=Z.ignoreIncomingRequests,$=Z.ignoreStatusCodes??[[401,404],[301,303],[305,399]],{onSpanCreated:Y}=Z,{requestHook:X,responseHook:W,applyCustomAttributesOnSpan:K}=Z.instrumentation??{};return{name:ql,setup(z){if(typeof __SENTRY_TRACING__<"u"&&!__SENTRY_TRACING__)return;z.on("httpServerRequest",(G,H,B)=>{let V=G,F=H;Ul(V,(w)=>{if(RN0(V,{ignoreStaticAssets:J,ignoreIncomingRequests:Q}))return s&&O.log(ql,"Skipping span creation for incoming request",V.url),w();let D=B.url||V.url||"/",L=A8(D),C=V.headers,R=C["user-agent"],T=C["x-forwarded-for"],_=V.httpVersion,m=C.host,l=m?.replace(/^(.*)(:[0-9]{1,5})/,"$1")||"localhost",y0=z.tracer,$6=D.startsWith("https")?"https":"http",c9=B.method||V.method?.toUpperCase()||"GET",m9=L?L.pathname:I8(D),n5=`${c9} ${m9}`,U1=y0.startSpan(n5,{kind:T6.SpanKind.SERVER,attributes:{[g]:"http.server",[f]:"auto.http.otel.http","sentry.http.prefetch":PN0(V)||void 0,"http.url":D,"http.method":B.method,"http.target":L?`${L.pathname}${L.search}`:m9,"http.host":m,"net.host.name":l,"http.client_ip":typeof T==="string"?T.split(",")[0]:void 0,"http.user_agent":R,"http.scheme":$6,"http.flavor":_,"net.transport":_?.toUpperCase()==="QUIC"?"ip_udp":"ip_tcp",...kN0(V),...T8(B.headers||{},z.getOptions().sendDefaultPii??!1)}});X?.(U1,V),W?.(U1,F),K?.(U1,V,F),Y?.(U1,V,F);let P7={type:d8.RPCType.HTTP,span:U1};return T6.context.with(d8.setRPCMetadata(T6.trace.setSpan(T6.context.active(),U1),P7),()=>{T6.context.bind(T6.context.active(),V),T6.context.bind(T6.context.active(),F);let a5=!1;function uY(lY){if(a5)return;a5=!0;let cO=IN0(V,F);U1.setAttributes(cO),U1.setStatus(lY),U1.end();let mO=cO["http.route"];if(mO)x().setTransactionName(`${V.method?.toUpperCase()||"GET"} ${mO}`)}return F.on("close",()=>{uY(D6(F.statusCode))}),F.on(LN0,()=>{let lY=D6(F.statusCode);uY(lY.code===a?lY:{code:a})}),w()})})})},processEvent(z){if(z.type==="transaction"){let G=z.contexts?.trace?.data?.["http.response.status_code"];if(typeof G==="number"){if(TN0(G,$))return s&&O.log("Dropping transaction due to status code",G),null}}return z},afterAllSetup(z){if(!s)return;if(z.getIntegrationByName("Http"))O.warn("It seems that you have manually added `httpServerSpansIntergation` while `httpIntegration` is also present. Make sure to remove `httpIntegration` when adding `httpServerSpansIntegration`.");if(!z.getIntegrationByName("Http.Server"))O.error("It seems that you have manually added `httpServerSpansIntergation` without adding `httpServerIntegration`. This is a requiement for spans to be created - please add the `httpServerIntegration` integration.")}}},pZ;var oU=q(()=>{N();e6();WK();T6=A(I(),1),d8=A(R0(),1),E6=A(Y0(),1),pZ=CN0});function r3(Z,J){if(!Z)return J;let Q=g7(Z),$=g7(J);if(!$)return Z;let Y={...Q};return Object.entries($).forEach(([X,W])=>{if(X.startsWith("sentry-")||!Y[X])Y[X]=W}),cX(Y)}var nU=q(()=>{N()});function wl(Z,J){let Q=EN0(Z),$=J?.statusCode,Y=i3($);N1({category:"http",data:{status_code:$,...Q},type:"http",level:Y},{event:"response",request:Z,response:J})}function KK(Z,J){let Q=zK(Z),{tracePropagationTargets:$,propagateTraceparent:Y}=k()?.getOptions()||{},X=Y5(Q,$,J)?N9({propagateTraceparent:Y}):void 0;if(!X)return;let{"sentry-trace":W,baggage:K,traceparent:z}=X;if(W&&!Z.getHeader("sentry-trace"))try{Z.setHeader("sentry-trace",W),s&&O.log(YJ,"Added sentry-trace header to outgoing request")}catch(G){s&&O.error(YJ,"Failed to add sentry-trace header to outgoing request:",M1(G)?G.message:"Unknown error")}if(z&&!Z.getHeader("traceparent"))try{Z.setHeader("traceparent",z),s&&O.log(YJ,"Added traceparent header to outgoing request")}catch(G){s&&O.error(YJ,"Failed to add traceparent header to outgoing request:",M1(G)?G.message:"Unknown error")}if(K){let G=r3(Z.getHeader("baggage"),K);if(G)try{Z.setHeader("baggage",G),s&&O.log(YJ,"Added baggage header to outgoing request")}catch(H){s&&O.error(YJ,"Failed to add baggage header to outgoing request:",M1(H)?H.message:"Unknown error")}}}function EN0(Z){try{let J=Z.getHeader("host")||Z.host,Q=new URL(Z.path,`${Z.protocol}//${J}`),$=AZ(Q.toString()),Y={url:IZ($),"http.method":Z.method||"GET"};if($.search)Y["http.query"]=$.search;if($.hash)Y["http.fragment"]=$.hash;return Y}catch{return{}}}function jl(Z){return{method:Z.method,protocol:Z.protocol,host:Z.host,hostname:Z.host,path:Z.path,headers:Z.getHeaders()}}function zK(Z){let J=Z.getHeader("host")||Z.host,Q=Z.protocol,$=Z.path;return`${Q}//${J}${$}`}var YJ="@sentry/instrumentation-http";var Dl=q(()=>{N();e6();nU()});import{subscribe as aU,unsubscribe as sU}from"diagnostics_channel";import{errorMonitor as Ol}from"events";function fN0(Z){let J=zK(Z),[Q,$]=BF(A8(J),"client","auto.http.otel.http",Z),Y=Z.getHeader("user-agent");return[Q,{[g]:"http.client","otel.kind":"CLIENT",[L1.ATTR_USER_AGENT_ORIGINAL]:Y,[L1.ATTR_URL_FULL]:J,"http.url":J,"http.method":Z.method,"http.target":Z.path||"/","net.peer.name":Z.host,"http.host":Z.getHeader("host"),...$}]}function yN0(Z){let{statusCode:J,statusMessage:Q,httpVersion:$,socket:Y}=Z,X=$.toUpperCase()!=="QUIC"?"ip_tcp":"ip_udp",W={[L1.ATTR_HTTP_RESPONSE_STATUS_CODE]:J,[L1.ATTR_NETWORK_PROTOCOL_VERSION]:$,"http.flavor":$,[L1.ATTR_NETWORK_TRANSPORT]:X,"net.transport":X,["http.status_text"]:Q?.toUpperCase(),"http.status_code":J,...SN0(Z)};if(Y){let{remoteAddress:K,remotePort:z}=Y;W[L1.ATTR_NETWORK_PEER_ADDRESS]=K,W[L1.ATTR_NETWORK_PEER_PORT]=z,W["net.peer.ip"]=K,W["net.peer.port"]=z}return W}function SN0(Z){let J=_N0(Z.headers);if(J==null)return{};if(hN0(Z.headers))return{[L1.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH]:J};else return{[L1.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED]:J}}function _N0(Z){let J=Z["content-length"];if(typeof J==="number")return J;if(typeof J!=="string")return;let Q=parseInt(J,10);if(isNaN(Q))return;return Q}function hN0(Z){let J=Z["content-encoding"];return!!J&&J!=="identity"}var n1,Ll,t3,L1,XJ;var rU=q(()=>{N();e6();lU();Dl();n1=A(I(),1),Ll=A(R0(),1),t3=A(n(),1),L1=A(Y0(),1);XJ=class XJ extends t3.InstrumentationBase{constructor(Z={}){super(XK,e,Z);this._propagationDecisionMap=new I6(100),this._ignoreOutgoingRequestsMap=new WeakMap}init(){let Z=!1,J=(W)=>{let K=W;this._onOutgoingRequestFinish(K.request,K.response)},Q=(W)=>{let K=W;this._onOutgoingRequestFinish(K.request,void 0)},$=(W)=>{let K=W;this._onOutgoingRequestCreated(K.request)},Y=(W)=>{if(Z)return W;if(Z=!0,aU("http.client.response.finish",J),aU("http.client.request.error",Q),this.getConfig().propagateTraceInOutgoingRequests||this.getConfig().createSpansForOutgoingRequests)aU("http.client.request.created",$);return W},X=()=>{sU("http.client.response.finish",J),sU("http.client.request.error",Q),sU("http.client.request.created",$)};return[new t3.InstrumentationNodeModuleDefinition("http",["*"],Y,X),new t3.InstrumentationNodeModuleDefinition("https",["*"],Y,X)]}_startSpanForOutgoingRequest(Z){let J=Z.once,[Q,$]=fN0(Z),Y=P8({name:Q,attributes:$,onlyIfParent:!0});this.getConfig().outgoingRequestHook?.(Y,Z);let X=new Proxy(J,{apply(z,G,H){let[B]=H;if(B!=="response")return z.apply(G,H);let V=n1.context.active(),F=n1.trace.setSpan(V,Y);return n1.context.with(F,()=>{return z.apply(G,H)})}});Z.once=X;let W=!1,K=(z)=>{if(W)return;W=!0,Y.setStatus(z),Y.end()};return Z.prependListener("response",(z)=>{if(Z.listenerCount("response")<=1)z.resume();n1.context.bind(n1.context.active(),z);let G=yN0(z);Y.setAttributes(G),this.getConfig().outgoingResponseHook?.(Y,z),this.getConfig().outgoingRequestApplyCustomAttributes?.(Y,Z,z);let H=(B=!1)=>{this._diag.debug("outgoingRequest on end()");let V=B||typeof z.statusCode!=="number"||z.aborted&&!z.complete?{code:n1.SpanStatusCode.ERROR}:D6(z.statusCode);K(V)};z.on("end",()=>{H()}),z.on(Ol,(B)=>{this._diag.debug("outgoingRequest on response error()",B),H(!0)})}),Z.on("close",()=>{K({code:n1.SpanStatusCode.UNSET})}),Z.on(Ol,(z)=>{this._diag.debug("outgoingRequest on request error()",z),K({code:n1.SpanStatusCode.ERROR})}),Y}_onOutgoingRequestFinish(Z,J){s&&O.log(XK,"Handling finished outgoing request");let Q=this.getConfig().breadcrumbs,$=typeof Q>"u"?!0:Q,Y=this._ignoreOutgoingRequestsMap.get(Z)??this._shouldIgnoreOutgoingRequest(Z);if(this._ignoreOutgoingRequestsMap.set(Z,Y),$&&!Y)wl(Z,J)}_onOutgoingRequestCreated(Z){s&&O.log(XK,"Handling outgoing request created");let J=this._ignoreOutgoingRequestsMap.get(Z)??this._shouldIgnoreOutgoingRequest(Z);if(this._ignoreOutgoingRequestsMap.set(Z,J),J)return;let Q=this.getConfig().createSpansForOutgoingRequests&&(this.getConfig().spans??!0),$=this.getConfig().propagateTraceInOutgoingRequests;if(Q){let Y=this._startSpanForOutgoingRequest(Z);if($&&Y.isRecording()){let X=n1.trace.setSpan(n1.context.active(),Y);n1.context.with(X,()=>{KK(Z,this._propagationDecisionMap)})}else if($)KK(Z,this._propagationDecisionMap)}else if($)KK(Z,this._propagationDecisionMap)}_shouldIgnoreOutgoingRequest(Z){if(Ll.isTracingSuppressed(n1.context.active()))return!0;let J=this.getConfig().ignoreOutgoingRequests;if(!J)return!1;let Q=jl(Z),$=zK(Z);return J($,Q)}}});var b1,c8,e3;var j5=q(()=>{N();b1=zV(process.versions.node),c8=b1.major,e3=b1.minor});function Pl(Z,J){let Q=HK(Z.origin,Z.path),{tracePropagationTargets:$,propagateTraceparent:Y}=k()?.getOptions()||{},X=Y5(Q,$,J)?N9({propagateTraceparent:Y}):void 0;if(!X)return;let{"sentry-trace":W,baggage:K,traceparent:z}=X;if(Array.isArray(Z.headers)){let G=Z.headers;if(W&&!G.includes(GK))G.push(GK,W);if(z&&!G.includes("traceparent"))G.push("traceparent",z);let H=G.findIndex((B)=>B===tU);if(K&&H===-1)G.push(tU,K);else if(K){let B=G[H+1],V=r3(B,K);if(V)G[H+1]=V}}else{let G=Z.headers;if(W&&!G.includes(`${GK}:`))Z.headers+=`${GK}: ${W}\r
|
|
26
26
|
`;if(z&&!G.includes("traceparent:"))Z.headers+=`traceparent: ${z}\r
|
|
27
27
|
`;let H=Z.headers.match(Cl)?.[1];if(K&&!H)Z.headers+=`${tU}: ${K}\r
|
|
28
28
|
`;else if(K){let B=r3(H,K);if(B)Z.headers=Z.headers.replace(Cl,`baggage: ${B}\r
|
|
29
|
-
`)}}}function Ml(Z,J){let Q=bN0(Z),$=J.statusCode,Y=i3($);N1({category:"http",data:{status_code:$,...Q},type:"http",level:Y},{event:"response",request:Z,response:J})}function bN0(Z){try{let J=HK(Z.origin,Z.path),Q=AZ(J),$={url:IZ(Q),"http.method":Z.method||"GET"};if(Q.search)$["http.query"]=Q.search;if(Q.hash)$["http.fragment"]=Q.hash;return $}catch{return{}}}function HK(Z,J="/"){try{return new URL(J,Z).toString()}catch{let Q=`${Z}`;if(Q.endsWith("/")&&J.startsWith("/"))return`${Q}${J.slice(1)}`;if(!Q.endsWith("/")&&!J.startsWith("/"))return`${Q}/${J}`;return`${Q}${J}`}}var GK="sentry-trace",tU="baggage",Cl;var Rl=q(()=>{N();nU();Cl=/baggage: (.*)\r\n/});import*as WJ from"diagnostics_channel";var kl,Nl,Al,KJ;var eU=q(()=>{N();j5();Rl();kl=A(I(),1),Nl=A(R0(),1),Al=A(n(),1);KJ=class KJ extends Al.InstrumentationBase{constructor(Z={}){super("@sentry/instrumentation-node-fetch",e,Z);this._channelSubs=[],this._propagationDecisionMap=new I6(100),this._ignoreOutgoingRequestsMap=new WeakMap}init(){return}disable(){super.disable(),this._channelSubs.forEach((Z)=>Z.unsubscribe()),this._channelSubs=[]}enable(){if(super.enable(),this._channelSubs=this._channelSubs||[],this._channelSubs.length>0)return;this._subscribeToChannel("undici:request:create",this._onRequestCreated.bind(this)),this._subscribeToChannel("undici:request:headers",this._onResponseHeaders.bind(this))}_onRequestCreated({request:Z}){let J=this.getConfig();if(J.enabled===!1)return;let $=this._shouldIgnoreOutgoingRequest(Z);if(this._ignoreOutgoingRequestsMap.set(Z,$),$)return;if(J.tracePropagation!==!1)Pl(Z,this._propagationDecisionMap)}_onResponseHeaders({request:Z,response:J}){let Q=this.getConfig();if(Q.enabled===!1)return;let Y=Q.breadcrumbs,X=typeof Y>"u"?!0:Y,W=this._ignoreOutgoingRequestsMap.get(Z);if(X&&!W)Ml(Z,J)}_subscribeToChannel(Z,J){let Q=c8>18||c8===18&&e3>=19,$;if(Q)WJ.subscribe?.(Z,J),$=()=>WJ.unsubscribe?.(Z,J);else{let Y=WJ.channel(Z);Y.subscribe(J),$=()=>Y.unsubscribe(J)}this._channelSubs.push({name:Z,unsubscribe:$})}_shouldIgnoreOutgoingRequest(Z){if(Nl.isTracingSuppressed(kl.context.active()))return!0;let J=HK(Z.origin,Z.path),Q=this.getConfig().ignoreOutgoingRequests;if(typeof Q!=="function"||!J)return!1;return Q(J)}}});var Zq=j((Tl)=>{Object.defineProperty(Tl,"__esModule",{value:!0});Tl.AbstractAsyncHooksContextManager=void 0;var vN0=E("events"),xN0=["addListener","on","once","prependListener","prependOnceListener"];class Il{bind(Z,J){if(J instanceof vN0.EventEmitter)return this._bindEventEmitter(Z,J);if(typeof J==="function")return this._bindFunction(Z,J);return J}_bindFunction(Z,J){let Q=this,$=function(...Y){return Q.with(Z,()=>J.apply(this,Y))};return Object.defineProperty($,"length",{enumerable:!1,configurable:!0,writable:!1,value:J.length}),$}_bindEventEmitter(Z,J){if(this._getPatchMap(J)!==void 0)return J;if(this._createPatchMap(J),xN0.forEach(($)=>{if(J[$]===void 0)return;J[$]=this._patchAddListener(J,J[$],Z)}),typeof J.removeListener==="function")J.removeListener=this._patchRemoveListener(J,J.removeListener);if(typeof J.off==="function")J.off=this._patchRemoveListener(J,J.off);if(typeof J.removeAllListeners==="function")J.removeAllListeners=this._patchRemoveAllListeners(J,J.removeAllListeners);return J}_patchRemoveListener(Z,J){let Q=this;return function($,Y){let X=Q._getPatchMap(Z)?.[$];if(X===void 0)return J.call(this,$,Y);let W=X.get(Y);return J.call(this,$,W||Y)}}_patchRemoveAllListeners(Z,J){let Q=this;return function($){let Y=Q._getPatchMap(Z);if(Y!==void 0){if(arguments.length===0)Q._createPatchMap(Z);else if(Y[$]!==void 0)delete Y[$]}return J.apply(this,arguments)}}_patchAddListener(Z,J,Q){let $=this;return function(Y,X){if($._wrapped)return J.call(this,Y,X);let W=$._getPatchMap(Z);if(W===void 0)W=$._createPatchMap(Z);let K=W[Y];if(K===void 0)K=new WeakMap,W[Y]=K;let z=$.bind(Q,X);K.set(X,z),$._wrapped=!0;try{return J.call(this,Y,z)}finally{$._wrapped=!1}}}_createPatchMap(Z){let J=Object.create(null);return Z[this._kOtListeners]=J,J}_getPatchMap(Z){return Z[this._kOtListeners]}_kOtListeners=Symbol("OtListeners");_wrapped=!1}Tl.AbstractAsyncHooksContextManager=Il});var _l=j((yl)=>{Object.defineProperty(yl,"__esModule",{value:!0});yl.AsyncHooksContextManager=void 0;var gN0=I(),dN0=E("async_hooks"),cN0=Zq();class fl extends cN0.AbstractAsyncHooksContextManager{_asyncHook;_contexts=new Map;_stack=[];constructor(){super();this._asyncHook=dN0.createHook({init:this._init.bind(this),before:this._before.bind(this),after:this._after.bind(this),destroy:this._destroy.bind(this),promiseResolve:this._destroy.bind(this)})}active(){return this._stack[this._stack.length-1]??gN0.ROOT_CONTEXT}with(Z,J,Q,...$){this._enterContext(Z);try{return J.call(Q,...$)}finally{this._exitContext()}}enable(){return this._asyncHook.enable(),this}disable(){return this._asyncHook.disable(),this._contexts.clear(),this._stack=[],this}_init(Z,J){if(J==="TIMERWRAP")return;let Q=this._stack[this._stack.length-1];if(Q!==void 0)this._contexts.set(Z,Q)}_destroy(Z){this._contexts.delete(Z)}_before(Z){let J=this._contexts.get(Z);if(J!==void 0)this._enterContext(J)}_after(){this._exitContext()}_enterContext(Z){this._stack.push(Z)}_exitContext(){this._stack.pop()}}yl.AsyncHooksContextManager=fl});var xl=j((bl)=>{Object.defineProperty(bl,"__esModule",{value:!0});bl.AsyncLocalStorageContextManager=void 0;var mN0=I(),uN0=E("async_hooks"),lN0=Zq();class hl extends lN0.AbstractAsyncHooksContextManager{_asyncLocalStorage;constructor(){super();this._asyncLocalStorage=new uN0.AsyncLocalStorage}active(){return this._asyncLocalStorage.getStore()??mN0.ROOT_CONTEXT}with(Z,J,Q,...$){let Y=Q==null?J:J.bind(Q);return this._asyncLocalStorage.run(Z,Y,...$)}enable(){return this}disable(){return this._asyncLocalStorage.disable(),this}}bl.AsyncLocalStorageContextManager=hl});var gl=j((BK)=>{Object.defineProperty(BK,"__esModule",{value:!0});BK.AsyncLocalStorageContextManager=BK.AsyncHooksContextManager=void 0;var pN0=_l();Object.defineProperty(BK,"AsyncHooksContextManager",{enumerable:!0,get:function(){return pN0.AsyncHooksContextManager}});var iN0=xl();Object.defineProperty(BK,"AsyncLocalStorageContextManager",{enumerable:!0,get:function(){return iN0.AsyncLocalStorageContextManager}})});function dl(){if(VK===void 0)try{let Z=globalThis.process.argv0;VK=Z?`unknown_service:${Z}`:"unknown_service"}catch{VK="unknown_service"}return VK}var VK;var zJ=(Z)=>{return Z!==null&&typeof Z==="object"&&typeof Z.then==="function"};class UK{_rawAttributes;_asyncAttributesPending=!1;_schemaUrl;_memoizedAttributes;static FromAttributeList(Z,J){let Q=new UK({},J);return Q._rawAttributes=cl(Z),Q._asyncAttributesPending=Z.filter(([$,Y])=>zJ(Y)).length>0,Q}constructor(Z,J){let Q=Z.attributes??{};this._rawAttributes=Object.entries(Q).map(([$,Y])=>{if(zJ(Y))this._asyncAttributesPending=!0;return[$,Y]}),this._rawAttributes=cl(this._rawAttributes),this._schemaUrl=nN0(J?.schemaUrl)}get asyncAttributesPending(){return this._asyncAttributesPending}async waitForAsyncAttributes(){if(!this.asyncAttributesPending)return;for(let Z=0;Z<this._rawAttributes.length;Z++){let[J,Q]=this._rawAttributes[Z];this._rawAttributes[Z]=[J,zJ(Q)?await Q:Q]}this._asyncAttributesPending=!1}get attributes(){if(this.asyncAttributesPending)GJ.diag.error("Accessing resource attributes before async attributes settled");if(this._memoizedAttributes)return this._memoizedAttributes;let Z={};for(let[J,Q]of this._rawAttributes){if(zJ(Q)){GJ.diag.debug(`Unsettled resource attribute ${J} skipped`);continue}if(Q!=null)Z[J]??=Q}if(!this._asyncAttributesPending)this._memoizedAttributes=Z;return Z}getRawAttributes(){return this._rawAttributes}get schemaUrl(){return this._schemaUrl}merge(Z){if(Z==null)return this;let J=aN0(this,Z),Q=J?{schemaUrl:J}:void 0;return UK.FromAttributeList([...Z.getRawAttributes(),...this.getRawAttributes()],Q)}}function qK(Z,J){return UK.FromAttributeList(Object.entries(Z),J)}function Z$(){return qK({[T9.ATTR_SERVICE_NAME]:dl(),[T9.ATTR_TELEMETRY_SDK_LANGUAGE]:FK.SDK_INFO[T9.ATTR_TELEMETRY_SDK_LANGUAGE],[T9.ATTR_TELEMETRY_SDK_NAME]:FK.SDK_INFO[T9.ATTR_TELEMETRY_SDK_NAME],[T9.ATTR_TELEMETRY_SDK_VERSION]:FK.SDK_INFO[T9.ATTR_TELEMETRY_SDK_VERSION]})}function cl(Z){return Z.map(([J,Q])=>{if(zJ(Q))return[J,Q.catch(($)=>{GJ.diag.debug("promise rejection for resource attribute: %s - %s",J,$);return})];return[J,Q]})}function nN0(Z){if(typeof Z==="string"||Z===void 0)return Z;GJ.diag.warn("Schema URL must be string or undefined, got %s. Schema URL will be ignored.",Z);return}function aN0(Z,J){let Q=Z?.schemaUrl,$=J?.schemaUrl,Y=Q===void 0||Q==="",X=$===void 0||$==="";if(Y)return $;if(X)return Q;if(Q===$)return Q;GJ.diag.warn('Schema URL merge conflict: old resource has "%s", updating resource has "%s". Resulting resource will have undefined Schema URL.',Q,$);return}var GJ,FK,T9;var ml=q(()=>{GJ=A(I(),1),FK=A(R0(),1),T9=A(Y0(),1)});var Jq=q(()=>{ml()});var ul="exception";class Qq{_spanContext;kind;parentSpanContext;attributes={};links=[];events=[];startTime;resource;instrumentationScope;_droppedAttributesCount=0;_droppedEventsCount=0;_droppedLinksCount=0;_attributesCount=0;name;status={code:G1.SpanStatusCode.UNSET};endTime=[0,0];_ended=!1;_duration=[-1,-1];_spanProcessor;_spanLimits;_attributeValueLengthLimit;_recordEndMetrics;_performanceStartTime;_performanceOffset;_startTimeProvided;constructor(Z){let J=Date.now();if(this._spanContext=Z.spanContext,this._performanceStartTime=L0.otperformance.now(),this._performanceOffset=J-(this._performanceStartTime+L0.otperformance.timeOrigin),this._startTimeProvided=Z.startTime!=null,this._spanLimits=Z.spanLimits,this._attributeValueLengthLimit=this._spanLimits.attributeValueLengthLimit??0,this._spanProcessor=Z.spanProcessor,this.name=Z.name,this.parentSpanContext=Z.parentSpanContext,this.kind=Z.kind,Z.links)for(let Q of Z.links)this.addLink(Q);if(this.startTime=this._getTime(Z.startTime??J),this.resource=Z.resource,this.instrumentationScope=Z.scope,this._recordEndMetrics=Z.recordEndMetrics,Z.attributes!=null)this.setAttributes(Z.attributes);this._spanProcessor.onStart(this,Z.context)}spanContext(){return this._spanContext}setAttribute(Z,J){if(J==null||this._isSpanEnded())return this;if(Z.length===0)return G1.diag.warn(`Invalid attribute key: ${Z}`),this;if(!L0.isAttributeValue(J))return G1.diag.warn(`Invalid attribute value set for key: ${Z}`),this;let{attributeCountLimit:Q}=this._spanLimits,$=!Object.prototype.hasOwnProperty.call(this.attributes,Z);if(Q!==void 0&&this._attributesCount>=Q&&$)return this._droppedAttributesCount++,this;if(this.attributes[Z]=this._truncateToSize(J),$)this._attributesCount++;return this}setAttributes(Z){for(let J in Z)if(Object.prototype.hasOwnProperty.call(Z,J))this.setAttribute(J,Z[J]);return this}addEvent(Z,J,Q){if(this._isSpanEnded())return this;let{eventCountLimit:$}=this._spanLimits;if($===0)return G1.diag.warn("No events allowed."),this._droppedEventsCount++,this;if($!==void 0&&this.events.length>=$){if(this._droppedEventsCount===0)G1.diag.debug("Dropping extra events.");this.events.shift(),this._droppedEventsCount++}if(L0.isTimeInput(J)){if(!L0.isTimeInput(Q))Q=J;J=void 0}let Y=L0.sanitizeAttributes(J),{attributePerEventCountLimit:X}=this._spanLimits,W={},K=0,z=0;for(let G in Y){if(!Object.prototype.hasOwnProperty.call(Y,G))continue;let H=Y[G];if(X!==void 0&&z>=X){K++;continue}W[G]=this._truncateToSize(H),z++}return this.events.push({name:Z,attributes:W,time:this._getTime(Q),droppedAttributesCount:K}),this}addLink(Z){if(this._isSpanEnded())return this;let{linkCountLimit:J}=this._spanLimits;if(J===0)return this._droppedLinksCount++,this;if(J!==void 0&&this.links.length>=J){if(this._droppedLinksCount===0)G1.diag.debug("Dropping extra links.");this.links.shift(),this._droppedLinksCount++}let{attributePerLinkCountLimit:Q}=this._spanLimits,$=L0.sanitizeAttributes(Z.attributes),Y={},X=0,W=0;for(let z in $){if(!Object.prototype.hasOwnProperty.call($,z))continue;let G=$[z];if(Q!==void 0&&W>=Q){X++;continue}Y[z]=this._truncateToSize(G),W++}let K={context:Z.context};if(W>0)K.attributes=Y;if(X>0)K.droppedAttributesCount=X;return this.links.push(K),this}addLinks(Z){for(let J of Z)this.addLink(J);return this}setStatus(Z){if(this._isSpanEnded())return this;if(Z.code===G1.SpanStatusCode.UNSET)return this;if(this.status.code===G1.SpanStatusCode.OK)return this;let J={code:Z.code};if(Z.code===G1.SpanStatusCode.ERROR){if(typeof Z.message==="string")J.message=Z.message;else if(Z.message!=null)G1.diag.warn(`Dropping invalid status.message of type '${typeof Z.message}', expected 'string'`)}return this.status=J,this}updateName(Z){if(this._isSpanEnded())return this;return this.name=Z,this}end(Z){if(this._isSpanEnded()){G1.diag.error(`${this.name} ${this._spanContext.traceId}-${this._spanContext.spanId} - You can only call end() on a span once.`);return}if(this.endTime=this._getTime(Z),this._duration=L0.hrTimeDuration(this.startTime,this.endTime),this._duration[0]<0)G1.diag.warn("Inconsistent start and end time, startTime > endTime. Setting span duration to 0ms.",this.startTime,this.endTime),this.endTime=this.startTime.slice(),this._duration=[0,0];if(this._droppedEventsCount>0)G1.diag.warn(`Dropped ${this._droppedEventsCount} events because eventCountLimit reached`);if(this._droppedLinksCount>0)G1.diag.warn(`Dropped ${this._droppedLinksCount} links because linkCountLimit reached`);if(this._spanProcessor.onEnding)this._spanProcessor.onEnding(this);this._recordEndMetrics?.(),this._ended=!0,this._spanProcessor.onEnd(this)}_getTime(Z){if(typeof Z==="number"&&Z<=L0.otperformance.now())return L0.hrTime(Z+this._performanceOffset);if(typeof Z==="number")return L0.millisToHrTime(Z);if(Z instanceof Date)return L0.millisToHrTime(Z.getTime());if(L0.isTimeInputHrTime(Z))return Z;if(this._startTimeProvided)return L0.millisToHrTime(Date.now());let J=L0.otperformance.now()-this._performanceStartTime;return L0.addHrTimes(this.startTime,L0.millisToHrTime(J))}isRecording(){return this._ended===!1}recordException(Z,J){let Q={};if(typeof Z==="string")Q[r9.ATTR_EXCEPTION_MESSAGE]=Z;else if(Z){if(Z.code)Q[r9.ATTR_EXCEPTION_TYPE]=Z.code.toString();else if(Z.name)Q[r9.ATTR_EXCEPTION_TYPE]=Z.name;if(Z.message)Q[r9.ATTR_EXCEPTION_MESSAGE]=Z.message;if(Z.stack)Q[r9.ATTR_EXCEPTION_STACKTRACE]=Z.stack}if(Q[r9.ATTR_EXCEPTION_TYPE]||Q[r9.ATTR_EXCEPTION_MESSAGE])this.addEvent(ul,Q,J);else G1.diag.warn(`Failed to record an exception ${Z}`)}get duration(){return this._duration}get ended(){return this._ended}get droppedAttributesCount(){return this._droppedAttributesCount}get droppedEventsCount(){return this._droppedEventsCount}get droppedLinksCount(){return this._droppedLinksCount}_isSpanEnded(){if(this._ended){let Z=Error(`Operation attempted on ended Span {traceId: ${this._spanContext.traceId}, spanId: ${this._spanContext.spanId}}`);G1.diag.warn(`Cannot execute the operation on ended Span {traceId: ${this._spanContext.traceId}, spanId: ${this._spanContext.spanId}}`,Z)}return this._ended}_truncateToLimitUtil(Z,J){if(Z.length<=J)return Z;return Z.substring(0,J)}_truncateToSize(Z){let J=this._attributeValueLengthLimit;if(J<=0)return G1.diag.warn(`Attribute value limit must be positive, got ${J}`),Z;if(typeof Z==="string")return this._truncateToLimitUtil(Z,J);if(Array.isArray(Z))return Z.map((Q)=>typeof Q==="string"?this._truncateToLimitUtil(Q,J):Q);return Z}}var G1,L0,r9;var ll=q(()=>{G1=A(I(),1),L0=A(R0(),1),r9=A(Y0(),1)});var b0;var HJ=q(()=>{(function(Z){Z[Z.NOT_RECORD=0]="NOT_RECORD",Z[Z.RECORD=1]="RECORD",Z[Z.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(b0||(b0={}))});class D5{shouldSample(){return{decision:b0.NOT_RECORD}}toString(){return"AlwaysOffSampler"}}var $q=q(()=>{HJ()});class m8{shouldSample(){return{decision:b0.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}}var Yq=q(()=>{HJ()});class BJ{_root;_remoteParentSampled;_remoteParentNotSampled;_localParentSampled;_localParentNotSampled;constructor(Z){if(this._root=Z.root,!this._root)pl.globalErrorHandler(Error("ParentBasedSampler must have a root sampler configured")),this._root=new m8;this._remoteParentSampled=Z.remoteParentSampled??new m8,this._remoteParentNotSampled=Z.remoteParentNotSampled??new D5,this._localParentSampled=Z.localParentSampled??new m8,this._localParentNotSampled=Z.localParentNotSampled??new D5}shouldSample(Z,J,Q,$,Y,X){let W=O5.trace.getSpanContext(Z);if(!W||!O5.isSpanContextValid(W))return this._root.shouldSample(Z,J,Q,$,Y,X);if(W.isRemote){if(W.traceFlags&O5.TraceFlags.SAMPLED)return this._remoteParentSampled.shouldSample(Z,J,Q,$,Y,X);return this._remoteParentNotSampled.shouldSample(Z,J,Q,$,Y,X)}if(W.traceFlags&O5.TraceFlags.SAMPLED)return this._localParentSampled.shouldSample(Z,J,Q,$,Y,X);return this._localParentNotSampled.shouldSample(Z,J,Q,$,Y,X)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}}var O5,pl;var il=q(()=>{$q();Yq();O5=A(I(),1),pl=A(R0(),1)});class wK{_ratio;_upperBound;constructor(Z=0){this._ratio=this._normalize(Z),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(Z,J){return{decision:ol.isValidTraceId(J)&&this._accumulate(J)<this._upperBound?b0.RECORD_AND_SAMPLED:b0.NOT_RECORD}}toString(){return`TraceIdRatioBased{${this._ratio}}`}_normalize(Z){if(typeof Z!=="number"||isNaN(Z))return 0;return Z>=1?1:Z<=0?0:Z}_accumulate(Z){let J=0;for(let Q=0;Q<Z.length/8;Q++){let $=Q*8,Y=parseInt(Z.slice($,$+8),16);J=(J^Y)>>>0}return J}}var ol;var nl=q(()=>{HJ();ol=A(I(),1)});function OK(){return{sampler:Xq(),forceFlushTimeoutMillis:30000,generalLimits:{attributeValueLengthLimit:Z9.getNumberFromEnv("OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT")??1/0,attributeCountLimit:Z9.getNumberFromEnv("OTEL_ATTRIBUTE_COUNT_LIMIT")??128},spanLimits:{attributeValueLengthLimit:Z9.getNumberFromEnv("OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT")??1/0,attributeCountLimit:Z9.getNumberFromEnv("OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT")??128,linkCountLimit:Z9.getNumberFromEnv("OTEL_SPAN_LINK_COUNT_LIMIT")??128,eventCountLimit:Z9.getNumberFromEnv("OTEL_SPAN_EVENT_COUNT_LIMIT")??128,attributePerEventCountLimit:Z9.getNumberFromEnv("OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT")??128,attributePerLinkCountLimit:Z9.getNumberFromEnv("OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT")??128}}}function Xq(){let Z=Z9.getStringFromEnv("OTEL_TRACES_SAMPLER")??t9.ParentBasedAlwaysOn;switch(Z){case t9.AlwaysOn:return new m8;case t9.AlwaysOff:return new D5;case t9.ParentBasedAlwaysOn:return new BJ({root:new m8});case t9.ParentBasedAlwaysOff:return new BJ({root:new D5});case t9.TraceIdRatio:return new wK(al());case t9.ParentBasedTraceIdRatio:return new BJ({root:new wK(al())});default:return DK.diag.error(`OTEL_TRACES_SAMPLER value "${Z}" invalid, defaulting to "${t9.ParentBasedAlwaysOn}".`),new BJ({root:new m8})}}function al(){let Z=Z9.getNumberFromEnv("OTEL_TRACES_SAMPLER_ARG");if(Z==null)return DK.diag.error(`OTEL_TRACES_SAMPLER_ARG is blank, defaulting to ${jK}.`),jK;if(Z<0||Z>1)return DK.diag.error(`OTEL_TRACES_SAMPLER_ARG=${Z} was given, but it is out of range ([0..1]), defaulting to ${jK}.`),jK;return Z}var DK,Z9,t9,jK=1;var Wq=q(()=>{$q();Yq();il();nl();DK=A(I(),1),Z9=A(R0(),1);(function(Z){Z.AlwaysOff="always_off",Z.AlwaysOn="always_on",Z.ParentBasedAlwaysOff="parentbased_always_off",Z.ParentBasedAlwaysOn="parentbased_always_on",Z.ParentBasedTraceIdRatio="parentbased_traceidratio",Z.TraceIdRatio="traceidratio"})(t9||(t9={}))});function sl(Z){let J={sampler:Xq()},Q=OK(),$=Object.assign({},Q,J,Z);return $.generalLimits=Object.assign({},Q.generalLimits,Z.generalLimits||{}),$.spanLimits=Object.assign({},Q.spanLimits,Z.spanLimits||{}),$}function rl(Z){let J=Object.assign({},Z.spanLimits);return J.attributeCountLimit=Z.spanLimits?.attributeCountLimit??Z.generalLimits?.attributeCountLimit??J$.getNumberFromEnv("OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT")??J$.getNumberFromEnv("OTEL_ATTRIBUTE_COUNT_LIMIT")??sN0,J.attributeValueLengthLimit=Z.spanLimits?.attributeValueLengthLimit??Z.generalLimits?.attributeValueLengthLimit??J$.getNumberFromEnv("OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT")??J$.getNumberFromEnv("OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT")??rN0,Object.assign({},Z,{spanLimits:J})}var J$,sN0=128,rN0=1/0;var Kq=q(()=>{Wq();J$=A(R0(),1)});class Q${generateTraceId=tl(16);generateSpanId=tl(8)}function tl(Z){return function(){for(let Q=0;Q<Z/4;Q++)LK.writeUInt32BE(Math.random()*4294967296>>>0,Q*4);for(let Q=0;Q<Z;Q++)if(LK[Q]>0)break;else if(Q===Z-1)LK[Z-1]=1;return LK.toString("hex",0,Z)}}var LK;var el=q(()=>{LK=Buffer.allocUnsafe(16)});var Zp=q(()=>{el()});var Jp=q(()=>{Zp()});var Qp="otel.span.parent.origin",zq="otel.span.sampling_result",$p="otel.sdk.span.live",Yp="otel.sdk.span.started";class Gq{startedSpans;liveSpans;constructor(Z){this.startedSpans=Z.createCounter(Yp,{unit:"{span}",description:"The number of created spans."}),this.liveSpans=Z.createUpDownCounter($p,{unit:"{span}",description:"The number of currently live spans."})}startSpan(Z,J){let Q=eN0(J);if(this.startedSpans.add(1,{[Qp]:tN0(Z),[zq]:Q}),J===b0.NOT_RECORD)return()=>{};let $={[zq]:Q};return this.liveSpans.add(1,$),()=>{this.liveSpans.add(-1,$)}}}function tN0(Z){if(!Z)return"none";if(Z.isRemote)return"remote";return"local"}function eN0(Z){switch(Z){case b0.RECORD_AND_SAMPLED:return"RECORD_AND_SAMPLE";case b0.RECORD:return"RECORD_ONLY";case b0.NOT_RECORD:return"DROP"}}var Xp=q(()=>{HJ()});var Wp="2.6.1";class Hq{_sampler;_generalLimits;_spanLimits;_idGenerator;instrumentationScope;_resource;_spanProcessor;_tracerMetrics;constructor(Z,J,Q,$){let Y=sl(J);this._sampler=Y.sampler,this._generalLimits=Y.generalLimits,this._spanLimits=Y.spanLimits,this._idGenerator=J.idGenerator||new Q$,this._resource=Q,this._spanProcessor=$,this.instrumentationScope=Z;let X=Y.meterProvider?Y.meterProvider.getMeter("@opentelemetry/sdk-trace",Wp):C0.createNoopMeter();this._tracerMetrics=new Gq(X)}startSpan(Z,J={},Q=C0.context.active()){if(J.root)Q=C0.trace.deleteSpan(Q);let $=C0.trace.getSpan(Q);if(VJ.isTracingSuppressed(Q))return C0.diag.debug("Instrumentation suppressed, returning Noop Span"),C0.trace.wrapSpanContext(C0.INVALID_SPAN_CONTEXT);let Y=$?.spanContext(),X=this._idGenerator.generateSpanId(),W,K,z;if(!Y||!C0.trace.isSpanContextValid(Y))K=this._idGenerator.generateTraceId();else K=Y.traceId,z=Y.traceState,W=Y;let G=J.kind??C0.SpanKind.INTERNAL,H=(J.links??[]).map((C)=>{return{context:C.context,attributes:VJ.sanitizeAttributes(C.attributes)}}),B=VJ.sanitizeAttributes(J.attributes),V=this._sampler.shouldSample(Q,K,Z,G,B,H),F=this._tracerMetrics.startSpan(Y,V.decision);z=V.traceState??z;let U=V.decision===C0.SamplingDecision.RECORD_AND_SAMPLED?C0.TraceFlags.SAMPLED:C0.TraceFlags.NONE,w={traceId:K,spanId:X,traceFlags:U,traceState:z};if(V.decision===C0.SamplingDecision.NOT_RECORD)return C0.diag.debug("Recording is off, propagating context in a non-recording span"),C0.trace.wrapSpanContext(w);let D=VJ.sanitizeAttributes(Object.assign(B,V.attributes));return new Qq({resource:this._resource,scope:this.instrumentationScope,context:Q,spanContext:w,name:Z,kind:G,links:H,parentSpanContext:W,attributes:D,startTime:J.startTime,spanProcessor:this._spanProcessor,spanLimits:this._spanLimits,recordEndMetrics:F})}startActiveSpan(Z,J,Q,$){let Y,X,W;if(arguments.length<2)return;else if(arguments.length===2)W=J;else if(arguments.length===3)Y=J,W=Q;else Y=J,X=Q,W=$;let K=X??C0.context.active(),z=this.startSpan(Z,Y,K),G=C0.trace.setSpan(K,z);return C0.context.with(G,W,void 0,z)}getGeneralLimits(){return this._generalLimits}getSpanLimits(){return this._spanLimits}}var C0,VJ;var Kp=q(()=>{ll();Kq();Jp();Xp();C0=A(I(),1),VJ=A(R0(),1)});class Bq{_spanProcessors;constructor(Z){this._spanProcessors=Z}forceFlush(){let Z=[];for(let J of this._spanProcessors)Z.push(J.forceFlush());return new Promise((J)=>{Promise.all(Z).then(()=>{J()}).catch((Q)=>{zp.globalErrorHandler(Q||Error("MultiSpanProcessor: forceFlush failed")),J()})})}onStart(Z,J){for(let Q of this._spanProcessors)Q.onStart(Z,J)}onEnding(Z){for(let J of this._spanProcessors)if(J.onEnding)J.onEnding(Z)}onEnd(Z){for(let J of this._spanProcessors)J.onEnd(Z)}shutdown(){let Z=[];for(let J of this._spanProcessors)Z.push(J.shutdown());return new Promise((J,Q)=>{Promise.all(Z).then(()=>{J()},Q)})}}var zp;var Gp=q(()=>{zp=A(R0(),1)});class CK{_config;_tracers=new Map;_resource;_activeSpanProcessor;constructor(Z={}){let J=Hp.merge({},OK(),rl(Z));this._resource=J.resource??Z$(),this._config=Object.assign({},J,{resource:this._resource});let Q=[];if(Z.spanProcessors?.length)Q.push(...Z.spanProcessors);this._activeSpanProcessor=new Bq(Q)}getTracer(Z,J,Q){let $=`${Z}@${J||""}:${Q?.schemaUrl||""}`;if(!this._tracers.has($))this._tracers.set($,new Hq({name:Z,version:J,schemaUrl:Q?.schemaUrl},this._config,this._resource,this._activeSpanProcessor));return this._tracers.get($)}forceFlush(){let Z=this._config.forceFlushTimeoutMillis,J=this._activeSpanProcessor._spanProcessors.map((Q)=>{return new Promise(($)=>{let Y,X=setTimeout(()=>{$(Error(`Span processor did not completed within timeout period of ${Z} ms`)),Y=L5.timeout},Z);Q.forceFlush().then(()=>{if(clearTimeout(X),Y!==L5.timeout)Y=L5.resolved,$(Y)}).catch((W)=>{clearTimeout(X),Y=L5.error,$(W)})})});return new Promise((Q,$)=>{Promise.all(J).then((Y)=>{let X=Y.filter((W)=>W!==L5.resolved);if(X.length>0)$(X);else Q()}).catch((Y)=>$([Y]))})}shutdown(){return this._activeSpanProcessor.shutdown()}}var Hp,L5;var Bp=q(()=>{Jq();Kp();Wq();Gp();Kq();Hp=A(R0(),1);(function(Z){Z[Z.resolved=0]="resolved",Z[Z.timeout=1]="timeout",Z[Z.error=2]="error",Z[Z.unresolved=3]="unresolved"})(L5||(L5={}))});var Vq=q(()=>{Bp();HJ()});function Cq(Z){if("parentSpanId"in Z)return Z.parentSpanId;else if("parentSpanContext"in Z)return Z.parentSpanContext?.spanId;return}function Pq(Z){let J=Z;return!!J.attributes&&typeof J.attributes==="object"}function ZA0(Z){return typeof Z.kind==="number"}function JA0(Z){return!!Z.status}function qp(Z){return!!Z.name}function QA0(Z){if(!Pq(Z))return{};let J=Z.attributes[t.ATTR_URL_FULL]||Z.attributes[t.SEMATTRS_HTTP_URL],Q={url:J,"http.method":Z.attributes[t.ATTR_HTTP_REQUEST_METHOD]||Z.attributes[t.SEMATTRS_HTTP_METHOD]};if(!Q["http.method"]&&Q.url)Q["http.method"]="GET";try{if(typeof J==="string"){let $=AZ(J);if(Q.url=IZ($),$.search)Q["http.query"]=$.search;if($.hash)Q["http.fragment"]=$.hash}}catch{}return Q}function $A0(Z){if(ZA0(Z))return Z.kind;return b.SpanKind.INTERNAL}function wJ(Z){return Z.getValue(kq)}function Dp(Z,J){return Z.setValue(kq,J)}function WA0(Z,J){T0(Z,jp,J)}function Y$(Z){return Z[jp]}function UJ(Z){let{traceFlags:J,traceState:Q}=Z,$=Q?Q.get(Rq)==="1":!1;if(J===b.TraceFlags.SAMPLED)return!0;if($)return!1;let Y=Q?Q.get(Mq):void 0,X=Y?O9(Y):void 0;if(X?.sampled==="true")return!0;if(X?.sampled==="false")return!1;return}function Op(Z,J,Q){let $=J[t.ATTR_HTTP_REQUEST_METHOD]||J[t.SEMATTRS_HTTP_METHOD];if($)return zA0({attributes:J,name:Z,kind:Q},$);let Y=J[t.ATTR_DB_SYSTEM_NAME]||J[t.SEMATTRS_DB_SYSTEM],X=typeof J[g]==="string"&&J[g].startsWith("cache.");if(Y&&!X)return KA0({attributes:J,name:Z});let W=J[H0]==="custom"?"custom":"route";if(J[t.SEMATTRS_RPC_SERVICE])return{...$$(Z,J,"route"),op:"rpc"};if(J[t.SEMATTRS_MESSAGING_SYSTEM])return{...$$(Z,J,W),op:"message"};let G=J[t.SEMATTRS_FAAS_TRIGGER];if(G)return{...$$(Z,J,W),op:G.toString()};return{op:void 0,description:Z,source:"custom"}}function Lp(Z){let J=Pq(Z)?Z.attributes:{},Q=qp(Z)?Z.name:"<unknown>",$=$A0(Z);return Op(Q,J,$)}function KA0({attributes:Z,name:J}){let Q=Z[L6];if(typeof Q==="string")return{op:"db",description:Q,source:Z[H0]||"custom"};if(Z[H0]==="custom")return{op:"db",description:J,source:"custom"};let $=Z[t.SEMATTRS_DB_STATEMENT];return{op:"db",description:$?$.toString():J,source:"task"}}function zA0({name:Z,kind:J,attributes:Q},$){let Y=["http"];switch(J){case b.SpanKind.CLIENT:Y.push("client");break;case b.SpanKind.SERVER:Y.push("server");break}if(Q["sentry.http.prefetch"])Y.push("prefetch");let{urlPath:X,url:W,query:K,fragment:z,hasRoute:G}=HA0(Q,J);if(!X)return{...$$(Z,Q),op:Y.join(".")};let H=Q[qJ],B=`${$} ${X}`,V=H?`${B} (${GA0(H)})`:B,F=G||X==="/"?"route":"url",U={};if(W)U.url=W;if(K)U["http.query"]=K;if(z)U["http.fragment"]=z;let w=J===b.SpanKind.CLIENT||J===b.SpanKind.SERVER,L=!`${Q[f]||"manual"}`.startsWith("auto"),C=Q[H0]==="custom",R=Q[L6],T=!C&&R==null&&(w||!L),{description:S,source:m}=T?{description:V,source:F}:$$(Z,Q);return{op:Y.join("."),description:S,source:m,data:U}}function GA0(Z){if(Array.isArray(Z)){let J=Z.slice().sort();if(J.length<=5)return J.join(", ");else return`${J.slice(0,5).join(", ")}, +${J.length-5}`}return`${Z}`}function HA0(Z,J){let Q=Z[t.SEMATTRS_HTTP_TARGET],$=Z[t.SEMATTRS_HTTP_URL]||Z[t.ATTR_URL_FULL],Y=Z[t.ATTR_HTTP_ROUTE],X=typeof $==="string"?AZ($):void 0,W=X?IZ(X):void 0,K=X?.search||void 0,z=X?.hash||void 0;if(typeof Y==="string")return{urlPath:Y,url:W,query:K,fragment:z,hasRoute:!0};if(J===b.SpanKind.SERVER&&typeof Q==="string")return{urlPath:I8(Q),url:W,query:K,fragment:z,hasRoute:!1};if(X)return{urlPath:W,url:W,query:K,fragment:z,hasRoute:!1};if(typeof Q==="string")return{urlPath:I8(Q),url:W,query:K,fragment:z,hasRoute:!1};return{urlPath:void 0,url:W,query:K,fragment:z,hasRoute:!1}}function $$(Z,J,Q="custom"){let $=J[H0]||Q,Y=J[L6];if(Y&&typeof Y==="string")return{description:Y,source:$};return{description:Z,source:$}}function Cp(Z){Z.on("createDsc",(J,Q)=>{if(!Q)return;let X=v(Q).data[H0],{description:W}=qp(Q)?Lp(Q):{description:void 0};if(X!=="url"&&W)J.transaction=W;if(P0()){let K=UJ(Q.spanContext());J.sampled=K==null?void 0:String(K)}})}function Pp(){return b.trace.getActiveSpan()}function Mp({dsc:Z,sampled:J}){let Q=Z?LZ(Z):void 0,$=new a1.TraceState,Y=Q?$.set(Mq,Q):$;return J===!1?Y.set(Rq,"1"):Y}function kp(){return Array.from(Rp)}function PK(Z){Rp.add(Z)}function Np(Z,J={}){let Q=b.trace.getSpan(Z);if(Q?.spanContext().isRemote){let K=Q.spanContext();return{dynamicSamplingContext:u0(Q),traceId:K.traceId,spanId:void 0,sampled:UJ(K)}}if(Q){let K=Q.spanContext();return{dynamicSamplingContext:u0(Q),traceId:K.traceId,spanId:K.spanId,sampled:UJ(K)}}let $=J.scope||wJ(Z)?.scope||i(),Y=J.client||k(),X=$.getPropagationContext();return{dynamicSamplingContext:Y?p9(Y,$):void 0,traceId:X.traceId,spanId:X.propagationSpanId,sampled:X.sampled}}function Ap(Z,{sentryTrace:J,baggage:Q}){let $=d7(J,Q),{traceId:Y,parentSpanId:X,sampled:W,dsc:K}=$,z=k(),G=O9(Q);if(!X||z&&!dQ(z,G?.org_id))return Z;let H=UA0({traceId:Y,spanId:X,sampled:W,dsc:K});return b.trace.setSpanContext(Z,H)}function BA0(Z,J,Q){let $=Ip(Ap(Z,J));return b.context.with($,Q)}function Ip(Z){let J=wJ(Z),Q={scope:J?J.scope:i().clone(),isolationScope:J?J.isolationScope:x()};return Dp(Z,Q)}function VA0(Z){try{let J=Z[Uq];return Array.isArray(J)?J.join(","):J}catch{return}}function FA0(Z){let J=v(Z).data,Q=J[t.SEMATTRS_HTTP_URL]||J[t.ATTR_URL_FULL];if(typeof Q==="string")return Q;let $=Z.spanContext().traceState?.get(wp);if($)return $;return}function UA0({spanId:Z,traceId:J,sampled:Q,dsc:$}){let Y=Mp({dsc:$,sampled:Q});return{traceId:J,spanId:Z,isRemote:!0,traceFlags:Q?b.TraceFlags.SAMPLED:b.TraceFlags.NONE,traceState:Y}}function Tp(Z,J,Q){let $=fp(),{name:Y,parentSpan:X}=Z;return hp(X)(()=>{let K=Sp(Z.scope,Z.forceTransaction),G=Z.onlyIfParent&&!b.trace.getSpan(K)?a1.suppressTracing(K):K,H=yp(Z);if(!P0()){let B=a1.isTracingSuppressed(G)?G:a1.suppressTracing(G);return b.context.with(B,()=>{return $.startActiveSpan(Y,H,B,(V)=>{return b.context.with(K,()=>{return L9(()=>J(V),()=>{if(v(V).status===void 0)V.setStatus({code:b.SpanStatusCode.ERROR})},Q?()=>V.end():void 0)})})})}return $.startActiveSpan(Y,H,G,(B)=>{return L9(()=>J(B),()=>{if(v(B).status===void 0)B.setStatus({code:b.SpanStatusCode.ERROR})},Q?()=>B.end():void 0)})})}function qA0(Z,J){return Tp(Z,J,!0)}function wA0(Z,J){return Tp(Z,(Q)=>J(Q,()=>Q.end()),!1)}function jA0(Z){let J=fp(),{name:Q,parentSpan:$}=Z;return hp($)(()=>{let X=Sp(Z.scope,Z.forceTransaction),K=Z.onlyIfParent&&!b.trace.getSpan(X)?a1.suppressTracing(X):X,z=yp(Z);if(!P0())K=a1.isTracingSuppressed(K)?K:a1.suppressTracing(K);return J.startSpan(Q,z,K)})}function Ep(Z,J){let Q=Z?b.trace.setSpan(b.context.active(),Z):b.trace.deleteSpan(b.context.active());return b.context.with(Q,()=>J(i()))}function fp(){return k()?.tracer||b.trace.getTracer("@sentry/opentelemetry",e)}function yp(Z){let{startTime:J,attributes:Q,kind:$,op:Y,links:X}=Z,W=typeof J==="number"?DA0(J):J;return{attributes:Y?{[g]:Y,...Q}:Q,kind:$,links:X,startTime:W}}function DA0(Z){return Z<9999999999?Z*1000:Z}function Sp(Z,J){let Q=OA0(Z),$=b.trace.getSpan(Q);if(!$)return Q;if(!J)return Q;let Y=b.trace.deleteSpan(Q),{spanId:X,traceId:W}=$.spanContext(),K=UJ($.spanContext()),z=D0($),G=u0(z),H=Mp({dsc:G,sampled:K}),B={traceId:W,spanId:X,isRemote:!0,traceFlags:K?b.TraceFlags.SAMPLED:b.TraceFlags.NONE,traceState:H};return b.trace.setSpanContext(Y,B)}function OA0(Z){if(Z){let J=Y$(Z);if(J)return J}return b.context.active()}function LA0(Z,J){return BA0(b.context.active(),Z,J)}function _p(Z,J){let Q=Y$(J),$=Q&&b.trace.getSpan(Q),Y=$?MZ($):x7(J);return[$?u0($):p9(Z,J),Y]}function hp(Z){return Z!==void 0?(J)=>{return Ep(Z,J)}:(J)=>J()}function CA0(Z){let J=a1.suppressTracing(b.context.active());return b.context.with(J,Z)}function bp(Z){Z.on("preprocessEvent",(J)=>{let Q=Pp();if(!Q||J.type==="transaction")return;J.contexts={trace:MZ(Q),...J.contexts};let $=D0(Q);return J.sdkProcessingMetadata={dynamicSamplingContext:u0($),...J.sdkProcessingMetadata},J})}function PA0({span:Z,scope:J,client:Q,propagateTraceparent:$}={}){let Y=(J&&Y$(J))??G6.context.active();if(Z){let{scope:H}=q9(Z);Y=H&&Y$(H)||G6.trace.setSpan(G6.context.active(),Z)}let{traceId:X,spanId:W,sampled:K,dynamicSamplingContext:z}=Np(Y,{scope:J,client:Q}),G={"sentry-trace":CZ(X,W,K),baggage:LZ(z)};if($)G.traceparent=PZ(X,W,K);return G}function vp(){function Z(){let K=G6.context.active(),z=wJ(K);if(z)return z;return{scope:q4(),isolationScope:X6()}}function J(K){let z=G6.context.active();return G6.context.with(z,()=>{return K(X())})}function Q(K,z){let G=Y$(K)||G6.context.active();return G6.context.with(G.setValue(wq,K),()=>{return z(K)})}function $(K){let z=G6.context.active();return G6.context.with(z.setValue(qq,!0),()=>{return K(W())})}function Y(K,z){let G=G6.context.active();return G6.context.with(G.setValue(jq,K),()=>{return z(W())})}function X(){return Z().scope}function W(){return Z().isolationScope}VV({withScope:J,withSetScope:Q,withSetIsolationScope:Y,withIsolationScope:$,getCurrentScope:X,getIsolationScope:W,startSpan:qA0,startSpanManual:wA0,startInactiveSpan:jA0,getActiveSpan:Pp,suppressTracing:CA0,getTraceData:PA0,continueTrace:LA0,withActiveSpan:Ep})}function xp(Z){class J extends Z{constructor(...Q){super(...Q);PK("SentryContextManager")}with(Q,$,Y,...X){let W=wJ(Q),K=W?.scope||i(),z=W?.isolationScope||x(),G=Q.getValue(qq)===!0,H=Q.getValue(wq),B=Q.getValue(jq),V=H||K.clone(),F=B||(G?z.clone():z),D=Dp(Q,{scope:V,isolationScope:F}).deleteValue(qq).deleteValue(wq).deleteValue(jq);return WA0(V,D),super.with(D,$,Y,...X)}getAsyncLocalStorageLookup(){return{asyncLocalStorage:this._asyncLocalStorage,contextSymbol:kq}}}return J}function MA0(Z){let J=new Map;for(let Q of Z)RA0(J,Q);return Array.from(J,function([Q,$]){return $})}function gp(Z){return Z.attributes[Lq]!==!0?Cq(Z):void 0}function RA0(Z,J){let Q=J.spanContext().spanId,$=gp(J);if(!$){Dq(Z,{id:Q,span:J,children:[]});return}let Y=kA0(Z,$),X=Dq(Z,{id:Q,span:J,parentNode:Y,children:[]});Y.children.push(X)}function kA0(Z,J){let Q=Z.get(J);if(Q)return Q;return Dq(Z,{id:J,children:[]})}function Dq(Z,J){let Q=Z.get(J.id);if(Q?.span)return Q;if(Q&&!Q.span)return Q.span=J.span,Q.parentNode=J.parentNode,Q;return Z.set(J.id,J),J}function cp(Z){let J=Pq(Z)?Z.attributes:{},Q=JA0(Z)?Z.status:void 0;if(Q){if(Q.code===b.SpanStatusCode.OK)return{code:UZ};else if(Q.code===b.SpanStatusCode.ERROR){if(typeof Q.message>"u"){let Y=Vp(J);if(Y)return Y}if(Q.message&&NA0(Q.message))return{code:a,message:Q.message};else return{code:a,message:"internal_error"}}}let $=Vp(J);if($)return $;if(Q?.code===b.SpanStatusCode.UNSET)return{code:UZ};else return{code:a,message:"unknown_error"}}function Vp(Z){let J=Z[t.ATTR_HTTP_RESPONSE_STATUS_CODE]||Z[t.SEMATTRS_HTTP_STATUS_CODE],Q=Z[t.SEMATTRS_RPC_GRPC_STATUS_CODE],$=typeof J==="number"?J:typeof J==="string"?parseInt(J):void 0;if(typeof $==="number")return D6($);if(typeof Q==="string")return{code:a,message:dp[Q]||"unknown_error"};return}class mp{constructor(Z){this._finishedSpanBucketSize=Z?.timeout||Up,this._finishedSpanBuckets=Array(this._finishedSpanBucketSize).fill(void 0),this._lastCleanupTimestampInS=Math.floor(l6()/1000),this._spansToBucketEntry=new WeakMap,this._sentSpans=new Map,this._debouncedFlush=qF(this.flush.bind(this),1,{maxWait:100})}export(Z){let J=Math.floor(l6()/1000);if(this._lastCleanupTimestampInS!==J){let X=0;if(this._finishedSpanBuckets.forEach((W,K)=>{if(W&&W.timestampInS<=J-this._finishedSpanBucketSize)X+=W.spans.size,this._finishedSpanBuckets[K]=void 0}),X>0)iZ&&O.log(`SpanExporter dropped ${X} spans because they were pending for more than ${this._finishedSpanBucketSize} seconds.`);this._lastCleanupTimestampInS=J}let Q=J%this._finishedSpanBucketSize,$=this._finishedSpanBuckets[Q]||{timestampInS:J,spans:new Set};this._finishedSpanBuckets[Q]=$,$.spans.add(Z),this._spansToBucketEntry.set(Z,$);let Y=gp(Z);if(!Y||this._sentSpans.has(Y))this._debouncedFlush()}flush(){let Z=this._finishedSpanBuckets.flatMap((X)=>X?Array.from(X.spans):[]);this._flushSentSpanCache();let J=this._maybeSend(Z),Q=J.size,$=Z.length-Q;iZ&&O.log(`SpanExporter exported ${Q} spans, ${$} spans are waiting for their parent spans to finish`);let Y=l6()+Up*1000;for(let X of J){this._sentSpans.set(X.spanContext().spanId,Y);let W=this._spansToBucketEntry.get(X);if(W)W.spans.delete(X)}this._debouncedFlush.cancel()}clear(){this._finishedSpanBuckets=this._finishedSpanBuckets.fill(void 0),this._sentSpans.clear(),this._debouncedFlush.cancel()}_maybeSend(Z){let J=MA0(Z),Q=new Set,$=this._getCompletedRootNodes(J);for(let Y of $){let X=Y.span;Q.add(X);let W=IA0(X);if(Y.parentNode&&this._sentSpans.has(Y.parentNode.id)){let G=W.contexts?.trace?.data;if(G)G["sentry.parent_span_already_sent"]=!0}let K=W.spans||[];for(let G of Y.children)Oq(G,K,Q);W.spans=K.length>Fp?K.sort((G,H)=>G.start_timestamp-H.start_timestamp).slice(0,Fp):K;let z=i7(X.events);if(z)W.measurements=z;r7(W)}return Q}_flushSentSpanCache(){let Z=l6();for(let[J,Q]of this._sentSpans.entries())if(Q<=Z)this._sentSpans.delete(J)}_nodeIsCompletedRootNodeOrHasSentParent(Z){return!!Z.span&&(!Z.parentNode||this._sentSpans.has(Z.parentNode.id))}_getCompletedRootNodes(Z){return Z.filter((J)=>this._nodeIsCompletedRootNodeOrHasSentParent(J))}}function AA0(Z){let J=Z.attributes,Q=J[f],$=J[g],Y=J[H0];return{origin:Q,op:$,source:Y}}function IA0(Z){let{op:J,description:Q,data:$,origin:Y="manual",source:X}=up(Z),W=q9(Z),K=Z.attributes[W6],z={[H0]:X,[W6]:K,[g]:J,[f]:Y,...$,...lp(Z.attributes)},{links:G}=Z,{traceId:H,spanId:B}=Z.spanContext(),V=Cq(Z),F=cp(Z),U={parent_span_id:V,span_id:B,trace_id:H,data:z,origin:Y,op:J,status:u7(F),links:m7(G)},w=z[t.ATTR_HTTP_RESPONSE_STATUS_CODE],D=typeof w==="number"?{response:{status_code:w}}:void 0;return{contexts:{trace:U,otel:{resource:Z.resource.attributes},...D},spans:[],start_timestamp:K6(Z.startTime),timestamp:K6(Z.endTime),transaction:Q,type:"transaction",sdkProcessingMetadata:{capturedSpanScope:W.scope,capturedSpanIsolationScope:W.isolationScope,sampleRate:K,dynamicSamplingContext:u0(Z)},...X&&{transaction_info:{source:X}}}}function Oq(Z,J,Q){let $=Z.span;if($)Q.add($);if(!$){Z.children.forEach((R)=>{Oq(R,J,Q)});return}let X=$.spanContext().spanId,W=$.spanContext().traceId,K=Cq($),{attributes:z,startTime:G,endTime:H,links:B}=$,{op:V,description:F,data:U,origin:w="manual"}=up($),D={[f]:w,[g]:V,...lp(z),...U},L=cp($),C={span_id:X,trace_id:W,data:D,description:F,parent_span_id:K,start_timestamp:K6(G),timestamp:K6(H)||void 0,status:u7(L),op:V,origin:w,measurements:i7($.events),links:m7(B)};J.push(C),Z.children.forEach((R)=>{Oq(R,J,Q)})}function up(Z){let{op:J,source:Q,origin:$}=AA0(Z),{op:Y,description:X,source:W,data:K}=Lp(Z),z=J||Y,G=Q||W,H={...K,...TA0(Z)};return{op:z,description:X,source:G,origin:$,data:H}}function lp(Z){let J={...Z};return delete J[W6],delete J[Lq],delete J[L6],J}function TA0(Z){let J=Z.attributes,Q={};if(Z.kind!==b.SpanKind.INTERNAL)Q["otel.kind"]=b.SpanKind[Z.kind];let $=J[t.SEMATTRS_HTTP_STATUS_CODE];if($)Q[t.ATTR_HTTP_RESPONSE_STATUS_CODE]=$;let Y=QA0(Z);if(Y.url)Q.url=Y.url;if(Y["http.query"])Q["http.query"]=Y["http.query"].slice(1);if(Y["http.fragment"])Q["http.fragment"]=Y["http.fragment"].slice(1);return Q}function EA0(Z,J){let Q=b.trace.getSpan(J),$=wJ(J);if(Q&&!Q.spanContext().isRemote)M4(Q,Z);if(Q?.spanContext().isRemote)Z.setAttribute(Lq,!0);if(J===b.ROOT_CONTEXT)$={scope:q4(),isolationScope:X6()};if($)hQ(Z,$.scope,$.isolationScope);iQ(Z),k()?.emit("spanStart",Z)}function fA0(Z){oQ(Z),k()?.emit("spanEnd",Z)}class Aq{constructor(Z){PK("SentrySpanProcessor"),this._exporter=new mp(Z)}async forceFlush(){this._exporter.flush()}async shutdown(){this._exporter.clear()}onStart(Z,J){EA0(Z,J)}onEnd(Z){fA0(Z),this._exporter.export(Z)}}class Iq{constructor(Z){this._client=Z,PK("SentrySampler")}shouldSample(Z,J,Q,$,Y,X){let W=this._client.getOptions(),K=_A0(Z),z=K?.spanContext();if(!P0(W))return FJ({decision:void 0,context:Z,spanAttributes:Y});let G=Y[t.SEMATTRS_HTTP_METHOD]||Y[t.ATTR_HTTP_REQUEST_METHOD];if($===b.SpanKind.CLIENT&&G&&(!K||z?.isRemote))return FJ({decision:void 0,context:Z,spanAttributes:Y});let H=K?yA0(K,J,Q):void 0;if(!(!K||z?.isRemote))return FJ({decision:H?b0.RECORD_AND_SAMPLED:b0.NOT_RECORD,context:Z,spanAttributes:Y});let{description:V,data:F,op:U}=Op(Q,Y,$),w={...F,...Y};if(U)w[g]=U;let D={decision:!0};if(this._client.emit("beforeSampling",{spanAttributes:w,spanName:V,parentSampled:H,parentContext:z},D),!D.decision)return FJ({decision:void 0,context:Z,spanAttributes:Y});let{isolationScope:L}=wJ(Z)??{},C=z?.traceState?z.traceState.get(Mq):void 0,R=C?O9(C):void 0,T=C6(R?.sample_rand)??W1(),[S,m,l]=nQ(W,{name:V,attributes:w,normalizedRequest:L?.getScopeData().sdkProcessingMetadata.normalizedRequest,parentSampled:H,parentSampleRate:C6(R?.sample_rate)},T),y0=`${G}`.toUpperCase();if(y0==="OPTIONS"||y0==="HEAD")return iZ&&O.log(`[Tracing] Not sampling span because HTTP method is '${y0}' for ${Q}`),FJ({decision:b0.NOT_RECORD,context:Z,spanAttributes:Y,sampleRand:T,downstreamTraceSampleRate:0});if(!S&&H===void 0)iZ&&O.log("[Tracing] Discarding root span because its trace was not chosen to be sampled."),this._client.recordDroppedEvent("sample_rate","transaction");return{...FJ({decision:S?b0.RECORD_AND_SAMPLED:b0.NOT_RECORD,context:Z,spanAttributes:Y,sampleRand:T,downstreamTraceSampleRate:l?m:void 0}),attributes:{[W6]:l?m:void 0}}}toString(){return"SentrySampler"}}function yA0(Z,J,Q){let $=Z.spanContext();if(b.isSpanContextValid($)&&$.traceId===J){if($.isRemote){let X=UJ(Z.spanContext());return iZ&&O.log(`[Tracing] Inheriting remote parent's sampled decision for ${Q}: ${X}`),X}let Y=UJ($);return iZ&&O.log(`[Tracing] Inheriting parent's sampled decision for ${Q}: ${Y}`),Y}return}function FJ({decision:Z,context:J,spanAttributes:Q,sampleRand:$,downstreamTraceSampleRate:Y}){let X=SA0(J,Q);if(Y!==void 0)X=X.set(XA0,`${Y}`);if($!==void 0)X=X.set(YA0,`${$}`);if(Z==null)return{decision:b0.NOT_RECORD,traceState:X};if(Z===b0.NOT_RECORD)return{decision:Z,traceState:X.set(Rq,"1")};return{decision:Z,traceState:X}}function SA0(Z,J){let Y=b.trace.getSpan(Z)?.spanContext()?.traceState||new a1.TraceState,X=J[t.SEMATTRS_HTTP_URL]||J[t.ATTR_URL_FULL];if(X&&typeof X==="string")Y=Y.set(wp,X);return Y}function _A0(Z){let J=b.trace.getSpan(Z);return J&&b.isSpanContextValid(J.spanContext())?J:void 0}var t,G6,b,a1,Lq="sentry.parentIsRemote",qJ="sentry.graphql.operation",Fq="sentry-trace",Uq="baggage",Mq="sentry.dsc",Rq="sentry.sampled_not_recording",wp="sentry.url",YA0="sentry.sample_rand",XA0="sentry.sample_rate",kq,qq,wq,jq,jp="_scopeContext",iZ,Rp,Nq,dp,NA0=(Z)=>{return Object.values(dp).includes(Z)},Fp=1000,Up=300;var jJ=q(()=>{N();Vq();t=A(Y0(),1),G6=A(I(),1),b=A(I(),1),a1=A(R0(),1);kq=b.createContextKey("sentry_scopes"),qq=b.createContextKey("sentry_fork_isolation_scope"),wq=b.createContextKey("sentry_fork_set_scope"),jq=b.createContextKey("sentry_fork_set_isolation_scope");iZ=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;Rp=new Set;Nq=class Nq extends a1.W3CBaggagePropagator{constructor(){super();PK("SentryPropagator"),this._urlMatchesTargetsMap=new I6(100)}inject(Z,J,Q){if(a1.isTracingSuppressed(Z)){iZ&&O.log("[Tracing] Not injecting trace data for url because tracing is suppressed.");return}let $=b.trace.getSpan(Z),Y=$&&FA0($),{tracePropagationTargets:X,propagateTraceparent:W}=k()?.getOptions()||{};if(!Y5(Y,X,this._urlMatchesTargetsMap)){iZ&&O.log("[Tracing] Not injecting trace data for url because it does not match tracePropagationTargets:",Y);return}let K=VA0(J),z=b.propagation.getBaggage(Z)||b.propagation.createBaggage({}),{dynamicSamplingContext:G,traceId:H,spanId:B,sampled:V}=Np(Z);if(K){let F=g7(K);if(F)Object.entries(F).forEach(([U,w])=>{z=z.setEntry(U,{value:w})})}if(G)z=Object.entries(G).reduce((F,[U,w])=>{if(w)return F.setEntry(`${L4}${U}`,{value:w});return F},z);if(H&&H!==b.INVALID_TRACEID){if(Q.set(J,Fq,CZ(H,B,V)),W)Q.set(J,"traceparent",PZ(H,B,V))}super.inject(b.propagation.setBaggage(Z,z),J,Q)}extract(Z,J,Q){let $=Q.get(J,Fq),Y=Q.get(J,Uq),X=$?Array.isArray($)?$[0]:$:void 0;return Ip(Ap(Z,{sentryTrace:X,baggage:Y}))}fields(){return[Fq,Uq,"traceparent"]}};dp={"1":"cancelled","2":"unknown_error","3":"invalid_argument","4":"deadline_exceeded","5":"not_found","6":"already_exists","7":"permission_denied","8":"resource_exhausted","9":"failed_precondition","10":"aborted","11":"out_of_range","12":"unimplemented","13":"internal_error","14":"unavailable","15":"data_loss","16":"unauthenticated"}});var pp,MK;var ip=q(()=>{jJ();pp=A(gl(),1),MK=xp(pp.AsyncLocalStorageContextManager)});function Tq(){X$.diag.disable(),X$.diag.setLogger({error:O.error,warn:O.warn,info:O.log,debug:O.log,verbose:O.log},X$.DiagLogLevel.DEBUG)}var X$;var op=q(()=>{N();X$=A(I(),1)});function y(Z,J,Q){if(Q)return bA0(Z,J,Q);return hA0(Z,J)}function hA0(Z,J){return Object.assign((Q)=>{let $=W$[Z];if($){if(Q)$.setConfig(Q);return $}let Y=J(Q);return W$[Z]=Y,Eq.registerInstrumentations({instrumentations:[Y]}),Y},{id:Z})}function bA0(Z,J,Q){return Object.assign(($)=>{let Y=Q($),X=W$[Z];if(X)return X.setConfig(Y),X;let W=new J(Y);return W$[Z]=W,Eq.registerInstrumentations({instrumentations:[W]}),W},{id:Z})}function u8(Z){let J=!1,Q=[];if(!vA0(Z))J=!0;else{let Y=Z._wrap;Z._wrap=(...X)=>{return J=!0,Q.forEach((W)=>W()),Q=[],Y(...X)}}return(Y)=>{if(J)Y();else Q.push(Y)}}function vA0(Z){return typeof Z._wrap==="function"}var Eq,W$;var RK=q(()=>{Eq=A(n(),1),W$={}});import*as fq from"diagnostics_channel";function gA0(Z,J){let Q=!1,$;Z.on("spawn",()=>{if(Z.spawnfile==="/usr/bin/sw_vers"){Q=!0;return}if($={spawnfile:Z.spawnfile},J.includeChildProcessArgs)$.spawnargs=Z.spawnargs}).on("exit",(Y)=>{if(!Q){if(Q=!0,Y!==null&&Y!==0)N1({category:"child_process",message:`Child process exited with code '${Y}'`,level:Y===0?"info":"warning",data:$})}}).on("error",(Y)=>{if(!Q)Q=!0,N1({category:"child_process",message:`Child process errored with '${Y.message}'`,level:"error",data:$})})}function dA0(Z,J){let Q;Z.on("online",()=>{Q=Z.threadId}).on("error",($)=>{if(J.captureWorkerErrors!==!1)_($,{mechanism:{type:"auto.child_process.worker_thread",handled:!1,data:{threadId:String(Q)}}});else N1({category:"worker_thread",message:`Worker thread errored with '${$.message}'`,level:"error",data:{threadId:Q}})})}var xA0="ChildProcess",yq;var np=q(()=>{N();yq=P((Z={})=>{return{name:xA0,setup(){fq.channel("child_process").subscribe((J)=>{if(J&&typeof J==="object"&&"process"in J)gA0(J.process,Z)}),fq.channel("worker_threads").subscribe((J)=>{if(J&&typeof J==="object"&&"worker"in J)dA0(J.worker,Z)})}}})});import{execFile as cA0}from"child_process";import{readFile as mA0,readdir as uA0}from"fs";import*as C1 from"os";import{join as lA0}from"path";import{promisify as sp}from"util";function aA0(Z){if(Z.app?.app_memory)Z.app.app_memory=process.memoryUsage().rss;if(Z.app?.free_memory&&typeof process.availableMemory==="function"){let J=process.availableMemory?.();if(J!=null)Z.app.free_memory=J}if(Z.device?.free_memory)Z.device.free_memory=C1.freemem();return Z}async function sA0(){let Z=C1.platform();switch(Z){case"darwin":return $I0();case"linux":return YI0();default:return{name:ZI0[Z]||Z,version:C1.release()}}}function rA0(){try{if(typeof process.versions.icu!=="string")return;let Z=new Date(900000000);if(new Intl.DateTimeFormat("es",{month:"long"}).format(Z)==="enero"){let Q=Intl.DateTimeFormat().resolvedOptions();return{locale:Q.locale,timezone:Q.timeZone}}}catch{}return}function tA0(){let Z=process.memoryUsage().rss,Q={app_start_time:new Date(Date.now()-process.uptime()*1000).toISOString(),app_memory:Z};if(typeof process.availableMemory==="function"){let $=process.availableMemory?.();if($!=null)Q.free_memory=$}return Q}function eA0(Z){let J={},Q;try{Q=C1.uptime()}catch{}if(typeof Q==="number")J.boot_time=new Date(Date.now()-Q*1000).toISOString();if(J.arch=C1.arch(),Z===!0||Z.memory)J.memory_size=C1.totalmem(),J.free_memory=C1.freemem();if(Z===!0||Z.cpu){let $=C1.cpus(),Y=$?.[0];if(Y)J.processor_count=$.length,J.cpu_description=Y.model,J.processor_frequency=Y.speed}return J}function e9(Z,J){let Q=Z.exec(J);return Q?Q[1]:void 0}async function $I0(){let Z={kernel_version:C1.release(),name:"Mac OS X",version:`10.${Number(C1.release().split(".")[0])-4}`};try{let J=await new Promise((Q,$)=>{cA0("/usr/bin/sw_vers",(Y,X)=>{if(Y){$(Y);return}Q(X)})});Z.name=e9(/^ProductName:\s+(.*)$/m,J),Z.version=e9(/^ProductVersion:\s+(.*)$/m,J),Z.build=e9(/^BuildVersion:\s+(.*)$/m,J)}catch{}return Z}function ap(Z){return Z.split(" ")[0].toLowerCase()}async function YI0(){let Z={kernel_version:C1.release(),name:"Linux"};try{let J=await iA0("/etc"),Q=JI0.find((K)=>J.includes(K.name));if(!Q)return Z;let $=lA0("/etc",Q.name),Y=(await pA0($,{encoding:"utf-8"})).toLowerCase(),{distros:X}=Q;Z.name=X.find((K)=>Y.indexOf(ap(K))>=0)||X[0];let W=ap(Z.name);Z.version=QI0[W]?.(Y)}catch{}return Z}function XI0(){if(process.env.VERCEL)return{"cloud.provider":"vercel","cloud.region":process.env.VERCEL_REGION};else if(process.env.AWS_REGION)return{"cloud.provider":"aws","cloud.region":process.env.AWS_REGION,"cloud.platform":process.env.AWS_EXECUTION_ENV};else if(process.env.GCP_PROJECT)return{"cloud.provider":"gcp"};else if(process.env.ALIYUN_REGION_ID)return{"cloud.provider":"alibaba_cloud","cloud.region":process.env.ALIYUN_REGION_ID};else if(process.env.WEBSITE_SITE_NAME&&process.env.REGION_NAME)return{"cloud.provider":"azure","cloud.region":process.env.REGION_NAME};else if(process.env.IBM_CLOUD_REGION)return{"cloud.provider":"ibm_cloud","cloud.region":process.env.IBM_CLOUD_REGION};else if(process.env.TENCENTCLOUD_REGION)return{"cloud.provider":"tencent_cloud","cloud.region":process.env.TENCENTCLOUD_REGION,"cloud.account.id":process.env.TENCENTCLOUD_APPID,"cloud.availability_zone":process.env.TENCENTCLOUD_ZONE};else if(process.env.NETLIFY)return{"cloud.provider":"netlify"};else if(process.env.FLY_REGION)return{"cloud.provider":"fly.io","cloud.region":process.env.FLY_REGION};else if(process.env.DYNO)return{"cloud.provider":"heroku"};else return}var pA0,iA0,oA0="Context",nA0=(Z={})=>{let J,Q={app:!0,os:!0,device:!0,culture:!0,cloudResource:!0,...Z};async function $(X){if(J===void 0)J=Y();let W=aA0(await J);return X.contexts={...X.contexts,app:{...W.app,...X.contexts?.app},os:{...W.os,...X.contexts?.os},device:{...W.device,...X.contexts?.device},culture:{...W.culture,...X.contexts?.culture},cloud_resource:{...W.cloud_resource,...X.contexts?.cloud_resource}},X}async function Y(){let X={};if(Q.os)X.os=await sA0();if(Q.app)X.app=tA0();if(Q.device)X.device=eA0(Q.device);if(Q.culture){let W=rA0();if(W)X.culture=W}if(Q.cloudResource)X.cloud_resource=XI0();return X}return{name:oA0,processEvent(X){return $(X)}}},oZ,ZI0,JI0,QI0;var Sq=q(()=>{N();pA0=sp(mA0),iA0=sp(uA0),oZ=P(nA0);ZI0={aix:"IBM AIX",freebsd:"FreeBSD",openbsd:"OpenBSD",sunos:"SunOS",win32:"Windows",ohos:"OpenHarmony",android:"Android"},JI0=[{name:"fedora-release",distros:["Fedora"]},{name:"redhat-release",distros:["Red Hat Linux","Centos"]},{name:"redhat_version",distros:["Red Hat Linux"]},{name:"SuSE-release",distros:["SUSE Linux"]},{name:"lsb-release",distros:["Ubuntu Linux","Arch Linux"]},{name:"debian_version",distros:["Debian"]},{name:"debian_release",distros:["Debian"]},{name:"arch-release",distros:["Arch Linux"]},{name:"gentoo-release",distros:["Gentoo Linux"]},{name:"novell-release",distros:["SUSE Linux"]},{name:"alpine-release",distros:["Alpine Linux"]}],QI0={alpine:(Z)=>Z,arch:(Z)=>e9(/distrib_release=(.*)/,Z),centos:(Z)=>e9(/release ([^ ]+)/,Z),debian:(Z)=>Z,fedora:(Z)=>e9(/release (..)/,Z),mint:(Z)=>e9(/distrib_release=(.*)/,Z),red:(Z)=>e9(/release ([^ ]+)/,Z),suse:(Z)=>e9(/VERSION = (.*)\n/,Z),ubuntu:(Z)=>e9(/distrib_release=(.*)/,Z)}});import{createReadStream as WI0}from"fs";import{createInterface as KI0}from"readline";function VI0(Z,J,Q){let $=Z.get(J);if($===void 0)return Z.set(J,Q),Q;return $}function FI0(Z){if(Z.startsWith("node:"))return!0;if(Z.endsWith(".min.js"))return!0;if(Z.endsWith(".min.cjs"))return!0;if(Z.endsWith(".min.mjs"))return!0;if(Z.startsWith("data:"))return!0;return!1}function UI0(Z){if(Z.lineno!==void 0&&Z.lineno>BI0)return!0;if(Z.colno!==void 0&&Z.colno>HI0)return!0;return!1}function qI0(Z,J){let Q=_q.get(Z);if(Q===void 0)return!1;for(let $=J[0];$<=J[1];$++)if(Q[$]===void 0)return!1;return!0}function wI0(Z,J){if(!Z.length)return[];let Q=0,$=Z[0];if(typeof $!=="number")return[];let Y=tp($,J),X=[];while(!0){if(Q===Z.length-1){X.push(Y);break}let W=Z[Q+1];if(typeof W!=="number")break;if(W<=Y[1])Y[1]=W+J;else X.push(Y),Y=tp(W,J);Q++}return X}function jI0(Z,J,Q){return new Promise(($,Y)=>{let X=WI0(Z),W=KI0({input:X});function K(){X.destroy(),$()}let z=0,G=0,H=J[G];if(H===void 0){K();return}let B=H[0],V=H[1];function F(U){ep.set(Z,1),s&&O.error(`Failed to read file: ${Z}. Error: ${U}`),W.close(),W.removeAllListeners(),K()}X.on("error",F),W.on("error",F),W.on("close",K),W.on("line",(U)=>{if(z++,z<B)return;if(Q[z]=YV(U,0),z>=V){if(G===J.length-1){W.close(),W.removeAllListeners();return}G++;let w=J[G];if(w===void 0){W.close(),W.removeAllListeners();return}B=w[0],V=w[1]}})})}async function DI0(Z,J){let Q={};if(J>0&&Z.exception?.values)for(let X of Z.exception.values){if(!X.stacktrace?.frames?.length)continue;for(let W=X.stacktrace.frames.length-1;W>=0;W--){let K=X.stacktrace.frames[W],z=K?.filename;if(!K||typeof z!=="string"||typeof K.lineno!=="number"||FI0(z)||UI0(K))continue;if(!Q[z])Q[z]=[];Q[z].push(K.lineno)}}let $=Object.keys(Q);if($.length==0)return Z;let Y=[];for(let X of $){if(ep.get(X))continue;let W=Q[X];if(!W)continue;W.sort((G,H)=>G-H);let K=wI0(W,J);if(K.every((G)=>qI0(X,G)))continue;let z=VI0(_q,X,{});Y.push(jI0(X,K,z))}if(await Promise.all(Y).catch(()=>{s&&O.log("Failed to read one or more source files and resolve context lines")}),J>0&&Z.exception?.values){for(let X of Z.exception.values)if(X.stacktrace?.frames&&X.stacktrace.frames.length>0)OI0(X.stacktrace.frames,J,_q)}return Z}function OI0(Z,J,Q){for(let $ of Z)if($.filename&&$.context_line===void 0&&typeof $.lineno==="number"){let Y=Q.get($.filename);if(Y===void 0)continue;LI0($.lineno,$,J,Y)}}function rp(Z){delete Z.pre_context,delete Z.context_line,delete Z.post_context}function LI0(Z,J,Q,$){if(J.lineno===void 0||$===void 0){s&&O.error("Cannot resolve context for frame with no lineno or file contents");return}J.pre_context=[];for(let X=Zi(Z,Q);X<Z;X++){let W=$[X];if(W===void 0){rp(J),s&&O.error(`Could not find line ${X} in file ${J.filename}`);return}J.pre_context.push(W)}if($[Z]===void 0){rp(J),s&&O.error(`Could not find line ${Z} in file ${J.filename}`);return}J.context_line=$[Z];let Y=Ji(Z,Q);J.post_context=[];for(let X=Z+1;X<=Y;X++){let W=$[X];if(W===void 0)break;J.post_context.push(W)}}function Zi(Z,J){return Math.max(1,Z-J)}function Ji(Z,J){return Z+J}function tp(Z,J){return[Zi(Z,J),Ji(Z,J)]}var _q,ep,zI0=7,GI0="ContextLines",HI0=1000,BI0=1e4,CI0=(Z={})=>{let J=Z.frameContextLines!==void 0?Z.frameContextLines:zI0;return{name:GI0,processEvent(Q){return DI0(Q,J)}}},nZ;var hq=q(()=>{N();e6();_q=new I6(10),ep=new I6(20);nZ=P(CI0)});var Qi="Http",PI0,$i;var Yi=q(()=>{N();RK();WK();oU();rU();PI0=y(`${Qi}.sentry`,(Z)=>{return new XJ(Z)}),$i=P((Z={})=>{let J={sessions:Z.trackIncomingRequestsAsSessions,sessionFlushingDelayMS:Z.sessionFlushingDelayMS,ignoreRequestBody:Z.ignoreIncomingRequestBody,maxRequestBodySize:Z.maxIncomingRequestBodySize},Q={ignoreIncomingRequests:Z.ignoreIncomingRequests,ignoreStaticAssets:Z.ignoreStaticAssets,ignoreStatusCodes:Z.dropSpansForIncomingRequestStatusCodes},$={breadcrumbs:Z.breadcrumbs,propagateTraceInOutgoingRequests:Z.tracePropagation??!0,ignoreOutgoingRequests:Z.ignoreOutgoingRequests},Y=lZ(J),X=pZ(Q),W=Z.spans??!1,K=Z.disableIncomingRequestSpans??!1,z=W&&!K;return{name:Qi,setup(G){if(z)X.setup(G)},setupOnce(){Y.setupOnce(),PI0($)},processEvent(G){return X.processEvent(G)}}})});async function DJ(){if(kK===void 0)try{kK=!!(await import("inspector")).url()}catch{kK=!1}return kK}var kK;var NK=()=>{};function Wi(Z,J,Q){let $=0,Y=5,X=0;return setInterval(()=>{if(X===0){if($>Z){if(Y*=2,Q(Y),Y>86400)Y=86400;X=Y}}else if(X-=1,X===0)J();$=0},1000).unref(),()=>{$+=1}}function Xi(Z){return Z!==void 0&&(Z.length===0||Z==="?"||Z==="<anonymous>")}function AK(Z,J){return Z===J||`Object.${Z}`===J||Z===`Object.${J}`||Xi(Z)&&Xi(J)}var K$="__SENTRY_ERROR_LOCAL_VARIABLES__";var bq=()=>{};import{Worker as MI0}from"worker_threads";function Ki(...Z){O.log("[LocalVariables]",...Z)}var RI0="LyohIEBzZW50cnkvbm9kZS1jb3JlIDEwLjQ2LjAgKGU1ZmRjOWQpIHwgaHR0cHM6Ly9naXRodWIuY29tL2dldHNlbnRyeS9zZW50cnktamF2YXNjcmlwdCAqLwppbXBvcnR7U2Vzc2lvbiBhcyBlfWZyb20ibm9kZTppbnNwZWN0b3IvcHJvbWlzZXMiO2ltcG9ydHt3b3JrZXJEYXRhIGFzIHR9ZnJvbSJub2RlOndvcmtlcl90aHJlYWRzIjtjb25zdCBuPWdsb2JhbFRoaXMsaT17fTtjb25zdCBvPSJfX1NFTlRSWV9FUlJPUl9MT0NBTF9WQVJJQUJMRVNfXyI7Y29uc3QgYT10O2Z1bmN0aW9uIHMoLi4uZSl7YS5kZWJ1ZyYmZnVuY3Rpb24oZSl7aWYoISgiY29uc29sZSJpbiBuKSlyZXR1cm4gZSgpO2NvbnN0IHQ9bi5jb25zb2xlLG89e30sYT1PYmplY3Qua2V5cyhpKTthLmZvckVhY2goZT0+e2NvbnN0IG49aVtlXTtvW2VdPXRbZV0sdFtlXT1ufSk7dHJ5e3JldHVybiBlKCl9ZmluYWxseXthLmZvckVhY2goZT0+e3RbZV09b1tlXX0pfX0oKCk9PmNvbnNvbGUubG9nKCJbTG9jYWxWYXJpYWJsZXMgV29ya2VyXSIsLi4uZSkpfWFzeW5jIGZ1bmN0aW9uIGMoZSx0LG4saSl7Y29uc3Qgbz1hd2FpdCBlLnBvc3QoIlJ1bnRpbWUuZ2V0UHJvcGVydGllcyIse29iamVjdElkOnQsb3duUHJvcGVydGllczohMH0pO2lbbl09by5yZXN1bHQuZmlsdGVyKGU9PiJsZW5ndGgiIT09ZS5uYW1lJiYhaXNOYU4ocGFyc2VJbnQoZS5uYW1lLDEwKSkpLnNvcnQoKGUsdCk9PnBhcnNlSW50KGUubmFtZSwxMCktcGFyc2VJbnQodC5uYW1lLDEwKSkubWFwKGU9PmUudmFsdWU/LnZhbHVlKX1hc3luYyBmdW5jdGlvbiByKGUsdCxuLGkpe2NvbnN0IG89YXdhaXQgZS5wb3N0KCJSdW50aW1lLmdldFByb3BlcnRpZXMiLHtvYmplY3RJZDp0LG93blByb3BlcnRpZXM6ITB9KTtpW25dPW8ucmVzdWx0Lm1hcChlPT5bZS5uYW1lLGUudmFsdWU/LnZhbHVlXSkucmVkdWNlKChlLFt0LG5dKT0+KGVbdF09bixlKSx7fSl9ZnVuY3Rpb24gdShlLHQpe2UudmFsdWUmJigidmFsdWUiaW4gZS52YWx1ZT92b2lkIDA9PT1lLnZhbHVlLnZhbHVlfHxudWxsPT09ZS52YWx1ZS52YWx1ZT90W2UubmFtZV09YDwke2UudmFsdWUudmFsdWV9PmA6dFtlLm5hbWVdPWUudmFsdWUudmFsdWU6ImRlc2NyaXB0aW9uImluIGUudmFsdWUmJiJmdW5jdGlvbiIhPT1lLnZhbHVlLnR5cGU/dFtlLm5hbWVdPWA8JHtlLnZhbHVlLmRlc2NyaXB0aW9ufT5gOiJ1bmRlZmluZWQiPT09ZS52YWx1ZS50eXBlJiYodFtlLm5hbWVdPSI8dW5kZWZpbmVkPiIpKX1hc3luYyBmdW5jdGlvbiBsKGUsdCl7Y29uc3Qgbj1hd2FpdCBlLnBvc3QoIlJ1bnRpbWUuZ2V0UHJvcGVydGllcyIse29iamVjdElkOnQsb3duUHJvcGVydGllczohMH0pLGk9e307Zm9yKGNvbnN0IHQgb2Ygbi5yZXN1bHQpaWYodC52YWx1ZT8ub2JqZWN0SWQmJiJBcnJheSI9PT10LnZhbHVlLmNsYXNzTmFtZSl7Y29uc3Qgbj10LnZhbHVlLm9iamVjdElkO2F3YWl0IGMoZSxuLHQubmFtZSxpKX1lbHNlIGlmKHQudmFsdWU/Lm9iamVjdElkJiYiT2JqZWN0Ij09PXQudmFsdWUuY2xhc3NOYW1lKXtjb25zdCBuPXQudmFsdWUub2JqZWN0SWQ7YXdhaXQgcihlLG4sdC5uYW1lLGkpfWVsc2UgdC52YWx1ZSYmdSh0LGkpO3JldHVybiBpfWxldCBmOyhhc3luYyBmdW5jdGlvbigpe2NvbnN0IHQ9bmV3IGU7dC5jb25uZWN0VG9NYWluVGhyZWFkKCkscygiQ29ubmVjdGVkIHRvIG1haW4gdGhyZWFkIik7bGV0IG49ITE7dC5vbigiRGVidWdnZXIucmVzdW1lZCIsKCk9PntuPSExfSksdC5vbigiRGVidWdnZXIucGF1c2VkIixlPT57bj0hMCxhc3luYyBmdW5jdGlvbihlLHtyZWFzb246dCxkYXRhOntvYmplY3RJZDpufSxjYWxsRnJhbWVzOml9KXtpZigiZXhjZXB0aW9uIiE9PXQmJiJwcm9taXNlUmVqZWN0aW9uIiE9PXQpcmV0dXJuO2lmKGY/LigpLG51bGw9PW4pcmV0dXJuO2NvbnN0IGE9W107Zm9yKGxldCB0PTA7dDxpLmxlbmd0aDt0Kyspe2NvbnN0e3Njb3BlQ2hhaW46bixmdW5jdGlvbk5hbWU6byx0aGlzOnN9PWlbdF0sYz1uLmZpbmQoZT0+ImxvY2FsIj09PWUudHlwZSkscj0iZ2xvYmFsIiE9PXMuY2xhc3NOYW1lJiZzLmNsYXNzTmFtZT9gJHtzLmNsYXNzTmFtZX0uJHtvfWA6bztpZih2b2lkIDA9PT1jPy5vYmplY3Qub2JqZWN0SWQpYVt0XT17ZnVuY3Rpb246cn07ZWxzZXtjb25zdCBuPWF3YWl0IGwoZSxjLm9iamVjdC5vYmplY3RJZCk7YVt0XT17ZnVuY3Rpb246cix2YXJzOm59fX1hd2FpdCBlLnBvc3QoIlJ1bnRpbWUuY2FsbEZ1bmN0aW9uT24iLHtmdW5jdGlvbkRlY2xhcmF0aW9uOmBmdW5jdGlvbigpIHsgdGhpcy4ke299ID0gdGhpcy4ke299IHx8ICR7SlNPTi5zdHJpbmdpZnkoYSl9OyB9YCxzaWxlbnQ6ITAsb2JqZWN0SWQ6bn0pLGF3YWl0IGUucG9zdCgiUnVudGltZS5yZWxlYXNlT2JqZWN0Iix7b2JqZWN0SWQ6bn0pfSh0LGUucGFyYW1zKS50aGVuKGFzeW5jKCk9PntuJiZhd2FpdCB0LnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpfSxhc3luYyBlPT57biYmYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5yZXN1bWUiKX0pfSksYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5lbmFibGUiKTtjb25zdCBpPSExIT09YS5jYXB0dXJlQWxsRXhjZXB0aW9ucztpZihhd2FpdCB0LnBvc3QoIkRlYnVnZ2VyLnNldFBhdXNlT25FeGNlcHRpb25zIix7c3RhdGU6aT8iYWxsIjoidW5jYXVnaHQifSksaSl7Y29uc3QgZT1hLm1heEV4Y2VwdGlvbnNQZXJTZWNvbmR8fDUwO2Y9ZnVuY3Rpb24oZSx0LG4pe2xldCBpPTAsbz01LGE9MDtyZXR1cm4gc2V0SW50ZXJ2YWwoKCk9PnswPT09YT9pPmUmJihvKj0yLG4obyksbz44NjQwMCYmKG89ODY0MDApLGE9byk6KGEtPTEsMD09PWEmJnQoKSksaT0wfSwxZTMpLnVucmVmKCksKCk9PntpKz0xfX0oZSxhc3luYygpPT57cygiUmF0ZS1saW1pdCBsaWZ0ZWQuIiksYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5zZXRQYXVzZU9uRXhjZXB0aW9ucyIse3N0YXRlOiJhbGwifSl9LGFzeW5jIGU9PntzKGBSYXRlLWxpbWl0IGV4Y2VlZGVkLiBEaXNhYmxpbmcgY2FwdHVyaW5nIG9mIGNhdWdodCBleGNlcHRpb25zIGZvciAke2V9IHNlY29uZHMuYCksYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5zZXRQYXVzZU9uRXhjZXB0aW9ucyIse3N0YXRlOiJ1bmNhdWdodCJ9KX0pfX0pKCkuY2F0Y2goZT0+e3MoIkZhaWxlZCB0byBzdGFydCBkZWJ1Z2dlciIsZSl9KSxzZXRJbnRlcnZhbCgoKT0+e30sMWU0KTs=",zi;var Gi=q(()=>{N();NK();bq();zi=P((Z={})=>{function J(X,W){let K=(X.stacktrace?.frames||[]).filter((z)=>z.function!=="new Promise");for(let z=0;z<K.length;z++){let G=K.length-z-1,H=W[z],B=K[G];if(!B||!H)break;if(H.vars===void 0||B.in_app===!1&&Z.includeOutOfAppFrames!==!0||!AK(B.function,H.function))continue;B.vars=H.vars}}function Q(X,W){if(W.originalException&&typeof W.originalException==="object"&&K$ in W.originalException&&Array.isArray(W.originalException[K$])){for(let K of X.exception?.values||[])J(K,W.originalException[K$]);W.originalException[K$]=void 0}return X}async function $(){let X=await import("inspector");if(!X.url())X.open(0)}function Y(X){let W=new MI0(new URL(`data:application/javascript;base64,${RI0}`),{workerData:X,execArgv:[],env:{...process.env,NODE_OPTIONS:void 0}});process.on("exit",()=>{W.terminate()}),W.once("error",(K)=>{Ki("Worker error",K)}),W.once("exit",(K)=>{Ki("Worker exit",K)}),W.unref()}return{name:"LocalVariablesAsync",async setup(X){if(!X.getOptions().includeLocalVariables)return;if(await DJ()){O.warn("Local variables capture has been disabled because the debugger was already enabled");return}let K={...Z,debug:O.isEnabled()};$().then(()=>{try{Y(K)}catch(z){O.error("Failed to start worker",z)}},(z)=>{O.error("Failed to start inspector",z)})},processEvent(X,W){return Q(X,W)}}})});function Hi(Z){if(Z===void 0)return;return Z.slice(-10).reduce((J,Q)=>`${J},${Q.function},${Q.lineno},${Q.colno}`,"")}function kI0(Z,J){if(J===void 0)return;return Hi(Z(J,1))}function Bi(Z){let J=[],Q=!1;function $(W){if(J=[],Q)return;Q=!0,Z(W)}J.push($);function Y(W){J.push(W)}function X(W){let K=J.pop()||$;try{K(W)}catch{$(W)}}return{add:Y,next:X}}class vq{constructor(Z){this._session=Z}static async create(Z){if(Z)return Z;let J=await import("inspector");return new vq(new J.Session)}configureAndConnect(Z,J){this._session.connect(),this._session.on("Debugger.paused",(Q)=>{Z(Q,()=>{this._session.post("Debugger.resume")})}),this._session.post("Debugger.enable"),this._session.post("Debugger.setPauseOnExceptions",{state:J?"all":"uncaught"})}setPauseOnExceptions(Z){this._session.post("Debugger.setPauseOnExceptions",{state:Z?"all":"uncaught"})}getLocalVariables(Z,J){this._getProperties(Z,(Q)=>{let{add:$,next:Y}=Bi(J);for(let X of Q)if(X.value?.objectId&&X.value.className==="Array"){let W=X.value.objectId;$((K)=>this._unrollArray(W,X.name,K,Y))}else if(X.value?.objectId&&X.value.className==="Object"){let W=X.value.objectId;$((K)=>this._unrollObject(W,X.name,K,Y))}else if(X.value)$((W)=>this._unrollOther(X,W,Y));Y({})})}_getProperties(Z,J){this._session.post("Runtime.getProperties",{objectId:Z,ownProperties:!0},(Q,$)=>{if(Q)J([]);else J($.result)})}_unrollArray(Z,J,Q,$){this._getProperties(Z,(Y)=>{Q[J]=Y.filter((X)=>X.name!=="length"&&!isNaN(parseInt(X.name,10))).sort((X,W)=>parseInt(X.name,10)-parseInt(W.name,10)).map((X)=>X.value?.value),$(Q)})}_unrollObject(Z,J,Q,$){this._getProperties(Z,(Y)=>{Q[J]=Y.map((X)=>[X.name,X.value?.value]).reduce((X,[W,K])=>{return X[W]=K,X},{}),$(Q)})}_unrollOther(Z,J,Q){if(Z.value){if("value"in Z.value)if(Z.value.value===void 0||Z.value.value===null)J[Z.name]=`<${Z.value.value}>`;else J[Z.name]=Z.value.value;else if("description"in Z.value&&Z.value.type!=="function")J[Z.name]=`<${Z.value.description}>`;else if(Z.value.type==="undefined")J[Z.name]="<undefined>"}Q(J)}}var NI0="LocalVariables",AI0=(Z={},J)=>{let Q=new I6(20),$,Y=!1;function X(G){let H=Hi(G.stacktrace?.frames);if(H===void 0)return;let B=Q.remove(H);if(B===void 0)return;let V=(G.stacktrace?.frames||[]).filter((F)=>F.function!=="new Promise");for(let F=0;F<V.length;F++){let U=V.length-F-1,w=B[F],D=V[U];if(!D||!w)break;if(w.vars===void 0||D.in_app===!1&&Z.includeOutOfAppFrames!==!0||!AK(D.function,w.function))continue;D.vars=w.vars}}function W(G){for(let H of G.exception?.values||[])X(H);return G}let K;async function z(){let H=k()?.getOptions();if(!H?.includeLocalVariables)return;if(c8<18){O.log("The `LocalVariables` integration is only supported on Node >= v18.");return}if(await DJ()){O.warn("Local variables capture has been disabled because the debugger was already enabled");return}try{let V=await vq.create(J),F=(w,{params:{reason:D,data:L,callFrames:C}},R)=>{if(D!=="exception"&&D!=="promiseRejection"){R();return}$?.();let T=kI0(w,L.description);if(T==null){R();return}let{add:S,next:m}=Bi((l)=>{Q.set(T,l),R()});for(let l=0;l<Math.min(C.length,5);l++){let{scopeChain:y0,functionName:$6,this:c9}=C[l],m9=y0.find((U1)=>U1.type==="local"),n5=c9.className==="global"||!c9.className?$6:`${c9.className}.${$6}`;if(m9?.object.objectId===void 0)S((U1)=>{U1[l]={function:n5},m(U1)});else{let U1=m9.object.objectId;S((P7)=>V.getLocalVariables(U1,(a5)=>{P7[l]={function:n5,vars:a5},m(P7)}))}}m([])},U=Z.captureAllExceptions!==!1;if(V.configureAndConnect((w,D)=>F(H.stackParser,w,D),U),U){let w=Z.maxExceptionsPerSecond||50;$=Wi(w,()=>{O.log("Local variables rate-limit lifted."),V.setPauseOnExceptions(!0)},(D)=>{O.log(`Local variables rate-limit exceeded. Disabling capturing of caught exceptions for ${D} seconds.`),V.setPauseOnExceptions(!1)})}Y=!0}catch(V){O.log("The `LocalVariables` integration failed to start.",V)}}return{name:NI0,setupOnce(){K=z()},async processEvent(G){if(await K,Y)return W(G);return G},_getCachedFramesCount(){return Q.size},_getFirstCachedFrame(){return Q.values()[0]}}},Vi;var Fi=q(()=>{N();j5();NK();bq();Vi=P(AI0)});var OJ=(Z={})=>{return b1.major<19?Vi(Z):zi(Z)};var xq=q(()=>{j5();Gi();Fi()});function l8(){try{return typeof qi<"u"&&typeof ZH1<"u"}catch{return!1}}function wi(){if(l8())return!1;if(c8>=21||c8===20&&e3>=6||c8===18&&e3>=19)return!0;if(!Ui)Ui=!0,G0(()=>{console.warn(`[Sentry] You are using Node.js v${process.versions.node} in ESM mode ("import syntax"). The Sentry Node.js SDK is not compatible with ESM in Node.js versions before 18.19.0 or before 20.6.0. Please either build your application with CommonJS ("require() syntax"), or upgrade your Node.js version.`)});return!1}var Ui;var LJ=q(()=>{N();j5()});import{existsSync as II0,readFileSync as Di}from"fs";import{dirname as TI0,join as Oi}from"path";function SI0(){try{return E.cache?Object.keys(E.cache):[]}catch{return[]}}function _I0(){return{...fI0,...vI0(),...l8()?hI0():{}}}function hI0(){let Z=E.main?.paths||[],J=SI0(),Q={},$=new Set;return J.forEach((Y)=>{let X=Y,W=()=>{let K=X;if(X=TI0(K),!X||K===X||$.has(K))return;if(Z.indexOf(X)<0)return W();let z=Oi(K,"package.json");if($.add(K),!II0(z))return W();try{let G=JSON.parse(Di(z,"utf8"));Q[G.name]=G.version}catch{}};W()}),Q}function ji(){if(!gq)gq=_I0();return gq}function bI0(){try{let Z=Oi(process.cwd(),"package.json");return JSON.parse(Di(Z,"utf8"))}catch{return{}}}function vI0(){let Z=bI0();return{...Z.dependencies,...Z.devDependencies}}var gq,EI0="Modules",fI0,yI0=()=>{return{name:EI0,processEvent(Z){return Z.modules={...Z.modules,...ji()},Z},getModules:ji}},aZ;var dq=q(()=>{LJ();fI0=typeof __SENTRY_SERVER_MODULES__>"u"?{}:__SENTRY_SERVER_MODULES__,aZ=yI0});var xI0="NodeFetch",gI0,dI0=(Z={})=>{return{name:"NodeFetch",setupOnce(){gI0(Z)}}},Li;var Ci=q(()=>{N();RK();eU();gI0=y(`${xI0}.sentry`,KJ,(Z)=>{return Z}),Li=P(dI0)});function z$(Z){G0(()=>{console.error(Z)});let J=k();if(J===void 0){s&&O.warn("No NodeClient was defined, we are exiting the process now."),global.process.exit(1);return}let Q=J.getOptions(),$=Q?.shutdownTimeout&&Q.shutdownTimeout>0?Q.shutdownTimeout:cI0;J.close($).then((Y)=>{if(!Y)s&&O.warn("We reached the timeout for emptying the request buffer, still exiting now!");global.process.exit(1)},(Y)=>{s&&O.error(Y)})}var cI0=2000;var cq=q(()=>{N();e6()});import{isMainThread as mI0}from"worker_threads";function lI0(Z,J){let $=!1,Y=!1,X=!1,W,K=Z.getOptions();return Object.assign((z)=>{let G=z$;if(J.onFatalError)G=J.onFatalError;else if(K.onFatalError)G=K.onFatalError;let B=global.process.listeners("uncaughtException").filter((F)=>{return F.name!=="domainUncaughtExceptionClear"&&F.tag!=="sentry_tracingErrorCallback"&&F._errorHandler!==!0}).length===0,V=J.exitEvenIfOtherHandlersAreRegistered||B;if(!$){if(W=z,$=!0,k()===Z)_(z,{originalException:z,captureContext:{level:"fatal"},mechanism:{handled:!1,type:"auto.node.onuncaughtexception"}});if(!X&&V)X=!0,G(z)}else if(V){if(X)s&&O.warn("uncaught exception after calling fatal error shutdown callback - this is bad! forcing shutdown"),z$(z);else if(!Y)Y=!0,setTimeout(()=>{if(!X)X=!0,G(W,z)},2000)}},{_errorHandler:!0})}var uI0="OnUncaughtException",sZ;var mq=q(()=>{N();e6();cq();sZ=P((Z={})=>{let J={exitEvenIfOtherHandlersAreRegistered:!1,...Z};return{name:uI0,setup(Q){if(!mI0)return;global.process.on("uncaughtException",lI0(Q,J))}}})});function nI0(Z){if(typeof Z!=="object"||Z===null)return{name:"",message:String(Z??"")};let J=Z,Q=typeof J.name==="string"?J.name:"",$=typeof J.message==="string"?J.message:String(Z);return{name:Q,message:$}}function aI0(Z,J){let Q=Z.name===void 0||U8(J.name,Z.name,!0),$=Z.message===void 0||U8(J.message,Z.message);return Q&&$}function sI0(Z,J){let Q=nI0(J);return Z.some(($)=>aI0($,Q))}function rI0(Z,J){return function($,Y){if(k()!==Z)return;if(sI0(J.ignore??[],$))return;let X=J.mode==="strict"?"fatal":"error",W=$&&typeof $==="object"?$._sentry_active_span:void 0;(W?(z)=>n6(W,z):(z)=>z())(()=>{_($,{originalException:Y,captureContext:{extra:{unhandledPromiseRejection:!0},level:X},mechanism:{handled:!1,type:"auto.node.onunhandledrejection"}})}),tI0($,J.mode)}}function tI0(Z,J){let Q="This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason:";if(J==="warn")G0(()=>{console.warn(Q),console.error(Z&&typeof Z==="object"&&"stack"in Z?Z.stack:Z)});else if(J==="strict")G0(()=>{console.warn(Q)}),z$(Z)}var pI0="OnUnhandledRejection",iI0,oI0=(Z={})=>{let J={mode:Z.mode??"warn",ignore:[...iI0,...Z.ignore??[]]};return{name:pI0,setup(Q){global.process.on("unhandledRejection",rI0(Q,J))}}},rZ;var uq=q(()=>{N();cq();iI0=[{name:"AI_NoOutputGeneratedError"},{name:"AbortError"}],rZ=P(oI0)});var eI0="ProcessSession",tZ;var lq=q(()=>{N();tZ=P(()=>{return{name:eI0,setupOnce(){e7(),process.on("beforeExit",()=>{if(x().getSession()?.status!=="ok")k8()})}}})});import*as Pi from"http";function JT0(Z,J){let Q=QT0(J.sidecarUrl);if(!Q)return;let $=0;Z.on("beforeEnvelope",(Y)=>{if($>3){O.warn("[Spotlight] Disabled Sentry -> Spotlight integration due to too many failed requests");return}let X=sQ(Y);P9(()=>{let W=Pi.request({method:"POST",path:Q.pathname,hostname:Q.hostname,port:Q.port,headers:{"Content-Type":"application/x-sentry-envelope"}},(K)=>{if(K.statusCode&&K.statusCode>=200&&K.statusCode<400)$=0;K.on("data",()=>{}),K.on("end",()=>{}),K.setEncoding("utf8")});W.on("error",()=>{$++,O.warn("[Spotlight] Failed to send envelope to Spotlight Sidecar")}),W.write(X),W.end()})})}function QT0(Z){try{return new URL(`${Z}`)}catch{O.warn(`[Spotlight] Invalid sidecar URL: ${Z}`);return}}var pq="Spotlight",ZT0=(Z={})=>{let J={sidecarUrl:Z.sidecarUrl||"http://localhost:8969/stream"};return{name:pq,setup(Q){try{}catch{}JT0(Q,J)}}},CJ;var iq=q(()=>{N();CJ=P(ZT0)});import*as Mi from"util";function YT0(Z){if(!(Z instanceof Error))return!1;if(!("errno"in Z)||typeof Z.errno!=="number")return!1;return Mi.getSystemErrorMap().has(Z.errno)}var $T0="NodeSystemError",oq;var Ri=q(()=>{N();oq=P((Z={})=>{return{name:$T0,processEvent:(J,Q,$)=>{if(!YT0(Q.originalException))return J;let Y=Q.originalException,X={...Y};if(!$.getOptions().sendDefaultPii&&Z.includePaths!==!0)delete X.path,delete X.dest;J.contexts={...J.contexts,node_system_error:X};for(let W of J.exception?.values||[])if(W.value){if(Y.path&&W.value.includes(Y.path))W.value=W.value.replace(`'${Y.path}'`,"").trim();if(Y.dest&&W.value.includes(Y.dest))W.value=W.value.replace(`'${Y.dest}'`,"").trim()}return J}}})});import*as nq from"http";var Z8,aq;var ki=q(()=>{Z8=Symbol("AgentBaseInternalState");aq=class aq extends nq.Agent{constructor(Z){super(Z);this[Z8]={}}isSecureEndpoint(Z){if(Z){if(typeof Z.secureEndpoint==="boolean")return Z.secureEndpoint;if(typeof Z.protocol==="string")return Z.protocol==="https:"}let{stack:J}=Error();if(typeof J!=="string")return!1;return J.split(`
|
|
29
|
+
`)}}}function Ml(Z,J){let Q=bN0(Z),$=J.statusCode,Y=i3($);N1({category:"http",data:{status_code:$,...Q},type:"http",level:Y},{event:"response",request:Z,response:J})}function bN0(Z){try{let J=HK(Z.origin,Z.path),Q=AZ(J),$={url:IZ(Q),"http.method":Z.method||"GET"};if(Q.search)$["http.query"]=Q.search;if(Q.hash)$["http.fragment"]=Q.hash;return $}catch{return{}}}function HK(Z,J="/"){try{return new URL(J,Z).toString()}catch{let Q=`${Z}`;if(Q.endsWith("/")&&J.startsWith("/"))return`${Q}${J.slice(1)}`;if(!Q.endsWith("/")&&!J.startsWith("/"))return`${Q}/${J}`;return`${Q}${J}`}}var GK="sentry-trace",tU="baggage",Cl;var Rl=q(()=>{N();nU();Cl=/baggage: (.*)\r\n/});import*as WJ from"diagnostics_channel";var kl,Nl,Al,KJ;var eU=q(()=>{N();j5();Rl();kl=A(I(),1),Nl=A(R0(),1),Al=A(n(),1);KJ=class KJ extends Al.InstrumentationBase{constructor(Z={}){super("@sentry/instrumentation-node-fetch",e,Z);this._channelSubs=[],this._propagationDecisionMap=new I6(100),this._ignoreOutgoingRequestsMap=new WeakMap}init(){return}disable(){super.disable(),this._channelSubs.forEach((Z)=>Z.unsubscribe()),this._channelSubs=[]}enable(){if(super.enable(),this._channelSubs=this._channelSubs||[],this._channelSubs.length>0)return;this._subscribeToChannel("undici:request:create",this._onRequestCreated.bind(this)),this._subscribeToChannel("undici:request:headers",this._onResponseHeaders.bind(this))}_onRequestCreated({request:Z}){let J=this.getConfig();if(J.enabled===!1)return;let $=this._shouldIgnoreOutgoingRequest(Z);if(this._ignoreOutgoingRequestsMap.set(Z,$),$)return;if(J.tracePropagation!==!1)Pl(Z,this._propagationDecisionMap)}_onResponseHeaders({request:Z,response:J}){let Q=this.getConfig();if(Q.enabled===!1)return;let Y=Q.breadcrumbs,X=typeof Y>"u"?!0:Y,W=this._ignoreOutgoingRequestsMap.get(Z);if(X&&!W)Ml(Z,J)}_subscribeToChannel(Z,J){let Q=c8>18||c8===18&&e3>=19,$;if(Q)WJ.subscribe?.(Z,J),$=()=>WJ.unsubscribe?.(Z,J);else{let Y=WJ.channel(Z);Y.subscribe(J),$=()=>Y.unsubscribe(J)}this._channelSubs.push({name:Z,unsubscribe:$})}_shouldIgnoreOutgoingRequest(Z){if(Nl.isTracingSuppressed(kl.context.active()))return!0;let J=HK(Z.origin,Z.path),Q=this.getConfig().ignoreOutgoingRequests;if(typeof Q!=="function"||!J)return!1;return Q(J)}}});var Zq=j((Tl)=>{Object.defineProperty(Tl,"__esModule",{value:!0});Tl.AbstractAsyncHooksContextManager=void 0;var vN0=E("events"),xN0=["addListener","on","once","prependListener","prependOnceListener"];class Il{bind(Z,J){if(J instanceof vN0.EventEmitter)return this._bindEventEmitter(Z,J);if(typeof J==="function")return this._bindFunction(Z,J);return J}_bindFunction(Z,J){let Q=this,$=function(...Y){return Q.with(Z,()=>J.apply(this,Y))};return Object.defineProperty($,"length",{enumerable:!1,configurable:!0,writable:!1,value:J.length}),$}_bindEventEmitter(Z,J){if(this._getPatchMap(J)!==void 0)return J;if(this._createPatchMap(J),xN0.forEach(($)=>{if(J[$]===void 0)return;J[$]=this._patchAddListener(J,J[$],Z)}),typeof J.removeListener==="function")J.removeListener=this._patchRemoveListener(J,J.removeListener);if(typeof J.off==="function")J.off=this._patchRemoveListener(J,J.off);if(typeof J.removeAllListeners==="function")J.removeAllListeners=this._patchRemoveAllListeners(J,J.removeAllListeners);return J}_patchRemoveListener(Z,J){let Q=this;return function($,Y){let X=Q._getPatchMap(Z)?.[$];if(X===void 0)return J.call(this,$,Y);let W=X.get(Y);return J.call(this,$,W||Y)}}_patchRemoveAllListeners(Z,J){let Q=this;return function($){let Y=Q._getPatchMap(Z);if(Y!==void 0){if(arguments.length===0)Q._createPatchMap(Z);else if(Y[$]!==void 0)delete Y[$]}return J.apply(this,arguments)}}_patchAddListener(Z,J,Q){let $=this;return function(Y,X){if($._wrapped)return J.call(this,Y,X);let W=$._getPatchMap(Z);if(W===void 0)W=$._createPatchMap(Z);let K=W[Y];if(K===void 0)K=new WeakMap,W[Y]=K;let z=$.bind(Q,X);K.set(X,z),$._wrapped=!0;try{return J.call(this,Y,z)}finally{$._wrapped=!1}}}_createPatchMap(Z){let J=Object.create(null);return Z[this._kOtListeners]=J,J}_getPatchMap(Z){return Z[this._kOtListeners]}_kOtListeners=Symbol("OtListeners");_wrapped=!1}Tl.AbstractAsyncHooksContextManager=Il});var _l=j((yl)=>{Object.defineProperty(yl,"__esModule",{value:!0});yl.AsyncHooksContextManager=void 0;var gN0=I(),dN0=E("async_hooks"),cN0=Zq();class fl extends cN0.AbstractAsyncHooksContextManager{_asyncHook;_contexts=new Map;_stack=[];constructor(){super();this._asyncHook=dN0.createHook({init:this._init.bind(this),before:this._before.bind(this),after:this._after.bind(this),destroy:this._destroy.bind(this),promiseResolve:this._destroy.bind(this)})}active(){return this._stack[this._stack.length-1]??gN0.ROOT_CONTEXT}with(Z,J,Q,...$){this._enterContext(Z);try{return J.call(Q,...$)}finally{this._exitContext()}}enable(){return this._asyncHook.enable(),this}disable(){return this._asyncHook.disable(),this._contexts.clear(),this._stack=[],this}_init(Z,J){if(J==="TIMERWRAP")return;let Q=this._stack[this._stack.length-1];if(Q!==void 0)this._contexts.set(Z,Q)}_destroy(Z){this._contexts.delete(Z)}_before(Z){let J=this._contexts.get(Z);if(J!==void 0)this._enterContext(J)}_after(){this._exitContext()}_enterContext(Z){this._stack.push(Z)}_exitContext(){this._stack.pop()}}yl.AsyncHooksContextManager=fl});var xl=j((bl)=>{Object.defineProperty(bl,"__esModule",{value:!0});bl.AsyncLocalStorageContextManager=void 0;var mN0=I(),uN0=E("async_hooks"),lN0=Zq();class hl extends lN0.AbstractAsyncHooksContextManager{_asyncLocalStorage;constructor(){super();this._asyncLocalStorage=new uN0.AsyncLocalStorage}active(){return this._asyncLocalStorage.getStore()??mN0.ROOT_CONTEXT}with(Z,J,Q,...$){let Y=Q==null?J:J.bind(Q);return this._asyncLocalStorage.run(Z,Y,...$)}enable(){return this}disable(){return this._asyncLocalStorage.disable(),this}}bl.AsyncLocalStorageContextManager=hl});var gl=j((BK)=>{Object.defineProperty(BK,"__esModule",{value:!0});BK.AsyncLocalStorageContextManager=BK.AsyncHooksContextManager=void 0;var pN0=_l();Object.defineProperty(BK,"AsyncHooksContextManager",{enumerable:!0,get:function(){return pN0.AsyncHooksContextManager}});var iN0=xl();Object.defineProperty(BK,"AsyncLocalStorageContextManager",{enumerable:!0,get:function(){return iN0.AsyncLocalStorageContextManager}})});function dl(){if(VK===void 0)try{let Z=globalThis.process.argv0;VK=Z?`unknown_service:${Z}`:"unknown_service"}catch{VK="unknown_service"}return VK}var VK;var zJ=(Z)=>{return Z!==null&&typeof Z==="object"&&typeof Z.then==="function"};class UK{_rawAttributes;_asyncAttributesPending=!1;_schemaUrl;_memoizedAttributes;static FromAttributeList(Z,J){let Q=new UK({},J);return Q._rawAttributes=cl(Z),Q._asyncAttributesPending=Z.filter(([$,Y])=>zJ(Y)).length>0,Q}constructor(Z,J){let Q=Z.attributes??{};this._rawAttributes=Object.entries(Q).map(([$,Y])=>{if(zJ(Y))this._asyncAttributesPending=!0;return[$,Y]}),this._rawAttributes=cl(this._rawAttributes),this._schemaUrl=nN0(J?.schemaUrl)}get asyncAttributesPending(){return this._asyncAttributesPending}async waitForAsyncAttributes(){if(!this.asyncAttributesPending)return;for(let Z=0;Z<this._rawAttributes.length;Z++){let[J,Q]=this._rawAttributes[Z];this._rawAttributes[Z]=[J,zJ(Q)?await Q:Q]}this._asyncAttributesPending=!1}get attributes(){if(this.asyncAttributesPending)GJ.diag.error("Accessing resource attributes before async attributes settled");if(this._memoizedAttributes)return this._memoizedAttributes;let Z={};for(let[J,Q]of this._rawAttributes){if(zJ(Q)){GJ.diag.debug(`Unsettled resource attribute ${J} skipped`);continue}if(Q!=null)Z[J]??=Q}if(!this._asyncAttributesPending)this._memoizedAttributes=Z;return Z}getRawAttributes(){return this._rawAttributes}get schemaUrl(){return this._schemaUrl}merge(Z){if(Z==null)return this;let J=aN0(this,Z),Q=J?{schemaUrl:J}:void 0;return UK.FromAttributeList([...Z.getRawAttributes(),...this.getRawAttributes()],Q)}}function qK(Z,J){return UK.FromAttributeList(Object.entries(Z),J)}function Z$(){return qK({[T9.ATTR_SERVICE_NAME]:dl(),[T9.ATTR_TELEMETRY_SDK_LANGUAGE]:FK.SDK_INFO[T9.ATTR_TELEMETRY_SDK_LANGUAGE],[T9.ATTR_TELEMETRY_SDK_NAME]:FK.SDK_INFO[T9.ATTR_TELEMETRY_SDK_NAME],[T9.ATTR_TELEMETRY_SDK_VERSION]:FK.SDK_INFO[T9.ATTR_TELEMETRY_SDK_VERSION]})}function cl(Z){return Z.map(([J,Q])=>{if(zJ(Q))return[J,Q.catch(($)=>{GJ.diag.debug("promise rejection for resource attribute: %s - %s",J,$);return})];return[J,Q]})}function nN0(Z){if(typeof Z==="string"||Z===void 0)return Z;GJ.diag.warn("Schema URL must be string or undefined, got %s. Schema URL will be ignored.",Z);return}function aN0(Z,J){let Q=Z?.schemaUrl,$=J?.schemaUrl,Y=Q===void 0||Q==="",X=$===void 0||$==="";if(Y)return $;if(X)return Q;if(Q===$)return Q;GJ.diag.warn('Schema URL merge conflict: old resource has "%s", updating resource has "%s". Resulting resource will have undefined Schema URL.',Q,$);return}var GJ,FK,T9;var ml=q(()=>{GJ=A(I(),1),FK=A(R0(),1),T9=A(Y0(),1)});var Jq=q(()=>{ml()});var ul="exception";class Qq{_spanContext;kind;parentSpanContext;attributes={};links=[];events=[];startTime;resource;instrumentationScope;_droppedAttributesCount=0;_droppedEventsCount=0;_droppedLinksCount=0;_attributesCount=0;name;status={code:G1.SpanStatusCode.UNSET};endTime=[0,0];_ended=!1;_duration=[-1,-1];_spanProcessor;_spanLimits;_attributeValueLengthLimit;_recordEndMetrics;_performanceStartTime;_performanceOffset;_startTimeProvided;constructor(Z){let J=Date.now();if(this._spanContext=Z.spanContext,this._performanceStartTime=L0.otperformance.now(),this._performanceOffset=J-(this._performanceStartTime+L0.otperformance.timeOrigin),this._startTimeProvided=Z.startTime!=null,this._spanLimits=Z.spanLimits,this._attributeValueLengthLimit=this._spanLimits.attributeValueLengthLimit??0,this._spanProcessor=Z.spanProcessor,this.name=Z.name,this.parentSpanContext=Z.parentSpanContext,this.kind=Z.kind,Z.links)for(let Q of Z.links)this.addLink(Q);if(this.startTime=this._getTime(Z.startTime??J),this.resource=Z.resource,this.instrumentationScope=Z.scope,this._recordEndMetrics=Z.recordEndMetrics,Z.attributes!=null)this.setAttributes(Z.attributes);this._spanProcessor.onStart(this,Z.context)}spanContext(){return this._spanContext}setAttribute(Z,J){if(J==null||this._isSpanEnded())return this;if(Z.length===0)return G1.diag.warn(`Invalid attribute key: ${Z}`),this;if(!L0.isAttributeValue(J))return G1.diag.warn(`Invalid attribute value set for key: ${Z}`),this;let{attributeCountLimit:Q}=this._spanLimits,$=!Object.prototype.hasOwnProperty.call(this.attributes,Z);if(Q!==void 0&&this._attributesCount>=Q&&$)return this._droppedAttributesCount++,this;if(this.attributes[Z]=this._truncateToSize(J),$)this._attributesCount++;return this}setAttributes(Z){for(let J in Z)if(Object.prototype.hasOwnProperty.call(Z,J))this.setAttribute(J,Z[J]);return this}addEvent(Z,J,Q){if(this._isSpanEnded())return this;let{eventCountLimit:$}=this._spanLimits;if($===0)return G1.diag.warn("No events allowed."),this._droppedEventsCount++,this;if($!==void 0&&this.events.length>=$){if(this._droppedEventsCount===0)G1.diag.debug("Dropping extra events.");this.events.shift(),this._droppedEventsCount++}if(L0.isTimeInput(J)){if(!L0.isTimeInput(Q))Q=J;J=void 0}let Y=L0.sanitizeAttributes(J),{attributePerEventCountLimit:X}=this._spanLimits,W={},K=0,z=0;for(let G in Y){if(!Object.prototype.hasOwnProperty.call(Y,G))continue;let H=Y[G];if(X!==void 0&&z>=X){K++;continue}W[G]=this._truncateToSize(H),z++}return this.events.push({name:Z,attributes:W,time:this._getTime(Q),droppedAttributesCount:K}),this}addLink(Z){if(this._isSpanEnded())return this;let{linkCountLimit:J}=this._spanLimits;if(J===0)return this._droppedLinksCount++,this;if(J!==void 0&&this.links.length>=J){if(this._droppedLinksCount===0)G1.diag.debug("Dropping extra links.");this.links.shift(),this._droppedLinksCount++}let{attributePerLinkCountLimit:Q}=this._spanLimits,$=L0.sanitizeAttributes(Z.attributes),Y={},X=0,W=0;for(let z in $){if(!Object.prototype.hasOwnProperty.call($,z))continue;let G=$[z];if(Q!==void 0&&W>=Q){X++;continue}Y[z]=this._truncateToSize(G),W++}let K={context:Z.context};if(W>0)K.attributes=Y;if(X>0)K.droppedAttributesCount=X;return this.links.push(K),this}addLinks(Z){for(let J of Z)this.addLink(J);return this}setStatus(Z){if(this._isSpanEnded())return this;if(Z.code===G1.SpanStatusCode.UNSET)return this;if(this.status.code===G1.SpanStatusCode.OK)return this;let J={code:Z.code};if(Z.code===G1.SpanStatusCode.ERROR){if(typeof Z.message==="string")J.message=Z.message;else if(Z.message!=null)G1.diag.warn(`Dropping invalid status.message of type '${typeof Z.message}', expected 'string'`)}return this.status=J,this}updateName(Z){if(this._isSpanEnded())return this;return this.name=Z,this}end(Z){if(this._isSpanEnded()){G1.diag.error(`${this.name} ${this._spanContext.traceId}-${this._spanContext.spanId} - You can only call end() on a span once.`);return}if(this.endTime=this._getTime(Z),this._duration=L0.hrTimeDuration(this.startTime,this.endTime),this._duration[0]<0)G1.diag.warn("Inconsistent start and end time, startTime > endTime. Setting span duration to 0ms.",this.startTime,this.endTime),this.endTime=this.startTime.slice(),this._duration=[0,0];if(this._droppedEventsCount>0)G1.diag.warn(`Dropped ${this._droppedEventsCount} events because eventCountLimit reached`);if(this._droppedLinksCount>0)G1.diag.warn(`Dropped ${this._droppedLinksCount} links because linkCountLimit reached`);if(this._spanProcessor.onEnding)this._spanProcessor.onEnding(this);this._recordEndMetrics?.(),this._ended=!0,this._spanProcessor.onEnd(this)}_getTime(Z){if(typeof Z==="number"&&Z<=L0.otperformance.now())return L0.hrTime(Z+this._performanceOffset);if(typeof Z==="number")return L0.millisToHrTime(Z);if(Z instanceof Date)return L0.millisToHrTime(Z.getTime());if(L0.isTimeInputHrTime(Z))return Z;if(this._startTimeProvided)return L0.millisToHrTime(Date.now());let J=L0.otperformance.now()-this._performanceStartTime;return L0.addHrTimes(this.startTime,L0.millisToHrTime(J))}isRecording(){return this._ended===!1}recordException(Z,J){let Q={};if(typeof Z==="string")Q[r9.ATTR_EXCEPTION_MESSAGE]=Z;else if(Z){if(Z.code)Q[r9.ATTR_EXCEPTION_TYPE]=Z.code.toString();else if(Z.name)Q[r9.ATTR_EXCEPTION_TYPE]=Z.name;if(Z.message)Q[r9.ATTR_EXCEPTION_MESSAGE]=Z.message;if(Z.stack)Q[r9.ATTR_EXCEPTION_STACKTRACE]=Z.stack}if(Q[r9.ATTR_EXCEPTION_TYPE]||Q[r9.ATTR_EXCEPTION_MESSAGE])this.addEvent(ul,Q,J);else G1.diag.warn(`Failed to record an exception ${Z}`)}get duration(){return this._duration}get ended(){return this._ended}get droppedAttributesCount(){return this._droppedAttributesCount}get droppedEventsCount(){return this._droppedEventsCount}get droppedLinksCount(){return this._droppedLinksCount}_isSpanEnded(){if(this._ended){let Z=Error(`Operation attempted on ended Span {traceId: ${this._spanContext.traceId}, spanId: ${this._spanContext.spanId}}`);G1.diag.warn(`Cannot execute the operation on ended Span {traceId: ${this._spanContext.traceId}, spanId: ${this._spanContext.spanId}}`,Z)}return this._ended}_truncateToLimitUtil(Z,J){if(Z.length<=J)return Z;return Z.substring(0,J)}_truncateToSize(Z){let J=this._attributeValueLengthLimit;if(J<=0)return G1.diag.warn(`Attribute value limit must be positive, got ${J}`),Z;if(typeof Z==="string")return this._truncateToLimitUtil(Z,J);if(Array.isArray(Z))return Z.map((Q)=>typeof Q==="string"?this._truncateToLimitUtil(Q,J):Q);return Z}}var G1,L0,r9;var ll=q(()=>{G1=A(I(),1),L0=A(R0(),1),r9=A(Y0(),1)});var b0;var HJ=q(()=>{(function(Z){Z[Z.NOT_RECORD=0]="NOT_RECORD",Z[Z.RECORD=1]="RECORD",Z[Z.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(b0||(b0={}))});class D5{shouldSample(){return{decision:b0.NOT_RECORD}}toString(){return"AlwaysOffSampler"}}var $q=q(()=>{HJ()});class m8{shouldSample(){return{decision:b0.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}}var Yq=q(()=>{HJ()});class BJ{_root;_remoteParentSampled;_remoteParentNotSampled;_localParentSampled;_localParentNotSampled;constructor(Z){if(this._root=Z.root,!this._root)pl.globalErrorHandler(Error("ParentBasedSampler must have a root sampler configured")),this._root=new m8;this._remoteParentSampled=Z.remoteParentSampled??new m8,this._remoteParentNotSampled=Z.remoteParentNotSampled??new D5,this._localParentSampled=Z.localParentSampled??new m8,this._localParentNotSampled=Z.localParentNotSampled??new D5}shouldSample(Z,J,Q,$,Y,X){let W=O5.trace.getSpanContext(Z);if(!W||!O5.isSpanContextValid(W))return this._root.shouldSample(Z,J,Q,$,Y,X);if(W.isRemote){if(W.traceFlags&O5.TraceFlags.SAMPLED)return this._remoteParentSampled.shouldSample(Z,J,Q,$,Y,X);return this._remoteParentNotSampled.shouldSample(Z,J,Q,$,Y,X)}if(W.traceFlags&O5.TraceFlags.SAMPLED)return this._localParentSampled.shouldSample(Z,J,Q,$,Y,X);return this._localParentNotSampled.shouldSample(Z,J,Q,$,Y,X)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}}var O5,pl;var il=q(()=>{$q();Yq();O5=A(I(),1),pl=A(R0(),1)});class wK{_ratio;_upperBound;constructor(Z=0){this._ratio=this._normalize(Z),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(Z,J){return{decision:ol.isValidTraceId(J)&&this._accumulate(J)<this._upperBound?b0.RECORD_AND_SAMPLED:b0.NOT_RECORD}}toString(){return`TraceIdRatioBased{${this._ratio}}`}_normalize(Z){if(typeof Z!=="number"||isNaN(Z))return 0;return Z>=1?1:Z<=0?0:Z}_accumulate(Z){let J=0;for(let Q=0;Q<Z.length/8;Q++){let $=Q*8,Y=parseInt(Z.slice($,$+8),16);J=(J^Y)>>>0}return J}}var ol;var nl=q(()=>{HJ();ol=A(I(),1)});function OK(){return{sampler:Xq(),forceFlushTimeoutMillis:30000,generalLimits:{attributeValueLengthLimit:Z9.getNumberFromEnv("OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT")??1/0,attributeCountLimit:Z9.getNumberFromEnv("OTEL_ATTRIBUTE_COUNT_LIMIT")??128},spanLimits:{attributeValueLengthLimit:Z9.getNumberFromEnv("OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT")??1/0,attributeCountLimit:Z9.getNumberFromEnv("OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT")??128,linkCountLimit:Z9.getNumberFromEnv("OTEL_SPAN_LINK_COUNT_LIMIT")??128,eventCountLimit:Z9.getNumberFromEnv("OTEL_SPAN_EVENT_COUNT_LIMIT")??128,attributePerEventCountLimit:Z9.getNumberFromEnv("OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT")??128,attributePerLinkCountLimit:Z9.getNumberFromEnv("OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT")??128}}}function Xq(){let Z=Z9.getStringFromEnv("OTEL_TRACES_SAMPLER")??t9.ParentBasedAlwaysOn;switch(Z){case t9.AlwaysOn:return new m8;case t9.AlwaysOff:return new D5;case t9.ParentBasedAlwaysOn:return new BJ({root:new m8});case t9.ParentBasedAlwaysOff:return new BJ({root:new D5});case t9.TraceIdRatio:return new wK(al());case t9.ParentBasedTraceIdRatio:return new BJ({root:new wK(al())});default:return DK.diag.error(`OTEL_TRACES_SAMPLER value "${Z}" invalid, defaulting to "${t9.ParentBasedAlwaysOn}".`),new BJ({root:new m8})}}function al(){let Z=Z9.getNumberFromEnv("OTEL_TRACES_SAMPLER_ARG");if(Z==null)return DK.diag.error(`OTEL_TRACES_SAMPLER_ARG is blank, defaulting to ${jK}.`),jK;if(Z<0||Z>1)return DK.diag.error(`OTEL_TRACES_SAMPLER_ARG=${Z} was given, but it is out of range ([0..1]), defaulting to ${jK}.`),jK;return Z}var DK,Z9,t9,jK=1;var Wq=q(()=>{$q();Yq();il();nl();DK=A(I(),1),Z9=A(R0(),1);(function(Z){Z.AlwaysOff="always_off",Z.AlwaysOn="always_on",Z.ParentBasedAlwaysOff="parentbased_always_off",Z.ParentBasedAlwaysOn="parentbased_always_on",Z.ParentBasedTraceIdRatio="parentbased_traceidratio",Z.TraceIdRatio="traceidratio"})(t9||(t9={}))});function sl(Z){let J={sampler:Xq()},Q=OK(),$=Object.assign({},Q,J,Z);return $.generalLimits=Object.assign({},Q.generalLimits,Z.generalLimits||{}),$.spanLimits=Object.assign({},Q.spanLimits,Z.spanLimits||{}),$}function rl(Z){let J=Object.assign({},Z.spanLimits);return J.attributeCountLimit=Z.spanLimits?.attributeCountLimit??Z.generalLimits?.attributeCountLimit??J$.getNumberFromEnv("OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT")??J$.getNumberFromEnv("OTEL_ATTRIBUTE_COUNT_LIMIT")??sN0,J.attributeValueLengthLimit=Z.spanLimits?.attributeValueLengthLimit??Z.generalLimits?.attributeValueLengthLimit??J$.getNumberFromEnv("OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT")??J$.getNumberFromEnv("OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT")??rN0,Object.assign({},Z,{spanLimits:J})}var J$,sN0=128,rN0=1/0;var Kq=q(()=>{Wq();J$=A(R0(),1)});class Q${generateTraceId=tl(16);generateSpanId=tl(8)}function tl(Z){return function(){for(let Q=0;Q<Z/4;Q++)LK.writeUInt32BE(Math.random()*4294967296>>>0,Q*4);for(let Q=0;Q<Z;Q++)if(LK[Q]>0)break;else if(Q===Z-1)LK[Z-1]=1;return LK.toString("hex",0,Z)}}var LK;var el=q(()=>{LK=Buffer.allocUnsafe(16)});var Zp=q(()=>{el()});var Jp=q(()=>{Zp()});var Qp="otel.span.parent.origin",zq="otel.span.sampling_result",$p="otel.sdk.span.live",Yp="otel.sdk.span.started";class Gq{startedSpans;liveSpans;constructor(Z){this.startedSpans=Z.createCounter(Yp,{unit:"{span}",description:"The number of created spans."}),this.liveSpans=Z.createUpDownCounter($p,{unit:"{span}",description:"The number of currently live spans."})}startSpan(Z,J){let Q=eN0(J);if(this.startedSpans.add(1,{[Qp]:tN0(Z),[zq]:Q}),J===b0.NOT_RECORD)return()=>{};let $={[zq]:Q};return this.liveSpans.add(1,$),()=>{this.liveSpans.add(-1,$)}}}function tN0(Z){if(!Z)return"none";if(Z.isRemote)return"remote";return"local"}function eN0(Z){switch(Z){case b0.RECORD_AND_SAMPLED:return"RECORD_AND_SAMPLE";case b0.RECORD:return"RECORD_ONLY";case b0.NOT_RECORD:return"DROP"}}var Xp=q(()=>{HJ()});var Wp="2.6.1";class Hq{_sampler;_generalLimits;_spanLimits;_idGenerator;instrumentationScope;_resource;_spanProcessor;_tracerMetrics;constructor(Z,J,Q,$){let Y=sl(J);this._sampler=Y.sampler,this._generalLimits=Y.generalLimits,this._spanLimits=Y.spanLimits,this._idGenerator=J.idGenerator||new Q$,this._resource=Q,this._spanProcessor=$,this.instrumentationScope=Z;let X=Y.meterProvider?Y.meterProvider.getMeter("@opentelemetry/sdk-trace",Wp):C0.createNoopMeter();this._tracerMetrics=new Gq(X)}startSpan(Z,J={},Q=C0.context.active()){if(J.root)Q=C0.trace.deleteSpan(Q);let $=C0.trace.getSpan(Q);if(VJ.isTracingSuppressed(Q))return C0.diag.debug("Instrumentation suppressed, returning Noop Span"),C0.trace.wrapSpanContext(C0.INVALID_SPAN_CONTEXT);let Y=$?.spanContext(),X=this._idGenerator.generateSpanId(),W,K,z;if(!Y||!C0.trace.isSpanContextValid(Y))K=this._idGenerator.generateTraceId();else K=Y.traceId,z=Y.traceState,W=Y;let G=J.kind??C0.SpanKind.INTERNAL,H=(J.links??[]).map((C)=>{return{context:C.context,attributes:VJ.sanitizeAttributes(C.attributes)}}),B=VJ.sanitizeAttributes(J.attributes),V=this._sampler.shouldSample(Q,K,Z,G,B,H),F=this._tracerMetrics.startSpan(Y,V.decision);z=V.traceState??z;let U=V.decision===C0.SamplingDecision.RECORD_AND_SAMPLED?C0.TraceFlags.SAMPLED:C0.TraceFlags.NONE,w={traceId:K,spanId:X,traceFlags:U,traceState:z};if(V.decision===C0.SamplingDecision.NOT_RECORD)return C0.diag.debug("Recording is off, propagating context in a non-recording span"),C0.trace.wrapSpanContext(w);let D=VJ.sanitizeAttributes(Object.assign(B,V.attributes));return new Qq({resource:this._resource,scope:this.instrumentationScope,context:Q,spanContext:w,name:Z,kind:G,links:H,parentSpanContext:W,attributes:D,startTime:J.startTime,spanProcessor:this._spanProcessor,spanLimits:this._spanLimits,recordEndMetrics:F})}startActiveSpan(Z,J,Q,$){let Y,X,W;if(arguments.length<2)return;else if(arguments.length===2)W=J;else if(arguments.length===3)Y=J,W=Q;else Y=J,X=Q,W=$;let K=X??C0.context.active(),z=this.startSpan(Z,Y,K),G=C0.trace.setSpan(K,z);return C0.context.with(G,W,void 0,z)}getGeneralLimits(){return this._generalLimits}getSpanLimits(){return this._spanLimits}}var C0,VJ;var Kp=q(()=>{ll();Kq();Jp();Xp();C0=A(I(),1),VJ=A(R0(),1)});class Bq{_spanProcessors;constructor(Z){this._spanProcessors=Z}forceFlush(){let Z=[];for(let J of this._spanProcessors)Z.push(J.forceFlush());return new Promise((J)=>{Promise.all(Z).then(()=>{J()}).catch((Q)=>{zp.globalErrorHandler(Q||Error("MultiSpanProcessor: forceFlush failed")),J()})})}onStart(Z,J){for(let Q of this._spanProcessors)Q.onStart(Z,J)}onEnding(Z){for(let J of this._spanProcessors)if(J.onEnding)J.onEnding(Z)}onEnd(Z){for(let J of this._spanProcessors)J.onEnd(Z)}shutdown(){let Z=[];for(let J of this._spanProcessors)Z.push(J.shutdown());return new Promise((J,Q)=>{Promise.all(Z).then(()=>{J()},Q)})}}var zp;var Gp=q(()=>{zp=A(R0(),1)});class CK{_config;_tracers=new Map;_resource;_activeSpanProcessor;constructor(Z={}){let J=Hp.merge({},OK(),rl(Z));this._resource=J.resource??Z$(),this._config=Object.assign({},J,{resource:this._resource});let Q=[];if(Z.spanProcessors?.length)Q.push(...Z.spanProcessors);this._activeSpanProcessor=new Bq(Q)}getTracer(Z,J,Q){let $=`${Z}@${J||""}:${Q?.schemaUrl||""}`;if(!this._tracers.has($))this._tracers.set($,new Hq({name:Z,version:J,schemaUrl:Q?.schemaUrl},this._config,this._resource,this._activeSpanProcessor));return this._tracers.get($)}forceFlush(){let Z=this._config.forceFlushTimeoutMillis,J=this._activeSpanProcessor._spanProcessors.map((Q)=>{return new Promise(($)=>{let Y,X=setTimeout(()=>{$(Error(`Span processor did not completed within timeout period of ${Z} ms`)),Y=L5.timeout},Z);Q.forceFlush().then(()=>{if(clearTimeout(X),Y!==L5.timeout)Y=L5.resolved,$(Y)}).catch((W)=>{clearTimeout(X),Y=L5.error,$(W)})})});return new Promise((Q,$)=>{Promise.all(J).then((Y)=>{let X=Y.filter((W)=>W!==L5.resolved);if(X.length>0)$(X);else Q()}).catch((Y)=>$([Y]))})}shutdown(){return this._activeSpanProcessor.shutdown()}}var Hp,L5;var Bp=q(()=>{Jq();Kp();Wq();Gp();Kq();Hp=A(R0(),1);(function(Z){Z[Z.resolved=0]="resolved",Z[Z.timeout=1]="timeout",Z[Z.error=2]="error",Z[Z.unresolved=3]="unresolved"})(L5||(L5={}))});var Vq=q(()=>{Bp();HJ()});function Cq(Z){if("parentSpanId"in Z)return Z.parentSpanId;else if("parentSpanContext"in Z)return Z.parentSpanContext?.spanId;return}function Pq(Z){let J=Z;return!!J.attributes&&typeof J.attributes==="object"}function ZA0(Z){return typeof Z.kind==="number"}function JA0(Z){return!!Z.status}function qp(Z){return!!Z.name}function QA0(Z){if(!Pq(Z))return{};let J=Z.attributes[t.ATTR_URL_FULL]||Z.attributes[t.SEMATTRS_HTTP_URL],Q={url:J,"http.method":Z.attributes[t.ATTR_HTTP_REQUEST_METHOD]||Z.attributes[t.SEMATTRS_HTTP_METHOD]};if(!Q["http.method"]&&Q.url)Q["http.method"]="GET";try{if(typeof J==="string"){let $=AZ(J);if(Q.url=IZ($),$.search)Q["http.query"]=$.search;if($.hash)Q["http.fragment"]=$.hash}}catch{}return Q}function $A0(Z){if(ZA0(Z))return Z.kind;return b.SpanKind.INTERNAL}function wJ(Z){return Z.getValue(kq)}function Dp(Z,J){return Z.setValue(kq,J)}function WA0(Z,J){T0(Z,jp,J)}function Y$(Z){return Z[jp]}function UJ(Z){let{traceFlags:J,traceState:Q}=Z,$=Q?Q.get(Rq)==="1":!1;if(J===b.TraceFlags.SAMPLED)return!0;if($)return!1;let Y=Q?Q.get(Mq):void 0,X=Y?O9(Y):void 0;if(X?.sampled==="true")return!0;if(X?.sampled==="false")return!1;return}function Op(Z,J,Q){let $=J[t.ATTR_HTTP_REQUEST_METHOD]||J[t.SEMATTRS_HTTP_METHOD];if($)return zA0({attributes:J,name:Z,kind:Q},$);let Y=J[t.ATTR_DB_SYSTEM_NAME]||J[t.SEMATTRS_DB_SYSTEM],X=typeof J[g]==="string"&&J[g].startsWith("cache.");if(Y&&!X)return KA0({attributes:J,name:Z});let W=J[H0]==="custom"?"custom":"route";if(J[t.SEMATTRS_RPC_SERVICE])return{...$$(Z,J,"route"),op:"rpc"};if(J[t.SEMATTRS_MESSAGING_SYSTEM])return{...$$(Z,J,W),op:"message"};let G=J[t.SEMATTRS_FAAS_TRIGGER];if(G)return{...$$(Z,J,W),op:G.toString()};return{op:void 0,description:Z,source:"custom"}}function Lp(Z){let J=Pq(Z)?Z.attributes:{},Q=qp(Z)?Z.name:"<unknown>",$=$A0(Z);return Op(Q,J,$)}function KA0({attributes:Z,name:J}){let Q=Z[L6];if(typeof Q==="string")return{op:"db",description:Q,source:Z[H0]||"custom"};if(Z[H0]==="custom")return{op:"db",description:J,source:"custom"};let $=Z[t.SEMATTRS_DB_STATEMENT];return{op:"db",description:$?$.toString():J,source:"task"}}function zA0({name:Z,kind:J,attributes:Q},$){let Y=["http"];switch(J){case b.SpanKind.CLIENT:Y.push("client");break;case b.SpanKind.SERVER:Y.push("server");break}if(Q["sentry.http.prefetch"])Y.push("prefetch");let{urlPath:X,url:W,query:K,fragment:z,hasRoute:G}=HA0(Q,J);if(!X)return{...$$(Z,Q),op:Y.join(".")};let H=Q[qJ],B=`${$} ${X}`,V=H?`${B} (${GA0(H)})`:B,F=G||X==="/"?"route":"url",U={};if(W)U.url=W;if(K)U["http.query"]=K;if(z)U["http.fragment"]=z;let w=J===b.SpanKind.CLIENT||J===b.SpanKind.SERVER,L=!`${Q[f]||"manual"}`.startsWith("auto"),C=Q[H0]==="custom",R=Q[L6],T=!C&&R==null&&(w||!L),{description:_,source:m}=T?{description:V,source:F}:$$(Z,Q);return{op:Y.join("."),description:_,source:m,data:U}}function GA0(Z){if(Array.isArray(Z)){let J=Z.slice().sort();if(J.length<=5)return J.join(", ");else return`${J.slice(0,5).join(", ")}, +${J.length-5}`}return`${Z}`}function HA0(Z,J){let Q=Z[t.SEMATTRS_HTTP_TARGET],$=Z[t.SEMATTRS_HTTP_URL]||Z[t.ATTR_URL_FULL],Y=Z[t.ATTR_HTTP_ROUTE],X=typeof $==="string"?AZ($):void 0,W=X?IZ(X):void 0,K=X?.search||void 0,z=X?.hash||void 0;if(typeof Y==="string")return{urlPath:Y,url:W,query:K,fragment:z,hasRoute:!0};if(J===b.SpanKind.SERVER&&typeof Q==="string")return{urlPath:I8(Q),url:W,query:K,fragment:z,hasRoute:!1};if(X)return{urlPath:W,url:W,query:K,fragment:z,hasRoute:!1};if(typeof Q==="string")return{urlPath:I8(Q),url:W,query:K,fragment:z,hasRoute:!1};return{urlPath:void 0,url:W,query:K,fragment:z,hasRoute:!1}}function $$(Z,J,Q="custom"){let $=J[H0]||Q,Y=J[L6];if(Y&&typeof Y==="string")return{description:Y,source:$};return{description:Z,source:$}}function Cp(Z){Z.on("createDsc",(J,Q)=>{if(!Q)return;let X=v(Q).data[H0],{description:W}=qp(Q)?Lp(Q):{description:void 0};if(X!=="url"&&W)J.transaction=W;if(P0()){let K=UJ(Q.spanContext());J.sampled=K==null?void 0:String(K)}})}function Pp(){return b.trace.getActiveSpan()}function Mp({dsc:Z,sampled:J}){let Q=Z?LZ(Z):void 0,$=new a1.TraceState,Y=Q?$.set(Mq,Q):$;return J===!1?Y.set(Rq,"1"):Y}function kp(){return Array.from(Rp)}function PK(Z){Rp.add(Z)}function Np(Z,J={}){let Q=b.trace.getSpan(Z);if(Q?.spanContext().isRemote){let K=Q.spanContext();return{dynamicSamplingContext:u0(Q),traceId:K.traceId,spanId:void 0,sampled:UJ(K)}}if(Q){let K=Q.spanContext();return{dynamicSamplingContext:u0(Q),traceId:K.traceId,spanId:K.spanId,sampled:UJ(K)}}let $=J.scope||wJ(Z)?.scope||i(),Y=J.client||k(),X=$.getPropagationContext();return{dynamicSamplingContext:Y?p9(Y,$):void 0,traceId:X.traceId,spanId:X.propagationSpanId,sampled:X.sampled}}function Ap(Z,{sentryTrace:J,baggage:Q}){let $=d7(J,Q),{traceId:Y,parentSpanId:X,sampled:W,dsc:K}=$,z=k(),G=O9(Q);if(!X||z&&!dQ(z,G?.org_id))return Z;let H=UA0({traceId:Y,spanId:X,sampled:W,dsc:K});return b.trace.setSpanContext(Z,H)}function BA0(Z,J,Q){let $=Ip(Ap(Z,J));return b.context.with($,Q)}function Ip(Z){let J=wJ(Z),Q={scope:J?J.scope:i().clone(),isolationScope:J?J.isolationScope:x()};return Dp(Z,Q)}function VA0(Z){try{let J=Z[Uq];return Array.isArray(J)?J.join(","):J}catch{return}}function FA0(Z){let J=v(Z).data,Q=J[t.SEMATTRS_HTTP_URL]||J[t.ATTR_URL_FULL];if(typeof Q==="string")return Q;let $=Z.spanContext().traceState?.get(wp);if($)return $;return}function UA0({spanId:Z,traceId:J,sampled:Q,dsc:$}){let Y=Mp({dsc:$,sampled:Q});return{traceId:J,spanId:Z,isRemote:!0,traceFlags:Q?b.TraceFlags.SAMPLED:b.TraceFlags.NONE,traceState:Y}}function Tp(Z,J,Q){let $=fp(),{name:Y,parentSpan:X}=Z;return hp(X)(()=>{let K=Sp(Z.scope,Z.forceTransaction),G=Z.onlyIfParent&&!b.trace.getSpan(K)?a1.suppressTracing(K):K,H=yp(Z);if(!P0()){let B=a1.isTracingSuppressed(G)?G:a1.suppressTracing(G);return b.context.with(B,()=>{return $.startActiveSpan(Y,H,B,(V)=>{return b.context.with(K,()=>{return L9(()=>J(V),()=>{if(v(V).status===void 0)V.setStatus({code:b.SpanStatusCode.ERROR})},Q?()=>V.end():void 0)})})})}return $.startActiveSpan(Y,H,G,(B)=>{return L9(()=>J(B),()=>{if(v(B).status===void 0)B.setStatus({code:b.SpanStatusCode.ERROR})},Q?()=>B.end():void 0)})})}function qA0(Z,J){return Tp(Z,J,!0)}function wA0(Z,J){return Tp(Z,(Q)=>J(Q,()=>Q.end()),!1)}function jA0(Z){let J=fp(),{name:Q,parentSpan:$}=Z;return hp($)(()=>{let X=Sp(Z.scope,Z.forceTransaction),K=Z.onlyIfParent&&!b.trace.getSpan(X)?a1.suppressTracing(X):X,z=yp(Z);if(!P0())K=a1.isTracingSuppressed(K)?K:a1.suppressTracing(K);return J.startSpan(Q,z,K)})}function Ep(Z,J){let Q=Z?b.trace.setSpan(b.context.active(),Z):b.trace.deleteSpan(b.context.active());return b.context.with(Q,()=>J(i()))}function fp(){return k()?.tracer||b.trace.getTracer("@sentry/opentelemetry",e)}function yp(Z){let{startTime:J,attributes:Q,kind:$,op:Y,links:X}=Z,W=typeof J==="number"?DA0(J):J;return{attributes:Y?{[g]:Y,...Q}:Q,kind:$,links:X,startTime:W}}function DA0(Z){return Z<9999999999?Z*1000:Z}function Sp(Z,J){let Q=OA0(Z),$=b.trace.getSpan(Q);if(!$)return Q;if(!J)return Q;let Y=b.trace.deleteSpan(Q),{spanId:X,traceId:W}=$.spanContext(),K=UJ($.spanContext()),z=D0($),G=u0(z),H=Mp({dsc:G,sampled:K}),B={traceId:W,spanId:X,isRemote:!0,traceFlags:K?b.TraceFlags.SAMPLED:b.TraceFlags.NONE,traceState:H};return b.trace.setSpanContext(Y,B)}function OA0(Z){if(Z){let J=Y$(Z);if(J)return J}return b.context.active()}function LA0(Z,J){return BA0(b.context.active(),Z,J)}function _p(Z,J){let Q=Y$(J),$=Q&&b.trace.getSpan(Q),Y=$?MZ($):x7(J);return[$?u0($):p9(Z,J),Y]}function hp(Z){return Z!==void 0?(J)=>{return Ep(Z,J)}:(J)=>J()}function CA0(Z){let J=a1.suppressTracing(b.context.active());return b.context.with(J,Z)}function bp(Z){Z.on("preprocessEvent",(J)=>{let Q=Pp();if(!Q||J.type==="transaction")return;J.contexts={trace:MZ(Q),...J.contexts};let $=D0(Q);return J.sdkProcessingMetadata={dynamicSamplingContext:u0($),...J.sdkProcessingMetadata},J})}function PA0({span:Z,scope:J,client:Q,propagateTraceparent:$}={}){let Y=(J&&Y$(J))??G6.context.active();if(Z){let{scope:H}=q9(Z);Y=H&&Y$(H)||G6.trace.setSpan(G6.context.active(),Z)}let{traceId:X,spanId:W,sampled:K,dynamicSamplingContext:z}=Np(Y,{scope:J,client:Q}),G={"sentry-trace":CZ(X,W,K),baggage:LZ(z)};if($)G.traceparent=PZ(X,W,K);return G}function vp(){function Z(){let K=G6.context.active(),z=wJ(K);if(z)return z;return{scope:q4(),isolationScope:X6()}}function J(K){let z=G6.context.active();return G6.context.with(z,()=>{return K(X())})}function Q(K,z){let G=Y$(K)||G6.context.active();return G6.context.with(G.setValue(wq,K),()=>{return z(K)})}function $(K){let z=G6.context.active();return G6.context.with(z.setValue(qq,!0),()=>{return K(W())})}function Y(K,z){let G=G6.context.active();return G6.context.with(G.setValue(jq,K),()=>{return z(W())})}function X(){return Z().scope}function W(){return Z().isolationScope}VV({withScope:J,withSetScope:Q,withSetIsolationScope:Y,withIsolationScope:$,getCurrentScope:X,getIsolationScope:W,startSpan:qA0,startSpanManual:wA0,startInactiveSpan:jA0,getActiveSpan:Pp,suppressTracing:CA0,getTraceData:PA0,continueTrace:LA0,withActiveSpan:Ep})}function xp(Z){class J extends Z{constructor(...Q){super(...Q);PK("SentryContextManager")}with(Q,$,Y,...X){let W=wJ(Q),K=W?.scope||i(),z=W?.isolationScope||x(),G=Q.getValue(qq)===!0,H=Q.getValue(wq),B=Q.getValue(jq),V=H||K.clone(),F=B||(G?z.clone():z),D=Dp(Q,{scope:V,isolationScope:F}).deleteValue(qq).deleteValue(wq).deleteValue(jq);return WA0(V,D),super.with(D,$,Y,...X)}getAsyncLocalStorageLookup(){return{asyncLocalStorage:this._asyncLocalStorage,contextSymbol:kq}}}return J}function MA0(Z){let J=new Map;for(let Q of Z)RA0(J,Q);return Array.from(J,function([Q,$]){return $})}function gp(Z){return Z.attributes[Lq]!==!0?Cq(Z):void 0}function RA0(Z,J){let Q=J.spanContext().spanId,$=gp(J);if(!$){Dq(Z,{id:Q,span:J,children:[]});return}let Y=kA0(Z,$),X=Dq(Z,{id:Q,span:J,parentNode:Y,children:[]});Y.children.push(X)}function kA0(Z,J){let Q=Z.get(J);if(Q)return Q;return Dq(Z,{id:J,children:[]})}function Dq(Z,J){let Q=Z.get(J.id);if(Q?.span)return Q;if(Q&&!Q.span)return Q.span=J.span,Q.parentNode=J.parentNode,Q;return Z.set(J.id,J),J}function cp(Z){let J=Pq(Z)?Z.attributes:{},Q=JA0(Z)?Z.status:void 0;if(Q){if(Q.code===b.SpanStatusCode.OK)return{code:UZ};else if(Q.code===b.SpanStatusCode.ERROR){if(typeof Q.message>"u"){let Y=Vp(J);if(Y)return Y}if(Q.message&&NA0(Q.message))return{code:a,message:Q.message};else return{code:a,message:"internal_error"}}}let $=Vp(J);if($)return $;if(Q?.code===b.SpanStatusCode.UNSET)return{code:UZ};else return{code:a,message:"unknown_error"}}function Vp(Z){let J=Z[t.ATTR_HTTP_RESPONSE_STATUS_CODE]||Z[t.SEMATTRS_HTTP_STATUS_CODE],Q=Z[t.SEMATTRS_RPC_GRPC_STATUS_CODE],$=typeof J==="number"?J:typeof J==="string"?parseInt(J):void 0;if(typeof $==="number")return D6($);if(typeof Q==="string")return{code:a,message:dp[Q]||"unknown_error"};return}class mp{constructor(Z){this._finishedSpanBucketSize=Z?.timeout||Up,this._finishedSpanBuckets=Array(this._finishedSpanBucketSize).fill(void 0),this._lastCleanupTimestampInS=Math.floor(l6()/1000),this._spansToBucketEntry=new WeakMap,this._sentSpans=new Map,this._debouncedFlush=qF(this.flush.bind(this),1,{maxWait:100})}export(Z){let J=Math.floor(l6()/1000);if(this._lastCleanupTimestampInS!==J){let X=0;if(this._finishedSpanBuckets.forEach((W,K)=>{if(W&&W.timestampInS<=J-this._finishedSpanBucketSize)X+=W.spans.size,this._finishedSpanBuckets[K]=void 0}),X>0)iZ&&O.log(`SpanExporter dropped ${X} spans because they were pending for more than ${this._finishedSpanBucketSize} seconds.`);this._lastCleanupTimestampInS=J}let Q=J%this._finishedSpanBucketSize,$=this._finishedSpanBuckets[Q]||{timestampInS:J,spans:new Set};this._finishedSpanBuckets[Q]=$,$.spans.add(Z),this._spansToBucketEntry.set(Z,$);let Y=gp(Z);if(!Y||this._sentSpans.has(Y))this._debouncedFlush()}flush(){let Z=this._finishedSpanBuckets.flatMap((X)=>X?Array.from(X.spans):[]);this._flushSentSpanCache();let J=this._maybeSend(Z),Q=J.size,$=Z.length-Q;iZ&&O.log(`SpanExporter exported ${Q} spans, ${$} spans are waiting for their parent spans to finish`);let Y=l6()+Up*1000;for(let X of J){this._sentSpans.set(X.spanContext().spanId,Y);let W=this._spansToBucketEntry.get(X);if(W)W.spans.delete(X)}this._debouncedFlush.cancel()}clear(){this._finishedSpanBuckets=this._finishedSpanBuckets.fill(void 0),this._sentSpans.clear(),this._debouncedFlush.cancel()}_maybeSend(Z){let J=MA0(Z),Q=new Set,$=this._getCompletedRootNodes(J);for(let Y of $){let X=Y.span;Q.add(X);let W=IA0(X);if(Y.parentNode&&this._sentSpans.has(Y.parentNode.id)){let G=W.contexts?.trace?.data;if(G)G["sentry.parent_span_already_sent"]=!0}let K=W.spans||[];for(let G of Y.children)Oq(G,K,Q);W.spans=K.length>Fp?K.sort((G,H)=>G.start_timestamp-H.start_timestamp).slice(0,Fp):K;let z=i7(X.events);if(z)W.measurements=z;r7(W)}return Q}_flushSentSpanCache(){let Z=l6();for(let[J,Q]of this._sentSpans.entries())if(Q<=Z)this._sentSpans.delete(J)}_nodeIsCompletedRootNodeOrHasSentParent(Z){return!!Z.span&&(!Z.parentNode||this._sentSpans.has(Z.parentNode.id))}_getCompletedRootNodes(Z){return Z.filter((J)=>this._nodeIsCompletedRootNodeOrHasSentParent(J))}}function AA0(Z){let J=Z.attributes,Q=J[f],$=J[g],Y=J[H0];return{origin:Q,op:$,source:Y}}function IA0(Z){let{op:J,description:Q,data:$,origin:Y="manual",source:X}=up(Z),W=q9(Z),K=Z.attributes[W6],z={[H0]:X,[W6]:K,[g]:J,[f]:Y,...$,...lp(Z.attributes)},{links:G}=Z,{traceId:H,spanId:B}=Z.spanContext(),V=Cq(Z),F=cp(Z),U={parent_span_id:V,span_id:B,trace_id:H,data:z,origin:Y,op:J,status:u7(F),links:m7(G)},w=z[t.ATTR_HTTP_RESPONSE_STATUS_CODE],D=typeof w==="number"?{response:{status_code:w}}:void 0;return{contexts:{trace:U,otel:{resource:Z.resource.attributes},...D},spans:[],start_timestamp:K6(Z.startTime),timestamp:K6(Z.endTime),transaction:Q,type:"transaction",sdkProcessingMetadata:{capturedSpanScope:W.scope,capturedSpanIsolationScope:W.isolationScope,sampleRate:K,dynamicSamplingContext:u0(Z)},...X&&{transaction_info:{source:X}}}}function Oq(Z,J,Q){let $=Z.span;if($)Q.add($);if(!$){Z.children.forEach((R)=>{Oq(R,J,Q)});return}let X=$.spanContext().spanId,W=$.spanContext().traceId,K=Cq($),{attributes:z,startTime:G,endTime:H,links:B}=$,{op:V,description:F,data:U,origin:w="manual"}=up($),D={[f]:w,[g]:V,...lp(z),...U},L=cp($),C={span_id:X,trace_id:W,data:D,description:F,parent_span_id:K,start_timestamp:K6(G),timestamp:K6(H)||void 0,status:u7(L),op:V,origin:w,measurements:i7($.events),links:m7(B)};J.push(C),Z.children.forEach((R)=>{Oq(R,J,Q)})}function up(Z){let{op:J,source:Q,origin:$}=AA0(Z),{op:Y,description:X,source:W,data:K}=Lp(Z),z=J||Y,G=Q||W,H={...K,...TA0(Z)};return{op:z,description:X,source:G,origin:$,data:H}}function lp(Z){let J={...Z};return delete J[W6],delete J[Lq],delete J[L6],J}function TA0(Z){let J=Z.attributes,Q={};if(Z.kind!==b.SpanKind.INTERNAL)Q["otel.kind"]=b.SpanKind[Z.kind];let $=J[t.SEMATTRS_HTTP_STATUS_CODE];if($)Q[t.ATTR_HTTP_RESPONSE_STATUS_CODE]=$;let Y=QA0(Z);if(Y.url)Q.url=Y.url;if(Y["http.query"])Q["http.query"]=Y["http.query"].slice(1);if(Y["http.fragment"])Q["http.fragment"]=Y["http.fragment"].slice(1);return Q}function EA0(Z,J){let Q=b.trace.getSpan(J),$=wJ(J);if(Q&&!Q.spanContext().isRemote)M4(Q,Z);if(Q?.spanContext().isRemote)Z.setAttribute(Lq,!0);if(J===b.ROOT_CONTEXT)$={scope:q4(),isolationScope:X6()};if($)hQ(Z,$.scope,$.isolationScope);iQ(Z),k()?.emit("spanStart",Z)}function fA0(Z){oQ(Z),k()?.emit("spanEnd",Z)}class Aq{constructor(Z){PK("SentrySpanProcessor"),this._exporter=new mp(Z)}async forceFlush(){this._exporter.flush()}async shutdown(){this._exporter.clear()}onStart(Z,J){EA0(Z,J)}onEnd(Z){fA0(Z),this._exporter.export(Z)}}class Iq{constructor(Z){this._client=Z,PK("SentrySampler")}shouldSample(Z,J,Q,$,Y,X){let W=this._client.getOptions(),K=_A0(Z),z=K?.spanContext();if(!P0(W))return FJ({decision:void 0,context:Z,spanAttributes:Y});let G=Y[t.SEMATTRS_HTTP_METHOD]||Y[t.ATTR_HTTP_REQUEST_METHOD];if($===b.SpanKind.CLIENT&&G&&(!K||z?.isRemote))return FJ({decision:void 0,context:Z,spanAttributes:Y});let H=K?yA0(K,J,Q):void 0;if(!(!K||z?.isRemote))return FJ({decision:H?b0.RECORD_AND_SAMPLED:b0.NOT_RECORD,context:Z,spanAttributes:Y});let{description:V,data:F,op:U}=Op(Q,Y,$),w={...F,...Y};if(U)w[g]=U;let D={decision:!0};if(this._client.emit("beforeSampling",{spanAttributes:w,spanName:V,parentSampled:H,parentContext:z},D),!D.decision)return FJ({decision:void 0,context:Z,spanAttributes:Y});let{isolationScope:L}=wJ(Z)??{},C=z?.traceState?z.traceState.get(Mq):void 0,R=C?O9(C):void 0,T=C6(R?.sample_rand)??W1(),[_,m,l]=nQ(W,{name:V,attributes:w,normalizedRequest:L?.getScopeData().sdkProcessingMetadata.normalizedRequest,parentSampled:H,parentSampleRate:C6(R?.sample_rate)},T),y0=`${G}`.toUpperCase();if(y0==="OPTIONS"||y0==="HEAD")return iZ&&O.log(`[Tracing] Not sampling span because HTTP method is '${y0}' for ${Q}`),FJ({decision:b0.NOT_RECORD,context:Z,spanAttributes:Y,sampleRand:T,downstreamTraceSampleRate:0});if(!_&&H===void 0)iZ&&O.log("[Tracing] Discarding root span because its trace was not chosen to be sampled."),this._client.recordDroppedEvent("sample_rate","transaction");return{...FJ({decision:_?b0.RECORD_AND_SAMPLED:b0.NOT_RECORD,context:Z,spanAttributes:Y,sampleRand:T,downstreamTraceSampleRate:l?m:void 0}),attributes:{[W6]:l?m:void 0}}}toString(){return"SentrySampler"}}function yA0(Z,J,Q){let $=Z.spanContext();if(b.isSpanContextValid($)&&$.traceId===J){if($.isRemote){let X=UJ(Z.spanContext());return iZ&&O.log(`[Tracing] Inheriting remote parent's sampled decision for ${Q}: ${X}`),X}let Y=UJ($);return iZ&&O.log(`[Tracing] Inheriting parent's sampled decision for ${Q}: ${Y}`),Y}return}function FJ({decision:Z,context:J,spanAttributes:Q,sampleRand:$,downstreamTraceSampleRate:Y}){let X=SA0(J,Q);if(Y!==void 0)X=X.set(XA0,`${Y}`);if($!==void 0)X=X.set(YA0,`${$}`);if(Z==null)return{decision:b0.NOT_RECORD,traceState:X};if(Z===b0.NOT_RECORD)return{decision:Z,traceState:X.set(Rq,"1")};return{decision:Z,traceState:X}}function SA0(Z,J){let Y=b.trace.getSpan(Z)?.spanContext()?.traceState||new a1.TraceState,X=J[t.SEMATTRS_HTTP_URL]||J[t.ATTR_URL_FULL];if(X&&typeof X==="string")Y=Y.set(wp,X);return Y}function _A0(Z){let J=b.trace.getSpan(Z);return J&&b.isSpanContextValid(J.spanContext())?J:void 0}var t,G6,b,a1,Lq="sentry.parentIsRemote",qJ="sentry.graphql.operation",Fq="sentry-trace",Uq="baggage",Mq="sentry.dsc",Rq="sentry.sampled_not_recording",wp="sentry.url",YA0="sentry.sample_rand",XA0="sentry.sample_rate",kq,qq,wq,jq,jp="_scopeContext",iZ,Rp,Nq,dp,NA0=(Z)=>{return Object.values(dp).includes(Z)},Fp=1000,Up=300;var jJ=q(()=>{N();Vq();t=A(Y0(),1),G6=A(I(),1),b=A(I(),1),a1=A(R0(),1);kq=b.createContextKey("sentry_scopes"),qq=b.createContextKey("sentry_fork_isolation_scope"),wq=b.createContextKey("sentry_fork_set_scope"),jq=b.createContextKey("sentry_fork_set_isolation_scope");iZ=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;Rp=new Set;Nq=class Nq extends a1.W3CBaggagePropagator{constructor(){super();PK("SentryPropagator"),this._urlMatchesTargetsMap=new I6(100)}inject(Z,J,Q){if(a1.isTracingSuppressed(Z)){iZ&&O.log("[Tracing] Not injecting trace data for url because tracing is suppressed.");return}let $=b.trace.getSpan(Z),Y=$&&FA0($),{tracePropagationTargets:X,propagateTraceparent:W}=k()?.getOptions()||{};if(!Y5(Y,X,this._urlMatchesTargetsMap)){iZ&&O.log("[Tracing] Not injecting trace data for url because it does not match tracePropagationTargets:",Y);return}let K=VA0(J),z=b.propagation.getBaggage(Z)||b.propagation.createBaggage({}),{dynamicSamplingContext:G,traceId:H,spanId:B,sampled:V}=Np(Z);if(K){let F=g7(K);if(F)Object.entries(F).forEach(([U,w])=>{z=z.setEntry(U,{value:w})})}if(G)z=Object.entries(G).reduce((F,[U,w])=>{if(w)return F.setEntry(`${L4}${U}`,{value:w});return F},z);if(H&&H!==b.INVALID_TRACEID){if(Q.set(J,Fq,CZ(H,B,V)),W)Q.set(J,"traceparent",PZ(H,B,V))}super.inject(b.propagation.setBaggage(Z,z),J,Q)}extract(Z,J,Q){let $=Q.get(J,Fq),Y=Q.get(J,Uq),X=$?Array.isArray($)?$[0]:$:void 0;return Ip(Ap(Z,{sentryTrace:X,baggage:Y}))}fields(){return[Fq,Uq,"traceparent"]}};dp={"1":"cancelled","2":"unknown_error","3":"invalid_argument","4":"deadline_exceeded","5":"not_found","6":"already_exists","7":"permission_denied","8":"resource_exhausted","9":"failed_precondition","10":"aborted","11":"out_of_range","12":"unimplemented","13":"internal_error","14":"unavailable","15":"data_loss","16":"unauthenticated"}});var pp,MK;var ip=q(()=>{jJ();pp=A(gl(),1),MK=xp(pp.AsyncLocalStorageContextManager)});function Tq(){X$.diag.disable(),X$.diag.setLogger({error:O.error,warn:O.warn,info:O.log,debug:O.log,verbose:O.log},X$.DiagLogLevel.DEBUG)}var X$;var op=q(()=>{N();X$=A(I(),1)});function S(Z,J,Q){if(Q)return bA0(Z,J,Q);return hA0(Z,J)}function hA0(Z,J){return Object.assign((Q)=>{let $=W$[Z];if($){if(Q)$.setConfig(Q);return $}let Y=J(Q);return W$[Z]=Y,Eq.registerInstrumentations({instrumentations:[Y]}),Y},{id:Z})}function bA0(Z,J,Q){return Object.assign(($)=>{let Y=Q($),X=W$[Z];if(X)return X.setConfig(Y),X;let W=new J(Y);return W$[Z]=W,Eq.registerInstrumentations({instrumentations:[W]}),W},{id:Z})}function u8(Z){let J=!1,Q=[];if(!vA0(Z))J=!0;else{let Y=Z._wrap;Z._wrap=(...X)=>{return J=!0,Q.forEach((W)=>W()),Q=[],Y(...X)}}return(Y)=>{if(J)Y();else Q.push(Y)}}function vA0(Z){return typeof Z._wrap==="function"}var Eq,W$;var RK=q(()=>{Eq=A(n(),1),W$={}});import*as fq from"diagnostics_channel";function gA0(Z,J){let Q=!1,$;Z.on("spawn",()=>{if(Z.spawnfile==="/usr/bin/sw_vers"){Q=!0;return}if($={spawnfile:Z.spawnfile},J.includeChildProcessArgs)$.spawnargs=Z.spawnargs}).on("exit",(Y)=>{if(!Q){if(Q=!0,Y!==null&&Y!==0)N1({category:"child_process",message:`Child process exited with code '${Y}'`,level:Y===0?"info":"warning",data:$})}}).on("error",(Y)=>{if(!Q)Q=!0,N1({category:"child_process",message:`Child process errored with '${Y.message}'`,level:"error",data:$})})}function dA0(Z,J){let Q;Z.on("online",()=>{Q=Z.threadId}).on("error",($)=>{if(J.captureWorkerErrors!==!1)h($,{mechanism:{type:"auto.child_process.worker_thread",handled:!1,data:{threadId:String(Q)}}});else N1({category:"worker_thread",message:`Worker thread errored with '${$.message}'`,level:"error",data:{threadId:Q}})})}var xA0="ChildProcess",yq;var np=q(()=>{N();yq=P((Z={})=>{return{name:xA0,setup(){fq.channel("child_process").subscribe((J)=>{if(J&&typeof J==="object"&&"process"in J)gA0(J.process,Z)}),fq.channel("worker_threads").subscribe((J)=>{if(J&&typeof J==="object"&&"worker"in J)dA0(J.worker,Z)})}}})});import{execFile as cA0}from"child_process";import{readFile as mA0,readdir as uA0}from"fs";import*as C1 from"os";import{join as lA0}from"path";import{promisify as sp}from"util";function aA0(Z){if(Z.app?.app_memory)Z.app.app_memory=process.memoryUsage().rss;if(Z.app?.free_memory&&typeof process.availableMemory==="function"){let J=process.availableMemory?.();if(J!=null)Z.app.free_memory=J}if(Z.device?.free_memory)Z.device.free_memory=C1.freemem();return Z}async function sA0(){let Z=C1.platform();switch(Z){case"darwin":return $I0();case"linux":return YI0();default:return{name:ZI0[Z]||Z,version:C1.release()}}}function rA0(){try{if(typeof process.versions.icu!=="string")return;let Z=new Date(900000000);if(new Intl.DateTimeFormat("es",{month:"long"}).format(Z)==="enero"){let Q=Intl.DateTimeFormat().resolvedOptions();return{locale:Q.locale,timezone:Q.timeZone}}}catch{}return}function tA0(){let Z=process.memoryUsage().rss,Q={app_start_time:new Date(Date.now()-process.uptime()*1000).toISOString(),app_memory:Z};if(typeof process.availableMemory==="function"){let $=process.availableMemory?.();if($!=null)Q.free_memory=$}return Q}function eA0(Z){let J={},Q;try{Q=C1.uptime()}catch{}if(typeof Q==="number")J.boot_time=new Date(Date.now()-Q*1000).toISOString();if(J.arch=C1.arch(),Z===!0||Z.memory)J.memory_size=C1.totalmem(),J.free_memory=C1.freemem();if(Z===!0||Z.cpu){let $=C1.cpus(),Y=$?.[0];if(Y)J.processor_count=$.length,J.cpu_description=Y.model,J.processor_frequency=Y.speed}return J}function e9(Z,J){let Q=Z.exec(J);return Q?Q[1]:void 0}async function $I0(){let Z={kernel_version:C1.release(),name:"Mac OS X",version:`10.${Number(C1.release().split(".")[0])-4}`};try{let J=await new Promise((Q,$)=>{cA0("/usr/bin/sw_vers",(Y,X)=>{if(Y){$(Y);return}Q(X)})});Z.name=e9(/^ProductName:\s+(.*)$/m,J),Z.version=e9(/^ProductVersion:\s+(.*)$/m,J),Z.build=e9(/^BuildVersion:\s+(.*)$/m,J)}catch{}return Z}function ap(Z){return Z.split(" ")[0].toLowerCase()}async function YI0(){let Z={kernel_version:C1.release(),name:"Linux"};try{let J=await iA0("/etc"),Q=JI0.find((K)=>J.includes(K.name));if(!Q)return Z;let $=lA0("/etc",Q.name),Y=(await pA0($,{encoding:"utf-8"})).toLowerCase(),{distros:X}=Q;Z.name=X.find((K)=>Y.indexOf(ap(K))>=0)||X[0];let W=ap(Z.name);Z.version=QI0[W]?.(Y)}catch{}return Z}function XI0(){if(process.env.VERCEL)return{"cloud.provider":"vercel","cloud.region":process.env.VERCEL_REGION};else if(process.env.AWS_REGION)return{"cloud.provider":"aws","cloud.region":process.env.AWS_REGION,"cloud.platform":process.env.AWS_EXECUTION_ENV};else if(process.env.GCP_PROJECT)return{"cloud.provider":"gcp"};else if(process.env.ALIYUN_REGION_ID)return{"cloud.provider":"alibaba_cloud","cloud.region":process.env.ALIYUN_REGION_ID};else if(process.env.WEBSITE_SITE_NAME&&process.env.REGION_NAME)return{"cloud.provider":"azure","cloud.region":process.env.REGION_NAME};else if(process.env.IBM_CLOUD_REGION)return{"cloud.provider":"ibm_cloud","cloud.region":process.env.IBM_CLOUD_REGION};else if(process.env.TENCENTCLOUD_REGION)return{"cloud.provider":"tencent_cloud","cloud.region":process.env.TENCENTCLOUD_REGION,"cloud.account.id":process.env.TENCENTCLOUD_APPID,"cloud.availability_zone":process.env.TENCENTCLOUD_ZONE};else if(process.env.NETLIFY)return{"cloud.provider":"netlify"};else if(process.env.FLY_REGION)return{"cloud.provider":"fly.io","cloud.region":process.env.FLY_REGION};else if(process.env.DYNO)return{"cloud.provider":"heroku"};else return}var pA0,iA0,oA0="Context",nA0=(Z={})=>{let J,Q={app:!0,os:!0,device:!0,culture:!0,cloudResource:!0,...Z};async function $(X){if(J===void 0)J=Y();let W=aA0(await J);return X.contexts={...X.contexts,app:{...W.app,...X.contexts?.app},os:{...W.os,...X.contexts?.os},device:{...W.device,...X.contexts?.device},culture:{...W.culture,...X.contexts?.culture},cloud_resource:{...W.cloud_resource,...X.contexts?.cloud_resource}},X}async function Y(){let X={};if(Q.os)X.os=await sA0();if(Q.app)X.app=tA0();if(Q.device)X.device=eA0(Q.device);if(Q.culture){let W=rA0();if(W)X.culture=W}if(Q.cloudResource)X.cloud_resource=XI0();return X}return{name:oA0,processEvent(X){return $(X)}}},oZ,ZI0,JI0,QI0;var Sq=q(()=>{N();pA0=sp(mA0),iA0=sp(uA0),oZ=P(nA0);ZI0={aix:"IBM AIX",freebsd:"FreeBSD",openbsd:"OpenBSD",sunos:"SunOS",win32:"Windows",ohos:"OpenHarmony",android:"Android"},JI0=[{name:"fedora-release",distros:["Fedora"]},{name:"redhat-release",distros:["Red Hat Linux","Centos"]},{name:"redhat_version",distros:["Red Hat Linux"]},{name:"SuSE-release",distros:["SUSE Linux"]},{name:"lsb-release",distros:["Ubuntu Linux","Arch Linux"]},{name:"debian_version",distros:["Debian"]},{name:"debian_release",distros:["Debian"]},{name:"arch-release",distros:["Arch Linux"]},{name:"gentoo-release",distros:["Gentoo Linux"]},{name:"novell-release",distros:["SUSE Linux"]},{name:"alpine-release",distros:["Alpine Linux"]}],QI0={alpine:(Z)=>Z,arch:(Z)=>e9(/distrib_release=(.*)/,Z),centos:(Z)=>e9(/release ([^ ]+)/,Z),debian:(Z)=>Z,fedora:(Z)=>e9(/release (..)/,Z),mint:(Z)=>e9(/distrib_release=(.*)/,Z),red:(Z)=>e9(/release ([^ ]+)/,Z),suse:(Z)=>e9(/VERSION = (.*)\n/,Z),ubuntu:(Z)=>e9(/distrib_release=(.*)/,Z)}});import{createReadStream as WI0}from"fs";import{createInterface as KI0}from"readline";function VI0(Z,J,Q){let $=Z.get(J);if($===void 0)return Z.set(J,Q),Q;return $}function FI0(Z){if(Z.startsWith("node:"))return!0;if(Z.endsWith(".min.js"))return!0;if(Z.endsWith(".min.cjs"))return!0;if(Z.endsWith(".min.mjs"))return!0;if(Z.startsWith("data:"))return!0;return!1}function UI0(Z){if(Z.lineno!==void 0&&Z.lineno>BI0)return!0;if(Z.colno!==void 0&&Z.colno>HI0)return!0;return!1}function qI0(Z,J){let Q=_q.get(Z);if(Q===void 0)return!1;for(let $=J[0];$<=J[1];$++)if(Q[$]===void 0)return!1;return!0}function wI0(Z,J){if(!Z.length)return[];let Q=0,$=Z[0];if(typeof $!=="number")return[];let Y=tp($,J),X=[];while(!0){if(Q===Z.length-1){X.push(Y);break}let W=Z[Q+1];if(typeof W!=="number")break;if(W<=Y[1])Y[1]=W+J;else X.push(Y),Y=tp(W,J);Q++}return X}function jI0(Z,J,Q){return new Promise(($,Y)=>{let X=WI0(Z),W=KI0({input:X});function K(){X.destroy(),$()}let z=0,G=0,H=J[G];if(H===void 0){K();return}let B=H[0],V=H[1];function F(U){ep.set(Z,1),s&&O.error(`Failed to read file: ${Z}. Error: ${U}`),W.close(),W.removeAllListeners(),K()}X.on("error",F),W.on("error",F),W.on("close",K),W.on("line",(U)=>{if(z++,z<B)return;if(Q[z]=YV(U,0),z>=V){if(G===J.length-1){W.close(),W.removeAllListeners();return}G++;let w=J[G];if(w===void 0){W.close(),W.removeAllListeners();return}B=w[0],V=w[1]}})})}async function DI0(Z,J){let Q={};if(J>0&&Z.exception?.values)for(let X of Z.exception.values){if(!X.stacktrace?.frames?.length)continue;for(let W=X.stacktrace.frames.length-1;W>=0;W--){let K=X.stacktrace.frames[W],z=K?.filename;if(!K||typeof z!=="string"||typeof K.lineno!=="number"||FI0(z)||UI0(K))continue;if(!Q[z])Q[z]=[];Q[z].push(K.lineno)}}let $=Object.keys(Q);if($.length==0)return Z;let Y=[];for(let X of $){if(ep.get(X))continue;let W=Q[X];if(!W)continue;W.sort((G,H)=>G-H);let K=wI0(W,J);if(K.every((G)=>qI0(X,G)))continue;let z=VI0(_q,X,{});Y.push(jI0(X,K,z))}if(await Promise.all(Y).catch(()=>{s&&O.log("Failed to read one or more source files and resolve context lines")}),J>0&&Z.exception?.values){for(let X of Z.exception.values)if(X.stacktrace?.frames&&X.stacktrace.frames.length>0)OI0(X.stacktrace.frames,J,_q)}return Z}function OI0(Z,J,Q){for(let $ of Z)if($.filename&&$.context_line===void 0&&typeof $.lineno==="number"){let Y=Q.get($.filename);if(Y===void 0)continue;LI0($.lineno,$,J,Y)}}function rp(Z){delete Z.pre_context,delete Z.context_line,delete Z.post_context}function LI0(Z,J,Q,$){if(J.lineno===void 0||$===void 0){s&&O.error("Cannot resolve context for frame with no lineno or file contents");return}J.pre_context=[];for(let X=Zi(Z,Q);X<Z;X++){let W=$[X];if(W===void 0){rp(J),s&&O.error(`Could not find line ${X} in file ${J.filename}`);return}J.pre_context.push(W)}if($[Z]===void 0){rp(J),s&&O.error(`Could not find line ${Z} in file ${J.filename}`);return}J.context_line=$[Z];let Y=Ji(Z,Q);J.post_context=[];for(let X=Z+1;X<=Y;X++){let W=$[X];if(W===void 0)break;J.post_context.push(W)}}function Zi(Z,J){return Math.max(1,Z-J)}function Ji(Z,J){return Z+J}function tp(Z,J){return[Zi(Z,J),Ji(Z,J)]}var _q,ep,zI0=7,GI0="ContextLines",HI0=1000,BI0=1e4,CI0=(Z={})=>{let J=Z.frameContextLines!==void 0?Z.frameContextLines:zI0;return{name:GI0,processEvent(Q){return DI0(Q,J)}}},nZ;var hq=q(()=>{N();e6();_q=new I6(10),ep=new I6(20);nZ=P(CI0)});var Qi="Http",PI0,$i;var Yi=q(()=>{N();RK();WK();oU();rU();PI0=S(`${Qi}.sentry`,(Z)=>{return new XJ(Z)}),$i=P((Z={})=>{let J={sessions:Z.trackIncomingRequestsAsSessions,sessionFlushingDelayMS:Z.sessionFlushingDelayMS,ignoreRequestBody:Z.ignoreIncomingRequestBody,maxRequestBodySize:Z.maxIncomingRequestBodySize},Q={ignoreIncomingRequests:Z.ignoreIncomingRequests,ignoreStaticAssets:Z.ignoreStaticAssets,ignoreStatusCodes:Z.dropSpansForIncomingRequestStatusCodes},$={breadcrumbs:Z.breadcrumbs,propagateTraceInOutgoingRequests:Z.tracePropagation??!0,ignoreOutgoingRequests:Z.ignoreOutgoingRequests},Y=lZ(J),X=pZ(Q),W=Z.spans??!1,K=Z.disableIncomingRequestSpans??!1,z=W&&!K;return{name:Qi,setup(G){if(z)X.setup(G)},setupOnce(){Y.setupOnce(),PI0($)},processEvent(G){return X.processEvent(G)}}})});async function DJ(){if(kK===void 0)try{kK=!!(await import("inspector")).url()}catch{kK=!1}return kK}var kK;var NK=()=>{};function Wi(Z,J,Q){let $=0,Y=5,X=0;return setInterval(()=>{if(X===0){if($>Z){if(Y*=2,Q(Y),Y>86400)Y=86400;X=Y}}else if(X-=1,X===0)J();$=0},1000).unref(),()=>{$+=1}}function Xi(Z){return Z!==void 0&&(Z.length===0||Z==="?"||Z==="<anonymous>")}function AK(Z,J){return Z===J||`Object.${Z}`===J||Z===`Object.${J}`||Xi(Z)&&Xi(J)}var K$="__SENTRY_ERROR_LOCAL_VARIABLES__";var bq=()=>{};import{Worker as MI0}from"worker_threads";function Ki(...Z){O.log("[LocalVariables]",...Z)}var RI0="LyohIEBzZW50cnkvbm9kZS1jb3JlIDEwLjQ2LjAgKGU1ZmRjOWQpIHwgaHR0cHM6Ly9naXRodWIuY29tL2dldHNlbnRyeS9zZW50cnktamF2YXNjcmlwdCAqLwppbXBvcnR7U2Vzc2lvbiBhcyBlfWZyb20ibm9kZTppbnNwZWN0b3IvcHJvbWlzZXMiO2ltcG9ydHt3b3JrZXJEYXRhIGFzIHR9ZnJvbSJub2RlOndvcmtlcl90aHJlYWRzIjtjb25zdCBuPWdsb2JhbFRoaXMsaT17fTtjb25zdCBvPSJfX1NFTlRSWV9FUlJPUl9MT0NBTF9WQVJJQUJMRVNfXyI7Y29uc3QgYT10O2Z1bmN0aW9uIHMoLi4uZSl7YS5kZWJ1ZyYmZnVuY3Rpb24oZSl7aWYoISgiY29uc29sZSJpbiBuKSlyZXR1cm4gZSgpO2NvbnN0IHQ9bi5jb25zb2xlLG89e30sYT1PYmplY3Qua2V5cyhpKTthLmZvckVhY2goZT0+e2NvbnN0IG49aVtlXTtvW2VdPXRbZV0sdFtlXT1ufSk7dHJ5e3JldHVybiBlKCl9ZmluYWxseXthLmZvckVhY2goZT0+e3RbZV09b1tlXX0pfX0oKCk9PmNvbnNvbGUubG9nKCJbTG9jYWxWYXJpYWJsZXMgV29ya2VyXSIsLi4uZSkpfWFzeW5jIGZ1bmN0aW9uIGMoZSx0LG4saSl7Y29uc3Qgbz1hd2FpdCBlLnBvc3QoIlJ1bnRpbWUuZ2V0UHJvcGVydGllcyIse29iamVjdElkOnQsb3duUHJvcGVydGllczohMH0pO2lbbl09by5yZXN1bHQuZmlsdGVyKGU9PiJsZW5ndGgiIT09ZS5uYW1lJiYhaXNOYU4ocGFyc2VJbnQoZS5uYW1lLDEwKSkpLnNvcnQoKGUsdCk9PnBhcnNlSW50KGUubmFtZSwxMCktcGFyc2VJbnQodC5uYW1lLDEwKSkubWFwKGU9PmUudmFsdWU/LnZhbHVlKX1hc3luYyBmdW5jdGlvbiByKGUsdCxuLGkpe2NvbnN0IG89YXdhaXQgZS5wb3N0KCJSdW50aW1lLmdldFByb3BlcnRpZXMiLHtvYmplY3RJZDp0LG93blByb3BlcnRpZXM6ITB9KTtpW25dPW8ucmVzdWx0Lm1hcChlPT5bZS5uYW1lLGUudmFsdWU/LnZhbHVlXSkucmVkdWNlKChlLFt0LG5dKT0+KGVbdF09bixlKSx7fSl9ZnVuY3Rpb24gdShlLHQpe2UudmFsdWUmJigidmFsdWUiaW4gZS52YWx1ZT92b2lkIDA9PT1lLnZhbHVlLnZhbHVlfHxudWxsPT09ZS52YWx1ZS52YWx1ZT90W2UubmFtZV09YDwke2UudmFsdWUudmFsdWV9PmA6dFtlLm5hbWVdPWUudmFsdWUudmFsdWU6ImRlc2NyaXB0aW9uImluIGUudmFsdWUmJiJmdW5jdGlvbiIhPT1lLnZhbHVlLnR5cGU/dFtlLm5hbWVdPWA8JHtlLnZhbHVlLmRlc2NyaXB0aW9ufT5gOiJ1bmRlZmluZWQiPT09ZS52YWx1ZS50eXBlJiYodFtlLm5hbWVdPSI8dW5kZWZpbmVkPiIpKX1hc3luYyBmdW5jdGlvbiBsKGUsdCl7Y29uc3Qgbj1hd2FpdCBlLnBvc3QoIlJ1bnRpbWUuZ2V0UHJvcGVydGllcyIse29iamVjdElkOnQsb3duUHJvcGVydGllczohMH0pLGk9e307Zm9yKGNvbnN0IHQgb2Ygbi5yZXN1bHQpaWYodC52YWx1ZT8ub2JqZWN0SWQmJiJBcnJheSI9PT10LnZhbHVlLmNsYXNzTmFtZSl7Y29uc3Qgbj10LnZhbHVlLm9iamVjdElkO2F3YWl0IGMoZSxuLHQubmFtZSxpKX1lbHNlIGlmKHQudmFsdWU/Lm9iamVjdElkJiYiT2JqZWN0Ij09PXQudmFsdWUuY2xhc3NOYW1lKXtjb25zdCBuPXQudmFsdWUub2JqZWN0SWQ7YXdhaXQgcihlLG4sdC5uYW1lLGkpfWVsc2UgdC52YWx1ZSYmdSh0LGkpO3JldHVybiBpfWxldCBmOyhhc3luYyBmdW5jdGlvbigpe2NvbnN0IHQ9bmV3IGU7dC5jb25uZWN0VG9NYWluVGhyZWFkKCkscygiQ29ubmVjdGVkIHRvIG1haW4gdGhyZWFkIik7bGV0IG49ITE7dC5vbigiRGVidWdnZXIucmVzdW1lZCIsKCk9PntuPSExfSksdC5vbigiRGVidWdnZXIucGF1c2VkIixlPT57bj0hMCxhc3luYyBmdW5jdGlvbihlLHtyZWFzb246dCxkYXRhOntvYmplY3RJZDpufSxjYWxsRnJhbWVzOml9KXtpZigiZXhjZXB0aW9uIiE9PXQmJiJwcm9taXNlUmVqZWN0aW9uIiE9PXQpcmV0dXJuO2lmKGY/LigpLG51bGw9PW4pcmV0dXJuO2NvbnN0IGE9W107Zm9yKGxldCB0PTA7dDxpLmxlbmd0aDt0Kyspe2NvbnN0e3Njb3BlQ2hhaW46bixmdW5jdGlvbk5hbWU6byx0aGlzOnN9PWlbdF0sYz1uLmZpbmQoZT0+ImxvY2FsIj09PWUudHlwZSkscj0iZ2xvYmFsIiE9PXMuY2xhc3NOYW1lJiZzLmNsYXNzTmFtZT9gJHtzLmNsYXNzTmFtZX0uJHtvfWA6bztpZih2b2lkIDA9PT1jPy5vYmplY3Qub2JqZWN0SWQpYVt0XT17ZnVuY3Rpb246cn07ZWxzZXtjb25zdCBuPWF3YWl0IGwoZSxjLm9iamVjdC5vYmplY3RJZCk7YVt0XT17ZnVuY3Rpb246cix2YXJzOm59fX1hd2FpdCBlLnBvc3QoIlJ1bnRpbWUuY2FsbEZ1bmN0aW9uT24iLHtmdW5jdGlvbkRlY2xhcmF0aW9uOmBmdW5jdGlvbigpIHsgdGhpcy4ke299ID0gdGhpcy4ke299IHx8ICR7SlNPTi5zdHJpbmdpZnkoYSl9OyB9YCxzaWxlbnQ6ITAsb2JqZWN0SWQ6bn0pLGF3YWl0IGUucG9zdCgiUnVudGltZS5yZWxlYXNlT2JqZWN0Iix7b2JqZWN0SWQ6bn0pfSh0LGUucGFyYW1zKS50aGVuKGFzeW5jKCk9PntuJiZhd2FpdCB0LnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpfSxhc3luYyBlPT57biYmYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5yZXN1bWUiKX0pfSksYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5lbmFibGUiKTtjb25zdCBpPSExIT09YS5jYXB0dXJlQWxsRXhjZXB0aW9ucztpZihhd2FpdCB0LnBvc3QoIkRlYnVnZ2VyLnNldFBhdXNlT25FeGNlcHRpb25zIix7c3RhdGU6aT8iYWxsIjoidW5jYXVnaHQifSksaSl7Y29uc3QgZT1hLm1heEV4Y2VwdGlvbnNQZXJTZWNvbmR8fDUwO2Y9ZnVuY3Rpb24oZSx0LG4pe2xldCBpPTAsbz01LGE9MDtyZXR1cm4gc2V0SW50ZXJ2YWwoKCk9PnswPT09YT9pPmUmJihvKj0yLG4obyksbz44NjQwMCYmKG89ODY0MDApLGE9byk6KGEtPTEsMD09PWEmJnQoKSksaT0wfSwxZTMpLnVucmVmKCksKCk9PntpKz0xfX0oZSxhc3luYygpPT57cygiUmF0ZS1saW1pdCBsaWZ0ZWQuIiksYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5zZXRQYXVzZU9uRXhjZXB0aW9ucyIse3N0YXRlOiJhbGwifSl9LGFzeW5jIGU9PntzKGBSYXRlLWxpbWl0IGV4Y2VlZGVkLiBEaXNhYmxpbmcgY2FwdHVyaW5nIG9mIGNhdWdodCBleGNlcHRpb25zIGZvciAke2V9IHNlY29uZHMuYCksYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5zZXRQYXVzZU9uRXhjZXB0aW9ucyIse3N0YXRlOiJ1bmNhdWdodCJ9KX0pfX0pKCkuY2F0Y2goZT0+e3MoIkZhaWxlZCB0byBzdGFydCBkZWJ1Z2dlciIsZSl9KSxzZXRJbnRlcnZhbCgoKT0+e30sMWU0KTs=",zi;var Gi=q(()=>{N();NK();bq();zi=P((Z={})=>{function J(X,W){let K=(X.stacktrace?.frames||[]).filter((z)=>z.function!=="new Promise");for(let z=0;z<K.length;z++){let G=K.length-z-1,H=W[z],B=K[G];if(!B||!H)break;if(H.vars===void 0||B.in_app===!1&&Z.includeOutOfAppFrames!==!0||!AK(B.function,H.function))continue;B.vars=H.vars}}function Q(X,W){if(W.originalException&&typeof W.originalException==="object"&&K$ in W.originalException&&Array.isArray(W.originalException[K$])){for(let K of X.exception?.values||[])J(K,W.originalException[K$]);W.originalException[K$]=void 0}return X}async function $(){let X=await import("inspector");if(!X.url())X.open(0)}function Y(X){let W=new MI0(new URL(`data:application/javascript;base64,${RI0}`),{workerData:X,execArgv:[],env:{...process.env,NODE_OPTIONS:void 0}});process.on("exit",()=>{W.terminate()}),W.once("error",(K)=>{Ki("Worker error",K)}),W.once("exit",(K)=>{Ki("Worker exit",K)}),W.unref()}return{name:"LocalVariablesAsync",async setup(X){if(!X.getOptions().includeLocalVariables)return;if(await DJ()){O.warn("Local variables capture has been disabled because the debugger was already enabled");return}let K={...Z,debug:O.isEnabled()};$().then(()=>{try{Y(K)}catch(z){O.error("Failed to start worker",z)}},(z)=>{O.error("Failed to start inspector",z)})},processEvent(X,W){return Q(X,W)}}})});function Hi(Z){if(Z===void 0)return;return Z.slice(-10).reduce((J,Q)=>`${J},${Q.function},${Q.lineno},${Q.colno}`,"")}function kI0(Z,J){if(J===void 0)return;return Hi(Z(J,1))}function Bi(Z){let J=[],Q=!1;function $(W){if(J=[],Q)return;Q=!0,Z(W)}J.push($);function Y(W){J.push(W)}function X(W){let K=J.pop()||$;try{K(W)}catch{$(W)}}return{add:Y,next:X}}class vq{constructor(Z){this._session=Z}static async create(Z){if(Z)return Z;let J=await import("inspector");return new vq(new J.Session)}configureAndConnect(Z,J){this._session.connect(),this._session.on("Debugger.paused",(Q)=>{Z(Q,()=>{this._session.post("Debugger.resume")})}),this._session.post("Debugger.enable"),this._session.post("Debugger.setPauseOnExceptions",{state:J?"all":"uncaught"})}setPauseOnExceptions(Z){this._session.post("Debugger.setPauseOnExceptions",{state:Z?"all":"uncaught"})}getLocalVariables(Z,J){this._getProperties(Z,(Q)=>{let{add:$,next:Y}=Bi(J);for(let X of Q)if(X.value?.objectId&&X.value.className==="Array"){let W=X.value.objectId;$((K)=>this._unrollArray(W,X.name,K,Y))}else if(X.value?.objectId&&X.value.className==="Object"){let W=X.value.objectId;$((K)=>this._unrollObject(W,X.name,K,Y))}else if(X.value)$((W)=>this._unrollOther(X,W,Y));Y({})})}_getProperties(Z,J){this._session.post("Runtime.getProperties",{objectId:Z,ownProperties:!0},(Q,$)=>{if(Q)J([]);else J($.result)})}_unrollArray(Z,J,Q,$){this._getProperties(Z,(Y)=>{Q[J]=Y.filter((X)=>X.name!=="length"&&!isNaN(parseInt(X.name,10))).sort((X,W)=>parseInt(X.name,10)-parseInt(W.name,10)).map((X)=>X.value?.value),$(Q)})}_unrollObject(Z,J,Q,$){this._getProperties(Z,(Y)=>{Q[J]=Y.map((X)=>[X.name,X.value?.value]).reduce((X,[W,K])=>{return X[W]=K,X},{}),$(Q)})}_unrollOther(Z,J,Q){if(Z.value){if("value"in Z.value)if(Z.value.value===void 0||Z.value.value===null)J[Z.name]=`<${Z.value.value}>`;else J[Z.name]=Z.value.value;else if("description"in Z.value&&Z.value.type!=="function")J[Z.name]=`<${Z.value.description}>`;else if(Z.value.type==="undefined")J[Z.name]="<undefined>"}Q(J)}}var NI0="LocalVariables",AI0=(Z={},J)=>{let Q=new I6(20),$,Y=!1;function X(G){let H=Hi(G.stacktrace?.frames);if(H===void 0)return;let B=Q.remove(H);if(B===void 0)return;let V=(G.stacktrace?.frames||[]).filter((F)=>F.function!=="new Promise");for(let F=0;F<V.length;F++){let U=V.length-F-1,w=B[F],D=V[U];if(!D||!w)break;if(w.vars===void 0||D.in_app===!1&&Z.includeOutOfAppFrames!==!0||!AK(D.function,w.function))continue;D.vars=w.vars}}function W(G){for(let H of G.exception?.values||[])X(H);return G}let K;async function z(){let H=k()?.getOptions();if(!H?.includeLocalVariables)return;if(c8<18){O.log("The `LocalVariables` integration is only supported on Node >= v18.");return}if(await DJ()){O.warn("Local variables capture has been disabled because the debugger was already enabled");return}try{let V=await vq.create(J),F=(w,{params:{reason:D,data:L,callFrames:C}},R)=>{if(D!=="exception"&&D!=="promiseRejection"){R();return}$?.();let T=kI0(w,L.description);if(T==null){R();return}let{add:_,next:m}=Bi((l)=>{Q.set(T,l),R()});for(let l=0;l<Math.min(C.length,5);l++){let{scopeChain:y0,functionName:$6,this:c9}=C[l],m9=y0.find((U1)=>U1.type==="local"),n5=c9.className==="global"||!c9.className?$6:`${c9.className}.${$6}`;if(m9?.object.objectId===void 0)_((U1)=>{U1[l]={function:n5},m(U1)});else{let U1=m9.object.objectId;_((P7)=>V.getLocalVariables(U1,(a5)=>{P7[l]={function:n5,vars:a5},m(P7)}))}}m([])},U=Z.captureAllExceptions!==!1;if(V.configureAndConnect((w,D)=>F(H.stackParser,w,D),U),U){let w=Z.maxExceptionsPerSecond||50;$=Wi(w,()=>{O.log("Local variables rate-limit lifted."),V.setPauseOnExceptions(!0)},(D)=>{O.log(`Local variables rate-limit exceeded. Disabling capturing of caught exceptions for ${D} seconds.`),V.setPauseOnExceptions(!1)})}Y=!0}catch(V){O.log("The `LocalVariables` integration failed to start.",V)}}return{name:NI0,setupOnce(){K=z()},async processEvent(G){if(await K,Y)return W(G);return G},_getCachedFramesCount(){return Q.size},_getFirstCachedFrame(){return Q.values()[0]}}},Vi;var Fi=q(()=>{N();j5();NK();bq();Vi=P(AI0)});var OJ=(Z={})=>{return b1.major<19?Vi(Z):zi(Z)};var xq=q(()=>{j5();Gi();Fi()});function l8(){try{return typeof qi<"u"&&typeof ZH1<"u"}catch{return!1}}function wi(){if(l8())return!1;if(c8>=21||c8===20&&e3>=6||c8===18&&e3>=19)return!0;if(!Ui)Ui=!0,G0(()=>{console.warn(`[Sentry] You are using Node.js v${process.versions.node} in ESM mode ("import syntax"). The Sentry Node.js SDK is not compatible with ESM in Node.js versions before 18.19.0 or before 20.6.0. Please either build your application with CommonJS ("require() syntax"), or upgrade your Node.js version.`)});return!1}var Ui;var LJ=q(()=>{N();j5()});import{existsSync as II0,readFileSync as Di}from"fs";import{dirname as TI0,join as Oi}from"path";function SI0(){try{return E.cache?Object.keys(E.cache):[]}catch{return[]}}function _I0(){return{...fI0,...vI0(),...l8()?hI0():{}}}function hI0(){let Z=E.main?.paths||[],J=SI0(),Q={},$=new Set;return J.forEach((Y)=>{let X=Y,W=()=>{let K=X;if(X=TI0(K),!X||K===X||$.has(K))return;if(Z.indexOf(X)<0)return W();let z=Oi(K,"package.json");if($.add(K),!II0(z))return W();try{let G=JSON.parse(Di(z,"utf8"));Q[G.name]=G.version}catch{}};W()}),Q}function ji(){if(!gq)gq=_I0();return gq}function bI0(){try{let Z=Oi(process.cwd(),"package.json");return JSON.parse(Di(Z,"utf8"))}catch{return{}}}function vI0(){let Z=bI0();return{...Z.dependencies,...Z.devDependencies}}var gq,EI0="Modules",fI0,yI0=()=>{return{name:EI0,processEvent(Z){return Z.modules={...Z.modules,...ji()},Z},getModules:ji}},aZ;var dq=q(()=>{LJ();fI0=typeof __SENTRY_SERVER_MODULES__>"u"?{}:__SENTRY_SERVER_MODULES__,aZ=yI0});var xI0="NodeFetch",gI0,dI0=(Z={})=>{return{name:"NodeFetch",setupOnce(){gI0(Z)}}},Li;var Ci=q(()=>{N();RK();eU();gI0=S(`${xI0}.sentry`,KJ,(Z)=>{return Z}),Li=P(dI0)});function z$(Z){G0(()=>{console.error(Z)});let J=k();if(J===void 0){s&&O.warn("No NodeClient was defined, we are exiting the process now."),global.process.exit(1);return}let Q=J.getOptions(),$=Q?.shutdownTimeout&&Q.shutdownTimeout>0?Q.shutdownTimeout:cI0;J.close($).then((Y)=>{if(!Y)s&&O.warn("We reached the timeout for emptying the request buffer, still exiting now!");global.process.exit(1)},(Y)=>{s&&O.error(Y)})}var cI0=2000;var cq=q(()=>{N();e6()});import{isMainThread as mI0}from"worker_threads";function lI0(Z,J){let $=!1,Y=!1,X=!1,W,K=Z.getOptions();return Object.assign((z)=>{let G=z$;if(J.onFatalError)G=J.onFatalError;else if(K.onFatalError)G=K.onFatalError;let B=global.process.listeners("uncaughtException").filter((F)=>{return F.name!=="domainUncaughtExceptionClear"&&F.tag!=="sentry_tracingErrorCallback"&&F._errorHandler!==!0}).length===0,V=J.exitEvenIfOtherHandlersAreRegistered||B;if(!$){if(W=z,$=!0,k()===Z)h(z,{originalException:z,captureContext:{level:"fatal"},mechanism:{handled:!1,type:"auto.node.onuncaughtexception"}});if(!X&&V)X=!0,G(z)}else if(V){if(X)s&&O.warn("uncaught exception after calling fatal error shutdown callback - this is bad! forcing shutdown"),z$(z);else if(!Y)Y=!0,setTimeout(()=>{if(!X)X=!0,G(W,z)},2000)}},{_errorHandler:!0})}var uI0="OnUncaughtException",sZ;var mq=q(()=>{N();e6();cq();sZ=P((Z={})=>{let J={exitEvenIfOtherHandlersAreRegistered:!1,...Z};return{name:uI0,setup(Q){if(!mI0)return;global.process.on("uncaughtException",lI0(Q,J))}}})});function nI0(Z){if(typeof Z!=="object"||Z===null)return{name:"",message:String(Z??"")};let J=Z,Q=typeof J.name==="string"?J.name:"",$=typeof J.message==="string"?J.message:String(Z);return{name:Q,message:$}}function aI0(Z,J){let Q=Z.name===void 0||U8(J.name,Z.name,!0),$=Z.message===void 0||U8(J.message,Z.message);return Q&&$}function sI0(Z,J){let Q=nI0(J);return Z.some(($)=>aI0($,Q))}function rI0(Z,J){return function($,Y){if(k()!==Z)return;if(sI0(J.ignore??[],$))return;let X=J.mode==="strict"?"fatal":"error",W=$&&typeof $==="object"?$._sentry_active_span:void 0;(W?(z)=>n6(W,z):(z)=>z())(()=>{h($,{originalException:Y,captureContext:{extra:{unhandledPromiseRejection:!0},level:X},mechanism:{handled:!1,type:"auto.node.onunhandledrejection"}})}),tI0($,J.mode)}}function tI0(Z,J){let Q="This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason:";if(J==="warn")G0(()=>{console.warn(Q),console.error(Z&&typeof Z==="object"&&"stack"in Z?Z.stack:Z)});else if(J==="strict")G0(()=>{console.warn(Q)}),z$(Z)}var pI0="OnUnhandledRejection",iI0,oI0=(Z={})=>{let J={mode:Z.mode??"warn",ignore:[...iI0,...Z.ignore??[]]};return{name:pI0,setup(Q){global.process.on("unhandledRejection",rI0(Q,J))}}},rZ;var uq=q(()=>{N();cq();iI0=[{name:"AI_NoOutputGeneratedError"},{name:"AbortError"}],rZ=P(oI0)});var eI0="ProcessSession",tZ;var lq=q(()=>{N();tZ=P(()=>{return{name:eI0,setupOnce(){e7(),process.on("beforeExit",()=>{if(x().getSession()?.status!=="ok")k8()})}}})});import*as Pi from"http";function JT0(Z,J){let Q=QT0(J.sidecarUrl);if(!Q)return;let $=0;Z.on("beforeEnvelope",(Y)=>{if($>3){O.warn("[Spotlight] Disabled Sentry -> Spotlight integration due to too many failed requests");return}let X=sQ(Y);P9(()=>{let W=Pi.request({method:"POST",path:Q.pathname,hostname:Q.hostname,port:Q.port,headers:{"Content-Type":"application/x-sentry-envelope"}},(K)=>{if(K.statusCode&&K.statusCode>=200&&K.statusCode<400)$=0;K.on("data",()=>{}),K.on("end",()=>{}),K.setEncoding("utf8")});W.on("error",()=>{$++,O.warn("[Spotlight] Failed to send envelope to Spotlight Sidecar")}),W.write(X),W.end()})})}function QT0(Z){try{return new URL(`${Z}`)}catch{O.warn(`[Spotlight] Invalid sidecar URL: ${Z}`);return}}var pq="Spotlight",ZT0=(Z={})=>{let J={sidecarUrl:Z.sidecarUrl||"http://localhost:8969/stream"};return{name:pq,setup(Q){try{}catch{}JT0(Q,J)}}},CJ;var iq=q(()=>{N();CJ=P(ZT0)});import*as Mi from"util";function YT0(Z){if(!(Z instanceof Error))return!1;if(!("errno"in Z)||typeof Z.errno!=="number")return!1;return Mi.getSystemErrorMap().has(Z.errno)}var $T0="NodeSystemError",oq;var Ri=q(()=>{N();oq=P((Z={})=>{return{name:$T0,processEvent:(J,Q,$)=>{if(!YT0(Q.originalException))return J;let Y=Q.originalException,X={...Y};if(!$.getOptions().sendDefaultPii&&Z.includePaths!==!0)delete X.path,delete X.dest;J.contexts={...J.contexts,node_system_error:X};for(let W of J.exception?.values||[])if(W.value){if(Y.path&&W.value.includes(Y.path))W.value=W.value.replace(`'${Y.path}'`,"").trim();if(Y.dest&&W.value.includes(Y.dest))W.value=W.value.replace(`'${Y.dest}'`,"").trim()}return J}}})});import*as nq from"http";var Z8,aq;var ki=q(()=>{Z8=Symbol("AgentBaseInternalState");aq=class aq extends nq.Agent{constructor(Z){super(Z);this[Z8]={}}isSecureEndpoint(Z){if(Z){if(typeof Z.secureEndpoint==="boolean")return Z.secureEndpoint;if(typeof Z.protocol==="string")return Z.protocol==="https:"}let{stack:J}=Error();if(typeof J!=="string")return!1;return J.split(`
|
|
30
30
|
`).some((Q)=>Q.indexOf("(https.js:")!==-1||Q.indexOf("node:https:")!==-1)}createSocket(Z,J,Q){let $={...J,secureEndpoint:this.isSecureEndpoint(J)};Promise.resolve().then(()=>this.connect(Z,$)).then((Y)=>{if(Y instanceof nq.Agent)return Y.addRequest(Z,$);this[Z8].currentSocket=Y,super.createSocket(Z,J,Q)},Q)}createConnection(){let Z=this[Z8].currentSocket;if(this[Z8].currentSocket=void 0,!Z)throw Error("No socket was returned in the `connect()` function");return Z}get defaultPort(){return this[Z8].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(Z){if(this[Z8])this[Z8].defaultPort=Z}get protocol(){return this[Z8].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(Z){if(this[Z8])this[Z8].protocol=Z}}});function IK(...Z){O.log("[https-proxy-agent:parse-proxy-response]",...Z)}function Ni(Z){return new Promise((J,Q)=>{let $=0,Y=[];function X(){let H=Z.read();if(H)G(H);else Z.once("readable",X)}function W(){Z.removeListener("end",K),Z.removeListener("error",z),Z.removeListener("readable",X)}function K(){W(),IK("onend"),Q(Error("Proxy connection ended before receiving CONNECT response"))}function z(H){W(),IK("onerror %o",H),Q(H)}function G(H){Y.push(H),$+=H.length;let B=Buffer.concat(Y,$),V=B.indexOf(`\r
|
|
31
31
|
\r
|
|
32
32
|
`);if(V===-1){IK("have not received end of HTTP headers yet..."),X();return}let F=B.subarray(0,V).toString("ascii").split(`\r
|
|
33
|
-
`),U=F.shift();if(!U)return Z.destroy(),Q(Error("No header received from proxy CONNECT response"));let w=U.split(" "),D=+(w[1]||0),L=w.slice(2).join(" "),C={};for(let R of F){if(!R)continue;let T=R.indexOf(":");if(T===-1)return Z.destroy(),Q(Error(`Invalid header from proxy CONNECT response: "${R}"`));let
|
|
33
|
+
`),U=F.shift();if(!U)return Z.destroy(),Q(Error("No header received from proxy CONNECT response"));let w=U.split(" "),D=+(w[1]||0),L=w.slice(2).join(" "),C={};for(let R of F){if(!R)continue;let T=R.indexOf(":");if(T===-1)return Z.destroy(),Q(Error(`Invalid header from proxy CONNECT response: "${R}"`));let _=R.slice(0,T).toLowerCase(),m=R.slice(T+1).trimStart(),l=C[_];if(typeof l==="string")C[_]=[l,m];else if(Array.isArray(l))l.push(m);else C[_]=m}IK("got proxy server response: %o %o",U,C),W(),J({connect:{statusCode:D,statusText:L,headers:C},buffered:B})}Z.on("error",z),Z.on("end",K),X()})}var Ai=q(()=>{N()});import*as p8 from"net";import*as sq from"tls";function G$(...Z){O.log("[https-proxy-agent]",...Z)}function XT0(Z){Z.resume()}function Ii(Z,...J){let Q={},$;for($ in Z)if(!J.includes($))Q[$]=Z[$];return Q}var TK;var Ti=q(()=>{N();ki();Ai();TK=class TK extends aq{static __initStatic(){this.protocols=["http","https"]}constructor(Z,J){super(J);this.options={},this.proxy=typeof Z==="string"?new URL(Z):Z,this.proxyHeaders=J?.headers??{},G$("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let Q=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),$=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...J?Ii(J,"headers"):null,host:Q,port:$}}async connect(Z,J){let{proxy:Q}=this;if(!J.host)throw TypeError('No "host" provided');let $;if(Q.protocol==="https:"){G$("Creating `tls.Socket`: %o",this.connectOpts);let B=this.connectOpts.servername||this.connectOpts.host;$=sq.connect({...this.connectOpts,servername:B&&p8.isIP(B)?void 0:B})}else G$("Creating `net.Socket`: %o",this.connectOpts),$=p8.connect(this.connectOpts);let Y=typeof this.proxyHeaders==="function"?this.proxyHeaders():{...this.proxyHeaders},X=p8.isIPv6(J.host)?`[${J.host}]`:J.host,W=`CONNECT ${X}:${J.port} HTTP/1.1\r
|
|
34
34
|
`;if(Q.username||Q.password){let B=`${decodeURIComponent(Q.username)}:${decodeURIComponent(Q.password)}`;Y["Proxy-Authorization"]=`Basic ${Buffer.from(B).toString("base64")}`}if(Y.Host=`${X}:${J.port}`,!Y["Proxy-Connection"])Y["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close";for(let B of Object.keys(Y))W+=`${B}: ${Y[B]}\r
|
|
35
35
|
`;let K=Ni($);$.write(`${W}\r
|
|
36
|
-
`);let{connect:z,buffered:G}=await K;if(Z.emit("proxyConnect",z),this.emit("proxyConnect",z,Z),z.statusCode===200){if(Z.once("socket",XT0),J.secureEndpoint){G$("Upgrading socket connection to TLS");let B=J.servername||J.host;return sq.connect({...Ii(J,"host","path","port"),socket:$,servername:p8.isIP(B)?void 0:B})}return $}$.destroy();let H=new p8.Socket({writable:!1});return H.readable=!0,Z.once("socket",(B)=>{G$("Replaying proxy buffer for failed request"),B.push(G),B.push(null)}),H}};TK.__initStatic()});import*as WT0 from"http";import*as KT0 from"https";import{Readable as zT0}from"stream";import{createGzip as GT0}from"zlib";function BT0(Z){return new zT0({read(){this.push(Z),this.push(null)}})}function PJ(Z){let J;try{J=new URL(Z.url)}catch(z){return G0(()=>{console.warn("[@sentry/node]: Invalid dsn or tunnel option, will not send any events. The tunnel option must be a full URL when used.")}),o9(Z,()=>Promise.resolve({}))}let Q=J.protocol==="https:",$=VT0(J,Z.proxy||(Q?process.env.https_proxy:void 0)||process.env.http_proxy),Y=Q?KT0:WT0,X=Z.keepAlive===void 0?!1:Z.keepAlive,W=$?new TK($):new Y.Agent({keepAlive:X,maxSockets:30,timeout:2000}),K=FT0(Z,Z.httpModule??Y,W);return o9(Z,K)}function VT0(Z,J){let{no_proxy:Q}=process.env;if(Q?.split(",").some((Y)=>Z.host.endsWith(Y)||Z.hostname.endsWith(Y)))return;else return J}function FT0(Z,J,Q){let{hostname:$,pathname:Y,port:X,protocol:W,search:K}=new URL(Z.url);return function(G){return new Promise((H,B)=>{P9(()=>{let V=BT0(G.body),F={...Z.headers};if(G.body.length>HT0)F["content-encoding"]="gzip",V=V.pipe(GT0());let U=$.startsWith("["),w=J.request({method:"POST",agent:Q,headers:F,hostname:U?$.slice(1,-1):$,path:`${Y}${K}`,port:X,protocol:W,ca:Z.caCerts},(D)=>{D.on("data",()=>{}),D.on("end",()=>{}),D.setEncoding("utf8");let L=D.headers["retry-after"]??null,C=D.headers["x-sentry-rate-limits"]??null;H({statusCode:D.statusCode,headers:{"retry-after":L,"x-sentry-rate-limits":Array.isArray(C)?C[0]||null:C}})});w.on("error",B),V.pipe(w)})})}}var HT0=32768;var rq=q(()=>{N();Ti()});function Ei(Z){if(Z===!1)return!1;if(typeof Z==="string")return Z;let J=Q5(process.env.SENTRY_SPOTLIGHT,{strict:!0}),Q=J===null&&process.env.SENTRY_SPOTLIGHT?process.env.SENTRY_SPOTLIGHT:void 0;return Z===!0?Q??!0:J??Q}var fi=q(()=>{N()});import{posix as UT0,sep as qT0}from"path";function yi(Z){return Z.replace(/^[A-Z]:/,"").replace(/\\/g,"/")}function MJ(Z=process.argv[1]?LF(process.argv[1]):process.cwd(),J=qT0==="\\"){let Q=J?yi(Z):Z;return($)=>{if(!$)return;let Y=J?yi($):$,{dir:X,base:W,ext:K}=UT0.parse(Y);if(K===".js"||K===".mjs"||K===".cjs")W=W.slice(0,K.length*-1);let z=decodeURIComponent(W);if(!X)X=".";let G=X.lastIndexOf("/node_modules");if(G>-1)return`${X.slice(G+14).replace(/\//g,".")}:${z}`;if(X.startsWith(Q)){let H=X.slice(Q.length+1).replace(/\//g,".");return H?`${H}:${z}`:z}return z}}var tq=q(()=>{N()});function RJ(Z){if(process.env.SENTRY_RELEASE)return process.env.SENTRY_RELEASE;if(d.SENTRY_RELEASE?.id)return d.SENTRY_RELEASE.id;let J=process.env.GITHUB_SHA||process.env.CI_MERGE_REQUEST_SOURCE_BRANCH_SHA||process.env.CI_BUILD_REF||process.env.CI_COMMIT_SHA||process.env.BITBUCKET_COMMIT,Q=process.env.APPVEYOR_PULL_REQUEST_HEAD_COMMIT||process.env.APPVEYOR_REPO_COMMIT||process.env.CODEBUILD_RESOLVED_SOURCE_VERSION||process.env.AWS_COMMIT_ID||process.env.BUILD_SOURCEVERSION||process.env.GIT_CLONE_COMMIT_HASH||process.env.BUDDY_EXECUTION_REVISION||process.env.BUILDKITE_COMMIT||process.env.CIRCLE_SHA1||process.env.CIRRUS_CHANGE_IN_REPO||process.env.CF_REVISION||process.env.CM_COMMIT||process.env.CF_PAGES_COMMIT_SHA||process.env.DRONE_COMMIT_SHA||process.env.FC_GIT_COMMIT_SHA||process.env.HEROKU_TEST_RUN_COMMIT_VERSION||process.env.HEROKU_BUILD_COMMIT||process.env.HEROKU_SLUG_COMMIT||process.env.RAILWAY_GIT_COMMIT_SHA||process.env.RENDER_GIT_COMMIT||process.env.SEMAPHORE_GIT_SHA||process.env.TRAVIS_PULL_REQUEST_SHA||process.env.VERCEL_GIT_COMMIT_SHA||process.env.VERCEL_GITHUB_COMMIT_SHA||process.env.VERCEL_GITLAB_COMMIT_SHA||process.env.VERCEL_BITBUCKET_COMMIT_SHA||process.env.ZEIT_GITHUB_COMMIT_SHA||process.env.ZEIT_GITLAB_COMMIT_SHA||process.env.ZEIT_BITBUCKET_COMMIT_SHA,$=process.env.CI_COMMIT_ID||process.env.SOURCE_COMMIT||process.env.SOURCE_VERSION||process.env.GIT_COMMIT||process.env.COMMIT_REF||process.env.BUILD_VCS_NUMBER||process.env.CI_COMMIT_SHA;return J||Q||$||Z}var kJ;var eq=q(()=>{N();tq();kJ=yX(IU(MJ()))});import*as Si from"os";import{threadId as wT0,isMainThread as jT0}from"worker_threads";var _i,hi,DT0=60000,C5;var Zw=q(()=>{N();jJ();e6();_i=A(I(),1),hi=A(n(),1);C5=class C5 extends _4{constructor(Z){let J=Z.includeServerName===!1?void 0:Z.serverName||global.process.env.SENTRY_NAME||Si.hostname(),Q={...Z,platform:"node",runtime:Z.runtime||{name:"node",version:global.process.version},serverName:J};if(Z.openTelemetryInstrumentations)hi.registerInstrumentations({instrumentations:Z.openTelemetryInstrumentations});k9(Q,"node"),O.log(`Initializing Sentry: process: ${process.pid}, thread: ${jT0?"main":`worker-${wT0}`}.`);super(Q);if(this.getOptions().enableLogs){if(this._logOnExitFlushListener=()=>{Z5(this)},J)this.on("beforeCaptureLog",($)=>{$.attributes={...$.attributes,"server.address":J}});process.on("beforeExit",this._logOnExitFlushListener)}}get tracer(){if(this._tracer)return this._tracer;let Z="@sentry/node",J=e,Q=_i.trace.getTracer(Z,J);return this._tracer=Q,Q}async flush(Z){if(await this.traceProvider?.forceFlush(),this.getOptions().sendClientReports)this._flushOutcomes();return super.flush(Z)}async close(Z){if(this._clientReportInterval)clearInterval(this._clientReportInterval);if(this._clientReportOnExitFlushListener)process.off("beforeExit",this._clientReportOnExitFlushListener);if(this._logOnExitFlushListener)process.off("beforeExit",this._logOnExitFlushListener);let J=await super.close(Z);if(this.traceProvider)await this.traceProvider.shutdown();return J}startClientReportTracking(){let Z=this.getOptions();if(Z.sendClientReports)this._clientReportOnExitFlushListener=()=>{this._flushOutcomes()},this._clientReportInterval=setInterval(()=>{s&&O.log("Flushing client reports based on interval."),this._flushOutcomes()},Z.clientReportFlushInterval??DT0).unref(),process.on("beforeExit",this._clientReportOnExitFlushListener)}_setupIntegrations(){HF(),super._setupIntegrations()}_getTraceInfoFromScope(Z){if(!Z)return[void 0,void 0];return _p(this,Z)}}});import*as vi from"module";function Jw(){if(!wi())return;if(!d._sentryEsmLoaderHookRegistered){d._sentryEsmLoaderHookRegistered=!0;try{let{addHookMessagePort:Z}=bi.createAddHookMessageChannel();vi.register("import-in-the-middle/hook.mjs",import.meta.url,{data:{addHookMessagePort:Z,include:[]},transferList:[Z]})}catch(Z){O.warn("Failed to register 'import-in-the-middle' hook",Z)}}}var bi;var xi=q(()=>{N();LJ();bi=A(yB(),1)});function EK(){return[f8(),E8(),y8(),S8(),oq(),IF(),_8(),$i(),Li(),sZ(),rZ(),nZ(),OJ(),oZ(),yq(),tZ(),aZ()]}function Qw(Z={}){return OT0(Z,EK)}function OT0(Z={},J){let Q=LT0(Z,J);if(Q.debug===!0)if(s)O.enable();else G0(()=>{console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle.")});if(Q.registerEsmLoaderHooks!==!1)Jw();if(vp(),i().update(Q.initialScope),Q.spotlight&&!Q.integrations.some(({name:X})=>X===pq))Q.integrations.push(CJ({sidecarUrl:typeof Q.spotlight==="string"?Q.spotlight:void 0}));k9(Q,"node-core");let Y=new C5(Q);if(i().setClient(Y),Y.init(),O.log(`SDK initialized from ${l8()?"CommonJS":"ESM"}`),Y.startClientReportTracking(),MT0(),Cp(Y),bp(Y),process.env.VERCEL)process.on("SIGTERM",async()=>{await Y.flush(200)});return Y}function fK(){if(!s)return;let Z=kp(),J=["SentryContextManager","SentryPropagator"];if(P0())J.push("SentrySpanProcessor");for(let Q of J)if(!Z.includes(Q))O.error(`You have to set up the ${Q}. Without this, the OpenTelemetry & Sentry integration will not work properly.`);if(!Z.includes("SentrySampler"))O.warn("You have to set up the SentrySampler. Without this, the OpenTelemetry & Sentry integration may still work, but sample rates set for the Sentry SDK will not be respected. If you use a custom sampler, make sure to use `wrapSamplingDecision`.")}function LT0(Z,J){let Q=CT0(Z.release),$=Ei(Z.spotlight),Y=PT0(Z.tracesSampleRate),X={...Z,dsn:Z.dsn??process.env.SENTRY_DSN,environment:Z.environment??process.env.SENTRY_ENVIRONMENT,sendClientReports:Z.sendClientReports??!0,transport:Z.transport??PJ,stackParser:$V(Z.stackParser||kJ),release:Q,tracesSampleRate:Y,spotlight:$,debug:Q5(Z.debug??process.env.SENTRY_DEBUG)},W=Z.integrations,K=Z.defaultIntegrations??J(X);return{...X,integrations:mV({defaultIntegrations:K,integrations:W})}}function CT0(Z){if(Z!==void 0)return Z;let J=RJ();if(J!==void 0)return J;return}function PT0(Z){if(Z!==void 0)return Z;let J=process.env.SENTRY_TRACES_SAMPLE_RATE;if(!J)return;let Q=parseFloat(J);return isFinite(Q)?Q:void 0}function MT0(){if(Q5(process.env.SENTRY_USE_ENVIRONMENT)!==!1){let Z=process.env.SENTRY_TRACE,J=process.env.SENTRY_BAGGAGE,Q=d7(Z,J);i().setPropagationContext(Q)}}var gi=q(()=>{N();jJ();e6();np();Sq();hq();Yi();xq();dq();Ci();mq();uq();lq();iq();Ri();rq();LJ();fi();eq();Zw();xi()});var di=(Z)=>({package:Z,"javascript.is_cjs":l8()});var ci=q(()=>{LJ()});function E9(Z,J){let Q=k()?.getOptions();if(!Q?.disableInstrumentationWarnings&&!mi.isWrapped(Z)&&R8()&&P0(Q))G0(()=>{if(l8())console.warn(`[Sentry] ${J} is not instrumented. This is likely because you required/imported ${J} before calling \`Sentry.init()\`.`);else console.warn(`[Sentry] ${J} is not instrumented. Please make sure to initialize Sentry in a separate file that you \`--import\` when running node, see: https://docs.sentry.io/platforms/javascript/guides/${J}/install/esm/.`)}),D8().setContext("missing_instrumentation",di(J))}var mi;var ui=q(()=>{N();ci();LJ();mi=A(n(),1)});import{types as RT0}from"util";import{Worker as kT0}from"worker_threads";function $w(Z,...J){O.log(`[ANR] ${Z}`,...J)}function ET0(){return d}function fT0(){let Z=M9(x(),i());return Z.attachments=[],Z.eventProcessors=[],Z}async function yT0(Z){let J={message:"ANR"},Q={};for(let $ of Z.getEventProcessors()){if(J===null)break;J=await $(J,Q)}return J?.contexts||{}}async function _T0(Z,J){let Q=Z.getDsn();if(!Q)return()=>{};let $=await yT0(Z);delete $.app?.app_memory,delete $.device?.free_memory;let Y=Z.getOptions(),X=Z.getSdkMetadata()||{};if(X.sdk)X.sdk.integrations=Y.integrations.map((G)=>G.name);let W={debug:O.isEnabled(),dsn:Q,tunnel:Y.tunnel,environment:Y.environment||"production",release:Y.release,dist:Y.dist,sdkMetadata:X,appRootPath:J.appRootPath,pollInterval:J.pollInterval||IT0,anrThreshold:J.anrThreshold||TT0,captureStackTrace:!!J.captureStackTrace,maxAnrEvents:J.maxAnrEvents||1,staticTags:J.staticTags||{},contexts:$};if(W.captureStackTrace){let G=await import("inspector");if(!G.url())G.open(0)}let K=new kT0(new URL(`data:application/javascript;base64,${AT0}`),{workerData:W,execArgv:[],env:{...process.env,NODE_OPTIONS:void 0}});process.on("exit",()=>{K.terminate()});let z=setInterval(()=>{try{let G=x().getSession(),H=G?{...G,toJSON:void 0}:void 0;K.postMessage({session:H,debugImages:Q3(Y.stackParser)})}catch{}},W.pollInterval);return z.unref(),K.on("message",(G)=>{if(G==="session-ended")$w("ANR event sent from ANR worker. Clearing session in this thread."),x().setSession(void 0)}),K.once("error",(G)=>{clearInterval(z),$w("ANR worker error",G)}),K.once("exit",(G)=>{clearInterval(z),$w("ANR worker exit",G)}),K.unref(),()=>{K.terminate(),clearInterval(z)}}function SK(Z){let J=k()?.getIntegrationByName(li);if(!J)return Z();J.stopWorker();let Q=Z();if(NT0(Q))return Q.finally(()=>J.startWorker());return J.startWorker(),Q}var NT0,AT0="LyohIEBzZW50cnkvbm9kZS1jb3JlIDEwLjQ2LjAgKGU1ZmRjOWQpIHwgaHR0cHM6Ly9naXRodWIuY29tL2dldHNlbnRyeS9zZW50cnktamF2YXNjcmlwdCAqLwppbXBvcnR7U2Vzc2lvbiBhcyB0fWZyb20ibm9kZTppbnNwZWN0b3IiO2ltcG9ydHt3b3JrZXJEYXRhIGFzIG4scGFyZW50UG9ydCBhcyBlfWZyb20ibm9kZTp3b3JrZXJfdGhyZWFkcyI7aW1wb3J0e3Bvc2l4IGFzIHIsc2VwIGFzIG99ZnJvbSJub2RlOnBhdGgiO2ltcG9ydCphcyBpIGZyb20ibm9kZTpodHRwIjtpbXBvcnQqYXMgcyBmcm9tIm5vZGU6aHR0cHMiO2ltcG9ydHtSZWFkYWJsZSBhcyBjfWZyb20ibm9kZTpzdHJlYW0iO2ltcG9ydHtjcmVhdGVHemlwIGFzIHV9ZnJvbSJub2RlOnpsaWIiO2ltcG9ydCphcyBhIGZyb20ibm9kZTpuZXQiO2ltcG9ydCphcyBmIGZyb20ibm9kZTp0bHMiO2NvbnN0IGg9InVuZGVmaW5lZCI9PXR5cGVvZiBfX1NFTlRSWV9ERUJVR19ffHxfX1NFTlRSWV9ERUJVR19fLHA9Z2xvYmFsVGhpcyxkPSIxMC40Ni4wIjtmdW5jdGlvbiBsKCl7cmV0dXJuIG0ocCkscH1mdW5jdGlvbiBtKHQpe2NvbnN0IG49dC5fX1NFTlRSWV9fPXQuX19TRU5UUllfX3x8e307cmV0dXJuIG4udmVyc2lvbj1uLnZlcnNpb258fGQsbltkXT1uW2RdfHx7fX1mdW5jdGlvbiBnKHQsbixlPXApe2NvbnN0IHI9ZS5fX1NFTlRSWV9fPWUuX19TRU5UUllfX3x8e30sbz1yW2RdPXJbZF18fHt9O3JldHVybiBvW3RdfHwob1t0XT1uKCkpfWNvbnN0IHk9e307ZnVuY3Rpb24gYih0KXtpZighKCJjb25zb2xlImluIHApKXJldHVybiB0KCk7Y29uc3Qgbj1wLmNvbnNvbGUsZT17fSxyPU9iamVjdC5rZXlzKHkpO3IuZm9yRWFjaCh0PT57Y29uc3Qgcj15W3RdO2VbdF09blt0XSxuW3RdPXJ9KTt0cnl7cmV0dXJuIHQoKX1maW5hbGx5e3IuZm9yRWFjaCh0PT57blt0XT1lW3RdfSl9fWZ1bmN0aW9uIHYoKXtyZXR1cm4gdygpLmVuYWJsZWR9ZnVuY3Rpb24gXyh0LC4uLm4pe2gmJnYoKSYmYigoKT0+e3AuY29uc29sZVt0XShgU2VudHJ5IExvZ2dlciBbJHt0fV06YCwuLi5uKX0pfWZ1bmN0aW9uIHcoKXtyZXR1cm4gaD9nKCJsb2dnZXJTZXR0aW5ncyIsKCk9Pih7ZW5hYmxlZDohMX0pKTp7ZW5hYmxlZDohMX19Y29uc3QgUz17ZW5hYmxlOmZ1bmN0aW9uKCl7dygpLmVuYWJsZWQ9ITB9LGRpc2FibGU6ZnVuY3Rpb24oKXt3KCkuZW5hYmxlZD0hMX0saXNFbmFibGVkOnYsbG9nOmZ1bmN0aW9uKC4uLnQpe18oImxvZyIsLi4udCl9LHdhcm46ZnVuY3Rpb24oLi4udCl7Xygid2FybiIsLi4udCl9LGVycm9yOmZ1bmN0aW9uKC4uLnQpe18oImVycm9yIiwuLi50KX19LCQ9L2NhcHR1cmVNZXNzYWdlfGNhcHR1cmVFeGNlcHRpb24vO2Z1bmN0aW9uIEUodCl7cmV0dXJuIHRbdC5sZW5ndGgtMV18fHt9fWNvbnN0IHg9Ijxhbm9ueW1vdXM+Ijtjb25zdCBOPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7ZnVuY3Rpb24gaih0LG4pe3JldHVybiBOLmNhbGwodCk9PT1gW29iamVjdCAke259XWB9ZnVuY3Rpb24gQyh0KXtyZXR1cm4gaih0LCJTdHJpbmciKX1mdW5jdGlvbiBBKHQpe3JldHVybiBqKHQsIk9iamVjdCIpfWZ1bmN0aW9uIFQodCl7cmV0dXJuIEJvb2xlYW4odD8udGhlbiYmImZ1bmN0aW9uIj09dHlwZW9mIHQudGhlbil9ZnVuY3Rpb24gayh0LG4pe3RyeXtyZXR1cm4gdCBpbnN0YW5jZW9mIG59Y2F0Y2h7cmV0dXJuITF9fWNvbnN0IEk9cDtmdW5jdGlvbiBPKHQsbil7Y29uc3QgZT10LHI9W107aWYoIWU/LnRhZ05hbWUpcmV0dXJuIiI7aWYoSS5IVE1MRWxlbWVudCYmZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZlLmRhdGFzZXQpe2lmKGUuZGF0YXNldC5zZW50cnlDb21wb25lbnQpcmV0dXJuIGUuZGF0YXNldC5zZW50cnlDb21wb25lbnQ7aWYoZS5kYXRhc2V0LnNlbnRyeUVsZW1lbnQpcmV0dXJuIGUuZGF0YXNldC5zZW50cnlFbGVtZW50fXIucHVzaChlLnRhZ05hbWUudG9Mb3dlckNhc2UoKSk7Y29uc3Qgbz1uPy5sZW5ndGg/bi5maWx0ZXIodD0+ZS5nZXRBdHRyaWJ1dGUodCkpLm1hcCh0PT5bdCxlLmdldEF0dHJpYnV0ZSh0KV0pOm51bGw7aWYobz8ubGVuZ3RoKW8uZm9yRWFjaCh0PT57ci5wdXNoKGBbJHt0WzBdfT0iJHt0WzFdfSJdYCl9KTtlbHNle2UuaWQmJnIucHVzaChgIyR7ZS5pZH1gKTtjb25zdCB0PWUuY2xhc3NOYW1lO2lmKHQmJkModCkpe2NvbnN0IG49dC5zcGxpdCgvXHMrLyk7Zm9yKGNvbnN0IHQgb2YgbilyLnB1c2goYC4ke3R9YCl9fWZvcihjb25zdCB0IG9mWyJhcmlhLWxhYmVsIiwidHlwZSIsIm5hbWUiLCJ0aXRsZSIsImFsdCJdKXtjb25zdCBuPWUuZ2V0QXR0cmlidXRlKHQpO24mJnIucHVzaChgWyR7dH09IiR7bn0iXWApfXJldHVybiByLmpvaW4oIiIpfWZ1bmN0aW9uIFIodCl7aWYoZnVuY3Rpb24odCl7c3dpdGNoKE4uY2FsbCh0KSl7Y2FzZSJbb2JqZWN0IEVycm9yXSI6Y2FzZSJbb2JqZWN0IEV4Y2VwdGlvbl0iOmNhc2UiW29iamVjdCBET01FeGNlcHRpb25dIjpjYXNlIltvYmplY3QgV2ViQXNzZW1ibHkuRXhjZXB0aW9uXSI6cmV0dXJuITA7ZGVmYXVsdDpyZXR1cm4gayh0LEVycm9yKX19KHQpKXJldHVybnttZXNzYWdlOnQubWVzc2FnZSxuYW1lOnQubmFtZSxzdGFjazp0LnN0YWNrLC4uLkQodCl9O2lmKG49dCwidW5kZWZpbmVkIiE9dHlwZW9mIEV2ZW50JiZrKG4sRXZlbnQpKXtjb25zdCBuPXt0eXBlOnQudHlwZSx0YXJnZXQ6UCh0LnRhcmdldCksY3VycmVudFRhcmdldDpQKHQuY3VycmVudFRhcmdldCksLi4uRCh0KX07cmV0dXJuInVuZGVmaW5lZCIhPXR5cGVvZiBDdXN0b21FdmVudCYmayh0LEN1c3RvbUV2ZW50KSYmKG4uZGV0YWlsPXQuZGV0YWlsKSxufXJldHVybiB0O3ZhciBufWZ1bmN0aW9uIFAodCl7dHJ5e3JldHVybiBuPXQsInVuZGVmaW5lZCIhPXR5cGVvZiBFbGVtZW50JiZrKG4sRWxlbWVudCk/ZnVuY3Rpb24odCxuPXt9KXtpZighdClyZXR1cm4iPHVua25vd24+Ijt0cnl7bGV0IGU9dDtjb25zdCByPTUsbz1bXTtsZXQgaT0wLHM9MDtjb25zdCBjPSIgPiAiLHU9Yy5sZW5ndGg7bGV0IGE7Y29uc3QgZj1BcnJheS5pc0FycmF5KG4pP246bi5rZXlBdHRycyxoPSFBcnJheS5pc0FycmF5KG4pJiZuLm1heFN0cmluZ0xlbmd0aHx8ODA7Zm9yKDtlJiZpKys8ciYmKGE9TyhlLGYpLCEoImh0bWwiPT09YXx8aT4xJiZzK28ubGVuZ3RoKnUrYS5sZW5ndGg+PWgpKTspby5wdXNoKGEpLHMrPWEubGVuZ3RoLGU9ZS5wYXJlbnROb2RlO3JldHVybiBvLnJldmVyc2UoKS5qb2luKGMpfWNhdGNoe3JldHVybiI8dW5rbm93bj4ifX0odCk6T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpfWNhdGNoe3JldHVybiI8dW5rbm93bj4ifXZhciBufWZ1bmN0aW9uIEQodCl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiB0JiZudWxsIT09dD9PYmplY3QuZnJvbUVudHJpZXMoT2JqZWN0LmVudHJpZXModCkpOnt9fWxldCBVLEw7ZnVuY3Rpb24gTSh0KXtpZih2b2lkIDAhPT1VKXJldHVybiBVP1UodCk6dCgpO2NvbnN0IG49U3ltYm9sLmZvcigiX19TRU5UUllfU0FGRV9SQU5ET01fSURfV1JBUFBFUl9fIiksZT1wO3JldHVybiBuIGluIGUmJiJmdW5jdGlvbiI9PXR5cGVvZiBlW25dPyhVPWVbbl0sVSh0KSk6KFU9bnVsbCx0KCkpfWZ1bmN0aW9uIEIoKXtyZXR1cm4gTSgoKT0+TWF0aC5yYW5kb20oKSl9ZnVuY3Rpb24gVygpe3JldHVybiBNKCgpPT5EYXRlLm5vdygpKX1mdW5jdGlvbiB6KHQsbj0wKXtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIHR8fDA9PT1ufHx0Lmxlbmd0aDw9bj90OmAke3Quc2xpY2UoMCxuKX0uLi5gfWZ1bmN0aW9uIEYodD1mdW5jdGlvbigpe2NvbnN0IHQ9cDtyZXR1cm4gdC5jcnlwdG98fHQubXNDcnlwdG99KCkpe3RyeXtpZih0Py5yYW5kb21VVUlEKXJldHVybiBNKCgpPT50LnJhbmRvbVVVSUQoKSkucmVwbGFjZSgvLS9nLCIiKX1jYXRjaHt9cmV0dXJuIEx8fChMPVsxZTddKzFlMys0ZTMrOGUzKzFlMTEpLEwucmVwbGFjZSgvWzAxOF0vZyx0PT4odF4oMTYqQigpJjE1KT4+dC80KS50b1N0cmluZygxNikpfWZ1bmN0aW9uIEcoKXtyZXR1cm4gVygpLzFlM31sZXQgSDtmdW5jdGlvbiBKKCl7cmV0dXJuKEg/PyhIPWZ1bmN0aW9uKCl7Y29uc3R7cGVyZm9ybWFuY2U6dH09cDtpZighdD8ubm93fHwhdC50aW1lT3JpZ2luKXJldHVybiBHO2NvbnN0IG49dC50aW1lT3JpZ2luO3JldHVybigpPT4obitNKCgpPT50Lm5vdygpKSkvMWUzfSgpKSkoKX1mdW5jdGlvbiBZKHQpe2NvbnN0IG49SigpLGU9e3NpZDpGKCksaW5pdDohMCx0aW1lc3RhbXA6bixzdGFydGVkOm4sZHVyYXRpb246MCxzdGF0dXM6Im9rIixlcnJvcnM6MCxpZ25vcmVEdXJhdGlvbjohMSx0b0pTT046KCk9PmZ1bmN0aW9uKHQpe3JldHVybntzaWQ6YCR7dC5zaWR9YCxpbml0OnQuaW5pdCxzdGFydGVkOm5ldyBEYXRlKDFlMyp0LnN0YXJ0ZWQpLnRvSVNPU3RyaW5nKCksdGltZXN0YW1wOm5ldyBEYXRlKDFlMyp0LnRpbWVzdGFtcCkudG9JU09TdHJpbmcoKSxzdGF0dXM6dC5zdGF0dXMsZXJyb3JzOnQuZXJyb3JzLGRpZDoibnVtYmVyIj09dHlwZW9mIHQuZGlkfHwic3RyaW5nIj09dHlwZW9mIHQuZGlkP2Ake3QuZGlkfWA6dm9pZCAwLGR1cmF0aW9uOnQuZHVyYXRpb24sYWJub3JtYWxfbWVjaGFuaXNtOnQuYWJub3JtYWxfbWVjaGFuaXNtLGF0dHJzOntyZWxlYXNlOnQucmVsZWFzZSxlbnZpcm9ubWVudDp0LmVudmlyb25tZW50LGlwX2FkZHJlc3M6dC5pcEFkZHJlc3MsdXNlcl9hZ2VudDp0LnVzZXJBZ2VudH19fShlKX07cmV0dXJuIHQmJlYoZSx0KSxlfWZ1bmN0aW9uIFYodCxuPXt9KXtpZihuLnVzZXImJighdC5pcEFkZHJlc3MmJm4udXNlci5pcF9hZGRyZXNzJiYodC5pcEFkZHJlc3M9bi51c2VyLmlwX2FkZHJlc3MpLHQuZGlkfHxuLmRpZHx8KHQuZGlkPW4udXNlci5pZHx8bi51c2VyLmVtYWlsfHxuLnVzZXIudXNlcm5hbWUpKSx0LnRpbWVzdGFtcD1uLnRpbWVzdGFtcHx8SigpLG4uYWJub3JtYWxfbWVjaGFuaXNtJiYodC5hYm5vcm1hbF9tZWNoYW5pc209bi5hYm5vcm1hbF9tZWNoYW5pc20pLG4uaWdub3JlRHVyYXRpb24mJih0Lmlnbm9yZUR1cmF0aW9uPW4uaWdub3JlRHVyYXRpb24pLG4uc2lkJiYodC5zaWQ9MzI9PT1uLnNpZC5sZW5ndGg/bi5zaWQ6RigpKSx2b2lkIDAhPT1uLmluaXQmJih0LmluaXQ9bi5pbml0KSwhdC5kaWQmJm4uZGlkJiYodC5kaWQ9YCR7bi5kaWR9YCksIm51bWJlciI9PXR5cGVvZiBuLnN0YXJ0ZWQmJih0LnN0YXJ0ZWQ9bi5zdGFydGVkKSx0Lmlnbm9yZUR1cmF0aW9uKXQuZHVyYXRpb249dm9pZCAwO2Vsc2UgaWYoIm51bWJlciI9PXR5cGVvZiBuLmR1cmF0aW9uKXQuZHVyYXRpb249bi5kdXJhdGlvbjtlbHNle2NvbnN0IG49dC50aW1lc3RhbXAtdC5zdGFydGVkO3QuZHVyYXRpb249bj49MD9uOjB9bi5yZWxlYXNlJiYodC5yZWxlYXNlPW4ucmVsZWFzZSksbi5lbnZpcm9ubWVudCYmKHQuZW52aXJvbm1lbnQ9bi5lbnZpcm9ubWVudCksIXQuaXBBZGRyZXNzJiZuLmlwQWRkcmVzcyYmKHQuaXBBZGRyZXNzPW4uaXBBZGRyZXNzKSwhdC51c2VyQWdlbnQmJm4udXNlckFnZW50JiYodC51c2VyQWdlbnQ9bi51c2VyQWdlbnQpLCJudW1iZXIiPT10eXBlb2Ygbi5lcnJvcnMmJih0LmVycm9ycz1uLmVycm9ycyksbi5zdGF0dXMmJih0LnN0YXR1cz1uLnN0YXR1cyl9ZnVuY3Rpb24gSyh0LG4sZT0yKXtpZighbnx8Im9iamVjdCIhPXR5cGVvZiBufHxlPD0wKXJldHVybiBuO2lmKHQmJjA9PT1PYmplY3Qua2V5cyhuKS5sZW5ndGgpcmV0dXJuIHQ7Y29uc3Qgcj17Li4udH07Zm9yKGNvbnN0IHQgaW4gbilPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobix0KSYmKHJbdF09SyhyW3RdLG5bdF0sZS0xKSk7cmV0dXJuIHJ9ZnVuY3Rpb24gWigpe3JldHVybiBGKCl9ZnVuY3Rpb24gcSgpe3JldHVybiBGKCkuc3Vic3RyaW5nKDE2KX1jb25zdCBRPSJfc2VudHJ5U3BhbiI7ZnVuY3Rpb24gWCh0LG4pe24/ZnVuY3Rpb24odCxuLGUpe3RyeXtPYmplY3QuZGVmaW5lUHJvcGVydHkodCxuLHt2YWx1ZTplLHdyaXRhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMH0pfWNhdGNoe2gmJlMubG9nKGBGYWlsZWQgdG8gYWRkIG5vbi1lbnVtZXJhYmxlIHByb3BlcnR5ICIke259IiB0byBvYmplY3RgLHQpfX0odCxRLG4pOmRlbGV0ZSB0W1FdfWZ1bmN0aW9uIHR0KHQpe3JldHVybiB0W1FdfWNsYXNzIG50e2NvbnN0cnVjdG9yKCl7dGhpcy50PSExLHRoaXMubz1bXSx0aGlzLmk9W10sdGhpcy51PVtdLHRoaXMuaD1bXSx0aGlzLnA9e30sdGhpcy5sPXt9LHRoaXMubT17fSx0aGlzLnY9e30sdGhpcy5fPXt9LHRoaXMuUz17fSx0aGlzLk49e3RyYWNlSWQ6WigpLHNhbXBsZVJhbmQ6QigpfX1jbG9uZSgpe2NvbnN0IHQ9bmV3IG50O3JldHVybiB0LnU9Wy4uLnRoaXMudV0sdC5sPXsuLi50aGlzLmx9LHQubT17Li4udGhpcy5tfSx0LnY9ey4uLnRoaXMudn0sdC5fPXsuLi50aGlzLl99LHRoaXMuXy5mbGFncyYmKHQuXy5mbGFncz17dmFsdWVzOlsuLi50aGlzLl8uZmxhZ3MudmFsdWVzXX0pLHQucD10aGlzLnAsdC5qPXRoaXMuaix0LkM9dGhpcy5DLHQuQT10aGlzLkEsdC5UPXRoaXMuVCx0Lmk9Wy4uLnRoaXMuaV0sdC5oPVsuLi50aGlzLmhdLHQuUz17Li4udGhpcy5TfSx0Lk49ey4uLnRoaXMuTn0sdC5rPXRoaXMuayx0Lkk9dGhpcy5JLHQuTz10aGlzLk8sWCh0LHR0KHRoaXMpKSx0fXNldENsaWVudCh0KXt0aGlzLms9dH1zZXRMYXN0RXZlbnRJZCh0KXt0aGlzLkk9dH1nZXRDbGllbnQoKXtyZXR1cm4gdGhpcy5rfWxhc3RFdmVudElkKCl7cmV0dXJuIHRoaXMuSX1hZGRTY29wZUxpc3RlbmVyKHQpe3RoaXMuby5wdXNoKHQpfWFkZEV2ZW50UHJvY2Vzc29yKHQpe3JldHVybiB0aGlzLmkucHVzaCh0KSx0aGlzfXNldFVzZXIodCl7cmV0dXJuIHRoaXMucD10fHx7ZW1haWw6dm9pZCAwLGlkOnZvaWQgMCxpcF9hZGRyZXNzOnZvaWQgMCx1c2VybmFtZTp2b2lkIDB9LHRoaXMuQyYmVih0aGlzLkMse3VzZXI6dH0pLHRoaXMuUigpLHRoaXN9Z2V0VXNlcigpe3JldHVybiB0aGlzLnB9c2V0Q29udmVyc2F0aW9uSWQodCl7cmV0dXJuIHRoaXMuTz10fHx2b2lkIDAsdGhpcy5SKCksdGhpc31zZXRUYWdzKHQpe3JldHVybiB0aGlzLmw9ey4uLnRoaXMubCwuLi50fSx0aGlzLlIoKSx0aGlzfXNldFRhZyh0LG4pe3JldHVybiB0aGlzLnNldFRhZ3Moe1t0XTpufSl9c2V0QXR0cmlidXRlcyh0KXtyZXR1cm4gdGhpcy5tPXsuLi50aGlzLm0sLi4udH0sdGhpcy5SKCksdGhpc31zZXRBdHRyaWJ1dGUodCxuKXtyZXR1cm4gdGhpcy5zZXRBdHRyaWJ1dGVzKHtbdF06bn0pfXJlbW92ZUF0dHJpYnV0ZSh0KXtyZXR1cm4gdCBpbiB0aGlzLm0mJihkZWxldGUgdGhpcy5tW3RdLHRoaXMuUigpKSx0aGlzfXNldEV4dHJhcyh0KXtyZXR1cm4gdGhpcy52PXsuLi50aGlzLnYsLi4udH0sdGhpcy5SKCksdGhpc31zZXRFeHRyYSh0LG4pe3JldHVybiB0aGlzLnY9ey4uLnRoaXMudixbdF06bn0sdGhpcy5SKCksdGhpc31zZXRGaW5nZXJwcmludCh0KXtyZXR1cm4gdGhpcy5UPXQsdGhpcy5SKCksdGhpc31zZXRMZXZlbCh0KXtyZXR1cm4gdGhpcy5qPXQsdGhpcy5SKCksdGhpc31zZXRUcmFuc2FjdGlvbk5hbWUodCl7cmV0dXJuIHRoaXMuQT10LHRoaXMuUigpLHRoaXN9c2V0Q29udGV4dCh0LG4pe3JldHVybiBudWxsPT09bj9kZWxldGUgdGhpcy5fW3RdOnRoaXMuX1t0XT1uLHRoaXMuUigpLHRoaXN9c2V0U2Vzc2lvbih0KXtyZXR1cm4gdD90aGlzLkM9dDpkZWxldGUgdGhpcy5DLHRoaXMuUigpLHRoaXN9Z2V0U2Vzc2lvbigpe3JldHVybiB0aGlzLkN9dXBkYXRlKHQpe2lmKCF0KXJldHVybiB0aGlzO2NvbnN0IG49ImZ1bmN0aW9uIj09dHlwZW9mIHQ/dCh0aGlzKTp0LGU9biBpbnN0YW5jZW9mIG50P24uZ2V0U2NvcGVEYXRhKCk6QShuKT90OnZvaWQgMCx7dGFnczpyLGF0dHJpYnV0ZXM6byxleHRyYTppLHVzZXI6cyxjb250ZXh0czpjLGxldmVsOnUsZmluZ2VycHJpbnQ6YT1bXSxwcm9wYWdhdGlvbkNvbnRleHQ6Zixjb252ZXJzYXRpb25JZDpofT1lfHx7fTtyZXR1cm4gdGhpcy5sPXsuLi50aGlzLmwsLi4ucn0sdGhpcy5tPXsuLi50aGlzLm0sLi4ub30sdGhpcy52PXsuLi50aGlzLnYsLi4uaX0sdGhpcy5fPXsuLi50aGlzLl8sLi4uY30scyYmT2JqZWN0LmtleXMocykubGVuZ3RoJiYodGhpcy5wPXMpLHUmJih0aGlzLmo9dSksYS5sZW5ndGgmJih0aGlzLlQ9YSksZiYmKHRoaXMuTj1mKSxoJiYodGhpcy5PPWgpLHRoaXN9Y2xlYXIoKXtyZXR1cm4gdGhpcy51PVtdLHRoaXMubD17fSx0aGlzLm09e30sdGhpcy52PXt9LHRoaXMucD17fSx0aGlzLl89e30sdGhpcy5qPXZvaWQgMCx0aGlzLkE9dm9pZCAwLHRoaXMuVD12b2lkIDAsdGhpcy5DPXZvaWQgMCx0aGlzLk89dm9pZCAwLFgodGhpcyx2b2lkIDApLHRoaXMuaD1bXSx0aGlzLnNldFByb3BhZ2F0aW9uQ29udGV4dCh7dHJhY2VJZDpaKCksc2FtcGxlUmFuZDpCKCl9KSx0aGlzLlIoKSx0aGlzfWFkZEJyZWFkY3J1bWIodCxuKXtjb25zdCBlPSJudW1iZXIiPT10eXBlb2Ygbj9uOjEwMDtpZihlPD0wKXJldHVybiB0aGlzO2NvbnN0IHI9e3RpbWVzdGFtcDpHKCksLi4udCxtZXNzYWdlOnQubWVzc2FnZT96KHQubWVzc2FnZSwyMDQ4KTp0Lm1lc3NhZ2V9O3JldHVybiB0aGlzLnUucHVzaChyKSx0aGlzLnUubGVuZ3RoPmUmJih0aGlzLnU9dGhpcy51LnNsaWNlKC1lKSx0aGlzLms/LnJlY29yZERyb3BwZWRFdmVudCgiYnVmZmVyX292ZXJmbG93IiwibG9nX2l0ZW0iKSksdGhpcy5SKCksdGhpc31nZXRMYXN0QnJlYWRjcnVtYigpe3JldHVybiB0aGlzLnVbdGhpcy51Lmxlbmd0aC0xXX1jbGVhckJyZWFkY3J1bWJzKCl7cmV0dXJuIHRoaXMudT1bXSx0aGlzLlIoKSx0aGlzfWFkZEF0dGFjaG1lbnQodCl7cmV0dXJuIHRoaXMuaC5wdXNoKHQpLHRoaXN9Y2xlYXJBdHRhY2htZW50cygpe3JldHVybiB0aGlzLmg9W10sdGhpc31nZXRTY29wZURhdGEoKXtyZXR1cm57YnJlYWRjcnVtYnM6dGhpcy51LGF0dGFjaG1lbnRzOnRoaXMuaCxjb250ZXh0czp0aGlzLl8sdGFnczp0aGlzLmwsYXR0cmlidXRlczp0aGlzLm0sZXh0cmE6dGhpcy52LHVzZXI6dGhpcy5wLGxldmVsOnRoaXMuaixmaW5nZXJwcmludDp0aGlzLlR8fFtdLGV2ZW50UHJvY2Vzc29yczp0aGlzLmkscHJvcGFnYXRpb25Db250ZXh0OnRoaXMuTixzZGtQcm9jZXNzaW5nTWV0YWRhdGE6dGhpcy5TLHRyYW5zYWN0aW9uTmFtZTp0aGlzLkEsc3Bhbjp0dCh0aGlzKSxjb252ZXJzYXRpb25JZDp0aGlzLk99fXNldFNES1Byb2Nlc3NpbmdNZXRhZGF0YSh0KXtyZXR1cm4gdGhpcy5TPUsodGhpcy5TLHQsMiksdGhpc31zZXRQcm9wYWdhdGlvbkNvbnRleHQodCl7cmV0dXJuIHRoaXMuTj10LHRoaXN9Z2V0UHJvcGFnYXRpb25Db250ZXh0KCl7cmV0dXJuIHRoaXMuTn1jYXB0dXJlRXhjZXB0aW9uKHQsbil7Y29uc3QgZT1uPy5ldmVudF9pZHx8RigpO2lmKCF0aGlzLmspcmV0dXJuIGgmJlMud2FybigiTm8gY2xpZW50IGNvbmZpZ3VyZWQgb24gc2NvcGUgLSB3aWxsIG5vdCBjYXB0dXJlIGV4Y2VwdGlvbiEiKSxlO2NvbnN0IHI9bmV3IEVycm9yKCJTZW50cnkgc3ludGhldGljRXhjZXB0aW9uIik7cmV0dXJuIHRoaXMuay5jYXB0dXJlRXhjZXB0aW9uKHQse29yaWdpbmFsRXhjZXB0aW9uOnQsc3ludGhldGljRXhjZXB0aW9uOnIsLi4ubixldmVudF9pZDplfSx0aGlzKSxlfWNhcHR1cmVNZXNzYWdlKHQsbixlKXtjb25zdCByPWU/LmV2ZW50X2lkfHxGKCk7aWYoIXRoaXMuaylyZXR1cm4gaCYmUy53YXJuKCJObyBjbGllbnQgY29uZmlndXJlZCBvbiBzY29wZSAtIHdpbGwgbm90IGNhcHR1cmUgbWVzc2FnZSEiKSxyO2NvbnN0IG89ZT8uc3ludGhldGljRXhjZXB0aW9uPz9uZXcgRXJyb3IodCk7cmV0dXJuIHRoaXMuay5jYXB0dXJlTWVzc2FnZSh0LG4se29yaWdpbmFsRXhjZXB0aW9uOnQsc3ludGhldGljRXhjZXB0aW9uOm8sLi4uZSxldmVudF9pZDpyfSx0aGlzKSxyfWNhcHR1cmVFdmVudCh0LG4pe2NvbnN0IGU9dC5ldmVudF9pZHx8bj8uZXZlbnRfaWR8fEYoKTtyZXR1cm4gdGhpcy5rPyh0aGlzLmsuY2FwdHVyZUV2ZW50KHQsey4uLm4sZXZlbnRfaWQ6ZX0sdGhpcyksZSk6KGgmJlMud2FybigiTm8gY2xpZW50IGNvbmZpZ3VyZWQgb24gc2NvcGUgLSB3aWxsIG5vdCBjYXB0dXJlIGV2ZW50ISIpLGUpfVIoKXt0aGlzLnR8fCh0aGlzLnQ9ITAsdGhpcy5vLmZvckVhY2godD0+e3QodGhpcyl9KSx0aGlzLnQ9ITEpfX1jb25zdCBldD10PT50IGluc3RhbmNlb2YgUHJvbWlzZSYmIXRbcnRdLHJ0PVN5bWJvbCgiY2hhaW5lZCBQcm9taXNlTGlrZSIpLG90PSh0LG4pPT57bGV0IGU9ITE7Zm9yKGNvbnN0IHIgaW4gdCl7aWYociBpbiBuKWNvbnRpbnVlO2U9ITA7Y29uc3Qgbz10W3JdOyJmdW5jdGlvbiI9PXR5cGVvZiBvP09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLHIse3ZhbHVlOiguLi5uKT0+by5hcHBseSh0LG4pLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6bltyXT1vfXJldHVybiBlJiZPYmplY3QuYXNzaWduKG4se1tydF06ITB9KSxufTtjbGFzcyBpdHtjb25zdHJ1Y3Rvcih0LG4pe2xldCBlLHI7ZT10fHxuZXcgbnQscj1ufHxuZXcgbnQsdGhpcy5QPVt7c2NvcGU6ZX1dLHRoaXMuRD1yfXdpdGhTY29wZSh0KXtjb25zdCBuPXRoaXMuVSgpO2xldCBlO3RyeXtlPXQobil9Y2F0Y2godCl7dGhyb3cgdGhpcy5MKCksdH1yZXR1cm4gVChlKT8oKHQsbixlKT0+e2NvbnN0IHI9dC50aGVuKHQ9PihuKHQpLHQpLHQ9Pnt0aHJvdyBlKHQpLHR9KTtyZXR1cm4gZXQocikmJmV0KHQpP3I6b3QodCxyKX0pKGUsKCk9PnRoaXMuTCgpLCgpPT50aGlzLkwoKSk6KHRoaXMuTCgpLGUpfWdldENsaWVudCgpe3JldHVybiB0aGlzLmdldFN0YWNrVG9wKCkuY2xpZW50fWdldFNjb3BlKCl7cmV0dXJuIHRoaXMuZ2V0U3RhY2tUb3AoKS5zY29wZX1nZXRJc29sYXRpb25TY29wZSgpe3JldHVybiB0aGlzLkR9Z2V0U3RhY2tUb3AoKXtyZXR1cm4gdGhpcy5QW3RoaXMuUC5sZW5ndGgtMV19VSgpe2NvbnN0IHQ9dGhpcy5nZXRTY29wZSgpLmNsb25lKCk7cmV0dXJuIHRoaXMuUC5wdXNoKHtjbGllbnQ6dGhpcy5nZXRDbGllbnQoKSxzY29wZTp0fSksdH1MKCl7cmV0dXJuISh0aGlzLlAubGVuZ3RoPD0xKSYmISF0aGlzLlAucG9wKCl9fWZ1bmN0aW9uIHN0KCl7Y29uc3QgdD1tKGwoKSk7cmV0dXJuIHQuc3RhY2s9dC5zdGFja3x8bmV3IGl0KGcoImRlZmF1bHRDdXJyZW50U2NvcGUiLCgpPT5uZXcgbnQpLGcoImRlZmF1bHRJc29sYXRpb25TY29wZSIsKCk9Pm5ldyBudCkpfWZ1bmN0aW9uIGN0KHQpe3JldHVybiBzdCgpLndpdGhTY29wZSh0KX1mdW5jdGlvbiB1dCh0LG4pe2NvbnN0IGU9c3QoKTtyZXR1cm4gZS53aXRoU2NvcGUoKCk9PihlLmdldFN0YWNrVG9wKCkuc2NvcGU9dCxuKHQpKSl9ZnVuY3Rpb24gYXQodCl7cmV0dXJuIHN0KCkud2l0aFNjb3BlKCgpPT50KHN0KCkuZ2V0SXNvbGF0aW9uU2NvcGUoKSkpfWZ1bmN0aW9uIGZ0KHQpe2NvbnN0IG49bSh0KTtyZXR1cm4gbi5hY3M/bi5hY3M6e3dpdGhJc29sYXRpb25TY29wZTphdCx3aXRoU2NvcGU6Y3Qsd2l0aFNldFNjb3BlOnV0LHdpdGhTZXRJc29sYXRpb25TY29wZToodCxuKT0+YXQobiksZ2V0Q3VycmVudFNjb3BlOigpPT5zdCgpLmdldFNjb3BlKCksZ2V0SXNvbGF0aW9uU2NvcGU6KCk9PnN0KCkuZ2V0SXNvbGF0aW9uU2NvcGUoKX19ZnVuY3Rpb24gaHQoKXtyZXR1cm4gZnQobCgpKS5nZXRDdXJyZW50U2NvcGUoKS5nZXRDbGllbnQoKX1mdW5jdGlvbiBwdCh0KXtpZih0KXtpZigib2JqZWN0Ij09dHlwZW9mIHQmJiJkZXJlZiJpbiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgdC5kZXJlZil0cnl7cmV0dXJuIHQuZGVyZWYoKX1jYXRjaHtyZXR1cm59cmV0dXJuIHR9fWZ1bmN0aW9uIGR0KHQpe2NvbnN0IG49dDtyZXR1cm57c2NvcGU6bi5fc2VudHJ5U2NvcGUsaXNvbGF0aW9uU2NvcGU6cHQobi5fc2VudHJ5SXNvbGF0aW9uU2NvcGUpfX1jb25zdCBsdD0ic2VudHJ5LSI7ZnVuY3Rpb24gbXQodCl7Y29uc3Qgbj1mdW5jdGlvbih0KXtpZighdHx8IUModCkmJiFBcnJheS5pc0FycmF5KHQpKXJldHVybjtpZihBcnJheS5pc0FycmF5KHQpKXJldHVybiB0LnJlZHVjZSgodCxuKT0+e2NvbnN0IGU9Z3Qobik7cmV0dXJuIE9iamVjdC5lbnRyaWVzKGUpLmZvckVhY2goKFtuLGVdKT0+e3Rbbl09ZX0pLHR9LHt9KTtyZXR1cm4gZ3QodCl9KHQpO2lmKCFuKXJldHVybjtjb25zdCBlPU9iamVjdC5lbnRyaWVzKG4pLnJlZHVjZSgodCxbbixlXSk9PntpZihuLnN0YXJ0c1dpdGgobHQpKXt0W24uc2xpY2UoNyldPWV9cmV0dXJuIHR9LHt9KTtyZXR1cm4gT2JqZWN0LmtleXMoZSkubGVuZ3RoPjA/ZTp2b2lkIDB9ZnVuY3Rpb24gZ3QodCl7cmV0dXJuIHQuc3BsaXQoIiwiKS5tYXAodD0+e2NvbnN0IG49dC5pbmRleE9mKCI9Iik7aWYoLTE9PT1uKXJldHVybltdO3JldHVyblt0LnNsaWNlKDAsbiksdC5zbGljZShuKzEpXS5tYXAodD0+e3RyeXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KHQudHJpbSgpKX1jYXRjaHtyZXR1cm59fSl9KS5yZWR1Y2UoKHQsW24sZV0pPT4obiYmZSYmKHRbbl09ZSksdCkse30pfWNvbnN0IHl0PS9ebyhcZCspXC4vO2Z1bmN0aW9uIGJ0KHQsbj0hMSl7Y29uc3R7aG9zdDplLHBhdGg6cixwYXNzOm8scG9ydDppLHByb2plY3RJZDpzLHByb3RvY29sOmMscHVibGljS2V5OnV9PXQ7cmV0dXJuYCR7Y306Ly8ke3V9JHtuJiZvP2A6JHtvfWA6IiJ9QCR7ZX0ke2k/YDoke2l9YDoiIn0vJHtyP2Ake3J9L2A6cn0ke3N9YH1mdW5jdGlvbiB2dCh0KXtjb25zdCBuPXQuZ2V0T3B0aW9ucygpLHtob3N0OmV9PXQuZ2V0RHNuKCl8fHt9O2xldCByO3JldHVybiBuLm9yZ0lkP3I9U3RyaW5nKG4ub3JnSWQpOmUmJihyPWZ1bmN0aW9uKHQpe2NvbnN0IG49dC5tYXRjaCh5dCk7cmV0dXJuIG4/LlsxXX0oZSkpLHJ9ZnVuY3Rpb24gX3QodCl7Y29uc3R7c3BhbklkOm4sdHJhY2VJZDplLGlzUmVtb3RlOnJ9PXQuc3BhbkNvbnRleHQoKSxvPXI/bjpFdCh0KS5wYXJlbnRfc3Bhbl9pZCxpPWR0KHQpLnNjb3BlO3JldHVybntwYXJlbnRfc3Bhbl9pZDpvLHNwYW5faWQ6cj9pPy5nZXRQcm9wYWdhdGlvbkNvbnRleHQoKS5wcm9wYWdhdGlvblNwYW5JZHx8cSgpOm4sdHJhY2VfaWQ6ZX19ZnVuY3Rpb24gd3QodCl7cmV0dXJuIHQmJnQubGVuZ3RoPjA/dC5tYXAoKHtjb250ZXh0OntzcGFuSWQ6dCx0cmFjZUlkOm4sdHJhY2VGbGFnczplLC4uLnJ9LGF0dHJpYnV0ZXM6b30pPT4oe3NwYW5faWQ6dCx0cmFjZV9pZDpuLHNhbXBsZWQ6MT09PWUsYXR0cmlidXRlczpvLC4uLnJ9KSk6dm9pZCAwfWZ1bmN0aW9uIFN0KHQpe3JldHVybiJudW1iZXIiPT10eXBlb2YgdD8kdCh0KTpBcnJheS5pc0FycmF5KHQpP3RbMF0rdFsxXS8xZTk6dCBpbnN0YW5jZW9mIERhdGU/JHQodC5nZXRUaW1lKCkpOkooKX1mdW5jdGlvbiAkdCh0KXtyZXR1cm4gdD45OTk5OTk5OTk5P3QvMWUzOnR9ZnVuY3Rpb24gRXQodCl7aWYoZnVuY3Rpb24odCl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIHQuZ2V0U3BhbkpTT059KHQpKXJldHVybiB0LmdldFNwYW5KU09OKCk7Y29uc3R7c3BhbklkOm4sdHJhY2VJZDplfT10LnNwYW5Db250ZXh0KCk7aWYoZnVuY3Rpb24odCl7Y29uc3Qgbj10O3JldHVybiEhKG4uYXR0cmlidXRlcyYmbi5zdGFydFRpbWUmJm4ubmFtZSYmbi5lbmRUaW1lJiZuLnN0YXR1cyl9KHQpKXtjb25zdHthdHRyaWJ1dGVzOnIsc3RhcnRUaW1lOm8sbmFtZTppLGVuZFRpbWU6cyxzdGF0dXM6YyxsaW5rczp1fT10O3JldHVybntzcGFuX2lkOm4sdHJhY2VfaWQ6ZSxkYXRhOnIsZGVzY3JpcHRpb246aSxwYXJlbnRfc3Bhbl9pZDoicGFyZW50U3BhbklkImluIHQ/dC5wYXJlbnRTcGFuSWQ6InBhcmVudFNwYW5Db250ZXh0ImluIHQ/dC5wYXJlbnRTcGFuQ29udGV4dD8uc3BhbklkOnZvaWQgMCxzdGFydF90aW1lc3RhbXA6U3QobyksdGltZXN0YW1wOlN0KHMpfHx2b2lkIDAsc3RhdHVzOnh0KGMpLG9wOnJbInNlbnRyeS5vcCJdLG9yaWdpbjpyWyJzZW50cnkub3JpZ2luIl0sbGlua3M6d3QodSl9fXJldHVybntzcGFuX2lkOm4sdHJhY2VfaWQ6ZSxzdGFydF90aW1lc3RhbXA6MCxkYXRhOnt9fX1mdW5jdGlvbiB4dCh0KXtpZih0JiYwIT09dC5jb2RlKXJldHVybiAxPT09dC5jb2RlPyJvayI6dC5tZXNzYWdlfHwiaW50ZXJuYWxfZXJyb3IifWZ1bmN0aW9uIE50KHQpe3JldHVybiB0Ll9zZW50cnlSb290U3Bhbnx8dH1mdW5jdGlvbiBqdCh0KXtjb25zdCBuPWh0KCk7aWYoIW4pcmV0dXJue307Y29uc3QgZT1OdCh0KSxyPUV0KGUpLG89ci5kYXRhLGk9ZS5zcGFuQ29udGV4dCgpLnRyYWNlU3RhdGUscz1pPy5nZXQoInNlbnRyeS5zYW1wbGVfcmF0ZSIpPz9vWyJzZW50cnkuc2FtcGxlX3JhdGUiXT8/b1sic2VudHJ5LnByZXZpb3VzX3RyYWNlX3NhbXBsZV9yYXRlIl07ZnVuY3Rpb24gYyh0KXtyZXR1cm4ibnVtYmVyIiE9dHlwZW9mIHMmJiJzdHJpbmciIT10eXBlb2Ygc3x8KHQuc2FtcGxlX3JhdGU9YCR7c31gKSx0fWNvbnN0IHU9ZS5fZnJvemVuRHNjO2lmKHUpcmV0dXJuIGModSk7Y29uc3QgYT1pPy5nZXQoInNlbnRyeS5kc2MiKSxmPWEmJm10KGEpO2lmKGYpcmV0dXJuIGMoZik7Y29uc3QgaD1mdW5jdGlvbih0LG4pe2NvbnN0IGU9bi5nZXRPcHRpb25zKCkse3B1YmxpY0tleTpyfT1uLmdldERzbigpfHx7fSxvPXtlbnZpcm9ubWVudDplLmVudmlyb25tZW50fHwicHJvZHVjdGlvbiIscmVsZWFzZTplLnJlbGVhc2UscHVibGljX2tleTpyLHRyYWNlX2lkOnQsb3JnX2lkOnZ0KG4pfTtyZXR1cm4gbi5lbWl0KCJjcmVhdGVEc2MiLG8pLG99KHQuc3BhbkNvbnRleHQoKS50cmFjZUlkLG4pLHA9b1sic2VudHJ5LnNvdXJjZSJdLGQ9ci5kZXNjcmlwdGlvbjtyZXR1cm4idXJsIiE9PXAmJmQmJihoLnRyYW5zYWN0aW9uPWQpLGZ1bmN0aW9uKCl7aWYoImJvb2xlYW4iPT10eXBlb2YgX19TRU5UUllfVFJBQ0lOR19fJiYhX19TRU5UUllfVFJBQ0lOR19fKXJldHVybiExO2NvbnN0IHQ9aHQoKT8uZ2V0T3B0aW9ucygpO3JldHVybiEoIXR8fG51bGw9PXQudHJhY2VzU2FtcGxlUmF0ZSYmIXQudHJhY2VzU2FtcGxlcil9KCkmJihoLnNhbXBsZWQ9U3RyaW5nKGZ1bmN0aW9uKHQpe2NvbnN0e3RyYWNlRmxhZ3M6bn09dC5zcGFuQ29udGV4dCgpO3JldHVybiAxPT09bn0oZSkpLGguc2FtcGxlX3JhbmQ9aT8uZ2V0KCJzZW50cnkuc2FtcGxlX3JhbmQiKT8/ZHQoZSkuc2NvcGU/LmdldFByb3BhZ2F0aW9uQ29udGV4dCgpLnNhbXBsZVJhbmQudG9TdHJpbmcoKSksYyhoKSxuLmVtaXQoImNyZWF0ZURzYyIsaCxlKSxofWZ1bmN0aW9uIEN0KHQsbj0xMDAsZT0xLzApe3RyeXtyZXR1cm4gQXQoIiIsdCxuLGUpfWNhdGNoKHQpe3JldHVybntFUlJPUjpgKipub24tc2VyaWFsaXphYmxlKiogKCR7dH0pYH19fWZ1bmN0aW9uIEF0KHQsbixlPTEvMCxyPTEvMCxvPWZ1bmN0aW9uKCl7Y29uc3QgdD1uZXcgV2Vha1NldDtmdW5jdGlvbiBuKG4pe3JldHVybiEhdC5oYXMobil8fCh0LmFkZChuKSwhMSl9ZnVuY3Rpb24gZShuKXt0LmRlbGV0ZShuKX1yZXR1cm5bbixlXX0oKSl7Y29uc3RbaSxzXT1vO2lmKG51bGw9PW58fFsiYm9vbGVhbiIsInN0cmluZyJdLmluY2x1ZGVzKHR5cGVvZiBuKXx8Im51bWJlciI9PXR5cGVvZiBuJiZOdW1iZXIuaXNGaW5pdGUobikpcmV0dXJuIG47Y29uc3QgYz1mdW5jdGlvbih0LG4pe3RyeXtpZigiZG9tYWluIj09PXQmJm4mJiJvYmplY3QiPT10eXBlb2YgbiYmbi5NKXJldHVybiJbRG9tYWluXSI7aWYoImRvbWFpbkVtaXR0ZXIiPT09dClyZXR1cm4iW0RvbWFpbkVtaXR0ZXJdIjtpZigidW5kZWZpbmVkIiE9dHlwZW9mIGdsb2JhbCYmbj09PWdsb2JhbClyZXR1cm4iW0dsb2JhbF0iO2lmKCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZuPT09d2luZG93KXJldHVybiJbV2luZG93XSI7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBkb2N1bWVudCYmbj09PWRvY3VtZW50KXJldHVybiJbRG9jdW1lbnRdIjtpZigib2JqZWN0Ij09dHlwZW9mKGU9bikmJm51bGwhPT1lJiYoZS5fX2lzVnVlfHxlLkJ8fGUuX192X2lzVk5vZGUpKXJldHVybiBmdW5jdGlvbih0KXtyZXR1cm4iX192X2lzVk5vZGUiaW4gdCYmdC5fX3ZfaXNWTm9kZT8iW1Z1ZVZOb2RlXSI6IltWdWVWaWV3TW9kZWxdIn0obik7aWYoZnVuY3Rpb24odCl7cmV0dXJuIEEodCkmJiJuYXRpdmVFdmVudCJpbiB0JiYicHJldmVudERlZmF1bHQiaW4gdCYmInN0b3BQcm9wYWdhdGlvbiJpbiB0fShuKSlyZXR1cm4iW1N5bnRoZXRpY0V2ZW50XSI7aWYoIm51bWJlciI9PXR5cGVvZiBuJiYhTnVtYmVyLmlzRmluaXRlKG4pKXJldHVybmBbJHtufV1gO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBuKXJldHVybmBbRnVuY3Rpb246ICR7ZnVuY3Rpb24odCl7dHJ5e3JldHVybiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgdCYmdC5uYW1lfHx4fWNhdGNoe3JldHVybiB4fX0obil9XWA7aWYoInN5bWJvbCI9PXR5cGVvZiBuKXJldHVybmBbJHtTdHJpbmcobil9XWA7aWYoImJpZ2ludCI9PXR5cGVvZiBuKXJldHVybmBbQmlnSW50OiAke1N0cmluZyhuKX1dYDtjb25zdCByPWZ1bmN0aW9uKHQpe2NvbnN0IG49T2JqZWN0LmdldFByb3RvdHlwZU9mKHQpO3JldHVybiBuPy5jb25zdHJ1Y3Rvcj9uLmNvbnN0cnVjdG9yLm5hbWU6Im51bGwgcHJvdG90eXBlIn0obik7cmV0dXJuL15IVE1MKFx3KilFbGVtZW50JC8udGVzdChyKT9gW0hUTUxFbGVtZW50OiAke3J9XWA6YFtvYmplY3QgJHtyfV1gfWNhdGNoKHQpe3JldHVybmAqKm5vbi1zZXJpYWxpemFibGUqKiAoJHt0fSlgfXZhciBlfSh0LG4pO2lmKCFjLnN0YXJ0c1dpdGgoIltvYmplY3QgIikpcmV0dXJuIGM7aWYobi5fX3NlbnRyeV9za2lwX25vcm1hbGl6YXRpb25fXylyZXR1cm4gbjtjb25zdCB1PSJudW1iZXIiPT10eXBlb2Ygbi5fX3NlbnRyeV9vdmVycmlkZV9ub3JtYWxpemF0aW9uX2RlcHRoX18/bi5fX3NlbnRyeV9vdmVycmlkZV9ub3JtYWxpemF0aW9uX2RlcHRoX186ZTtpZigwPT09dSlyZXR1cm4gYy5yZXBsYWNlKCJvYmplY3QgIiwiIik7aWYoaShuKSlyZXR1cm4iW0NpcmN1bGFyIH5dIjtjb25zdCBhPW47aWYoYSYmImZ1bmN0aW9uIj09dHlwZW9mIGEudG9KU09OKXRyeXtyZXR1cm4gQXQoIiIsYS50b0pTT04oKSx1LTEscixvKX1jYXRjaHt9Y29uc3QgZj1BcnJheS5pc0FycmF5KG4pP1tdOnt9O2xldCBoPTA7Y29uc3QgcD1SKG4pO2Zvcihjb25zdCB0IGluIHApe2lmKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocCx0KSljb250aW51ZTtpZihoPj1yKXtmW3RdPSJbTWF4UHJvcGVydGllcyB+XSI7YnJlYWt9Y29uc3Qgbj1wW3RdO2ZbdF09QXQodCxuLHUtMSxyLG8pLGgrK31yZXR1cm4gcyhuKSxmfWZ1bmN0aW9uIFR0KHQsbil7Y29uc3QgZT1uLnJlcGxhY2UoL1xcL2csIi8iKS5yZXBsYWNlKC9bfFxce30oKVtcXV4kKyo/Ll0vZywiXFwkJiIpO2xldCByPXQ7dHJ5e3I9ZGVjb2RlVVJJKHQpfWNhdGNoe31yZXR1cm4gci5yZXBsYWNlKC9cXC9nLCIvIikucmVwbGFjZSgvd2VicGFjazpcLz8vZywiIikucmVwbGFjZShuZXcgUmVnRXhwKGAoZmlsZTovLyk/Lyoke2V9LypgLCJpZyIpLCJhcHA6Ly8vIil9ZnVuY3Rpb24ga3QodCxuPVtdKXtyZXR1cm5bdCxuXX1mdW5jdGlvbiBJdCh0LG4pe2NvbnN0IGU9dFsxXTtmb3IoY29uc3QgdCBvZiBlKXtpZihuKHQsdFswXS50eXBlKSlyZXR1cm4hMH1yZXR1cm4hMX1mdW5jdGlvbiBPdCh0KXtjb25zdCBuPW0ocCk7cmV0dXJuIG4uZW5jb2RlUG9seWZpbGw/bi5lbmNvZGVQb2x5ZmlsbCh0KToobmV3IFRleHRFbmNvZGVyKS5lbmNvZGUodCl9ZnVuY3Rpb24gUnQodCl7Y29uc3RbbixlXT10O2xldCByPUpTT04uc3RyaW5naWZ5KG4pO2Z1bmN0aW9uIG8odCl7InN0cmluZyI9PXR5cGVvZiByP3I9InN0cmluZyI9PXR5cGVvZiB0P3IrdDpbT3QociksdF06ci5wdXNoKCJzdHJpbmciPT10eXBlb2YgdD9PdCh0KTp0KX1mb3IoY29uc3QgdCBvZiBlKXtjb25zdFtuLGVdPXQ7aWYobyhgXG4ke0pTT04uc3RyaW5naWZ5KG4pfVxuYCksInN0cmluZyI9PXR5cGVvZiBlfHxlIGluc3RhbmNlb2YgVWludDhBcnJheSlvKGUpO2Vsc2V7bGV0IHQ7dHJ5e3Q9SlNPTi5zdHJpbmdpZnkoZSl9Y2F0Y2h7dD1KU09OLnN0cmluZ2lmeShDdChlKSl9byh0KX19cmV0dXJuInN0cmluZyI9PXR5cGVvZiByP3I6ZnVuY3Rpb24odCl7Y29uc3Qgbj10LnJlZHVjZSgodCxuKT0+dCtuLmxlbmd0aCwwKSxlPW5ldyBVaW50OEFycmF5KG4pO2xldCByPTA7Zm9yKGNvbnN0IG4gb2YgdCllLnNldChuLHIpLHIrPW4ubGVuZ3RoO3JldHVybiBlfShyKX1jb25zdCBQdD17c2Vzc2lvbnM6InNlc3Npb24iLGV2ZW50OiJlcnJvciIsY2xpZW50X3JlcG9ydDoiaW50ZXJuYWwiLHVzZXJfcmVwb3J0OiJkZWZhdWx0Iixwcm9maWxlX2NodW5rOiJwcm9maWxlIixyZXBsYXlfZXZlbnQ6InJlcGxheSIscmVwbGF5X3JlY29yZGluZzoicmVwbGF5IixjaGVja19pbjoibW9uaXRvciIscmF3X3NlY3VyaXR5OiJzZWN1cml0eSIsbG9nOiJsb2dfaXRlbSIsdHJhY2VfbWV0cmljOiJtZXRyaWMifTtmdW5jdGlvbiBEdCh0KXtyZXR1cm4gZnVuY3Rpb24odCl7cmV0dXJuIHQgaW4gUHR9KHQpP1B0W3RdOnR9ZnVuY3Rpb24gVXQodCl7aWYoIXQ/LnNkaylyZXR1cm47Y29uc3R7bmFtZTpuLHZlcnNpb246ZX09dC5zZGs7cmV0dXJue25hbWU6bix2ZXJzaW9uOmV9fWZ1bmN0aW9uIEx0KHQsbixlLHIpe2NvbnN0IG89VXQoZSksaT10LnR5cGUmJiJyZXBsYXlfZXZlbnQiIT09dC50eXBlP3QudHlwZToiZXZlbnQiOyFmdW5jdGlvbih0LG4pe2lmKCFuKXJldHVybiB0O2NvbnN0IGU9dC5zZGt8fHt9O3Quc2RrPXsuLi5lLG5hbWU6ZS5uYW1lfHxuLm5hbWUsdmVyc2lvbjplLnZlcnNpb258fG4udmVyc2lvbixpbnRlZ3JhdGlvbnM6Wy4uLnQuc2RrPy5pbnRlZ3JhdGlvbnN8fFtdLC4uLm4uaW50ZWdyYXRpb25zfHxbXV0scGFja2FnZXM6Wy4uLnQuc2RrPy5wYWNrYWdlc3x8W10sLi4ubi5wYWNrYWdlc3x8W11dLHNldHRpbmdzOnQuc2RrPy5zZXR0aW5nc3x8bi5zZXR0aW5ncz97Li4udC5zZGs/LnNldHRpbmdzLC4uLm4uc2V0dGluZ3N9OnZvaWQgMH19KHQsZT8uc2RrKTtjb25zdCBzPWZ1bmN0aW9uKHQsbixlLHIpe2NvbnN0IG89dC5zZGtQcm9jZXNzaW5nTWV0YWRhdGE/LmR5bmFtaWNTYW1wbGluZ0NvbnRleHQ7cmV0dXJue2V2ZW50X2lkOnQuZXZlbnRfaWQsc2VudF9hdDoobmV3IERhdGUpLnRvSVNPU3RyaW5nKCksLi4ubiYme3NkazpufSwuLi4hIWUmJnImJntkc246YnQocil9LC4uLm8mJnt0cmFjZTpvfX19KHQsbyxyLG4pO2RlbGV0ZSB0LnNka1Byb2Nlc3NpbmdNZXRhZGF0YTtyZXR1cm4ga3QocyxbW3t0eXBlOml9LHRdXSl9Y29uc3QgTXQ9Il9fU0VOVFJZX1NVUFBSRVNTX1RSQUNJTkdfXyI7ZnVuY3Rpb24gQnQodCl7Y29uc3Qgbj1mdChsKCkpO3JldHVybiBuLnN1cHByZXNzVHJhY2luZz9uLnN1cHByZXNzVHJhY2luZyh0KTpmdW5jdGlvbiguLi50KXtjb25zdCBuPWZ0KGwoKSk7aWYoMj09PXQubGVuZ3RoKXtjb25zdFtlLHJdPXQ7cmV0dXJuIGU/bi53aXRoU2V0U2NvcGUoZSxyKTpuLndpdGhTY29wZShyKX1yZXR1cm4gbi53aXRoU2NvcGUodFswXSl9KG49PntuLnNldFNES1Byb2Nlc3NpbmdNZXRhZGF0YSh7W010XTohMH0pO2NvbnN0IGU9dCgpO3JldHVybiBuLnNldFNES1Byb2Nlc3NpbmdNZXRhZGF0YSh7W010XTp2b2lkIDB9KSxlfSl9Y2xhc3MgV3R7Y29uc3RydWN0b3IodCl7dGhpcy5XPTAsdGhpcy5GPVtdLHRoaXMuRyh0KX10aGVuKHQsbil7cmV0dXJuIG5ldyBXdCgoZSxyKT0+e3RoaXMuRi5wdXNoKFshMSxuPT57aWYodCl0cnl7ZSh0KG4pKX1jYXRjaCh0KXtyKHQpfWVsc2UgZShuKX0sdD0+e2lmKG4pdHJ5e2Uobih0KSl9Y2F0Y2godCl7cih0KX1lbHNlIHIodCl9XSksdGhpcy5IKCl9KX1jYXRjaCh0KXtyZXR1cm4gdGhpcy50aGVuKHQ9PnQsdCl9ZmluYWxseSh0KXtyZXR1cm4gbmV3IFd0KChuLGUpPT57bGV0IHIsbztyZXR1cm4gdGhpcy50aGVuKG49PntvPSExLHI9bix0JiZ0KCl9LG49PntvPSEwLHI9bix0JiZ0KCl9KS50aGVuKCgpPT57bz9lKHIpOm4ocil9KX0pfUgoKXtpZigwPT09dGhpcy5XKXJldHVybjtjb25zdCB0PXRoaXMuRi5zbGljZSgpO3RoaXMuRj1bXSx0LmZvckVhY2godD0+e3RbMF18fCgxPT09dGhpcy5XJiZ0WzFdKHRoaXMuSiksMj09PXRoaXMuVyYmdFsyXSh0aGlzLkopLHRbMF09ITApfSl9Ryh0KXtjb25zdCBuPSh0LG4pPT57MD09PXRoaXMuVyYmKFQobik/bi50aGVuKGUscik6KHRoaXMuVz10LHRoaXMuSj1uLHRoaXMuSCgpKSl9LGU9dD0+e24oMSx0KX0scj10PT57bigyLHQpfTt0cnl7dChlLHIpfWNhdGNoKHQpe3IodCl9fX1mdW5jdGlvbiB6dCh0LG4pe2NvbnN0e2ZpbmdlcnByaW50OmUsc3BhbjpyLGJyZWFkY3J1bWJzOm8sc2RrUHJvY2Vzc2luZ01ldGFkYXRhOml9PW47IWZ1bmN0aW9uKHQsbil7Y29uc3R7ZXh0cmE6ZSx0YWdzOnIsdXNlcjpvLGNvbnRleHRzOmksbGV2ZWw6cyx0cmFuc2FjdGlvbk5hbWU6Y309bjtPYmplY3Qua2V5cyhlKS5sZW5ndGgmJih0LmV4dHJhPXsuLi5lLC4uLnQuZXh0cmF9KTtPYmplY3Qua2V5cyhyKS5sZW5ndGgmJih0LnRhZ3M9ey4uLnIsLi4udC50YWdzfSk7T2JqZWN0LmtleXMobykubGVuZ3RoJiYodC51c2VyPXsuLi5vLC4uLnQudXNlcn0pO09iamVjdC5rZXlzKGkpLmxlbmd0aCYmKHQuY29udGV4dHM9ey4uLmksLi4udC5jb250ZXh0c30pO3MmJih0LmxldmVsPXMpO2MmJiJ0cmFuc2FjdGlvbiIhPT10LnR5cGUmJih0LnRyYW5zYWN0aW9uPWMpfSh0LG4pLHImJmZ1bmN0aW9uKHQsbil7dC5jb250ZXh0cz17dHJhY2U6X3QobiksLi4udC5jb250ZXh0c30sdC5zZGtQcm9jZXNzaW5nTWV0YWRhdGE9e2R5bmFtaWNTYW1wbGluZ0NvbnRleHQ6anQobiksLi4udC5zZGtQcm9jZXNzaW5nTWV0YWRhdGF9O2NvbnN0IGU9TnQobikscj1FdChlKS5kZXNjcmlwdGlvbjtyJiYhdC50cmFuc2FjdGlvbiYmInRyYW5zYWN0aW9uIj09PXQudHlwZSYmKHQudHJhbnNhY3Rpb249cil9KHQsciksZnVuY3Rpb24odCxuKXt0LmZpbmdlcnByaW50PXQuZmluZ2VycHJpbnQ/QXJyYXkuaXNBcnJheSh0LmZpbmdlcnByaW50KT90LmZpbmdlcnByaW50Olt0LmZpbmdlcnByaW50XTpbXSxuJiYodC5maW5nZXJwcmludD10LmZpbmdlcnByaW50LmNvbmNhdChuKSk7dC5maW5nZXJwcmludC5sZW5ndGh8fGRlbGV0ZSB0LmZpbmdlcnByaW50fSh0LGUpLGZ1bmN0aW9uKHQsbil7Y29uc3QgZT1bLi4udC5icmVhZGNydW1ic3x8W10sLi4ubl07dC5icmVhZGNydW1icz1lLmxlbmd0aD9lOnZvaWQgMH0odCxvKSxmdW5jdGlvbih0LG4pe3Quc2RrUHJvY2Vzc2luZ01ldGFkYXRhPXsuLi50LnNka1Byb2Nlc3NpbmdNZXRhZGF0YSwuLi5ufX0odCxpKX1jb25zdCBGdD1TeW1ib2wuZm9yKCJTZW50cnlCdWZmZXJGdWxsRXJyb3IiKTtmdW5jdGlvbiBHdCh0PTEwMCl7Y29uc3Qgbj1uZXcgU2V0O2Z1bmN0aW9uIGUodCl7bi5kZWxldGUodCl9cmV0dXJue2dldCAkKCl7cmV0dXJuIEFycmF5LmZyb20obil9LGFkZDpmdW5jdGlvbihyKXtpZighKG4uc2l6ZTx0KSlyZXR1cm4gbz1GdCxuZXcgV3QoKHQsbik9PntuKG8pfSk7dmFyIG87Y29uc3QgaT1yKCk7cmV0dXJuIG4uYWRkKGkpLGkudGhlbigoKT0+ZShpKSwoKT0+ZShpKSksaX0sZHJhaW46ZnVuY3Rpb24odCl7aWYoIW4uc2l6ZSlyZXR1cm4gZT0hMCxuZXcgV3QodD0+e3QoZSl9KTt2YXIgZTtjb25zdCByPVByb21pc2UuYWxsU2V0dGxlZChBcnJheS5mcm9tKG4pKS50aGVuKCgpPT4hMCk7aWYoIXQpcmV0dXJuIHI7Y29uc3Qgbz1bcixuZXcgUHJvbWlzZShuPT57cmV0dXJuIm9iamVjdCI9PXR5cGVvZihlPXNldFRpbWVvdXQoKCk9Pm4oITEpLHQpKSYmImZ1bmN0aW9uIj09dHlwZW9mIGUudW5yZWYmJmUudW5yZWYoKSxlO3ZhciBlfSldO3JldHVybiBQcm9taXNlLnJhY2Uobyl9fX1mdW5jdGlvbiBIdCh0LHtzdGF0dXNDb2RlOm4saGVhZGVyczplfSxyPVcoKSl7Y29uc3Qgbz17Li4udH0saT1lPy5bIngtc2VudHJ5LXJhdGUtbGltaXRzIl0scz1lPy5bInJldHJ5LWFmdGVyIl07aWYoaSlmb3IoY29uc3QgdCBvZiBpLnRyaW0oKS5zcGxpdCgiLCIpKXtjb25zdFtuLGUsLCxpXT10LnNwbGl0KCI6Iiw1KSxzPXBhcnNlSW50KG4sMTApLGM9MWUzKihpc05hTihzKT82MDpzKTtpZihlKWZvcihjb25zdCB0IG9mIGUuc3BsaXQoIjsiKSkibWV0cmljX2J1Y2tldCI9PT10JiZpJiYhaS5zcGxpdCgiOyIpLmluY2x1ZGVzKCJjdXN0b20iKXx8KG9bdF09citjKTtlbHNlIG8uYWxsPXIrY31lbHNlIHM/by5hbGw9citmdW5jdGlvbih0LG49VygpKXtjb25zdCBlPXBhcnNlSW50KGAke3R9YCwxMCk7aWYoIWlzTmFOKGUpKXJldHVybiAxZTMqZTtjb25zdCByPURhdGUucGFyc2UoYCR7dH1gKTtyZXR1cm4gaXNOYU4ocik/NmU0OnItbn0ocyxyKTo0Mjk9PT1uJiYoby5hbGw9cis2ZTQpO3JldHVybiBvfWZ1bmN0aW9uIEp0KHQsbixlPUd0KHQuYnVmZmVyU2l6ZXx8NjQpKXtsZXQgcj17fTtyZXR1cm57c2VuZDpmdW5jdGlvbih0KXtjb25zdCBvPVtdO2lmKEl0KHQsKHQsbik9Pntjb25zdCBlPUR0KG4pOyhmdW5jdGlvbih0LG4sZT1XKCkpe3JldHVybiBmdW5jdGlvbih0LG4pe3JldHVybiB0W25dfHx0LmFsbHx8MH0odCxuKT5lfSkocixlKXx8by5wdXNoKHQpfSksMD09PW8ubGVuZ3RoKXJldHVybiBQcm9taXNlLnJlc29sdmUoe30pO2NvbnN0IGk9a3QodFswXSxvKSxzPXQ9PnshZnVuY3Rpb24odCxuKXtyZXR1cm4gSXQodCwodCxlKT0+bi5pbmNsdWRlcyhlKSl9KGksWyJjbGllbnRfcmVwb3J0Il0pP0l0KGksKHQsbik9Pnt9KTpoJiZTLndhcm4oYERyb3BwaW5nIGNsaWVudCByZXBvcnQuIFdpbGwgbm90IHNlbmQgb3V0Y29tZXMgKHJlYXNvbjogJHt0fSkuYCl9O3JldHVybiBlLmFkZCgoKT0+bih7Ym9keTpSdChpKX0pLnRoZW4odD0+NDEzPT09dC5zdGF0dXNDb2RlPyhoJiZTLmVycm9yKCJTZW50cnkgcmVzcG9uZGVkIHdpdGggc3RhdHVzIGNvZGUgNDEzLiBFbnZlbG9wZSB3YXMgZGlzY2FyZGVkIGR1ZSB0byBleGNlZWRpbmcgc2l6ZSBsaW1pdHMuIikscygic2VuZF9lcnJvciIpLHQpOihoJiZ2b2lkIDAhPT10LnN0YXR1c0NvZGUmJih0LnN0YXR1c0NvZGU8MjAwfHx0LnN0YXR1c0NvZGU+PTMwMCkmJlMud2FybihgU2VudHJ5IHJlc3BvbmRlZCB3aXRoIHN0YXR1cyBjb2RlICR7dC5zdGF0dXNDb2RlfSB0byBzZW50IGV2ZW50LmApLHI9SHQocix0KSx0KSx0PT57dGhyb3cgcygibmV0d29ya19lcnJvciIpLGgmJlMuZXJyb3IoIkVuY291bnRlcmVkIGVycm9yIHJ1bm5pbmcgdHJhbnNwb3J0IHJlcXVlc3Q6Iix0KSx0fSkpLnRoZW4odD0+dCx0PT57aWYodD09PUZ0KXJldHVybiBoJiZTLmVycm9yKCJTa2lwcGVkIHNlbmRpbmcgZXZlbnQgYmVjYXVzZSBidWZmZXIgaXMgZnVsbC4iKSxzKCJxdWV1ZV9vdmVyZmxvdyIpLFByb21pc2UucmVzb2x2ZSh7fSk7dGhyb3cgdH0pfSxmbHVzaDp0PT5lLmRyYWluKHQpfX1jb25zdCBZdD0vXihcUys6XFx8XC8/KShbXHNcU10qPykoKD86XC57MSwyfXxbXi9cXF0rP3wpKFwuW14uL1xcXSp8KSkoPzpbL1xcXSopJC87ZnVuY3Rpb24gVnQodCl7Y29uc3Qgbj1mdW5jdGlvbih0KXtjb25zdCBuPXQubGVuZ3RoPjEwMjQ/YDx0cnVuY2F0ZWQ+JHt0LnNsaWNlKC0xMDI0KX1gOnQsZT1ZdC5leGVjKG4pO3JldHVybiBlP2Uuc2xpY2UoMSk6W119KHQpLGU9blswXXx8IiI7bGV0IHI9blsxXTtyZXR1cm4gZXx8cj8ociYmKHI9ci5zbGljZSgwLHIubGVuZ3RoLTEpKSxlK3IpOiIuIn1mdW5jdGlvbiBLdCh0LG49ITEpe3JldHVybiEobnx8dCYmIXQuc3RhcnRzV2l0aCgiLyIpJiYhdC5tYXRjaCgvXltBLVpdOi8pJiYhdC5zdGFydHNXaXRoKCIuIikmJiF0Lm1hdGNoKC9eW2EtekEtWl0oW2EtekEtWjAtOS5cLStdKSo6XC9cLy8pKSYmdm9pZCAwIT09dCYmIXQuaW5jbHVkZXMoIm5vZGVfbW9kdWxlcy8iKX1jb25zdCBadD1TeW1ib2woIkFnZW50QmFzZUludGVybmFsU3RhdGUiKTtjbGFzcyBxdCBleHRlbmRzIGkuQWdlbnR7Y29uc3RydWN0b3IodCl7c3VwZXIodCksdGhpc1tadF09e319aXNTZWN1cmVFbmRwb2ludCh0KXtpZih0KXtpZigiYm9vbGVhbiI9PXR5cGVvZiB0LnNlY3VyZUVuZHBvaW50KXJldHVybiB0LnNlY3VyZUVuZHBvaW50O2lmKCJzdHJpbmciPT10eXBlb2YgdC5wcm90b2NvbClyZXR1cm4iaHR0cHM6Ij09PXQucHJvdG9jb2x9Y29uc3R7c3RhY2s6bn09bmV3IEVycm9yO3JldHVybiJzdHJpbmciPT10eXBlb2YgbiYmbi5zcGxpdCgiXG4iKS5zb21lKHQ9Pi0xIT09dC5pbmRleE9mKCIoaHR0cHMuanM6Iil8fC0xIT09dC5pbmRleE9mKCJub2RlOmh0dHBzOiIpKX1jcmVhdGVTb2NrZXQodCxuLGUpe2NvbnN0IHI9ey4uLm4sc2VjdXJlRW5kcG9pbnQ6dGhpcy5pc1NlY3VyZUVuZHBvaW50KG4pfTtQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT50aGlzLmNvbm5lY3QodCxyKSkudGhlbihvPT57aWYobyBpbnN0YW5jZW9mIGkuQWdlbnQpcmV0dXJuIG8uYWRkUmVxdWVzdCh0LHIpO3RoaXNbWnRdLmN1cnJlbnRTb2NrZXQ9byxzdXBlci5jcmVhdGVTb2NrZXQodCxuLGUpfSxlKX1jcmVhdGVDb25uZWN0aW9uKCl7Y29uc3QgdD10aGlzW1p0XS5jdXJyZW50U29ja2V0O2lmKHRoaXNbWnRdLmN1cnJlbnRTb2NrZXQ9dm9pZCAwLCF0KXRocm93IG5ldyBFcnJvcigiTm8gc29ja2V0IHdhcyByZXR1cm5lZCBpbiB0aGUgYGNvbm5lY3QoKWAgZnVuY3Rpb24iKTtyZXR1cm4gdH1nZXQgZGVmYXVsdFBvcnQoKXtyZXR1cm4gdGhpc1tadF0uZGVmYXVsdFBvcnQ/PygiaHR0cHM6Ij09PXRoaXMucHJvdG9jb2w/NDQzOjgwKX1zZXQgZGVmYXVsdFBvcnQodCl7dGhpc1tadF0mJih0aGlzW1p0XS5kZWZhdWx0UG9ydD10KX1nZXQgcHJvdG9jb2woKXtyZXR1cm4gdGhpc1tadF0ucHJvdG9jb2w/Pyh0aGlzLmlzU2VjdXJlRW5kcG9pbnQoKT8iaHR0cHM6IjoiaHR0cDoiKX1zZXQgcHJvdG9jb2wodCl7dGhpc1tadF0mJih0aGlzW1p0XS5wcm90b2NvbD10KX19ZnVuY3Rpb24gUXQoLi4udCl7Uy5sb2coIltodHRwcy1wcm94eS1hZ2VudDpwYXJzZS1wcm94eS1yZXNwb25zZV0iLC4uLnQpfWZ1bmN0aW9uIFh0KHQpe3JldHVybiBuZXcgUHJvbWlzZSgobixlKT0+e2xldCByPTA7Y29uc3Qgbz1bXTtmdW5jdGlvbiBpKCl7Y29uc3QgYz10LnJlYWQoKTtjP2Z1bmN0aW9uKGMpe28ucHVzaChjKSxyKz1jLmxlbmd0aDtjb25zdCB1PUJ1ZmZlci5jb25jYXQobyxyKSxhPXUuaW5kZXhPZigiXHJcblxyXG4iKTtpZigtMT09PWEpcmV0dXJuIFF0KCJoYXZlIG5vdCByZWNlaXZlZCBlbmQgb2YgSFRUUCBoZWFkZXJzIHlldC4uLiIpLHZvaWQgaSgpO2NvbnN0IGY9dS5zdWJhcnJheSgwLGEpLnRvU3RyaW5nKCJhc2NpaSIpLnNwbGl0KCJcclxuIiksaD1mLnNoaWZ0KCk7aWYoIWgpcmV0dXJuIHQuZGVzdHJveSgpLGUobmV3IEVycm9yKCJObyBoZWFkZXIgcmVjZWl2ZWQgZnJvbSBwcm94eSBDT05ORUNUIHJlc3BvbnNlIikpO2NvbnN0IHA9aC5zcGxpdCgiICIpLGQ9KyhwWzFdfHwwKSxsPXAuc2xpY2UoMikuam9pbigiICIpLG09e307Zm9yKGNvbnN0IG4gb2YgZil7aWYoIW4pY29udGludWU7Y29uc3Qgcj1uLmluZGV4T2YoIjoiKTtpZigtMT09PXIpcmV0dXJuIHQuZGVzdHJveSgpLGUobmV3IEVycm9yKGBJbnZhbGlkIGhlYWRlciBmcm9tIHByb3h5IENPTk5FQ1QgcmVzcG9uc2U6ICIke259ImApKTtjb25zdCBvPW4uc2xpY2UoMCxyKS50b0xvd2VyQ2FzZSgpLGk9bi5zbGljZShyKzEpLnRyaW1TdGFydCgpLHM9bVtvXTsic3RyaW5nIj09dHlwZW9mIHM/bVtvXT1bcyxpXTpBcnJheS5pc0FycmF5KHMpP3MucHVzaChpKTptW29dPWl9UXQoImdvdCBwcm94eSBzZXJ2ZXIgcmVzcG9uc2U6ICVvICVvIixoLG0pLHMoKSxuKHtjb25uZWN0OntzdGF0dXNDb2RlOmQsc3RhdHVzVGV4dDpsLGhlYWRlcnM6bX0sYnVmZmVyZWQ6dX0pfShjKTp0Lm9uY2UoInJlYWRhYmxlIixpKX1mdW5jdGlvbiBzKCl7dC5yZW1vdmVMaXN0ZW5lcigiZW5kIixjKSx0LnJlbW92ZUxpc3RlbmVyKCJlcnJvciIsdSksdC5yZW1vdmVMaXN0ZW5lcigicmVhZGFibGUiLGkpfWZ1bmN0aW9uIGMoKXtzKCksUXQoIm9uZW5kIiksZShuZXcgRXJyb3IoIlByb3h5IGNvbm5lY3Rpb24gZW5kZWQgYmVmb3JlIHJlY2VpdmluZyBDT05ORUNUIHJlc3BvbnNlIikpfWZ1bmN0aW9uIHUodCl7cygpLFF0KCJvbmVycm9yICVvIix0KSxlKHQpfXQub24oImVycm9yIix1KSx0Lm9uKCJlbmQiLGMpLGkoKX0pfWZ1bmN0aW9uIHRuKC4uLnQpe1MubG9nKCJbaHR0cHMtcHJveHktYWdlbnRdIiwuLi50KX1jbGFzcyBubiBleHRlbmRzIHF0e3N0YXRpYyBfX2luaXRTdGF0aWMoKXt0aGlzLnByb3RvY29scz1bImh0dHAiLCJodHRwcyJdfWNvbnN0cnVjdG9yKHQsbil7c3VwZXIobiksdGhpcy5vcHRpb25zPXt9LHRoaXMucHJveHk9InN0cmluZyI9PXR5cGVvZiB0P25ldyBVUkwodCk6dCx0aGlzLnByb3h5SGVhZGVycz1uPy5oZWFkZXJzPz97fSx0bigiQ3JlYXRpbmcgbmV3IEh0dHBzUHJveHlBZ2VudCBpbnN0YW5jZTogJW8iLHRoaXMucHJveHkuaHJlZik7Y29uc3QgZT0odGhpcy5wcm94eS5ob3N0bmFtZXx8dGhpcy5wcm94eS5ob3N0KS5yZXBsYWNlKC9eXFt8XF0kL2csIiIpLHI9dGhpcy5wcm94eS5wb3J0P3BhcnNlSW50KHRoaXMucHJveHkucG9ydCwxMCk6Imh0dHBzOiI9PT10aGlzLnByb3h5LnByb3RvY29sPzQ0Mzo4MDt0aGlzLmNvbm5lY3RPcHRzPXtBTFBOUHJvdG9jb2xzOlsiaHR0cC8xLjEiXSwuLi5uP3JuKG4sImhlYWRlcnMiKTpudWxsLGhvc3Q6ZSxwb3J0OnJ9fWFzeW5jIGNvbm5lY3QodCxuKXtjb25zdHtwcm94eTplfT10aGlzO2lmKCFuLmhvc3QpdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gImhvc3QiIHByb3ZpZGVkJyk7bGV0IHI7aWYoImh0dHBzOiI9PT1lLnByb3RvY29sKXt0bigiQ3JlYXRpbmcgYHRscy5Tb2NrZXRgOiAlbyIsdGhpcy5jb25uZWN0T3B0cyk7Y29uc3QgdD10aGlzLmNvbm5lY3RPcHRzLnNlcnZlcm5hbWV8fHRoaXMuY29ubmVjdE9wdHMuaG9zdDtyPWYuY29ubmVjdCh7Li4udGhpcy5jb25uZWN0T3B0cyxzZXJ2ZXJuYW1lOnQmJmEuaXNJUCh0KT92b2lkIDA6dH0pfWVsc2UgdG4oIkNyZWF0aW5nIGBuZXQuU29ja2V0YDogJW8iLHRoaXMuY29ubmVjdE9wdHMpLHI9YS5jb25uZWN0KHRoaXMuY29ubmVjdE9wdHMpO2NvbnN0IG89ImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMucHJveHlIZWFkZXJzP3RoaXMucHJveHlIZWFkZXJzKCk6ey4uLnRoaXMucHJveHlIZWFkZXJzfSxpPWEuaXNJUHY2KG4uaG9zdCk/YFske24uaG9zdH1dYDpuLmhvc3Q7bGV0IHM9YENPTk5FQ1QgJHtpfToke24ucG9ydH0gSFRUUC8xLjFcclxuYDtpZihlLnVzZXJuYW1lfHxlLnBhc3N3b3JkKXtjb25zdCB0PWAke2RlY29kZVVSSUNvbXBvbmVudChlLnVzZXJuYW1lKX06JHtkZWNvZGVVUklDb21wb25lbnQoZS5wYXNzd29yZCl9YDtvWyJQcm94eS1BdXRob3JpemF0aW9uIl09YEJhc2ljICR7QnVmZmVyLmZyb20odCkudG9TdHJpbmcoImJhc2U2NCIpfWB9by5Ib3N0PWAke2l9OiR7bi5wb3J0fWAsb1siUHJveHktQ29ubmVjdGlvbiJdfHwob1siUHJveHktQ29ubmVjdGlvbiJdPXRoaXMua2VlcEFsaXZlPyJLZWVwLUFsaXZlIjoiY2xvc2UiKTtmb3IoY29uc3QgdCBvZiBPYmplY3Qua2V5cyhvKSlzKz1gJHt0fTogJHtvW3RdfVxyXG5gO2NvbnN0IGM9WHQocik7ci53cml0ZShgJHtzfVxyXG5gKTtjb25zdHtjb25uZWN0OnUsYnVmZmVyZWQ6aH09YXdhaXQgYztpZih0LmVtaXQoInByb3h5Q29ubmVjdCIsdSksdGhpcy5lbWl0KCJwcm94eUNvbm5lY3QiLHUsdCksMjAwPT09dS5zdGF0dXNDb2RlKXtpZih0Lm9uY2UoInNvY2tldCIsZW4pLG4uc2VjdXJlRW5kcG9pbnQpe3RuKCJVcGdyYWRpbmcgc29ja2V0IGNvbm5lY3Rpb24gdG8gVExTIik7Y29uc3QgdD1uLnNlcnZlcm5hbWV8fG4uaG9zdDtyZXR1cm4gZi5jb25uZWN0KHsuLi5ybihuLCJob3N0IiwicGF0aCIsInBvcnQiKSxzb2NrZXQ6cixzZXJ2ZXJuYW1lOmEuaXNJUCh0KT92b2lkIDA6dH0pfXJldHVybiByfXIuZGVzdHJveSgpO2NvbnN0IHA9bmV3IGEuU29ja2V0KHt3cml0YWJsZTohMX0pO3JldHVybiBwLnJlYWRhYmxlPSEwLHQub25jZSgic29ja2V0Iix0PT57dG4oIlJlcGxheWluZyBwcm94eSBidWZmZXIgZm9yIGZhaWxlZCByZXF1ZXN0IiksdC5wdXNoKGgpLHQucHVzaChudWxsKX0pLHB9fWZ1bmN0aW9uIGVuKHQpe3QucmVzdW1lKCl9ZnVuY3Rpb24gcm4odCwuLi5uKXtjb25zdCBlPXt9O2xldCByO2ZvcihyIGluIHQpbi5pbmNsdWRlcyhyKXx8KGVbcl09dFtyXSk7cmV0dXJuIGV9bm4uX19pbml0U3RhdGljKCk7ZnVuY3Rpb24gb24odCl7cmV0dXJuIHQucmVwbGFjZSgvXltBLVpdOi8sIiIpLnJlcGxhY2UoL1xcL2csIi8iKX1jb25zdCBzbj1uO2xldCBjbix1bj0wLGFuPXt9O2Z1bmN0aW9uIGZuKHQpe3NuLmRlYnVnJiZjb25zb2xlLmxvZyhgW0FOUiBXb3JrZXJdICR7dH1gKX12YXIgaG4scG4sZG47Y29uc3QgbG49ZnVuY3Rpb24odCl7bGV0IG47dHJ5e249bmV3IFVSTCh0LnVybCl9Y2F0Y2gobil7cmV0dXJuIGIoKCk9Pntjb25zb2xlLndhcm4oIltAc2VudHJ5L25vZGVdOiBJbnZhbGlkIGRzbiBvciB0dW5uZWwgb3B0aW9uLCB3aWxsIG5vdCBzZW5kIGFueSBldmVudHMuIFRoZSB0dW5uZWwgb3B0aW9uIG11c3QgYmUgYSBmdWxsIFVSTCB3aGVuIHVzZWQuIil9KSxKdCh0LCgpPT5Qcm9taXNlLnJlc29sdmUoe30pKX1jb25zdCBlPSJodHRwczoiPT09bi5wcm90b2NvbCxyPWZ1bmN0aW9uKHQsbil7Y29uc3R7bm9fcHJveHk6ZX09cHJvY2Vzcy5lbnYscj1lPy5zcGxpdCgiLCIpLnNvbWUobj0+dC5ob3N0LmVuZHNXaXRoKG4pfHx0Lmhvc3RuYW1lLmVuZHNXaXRoKG4pKTtyZXR1cm4gcj92b2lkIDA6bn0obix0LnByb3h5fHwoZT9wcm9jZXNzLmVudi5odHRwc19wcm94eTp2b2lkIDApfHxwcm9jZXNzLmVudi5odHRwX3Byb3h5KSxvPWU/czppLGE9dm9pZCAwIT09dC5rZWVwQWxpdmUmJnQua2VlcEFsaXZlLGY9cj9uZXcgbm4ocik6bmV3IG8uQWdlbnQoe2tlZXBBbGl2ZTphLG1heFNvY2tldHM6MzAsdGltZW91dDoyZTN9KSxoPWZ1bmN0aW9uKHQsbixlKXtjb25zdHtob3N0bmFtZTpyLHBhdGhuYW1lOm8scG9ydDppLHByb3RvY29sOnMsc2VhcmNoOmF9PW5ldyBVUkwodC51cmwpO3JldHVybiBmdW5jdGlvbihmKXtyZXR1cm4gbmV3IFByb21pc2UoKGgscCk9PntCdCgoKT0+e2xldCBkPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgYyh7cmVhZCgpe3RoaXMucHVzaCh0KSx0aGlzLnB1c2gobnVsbCl9fSl9KGYuYm9keSk7Y29uc3QgbD17Li4udC5oZWFkZXJzfTtmLmJvZHkubGVuZ3RoPjMyNzY4JiYobFsiY29udGVudC1lbmNvZGluZyJdPSJnemlwIixkPWQucGlwZSh1KCkpKTtjb25zdCBtPXIuc3RhcnRzV2l0aCgiWyIpLGc9bi5yZXF1ZXN0KHttZXRob2Q6IlBPU1QiLGFnZW50OmUsaGVhZGVyczpsLGhvc3RuYW1lOm0/ci5zbGljZSgxLC0xKTpyLHBhdGg6YCR7b30ke2F9YCxwb3J0OmkscHJvdG9jb2w6cyxjYTp0LmNhQ2VydHN9LHQ9Pnt0Lm9uKCJkYXRhIiwoKT0+e30pLHQub24oImVuZCIsKCk9Pnt9KSx0LnNldEVuY29kaW5nKCJ1dGY4Iik7Y29uc3Qgbj10LmhlYWRlcnNbInJldHJ5LWFmdGVyIl0/P251bGwsZT10LmhlYWRlcnNbIngtc2VudHJ5LXJhdGUtbGltaXRzIl0/P251bGw7aCh7c3RhdHVzQ29kZTp0LnN0YXR1c0NvZGUsaGVhZGVyczp7InJldHJ5LWFmdGVyIjpuLCJ4LXNlbnRyeS1yYXRlLWxpbWl0cyI6QXJyYXkuaXNBcnJheShlKT9lWzBdfHxudWxsOmV9fSl9KTtnLm9uKCJlcnJvciIscCksZC5waXBlKGcpfSl9KX19KHQsdC5odHRwTW9kdWxlPz9vLGYpO3JldHVybiBKdCh0LGgpfSh7dXJsOihobj1zbi5kc24scG49c24udHVubmVsLGRuPXNuLnNka01ldGFkYXRhLnNkayxwbnx8YCR7ZnVuY3Rpb24odCl7cmV0dXJuYCR7ZnVuY3Rpb24odCl7Y29uc3Qgbj10LnByb3RvY29sP2Ake3QucHJvdG9jb2x9OmA6IiIsZT10LnBvcnQ/YDoke3QucG9ydH1gOiIiO3JldHVybmAke259Ly8ke3QuaG9zdH0ke2V9JHt0LnBhdGg/YC8ke3QucGF0aH1gOiIifS9hcGkvYH0odCl9JHt0LnByb2plY3RJZH0vZW52ZWxvcGUvYH0oaG4pfT8ke2Z1bmN0aW9uKHQsbil7Y29uc3QgZT17c2VudHJ5X3ZlcnNpb246IjcifTtyZXR1cm4gdC5wdWJsaWNLZXkmJihlLnNlbnRyeV9rZXk9dC5wdWJsaWNLZXkpLG4mJihlLnNlbnRyeV9jbGllbnQ9YCR7bi5uYW1lfS8ke24udmVyc2lvbn1gKSxuZXcgVVJMU2VhcmNoUGFyYW1zKGUpLnRvU3RyaW5nKCl9KGhuLGRuKX1gKX0pO2FzeW5jIGZ1bmN0aW9uIG1uKCl7aWYoY24pe2ZuKCJTZW5kaW5nIGFibm9ybWFsIHNlc3Npb24iKSxWKGNuLHtzdGF0dXM6ImFibm9ybWFsIixhYm5vcm1hbF9tZWNoYW5pc206ImFucl9mb3JlZ3JvdW5kIixyZWxlYXNlOnNuLnJlbGVhc2UsZW52aXJvbm1lbnQ6c24uZW52aXJvbm1lbnR9KTtjb25zdCB0PWZ1bmN0aW9uKHQsbixlLHIpe2NvbnN0IG89VXQoZSk7cmV0dXJuIGt0KHtzZW50X2F0OihuZXcgRGF0ZSkudG9JU09TdHJpbmcoKSwuLi5vJiZ7c2RrOm99LC4uLiEhciYmbiYme2RzbjpidChuKX19LFsiYWdncmVnYXRlcyJpbiB0P1t7dHlwZToic2Vzc2lvbnMifSx0XTpbe3R5cGU6InNlc3Npb24ifSx0LnRvSlNPTigpXV0pfShjbixzbi5kc24sc24uc2RrTWV0YWRhdGEsc24udHVubmVsKTtmbihKU09OLnN0cmluZ2lmeSh0KSksYXdhaXQgbG4uc2VuZCh0KTt0cnl7ZT8ucG9zdE1lc3NhZ2UoInNlc3Npb24tZW5kZWQiKX1jYXRjaHt9fX1mdW5jdGlvbiBnbih0KXtpZighdClyZXR1cm47Y29uc3Qgbj1mdW5jdGlvbih0KXtpZighdC5sZW5ndGgpcmV0dXJuW107Y29uc3Qgbj1BcnJheS5mcm9tKHQpO3JldHVybi9zZW50cnlXcmFwcGVkLy50ZXN0KEUobikuZnVuY3Rpb258fCIiKSYmbi5wb3AoKSxuLnJldmVyc2UoKSwkLnRlc3QoRShuKS5mdW5jdGlvbnx8IiIpJiYobi5wb3AoKSwkLnRlc3QoRShuKS5mdW5jdGlvbnx8IiIpJiZuLnBvcCgpKSxuLnNsaWNlKDAsNTApLm1hcCh0PT4oey4uLnQsZmlsZW5hbWU6dC5maWxlbmFtZXx8RShuKS5maWxlbmFtZSxmdW5jdGlvbjp0LmZ1bmN0aW9ufHwiPyJ9KSl9KHQpO2lmKHNuLmFwcFJvb3RQYXRoKWZvcihjb25zdCB0IG9mIG4pdC5maWxlbmFtZSYmKHQuZmlsZW5hbWU9VHQodC5maWxlbmFtZSxzbi5hcHBSb290UGF0aCkpO3JldHVybiBufWFzeW5jIGZ1bmN0aW9uIHluKHQsbil7aWYodW4+PXNuLm1heEFuckV2ZW50cylyZXR1cm47dW4rPTEsYXdhaXQgbW4oKSxmbigiU2VuZGluZyBldmVudCIpO2NvbnN0IGU9e2V2ZW50X2lkOkYoKSxjb250ZXh0czpzbi5jb250ZXh0cyxyZWxlYXNlOnNuLnJlbGVhc2UsZW52aXJvbm1lbnQ6c24uZW52aXJvbm1lbnQsZGlzdDpzbi5kaXN0LHBsYXRmb3JtOiJub2RlIixsZXZlbDoiZXJyb3IiLGV4Y2VwdGlvbjp7dmFsdWVzOlt7dHlwZToiQXBwbGljYXRpb25Ob3RSZXNwb25kaW5nIix2YWx1ZTpgQXBwbGljYXRpb24gTm90IFJlc3BvbmRpbmcgZm9yIGF0IGxlYXN0ICR7c24uYW5yVGhyZXNob2xkfSBtc2Asc3RhY2t0cmFjZTp7ZnJhbWVzOmduKHQpfSxtZWNoYW5pc206e3R5cGU6IkFOUiJ9fV19LHRhZ3M6c24uc3RhdGljVGFnc307biYmZnVuY3Rpb24odCxuKXtpZih6dCh0LG4pLCF0LmNvbnRleHRzPy50cmFjZSl7Y29uc3R7dHJhY2VJZDplLHBhcmVudFNwYW5JZDpyLHByb3BhZ2F0aW9uU3BhbklkOm99PW4ucHJvcGFnYXRpb25Db250ZXh0O3QuY29udGV4dHM9e3RyYWNlOnt0cmFjZV9pZDplLHNwYW5faWQ6b3x8cSgpLHBhcmVudF9zcGFuX2lkOnJ9LC4uLnQuY29udGV4dHN9fX0oZSxuKSxmdW5jdGlvbih0KXtpZigwPT09T2JqZWN0LmtleXMoYW4pLmxlbmd0aClyZXR1cm47Y29uc3Qgbj1zbi5hcHBSb290UGF0aD97fTphbjtpZihzbi5hcHBSb290UGF0aClmb3IoY29uc3RbdCxlXW9mIE9iamVjdC5lbnRyaWVzKGFuKSluW1R0KHQsc24uYXBwUm9vdFBhdGgpXT1lO2NvbnN0IGU9bmV3IE1hcDtmb3IoY29uc3QgciBvZiB0LmV4Y2VwdGlvbj8udmFsdWVzfHxbXSlmb3IoY29uc3QgdCBvZiByLnN0YWNrdHJhY2U/LmZyYW1lc3x8W10pe2NvbnN0IHI9dC5hYnNfcGF0aHx8dC5maWxlbmFtZTtyJiZuW3JdJiZlLnNldChyLG5bcl0pfWlmKGUuc2l6ZT4wKXtjb25zdCBuPVtdO2Zvcihjb25zdFt0LHJdb2YgZS5lbnRyaWVzKCkpbi5wdXNoKHt0eXBlOiJzb3VyY2VtYXAiLGNvZGVfZmlsZTp0LGRlYnVnX2lkOnJ9KTt0LmRlYnVnX21ldGE9e2ltYWdlczpufX19KGUpO2NvbnN0IHI9THQoZSxzbi5kc24sc24uc2RrTWV0YWRhdGEsc24udHVubmVsKTtmbihKU09OLnN0cmluZ2lmeShyKSksYXdhaXQgbG4uc2VuZChyKSxhd2FpdCBsbi5mbHVzaCgyZTMpLHVuPj1zbi5tYXhBbnJFdmVudHMmJnNldFRpbWVvdXQoKCk9Pntwcm9jZXNzLmV4aXQoMCl9LDVlMyl9bGV0IGJuO2lmKGZuKCJTdGFydGVkIiksc24uY2FwdHVyZVN0YWNrVHJhY2Upe2ZuKCJDb25uZWN0aW5nIHRvIGRlYnVnZ2VyIik7Y29uc3Qgbj1uZXcgdDtuLmNvbm5lY3RUb01haW5UaHJlYWQoKSxmbigiQ29ubmVjdGVkIHRvIGRlYnVnZ2VyIik7Y29uc3QgZT1uZXcgTWFwO24ub24oIkRlYnVnZ2VyLnNjcmlwdFBhcnNlZCIsdD0+e2Uuc2V0KHQucGFyYW1zLnNjcmlwdElkLHQucGFyYW1zLnVybCl9KSxuLm9uKCJEZWJ1Z2dlci5wYXVzZWQiLHQ9PntpZigib3RoZXIiPT09dC5wYXJhbXMucmVhc29uKXRyeXtmbigiRGVidWdnZXIgcGF1c2VkIik7Y29uc3QgaT1bLi4udC5wYXJhbXMuY2FsbEZyYW1lc10scz1zbi5hcHBSb290UGF0aD9mdW5jdGlvbih0PShwcm9jZXNzLmFyZ3ZbMV0/VnQocHJvY2Vzcy5hcmd2WzFdKTpwcm9jZXNzLmN3ZCgpKSxuPSJcXCI9PT1vKXtjb25zdCBlPW4/b24odCk6dDtyZXR1cm4gdD0+e2lmKCF0KXJldHVybjtjb25zdCBvPW4/b24odCk6dDtsZXR7ZGlyOmksYmFzZTpzLGV4dDpjfT1yLnBhcnNlKG8pOyIuanMiIT09YyYmIi5tanMiIT09YyYmIi5janMiIT09Y3x8KHM9cy5zbGljZSgwLC0xKmMubGVuZ3RoKSk7Y29uc3QgdT1kZWNvZGVVUklDb21wb25lbnQocyk7aXx8KGk9Ii4iKTtjb25zdCBhPWkubGFzdEluZGV4T2YoIi9ub2RlX21vZHVsZXMiKTtpZihhPi0xKXJldHVybmAke2kuc2xpY2UoYSsxNCkucmVwbGFjZSgvXC8vZywiLiIpfToke3V9YDtpZihpLnN0YXJ0c1dpdGgoZSkpe2NvbnN0IHQ9aS5zbGljZShlLmxlbmd0aCsxKS5yZXBsYWNlKC9cLy9nLCIuIik7cmV0dXJuIHQ/YCR7dH06JHt1fWA6dX1yZXR1cm4gdX19KHNuLmFwcFJvb3RQYXRoKTooKT0+e30sYz1pLm1hcCh0PT5mdW5jdGlvbih0LG4sZSl7Y29uc3Qgcj1uP24ucmVwbGFjZSgvXmZpbGU6XC9cLy8sIiIpOnZvaWQgMCxvPXQubG9jYXRpb24uY29sdW1uTnVtYmVyP3QubG9jYXRpb24uY29sdW1uTnVtYmVyKzE6dm9pZCAwLGk9dC5sb2NhdGlvbi5saW5lTnVtYmVyP3QubG9jYXRpb24ubGluZU51bWJlcisxOnZvaWQgMDtyZXR1cm57ZmlsZW5hbWU6cixtb2R1bGU6ZShyKSxmdW5jdGlvbjp0LmZ1bmN0aW9uTmFtZXx8Ij8iLGNvbG5vOm8sbGluZW5vOmksaW5fYXBwOnI/S3Qocik6dm9pZCAwfX0odCxlLmdldCh0LmxvY2F0aW9uLnNjcmlwdElkKSxzKSksdT1zZXRUaW1lb3V0KCgpPT57eW4oYykudGhlbihudWxsLCgpPT57Zm4oIlNlbmRpbmcgQU5SIGV2ZW50IGZhaWxlZC4iKX0pfSw1ZTMpO24ucG9zdCgiUnVudGltZS5ldmFsdWF0ZSIse2V4cHJlc3Npb246Imdsb2JhbC5fX1NFTlRSWV9HRVRfU0NPUEVTX18oKTsiLHNpbGVudDohMCxyZXR1cm5CeVZhbHVlOiEwfSwodCxlKT0+e3QmJmZuKGBFcnJvciBleGVjdXRpbmcgc2NyaXB0OiAnJHt0Lm1lc3NhZ2V9J2ApLGNsZWFyVGltZW91dCh1KTtjb25zdCByPWU/LnJlc3VsdD9lLnJlc3VsdC52YWx1ZTp2b2lkIDA7bi5wb3N0KCJEZWJ1Z2dlci5yZXN1bWUiKSxuLnBvc3QoIkRlYnVnZ2VyLmRpc2FibGUiKSx5bihjLHIpLnRoZW4obnVsbCwoKT0+e2ZuKCJTZW5kaW5nIEFOUiBldmVudCBmYWlsZWQuIil9KX0pfWNhdGNoKHQpe3Rocm93IG4ucG9zdCgiRGVidWdnZXIucmVzdW1lIiksbi5wb3N0KCJEZWJ1Z2dlci5kaXNhYmxlIiksdH19KSxibj0oKT0+e3RyeXtuLnBvc3QoIkRlYnVnZ2VyLmVuYWJsZSIsKCk9PntuLnBvc3QoIkRlYnVnZ2VyLnBhdXNlIil9KX1jYXRjaHt9fX1jb25zdHtwb2xsOnZufT1mdW5jdGlvbih0LG4sZSxyKXtjb25zdCBvPXQoKTtsZXQgaT0hMSxzPSEwO3JldHVybiBzZXRJbnRlcnZhbCgoKT0+e2NvbnN0IHQ9by5nZXRUaW1lTXMoKTshMT09PWkmJnQ+bitlJiYoaT0hMCxzJiZyKCkpLHQ8bitlJiYoaT0hMSl9LDIwKSx7cG9sbDooKT0+e28ucmVzZXQoKX0sZW5hYmxlZDp0PT57cz10fX19KGZ1bmN0aW9uKCl7bGV0IHQ9cHJvY2Vzcy5ocnRpbWUoKTtyZXR1cm57Z2V0VGltZU1zOigpPT57Y29uc3RbbixlXT1wcm9jZXNzLmhydGltZSh0KTtyZXR1cm4gTWF0aC5mbG9vcigxZTMqbitlLzFlNil9LHJlc2V0OigpPT57dD1wcm9jZXNzLmhydGltZSgpfX19LHNuLnBvbGxJbnRlcnZhbCxzbi5hbnJUaHJlc2hvbGQsZnVuY3Rpb24oKXtmbigiV2F0Y2hkb2cgdGltZW91dCIpLGJuPyhmbigiUGF1c2luZyBkZWJ1Z2dlciB0byBjYXB0dXJlIHN0YWNrIHRyYWNlIiksYm4oKSk6KGZuKCJDYXB0dXJpbmcgZXZlbnQgd2l0aG91dCBhIHN0YWNrIHRyYWNlIikseW4oKS50aGVuKG51bGwsKCk9PntmbigiU2VuZGluZyBBTlIgZXZlbnQgZmFpbGVkIG9uIHdhdGNoZG9nIHRpbWVvdXQuIil9KSl9KTtlPy5vbigibWVzc2FnZSIsdD0+e3Quc2Vzc2lvbiYmKGNuPVkodC5zZXNzaW9uKSksdC5kZWJ1Z0ltYWdlcyYmKGFuPXQuZGVidWdJbWFnZXMpLHZuKCl9KTs=",IT0=50,TT0=5000,li="Anr",ST0=(Z={})=>{if(b1.major<16||b1.major===16&&b1.minor<17)throw Error("ANR detection requires Node 16.17.0 or later");let J,Q,$=ET0();return $.__SENTRY_GET_SCOPES__=fT0,{name:li,startWorker:()=>{if(J)return;if(Q)J=_T0(Q,Z)},stopWorker:()=>{if(J)J.then((Y)=>{Y(),J=void 0})},async setup(Y){if(Q=Y,Z.captureStackTrace&&await DJ())O.warn("ANR captureStackTrace has been disabled because the debugger was already enabled"),Z.captureStackTrace=!1;setImmediate(()=>this.startWorker())}}},yK;var pi=q(()=>{N();j5();NK();({isPromise:NT0}=RT0);yK=P(ST0)});import{format as hT0}from"util";function i8(Z,...J){let[Q,$,Y,X]=J;if(Array.isArray($)){let W={...Y};W["sentry.message.template"]=Q,$.forEach((z,G)=>{W[`sentry.message.parameter.${G}`]=z});let K=hT0(Q,...$);R9({level:Z,message:K,attributes:W},X?.scope)}else R9({level:Z,message:Q,attributes:$},Y?.scope??X?.scope)}var Yw=q(()=>{N()});var H$={};y1(H$,{warn:()=>gT0,trace:()=>bT0,info:()=>xT0,fmt:()=>FF,fatal:()=>cT0,error:()=>dT0,debug:()=>vT0});function bT0(...Z){i8("trace",...Z)}function vT0(...Z){i8("debug",...Z)}function xT0(...Z){i8("info",...Z)}function gT0(...Z){i8("warn",...Z)}function dT0(...Z){i8("error",...Z)}function cT0(...Z){i8("fatal",...Z)}var ii=q(()=>{Yw();N()});function _K(Z,J){class Q extends Z{constructor($){super($);this._levels=new Set(J?.levels??mT0)}log($,Y){try{if(setImmediate(()=>{this.emit("logged",$)}),!pT0($))return;let X=$[oi],{level:W,message:K,timestamp:z,...G}=$;G[oi]=void 0,G[uT0]=void 0,G[lT0]=void 0;let H=J?.customLevelMap?.[X],B=iT0[X],V=H??B??"info";if(this._levels.has(V))i8(V,K,{...G,"sentry.origin":"auto.log.winston"});else if(!H&&!B)s&&O.log(`Winston log level ${X} is not captured by Sentry. Please add ${X} to the "customLevelMap" option of the Sentry Winston transport.`)}catch{}if(Y)Y()}}return Q}function pT0(Z){return typeof Z==="object"&&Z!=null}var mT0,oi,uT0,lT0,iT0;var ni=q(()=>{N();e6();Yw();mT0=["trace","debug","info","warn","error","fatal"],oi=Symbol.for("level"),uT0=Symbol.for("message"),lT0=Symbol.for("splat");iT0={silly:"trace",debug:"debug",verbose:"debug",http:"debug",info:"info",notice:"info",warn:"warn",warning:"warn",error:"error",emerg:"fatal",alert:"fatal",crit:"fatal"}});import*as ri from"diagnostics_channel";function ai(Z,J,Q){let $=Object.getOwnPropertySymbols(Z),Y=`Symbol(${J})`;for(let X of $)if(X.toString()===Y){let W=Z[X];return typeof W==="string"?W:Q}return Q}function oT0(Z){let{level:J,time:Q,pid:$,hostname:Y,...X}=Z;return X}var Xw,si,nT0,hK;var ti=q(()=>{N();Xw=Symbol("sentry-track-pino-logger");si={error:{levels:[],handled:!0},log:{levels:["trace","debug","info","warn","error","fatal"]}};nT0=P((Z={})=>{let J={autoInstrument:Z.autoInstrument!==!1,error:{...si.error,...Z.error},log:{...si.log,...Z.log}};function Q($){let Y=$[Xw];return Y==="track"||Y!=="ignore"&&J.autoInstrument}return{name:"Pino",setup:($)=>{let Y=!!$.getOptions().enableLogs,X=ri.tracingChannel("pino_asJson");function W(K,z,G){if(!Q(K))return;let H=oT0(G),[B,V,F]=z,U=K?.levels?.labels?.[F]||"info",w=ai(K,"pino.messageKey","msg"),D=V||H?.[w]||"";if(Y&&J.log.levels.includes(U)){let L={...H,"sentry.origin":"auto.log.pino","pino.logger.level":F};R9({level:U,message:D,attributes:L})}if(J.error.levels.includes(U)){let L={level:EZ(U)};c0((C)=>{C.addEventProcessor((T)=>{return T.logger="pino",i6(T,{handled:J.error.handled,type:"auto.log.pino"}),T});let R=B[ai(K,"pino.errorKey","err")];if(R){_(R,L);return}s7(D,L)})}}X.end.subscribe((K)=>{let{instance:z,arguments:G,result:H}=K;W(z,G,JSON.parse(H))})}}}),hK=Object.assign(nT0,{trackLogger(Z){if(Z&&typeof Z==="object"&&"levels"in Z)Z[Xw]="track"},untrackLogger(Z){if(Z&&typeof Z==="object"&&"levels"in Z)Z[Xw]="ignore"}})});function q0(Z,J){Z.setAttribute(f,J)}var ei=q(()=>{N()});function B$(Z){let J=Z.protocol||"",Q=Z.hostname||Z.host||"",$=!Z.port||Z.port===80||Z.port===443||/^(.*):(\d+)$/.test(Q)?"":`:${Z.port}`,Y=Z.path?Z.path:"/";return`${J}//${Q}${$}${Y}`}var Zo=()=>{};function P5(Z){return aT0.reduce((J,[Q,$])=>J.replace(new RegExp(Q,"gi"),$),Z)}var aT0;var bK=q(()=>{aT0=[["january","1"],["february","2"],["march","3"],["april","4"],["may","5"],["june","6"],["july","7"],["august","8"],["september","9"],["october","10"],["november","11"],["december","12"],["jan","1"],["feb","2"],["mar","3"],["apr","4"],["may","5"],["jun","6"],["jul","7"],["aug","8"],["sep","9"],["oct","10"],["nov","11"],["dec","12"],["sunday","0"],["monday","1"],["tuesday","2"],["wednesday","3"],["thursday","4"],["friday","5"],["saturday","6"],["sun","0"],["mon","1"],["tue","2"],["wed","3"],["thu","4"],["fri","5"],["sat","6"]]});function Qo(Z,J){let Q=!1;return new Proxy(Z,{construct($,Y){let[X,W,K,z,G,...H]=Y;if(typeof X!=="string")throw Error(Jo);if(Q)throw Error(`A job named '${J}' has already been scheduled`);Q=!0;let B=P5(X);async function V(F,U){return a6(J,async()=>{try{await W(F,U)}catch(w){throw _(w,{mechanism:{handled:!1,type:"auto.function.cron.instrumentCron"}}),w}},{schedule:{type:"crontab",value:B},timezone:G||void 0})}return new $(X,V,K,z,G,...H)},get($,Y){if(Y==="from")return(X)=>{let{cronTime:W,onTick:K,timeZone:z}=X;if(typeof W!=="string")throw Error(Jo);if(Q)throw Error(`A job named '${J}' has already been scheduled`);Q=!0;let G=P5(W);return X.onTick=async(H,B)=>{return a6(J,async()=>{try{await K(H,B)}catch(V){throw _(V,{mechanism:{handled:!1,type:"auto.function.cron.instrumentCron"}}),V}},{schedule:{type:"crontab",value:G},timezone:z||void 0})},$.from(X)};else return $[Y]}})}var Jo="Automatic instrumentation of CronJob only supports crontab string";var $o=q(()=>{N();bK()});function Yo(Z,J={}){return new Proxy(Z,{get(Q,$){if($==="schedule"&&Q.schedule)return new Proxy(Q.schedule,{apply(Y,X,W){let[K,z,G]=W,H=G?.name,B=G?.timezone;if(!H)throw Error('Missing "name" for scheduled job. A name is required for Sentry check-in monitoring.');let V=async(...F)=>{return a6(H,async()=>{try{return await z(...F)}catch(U){throw _(U,{mechanism:{handled:!1,type:"auto.function.node-cron.instrumentNodeCron"}}),U}},{schedule:{type:"crontab",value:P5(K)},timezone:B,...J})};return Y.apply(X,[K,V,G])}});else return Q[$]}})}var Xo=q(()=>{N();bK()});function Wo(Z){return new Proxy(Z,{get(J,Q){if(Q==="scheduleJob")return new Proxy(J.scheduleJob,{apply($,Y,X){let[W,K,z]=X;if(typeof W!=="string"||typeof K!=="string"||typeof z!=="function")throw Error("Automatic instrumentation of 'node-schedule' requires the first parameter of 'scheduleJob' to be a job name string and the second parameter to be a crontab string");let G=W,H=K;async function B(){return a6(G,async()=>{await z?.()},{schedule:{type:"crontab",value:P5(H)}})}return $.apply(Y,[G,H,B])}});return J[Q]}})}var Ko=q(()=>{N();bK()});var vK;var zo=q(()=>{$o();Xo();Ko();vK={instrumentCron:Qo,instrumentNodeCron:Yo,instrumentNodeSchedule:Wo}});var X0=q(()=>{oU();WK();rU();eU();ip();op();RK();gi();Zw();ui();lq();pi();N();ii();Sq();hq();xq();dq();mq();uq();iq();ni();ti();eq();tq();ei();Zo();rq();zo();j5()});function tT0(Z,J={}){if(typeof Z.spans==="boolean")return Z.spans;if(J.skipOpenTelemetrySetup)return!1;if(!P0(J)&&xK)return!1;return!0}function eT0(Z={}){return{disableOutgoingRequestInstrumentation:xK,ignoreOutgoingRequestHook:(Q)=>{let $=B$(Q);if(!$)return!1;let Y=Z.ignoreOutgoingRequests;if(Y?.($,Q))return!0;return!1},requireParentforOutgoingSpans:!1,requestHook:(Q,$)=>{q0(Q,"auto.http.otel.http");let Y=B$($);if(Y.startsWith("data:")){let X=h4(Y);Q.setAttribute("http.url",X),Q.setAttribute(OZ,X),Q.updateName(`${$.method||"GET"} ${X}`)}Z.instrumentation?.requestHook?.(Q,$)},responseHook:(Q,$)=>{Z.instrumentation?.responseHook?.(Q,$)},applyCustomAttributesOnSpan:(Q,$,Y)=>{Z.instrumentation?.applyCustomAttributesOnSpan?.(Q,$,Y)}}}var Ho,Bo,Ww="Http",Go="@opentelemetry_sentry-patched/instrumentation-http",xK,sT0,rT0,M5;var Kw=q(()=>{N();X0();Ho=A(I(),1),Bo=A(Lh(),1),xK=b1.major===22&&b1.minor>=12||b1.major===23&&b1.minor>=2||b1.major>=24,sT0=y(`${Ww}.sentry`,(Z)=>{return new XJ(Z)}),rT0=y(Ww,(Z)=>{let J=new Bo.HttpInstrumentation({...Z,disableIncomingRequestInstrumentation:!0});try{J._diag=Ho.diag.createComponentLogger({namespace:Go}),J.instrumentationName=Go}catch{}try{let Q={get:()=>!1,set:()=>{}};Object.defineProperty(J,"_httpPatched",Q),Object.defineProperty(J,"_httpsPatched",Q)}catch{}return J});M5=P((Z={})=>{let J=Z.spans??!0,Q=Z.disableIncomingRequestSpans,$={sessions:Z.trackIncomingRequestsAsSessions,sessionFlushingDelayMS:Z.sessionFlushingDelayMS,ignoreRequestBody:Z.ignoreIncomingRequestBody,maxRequestBodySize:Z.maxIncomingRequestBodySize},Y={ignoreIncomingRequests:Z.ignoreIncomingRequests,ignoreStaticAssets:Z.ignoreStaticAssets,ignoreStatusCodes:Z.dropSpansForIncomingRequestStatusCodes,instrumentation:Z.instrumentation,onSpanCreated:Z.incomingRequestSpanHook},X=lZ($),W=pZ(Y),K=J&&!Q;return{name:Ww,setup(z){let G=z.getOptions();if(K&&P0(G))W.setup(z)},setupOnce(){let z=k()?.getOptions()||{},G=tT0(Z,z);X.setupOnce();let H={breadcrumbs:Z.breadcrumbs,propagateTraceInOutgoingRequests:typeof Z.tracePropagation==="boolean"?Z.tracePropagation:xK||!G,createSpansForOutgoingRequests:xK,spans:Z.spans,ignoreOutgoingRequests:Z.ignoreOutgoingRequests,outgoingRequestHook:(B,V)=>{let F=B$(V);if(F.startsWith("data:")){let U=h4(F);B.setAttribute("http.url",U),B.setAttribute(OZ,U),B.updateName(`${V.method||"GET"} ${U}`)}Z.instrumentation?.requestHook?.(B,V)},outgoingResponseHook:Z.instrumentation?.responseHook,outgoingRequestApplyCustomAttributes:Z.instrumentation?.applyCustomAttributesOnSpan};if(sT0(H),G){let B=eT0(Z);rT0(B)}},processEvent(z){return W.processEvent(z)}}})});var Uo=j((Vo)=>{Object.defineProperty(Vo,"__esModule",{value:!0});Vo.PACKAGE_NAME=Vo.PACKAGE_VERSION=void 0;Vo.PACKAGE_VERSION="0.23.0";Vo.PACKAGE_NAME="@opentelemetry/instrumentation-undici"});var Oo=j((jo)=>{Object.defineProperty(jo,"__esModule",{value:!0});jo.UndiciInstrumentation=void 0;var zw=E("diagnostics_channel"),JE0=E("url"),V$=n(),f6=I(),gK=R0(),$1=Y0(),qo=Uo();class wo extends V$.InstrumentationBase{_recordFromReq=new WeakMap;constructor(Z={}){super(qo.PACKAGE_NAME,qo.PACKAGE_VERSION,Z)}init(){return}disable(){super.disable(),this._channelSubs.forEach((Z)=>Z.unsubscribe()),this._channelSubs.length=0}enable(){if(super.enable(),this._channelSubs=this._channelSubs||[],this._channelSubs.length>0)return;this.subscribeToChannel("undici:request:create",this.onRequestCreated.bind(this)),this.subscribeToChannel("undici:client:sendHeaders",this.onRequestHeaders.bind(this)),this.subscribeToChannel("undici:request:headers",this.onResponseHeaders.bind(this)),this.subscribeToChannel("undici:request:trailers",this.onDone.bind(this)),this.subscribeToChannel("undici:request:error",this.onError.bind(this))}_updateMetricInstruments(){this._httpClientDurationHistogram=this.meter.createHistogram($1.METRIC_HTTP_CLIENT_REQUEST_DURATION,{description:"Measures the duration of outbound HTTP requests.",unit:"s",valueType:f6.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}})}subscribeToChannel(Z,J){let[Q,$]=process.version.replace("v","").split(".").map((W)=>Number(W)),Y=Q>18||Q===18&&$>=19,X;if(Y)zw.subscribe?.(Z,J),X=()=>zw.unsubscribe?.(Z,J);else{let W=zw.channel(Z);W.subscribe(J),X=()=>W.unsubscribe(J)}this._channelSubs.push({name:Z,unsubscribe:X})}parseRequestHeaders(Z){let J=new Map;if(Array.isArray(Z.headers))for(let Q=0;Q<Z.headers.length;Q+=2){let $=Z.headers[Q],Y=Z.headers[Q+1];if(typeof $==="string")J.set($.toLowerCase(),Y)}else if(typeof Z.headers==="string"){let Q=Z.headers.split(`\r
|
|
37
|
-
`);for(let $ of Q){if(!$)continue;let Y=$.indexOf(":");if(Y===-1)continue;let X=$.substring(0,Y).toLowerCase(),W=$.substring(Y+1).trim(),K=J.get(X);if(K&&Array.isArray(K))K.push(W);else if(K)J.set(X,[K,W]);else J.set(X,W)}}return J}onRequestCreated({request:Z}){let J=this.getConfig(),Q=J.enabled!==!1;if((0,V$.safeExecuteInTheMiddle)(()=>!Q||Z.method==="CONNECT"||J.ignoreRequestHook?.(Z),(
|
|
38
|
-
`;else if(Array.isArray(Z.headers))Z.headers.push(m,l)}this._recordFromReq.set(Z,{span:L,attributes:z,startTime:Y})}onRequestHeaders({request:Z,socket:J}){let Q=this._recordFromReq.get(Z);if(!Q)return;let $=this.getConfig(),{span:Y}=Q,{remoteAddress:X,remotePort:W}=J,K={[$1.ATTR_NETWORK_PEER_ADDRESS]:X,[$1.ATTR_NETWORK_PEER_PORT]:W};if($.headersToSpanAttributes?.requestHeaders){let z=new Set($.headersToSpanAttributes.requestHeaders.map((H)=>H.toLowerCase())),G=this.parseRequestHeaders(Z);for(let[H,B]of G.entries())if(z.has(H)){let V=Array.isArray(B)?B:[B];K[`http.request.header.${H}`]=V}}Y.setAttributes(K)}onResponseHeaders({request:Z,response:J}){let Q=this._recordFromReq.get(Z);if(!Q)return;let{span:$,attributes:Y}=Q,X={[$1.ATTR_HTTP_RESPONSE_STATUS_CODE]:J.statusCode},W=this.getConfig();if((0,V$.safeExecuteInTheMiddle)(()=>W.responseHook?.($,{request:Z,response:J}),(K)=>K&&this._diag.error("caught responseHook error: ",K),!0),W.headersToSpanAttributes?.responseHeaders){let K=new Set;W.headersToSpanAttributes?.responseHeaders.forEach((z)=>K.add(z.toLowerCase()));for(let z=0;z<J.headers.length;z=z+2){let G=J.headers[z].toString().toLowerCase(),H=J.headers[z+1];if(K.has(G)){let B=`http.response.header.${G}`;if(!Object.hasOwn(X,B))X[B]=[H.toString()];else X[B].push(H.toString())}}}$.setAttributes(X),$.setStatus({code:J.statusCode>=400?f6.SpanStatusCode.ERROR:f6.SpanStatusCode.UNSET}),Q.attributes=Object.assign(Y,X)}onDone({request:Z}){let J=this._recordFromReq.get(Z);if(!J)return;let{span:Q,attributes:$,startTime:Y}=J;Q.end(),this._recordFromReq.delete(Z),this.recordRequestDuration($,Y)}onError({request:Z,error:J}){let Q=this._recordFromReq.get(Z);if(!Q)return;let{span:$,attributes:Y,startTime:X}=Q;$.recordException(J),$.setStatus({code:f6.SpanStatusCode.ERROR,message:J.message}),$.end(),this._recordFromReq.delete(Z),Y[$1.ATTR_ERROR_TYPE]=J.message,this.recordRequestDuration(Y,X)}recordRequestDuration(Z,J){let Q={};[$1.ATTR_HTTP_RESPONSE_STATUS_CODE,$1.ATTR_HTTP_REQUEST_METHOD,$1.ATTR_SERVER_ADDRESS,$1.ATTR_SERVER_PORT,$1.ATTR_URL_SCHEME,$1.ATTR_ERROR_TYPE].forEach((X)=>{if(X in Z)Q[X]=Z[X]});let Y=(0,gK.hrTimeToMilliseconds)((0,gK.hrTimeDuration)(J,(0,gK.hrTime)()))/1000;this._httpClientDurationHistogram.record(Y,Q)}getRequestMethod(Z){let J={CONNECT:!0,OPTIONS:!0,HEAD:!0,GET:!0,POST:!0,PUT:!0,PATCH:!0,DELETE:!0,TRACE:!0,QUERY:!0};if(Z.toUpperCase()in J)return Z.toUpperCase();return"_OTHER"}}jo.UndiciInstrumentation=wo});var Lo=j((Gw)=>{Object.defineProperty(Gw,"__esModule",{value:!0});Gw.UndiciInstrumentation=void 0;var QE0=Oo();Object.defineProperty(Gw,"UndiciInstrumentation",{enumerable:!0,get:function(){return QE0.UndiciInstrumentation}})});function Co(Z,J="/"){let Q=`${Z}`;if(Q.endsWith("/")&&J.startsWith("/"))return`${Q}${J.slice(1)}`;if(!Q.endsWith("/")&&!J.startsWith("/"))return`${Q}/${J}`;return`${Q}${J}`}function KE0(Z,J={}){return typeof Z.spans==="boolean"?Z.spans:!J.skipOpenTelemetrySetup&&P0(J)}function zE0(Z={}){return{requireParentforSpans:!1,ignoreRequestHook:(Q)=>{let $=Co(Q.origin,Q.path),Y=Z.ignoreOutgoingRequests;return!!(Y&&$&&Y($))},startSpanHook:(Q)=>{let $=Co(Q.origin,Q.path);if($.startsWith("data:")){let Y=h4($);return{[f]:"auto.http.otel.node_fetch","http.url":Y,[OZ]:Y,[L6]:`${Q.method||"GET"} ${Y}`}}return{[f]:"auto.http.otel.node_fetch"}},requestHook:Z.requestHook,responseHook:Z.responseHook,headersToSpanAttributes:Z.headersToSpanAttributes}}var Po,Mo="NodeFetch",YE0,XE0,WE0=(Z={})=>{return{name:"NodeFetch",setupOnce(){if(KE0(Z,k()?.getOptions()))YE0(Z);XE0(Z)}}},R5;var Hw=q(()=>{N();X0();Po=A(Lo(),1),YE0=y(Mo,Po.UndiciInstrumentation,(Z)=>{return zE0(Z)}),XE0=y(`${Mo}.sentry`,KJ,(Z)=>{return Z}),R5=P(WE0)});var No=j((Ro)=>{Object.defineProperty(Ro,"__esModule",{value:!0});Ro.PACKAGE_NAME=Ro.PACKAGE_VERSION=void 0;Ro.PACKAGE_VERSION="0.32.0";Ro.PACKAGE_NAME="@opentelemetry/instrumentation-fs"});var To=j((Ao)=>{Object.defineProperty(Ao,"__esModule",{value:!0});Ao.SYNC_FUNCTIONS=Ao.CALLBACK_FUNCTIONS=Ao.PROMISE_FUNCTIONS=void 0;Ao.PROMISE_FUNCTIONS=["access","appendFile","chmod","chown","copyFile","cp","lchown","link","lstat","lutimes","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","rename","rm","rmdir","stat","symlink","truncate","unlink","utimes","writeFile"];Ao.CALLBACK_FUNCTIONS=["access","appendFile","chmod","chown","copyFile","cp","exists","lchown","link","lstat","lutimes","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","realpath.native","rename","rm","rmdir","stat","symlink","truncate","unlink","utimes","writeFile"];Ao.SYNC_FUNCTIONS=["accessSync","appendFileSync","chmodSync","chownSync","copyFileSync","cpSync","existsSync","lchownSync","linkSync","lstatSync","lutimesSync","mkdirSync","mkdtempSync","opendirSync","openSync","readdirSync","readFileSync","readlinkSync","realpathSync","realpathSync.native","renameSync","rmdirSync","rmSync","statSync","symlinkSync","truncateSync","unlinkSync","utimesSync","writeFileSync"]});var So=j((fo)=>{Object.defineProperty(fo,"__esModule",{value:!0});fo.indexFs=fo.splitTwoLevels=void 0;function Eo(Z){let J=Z.split(".");if(J.length>1){if(J.length!==2)throw Error(`Invalid member function name ${Z}`);return J}else return[Z]}fo.splitTwoLevels=Eo;function VE0(Z,J){if(!J)throw Error(JSON.stringify({member:J}));let Q=Eo(J),[$,Y]=Q;if(Y)return{objectToPatch:Z[$],functionNameToPatch:Y};else return{objectToPatch:Z,functionNameToPatch:$}}fo.indexFs=VE0});var xo=j((bo)=>{Object.defineProperty(bo,"__esModule",{value:!0});bo.FsInstrumentation=void 0;var E0=I(),o8=R0(),f9=n(),_o=No(),eZ=To(),UE0=E("util"),dK=So();function cK(Z,J){return Object.assign(Z,J)}class ho extends f9.InstrumentationBase{constructor(Z={}){super(_o.PACKAGE_NAME,_o.PACKAGE_VERSION,Z)}init(){return[new f9.InstrumentationNodeModuleDefinition("fs",["*"],(Z)=>{for(let J of eZ.SYNC_FUNCTIONS){let{objectToPatch:Q,functionNameToPatch:$}=(0,dK.indexFs)(Z,J);if((0,f9.isWrapped)(Q[$]))this._unwrap(Q,$);this._wrap(Q,$,this._patchSyncFunction.bind(this,J))}for(let J of eZ.CALLBACK_FUNCTIONS){let{objectToPatch:Q,functionNameToPatch:$}=(0,dK.indexFs)(Z,J);if((0,f9.isWrapped)(Q[$]))this._unwrap(Q,$);if(J==="exists"){this._wrap(Q,$,this._patchExistsCallbackFunction.bind(this,J));continue}this._wrap(Q,$,this._patchCallbackFunction.bind(this,J))}for(let J of eZ.PROMISE_FUNCTIONS){if((0,f9.isWrapped)(Z.promises[J]))this._unwrap(Z.promises,J);this._wrap(Z.promises,J,this._patchPromiseFunction.bind(this,J))}return Z},(Z)=>{if(Z===void 0)return;for(let J of eZ.SYNC_FUNCTIONS){let{objectToPatch:Q,functionNameToPatch:$}=(0,dK.indexFs)(Z,J);if((0,f9.isWrapped)(Q[$]))this._unwrap(Q,$)}for(let J of eZ.CALLBACK_FUNCTIONS){let{objectToPatch:Q,functionNameToPatch:$}=(0,dK.indexFs)(Z,J);if((0,f9.isWrapped)(Q[$]))this._unwrap(Q,$)}for(let J of eZ.PROMISE_FUNCTIONS)if((0,f9.isWrapped)(Z.promises[J]))this._unwrap(Z.promises,J)}),new f9.InstrumentationNodeModuleDefinition("fs/promises",["*"],(Z)=>{for(let J of eZ.PROMISE_FUNCTIONS){if((0,f9.isWrapped)(Z[J]))this._unwrap(Z,J);this._wrap(Z,J,this._patchPromiseFunction.bind(this,J))}return Z},(Z)=>{if(Z===void 0)return;for(let J of eZ.PROMISE_FUNCTIONS)if((0,f9.isWrapped)(Z[J]))this._unwrap(Z,J)})]}_patchSyncFunction(Z,J){let Q=this;return cK(function(...Y){let X=E0.context.active();if(!Q._shouldTrace(X))return J.apply(this,Y);if(Q._runCreateHook(Z,{args:Y})===!1)return E0.context.with((0,o8.suppressTracing)(X),J,this,...Y);let W=Q.tracer.startSpan(`fs ${Z}`);try{let K=E0.context.with((0,o8.suppressTracing)(E0.trace.setSpan(X,W)),J,this,...Y);return Q._runEndHook(Z,{args:Y,span:W}),K}catch(K){throw W.recordException(K),W.setStatus({message:K.message,code:E0.SpanStatusCode.ERROR}),Q._runEndHook(Z,{args:Y,span:W,error:K}),K}finally{W.end()}},J)}_patchCallbackFunction(Z,J){let Q=this;return cK(function(...Y){let X=E0.context.active();if(!Q._shouldTrace(X))return J.apply(this,Y);if(Q._runCreateHook(Z,{args:Y})===!1)return E0.context.with((0,o8.suppressTracing)(X),J,this,...Y);let W=Y.length-1,K=Y[W];if(typeof K==="function"){let z=Q.tracer.startSpan(`fs ${Z}`);Y[W]=E0.context.bind(X,function(G){if(G)z.recordException(G),z.setStatus({message:G.message,code:E0.SpanStatusCode.ERROR});return Q._runEndHook(Z,{args:Y,span:z,error:G}),z.end(),K.apply(this,arguments)});try{return E0.context.with((0,o8.suppressTracing)(E0.trace.setSpan(X,z)),J,this,...Y)}catch(G){throw z.recordException(G),z.setStatus({message:G.message,code:E0.SpanStatusCode.ERROR}),Q._runEndHook(Z,{args:Y,span:z,error:G}),z.end(),G}}else return J.apply(this,Y)},J)}_patchExistsCallbackFunction(Z,J){let Q=this,Y=cK(function(...W){let K=E0.context.active();if(!Q._shouldTrace(K))return J.apply(this,W);if(Q._runCreateHook(Z,{args:W})===!1)return E0.context.with((0,o8.suppressTracing)(K),J,this,...W);let z=W.length-1,G=W[z];if(typeof G==="function"){let H=Q.tracer.startSpan(`fs ${Z}`);W[z]=E0.context.bind(K,function(){return Q._runEndHook(Z,{args:W,span:H}),H.end(),G.apply(this,arguments)});try{return E0.context.with((0,o8.suppressTracing)(E0.trace.setSpan(K,H)),J,this,...W)}catch(B){throw H.recordException(B),H.setStatus({message:B.message,code:E0.SpanStatusCode.ERROR}),Q._runEndHook(Z,{args:W,span:H,error:B}),H.end(),B}}else return J.apply(this,W)},J),X=function(W){return new Promise((K)=>Y(W,K))};return Object.defineProperty(X,"name",{value:Z}),Object.defineProperty(Y,UE0.promisify.custom,{value:X}),Y}_patchPromiseFunction(Z,J){let Q=this;return cK(async function(...Y){let X=E0.context.active();if(!Q._shouldTrace(X))return J.apply(this,Y);if(Q._runCreateHook(Z,{args:Y})===!1)return E0.context.with((0,o8.suppressTracing)(X),J,this,...Y);let W=Q.tracer.startSpan(`fs ${Z}`);try{let K=await E0.context.with((0,o8.suppressTracing)(E0.trace.setSpan(X,W)),J,this,...Y);return Q._runEndHook(Z,{args:Y,span:W}),K}catch(K){throw W.recordException(K),W.setStatus({message:K.message,code:E0.SpanStatusCode.ERROR}),Q._runEndHook(Z,{args:Y,span:W,error:K}),K}finally{W.end()}},J)}_runCreateHook(...Z){let{createHook:J}=this.getConfig();if(typeof J==="function")try{return J(...Z)}catch(Q){this._diag.error("caught createHook error",Q)}return!0}_runEndHook(...Z){let{endHook:J}=this.getConfig();if(typeof J==="function")try{J(...Z)}catch(Q){this._diag.error("caught endHook error",Q)}}_shouldTrace(Z){if((0,o8.isTracingSuppressed)(Z))return!1;let{requireParentSpan:J}=this.getConfig();if(J){if(E0.trace.getSpan(Z)==null)return!1}return!0}}bo.FsInstrumentation=ho});var go=j((Bw)=>{Object.defineProperty(Bw,"__esModule",{value:!0});Bw.FsInstrumentation=void 0;var qE0=xo();Object.defineProperty(Bw,"FsInstrumentation",{enumerable:!0,get:function(){return qE0.FsInstrumentation}})});var mo,co="FileSystem",Vw,jE0,DE0,OE0,LE0,CE0,PE0;var uo=q(()=>{N();X0();mo=A(go(),1),Vw=P((Z={})=>{return{name:co,setupOnce(){y(co,()=>new mo.FsInstrumentation({requireParentSpan:!0,endHook(J,{args:Q,span:$,error:Y}){if($.updateName(`fs.${J}`),$.setAttributes({[g]:"file",[f]:"auto.file.fs"}),Z.recordErrorMessagesAsSpanAttributes){if(typeof Q[0]==="string"&&PE0.includes(J))$.setAttribute("path_argument",Q[0]);else if(typeof Q[0]==="string"&&typeof Q[1]==="string"&&CE0.includes(J))$.setAttribute("target_argument",Q[0]),$.setAttribute("path_argument",Q[1]);else if(typeof Q[0]==="string"&&LE0.includes(J))$.setAttribute("prefix_argument",Q[0]);else if(typeof Q[0]==="string"&&typeof Q[1]==="string"&&OE0.includes(J))$.setAttribute("existing_path_argument",Q[0]),$.setAttribute("new_path_argument",Q[1]);else if(typeof Q[0]==="string"&&typeof Q[1]==="string"&&DE0.includes(J))$.setAttribute("src_argument",Q[0]),$.setAttribute("dest_argument",Q[1]);else if(typeof Q[0]==="string"&&typeof Q[1]==="string"&&jE0.includes(J))$.setAttribute("old_path_argument",Q[0]),$.setAttribute("new_path_argument",Q[1])}if(Y&&Z.recordErrorMessagesAsSpanAttributes)$.setAttribute("fs_error",Y.message)}}))()}}}),jE0=["rename","renameSync"],DE0=["copyFile","cp","copyFileSync","cpSync"],OE0=["link","linkSync"],LE0=["mkdtemp","mkdtempSync"],CE0=["symlink","symlinkSync"],PE0=["access","appendFile","chmod","chown","exists","mkdir","lchown","lstat","lutimes","open","opendir","readdir","readFile","readlink","realpath","realpath.native","rm","rmdir","stat","truncate","unlink","utimes","writeFile","accessSync","appendFileSync","chmodSync","chownSync","existsSync","lchownSync","lstatSync","lutimesSync","opendirSync","mkdirSync","openSync","readdirSync","readFileSync","readlinkSync","realpathSync","realpathSync.native","rmdirSync","rmSync","statSync","truncateSync","unlinkSync","utimesSync","writeFileSync"]});var mK=j((lo)=>{Object.defineProperty(lo,"__esModule",{value:!0});lo.ExpressLayerType=void 0;var ME0;(function(Z){Z.ROUTER="router",Z.MIDDLEWARE="middleware",Z.REQUEST_HANDLER="request_handler"})(ME0=lo.ExpressLayerType||(lo.ExpressLayerType={}))});var uK=j((po)=>{Object.defineProperty(po,"__esModule",{value:!0});po.AttributeNames=void 0;var RE0;(function(Z){Z.EXPRESS_TYPE="express.type",Z.EXPRESS_NAME="express.name"})(RE0=po.AttributeNames||(po.AttributeNames={}))});var qw=j((io)=>{Object.defineProperty(io,"__esModule",{value:!0});io._LAYERS_STORE_PROPERTY=io.kLayerPatched=void 0;io.kLayerPatched=Symbol("express-layer-patched");io._LAYERS_STORE_PROPERTY="__ot_middlewares"});var to=j((so)=>{Object.defineProperty(so,"__esModule",{value:!0});so.getActualMatchedRoute=so.getConstructedRoute=so.getLayerPath=so.asErrorAndMessage=so.isLayerIgnored=so.getLayerMetadata=so.getRouterPath=so.storeLayerPath=void 0;var ww=mK(),NJ=uK(),k5=qw(),NE0=(Z,J)=>{if(Array.isArray(Z[k5._LAYERS_STORE_PROPERTY])===!1)Object.defineProperty(Z,k5._LAYERS_STORE_PROPERTY,{enumerable:!1,value:[]});if(J===void 0)return{isLayerPathStored:!1};return Z[k5._LAYERS_STORE_PROPERTY].push(J),{isLayerPathStored:!0}};so.storeLayerPath=NE0;var AE0=(Z,J)=>{let Q=J.handle?.stack?.[0];if(Q?.route?.path)return`${Z}${Q.route.path}`;if(Q?.handle?.stack)return so.getRouterPath(Z,Q);return Z};so.getRouterPath=AE0;var IE0=(Z,J,Q)=>{if(J.name==="router"){let $=so.getRouterPath("",J),Y=$?$:Q||Z||"/";return{attributes:{[NJ.AttributeNames.EXPRESS_NAME]:Y,[NJ.AttributeNames.EXPRESS_TYPE]:ww.ExpressLayerType.ROUTER},name:`router - ${Y}`}}else if(J.name==="bound dispatch"||J.name==="handle")return{attributes:{[NJ.AttributeNames.EXPRESS_NAME]:(Z||Q)??"request handler",[NJ.AttributeNames.EXPRESS_TYPE]:ww.ExpressLayerType.REQUEST_HANDLER},name:`request handler${J.path?` - ${Z||Q}`:""}`};else return{attributes:{[NJ.AttributeNames.EXPRESS_NAME]:J.name,[NJ.AttributeNames.EXPRESS_TYPE]:ww.ExpressLayerType.MIDDLEWARE},name:`middleware - ${J.name}`}};so.getLayerMetadata=IE0;var TE0=(Z,J)=>{if(typeof J==="string")return J===Z;else if(J instanceof RegExp)return J.test(Z);else if(typeof J==="function")return J(Z);else throw TypeError("Pattern is in unsupported datatype")},EE0=(Z,J,Q)=>{if(Array.isArray(Q?.ignoreLayersType)&&Q?.ignoreLayersType?.includes(J))return!0;if(Array.isArray(Q?.ignoreLayers)===!1)return!1;try{for(let $ of Q.ignoreLayers)if(TE0(Z,$))return!0}catch($){}return!1};so.isLayerIgnored=EE0;var fE0=(Z)=>Z instanceof Error?[Z,Z.message]:[String(Z),String(Z)];so.asErrorAndMessage=fE0;var yE0=(Z)=>{let J=Z[0];if(Array.isArray(J))return J.map((Q)=>no(Q)||"").join(",");return no(J)};so.getLayerPath=yE0;var no=(Z)=>{if(typeof Z==="string")return Z;if(Z instanceof RegExp||typeof Z==="number")return Z.toString();return};function ao(Z){let Q=(Array.isArray(Z[k5._LAYERS_STORE_PROPERTY])?Z[k5._LAYERS_STORE_PROPERTY]:[]).filter(($)=>$!=="/"&&$!=="/*");if(Q.length===1&&Q[0]==="*")return"*";return Q.join("").replace(/\/{2,}/g,"/")}so.getConstructedRoute=ao;function SE0(Z){let J=Array.isArray(Z[k5._LAYERS_STORE_PROPERTY])?Z[k5._LAYERS_STORE_PROPERTY]:[];if(J.length===0)return;if(J.every((X)=>X==="/"))return Z.originalUrl==="/"?"/":void 0;let Q=ao(Z);if(Q==="*")return Q;if(Q.includes("/")&&(Q.includes(",")||Q.includes("\\")||Q.includes("*")||Q.includes("[")))return Q;let $=Q.startsWith("/")?Q:`/${Q}`;return $.length>0&&(Z.originalUrl===$||Z.originalUrl.startsWith($)||_E0($))?$:void 0}so.getActualMatchedRoute=SE0;function _E0(Z){return Z.includes(":")||Z.includes("*")}});var Jn=j((eo)=>{Object.defineProperty(eo,"__esModule",{value:!0});eo.PACKAGE_NAME=eo.PACKAGE_VERSION=void 0;eo.PACKAGE_VERSION="0.61.0";eo.PACKAGE_NAME="@opentelemetry/instrumentation-express"});var Gn=j((Kn)=>{Object.defineProperty(Kn,"__esModule",{value:!0});Kn.ExpressInstrumentation=void 0;var Qn=R0(),y9=I(),$n=mK(),Yn=uK(),J8=to(),Xn=Jn(),AJ=n(),mE0=Y0(),lK=qw();class Wn extends AJ.InstrumentationBase{constructor(Z={}){super(Xn.PACKAGE_NAME,Xn.PACKAGE_VERSION,Z)}init(){return[new AJ.InstrumentationNodeModuleDefinition("express",[">=4.0.0 <6"],(Z)=>{let J=typeof Z?.Router?.prototype?.route==="function",Q=J?Z.Router.prototype:Z.Router;if((0,AJ.isWrapped)(Q.route))this._unwrap(Q,"route");if(this._wrap(Q,"route",this._getRoutePatch()),(0,AJ.isWrapped)(Q.use))this._unwrap(Q,"use");if(this._wrap(Q,"use",this._getRouterUsePatch()),(0,AJ.isWrapped)(Z.application.use))this._unwrap(Z.application,"use");return this._wrap(Z.application,"use",this._getAppUsePatch(J)),Z},(Z)=>{if(Z===void 0)return;let Q=typeof Z?.Router?.prototype?.route==="function"?Z.Router.prototype:Z.Router;this._unwrap(Q,"route"),this._unwrap(Q,"use"),this._unwrap(Z.application,"use")})]}_getRoutePatch(){let Z=this;return function(J){return function(...$){let Y=J.apply(this,$),X=this.stack[this.stack.length-1];return Z._applyPatch(X,(0,J8.getLayerPath)($)),Y}}}_getRouterUsePatch(){let Z=this;return function(J){return function(...$){let Y=J.apply(this,$),X=this.stack[this.stack.length-1];return Z._applyPatch(X,(0,J8.getLayerPath)($)),Y}}}_getAppUsePatch(Z){let J=this;return function(Q){return function(...Y){let X=Z?this.router:this._router,W=Q.apply(this,Y);if(X){let K=X.stack[X.stack.length-1];J._applyPatch(K,(0,J8.getLayerPath)(Y))}return W}}}_applyPatch(Z,J){let Q=this;if(Z[lK.kLayerPatched]===!0)return;Z[lK.kLayerPatched]=!0,this._wrap(Z,"handle",($)=>{if($.length===4)return $;let Y=function(X,W){let{isLayerPathStored:K}=(0,J8.storeLayerPath)(X,J),z=(0,J8.getConstructedRoute)(X),G=(0,J8.getActualMatchedRoute)(X),H={[mE0.ATTR_HTTP_ROUTE]:G},B=(0,J8.getLayerMetadata)(z,Z,J),V=B.attributes[Yn.AttributeNames.EXPRESS_TYPE],F=(0,Qn.getRPCMetadata)(y9.context.active());if(F?.type===Qn.RPCType.HTTP)F.route=G;if((0,J8.isLayerIgnored)(B.name,V,Q.getConfig())){if(V===$n.ExpressLayerType.MIDDLEWARE)X[lK._LAYERS_STORE_PROPERTY].pop();return $.apply(this,arguments)}if(y9.trace.getSpan(y9.context.active())===void 0)return $.apply(this,arguments);let U=Q._getSpanName({request:X,layerType:V,route:z},B.name),w=Q.tracer.startSpan(U,{attributes:Object.assign(H,B.attributes)}),D=y9.context.active(),L=y9.trace.setSpan(D,w),{requestHook:C}=Q.getConfig();if(C)(0,AJ.safeExecuteInTheMiddle)(()=>C(w,{request:X,layerType:V,route:z}),(l)=>{if(l)y9.diag.error("express instrumentation: request hook failed",l)},!0);let R=!1;if(B.attributes[Yn.AttributeNames.EXPRESS_TYPE]===$n.ExpressLayerType.ROUTER)w.end(),R=!0,L=D;let T=()=>{if(R===!1)R=!0,w.end()},S=Array.from(arguments),m=S.findIndex((l)=>typeof l==="function");if(m>=0)arguments[m]=function(){let l=arguments[0],y0=![void 0,null,"route","router"].includes(l);if(!R&&y0){let[c9,m9]=(0,J8.asErrorAndMessage)(l);w.recordException(c9),w.setStatus({code:y9.SpanStatusCode.ERROR,message:m9})}if(R===!1)R=!0,X.res?.removeListener("finish",T),w.end();if(!(X.route&&y0)&&K)X[lK._LAYERS_STORE_PROPERTY].pop();let $6=S[m];return y9.context.bind(D,$6).apply(this,arguments)};try{return y9.context.bind(L,$).apply(this,arguments)}catch(l){let[y0,$6]=(0,J8.asErrorAndMessage)(l);throw w.recordException(y0),w.setStatus({code:y9.SpanStatusCode.ERROR,message:$6}),l}finally{if(!R)W.once("finish",T)}};for(let X in $)Object.defineProperty(Y,X,{get(){return $[X]},set(W){$[X]=W}});return Y})}_getSpanName(Z,J){let{spanNameHook:Q}=this.getConfig();if(!(Q instanceof Function))return J;try{return Q(Z,J)??J}catch($){return y9.diag.error("express instrumentation: error calling span name rewrite hook",$),J}}}Kn.ExpressInstrumentation=Wn});var Hn=j((F$)=>{Object.defineProperty(F$,"__esModule",{value:!0});F$.AttributeNames=F$.ExpressLayerType=F$.ExpressInstrumentation=void 0;var uE0=Gn();Object.defineProperty(F$,"ExpressInstrumentation",{enumerable:!0,get:function(){return uE0.ExpressInstrumentation}});var lE0=mK();Object.defineProperty(F$,"ExpressLayerType",{enumerable:!0,get:function(){return lE0.ExpressLayerType}});var pE0=uK();Object.defineProperty(F$,"AttributeNames",{enumerable:!0,get:function(){return pE0.AttributeNames}})});var e0;var Z7=q(()=>{e0=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__});function oE0(Z){q0(Z,"auto.http.otel.express");let J=v(Z).data,Q=J["express.type"];if(Q)Z.setAttribute(g,`${Q}.express`);let $=J["express.name"];if(typeof $==="string")Z.updateName($)}function nE0(Z,J){if(x()===X6())return e0&&O.warn("Isolation scope is still default isolation scope - skipping setting transactionName"),J;if(Z.layerType==="request_handler"){let Q=Z.request,$=Q.method?Q.method.toUpperCase():"GET";x().setTransactionName(`${$} ${Z.route}`)}return J}function pK(Z){return function(Q,$,Y,X){let W=TZ($);if(x().setSDKProcessingMetadata({normalizedRequest:W}),(Z?.shouldHandleError||tE0)(Q)){let z=_(Q,{mechanism:{type:"auto.middleware.express",handled:!1}});Y.sentry=z}X(Q)}}function sE0(){return function(J,Q,$){let Y=TZ(J);x().setSDKProcessingMetadata({normalizedRequest:Y}),$()}}function Dw(Z,J){Z.use(sE0()),Z.use(pK(J)),E9(Z.use,"express")}function rE0(Z){let J=Z.status||Z.statusCode||Z.status_code||Z.output?.statusCode;return J?parseInt(J,10):500}function tE0(Z){return rE0(Z)>=500}var Bn,Vn="Express",Fn,aE0=()=>{return{name:Vn,setupOnce(){Fn()}}},U$;var Ow=q(()=>{N();X0();Z7();Bn=A(Hn(),1);Fn=y(Vn,()=>new Bn.ExpressInstrumentation({requestHook:(Z)=>oE0(Z),spanNameHook:(Z,J)=>nE0(Z,J)})),U$=P(aE0)});var qn=j((Un)=>{Object.defineProperty(Un,"__esModule",{value:!0});Un.SeverityNumber=void 0;var eE0;(function(Z){Z[Z.UNSPECIFIED=0]="UNSPECIFIED",Z[Z.TRACE=1]="TRACE",Z[Z.TRACE2=2]="TRACE2",Z[Z.TRACE3=3]="TRACE3",Z[Z.TRACE4=4]="TRACE4",Z[Z.DEBUG=5]="DEBUG",Z[Z.DEBUG2=6]="DEBUG2",Z[Z.DEBUG3=7]="DEBUG3",Z[Z.DEBUG4=8]="DEBUG4",Z[Z.INFO=9]="INFO",Z[Z.INFO2=10]="INFO2",Z[Z.INFO3=11]="INFO3",Z[Z.INFO4=12]="INFO4",Z[Z.WARN=13]="WARN",Z[Z.WARN2=14]="WARN2",Z[Z.WARN3=15]="WARN3",Z[Z.WARN4=16]="WARN4",Z[Z.ERROR=17]="ERROR",Z[Z.ERROR2=18]="ERROR2",Z[Z.ERROR3=19]="ERROR3",Z[Z.ERROR4=20]="ERROR4",Z[Z.FATAL=21]="FATAL",Z[Z.FATAL2=22]="FATAL2",Z[Z.FATAL3=23]="FATAL3",Z[Z.FATAL4=24]="FATAL4"})(eE0=Un.SeverityNumber||(Un.SeverityNumber={}))});var iK=j((wn)=>{Object.defineProperty(wn,"__esModule",{value:!0});wn.NOOP_LOGGER=wn.NoopLogger=void 0;class Cw{emit(Z){}}wn.NoopLogger=Cw;wn.NOOP_LOGGER=new Cw});var Ln=j((Dn)=>{Object.defineProperty(Dn,"__esModule",{value:!0});Dn.API_BACKWARDS_COMPATIBILITY_VERSION=Dn.makeGetter=Dn._global=Dn.GLOBAL_LOGS_API_KEY=void 0;Dn.GLOBAL_LOGS_API_KEY=Symbol.for("io.opentelemetry.js.api.logs");Dn._global=globalThis;function Jf0(Z,J,Q){return($)=>$===Z?J:Q}Dn.makeGetter=Jf0;Dn.API_BACKWARDS_COMPATIBILITY_VERSION=1});var Mw=j((Cn)=>{Object.defineProperty(Cn,"__esModule",{value:!0});Cn.NOOP_LOGGER_PROVIDER=Cn.NoopLoggerProvider=void 0;var Xf0=iK();class Pw{getLogger(Z,J,Q){return new Xf0.NoopLogger}}Cn.NoopLoggerProvider=Pw;Cn.NOOP_LOGGER_PROVIDER=new Pw});var Nn=j((Rn)=>{Object.defineProperty(Rn,"__esModule",{value:!0});Rn.ProxyLogger=void 0;var Kf0=iK();class Mn{constructor(Z,J,Q,$){this._provider=Z,this.name=J,this.version=Q,this.options=$}emit(Z){this._getLogger().emit(Z)}_getLogger(){if(this._delegate)return this._delegate;let Z=this._provider._getDelegateLogger(this.name,this.version,this.options);if(!Z)return Kf0.NOOP_LOGGER;return this._delegate=Z,this._delegate}}Rn.ProxyLogger=Mn});var En=j((In)=>{Object.defineProperty(In,"__esModule",{value:!0});In.ProxyLoggerProvider=void 0;var zf0=Mw(),Gf0=Nn();class An{getLogger(Z,J,Q){var $;return($=this._getDelegateLogger(Z,J,Q))!==null&&$!==void 0?$:new Gf0.ProxyLogger(this,Z,J,Q)}_getDelegate(){var Z;return(Z=this._delegate)!==null&&Z!==void 0?Z:zf0.NOOP_LOGGER_PROVIDER}_setDelegate(Z){this._delegate=Z}_getDelegateLogger(Z,J,Q){var $;return($=this._delegate)===null||$===void 0?void 0:$.getLogger(Z,J,Q)}}In.ProxyLoggerProvider=An});var _n=j((yn)=>{Object.defineProperty(yn,"__esModule",{value:!0});yn.LogsAPI=void 0;var J9=Ln(),Hf0=Mw(),fn=En();class Rw{constructor(){this._proxyLoggerProvider=new fn.ProxyLoggerProvider}static getInstance(){if(!this._instance)this._instance=new Rw;return this._instance}setGlobalLoggerProvider(Z){if(J9._global[J9.GLOBAL_LOGS_API_KEY])return this.getLoggerProvider();return J9._global[J9.GLOBAL_LOGS_API_KEY]=(0,J9.makeGetter)(J9.API_BACKWARDS_COMPATIBILITY_VERSION,Z,Hf0.NOOP_LOGGER_PROVIDER),this._proxyLoggerProvider._setDelegate(Z),Z}getLoggerProvider(){var Z,J;return(J=(Z=J9._global[J9.GLOBAL_LOGS_API_KEY])===null||Z===void 0?void 0:Z.call(J9._global,J9.API_BACKWARDS_COMPATIBILITY_VERSION))!==null&&J!==void 0?J:this._proxyLoggerProvider}getLogger(Z,J,Q){return this.getLoggerProvider().getLogger(Z,J,Q)}disable(){delete J9._global[J9.GLOBAL_LOGS_API_KEY],this._proxyLoggerProvider=new fn.ProxyLoggerProvider}}yn.LogsAPI=Rw});var kw=j((q$)=>{Object.defineProperty(q$,"__esModule",{value:!0});q$.logs=q$.NoopLogger=q$.NOOP_LOGGER=q$.SeverityNumber=void 0;var Bf0=qn();Object.defineProperty(q$,"SeverityNumber",{enumerable:!0,get:function(){return Bf0.SeverityNumber}});var hn=iK();Object.defineProperty(q$,"NOOP_LOGGER",{enumerable:!0,get:function(){return hn.NOOP_LOGGER}});Object.defineProperty(q$,"NoopLogger",{enumerable:!0,get:function(){return hn.NoopLogger}});var Vf0=_n();q$.logs=Vf0.LogsAPI.getInstance()});var gn=j((vn)=>{Object.defineProperty(vn,"__esModule",{value:!0});vn.disableInstrumentations=vn.enableInstrumentations=void 0;function Ff0(Z,J,Q,$){for(let Y=0,X=Z.length;Y<X;Y++){let W=Z[Y];if(J)W.setTracerProvider(J);if(Q)W.setMeterProvider(Q);if($&&W.setLoggerProvider)W.setLoggerProvider($);if(!W.getConfig().enabled)W.enable()}}vn.enableInstrumentations=Ff0;function Uf0(Z){Z.forEach((J)=>J.disable())}vn.disableInstrumentations=Uf0});var ln=j((mn)=>{Object.defineProperty(mn,"__esModule",{value:!0});mn.registerInstrumentations=void 0;var dn=I(),wf0=kw(),cn=gn();function jf0(Z){let J=Z.tracerProvider||dn.trace.getTracerProvider(),Q=Z.meterProvider||dn.metrics.getMeterProvider(),$=Z.loggerProvider||wf0.logs.getLoggerProvider(),Y=Z.instrumentations?.flat()??[];return(0,cn.enableInstrumentations)(Y,J,Q,$),()=>{(0,cn.disableInstrumentations)(Y)}}mn.registerInstrumentations=jf0});var Qa=j((Za)=>{Object.defineProperty(Za,"__esModule",{value:!0});Za.satisfies=void 0;var Tw=I(),sn=/^(?:v)?(?<version>(?<major>0|[1-9]\d*)\.(?<minor>0|[1-9]\d*)\.(?<patch>0|[1-9]\d*))(?:-(?<prerelease>(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+(?<build>[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/,Df0=/^(?<op><|>|=|==|<=|>=|~|\^|~>)?\s*(?:v)?(?<version>(?<major>x|X|\*|0|[1-9]\d*)(?:\.(?<minor>x|X|\*|0|[1-9]\d*))?(?:\.(?<patch>x|X|\*|0|[1-9]\d*))?)(?:-(?<prerelease>(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+(?<build>[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/,Of0={">":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1],"!=":[-1,1]};function Lf0(Z,J,Q){if(!Cf0(Z))return Tw.diag.error(`Invalid version: ${Z}`),!1;if(!J)return!0;J=J.replace(/([<>=~^]+)\s+/g,"$1");let $=kf0(Z);if(!$)return!1;let Y=[],X=rn($,J,Y,Q);if(X&&!Q?.includePrerelease)return Mf0($,Y);return X}Za.satisfies=Lf0;function Cf0(Z){return typeof Z==="string"&&sn.test(Z)}function rn(Z,J,Q,$){if(J.includes("||")){let Y=J.trim().split("||");for(let X of Y)if(Nw(Z,X,Q,$))return!0;return!1}else if(J.includes(" - "))J=if0(J,$);else if(J.includes(" ")){let Y=J.trim().replace(/\s{2,}/g," ").split(" ");for(let X of Y)if(!Nw(Z,X,Q,$))return!1;return!0}return Nw(Z,J,Q,$)}function Nw(Z,J,Q,$){if(J=Rf0(J,$),J.includes(" "))return rn(Z,J,Q,$);else{let Y=Nf0(J);return Q.push(Y),Pf0(Z,Y)}}function Pf0(Z,J){if(J.invalid)return!1;if(!J.version||Iw(J.version))return!0;let Q=on(Z.versionSegments||[],J.versionSegments||[]);if(Q===0){let $=Z.prereleaseSegments||[],Y=J.prereleaseSegments||[];if(!$.length&&!Y.length)Q=0;else if(!$.length&&Y.length)Q=1;else if($.length&&!Y.length)Q=-1;else Q=on($,Y)}return Of0[J.op]?.includes(Q)}function Mf0(Z,J){if(Z.prerelease)return J.some((Q)=>Q.prerelease&&Q.version===Z.version);return!0}function Rf0(Z,J){return Z=Z.trim(),Z=lf0(Z,J),Z=uf0(Z),Z=pf0(Z,J),Z=Z.trim(),Z}function s1(Z){return!Z||Z.toLowerCase()==="x"||Z==="*"}function kf0(Z){let J=Z.match(sn);if(!J){Tw.diag.error(`Invalid version: ${Z}`);return}let Q=J.groups.version,$=J.groups.prerelease,Y=J.groups.build,X=Q.split("."),W=$?.split(".");return{op:void 0,version:Q,versionSegments:X,versionSegmentCount:X.length,prerelease:$,prereleaseSegments:W,prereleaseSegmentCount:W?W.length:0,build:Y}}function Nf0(Z){if(!Z)return{};let J=Z.match(Df0);if(!J)return Tw.diag.error(`Invalid range: ${Z}`),{invalid:!0};let Q=J.groups.op,$=J.groups.version,Y=J.groups.prerelease,X=J.groups.build,W=$.split("."),K=Y?.split(".");if(Q==="==")Q="=";return{op:Q||"=",version:$,versionSegments:W,versionSegmentCount:W.length,prerelease:Y,prereleaseSegments:K,prereleaseSegmentCount:K?K.length:0,build:X}}function Iw(Z){return Z==="*"||Z==="x"||Z==="X"}function pn(Z){let J=parseInt(Z,10);return isNaN(J)?Z:J}function Af0(Z,J){if(typeof Z===typeof J)if(typeof Z==="number")return[Z,J];else if(typeof Z==="string")return[Z,J];else throw Error("Version segments can only be strings or numbers");else return[String(Z),String(J)]}function If0(Z,J){if(Iw(Z)||Iw(J))return 0;let[Q,$]=Af0(pn(Z),pn(J));if(Q>$)return 1;else if(Q<$)return-1;return 0}function on(Z,J){for(let Q=0;Q<Math.max(Z.length,J.length);Q++){let $=If0(Z[Q]||"0",J[Q]||"0");if($!==0)return $}return 0}var tn="[a-zA-Z0-9-]",en="0|[1-9]\\d*",Tf0=`\\d*[a-zA-Z-]${tn}*`,Ef0="((?:<|>)?=?)",nn=`(?:${en}|${Tf0})`,ff0=`(?:-(${nn}(?:\\.${nn})*))`,an=`${tn}+`,yf0=`(?:\\+(${an}(?:\\.${an})*))`,Aw=`${en}|x|X|\\*`,w$=`[v=\\s]*(${Aw})(?:\\.(${Aw})(?:\\.(${Aw})(?:${ff0})?${yf0}?)?)?`,Sf0=`^${Ef0}\\s*${w$}$`,_f0=new RegExp(Sf0),hf0=`^\\s*(${w$})\\s+-\\s+(${w$})\\s*$`,bf0=new RegExp(hf0),vf0="(?:~>?)",xf0=`^${vf0}${w$}$`,gf0=new RegExp(xf0),df0="(?:\\^)",cf0=`^${df0}${w$}$`,mf0=new RegExp(cf0);function uf0(Z){let J=gf0;return Z.replace(J,(Q,$,Y,X,W)=>{let K;if(s1($))K="";else if(s1(Y))K=`>=${$}.0.0 <${+$+1}.0.0-0`;else if(s1(X))K=`>=${$}.${Y}.0 <${$}.${+Y+1}.0-0`;else if(W)K=`>=${$}.${Y}.${X}-${W} <${$}.${+Y+1}.0-0`;else K=`>=${$}.${Y}.${X} <${$}.${+Y+1}.0-0`;return K})}function lf0(Z,J){let Q=mf0,$=J?.includePrerelease?"-0":"";return Z.replace(Q,(Y,X,W,K,z)=>{let G;if(s1(X))G="";else if(s1(W))G=`>=${X}.0.0${$} <${+X+1}.0.0-0`;else if(s1(K))if(X==="0")G=`>=${X}.${W}.0${$} <${X}.${+W+1}.0-0`;else G=`>=${X}.${W}.0${$} <${+X+1}.0.0-0`;else if(z)if(X==="0")if(W==="0")G=`>=${X}.${W}.${K}-${z} <${X}.${W}.${+K+1}-0`;else G=`>=${X}.${W}.${K}-${z} <${X}.${+W+1}.0-0`;else G=`>=${X}.${W}.${K}-${z} <${+X+1}.0.0-0`;else if(X==="0")if(W==="0")G=`>=${X}.${W}.${K}${$} <${X}.${W}.${+K+1}-0`;else G=`>=${X}.${W}.${K}${$} <${X}.${+W+1}.0-0`;else G=`>=${X}.${W}.${K} <${+X+1}.0.0-0`;return G})}function pf0(Z,J){let Q=_f0;return Z.replace(Q,($,Y,X,W,K,z)=>{let G=s1(X),H=G||s1(W),B=H||s1(K),V=B;if(Y==="="&&V)Y="";if(z=J?.includePrerelease?"-0":"",G)if(Y===">"||Y==="<")$="<0.0.0-0";else $="*";else if(Y&&V){if(H)W=0;if(K=0,Y===">")if(Y=">=",H)X=+X+1,W=0,K=0;else W=+W+1,K=0;else if(Y==="<=")if(Y="<",H)X=+X+1;else W=+W+1;if(Y==="<")z="-0";$=`${Y+X}.${W}.${K}${z}`}else if(H)$=`>=${X}.0.0${z} <${+X+1}.0.0-0`;else if(B)$=`>=${X}.${W}.0${z} <${X}.${+W+1}.0-0`;return $})}function if0(Z,J){let Q=bf0;return Z.replace(Q,($,Y,X,W,K,z,G,H,B,V,F,U)=>{if(s1(X))Y="";else if(s1(W))Y=`>=${X}.0.0${J?.includePrerelease?"-0":""}`;else if(s1(K))Y=`>=${X}.${W}.0${J?.includePrerelease?"-0":""}`;else if(z)Y=`>=${Y}`;else Y=`>=${Y}${J?.includePrerelease?"-0":""}`;if(s1(B))H="";else if(s1(V))H=`<${+B+1}.0.0-0`;else if(s1(F))H=`<${B}.${+V+1}.0-0`;else if(U)H=`<=${B}.${V}.${F}-${U}`;else if(J?.includePrerelease)H=`<${B}.${V}.${+F+1}-0`;else H=`<=${H}`;return`${Y} ${H}`.trim()})}});var Sw=j(($a)=>{Object.defineProperty($a,"__esModule",{value:!0});$a.massUnwrap=$a.unwrap=$a.massWrap=$a.wrap=void 0;var r1=console.error.bind(console);function j$(Z,J,Q){let $=!!Z[J]&&Object.prototype.propertyIsEnumerable.call(Z,J);Object.defineProperty(Z,J,{configurable:!0,enumerable:$,writable:!0,value:Q})}var of0=(Z,J,Q)=>{if(!Z||!Z[J]){r1("no original function "+String(J)+" to wrap");return}if(!Q){r1("no wrapper function"),r1(Error().stack);return}let $=Z[J];if(typeof $!=="function"||typeof Q!=="function"){r1("original object and wrapper must be functions");return}let Y=Q($,J);return j$(Y,"__original",$),j$(Y,"__unwrap",()=>{if(Z[J]===Y)j$(Z,J,$)}),j$(Y,"__wrapped",!0),j$(Z,J,Y),Y};$a.wrap=of0;var nf0=(Z,J,Q)=>{if(!Z){r1("must provide one or more modules to patch"),r1(Error().stack);return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){r1("must provide one or more functions to wrap on modules");return}Z.forEach(($)=>{J.forEach((Y)=>{$a.wrap($,Y,Q)})})};$a.massWrap=nf0;var af0=(Z,J)=>{if(!Z||!Z[J]){r1("no function to unwrap."),r1(Error().stack);return}let Q=Z[J];if(!Q.__unwrap)r1("no original to unwrap to -- has "+String(J)+" already been unwrapped?");else{Q.__unwrap();return}};$a.unwrap=af0;var sf0=(Z,J)=>{if(!Z){r1("must provide one or more modules to patch"),r1(Error().stack);return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){r1("must provide one or more functions to unwrap on modules");return}Z.forEach((Q)=>{J.forEach(($)=>{$a.unwrap(Q,$)})})};$a.massUnwrap=sf0;function D$(Z){if(Z&&Z.logger)if(typeof Z.logger!=="function")r1("new logger isn't a function, not replacing");else r1=Z.logger}$a.default=D$;D$.wrap=$a.wrap;D$.massWrap=$a.massWrap;D$.unwrap=$a.unwrap;D$.massUnwrap=$a.massUnwrap});var za=j((Wa)=>{Object.defineProperty(Wa,"__esModule",{value:!0});Wa.InstrumentationAbstract=void 0;var _w=I(),tf0=kw(),oK=Sw();class Xa{_config={};_tracer;_meter;_logger;_diag;instrumentationName;instrumentationVersion;constructor(Z,J,Q){this.instrumentationName=Z,this.instrumentationVersion=J,this.setConfig(Q),this._diag=_w.diag.createComponentLogger({namespace:Z}),this._tracer=_w.trace.getTracer(Z,J),this._meter=_w.metrics.getMeter(Z,J),this._logger=tf0.logs.getLogger(Z,J),this._updateMetricInstruments()}_wrap=oK.wrap;_unwrap=oK.unwrap;_massWrap=oK.massWrap;_massUnwrap=oK.massUnwrap;get meter(){return this._meter}setMeterProvider(Z){this._meter=Z.getMeter(this.instrumentationName,this.instrumentationVersion),this._updateMetricInstruments()}get logger(){return this._logger}setLoggerProvider(Z){this._logger=Z.getLogger(this.instrumentationName,this.instrumentationVersion)}getModuleDefinitions(){let Z=this.init()??[];if(!Array.isArray(Z))return[Z];return Z}_updateMetricInstruments(){return}getConfig(){return this._config}setConfig(Z){this._config={enabled:!0,...Z}}setTracerProvider(Z){this._tracer=Z.getTracer(this.instrumentationName,this.instrumentationVersion)}get tracer(){return this._tracer}_runSpanCustomizationHook(Z,J,Q,$){if(!Z)return;try{Z(Q,$)}catch(Y){this._diag.error("Error running span customization hook due to exception in handler",{triggerName:J},Y)}}}Wa.InstrumentationAbstract=Xa});var Va=j((Ha)=>{Object.defineProperty(Ha,"__esModule",{value:!0});Ha.ModuleNameTrie=Ha.ModuleNameSeparator=void 0;Ha.ModuleNameSeparator="/";class hw{hooks=[];children=new Map}class Ga{_trie=new hw;_counter=0;insert(Z){let J=this._trie;for(let Q of Z.moduleName.split(Ha.ModuleNameSeparator)){let $=J.children.get(Q);if(!$)$=new hw,J.children.set(Q,$);J=$}J.hooks.push({hook:Z,insertedId:this._counter++})}search(Z,{maintainInsertionOrder:J,fullOnly:Q}={}){let $=this._trie,Y=[],X=!0;for(let W of Z.split(Ha.ModuleNameSeparator)){let K=$.children.get(W);if(!K){X=!1;break}if(!Q)Y.push(...K.hooks);$=K}if(Q&&X)Y.push(...$.hooks);if(Y.length===0)return[];if(Y.length===1)return[Y[0].hook];if(J)Y.sort((W,K)=>W.insertedId-K.insertedId);return Y.map(({hook:W})=>W)}}Ha.ModuleNameTrie=Ga});var wa=j((Ua)=>{Object.defineProperty(Ua,"__esModule",{value:!0});Ua.RequireInTheMiddleSingleton=void 0;var ef0=_7(),Fa=E("path"),vw=Va(),Zy0=["afterEach","after","beforeEach","before","describe","it"].every((Z)=>{return typeof global[Z]==="function"});class nK{_moduleNameTrie=new vw.ModuleNameTrie;static _instance;constructor(){this._initialize()}_initialize(){new ef0.Hook(null,{internals:!0},(Z,J,Q)=>{let $=Jy0(J),Y=this._moduleNameTrie.search($,{maintainInsertionOrder:!0,fullOnly:Q===void 0});for(let{onRequire:X}of Y)Z=X(Z,J,Q);return Z})}register(Z,J){let Q={moduleName:Z,onRequire:J};return this._moduleNameTrie.insert(Q),Q}static getInstance(){if(Zy0)return new nK;return this._instance=this._instance??new nK}}Ua.RequireInTheMiddleSingleton=nK;function Jy0(Z){return Fa.sep!==vw.ModuleNameSeparator?Z.split(Fa.sep).join(vw.ModuleNameSeparator):Z}});var Ca=j((Yy0)=>{var ja=[],xw=new WeakMap,Da=new WeakMap,Oa=new Map,La=[],Qy0={set(Z,J,Q){let $=xw.get(Z),Y=$&&$[J];if(typeof Y==="function")return Y(Q);return!0},get(Z,J){if(J===Symbol.toStringTag)return"Module";let Q=Da.get(Z)[J];if(typeof Q==="function")return Q()},defineProperty(Z,J,Q){if(!("value"in Q))throw Error("Getters/setters are not supported for exports property descriptors.");let $=xw.get(Z),Y=$&&$[J];if(typeof Y==="function")return Y(Q.value);return!0}};function $y0(Z,J,Q,$,Y){Oa.set(Z,Y),xw.set(J,Q),Da.set(J,$);let X=new Proxy(J,Qy0);ja.forEach((W)=>W(Z,X,Y)),La.push([Z,X,Y])}Yy0.register=$y0;Yy0.importHooks=ja;Yy0.specifiers=Oa;Yy0.toHook=La});var ka=j((nF1,TJ)=>{var Pa=E("path"),Gy0=AQ(),{fileURLToPath:Hy0}=E("url"),{MessageChannel:By0}=E("worker_threads"),{isBuiltin:gw}=E("module");if(!gw)gw=()=>!0;var{importHooks:dw,specifiers:Vy0,toHook:Fy0}=Ca();function Ma(Z){dw.push(Z),Fy0.forEach(([J,Q,$])=>Z(J,Q,$))}function Ra(Z){let J=dw.indexOf(Z);if(J>-1)dw.splice(J,1)}function IJ(Z,J,Q,$){let Y=Z(J,Q,$);if(Y&&Y!==J){if("default"in J)J.default=Y}}var cw;function Uy0(){let{port1:Z,port2:J}=new By0,Q=0,$;cw=(K)=>{Q++,Z.postMessage(K)},Z.on("message",()=>{if(Q--,$&&Q<=0)$()}).unref();function Y(){let K=setInterval(()=>{},1000),z=new Promise((G)=>{$=G}).then(()=>{clearInterval(K)});if(Q===0)$();return z}let X=J;return{registerOptions:{data:{addHookMessagePort:X,include:[]},transferList:[X]},addHookMessagePort:X,waitForAllMessagesAcknowledged:Y}}function O$(Z,J,Q){if(this instanceof O$===!1)return new O$(Z,J,Q);if(typeof Z==="function")Q=Z,Z=null,J=null;else if(typeof J==="function")Q=J,J=null;let $=J?J.internals===!0:!1;if(cw&&Array.isArray(Z))cw(Z);this._iitmHook=(Y,X,W)=>{let K=Y,z=K.startsWith("node:"),G,H;if(z){let B=Y.slice(5);if(gw(B))Y=B}else if(K.startsWith("file://")){let B=Error.stackTraceLimit;Error.stackTraceLimit=0;try{G=Hy0(Y),Y=G}catch(V){}if(Error.stackTraceLimit=B,G){let V=Gy0(G);if(V)Y=V.name,H=V.basedir}}if(Z){for(let B of Z)if(G&&B===G)IJ(Q,X,G,void 0);else if(B===Y){if(!H)IJ(Q,X,Y,H);else if(H.endsWith(Vy0.get(K)))IJ(Q,X,Y,H);else if($){let V=Y+Pa.sep+Pa.relative(H,G);IJ(Q,X,V,H)}}else if(B===W)IJ(Q,X,W,H)}else IJ(Q,X,Y,H)},Ma(this._iitmHook)}O$.prototype.unhook=function(){Ra(this._iitmHook)};TJ.exports=O$;TJ.exports.Hook=O$;TJ.exports.addHook=Ma;TJ.exports.removeHook=Ra;TJ.exports.createAddHookMessageChannel=Uy0});var mw=j((Na)=>{Object.defineProperty(Na,"__esModule",{value:!0});Na.isWrapped=Na.safeExecuteInTheMiddleAsync=Na.safeExecuteInTheMiddle=void 0;function qy0(Z,J,Q){let $,Y;try{Y=Z()}catch(X){$=X}finally{if(J($,Y),$&&!Q)throw $;return Y}}Na.safeExecuteInTheMiddle=qy0;async function wy0(Z,J,Q){let $,Y;try{Y=await Z()}catch(X){$=X}finally{if(await J($,Y),$&&!Q)throw $;return Y}}Na.safeExecuteInTheMiddleAsync=wy0;function jy0(Z){return typeof Z==="function"&&typeof Z.__original==="function"&&typeof Z.__unwrap==="function"&&Z.__wrapped===!0}Na.isWrapped=jy0});var Sa=j((fa)=>{Object.defineProperty(fa,"__esModule",{value:!0});fa.InstrumentationBase=void 0;var L$=E("path"),Ia=E("util"),Ly0=Qa(),uw=Sw(),Cy0=za(),Py0=wa(),My0=ka(),C$=I(),Ry0=_7(),ky0=E("fs"),Ny0=mw();class Ea extends Cy0.InstrumentationAbstract{_modules;_hooks=[];_requireInTheMiddleSingleton=Py0.RequireInTheMiddleSingleton.getInstance();_enabled=!1;constructor(Z,J,Q){super(Z,J,Q);let $=this.init();if($&&!Array.isArray($))$=[$];if(this._modules=$||[],this._config.enabled)this.enable()}_wrap=(Z,J,Q)=>{if((0,Ny0.isWrapped)(Z[J]))this._unwrap(Z,J);if(!Ia.types.isProxy(Z))return(0,uw.wrap)(Z,J,Q);else{let $=(0,uw.wrap)(Object.assign({},Z),J,Q);return Object.defineProperty(Z,J,{value:$}),$}};_unwrap=(Z,J)=>{if(!Ia.types.isProxy(Z))return(0,uw.unwrap)(Z,J);else return Object.defineProperty(Z,J,{value:Z[J]})};_massWrap=(Z,J,Q)=>{if(!Z){C$.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){C$.diag.error("must provide one or more functions to wrap on modules");return}Z.forEach(($)=>{J.forEach((Y)=>{this._wrap($,Y,Q)})})};_massUnwrap=(Z,J)=>{if(!Z){C$.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){C$.diag.error("must provide one or more functions to wrap on modules");return}Z.forEach((Q)=>{J.forEach(($)=>{this._unwrap(Q,$)})})};_warnOnPreloadedModules(){this._modules.forEach((Z)=>{let{name:J}=Z;try{let Q=E.resolve(J);if(E.cache[Q])this._diag.warn(`Module ${J} has been loaded before ${this.instrumentationName} so it might not work, please initialize it before requiring ${J}`)}catch{}})}_extractPackageVersion(Z){try{let J=(0,ky0.readFileSync)(L$.join(Z,"package.json"),{encoding:"utf8"}),Q=JSON.parse(J).version;return typeof Q==="string"?Q:void 0}catch{C$.diag.warn("Failed extracting version",Z)}return}_onRequire(Z,J,Q,$){if(!$){if(typeof Z.patch==="function"){if(Z.moduleExports=J,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs core module on require hook",{module:Z.name}),Z.patch(J)}return J}let Y=this._extractPackageVersion($);if(Z.moduleVersion=Y,Z.name===Q){if(Ta(Z.supportedVersions,Y,Z.includePrerelease)){if(typeof Z.patch==="function"){if(Z.moduleExports=J,this._enabled)return this._diag.debug("Applying instrumentation patch for module on require hook",{module:Z.name,version:Z.moduleVersion,baseDir:$}),Z.patch(J,Z.moduleVersion)}}return J}let X=Z.files??[],W=L$.normalize(Q);return X.filter((z)=>z.name===W&&Ta(z.supportedVersions,Y,Z.includePrerelease)).reduce((z,G)=>{if(G.moduleExports=z,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs module file on require hook",{module:Z.name,version:Z.moduleVersion,fileName:G.name,baseDir:$}),G.patch(z,Z.moduleVersion);return z},J)}enable(){if(this._enabled)return;if(this._enabled=!0,this._hooks.length>0){for(let Z of this._modules){if(typeof Z.patch==="function"&&Z.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module on instrumentation enabled",{module:Z.name,version:Z.moduleVersion}),Z.patch(Z.moduleExports,Z.moduleVersion);for(let J of Z.files)if(J.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module file on instrumentation enabled",{module:Z.name,version:Z.moduleVersion,fileName:J.name}),J.patch(J.moduleExports,Z.moduleVersion)}return}this._warnOnPreloadedModules();for(let Z of this._modules){let J=(X,W,K)=>{if(!K&&L$.isAbsolute(W)){let z=L$.parse(W);W=z.name,K=z.dir}return this._onRequire(Z,X,W,K)},Q=(X,W,K)=>{return this._onRequire(Z,X,W,K)},$=L$.isAbsolute(Z.name)?new Ry0.Hook([Z.name],{internals:!0},Q):this._requireInTheMiddleSingleton.register(Z.name,Q);this._hooks.push($);let Y=new My0.Hook([Z.name],{internals:!0},J);this._hooks.push(Y)}}disable(){if(!this._enabled)return;this._enabled=!1;for(let Z of this._modules){if(typeof Z.unpatch==="function"&&Z.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module on instrumentation disabled",{module:Z.name,version:Z.moduleVersion}),Z.unpatch(Z.moduleExports,Z.moduleVersion);for(let J of Z.files)if(J.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module file on instrumentation disabled",{module:Z.name,version:Z.moduleVersion,fileName:J.name}),J.unpatch(J.moduleExports,Z.moduleVersion)}}isEnabled(){return this._enabled}}fa.InstrumentationBase=Ea;function Ta(Z,J,Q){if(typeof J>"u")return Z.includes("*");return Z.some(($)=>{return(0,Ly0.satisfies)(J,$,{includePrerelease:Q})})}});var _a=j((lw)=>{Object.defineProperty(lw,"__esModule",{value:!0});lw.normalize=void 0;var Ay0=E("path");Object.defineProperty(lw,"normalize",{enumerable:!0,get:function(){return Ay0.normalize}})});var ha=j((aK)=>{Object.defineProperty(aK,"__esModule",{value:!0});aK.normalize=aK.InstrumentationBase=void 0;var Ty0=Sa();Object.defineProperty(aK,"InstrumentationBase",{enumerable:!0,get:function(){return Ty0.InstrumentationBase}});var Ey0=_a();Object.defineProperty(aK,"normalize",{enumerable:!0,get:function(){return Ey0.normalize}})});var pw=j((sK)=>{Object.defineProperty(sK,"__esModule",{value:!0});sK.normalize=sK.InstrumentationBase=void 0;var ba=ha();Object.defineProperty(sK,"InstrumentationBase",{enumerable:!0,get:function(){return ba.InstrumentationBase}});Object.defineProperty(sK,"normalize",{enumerable:!0,get:function(){return ba.normalize}})});var da=j((xa)=>{Object.defineProperty(xa,"__esModule",{value:!0});xa.InstrumentationNodeModuleDefinition=void 0;class va{files;name;supportedVersions;patch;unpatch;constructor(Z,J,Q,$,Y){this.files=Y||[],this.name=Z,this.supportedVersions=J,this.patch=Q,this.unpatch=$}}xa.InstrumentationNodeModuleDefinition=va});var la=j((ma)=>{Object.defineProperty(ma,"__esModule",{value:!0});ma.InstrumentationNodeModuleFile=void 0;var Sy0=pw();class ca{name;supportedVersions;patch;unpatch;constructor(Z,J,Q,$){this.name=(0,Sy0.normalize)(Z),this.supportedVersions=J,this.patch=Q,this.unpatch=$}}ma.InstrumentationNodeModuleFile=ca});var na=j((ia)=>{Object.defineProperty(ia,"__esModule",{value:!0});ia.semconvStabilityFromStr=ia.SemconvStability=void 0;var rK;(function(Z){Z[Z.STABLE=1]="STABLE",Z[Z.OLD=2]="OLD",Z[Z.DUPLICATE=3]="DUPLICATE"})(rK=ia.SemconvStability||(ia.SemconvStability={}));function _y0(Z,J){let Q=rK.OLD,$=J?.split(",").map((Y)=>Y.trim()).filter((Y)=>Y!=="");for(let Y of $??[])if(Y.toLowerCase()===Z+"/dup"){Q=rK.DUPLICATE;break}else if(Y.toLowerCase()===Z)Q=rK.STABLE;return Q}ia.semconvStabilityFromStr=_y0});var sa=j((S9)=>{Object.defineProperty(S9,"__esModule",{value:!0});S9.semconvStabilityFromStr=S9.SemconvStability=S9.safeExecuteInTheMiddleAsync=S9.safeExecuteInTheMiddle=S9.isWrapped=S9.InstrumentationNodeModuleFile=S9.InstrumentationNodeModuleDefinition=S9.InstrumentationBase=S9.registerInstrumentations=void 0;var hy0=ln();Object.defineProperty(S9,"registerInstrumentations",{enumerable:!0,get:function(){return hy0.registerInstrumentations}});var by0=pw();Object.defineProperty(S9,"InstrumentationBase",{enumerable:!0,get:function(){return by0.InstrumentationBase}});var vy0=da();Object.defineProperty(S9,"InstrumentationNodeModuleDefinition",{enumerable:!0,get:function(){return vy0.InstrumentationNodeModuleDefinition}});var xy0=la();Object.defineProperty(S9,"InstrumentationNodeModuleFile",{enumerable:!0,get:function(){return xy0.InstrumentationNodeModuleFile}});var iw=mw();Object.defineProperty(S9,"isWrapped",{enumerable:!0,get:function(){return iw.isWrapped}});Object.defineProperty(S9,"safeExecuteInTheMiddle",{enumerable:!0,get:function(){return iw.safeExecuteInTheMiddle}});Object.defineProperty(S9,"safeExecuteInTheMiddleAsync",{enumerable:!0,get:function(){return iw.safeExecuteInTheMiddleAsync}});var aa=na();Object.defineProperty(S9,"SemconvStability",{enumerable:!0,get:function(){return aa.SemconvStability}});Object.defineProperty(S9,"semconvStabilityFromStr",{enumerable:!0,get:function(){return aa.semconvStabilityFromStr}})});var ra=j((qU1,dy0)=>{dy0.exports={name:"@fastify/otel",version:"0.17.1",description:"Official Fastify OpenTelemetry Instrumentation",main:"index.js",type:"commonjs",types:"types/index.d.ts",scripts:{lint:"eslint","lint:fix":"eslint --fix",test:"npm run test:all && npm run test:typescript","test:unit":"c8 --100 node --test","test:all":"npm run test:v4 && npm run test:v5","test:v4":"cross-env FASTIFY_VERSION=fastifyv4 npm run test:unit","test:v5":"cross-env FASTIFY_VERSION=fastify npm run test:unit","test:coverage":"c8 node --test && c8 report --reporter=html","test:typescript":"tsd"},repository:{type:"git",url:"git+https://github.com/fastify/otel.git"},keywords:["plugin","helper","fastify","instrumentation","otel","opentelemetry"],author:"Carlos Fuentes - @metcoder95 (https://metcoder.dev)",license:"MIT",bugs:{url:"https://github.com/fastify/otel/issues"},homepage:"https://github.com/fastify/otel#readme",funding:[{type:"github",url:"https://github.com/sponsors/fastify"},{type:"opencollective",url:"https://opencollective.com/fastify"}],devDependencies:{"@fastify/type-provider-typebox":"^6.1.0","@opentelemetry/context-async-hooks":"^2.0.0","@opentelemetry/contrib-test-utils":"^0.59.0","@opentelemetry/instrumentation-http":"^0.212.0","@opentelemetry/propagator-jaeger":"^2.0.0","@opentelemetry/sdk-trace-base":"^2.0.0","@opentelemetry/sdk-trace-node":"^2.2.0","@types/node":"^25.0.3",c8:"^11.0.0","cross-env":"^10.0.0",eslint:"^9.16.0",fastify:"^5.1.0","fastify-plugin":"^5.1.0",fastifyv4:"npm:fastify@^4.0.0",neostandard:"^0.12.0",tsd:"^0.33.0"},dependencies:{"@opentelemetry/core":"^2.0.0","@opentelemetry/instrumentation":"^0.212.0","@opentelemetry/semantic-conventions":"^1.28.0",minimatch:"^10.2.4"},peerDependencies:{"@opentelemetry/api":"^1.9.0"},tsd:{directory:"types"}}});var Zs=j((ea)=>{Object.defineProperty(ea,"__esModule",{value:!0});ea.range=ea.balanced=void 0;var cy0=(Z,J,Q)=>{let $=Z instanceof RegExp?ta(Z,Q):Z,Y=J instanceof RegExp?ta(J,Q):J,X=$!==null&&Y!=null&&ea.range($,Y,Q);return X&&{start:X[0],end:X[1],pre:Q.slice(0,X[0]),body:Q.slice(X[0]+$.length,X[1]),post:Q.slice(X[1]+Y.length)}};ea.balanced=cy0;var ta=(Z,J)=>{let Q=J.match(Z);return Q?Q[0]:null},my0=(Z,J,Q)=>{let $,Y,X,W=void 0,K,z=Q.indexOf(Z),G=Q.indexOf(J,z+1),H=z;if(z>=0&&G>0){if(Z===J)return[z,G];$=[],X=Q.length;while(H>=0&&!K){if(H===z)$.push(H),z=Q.indexOf(Z,H+1);else if($.length===1){let B=$.pop();if(B!==void 0)K=[B,G]}else{if(Y=$.pop(),Y!==void 0&&Y<X)X=Y,W=G;G=Q.indexOf(J,H+1)}H=z<G&&z>=0?z:G}if($.length&&W!==void 0)K=[X,W]}return K};ea.range=my0});var zs=j((Ks)=>{Object.defineProperty(Ks,"__esModule",{value:!0});Ks.EXPANSION_MAX=void 0;Ks.expand=QS0;var Js=Zs(),Qs="\x00SLASH"+Math.random()+"\x00",$s="\x00OPEN"+Math.random()+"\x00",aw="\x00CLOSE"+Math.random()+"\x00",Ys="\x00COMMA"+Math.random()+"\x00",Xs="\x00PERIOD"+Math.random()+"\x00",ly0=new RegExp(Qs,"g"),py0=new RegExp($s,"g"),iy0=new RegExp(aw,"g"),oy0=new RegExp(Ys,"g"),ny0=new RegExp(Xs,"g"),ay0=/\\\\/g,sy0=/\\{/g,ry0=/\\}/g,ty0=/\\,/g,ey0=/\\\./g;Ks.EXPANSION_MAX=1e5;function nw(Z){return!isNaN(Z)?parseInt(Z,10):Z.charCodeAt(0)}function ZS0(Z){return Z.replace(ay0,Qs).replace(sy0,$s).replace(ry0,aw).replace(ty0,Ys).replace(ey0,Xs)}function JS0(Z){return Z.replace(ly0,"\\").replace(py0,"{").replace(iy0,"}").replace(oy0,",").replace(ny0,".")}function Ws(Z){if(!Z)return[""];let J=[],Q=(0,Js.balanced)("{","}",Z);if(!Q)return Z.split(",");let{pre:$,body:Y,post:X}=Q,W=$.split(",");W[W.length-1]+="{"+Y+"}";let K=Ws(X);if(X.length)W[W.length-1]+=K.shift(),W.push.apply(W,K);return J.push.apply(J,W),J}function QS0(Z,J={}){if(!Z)return[];let{max:Q=Ks.EXPANSION_MAX}=J;if(Z.slice(0,2)==="{}")Z="\\{\\}"+Z.slice(2);return P$(ZS0(Z),Q,!0).map(JS0)}function $S0(Z){return"{"+Z+"}"}function YS0(Z){return/^-?0\d/.test(Z)}function XS0(Z,J){return Z<=J}function WS0(Z,J){return Z>=J}function P$(Z,J,Q){let $=[],Y=(0,Js.balanced)("{","}",Z);if(!Y)return[Z];let X=Y.pre,W=Y.post.length?P$(Y.post,J,!1):[""];if(/\$$/.test(Y.pre))for(let K=0;K<W.length&&K<J;K++){let z=X+"{"+Y.body+"}"+W[K];$.push(z)}else{let K=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(Y.body),z=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(Y.body),G=K||z,H=Y.body.indexOf(",")>=0;if(!G&&!H){if(Y.post.match(/,(?!,).*\}/))return Z=Y.pre+"{"+Y.body+aw+Y.post,P$(Z,J,!0);return[Z]}let B;if(G)B=Y.body.split(/\.\./);else if(B=Ws(Y.body),B.length===1&&B[0]!==void 0){if(B=P$(B[0],J,!1).map($S0),B.length===1)return W.map((F)=>Y.pre+B[0]+F)}let V;if(G&&B[0]!==void 0&&B[1]!==void 0){let F=nw(B[0]),U=nw(B[1]),w=Math.max(B[0].length,B[1].length),D=B.length===3&&B[2]!==void 0?Math.max(Math.abs(nw(B[2])),1):1,L=XS0;if(U<F)D*=-1,L=WS0;let R=B.some(YS0);V=[];for(let T=F;L(T,U);T+=D){let S;if(z){if(S=String.fromCharCode(T),S==="\\")S=""}else if(S=String(T),R){let m=w-S.length;if(m>0){let l=Array(m+1).join("0");if(T<0)S="-"+l+S.slice(1);else S=l+S}}V.push(S)}}else{V=[];for(let F=0;F<B.length;F++)V.push.apply(V,P$(B[F],J,!1))}for(let F=0;F<V.length;F++)for(let U=0;U<W.length&&$.length<J;U++){let w=X+V[F]+W[U];if(!Q||G||w)$.push(w)}}return $}});var Bs=j((Gs)=>{Object.defineProperty(Gs,"__esModule",{value:!0});Gs.assertValidPattern=void 0;var zS0=65536,GS0=(Z)=>{if(typeof Z!=="string")throw TypeError("invalid pattern");if(Z.length>zS0)throw TypeError("pattern is too long")};Gs.assertValidPattern=GS0});var qs=j((Fs)=>{Object.defineProperty(Fs,"__esModule",{value:!0});Fs.parseClass=void 0;var HS0={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},M$=(Z)=>Z.replace(/[[\]\\-]/g,"\\$&"),BS0=(Z)=>Z.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Vs=(Z)=>Z.join(""),VS0=(Z,J)=>{let Q=J;if(Z.charAt(Q)!=="[")throw Error("not in a brace expression");let $=[],Y=[],X=Q+1,W=!1,K=!1,z=!1,G=!1,H=Q,B="";Z:while(X<Z.length){let w=Z.charAt(X);if((w==="!"||w==="^")&&X===Q+1){G=!0,X++;continue}if(w==="]"&&W&&!z){H=X+1;break}if(W=!0,w==="\\"){if(!z){z=!0,X++;continue}}if(w==="["&&!z){for(let[D,[L,C,R]]of Object.entries(HS0))if(Z.startsWith(D,X)){if(B)return["$.",!1,Z.length-Q,!0];if(X+=D.length,R)Y.push(L);else $.push(L);K=K||C;continue Z}}if(z=!1,B){if(w>B)$.push(M$(B)+"-"+M$(w));else if(w===B)$.push(M$(w));B="",X++;continue}if(Z.startsWith("-]",X+1)){$.push(M$(w+"-")),X+=2;continue}if(Z.startsWith("-",X+1)){B=w,X+=2;continue}$.push(M$(w)),X++}if(H<X)return["",!1,0,!1];if(!$.length&&!Y.length)return["$.",!1,Z.length-Q,!0];if(Y.length===0&&$.length===1&&/^\\?.$/.test($[0])&&!G){let w=$[0].length===2?$[0].slice(-1):$[0];return[BS0(w),!1,H-Q,!1]}let V="["+(G?"^":"")+Vs($)+"]",F="["+(G?"":"^")+Vs(Y)+"]";return[$.length&&Y.length?"("+V+"|"+F+")":$.length?V:F,K,H-Q,!0]};Fs.parseClass=VS0});var tK=j((ws)=>{Object.defineProperty(ws,"__esModule",{value:!0});ws.unescape=void 0;var FS0=(Z,{windowsPathsNoEscape:J=!1,magicalBraces:Q=!0}={})=>{if(Q)return J?Z.replace(/\[([^\/\\])\]/g,"$1"):Z.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");return J?Z.replace(/\[([^\/\\{}])\]/g,"$1"):Z.replace(/((?!\\).|^)\[([^\/\\{}])\]/g,"$1$2").replace(/\\([^\/{}])/g,"$1")};ws.unescape=FS0});var Zj=j((Ps)=>{var H6;Object.defineProperty(Ps,"__esModule",{value:!0});Ps.AST=void 0;var US0=qs(),eK=tK(),qS0=new Set(["!","?","+","*","@"]),rw=(Z)=>qS0.has(Z),Ds=(Z)=>rw(Z.type),wS0=new Map([["!",["@"]],["?",["?","@"]],["@",["@"]],["*",["*","+","?","@"]],["+",["+","@"]]]),jS0=new Map([["!",["?"]],["@",["?"]],["+",["?","*"]]]),DS0=new Map([["!",["?","@"]],["?",["?","@"]],["@",["?","@"]],["*",["*","+","?","@"]],["+",["+","@","?","*"]]]),Os=new Map([["!",new Map([["!","@"]])],["?",new Map([["*","*"],["+","*"]])],["@",new Map([["!","!"],["?","?"],["@","@"],["*","*"],["+","+"]])],["+",new Map([["?","*"],["*","*"]])]]),OS0="(?!(?:^|/)\\.\\.?(?:$|/))",Zz="(?!\\.)",LS0=new Set(["[","."]),CS0=new Set(["..","."]),PS0=new Set("().*{}+?[]^$\\!"),MS0=(Z)=>Z.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),tw="[^/]",Ls=tw+"*?",Cs=tw+"+?",RS0=0;class ew{type;#J;#Q;#$=!1;#Z=[];#Y;#K;#G;#z=!1;#X;#W;#H=!1;id=++RS0;get depth(){return(this.#Y?.depth??-1)+1}[Symbol.for("nodejs.util.inspect.custom")](){return{"@@type":"AST",id:this.id,type:this.type,root:this.#J.id,parent:this.#Y?.id,depth:this.depth,partsLength:this.#Z.length,parts:this.#Z}}constructor(Z,J,Q={}){if(this.type=Z,Z)this.#Q=!0;if(this.#Y=J,this.#J=this.#Y?this.#Y.#J:this,this.#X=this.#J===this?Q:this.#J.#X,this.#G=this.#J===this?[]:this.#J.#G,Z==="!"&&!this.#J.#z)this.#G.push(this);this.#K=this.#Y?this.#Y.#Z.length:0}get hasMagic(){if(this.#Q!==void 0)return this.#Q;for(let Z of this.#Z){if(typeof Z==="string")continue;if(Z.type||Z.hasMagic)return this.#Q=!0}return this.#Q}toString(){if(this.#W!==void 0)return this.#W;if(!this.type)return this.#W=this.#Z.map((Z)=>String(Z)).join("");else return this.#W=this.type+"("+this.#Z.map((Z)=>String(Z)).join("|")+")"}#j(){if(this!==this.#J)throw Error("should only call on root");if(this.#z)return this;this.toString(),this.#z=!0;let Z;while(Z=this.#G.pop()){if(Z.type!=="!")continue;let J=Z,Q=J.#Y;while(Q){for(let $=J.#K+1;!Q.type&&$<Q.#Z.length;$++)for(let Y of Z.#Z){if(typeof Y==="string")throw Error("string part in extglob AST??");Y.copyIn(Q.#Z[$])}J=Q,Q=J.#Y}}return this}push(...Z){for(let J of Z){if(J==="")continue;if(typeof J!=="string"&&!(J instanceof H6&&J.#Y===this))throw Error("invalid part: "+J);this.#Z.push(J)}}toJSON(){let Z=this.type===null?this.#Z.slice().map((J)=>typeof J==="string"?J:J.toJSON()):[this.type,...this.#Z.map((J)=>J.toJSON())];if(this.isStart()&&!this.type)Z.unshift([]);if(this.isEnd()&&(this===this.#J||this.#J.#z&&this.#Y?.type==="!"))Z.push({});return Z}isStart(){if(this.#J===this)return!0;if(!this.#Y?.isStart())return!1;if(this.#K===0)return!0;let Z=this.#Y;for(let J=0;J<this.#K;J++){let Q=Z.#Z[J];if(!(Q instanceof H6&&Q.type==="!"))return!1}return!0}isEnd(){if(this.#J===this)return!0;if(this.#Y?.type==="!")return!0;if(!this.#Y?.isEnd())return!1;if(!this.type)return this.#Y?.isEnd();let Z=this.#Y?this.#Y.#Z.length:0;return this.#K===Z-1}copyIn(Z){if(typeof Z==="string")this.push(Z);else this.push(Z.clone(this))}clone(Z){let J=new H6(this.type,Z);for(let Q of this.#Z)J.copyIn(Q);return J}static#B(Z,J,Q,$,Y){let X=$.maxExtglobRecursion??2,W=!1,K=!1,z=-1,G=!1;if(J.type===null){let U=Q,w="";while(U<Z.length){let D=Z.charAt(U++);if(W||D==="\\"){W=!W,w+=D;continue}if(K){if(U===z+1){if(D==="^"||D==="!")G=!0}else if(D==="]"&&!(U===z+2&&G))K=!1;w+=D;continue}else if(D==="["){K=!0,z=U,G=!1,w+=D;continue}if(!$.noext&&rw(D)&&Z.charAt(U)==="("&&Y<=X){J.push(w),w="";let C=new H6(D,J);U=H6.#B(Z,C,U,$,Y+1),J.push(C);continue}w+=D}return J.push(w),U}let H=Q+1,B=new H6(null,J),V=[],F="";while(H<Z.length){let U=Z.charAt(H++);if(W||U==="\\"){W=!W,F+=U;continue}if(K){if(H===z+1){if(U==="^"||U==="!")G=!0}else if(U==="]"&&!(H===z+2&&G))K=!1;F+=U;continue}else if(U==="["){K=!0,z=H,G=!1,F+=U;continue}if(!$.noext&&rw(U)&&Z.charAt(H)==="("&&(Y<=X||J&&J.#V(U))){let D=J&&J.#V(U)?0:1;B.push(F),F="";let L=new H6(U,B);B.push(L),H=H6.#B(Z,L,H,$,Y+D);continue}if(U==="|"){B.push(F),F="",V.push(B),B=new H6(null,J);continue}if(U===")"){if(F===""&&J.#Z.length===0)J.#H=!0;return B.push(F),F="",J.push(...V,B),H}F+=U}return J.type=null,J.#Q=void 0,J.#Z=[Z.substring(Q-1)],H}#D(Z){return this.#U(Z,jS0)}#U(Z,J=wS0){if(!Z||typeof Z!=="object"||Z.type!==null||Z.#Z.length!==1||this.type===null)return!1;let Q=Z.#Z[0];if(!Q||typeof Q!=="object"||Q.type===null)return!1;return this.#V(Q.type,J)}#V(Z,J=DS0){return!!J.get(this.type)?.includes(Z)}#O(Z,J){let Q=Z.#Z[0],$=new H6(null,Q,this.options);$.#Z.push(""),Q.push($),this.#q(Z,J)}#q(Z,J){let Q=Z.#Z[0];this.#Z.splice(J,1,...Q.#Z);for(let $ of Q.#Z)if(typeof $==="object")$.#Y=this;this.#W=void 0}#L(Z){return!!Os.get(this.type)?.has(Z)}#C(Z){if(!Z||typeof Z!=="object"||Z.type!==null||Z.#Z.length!==1||this.type===null||this.#Z.length!==1)return!1;let J=Z.#Z[0];if(!J||typeof J!=="object"||J.type===null)return!1;return this.#L(J.type)}#P(Z){let J=Os.get(this.type),Q=Z.#Z[0],$=J?.get(Q.type);if(!$)return!1;this.#Z=Q.#Z;for(let Y of this.#Z)if(typeof Y==="object")Y.#Y=this;this.type=$,this.#W=void 0,this.#H=!1}static fromGlob(Z,J={}){let Q=new H6(null,void 0,J);return H6.#B(Z,Q,0,J,0),Q}toMMPattern(){if(this!==this.#J)return this.#J.toMMPattern();let Z=this.toString(),[J,Q,$,Y]=this.toRegExpSource();if(!($||this.#Q||this.#X.nocase&&!this.#X.nocaseMagicOnly&&Z.toUpperCase()!==Z.toLowerCase()))return Q;let W=(this.#X.nocase?"i":"")+(Y?"u":"");return Object.assign(new RegExp(`^${J}$`,W),{_src:J,_glob:Z})}get options(){return this.#X}toRegExpSource(Z){let J=Z??!!this.#X.dot;if(this.#J===this)this.#F(),this.#j();if(!Ds(this)){let K=this.isStart()&&this.isEnd()&&!this.#Z.some((V)=>typeof V!=="string"),z=this.#Z.map((V)=>{let[F,U,w,D]=typeof V==="string"?H6.#M(V,this.#Q,K):V.toRegExpSource(Z);return this.#Q=this.#Q||w,this.#$=this.#$||D,F}).join(""),G="";if(this.isStart()){if(typeof this.#Z[0]==="string"){if(!(this.#Z.length===1&&CS0.has(this.#Z[0]))){let F=LS0,U=J&&F.has(z.charAt(0))||z.startsWith("\\.")&&F.has(z.charAt(2))||z.startsWith("\\.\\.")&&F.has(z.charAt(4)),w=!J&&!Z&&F.has(z.charAt(0));G=U?OS0:w?Zz:""}}}let H="";if(this.isEnd()&&this.#J.#z&&this.#Y?.type==="!")H="(?:$|\\/)";return[G+z+H,(0,eK.unescape)(z),this.#Q=!!this.#Q,this.#$]}let Q=this.type==="*"||this.type==="+",$=this.type==="!"?"(?:(?!(?:":"(?:",Y=this.#w(J);if(this.isStart()&&this.isEnd()&&!Y&&this.type!=="!"){let K=this.toString(),z=this;return z.#Z=[K],z.type=null,z.#Q=void 0,[K,(0,eK.unescape)(this.toString()),!1,!1]}let X=!Q||Z||J||!Zz?"":this.#w(!0);if(X===Y)X="";if(X)Y=`(?:${Y})(?:${X})*?`;let W="";if(this.type==="!"&&this.#H)W=(this.isStart()&&!J?Zz:"")+Cs;else{let K=this.type==="!"?"))"+(this.isStart()&&!J&&!Z?Zz:"")+Ls+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&X?")":this.type==="*"&&X?")?":`)${this.type}`;W=$+Y+K}return[W,(0,eK.unescape)(Y),this.#Q=!!this.#Q,this.#$]}#F(){if(!Ds(this)){for(let Z of this.#Z)if(typeof Z==="object")Z.#F()}else{let Z=0,J=!1;do{J=!0;for(let Q=0;Q<this.#Z.length;Q++){let $=this.#Z[Q];if(typeof $==="object"){if($.#F(),this.#U($))J=!1,this.#q($,Q);else if(this.#D($))J=!1,this.#O($,Q);else if(this.#C($))J=!1,this.#P($)}}}while(!J&&++Z<10)}this.#W=void 0}#w(Z){return this.#Z.map((J)=>{if(typeof J==="string")throw Error("string type in extglob ast??");let[Q,$,Y,X]=J.toRegExpSource(Z);return this.#$=this.#$||X,Q}).filter((J)=>!(this.isStart()&&this.isEnd())||!!J).join("|")}static#M(Z,J,Q=!1){let $=!1,Y="",X=!1,W=!1;for(let K=0;K<Z.length;K++){let z=Z.charAt(K);if($){$=!1,Y+=(PS0.has(z)?"\\":"")+z;continue}if(z==="*"){if(W)continue;W=!0,Y+=Q&&/^[*]+$/.test(Z)?Cs:Ls,J=!0;continue}else W=!1;if(z==="\\"){if(K===Z.length-1)Y+="\\\\";else $=!0;continue}if(z==="["){let[G,H,B,V]=(0,US0.parseClass)(Z,K);if(B){Y+=G,X=X||H,K+=B-1,J=J||V;continue}}if(z==="?"){Y+=tw,J=!0;continue}Y+=MS0(z)}return[Y,(0,eK.unescape)(Z),!!J,X]}}Ps.AST=ew;H6=ew});var Jj=j((Rs)=>{Object.defineProperty(Rs,"__esModule",{value:!0});Rs.escape=void 0;var kS0=(Z,{windowsPathsNoEscape:J=!1,magicalBraces:Q=!1}={})=>{if(Q)return J?Z.replace(/[?*()[\]{}]/g,"[$&]"):Z.replace(/[?*()[\]\\{}]/g,"\\$&");return J?Z.replace(/[?*()[\]]/g,"[$&]"):Z.replace(/[?*()[\]\\]/g,"\\$&")};Rs.escape=kS0});var vs=j((R$)=>{Object.defineProperty(R$,"__esModule",{value:!0});R$.unescape=R$.escape=R$.AST=R$.Minimatch=R$.match=R$.makeRe=R$.braceExpand=R$.defaults=R$.filter=R$.GLOBSTAR=R$.sep=R$.minimatch=void 0;var NS0=zs(),Jz=Bs(),Is=Zj(),AS0=Jj(),IS0=tK(),TS0=(Z,J,Q={})=>{if((0,Jz.assertValidPattern)(J),!Q.nocomment&&J.charAt(0)==="#")return!1;return new EJ(J,Q).match(Z)};R$.minimatch=TS0;var ES0=/^\*+([^+@!?\*\[\(]*)$/,fS0=(Z)=>(J)=>!J.startsWith(".")&&J.endsWith(Z),yS0=(Z)=>(J)=>J.endsWith(Z),SS0=(Z)=>{return Z=Z.toLowerCase(),(J)=>!J.startsWith(".")&&J.toLowerCase().endsWith(Z)},_S0=(Z)=>{return Z=Z.toLowerCase(),(J)=>J.toLowerCase().endsWith(Z)},hS0=/^\*+\.\*+$/,bS0=(Z)=>!Z.startsWith(".")&&Z.includes("."),vS0=(Z)=>Z!=="."&&Z!==".."&&Z.includes("."),xS0=/^\.\*+$/,gS0=(Z)=>Z!=="."&&Z!==".."&&Z.startsWith("."),dS0=/^\*+$/,cS0=(Z)=>Z.length!==0&&!Z.startsWith("."),mS0=(Z)=>Z.length!==0&&Z!=="."&&Z!=="..",uS0=/^\?+([^+@!?\*\[\(]*)?$/,lS0=([Z,J=""])=>{let Q=Ts([Z]);if(!J)return Q;return J=J.toLowerCase(),($)=>Q($)&&$.toLowerCase().endsWith(J)},pS0=([Z,J=""])=>{let Q=Es([Z]);if(!J)return Q;return J=J.toLowerCase(),($)=>Q($)&&$.toLowerCase().endsWith(J)},iS0=([Z,J=""])=>{let Q=Es([Z]);return!J?Q:($)=>Q($)&&$.endsWith(J)},oS0=([Z,J=""])=>{let Q=Ts([Z]);return!J?Q:($)=>Q($)&&$.endsWith(J)},Ts=([Z])=>{let J=Z.length;return(Q)=>Q.length===J&&!Q.startsWith(".")},Es=([Z])=>{let J=Z.length;return(Q)=>Q.length===J&&Q!=="."&&Q!==".."},fs=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",Ns={win32:{sep:"\\"},posix:{sep:"/"}};R$.sep=fs==="win32"?Ns.win32.sep:Ns.posix.sep;R$.minimatch.sep=R$.sep;R$.GLOBSTAR=Symbol("globstar **");R$.minimatch.GLOBSTAR=R$.GLOBSTAR;var nS0="[^/]",aS0=nS0+"*?",sS0="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",rS0="(?:(?!(?:\\/|^)\\.).)*?",tS0=(Z,J={})=>(Q)=>R$.minimatch(Q,Z,J);R$.filter=tS0;R$.minimatch.filter=R$.filter;var Q9=(Z,J={})=>Object.assign({},Z,J),eS0=(Z)=>{if(!Z||typeof Z!=="object"||!Object.keys(Z).length)return R$.minimatch;let J=R$.minimatch;return Object.assign(($,Y,X={})=>J($,Y,Q9(Z,X)),{Minimatch:class extends J.Minimatch{constructor(Y,X={}){super(Y,Q9(Z,X))}static defaults(Y){return J.defaults(Q9(Z,Y)).Minimatch}},AST:class extends J.AST{constructor(Y,X,W={}){super(Y,X,Q9(Z,W))}static fromGlob(Y,X={}){return J.AST.fromGlob(Y,Q9(Z,X))}},unescape:($,Y={})=>J.unescape($,Q9(Z,Y)),escape:($,Y={})=>J.escape($,Q9(Z,Y)),filter:($,Y={})=>J.filter($,Q9(Z,Y)),defaults:($)=>J.defaults(Q9(Z,$)),makeRe:($,Y={})=>J.makeRe($,Q9(Z,Y)),braceExpand:($,Y={})=>J.braceExpand($,Q9(Z,Y)),match:($,Y,X={})=>J.match($,Y,Q9(Z,X)),sep:J.sep,GLOBSTAR:R$.GLOBSTAR})};R$.defaults=eS0;R$.minimatch.defaults=R$.defaults;var Z_0=(Z,J={})=>{if((0,Jz.assertValidPattern)(Z),J.nobrace||!/\{(?:(?!\{).)*\}/.test(Z))return[Z];return(0,NS0.expand)(Z,{max:J.braceExpandMax})};R$.braceExpand=Z_0;R$.minimatch.braceExpand=R$.braceExpand;var J_0=(Z,J={})=>new EJ(Z,J).makeRe();R$.makeRe=J_0;R$.minimatch.makeRe=R$.makeRe;var Q_0=(Z,J,Q={})=>{let $=new EJ(J,Q);if(Z=Z.filter((Y)=>$.match(Y)),$.options.nonull&&!Z.length)Z.push(J);return Z};R$.match=Q_0;R$.minimatch.match=R$.match;var As=/[?*]|[+@!]\(.*?\)|\[|\]/,$_0=(Z)=>Z.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");class EJ{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;maxGlobstarRecursion;regexp;constructor(Z,J={}){(0,Jz.assertValidPattern)(Z),J=J||{},this.options=J,this.maxGlobstarRecursion=J.maxGlobstarRecursion??200,this.pattern=Z,this.platform=J.platform||fs,this.isWindows=this.platform==="win32";let Q="allowWindowsEscape";if(this.windowsPathsNoEscape=!!J.windowsPathsNoEscape||J[Q]===!1,this.windowsPathsNoEscape)this.pattern=this.pattern.replace(/\\/g,"/");this.preserveMultipleSlashes=!!J.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!J.nonegate,this.comment=!1,this.empty=!1,this.partial=!!J.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=J.windowsNoMagicRoot!==void 0?J.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let Z of this.set)for(let J of Z)if(typeof J!=="string")return!0;return!1}debug(...Z){}make(){let Z=this.pattern,J=this.options;if(!J.nocomment&&Z.charAt(0)==="#"){this.comment=!0;return}if(!Z){this.empty=!0;return}if(this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],J.debug)this.debug=(...Y)=>console.error(...Y);this.debug(this.pattern,this.globSet);let Q=this.globSet.map((Y)=>this.slashSplit(Y));this.globParts=this.preprocess(Q),this.debug(this.pattern,this.globParts);let $=this.globParts.map((Y,X,W)=>{if(this.isWindows&&this.windowsNoMagicRoot){let K=Y[0]===""&&Y[1]===""&&(Y[2]==="?"||!As.test(Y[2]))&&!As.test(Y[3]),z=/^[a-z]:/i.test(Y[0]);if(K)return[...Y.slice(0,4),...Y.slice(4).map((G)=>this.parse(G))];else if(z)return[Y[0],...Y.slice(1).map((G)=>this.parse(G))]}return Y.map((K)=>this.parse(K))});if(this.debug(this.pattern,$),this.set=$.filter((Y)=>Y.indexOf(!1)===-1),this.isWindows)for(let Y=0;Y<this.set.length;Y++){let X=this.set[Y];if(X[0]===""&&X[1]===""&&this.globParts[Y][2]==="?"&&typeof X[3]==="string"&&/^[a-z]:$/i.test(X[3]))X[2]="?"}this.debug(this.pattern,this.set)}preprocess(Z){if(this.options.noglobstar){for(let Q=0;Q<Z.length;Q++)for(let $=0;$<Z[Q].length;$++)if(Z[Q][$]==="**")Z[Q][$]="*"}let{optimizationLevel:J=1}=this.options;if(J>=2)Z=this.firstPhasePreProcess(Z),Z=this.secondPhasePreProcess(Z);else if(J>=1)Z=this.levelOneOptimize(Z);else Z=this.adjascentGlobstarOptimize(Z);return Z}adjascentGlobstarOptimize(Z){return Z.map((J)=>{let Q=-1;while((Q=J.indexOf("**",Q+1))!==-1){let $=Q;while(J[$+1]==="**")$++;if($!==Q)J.splice(Q,$-Q)}return J})}levelOneOptimize(Z){return Z.map((J)=>{return J=J.reduce((Q,$)=>{let Y=Q[Q.length-1];if($==="**"&&Y==="**")return Q;if($===".."){if(Y&&Y!==".."&&Y!=="."&&Y!=="**")return Q.pop(),Q}return Q.push($),Q},[]),J.length===0?[""]:J})}levelTwoFileOptimize(Z){if(!Array.isArray(Z))Z=this.slashSplit(Z);let J=!1;do{if(J=!1,!this.preserveMultipleSlashes){for(let $=1;$<Z.length-1;$++){let Y=Z[$];if($===1&&Y===""&&Z[0]==="")continue;if(Y==="."||Y==="")J=!0,Z.splice($,1),$--}if(Z[0]==="."&&Z.length===2&&(Z[1]==="."||Z[1]===""))J=!0,Z.pop()}let Q=0;while((Q=Z.indexOf("..",Q+1))!==-1){let $=Z[Q-1];if($&&$!=="."&&$!==".."&&$!=="**")J=!0,Z.splice(Q-1,2),Q-=2}}while(J);return Z.length===0?[""]:Z}firstPhasePreProcess(Z){let J=!1;do{J=!1;for(let Q of Z){let $=-1;while(($=Q.indexOf("**",$+1))!==-1){let X=$;while(Q[X+1]==="**")X++;if(X>$)Q.splice($+1,X-$);let W=Q[$+1],K=Q[$+2],z=Q[$+3];if(W!=="..")continue;if(!K||K==="."||K===".."||!z||z==="."||z==="..")continue;J=!0,Q.splice($,1);let G=Q.slice(0);G[$]="**",Z.push(G),$--}if(!this.preserveMultipleSlashes){for(let X=1;X<Q.length-1;X++){let W=Q[X];if(X===1&&W===""&&Q[0]==="")continue;if(W==="."||W==="")J=!0,Q.splice(X,1),X--}if(Q[0]==="."&&Q.length===2&&(Q[1]==="."||Q[1]===""))J=!0,Q.pop()}let Y=0;while((Y=Q.indexOf("..",Y+1))!==-1){let X=Q[Y-1];if(X&&X!=="."&&X!==".."&&X!=="**"){J=!0;let K=Y===1&&Q[Y+1]==="**"?["."]:[];if(Q.splice(Y-1,2,...K),Q.length===0)Q.push("");Y-=2}}}}while(J);return Z}secondPhasePreProcess(Z){for(let J=0;J<Z.length-1;J++)for(let Q=J+1;Q<Z.length;Q++){let $=this.partsMatch(Z[J],Z[Q],!this.preserveMultipleSlashes);if($){Z[J]=[],Z[Q]=$;break}}return Z.filter((J)=>J.length)}partsMatch(Z,J,Q=!1){let $=0,Y=0,X=[],W="";while($<Z.length&&Y<J.length)if(Z[$]===J[Y])X.push(W==="b"?J[Y]:Z[$]),$++,Y++;else if(Q&&Z[$]==="**"&&J[Y]===Z[$+1])X.push(Z[$]),$++;else if(Q&&J[Y]==="**"&&Z[$]===J[Y+1])X.push(J[Y]),Y++;else if(Z[$]==="*"&&J[Y]&&(this.options.dot||!J[Y].startsWith("."))&&J[Y]!=="**"){if(W==="b")return!1;W="a",X.push(Z[$]),$++,Y++}else if(J[Y]==="*"&&Z[$]&&(this.options.dot||!Z[$].startsWith("."))&&Z[$]!=="**"){if(W==="a")return!1;W="b",X.push(J[Y]),$++,Y++}else return!1;return Z.length===J.length&&X}parseNegate(){if(this.nonegate)return;let Z=this.pattern,J=!1,Q=0;for(let $=0;$<Z.length&&Z.charAt($)==="!";$++)J=!J,Q++;if(Q)this.pattern=Z.slice(Q);this.negate=J}matchOne(Z,J,Q=!1){let $=0,Y=0;if(this.isWindows){let W=typeof Z[0]==="string"&&/^[a-z]:$/i.test(Z[0]),K=!W&&Z[0]===""&&Z[1]===""&&Z[2]==="?"&&/^[a-z]:$/i.test(Z[3]),z=typeof J[0]==="string"&&/^[a-z]:$/i.test(J[0]),G=!z&&J[0]===""&&J[1]===""&&J[2]==="?"&&typeof J[3]==="string"&&/^[a-z]:$/i.test(J[3]),H=K?3:W?0:void 0,B=G?3:z?0:void 0;if(typeof H==="number"&&typeof B==="number"){let[V,F]=[Z[H],J[B]];if(V.toLowerCase()===F.toLowerCase())J[B]=V,Y=B,$=H}}let{optimizationLevel:X=1}=this.options;if(X>=2)Z=this.levelTwoFileOptimize(Z);if(J.includes(R$.GLOBSTAR))return this.#J(Z,J,Q,$,Y);return this.#$(Z,J,Q,$,Y)}#J(Z,J,Q,$,Y){let X=J.indexOf(R$.GLOBSTAR,Y),W=J.lastIndexOf(R$.GLOBSTAR),[K,z,G]=Q?[J.slice(Y,X),J.slice(X+1),[]]:[J.slice(Y,X),J.slice(X+1,W),J.slice(W+1)];if(K.length){let L=Z.slice($,$+K.length);if(!this.#$(L,K,Q,0,0))return!1;$+=K.length,Y+=K.length}let H=0;if(G.length){if(G.length+$>Z.length)return!1;let L=Z.length-G.length;if(this.#$(Z,G,Q,L,0))H=G.length;else{if(Z[Z.length-1]!==""||$+G.length===Z.length)return!1;if(L--,!this.#$(Z,G,Q,L,0))return!1;H=G.length+1}}if(!z.length){let L=!!H;for(let C=$;C<Z.length-H;C++){let R=String(Z[C]);if(L=!0,R==="."||R===".."||!this.options.dot&&R.startsWith("."))return!1}return Q||L}let B=[[[],0]],V=B[0],F=0,U=[0];for(let L of z)if(L===R$.GLOBSTAR)U.push(F),V=[[],0],B.push(V);else V[0].push(L),F++;let w=B.length-1,D=Z.length-H;for(let L of B)L[1]=D-(U[w--]+L[0].length);return!!this.#Q(Z,B,$,0,Q,0,!!H)}#Q(Z,J,Q,$,Y,X,W){let K=J[$];if(!K){for(let H=Q;H<Z.length;H++){W=!0;let B=Z[H];if(B==="."||B===".."||!this.options.dot&&B.startsWith("."))return!1}return W}let[z,G]=K;while(Q<=G){if(this.#$(Z.slice(0,Q+z.length),z,Y,Q,0)&&X<this.maxGlobstarRecursion){let V=this.#Q(Z,J,Q+z.length,$+1,Y,X+1,W);if(V!==!1)return V}let B=Z[Q];if(B==="."||B===".."||!this.options.dot&&B.startsWith("."))return!1;Q++}return Y||null}#$(Z,J,Q,$,Y){let X,W,K,z;for(X=$,W=Y,z=Z.length,K=J.length;X<z&&W<K;X++,W++){this.debug("matchOne loop");let G=J[W],H=Z[X];if(this.debug(J,G,H),G===!1||G===R$.GLOBSTAR)return!1;let B;if(typeof G==="string")B=H===G,this.debug("string match",G,H,B);else B=G.test(H),this.debug("pattern match",G,H,B);if(!B)return!1}if(X===z&&W===K)return!0;else if(X===z)return Q;else if(W===K)return X===z-1&&Z[X]==="";else throw Error("wtf?")}braceExpand(){return R$.braceExpand(this.pattern,this.options)}parse(Z){(0,Jz.assertValidPattern)(Z);let J=this.options;if(Z==="**")return R$.GLOBSTAR;if(Z==="")return"";let Q,$=null;if(Q=Z.match(dS0))$=J.dot?mS0:cS0;else if(Q=Z.match(ES0))$=(J.nocase?J.dot?_S0:SS0:J.dot?yS0:fS0)(Q[1]);else if(Q=Z.match(uS0))$=(J.nocase?J.dot?pS0:lS0:J.dot?iS0:oS0)(Q);else if(Q=Z.match(hS0))$=J.dot?vS0:bS0;else if(Q=Z.match(xS0))$=gS0;let Y=Is.AST.fromGlob(Z,this.options).toMMPattern();if($&&typeof Y==="object")Reflect.defineProperty(Y,"test",{value:$});return Y}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let Z=this.set;if(!Z.length)return this.regexp=!1,this.regexp;let J=this.options,Q=J.noglobstar?aS0:J.dot?sS0:rS0,$=new Set(J.nocase?["i"]:[]),Y=Z.map((K)=>{let z=K.map((H)=>{if(H instanceof RegExp)for(let B of H.flags.split(""))$.add(B);return typeof H==="string"?$_0(H):H===R$.GLOBSTAR?R$.GLOBSTAR:H._src});z.forEach((H,B)=>{let V=z[B+1],F=z[B-1];if(H!==R$.GLOBSTAR||F===R$.GLOBSTAR)return;if(F===void 0)if(V!==void 0&&V!==R$.GLOBSTAR)z[B+1]="(?:\\/|"+Q+"\\/)?"+V;else z[B]=Q;else if(V===void 0)z[B-1]=F+"(?:\\/|\\/"+Q+")?";else if(V!==R$.GLOBSTAR)z[B-1]=F+"(?:\\/|\\/"+Q+"\\/)"+V,z[B+1]=R$.GLOBSTAR});let G=z.filter((H)=>H!==R$.GLOBSTAR);if(this.partial&&G.length>=1){let H=[];for(let B=1;B<=G.length;B++)H.push(G.slice(0,B).join("/"));return"(?:"+H.join("|")+")"}return G.join("/")}).join("|"),[X,W]=Z.length>1?["(?:",")"]:["",""];if(Y="^"+X+Y+W+"$",this.partial)Y="^(?:\\/|"+X+Y.slice(1,-1)+W+")$";if(this.negate)Y="^(?!"+Y+").+$";try{this.regexp=new RegExp(Y,[...$].join(""))}catch(K){this.regexp=!1}return this.regexp}slashSplit(Z){if(this.preserveMultipleSlashes)return Z.split("/");else if(this.isWindows&&/^\/\/[^\/]+/.test(Z))return["",...Z.split(/\/+/)];else return Z.split(/\/+/)}match(Z,J=this.partial){if(this.debug("match",Z,this.pattern),this.comment)return!1;if(this.empty)return Z==="";if(Z==="/"&&J)return!0;let Q=this.options;if(this.isWindows)Z=Z.split("\\").join("/");let $=this.slashSplit(Z);this.debug(this.pattern,"split",$);let Y=this.set;this.debug(this.pattern,"set",Y);let X=$[$.length-1];if(!X)for(let W=$.length-2;!X&&W>=0;W--)X=$[W];for(let W=0;W<Y.length;W++){let K=Y[W],z=$;if(Q.matchBase&&K.length===1)z=[X];if(this.matchOne(z,K,J)){if(Q.flipNegate)return!0;return!this.negate}}if(Q.flipNegate)return!1;return this.negate}static defaults(Z){return R$.minimatch.defaults(Z).Minimatch}}R$.Minimatch=EJ;var Y_0=Zj();Object.defineProperty(R$,"AST",{enumerable:!0,get:function(){return Y_0.AST}});var X_0=Jj();Object.defineProperty(R$,"escape",{enumerable:!0,get:function(){return X_0.escape}});var W_0=tK();Object.defineProperty(R$,"unescape",{enumerable:!0,get:function(){return W_0.unescape}});R$.minimatch.AST=Is.AST;R$.minimatch.Minimatch=EJ;R$.minimatch.escape=AS0.escape;R$.minimatch.unescape=IS0.unescape});var ls=j((NU1,Wj)=>{var xs=E("diagnostics_channel"),{context:Qz,trace:$j,SpanStatusCode:k$,propagation:Yj,diag:G_0}=I(),{getRPCMetadata:H_0,RPCType:B_0}=R0(),{ATTR_HTTP_ROUTE:$z,ATTR_HTTP_RESPONSE_STATUS_CODE:gs,ATTR_HTTP_REQUEST_METHOD:V_0,ATTR_URL_PATH:F_0}=Y0(),{InstrumentationBase:U_0}=sa(),{version:q_0,name:ds}=ra(),cs=["onRequest","preParsing","preValidation","preHandler","preSerialization","onSend","onResponse","onError"],k0={HOOK_NAME:"hook.name",FASTIFY_TYPE:"fastify.type",HOOK_CALLBACK_NAME:"hook.callback.name",ROOT:"fastify.root"},J7={ROUTE:"route-hook",INSTANCE:"hook",HANDLER:"request-handler"},Q7=Symbol("fastify otel instance"),$7=Symbol("fastify otel request spans"),N$=Symbol("fastify otel request context"),ms=Symbol("fastify otel addhook original"),us=Symbol("fastify otel setnotfound original"),A$=Symbol("fastify otel ignore path"),I$=Symbol("fastify otel record exceptions");class Xj extends U_0{logger=null;_requestHook=null;_lifecycleHook=null;constructor(Z){super(ds,q_0,Z);if(this.logger=G_0.createComponentLogger({namespace:ds}),this[A$]=null,this[I$]=!0,Z?.recordExceptions!=null){if(typeof Z.recordExceptions!=="boolean")throw TypeError("recordExceptions must be a boolean");this[I$]=Z.recordExceptions}if(typeof Z?.requestHook==="function")this._requestHook=Z.requestHook;if(typeof Z?.lifecycleHook==="function")this._lifecycleHook=Z.lifecycleHook;if(Z?.ignorePaths!=null||process.env.OTEL_FASTIFY_IGNORE_PATHS!=null){let J=Z?.ignorePaths??process.env.OTEL_FASTIFY_IGNORE_PATHS;if((typeof J!=="string"||J.length===0)&&typeof J!=="function")throw TypeError("ignorePaths must be a string or a function");let Q=null;this[A$]=($)=>{if(typeof J==="function")return J($);else{if(Q==null)Q=vs().minimatch;return Q($.url,J)}}}}enable(){if(this._handleInitialization===void 0&&this.getConfig().registerOnInitialization)this._handleInitialization=(Z)=>{this.plugin()(Z.fastify,void 0,()=>{});let J=(Q,$,Y)=>{Y()};J[Symbol.for("skip-override")]=!0,J[Symbol.for("fastify.display-name")]="@fastify/otel",Z.fastify.register(J)},xs.subscribe("fastify.initialization",this._handleInitialization);return super.enable()}disable(){if(this._handleInitialization)xs.unsubscribe("fastify.initialization",this._handleInitialization),this._handleInitialization=void 0;return super.disable()}init(){return[]}plugin(){let Z=this;return J[Symbol.for("skip-override")]=!0,J[Symbol.for("fastify.display-name")]="@fastify/otel",J[Symbol.for("plugin-meta")]={fastify:">=4.0.0 <6",name:"@fastify/otel"},J;function J(Q,$,Y){Q.decorate(Q7,Z),Q.decorate(ms,Q.addHook),Q.decorate(us,Q.setNotFoundHandler),Q.decorateRequest("opentelemetry",function(){let B=this[N$],V=this[$7];return{enabled:this.routeOptions.config?.otel!==!1,span:V,tracer:Z.tracer,context:B,inject:(F,U)=>{return Yj.inject(B,F,U)},extract:(F,U)=>{return Yj.extract(B,F,U)}}}),Q.decorateRequest($7,null),Q.decorateRequest(N$,null),Q.addHook("onRoute",function(B){if(Z[A$]?.(B)===!0){Z.logger.debug(`Ignoring route instrumentation ${B.method} ${B.url} because it matches the ignore path`);return}if(B.config?.otel===!1){Z.logger.debug(`Ignoring route instrumentation ${B.method} ${B.url} because it is disabled`);return}for(let V of cs)if(B[V]!=null){let F=B[V];if(typeof F==="function")B[V]=G(F,V,{[k0.HOOK_NAME]:`${this.pluginName} - route -> ${V}`,[k0.FASTIFY_TYPE]:J7.ROUTE,[$z]:B.url,[k0.HOOK_CALLBACK_NAME]:F.name?.length>0?F.name:"anonymous"});else if(Array.isArray(F)){let U=[];for(let w of F)U.push(G(w,V,{[k0.HOOK_NAME]:`${this.pluginName} - route -> ${V}`,[k0.FASTIFY_TYPE]:J7.ROUTE,[$z]:B.url,[k0.HOOK_CALLBACK_NAME]:w.name?.length>0?w.name:"anonymous"}));B[V]=U}}if(B.onSend!=null)B.onSend=Array.isArray(B.onSend)?[...B.onSend,X]:[B.onSend,X];else B.onSend=X;if(B.onError!=null)B.onError=Array.isArray(B.onError)?[...B.onError,W]:[B.onError,W];else B.onError=W;B.handler=G(B.handler,"handler",{[k0.HOOK_NAME]:`${this.pluginName} - route-handler`,[k0.FASTIFY_TYPE]:J7.HANDLER,[$z]:B.url,[k0.HOOK_CALLBACK_NAME]:B.handler.name.length>0?B.handler.name:"anonymous"})}),Q.addHook("onRequest",function(B,V,F){if(this[Q7].isEnabled()===!1||B.routeOptions.config?.otel===!1)return F();if(this[Q7][A$]?.({url:B.url,method:B.method})===!0)return this[Q7].logger.debug(`Ignoring request ${B.method} ${B.url} because it matches the ignore path`),F();let U=Qz.active();if($j.getSpan(U)==null)U=Yj.extract(U,B.headers);let w=H_0(U);if(B.routeOptions.url!=null&&w?.type===B_0.HTTP)w.route=B.routeOptions.url;let D={[k0.ROOT]:"@fastify/otel",[V_0]:B.method,[F_0]:B.url};if(B.routeOptions.url!=null)D[$z]=B.routeOptions.url;let L=this[Q7].tracer.startSpan("request",{attributes:D},U);try{this[Q7]._requestHook?.(L,B)}catch(C){this[Q7].logger.error({err:C},"requestHook threw")}B[N$]=$j.setSpan(U,L),B[$7]=L,Qz.with(B[N$],()=>{F()})}),Q.addHook("onResponse",function(B,V,F){let U=B[$7];if(U!=null)U.setStatus({code:k$.OK,message:"OK"}),U.setAttributes({[gs]:404}),U.end();B[$7]=null,F()}),Q.addHook=K,Q.setNotFoundHandler=z,Y();function X(H,B,V,F){let U=H[$7];if(U!=null){if(B.statusCode<500)U.setStatus({code:k$.OK,message:"OK"});U.setAttributes({[gs]:B.statusCode}),U.end()}H[$7]=null,F(null,V)}function W(H,B,V,F){let U=H[$7];if(U!=null){if(U.setStatus({code:k$.ERROR,message:V.message}),Z[I$]!==!1)U.recordException(V)}F()}function K(H,B){let V=this[ms];if(cs.includes(H))return V.call(this,H,G(B,H,{[k0.HOOK_NAME]:`${this.pluginName} - ${H}`,[k0.FASTIFY_TYPE]:J7.INSTANCE,[k0.HOOK_CALLBACK_NAME]:B.name?.length>0?B.name:"anonymous"}));else return V.call(this,H,B)}function z(H,B){let V=this[us];if(typeof H==="function")B=G(H,"notFoundHandler",{[k0.HOOK_NAME]:`${this.pluginName} - not-found-handler`,[k0.FASTIFY_TYPE]:J7.INSTANCE,[k0.HOOK_CALLBACK_NAME]:H.name?.length>0?H.name:"anonymous"}),V.call(this,B);else{if(H.preValidation!=null)H.preValidation=G(H.preValidation,"notFoundHandler - preValidation",{[k0.HOOK_NAME]:`${this.pluginName} - not-found-handler - preValidation`,[k0.FASTIFY_TYPE]:J7.INSTANCE,[k0.HOOK_CALLBACK_NAME]:H.preValidation.name?.length>0?H.preValidation.name:"anonymous"});if(H.preHandler!=null)H.preHandler=G(H.preHandler,"notFoundHandler - preHandler",{[k0.HOOK_NAME]:`${this.pluginName} - not-found-handler - preHandler`,[k0.FASTIFY_TYPE]:J7.INSTANCE,[k0.HOOK_CALLBACK_NAME]:H.preHandler.name?.length>0?H.preHandler.name:"anonymous"});B=G(B,"notFoundHandler",{[k0.HOOK_NAME]:`${this.pluginName} - not-found-handler`,[k0.FASTIFY_TYPE]:J7.INSTANCE,[k0.HOOK_CALLBACK_NAME]:B.name?.length>0?B.name:"anonymous"}),V.call(this,H,B)}}function G(H,B,V={}){return function(...U){let w=this[Q7],[D]=U;if(w.isEnabled()===!1||D.routeOptions.config?.otel===!1)return w.logger.debug(`Ignoring route instrumentation ${D.routeOptions.method} ${D.routeOptions.url} because it is disabled`),H.call(this,...U);if(w[A$]?.({url:D.url,method:D.method})===!0)return w.logger.debug(`Ignoring route instrumentation ${D.routeOptions.method} ${D.routeOptions.url} because it matches the ignore path`),H.call(this,...U);let L=D[N$]??Qz.active(),C=H.name?.length>0?H.name:this.pluginName??"anonymous",R=w.tracer.startSpan(`${B} - ${C}`,{attributes:V},L);if(w._lifecycleHook!=null)try{w._lifecycleHook(R,{hookName:B,request:D,handler:C})}catch(T){w.logger.error({err:T},"Execution of lifecycleHook failed")}return Qz.with($j.setSpan(L,R),function(){try{let T=H.call(this,...U);if(typeof T?.then==="function")return T.then((S)=>{return R.end(),S},(S)=>{if(R.setStatus({code:k$.ERROR,message:S.message}),w[I$]!==!1)R.recordException(S);return R.end(),Promise.reject(S)});return R.end(),T}catch(T){if(R.setStatus({code:k$.ERROR,message:T.message}),w[I$]!==!1)R.recordException(T);throw R.end(),T}},this)}}}}}Wj.exports=Xj;Wj.exports.FastifyOtelInstrumentation=Xj});var n8,T$,E$;var ps=q(()=>{(function(Z){Z.FASTIFY_NAME="fastify.name";let Q="fastify.type";Z.FASTIFY_TYPE=Q;let $="hook.name";Z.HOOK_NAME=$;let Y="plugin.name";Z.PLUGIN_NAME=Y})(n8||(n8={}));(function(Z){Z.MIDDLEWARE="middleware";let Q="request_handler";Z.REQUEST_HANDLER=Q})(T$||(T$={}));(function(Z){Z.MIDDLEWARE="middleware";let Q="request handler";Z.REQUEST_HANDLER=Q})(E$||(E$={}))});var f$;var is=q(()=>{f$=Symbol("opentelemetry.instrumentation.fastify.request_active_span")});function Kj(Z,J,Q,$={}){let Y=J.startSpan(Q,{attributes:$}),X=Z[f$]||[];return X.push(Y),Object.defineProperty(Z,f$,{enumerable:!1,configurable:!0,value:X}),Y}function Yz(Z,J){let Q=Z[f$]||[];if(!Q.length)return;Q.forEach(($)=>{if(J)$.setStatus({code:ns.SpanStatusCode.ERROR,message:J.message}),$.recordException(J);$.end()}),delete Z[f$]}function as(Z,J,Q){let $,Y=void 0;try{if(Y=Z(),os(Y))Y.then((X)=>J(void 0,X),(X)=>J(X))}catch(X){$=X}finally{if(!os(Y)){if(J($,Y),$)throw $}return Y}}function os(Z){return typeof Z==="object"&&Z&&typeof Object.getOwnPropertyDescriptor(Z,"then")?.value==="function"||!1}var ns;var ss=q(()=>{is();ns=A(I(),1)});function O_0(){let Z=k();if(Z)Z.on("spanStart",(J)=>{es(J)})}function es(Z){let J=v(Z).data,Q=J["fastify.type"];if(J[g]||!Q)return;Z.setAttributes({[f]:"auto.http.otel.fastify",[g]:`${Q}.fastify`});let $=J["fastify.name"]||J["plugin.name"]||J["hook.name"];if(typeof $==="string"){let Y=$.replace(/^fastify -> /,"").replace(/^@fastify\/otel -> /,"");Z.updateName(Y)}}var _9,Xz,N5,ts,w_0="0.1.0",j_0="@sentry/instrumentation-fastify-v3",rs="anonymous",D_0,zj;var Zr=q(()=>{N();ps();ss();_9=A(I(),1),Xz=A(R0(),1),N5=A(n(),1),ts=A(Y0(),1),D_0=new Set(["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError"]);zj=class zj extends N5.InstrumentationBase{constructor(Z={}){super(j_0,w_0,Z)}init(){return[new N5.InstrumentationNodeModuleDefinition("fastify",[">=3.0.0 <4"],(Z)=>{return this._patchConstructor(Z)})]}_hookOnRequest(){let Z=this;return function(Q,$,Y){if(!Z.isEnabled())return Y();Z._wrap($,"send",Z._patchSend());let X=Q,W=Xz.getRPCMetadata(_9.context.active()),K=X.routeOptions?X.routeOptions.url:Q.routerPath;if(K&&W?.type===Xz.RPCType.HTTP)W.route=K;let z=Q.method||"GET";x().setTransactionName(`${z} ${K}`),Y()}}_wrapHandler(Z,J,Q,$){let Y=this;return this._diag.debug("Patching fastify route.handler function"),function(...X){if(!Y.isEnabled())return Q.apply(this,X);let W=Q.name||Z||rs,K=`${E$.MIDDLEWARE} - ${W}`,z=X[1],G=Kj(z,Y.tracer,K,{[n8.FASTIFY_TYPE]:T$.MIDDLEWARE,[n8.PLUGIN_NAME]:Z,[n8.HOOK_NAME]:J}),H=$&&X[X.length-1];if(H)X[X.length-1]=function(...B){Yz(z),H.apply(this,B)};return _9.context.with(_9.trace.setSpan(_9.context.active(),G),()=>{return as(()=>{return Q.apply(this,X)},(B)=>{if(B instanceof Error)G.setStatus({code:_9.SpanStatusCode.ERROR,message:B.message}),G.recordException(B);if(!$)Yz(z)})})}}_wrapAddHook(){let Z=this;return this._diag.debug("Patching fastify server.addHook function"),function(J){return function(...$){let Y=$[0],X=$[1],W=this.pluginName;if(!D_0.has(Y))return J.apply(this,$);let K=typeof $[$.length-1]==="function"&&X.constructor.name!=="AsyncFunction";return J.apply(this,[Y,Z._wrapHandler(W,Y,X,K)])}}}_patchConstructor(Z){let J=this;function Q(...$){let Y=Z.fastify.apply(this,$);return Y.addHook("onRequest",J._hookOnRequest()),Y.addHook("preHandler",J._hookPreHandler()),O_0(),J._wrap(Y,"addHook",J._wrapAddHook()),Y}if(Z.errorCodes!==void 0)Q.errorCodes=Z.errorCodes;return Q.fastify=Q,Q.default=Q,Q}_patchSend(){let Z=this;return this._diag.debug("Patching fastify reply.send function"),function(Q){return function(...Y){let X=Y[0];if(!Z.isEnabled())return Q.apply(this,Y);return N5.safeExecuteInTheMiddle(()=>{return Q.apply(this,Y)},(W)=>{if(!W&&X instanceof Error)W=X;Yz(this,W)})}}}_hookPreHandler(){let Z=this;return this._diag.debug("Patching fastify preHandler function"),function(Q,$,Y){if(!Z.isEnabled())return Y();let X=Q,W=X.routeOptions?.handler||X.context?.handler,K=W?.name.startsWith("bound ")?W.name.substring(6):W?.name,z=`${E$.REQUEST_HANDLER} - ${K||this.pluginName||rs}`,G={[n8.PLUGIN_NAME]:this.pluginName,[n8.FASTIFY_TYPE]:T$.REQUEST_HANDLER,[ts.SEMATTRS_HTTP_ROUTE]:X.routeOptions?X.routeOptions.url:Q.routerPath};if(K)G[n8.FASTIFY_NAME]=K;let H=Kj($,Z.tracer,z,G);es(H);let{requestHook:B}=Z.getConfig();if(B)N5.safeExecuteInTheMiddle(()=>B(H,{request:Q}),(V)=>{if(V)Z._diag.error("request hook failed",V)},!0);return _9.context.with(_9.trace.setSpan(_9.context.active(),H),()=>{Y()})}}}});import*as Gj from"diagnostics_channel";function $r(){let Z=k();if(!Z)return;else return Z.getIntegrationByName(Kz)}function Wz(Z,J,Q,$){let Y=$r()?.getShouldHandleError()||Xr;if($==="diagnostics-channel")this.diagnosticsChannelExists=!0;if(this.diagnosticsChannelExists&&$==="onError-hook"){e0&&O.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(Y(Z,J,Q))_(Z,{mechanism:{handled:!1,type:"auto.function.fastify"}})}function Xr(Z,J,Q){let $=Q.statusCode;return $>=500||$<=299}function Hj(Z,J){if(J?.shouldHandleError)$r()?.setShouldHandleError(J.shouldHandleError);let Q=Object.assign(function($,Y,X){$.addHook("onError",async(W,K,z)=>{Wz.call(Wz,z,W,K,"onError-hook")}),X()},{[Symbol.for("skip-override")]:!0,[Symbol.for("fastify.display-name")]:"sentry-fastify-error-handler"});Z.register(Q)}function Wr(Z){let J=v(Z),Q=J.description,$=J.data,Y=$["fastify.type"],X=Y==="hook",W=Y===Q?.startsWith("handler -"),K=Q==="request"||Y==="request-handler";if($[g]||!W&&!K&&!X)return;let z=X?"hook":W?"middleware":K?"request_handler":"<unknown>";Z.setAttributes({[f]:"auto.http.otel.fastify",[g]:`${z}.fastify`});let G=$["fastify.name"]||$["plugin.name"]||$["hook.name"];if(typeof G==="string"){let H=G.replace(/^fastify -> /,"").replace(/^@fastify\/otel -> /,"");Z.updateName(H)}}function C_0(){let Z=k();if(Z)Z.on("spanStart",(J)=>{Wr(J)})}function P_0(Z){Z.addHook("onRequest",async(J,Q)=>{if(J.opentelemetry){let{span:X}=J.opentelemetry();if(X)Wr(X)}let $=J.routeOptions?.url,Y=J.method||"GET";x().setTransactionName(`${Y} ${$}`)})}var Jr,Kz="Fastify",Qr,Yr,L_0=({shouldHandleError:Z})=>{let J;return{name:Kz,setupOnce(){J=Z||Xr,Qr(),Yr()},getShouldHandleError(){return J},setShouldHandleError(Q){J=Q}}},y$;var Bj=q(()=>{N();X0();Z7();Zr();Jr=A(ls(),1),Qr=y(`${Kz}.v3`,()=>new zj);Yr=y(`${Kz}.v5`,()=>{let Z=new Jr.FastifyOtelInstrumentation,J=Z.plugin();return Gj.subscribe("fastify.initialization",(Q)=>{let $=Q.fastify;$?.register(J).after((Y)=>{if(Y)e0&&O.error("Failed to setup Fastify instrumentation",Y);else if(C_0(),$)P_0($)})}),Gj.subscribe("tracing:fastify.request.handler:error",(Q)=>{let{error:$,request:Y,reply:X}=Q;Wz.call(Wz,$,Y,X,"diagnostics-channel")}),Z}),y$=P((Z={})=>L_0(Z))});var Fj=j((Gr)=>{Object.defineProperty(Gr,"__esModule",{value:!0});Gr.SpanNames=Gr.TokenKind=Gr.AllowedOperationTypes=void 0;var M_0;(function(Z){Z.QUERY="query",Z.MUTATION="mutation",Z.SUBSCRIPTION="subscription"})(M_0=Gr.AllowedOperationTypes||(Gr.AllowedOperationTypes={}));var R_0;(function(Z){Z.SOF="<SOF>",Z.EOF="<EOF>",Z.BANG="!",Z.DOLLAR="$",Z.AMP="&",Z.PAREN_L="(",Z.PAREN_R=")",Z.SPREAD="...",Z.COLON=":",Z.EQUALS="=",Z.AT="@",Z.BRACKET_L="[",Z.BRACKET_R="]",Z.BRACE_L="{",Z.PIPE="|",Z.BRACE_R="}",Z.NAME="Name",Z.INT="Int",Z.FLOAT="Float",Z.STRING="String",Z.BLOCK_STRING="BlockString",Z.COMMENT="Comment"})(R_0=Gr.TokenKind||(Gr.TokenKind={}));var k_0;(function(Z){Z.EXECUTE="graphql.execute",Z.PARSE="graphql.parse",Z.RESOLVE="graphql.resolve",Z.VALIDATE="graphql.validate",Z.SCHEMA_VALIDATE="graphql.validateSchema",Z.SCHEMA_PARSE="graphql.parseSchema"})(k_0=Gr.SpanNames||(Gr.SpanNames={}))});var qj=j((Hr)=>{Object.defineProperty(Hr,"__esModule",{value:!0});Hr.AttributeNames=void 0;var N_0;(function(Z){Z.SOURCE="graphql.source",Z.FIELD_NAME="graphql.field.name",Z.FIELD_PATH="graphql.field.path",Z.FIELD_TYPE="graphql.field.type",Z.PARENT_NAME="graphql.parent.name",Z.OPERATION_TYPE="graphql.operation.type",Z.OPERATION_NAME="graphql.operation.name",Z.VARIABLES="graphql.variables.",Z.ERROR_VALIDATION_NAME="graphql.validation.error"})(N_0=Hr.AttributeNames||(Hr.AttributeNames={}))});var zz=j((Br)=>{Object.defineProperty(Br,"__esModule",{value:!0});Br.OTEL_GRAPHQL_DATA_SYMBOL=Br.OTEL_PATCHED_SYMBOL=void 0;Br.OTEL_PATCHED_SYMBOL=Symbol.for("opentelemetry.patched");Br.OTEL_GRAPHQL_DATA_SYMBOL=Symbol.for("opentelemetry.graphql_data")});var qr=j((Fr)=>{Object.defineProperty(Fr,"__esModule",{value:!0});Fr.OPERATION_NOT_SUPPORTED=void 0;var uU1=zz();Fr.OPERATION_NOT_SUPPORTED="Operation$operationName$not supported"});var yr=j((Tr)=>{Object.defineProperty(Tr,"__esModule",{value:!0});Tr.wrapFieldResolver=Tr.wrapFields=Tr.getSourceFromLocation=Tr.getOperation=Tr.endSpan=Tr.addSpanSource=Tr.addInputVariableAttributes=Tr.isPromise=void 0;var fJ=I(),Y7=Fj(),A5=qj(),a8=zz(),wr=Object.values(Y7.AllowedOperationTypes),I_0=(Z)=>{return typeof Z?.then==="function"};Tr.isPromise=I_0;var T_0=(Z)=>{return typeof Z=="object"&&Z!==null};function wj(Z,J,Q){if(Array.isArray(Q))Q.forEach(($,Y)=>{wj(Z,`${J}.${Y}`,$)});else if(Q instanceof Object)Object.entries(Q).forEach(([$,Y])=>{wj(Z,`${J}.${$}`,Y)});else Z.setAttribute(`${A5.AttributeNames.VARIABLES}${String(J)}`,Q)}function E_0(Z,J){Object.entries(J).forEach(([Q,$])=>{wj(Z,Q,$)})}Tr.addInputVariableAttributes=E_0;function Lr(Z,J,Q,$,Y){let X=kr(J,Q,$,Y);Z.setAttribute(A5.AttributeNames.SOURCE,X)}Tr.addSpanSource=Lr;function f_0(Z,J,Q,$,Y){let X=Cr(Q,Y);if(X)return{field:X,spanAdded:!1};let K=J().flatResolveSpans?Mr(Q):Pr(Q,Y);return X={span:y_0(Z,J,Q,$,Y,K)},h_0(Q,Y,X),{field:X,spanAdded:!0}}function y_0(Z,J,Q,$,Y,X){let W={[A5.AttributeNames.FIELD_NAME]:$.fieldName,[A5.AttributeNames.FIELD_PATH]:Y.join("."),[A5.AttributeNames.FIELD_TYPE]:$.returnType.toString(),[A5.AttributeNames.PARENT_NAME]:$.parentType.name},K=Z.startSpan(`${Y7.SpanNames.RESOLVE} ${W[A5.AttributeNames.FIELD_PATH]}`,{attributes:W},X?fJ.trace.setSpan(fJ.context.active(),X):void 0),z=Q[a8.OTEL_GRAPHQL_DATA_SYMBOL].source,G=$.fieldNodes.find((H)=>H.kind==="Field");if(G)Lr(K,z.loc,J().allowValues,G.loc?.start,G.loc?.end);return K}function S_0(Z,J){if(J)Z.recordException(J);Z.end()}Tr.endSpan=S_0;function __0(Z,J){if(!Z||!Array.isArray(Z.definitions))return;if(J)return Z.definitions.filter((Q)=>wr.indexOf(Q?.operation)!==-1).find((Q)=>J===Q?.name?.value);else return Z.definitions.find((Q)=>wr.indexOf(Q?.operation)!==-1)}Tr.getOperation=__0;function h_0(Z,J,Q){return Z[a8.OTEL_GRAPHQL_DATA_SYMBOL].fields[J.join(".")]=Q}function Cr(Z,J){return Z[a8.OTEL_GRAPHQL_DATA_SYMBOL].fields[J.join(".")]}function Pr(Z,J){for(let Q=J.length-1;Q>0;Q--){let $=Cr(Z,J.slice(0,Q));if($)return $.span}return Mr(Z)}function Mr(Z){return Z[a8.OTEL_GRAPHQL_DATA_SYMBOL].span}function b_0(Z,J){let Q=[],$=J;while($){let Y=$.key;if(Z&&typeof Y==="number")Y="*";Q.push(String(Y)),$=$.prev}return Q.reverse()}function v_0(Z){return Rr(`
|
|
39
|
-
`,Z)}function jr(Z){return Rr(" ",Z)}function Rr(Z,J){let Q="";for(let $=0;$<J;$++)Q+=Z;return Q}var x_0=[Y7.TokenKind.FLOAT,Y7.TokenKind.STRING,Y7.TokenKind.INT,Y7.TokenKind.BLOCK_STRING];function kr(Z,J=!1,Q,$){let Y="";if(Z?.startToken){let X=typeof Q==="number"?Q:Z.start,W=typeof $==="number"?$:Z.end,K=Z.startToken.next,z=1;while(K){if(K.start<X){K=K.next,z=K?.line;continue}if(K.end>W){K=K.next,z=K?.line;continue}let G=K.value||K.kind,H="";if(!J&&x_0.indexOf(K.kind)>=0)G="*";if(K.kind===Y7.TokenKind.STRING)G=`"${G}"`;if(K.kind===Y7.TokenKind.EOF)G="";if(K.line>z)Y+=v_0(K.line-z),z=K.line,H=jr(K.column-1);else if(K.line===K.prev?.line)H=jr(K.start-(K.prev?.end||0));if(Y+=H+G,K)K=K.next}}return Y}Tr.getSourceFromLocation=kr;function Nr(Z,J,Q){if(!Z||Z[a8.OTEL_PATCHED_SYMBOL])return;let $=Z.getFields();Z[a8.OTEL_PATCHED_SYMBOL]=!0,Object.keys($).forEach((Y)=>{let X=$[Y];if(!X)return;if(X.resolve)X.resolve=Ir(J,Q,X.resolve);if(X.type){let W=Ar(X.type);for(let K of W)Nr(K,J,Q)}})}Tr.wrapFields=Nr;function Ar(Z){if("ofType"in Z)return Ar(Z.ofType);if(g_0(Z))return Z.getTypes();if(d_0(Z))return[Z];return[]}function g_0(Z){return"getTypes"in Z&&typeof Z.getTypes==="function"}function d_0(Z){return"getFields"in Z&&typeof Z.getFields==="function"}var Dr=(Z,J,Q)=>{if(!Q)return;Z.recordException(J),Z.setStatus({code:fJ.SpanStatusCode.ERROR,message:J.message}),Z.end()},Or=(Z,J)=>{if(!J)return;Z.end()};function Ir(Z,J,Q,$=!1){if(Y[a8.OTEL_PATCHED_SYMBOL]||typeof Q!=="function")return Q;function Y(X,W,K,z){if(!Q)return;let G=J();if(G.ignoreTrivialResolveSpans&&$&&(T_0(X)||typeof X==="function")){if(typeof X[z.fieldName]!=="function")return Q.call(this,X,W,K,z)}if(!K[a8.OTEL_GRAPHQL_DATA_SYMBOL])return Q.call(this,X,W,K,z);let H=b_0(G.mergeItems,z&&z.path),B=H.filter((U)=>typeof U==="string").length,V,F=!1;if(G.depth>=0&&G.depth<B)V=Pr(K,H);else{let{field:U,spanAdded:w}=f_0(Z,J,K,z,H);V=U.span,F=w}return fJ.context.with(fJ.trace.setSpan(fJ.context.active(),V),()=>{try{let U=Q.call(this,X,W,K,z);if(Tr.isPromise(U))return U.then((w)=>{return Or(V,F),w},(w)=>{throw Dr(V,w,F),w});else return Or(V,F),U}catch(U){throw Dr(V,U,F),U}})}return Y[a8.OTEL_PATCHED_SYMBOL]=!0,Y}Tr.wrapFieldResolver=Ir});var hr=j((Sr)=>{Object.defineProperty(Sr,"__esModule",{value:!0});Sr.PACKAGE_NAME=Sr.PACKAGE_VERSION=void 0;Sr.PACKAGE_VERSION="0.61.0";Sr.PACKAGE_NAME="@opentelemetry/instrumentation-graphql"});var cr=j((gr)=>{Object.defineProperty(gr,"__esModule",{value:!0});gr.GraphQLInstrumentation=void 0;var s8=I(),$9=n(),S$=Fj(),Gz=qj(),jj=zz(),n_0=qr(),x1=yr(),br=hr(),vr={mergeItems:!1,depth:-1,allowValues:!1,ignoreResolveSpans:!1},Hz=[">=14.0.0 <17"];class xr extends $9.InstrumentationBase{constructor(Z={}){super(br.PACKAGE_NAME,br.PACKAGE_VERSION,{...vr,...Z})}setConfig(Z={}){super.setConfig({...vr,...Z})}init(){let Z=new $9.InstrumentationNodeModuleDefinition("graphql",Hz);return Z.files.push(this._addPatchingExecute()),Z.files.push(this._addPatchingParser()),Z.files.push(this._addPatchingValidate()),Z}_addPatchingExecute(){return new $9.InstrumentationNodeModuleFile("graphql/execution/execute.js",Hz,(Z)=>{if((0,$9.isWrapped)(Z.execute))this._unwrap(Z,"execute");return this._wrap(Z,"execute",this._patchExecute(Z.defaultFieldResolver)),Z},(Z)=>{if(Z)this._unwrap(Z,"execute")})}_addPatchingParser(){return new $9.InstrumentationNodeModuleFile("graphql/language/parser.js",Hz,(Z)=>{if((0,$9.isWrapped)(Z.parse))this._unwrap(Z,"parse");return this._wrap(Z,"parse",this._patchParse()),Z},(Z)=>{if(Z)this._unwrap(Z,"parse")})}_addPatchingValidate(){return new $9.InstrumentationNodeModuleFile("graphql/validation/validate.js",Hz,(Z)=>{if((0,$9.isWrapped)(Z.validate))this._unwrap(Z,"validate");return this._wrap(Z,"validate",this._patchValidate()),Z},(Z)=>{if(Z)this._unwrap(Z,"validate")})}_patchExecute(Z){let J=this;return function($){return function(){let X;if(arguments.length>=2){let z=arguments;X=J._wrapExecuteArgs(z[0],z[1],z[2],z[3],z[4],z[5],z[6],z[7],Z)}else{let z=arguments[0];X=J._wrapExecuteArgs(z.schema,z.document,z.rootValue,z.contextValue,z.variableValues,z.operationName,z.fieldResolver,z.typeResolver,Z)}let W=(0,x1.getOperation)(X.document,X.operationName),K=J._createExecuteSpan(W,X);return X.contextValue[jj.OTEL_GRAPHQL_DATA_SYMBOL]={source:X.document?X.document||X.document[jj.OTEL_GRAPHQL_DATA_SYMBOL]:void 0,span:K,fields:{}},s8.context.with(s8.trace.setSpan(s8.context.active(),K),()=>{return(0,$9.safeExecuteInTheMiddle)(()=>{return $.apply(this,[X])},(z,G)=>{J._handleExecutionResult(K,z,G)})})}}}_handleExecutionResult(Z,J,Q){let $=this.getConfig();if(Q===void 0||J){(0,x1.endSpan)(Z,J);return}if((0,x1.isPromise)(Q))Q.then((Y)=>{if(typeof $.responseHook!=="function"){(0,x1.endSpan)(Z);return}this._executeResponseHook(Z,Y)},(Y)=>{(0,x1.endSpan)(Z,Y)});else{if(typeof $.responseHook!=="function"){(0,x1.endSpan)(Z);return}this._executeResponseHook(Z,Q)}}_executeResponseHook(Z,J){let{responseHook:Q}=this.getConfig();if(!Q)return;(0,$9.safeExecuteInTheMiddle)(()=>{Q(Z,J)},($)=>{if($)this._diag.error("Error running response hook",$);(0,x1.endSpan)(Z,void 0)},!0)}_patchParse(){let Z=this;return function(Q){return function(Y,X){return Z._parse(this,Q,Y,X)}}}_patchValidate(){let Z=this;return function(Q){return function(Y,X,W,K,z){return Z._validate(this,Q,Y,X,W,z,K)}}}_parse(Z,J,Q,$){let Y=this.getConfig(),X=this.tracer.startSpan(S$.SpanNames.PARSE);return s8.context.with(s8.trace.setSpan(s8.context.active(),X),()=>{return(0,$9.safeExecuteInTheMiddle)(()=>{return J.call(Z,Q,$)},(W,K)=>{if(K){if(!(0,x1.getOperation)(K))X.updateName(S$.SpanNames.SCHEMA_PARSE);else if(K.loc)(0,x1.addSpanSource)(X,K.loc,Y.allowValues)}(0,x1.endSpan)(X,W)})})}_validate(Z,J,Q,$,Y,X,W){let K=this.tracer.startSpan(S$.SpanNames.VALIDATE,{});return s8.context.with(s8.trace.setSpan(s8.context.active(),K),()=>{return(0,$9.safeExecuteInTheMiddle)(()=>{return J.call(Z,Q,$,Y,W,X)},(z,G)=>{if(!$.loc)K.updateName(S$.SpanNames.SCHEMA_VALIDATE);if(G&&G.length)K.recordException({name:Gz.AttributeNames.ERROR_VALIDATION_NAME,message:JSON.stringify(G)});(0,x1.endSpan)(K,z)})})}_createExecuteSpan(Z,J){let Q=this.getConfig(),$=this.tracer.startSpan(S$.SpanNames.EXECUTE,{});if(Z){let{operation:Y,name:X}=Z;$.setAttribute(Gz.AttributeNames.OPERATION_TYPE,Y);let W=X?.value;if(W)$.setAttribute(Gz.AttributeNames.OPERATION_NAME,W),$.updateName(`${Y} ${W}`);else $.updateName(Y)}else{let Y=" ";if(J.operationName)Y=` "${J.operationName}" `;Y=n_0.OPERATION_NOT_SUPPORTED.replace("$operationName$",Y),$.setAttribute(Gz.AttributeNames.OPERATION_NAME,Y)}if(J.document?.loc)(0,x1.addSpanSource)($,J.document.loc,Q.allowValues);if(J.variableValues&&Q.allowValues)(0,x1.addInputVariableAttributes)($,J.variableValues);return $}_wrapExecuteArgs(Z,J,Q,$,Y,X,W,K,z){if(!$)$={};if($[jj.OTEL_GRAPHQL_DATA_SYMBOL]||this.getConfig().ignoreResolveSpans)return{schema:Z,document:J,rootValue:Q,contextValue:$,variableValues:Y,operationName:X,fieldResolver:W,typeResolver:K};let G=W==null,H=W??z;if(W=(0,x1.wrapFieldResolver)(this.tracer,()=>this.getConfig(),H,G),Z)(0,x1.wrapFields)(Z.getQueryType(),this.tracer,()=>this.getConfig()),(0,x1.wrapFields)(Z.getMutationType(),this.tracer,()=>this.getConfig());return{schema:Z,document:J,rootValue:Q,contextValue:$,variableValues:Y,operationName:X,fieldResolver:W,typeResolver:K}}}gr.GraphQLInstrumentation=xr});var mr=j((Dj)=>{Object.defineProperty(Dj,"__esModule",{value:!0});Dj.GraphQLInstrumentation=void 0;var a_0=cr();Object.defineProperty(Dj,"GraphQLInstrumentation",{enumerable:!0,get:function(){return a_0.GraphQLInstrumentation}})});function or(Z){return{ignoreResolveSpans:!0,ignoreTrivialResolveSpans:!0,useOperationNameForRootSpan:!0,...Z}}function t_0(Z){if(Array.isArray(Z)){let J=Z.slice().sort();if(J.length<=5)return J.join(", ");else return`${J.slice(0,5).join(", ")}, +${J.length-5}`}return`${Z}`}var ur,lr,pr="Graphql",ir,r_0=(Z={})=>{return{name:pr,setupOnce(){ir(or(Z))}}},_$;var Oj=q(()=>{N();X0();jJ();ur=A(I(),1),lr=A(mr(),1),ir=y(pr,lr.GraphQLInstrumentation,(Z)=>{let J=or(Z);return{...J,responseHook(Q,$){if(q0(Q,"auto.graphql.otel.graphql"),$.errors?.length&&!v(Q).status)Q.setStatus({code:ur.SpanStatusCode.ERROR});let X=v(Q).data,W=X["graphql.operation.type"],K=X["graphql.operation.name"];if(J.useOperationNameForRootSpan&&W){let z=D0(Q),H=v(z).data[qJ]||[],B=K?`${W} ${K}`:`${W}`;if(Array.isArray(H))H.push(B),z.setAttribute(qJ,H);else if(typeof H==="string")z.setAttribute(qJ,[H,B]);else z.setAttribute(qJ,B);if(!v(z).data["original-description"])z.setAttribute("original-description",v(z).description);z.updateName(`${v(z).data["original-description"]} (${t_0(H)})`)}}}}),_$=P(r_0)});var sr=j((nr)=>{Object.defineProperty(nr,"__esModule",{value:!0});nr.EVENT_LISTENERS_SET=void 0;nr.EVENT_LISTENERS_SET=Symbol("opentelemetry.instrumentation.kafkajs.eventListenersSet")});var er=j((rr)=>{Object.defineProperty(rr,"__esModule",{value:!0});rr.bufferTextMapGetter=void 0;rr.bufferTextMapGetter={get(Z,J){if(!Z)return;let Q=Object.keys(Z);for(let $ of Q)if($===J||$.toLowerCase()===J)return Z[$]?.toString();return},keys(Z){return Z?Object.keys(Z):[]}}});var Qt=j((Zt)=>{Object.defineProperty(Zt,"__esModule",{value:!0});Zt.METRIC_MESSAGING_PROCESS_DURATION=Zt.METRIC_MESSAGING_CLIENT_SENT_MESSAGES=Zt.METRIC_MESSAGING_CLIENT_OPERATION_DURATION=Zt.METRIC_MESSAGING_CLIENT_CONSUMED_MESSAGES=Zt.MESSAGING_SYSTEM_VALUE_KAFKA=Zt.MESSAGING_OPERATION_TYPE_VALUE_SEND=Zt.MESSAGING_OPERATION_TYPE_VALUE_RECEIVE=Zt.MESSAGING_OPERATION_TYPE_VALUE_PROCESS=Zt.ATTR_MESSAGING_SYSTEM=Zt.ATTR_MESSAGING_OPERATION_TYPE=Zt.ATTR_MESSAGING_OPERATION_NAME=Zt.ATTR_MESSAGING_KAFKA_OFFSET=Zt.ATTR_MESSAGING_KAFKA_MESSAGE_TOMBSTONE=Zt.ATTR_MESSAGING_KAFKA_MESSAGE_KEY=Zt.ATTR_MESSAGING_DESTINATION_PARTITION_ID=Zt.ATTR_MESSAGING_DESTINATION_NAME=Zt.ATTR_MESSAGING_BATCH_MESSAGE_COUNT=void 0;Zt.ATTR_MESSAGING_BATCH_MESSAGE_COUNT="messaging.batch.message_count";Zt.ATTR_MESSAGING_DESTINATION_NAME="messaging.destination.name";Zt.ATTR_MESSAGING_DESTINATION_PARTITION_ID="messaging.destination.partition.id";Zt.ATTR_MESSAGING_KAFKA_MESSAGE_KEY="messaging.kafka.message.key";Zt.ATTR_MESSAGING_KAFKA_MESSAGE_TOMBSTONE="messaging.kafka.message.tombstone";Zt.ATTR_MESSAGING_KAFKA_OFFSET="messaging.kafka.offset";Zt.ATTR_MESSAGING_OPERATION_NAME="messaging.operation.name";Zt.ATTR_MESSAGING_OPERATION_TYPE="messaging.operation.type";Zt.ATTR_MESSAGING_SYSTEM="messaging.system";Zt.MESSAGING_OPERATION_TYPE_VALUE_PROCESS="process";Zt.MESSAGING_OPERATION_TYPE_VALUE_RECEIVE="receive";Zt.MESSAGING_OPERATION_TYPE_VALUE_SEND="send";Zt.MESSAGING_SYSTEM_VALUE_KAFKA="kafka";Zt.METRIC_MESSAGING_CLIENT_CONSUMED_MESSAGES="messaging.client.consumed.messages";Zt.METRIC_MESSAGING_CLIENT_OPERATION_DURATION="messaging.client.operation.duration";Zt.METRIC_MESSAGING_CLIENT_SENT_MESSAGES="messaging.client.sent.messages";Zt.METRIC_MESSAGING_PROCESS_DURATION="messaging.process.duration"});var Xt=j(($t)=>{Object.defineProperty($t,"__esModule",{value:!0});$t.PACKAGE_NAME=$t.PACKAGE_VERSION=void 0;$t.PACKAGE_VERSION="0.22.0";$t.PACKAGE_NAME="@opentelemetry/instrumentation-kafkajs"});var Ut=j((Vt)=>{Object.defineProperty(Vt,"__esModule",{value:!0});Vt.KafkaJsInstrumentation=void 0;var w0=I(),Y9=n(),yJ=Y0(),Wt=sr(),Kt=er(),c=Qt(),zt=Xt();function Bz(Z,J,Q){return($)=>{Z.add(J,{...Q,...$?{[yJ.ATTR_ERROR_TYPE]:$}:{}})}}function Gt(Z,J,Q){return($)=>{Z.record((Date.now()-J)/1000,{...Q,...$?{[yJ.ATTR_ERROR_TYPE]:$}:{}})}}var Ht=[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10];class Bt extends Y9.InstrumentationBase{constructor(Z={}){super(zt.PACKAGE_NAME,zt.PACKAGE_VERSION,Z)}_updateMetricInstruments(){this._clientDuration=this.meter.createHistogram(c.METRIC_MESSAGING_CLIENT_OPERATION_DURATION,{advice:{explicitBucketBoundaries:Ht}}),this._sentMessages=this.meter.createCounter(c.METRIC_MESSAGING_CLIENT_SENT_MESSAGES),this._consumedMessages=this.meter.createCounter(c.METRIC_MESSAGING_CLIENT_CONSUMED_MESSAGES),this._processDuration=this.meter.createHistogram(c.METRIC_MESSAGING_PROCESS_DURATION,{advice:{explicitBucketBoundaries:Ht}})}init(){let Z=(Q)=>{if((0,Y9.isWrapped)(Q?.Kafka?.prototype.producer))this._unwrap(Q.Kafka.prototype,"producer");if((0,Y9.isWrapped)(Q?.Kafka?.prototype.consumer))this._unwrap(Q.Kafka.prototype,"consumer")};return new Y9.InstrumentationNodeModuleDefinition("kafkajs",[">=0.3.0 <3"],(Q)=>{return Z(Q),this._wrap(Q?.Kafka?.prototype,"producer",this._getProducerPatch()),this._wrap(Q?.Kafka?.prototype,"consumer",this._getConsumerPatch()),Q},Z)}_getConsumerPatch(){let Z=this;return(J)=>{return function(...$){let Y=J.apply(this,$);if((0,Y9.isWrapped)(Y.run))Z._unwrap(Y,"run");return Z._wrap(Y,"run",Z._getConsumerRunPatch()),Z._setKafkaEventListeners(Y),Y}}}_setKafkaEventListeners(Z){if(Z[Wt.EVENT_LISTENERS_SET])return;if(Z.events?.REQUEST)Z.on(Z.events.REQUEST,this._recordClientDurationMetric.bind(this));Z[Wt.EVENT_LISTENERS_SET]=!0}_recordClientDurationMetric(Z){let[J,Q]=Z.payload.broker.split(":");this._clientDuration.record(Z.payload.duration/1000,{[c.ATTR_MESSAGING_SYSTEM]:c.MESSAGING_SYSTEM_VALUE_KAFKA,[c.ATTR_MESSAGING_OPERATION_NAME]:`${Z.payload.apiName}`,[yJ.ATTR_SERVER_ADDRESS]:J,[yJ.ATTR_SERVER_PORT]:Number.parseInt(Q,10)})}_getProducerPatch(){let Z=this;return(J)=>{return function(...$){let Y=J.apply(this,$);if((0,Y9.isWrapped)(Y.sendBatch))Z._unwrap(Y,"sendBatch");if(Z._wrap(Y,"sendBatch",Z._getSendBatchPatch()),(0,Y9.isWrapped)(Y.send))Z._unwrap(Y,"send");if(Z._wrap(Y,"send",Z._getSendPatch()),(0,Y9.isWrapped)(Y.transaction))Z._unwrap(Y,"transaction");return Z._wrap(Y,"transaction",Z._getProducerTransactionPatch()),Z._setKafkaEventListeners(Y),Y}}}_getConsumerRunPatch(){let Z=this;return(J)=>{return function(...$){let Y=$[0];if(Y?.eachMessage){if((0,Y9.isWrapped)(Y.eachMessage))Z._unwrap(Y,"eachMessage");Z._wrap(Y,"eachMessage",Z._getConsumerEachMessagePatch())}if(Y?.eachBatch){if((0,Y9.isWrapped)(Y.eachBatch))Z._unwrap(Y,"eachBatch");Z._wrap(Y,"eachBatch",Z._getConsumerEachBatchPatch())}return J.call(this,Y)}}}_getConsumerEachMessagePatch(){let Z=this;return(J)=>{return function(...$){let Y=$[0],X=w0.propagation.extract(w0.ROOT_CONTEXT,Y.message.headers,Kt.bufferTextMapGetter),W=Z._startConsumerSpan({topic:Y.topic,message:Y.message,operationType:c.MESSAGING_OPERATION_TYPE_VALUE_PROCESS,ctx:X,attributes:{[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:String(Y.partition)}}),K=[Gt(Z._processDuration,Date.now(),{[c.ATTR_MESSAGING_SYSTEM]:c.MESSAGING_SYSTEM_VALUE_KAFKA,[c.ATTR_MESSAGING_OPERATION_NAME]:"process",[c.ATTR_MESSAGING_DESTINATION_NAME]:Y.topic,[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:String(Y.partition)}),Bz(Z._consumedMessages,1,{[c.ATTR_MESSAGING_SYSTEM]:c.MESSAGING_SYSTEM_VALUE_KAFKA,[c.ATTR_MESSAGING_OPERATION_NAME]:"process",[c.ATTR_MESSAGING_DESTINATION_NAME]:Y.topic,[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:String(Y.partition)})],z=w0.context.with(w0.trace.setSpan(X,W),()=>{return J.apply(this,$)});return Z._endSpansOnPromise([W],K,z)}}}_getConsumerEachBatchPatch(){return(Z)=>{let J=this;return function(...$){let Y=$[0],X=J._startConsumerSpan({topic:Y.batch.topic,message:void 0,operationType:c.MESSAGING_OPERATION_TYPE_VALUE_RECEIVE,ctx:w0.ROOT_CONTEXT,attributes:{[c.ATTR_MESSAGING_BATCH_MESSAGE_COUNT]:Y.batch.messages.length,[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:String(Y.batch.partition)}});return w0.context.with(w0.trace.setSpan(w0.context.active(),X),()=>{let W=Date.now(),K=[],z=[Bz(J._consumedMessages,Y.batch.messages.length,{[c.ATTR_MESSAGING_SYSTEM]:c.MESSAGING_SYSTEM_VALUE_KAFKA,[c.ATTR_MESSAGING_OPERATION_NAME]:"process",[c.ATTR_MESSAGING_DESTINATION_NAME]:Y.batch.topic,[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:String(Y.batch.partition)})];Y.batch.messages.forEach((H)=>{let B=w0.propagation.extract(w0.ROOT_CONTEXT,H.headers,Kt.bufferTextMapGetter),V=w0.trace.getSpan(B)?.spanContext(),F;if(V)F={context:V};K.push(J._startConsumerSpan({topic:Y.batch.topic,message:H,operationType:c.MESSAGING_OPERATION_TYPE_VALUE_PROCESS,link:F,attributes:{[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:String(Y.batch.partition)}})),z.push(Gt(J._processDuration,W,{[c.ATTR_MESSAGING_SYSTEM]:c.MESSAGING_SYSTEM_VALUE_KAFKA,[c.ATTR_MESSAGING_OPERATION_NAME]:"process",[c.ATTR_MESSAGING_DESTINATION_NAME]:Y.batch.topic,[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:String(Y.batch.partition)}))});let G=Z.apply(this,$);return K.unshift(X),J._endSpansOnPromise(K,z,G)})}}}_getProducerTransactionPatch(){let Z=this;return(J)=>{return function(...$){let Y=Z.tracer.startSpan("transaction"),X=J.apply(this,$);return X.then((W)=>{let K=W.send;W.send=function(...V){return w0.context.with(w0.trace.setSpan(w0.context.active(),Y),()=>{return Z._getSendPatch()(K).apply(this,V).catch((U)=>{throw Y.setStatus({code:w0.SpanStatusCode.ERROR,message:U?.message}),Y.recordException(U),U})})};let z=W.sendBatch;W.sendBatch=function(...V){return w0.context.with(w0.trace.setSpan(w0.context.active(),Y),()=>{return Z._getSendBatchPatch()(z).apply(this,V).catch((U)=>{throw Y.setStatus({code:w0.SpanStatusCode.ERROR,message:U?.message}),Y.recordException(U),U})})};let G=W.commit;W.commit=function(...V){let F=G.apply(this,V).then(()=>{Y.setStatus({code:w0.SpanStatusCode.OK})});return Z._endSpansOnPromise([Y],[],F)};let H=W.abort;W.abort=function(...V){let F=H.apply(this,V);return Z._endSpansOnPromise([Y],[],F)}}).catch((W)=>{Y.setStatus({code:w0.SpanStatusCode.ERROR,message:W?.message}),Y.recordException(W),Y.end()}),X}}}_getSendBatchPatch(){let Z=this;return(J)=>{return function(...$){let X=$[0].topicMessages||[],W=[],K=[];X.forEach((G)=>{G.messages.forEach((H)=>{W.push(Z._startProducerSpan(G.topic,H)),K.push(Bz(Z._sentMessages,1,{[c.ATTR_MESSAGING_SYSTEM]:c.MESSAGING_SYSTEM_VALUE_KAFKA,[c.ATTR_MESSAGING_OPERATION_NAME]:"send",[c.ATTR_MESSAGING_DESTINATION_NAME]:G.topic,...H.partition!==void 0?{[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:String(H.partition)}:{}}))})});let z=J.apply(this,$);return Z._endSpansOnPromise(W,K,z)}}}_getSendPatch(){let Z=this;return(J)=>{return function(...$){let Y=$[0],X=Y.messages.map((z)=>{return Z._startProducerSpan(Y.topic,z)}),W=Y.messages.map((z)=>Bz(Z._sentMessages,1,{[c.ATTR_MESSAGING_SYSTEM]:c.MESSAGING_SYSTEM_VALUE_KAFKA,[c.ATTR_MESSAGING_OPERATION_NAME]:"send",[c.ATTR_MESSAGING_DESTINATION_NAME]:Y.topic,...z.partition!==void 0?{[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:String(z.partition)}:{}})),K=J.apply(this,$);return Z._endSpansOnPromise(X,W,K)}}}_endSpansOnPromise(Z,J,Q){return Promise.resolve(Q).then(($)=>{return J.forEach((Y)=>Y()),$}).catch(($)=>{let Y,X=yJ.ERROR_TYPE_VALUE_OTHER;if(typeof $==="string"||$===void 0)Y=$;else if(typeof $==="object"&&Object.prototype.hasOwnProperty.call($,"message"))Y=$.message,X=$.constructor.name;throw J.forEach((W)=>W(X)),Z.forEach((W)=>{W.setAttribute(yJ.ATTR_ERROR_TYPE,X),W.setStatus({code:w0.SpanStatusCode.ERROR,message:Y})}),$}).finally(()=>{Z.forEach(($)=>$.end())})}_startConsumerSpan({topic:Z,message:J,operationType:Q,ctx:$,link:Y,attributes:X}){let W=Q===c.MESSAGING_OPERATION_TYPE_VALUE_RECEIVE?"poll":Q,K=this.tracer.startSpan(`${W} ${Z}`,{kind:Q===c.MESSAGING_OPERATION_TYPE_VALUE_RECEIVE?w0.SpanKind.CLIENT:w0.SpanKind.CONSUMER,attributes:{...X,[c.ATTR_MESSAGING_SYSTEM]:c.MESSAGING_SYSTEM_VALUE_KAFKA,[c.ATTR_MESSAGING_DESTINATION_NAME]:Z,[c.ATTR_MESSAGING_OPERATION_TYPE]:Q,[c.ATTR_MESSAGING_OPERATION_NAME]:W,[c.ATTR_MESSAGING_KAFKA_MESSAGE_KEY]:J?.key?String(J.key):void 0,[c.ATTR_MESSAGING_KAFKA_MESSAGE_TOMBSTONE]:J?.key&&J.value===null?!0:void 0,[c.ATTR_MESSAGING_KAFKA_OFFSET]:J?.offset},links:Y?[Y]:[]},$),{consumerHook:z}=this.getConfig();if(z&&J)(0,Y9.safeExecuteInTheMiddle)(()=>z(K,{topic:Z,message:J}),(G)=>{if(G)this._diag.error("consumerHook error",G)},!0);return K}_startProducerSpan(Z,J){let Q=this.tracer.startSpan(`send ${Z}`,{kind:w0.SpanKind.PRODUCER,attributes:{[c.ATTR_MESSAGING_SYSTEM]:c.MESSAGING_SYSTEM_VALUE_KAFKA,[c.ATTR_MESSAGING_DESTINATION_NAME]:Z,[c.ATTR_MESSAGING_KAFKA_MESSAGE_KEY]:J.key?String(J.key):void 0,[c.ATTR_MESSAGING_KAFKA_MESSAGE_TOMBSTONE]:J.key&&J.value===null?!0:void 0,[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:J.partition!==void 0?String(J.partition):void 0,[c.ATTR_MESSAGING_OPERATION_NAME]:"send",[c.ATTR_MESSAGING_OPERATION_TYPE]:c.MESSAGING_OPERATION_TYPE_VALUE_SEND}});J.headers=J.headers??{},w0.propagation.inject(w0.trace.setSpan(w0.context.active(),Q),J.headers);let{producerHook:$}=this.getConfig();if($)(0,Y9.safeExecuteInTheMiddle)(()=>$(Q,{topic:Z,message:J}),(Y)=>{if(Y)this._diag.error("producerHook error",Y)},!0);return Q}}Vt.KafkaJsInstrumentation=Bt});var qt=j((Lj)=>{Object.defineProperty(Lj,"__esModule",{value:!0});Lj.KafkaJsInstrumentation=void 0;var wh0=Ut();Object.defineProperty(Lj,"KafkaJsInstrumentation",{enumerable:!0,get:function(){return wh0.KafkaJsInstrumentation}})});var wt,jt="Kafka",Dt,Dh0=()=>{return{name:jt,setupOnce(){Dt()}}},h$;var Cj=q(()=>{N();X0();wt=A(qt(),1),Dt=y(jt,()=>new wt.KafkaJsInstrumentation({consumerHook(Z){q0(Z,"auto.kafkajs.otel.consumer")},producerHook(Z){q0(Z,"auto.kafkajs.otel.producer")}})),h$=P(Dh0)});var Ct=j((Ot)=>{Object.defineProperty(Ot,"__esModule",{value:!0});Ot.PACKAGE_NAME=Ot.PACKAGE_VERSION=void 0;Ot.PACKAGE_VERSION="0.57.0";Ot.PACKAGE_NAME="@opentelemetry/instrumentation-lru-memoizer"});var It=j((Nt)=>{Object.defineProperty(Nt,"__esModule",{value:!0});Nt.LruMemoizerInstrumentation=void 0;var Pt=I(),Mt=n(),Rt=Ct();class kt extends Mt.InstrumentationBase{constructor(Z={}){super(Rt.PACKAGE_NAME,Rt.PACKAGE_VERSION,Z)}init(){return[new Mt.InstrumentationNodeModuleDefinition("lru-memoizer",[">=1.3 <3"],(Z)=>{let J=function(){let Q=Z.apply(this,arguments);return function(){let $=[...arguments],Y=$.pop(),X=typeof Y==="function"?Pt.context.bind(Pt.context.active(),Y):Y;return $.push(X),Q.apply(this,$)}};return J.sync=Z.sync,J},void 0)]}}Nt.LruMemoizerInstrumentation=kt});var Tt=j((Pj)=>{Object.defineProperty(Pj,"__esModule",{value:!0});Pj.LruMemoizerInstrumentation=void 0;var Lh0=It();Object.defineProperty(Pj,"LruMemoizerInstrumentation",{enumerable:!0,get:function(){return Lh0.LruMemoizerInstrumentation}})});var Et,ft="LruMemoizer",yt,Ph0=()=>{return{name:ft,setupOnce(){yt()}}},b$;var Mj=q(()=>{N();X0();Et=A(Tt(),1),yt=y(ft,()=>new Et.LruMemoizerInstrumentation),b$=P(Ph0)});var ht=j((St)=>{Object.defineProperty(St,"__esModule",{value:!0});St.METRIC_DB_CLIENT_CONNECTIONS_USAGE=St.DB_SYSTEM_VALUE_MONGODB=St.DB_SYSTEM_NAME_VALUE_MONGODB=St.ATTR_NET_PEER_PORT=St.ATTR_NET_PEER_NAME=St.ATTR_DB_SYSTEM=St.ATTR_DB_STATEMENT=St.ATTR_DB_OPERATION=St.ATTR_DB_NAME=St.ATTR_DB_MONGODB_COLLECTION=St.ATTR_DB_CONNECTION_STRING=void 0;St.ATTR_DB_CONNECTION_STRING="db.connection_string";St.ATTR_DB_MONGODB_COLLECTION="db.mongodb.collection";St.ATTR_DB_NAME="db.name";St.ATTR_DB_OPERATION="db.operation";St.ATTR_DB_STATEMENT="db.statement";St.ATTR_DB_SYSTEM="db.system";St.ATTR_NET_PEER_NAME="net.peer.name";St.ATTR_NET_PEER_PORT="net.peer.port";St.DB_SYSTEM_NAME_VALUE_MONGODB="mongodb";St.DB_SYSTEM_VALUE_MONGODB="mongodb";St.METRIC_DB_CLIENT_CONNECTIONS_USAGE="db.client.connections.usage"});var vt=j((bt)=>{Object.defineProperty(bt,"__esModule",{value:!0});bt.MongodbCommandType=void 0;var Sh0;(function(Z){Z.CREATE_INDEXES="createIndexes",Z.FIND_AND_MODIFY="findAndModify",Z.IS_MASTER="isMaster",Z.COUNT="count",Z.AGGREGATE="aggregate",Z.UNKNOWN="unknown"})(Sh0=bt.MongodbCommandType||(bt.MongodbCommandType={}))});var dt=j((xt)=>{Object.defineProperty(xt,"__esModule",{value:!0});xt.PACKAGE_NAME=xt.PACKAGE_VERSION=void 0;xt.PACKAGE_VERSION="0.66.0";xt.PACKAGE_NAME="@opentelemetry/instrumentation-mongodb"});var pt=j((ut)=>{Object.defineProperty(ut,"__esModule",{value:!0});ut.MongoDBInstrumentation=void 0;var v0=I(),W0=n(),r8=Y0(),y6=ht(),I5=vt(),ct=dt(),mt={requireParentSpan:!0};class kj extends W0.InstrumentationBase{_netSemconvStability;_dbSemconvStability;constructor(Z={}){super(ct.PACKAGE_NAME,ct.PACKAGE_VERSION,{...mt,...Z});this._setSemconvStabilityFromEnv()}_setSemconvStabilityFromEnv(){this._netSemconvStability=(0,W0.semconvStabilityFromStr)("http",process.env.OTEL_SEMCONV_STABILITY_OPT_IN),this._dbSemconvStability=(0,W0.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}setConfig(Z={}){super.setConfig({...mt,...Z})}_updateMetricInstruments(){this._connectionsUsage=this.meter.createUpDownCounter(y6.METRIC_DB_CLIENT_CONNECTIONS_USAGE,{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}_connCountAdd(Z,J,Q){this._connectionsUsage?.add(Z,{"pool.name":J,state:Q})}init(){let{v3PatchConnection:Z,v3UnpatchConnection:J}=this._getV3ConnectionPatches(),{v4PatchConnect:Q,v4UnpatchConnect:$}=this._getV4ConnectPatches(),{v4PatchConnectionCallback:Y,v4PatchConnectionPromise:X,v4UnpatchConnection:W}=this._getV4ConnectionPatches(),{v4PatchConnectionPool:K,v4UnpatchConnectionPool:z}=this._getV4ConnectionPoolPatches(),{v4PatchSessions:G,v4UnpatchSessions:H}=this._getV4SessionsPatches();return[new W0.InstrumentationNodeModuleDefinition("mongodb",[">=3.3.0 <4"],void 0,void 0,[new W0.InstrumentationNodeModuleFile("mongodb/lib/core/wireprotocol/index.js",[">=3.3.0 <4"],Z,J)]),new W0.InstrumentationNodeModuleDefinition("mongodb",[">=4.0.0 <8"],void 0,void 0,[new W0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection.js",[">=4.0.0 <6.4"],Y,W),new W0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection.js",[">=6.4.0 <8"],X,W),new W0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection_pool.js",[">=4.0.0 <6.4"],K,z),new W0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connect.js",[">=4.0.0 <8"],Q,$),new W0.InstrumentationNodeModuleFile("mongodb/lib/sessions.js",[">=4.0.0 <8"],G,H)])]}_getV3ConnectionPatches(){return{v3PatchConnection:(Z)=>{if((0,W0.isWrapped)(Z.insert))this._unwrap(Z,"insert");if(this._wrap(Z,"insert",this._getV3PatchOperation("insert")),(0,W0.isWrapped)(Z.remove))this._unwrap(Z,"remove");if(this._wrap(Z,"remove",this._getV3PatchOperation("remove")),(0,W0.isWrapped)(Z.update))this._unwrap(Z,"update");if(this._wrap(Z,"update",this._getV3PatchOperation("update")),(0,W0.isWrapped)(Z.command))this._unwrap(Z,"command");if(this._wrap(Z,"command",this._getV3PatchCommand()),(0,W0.isWrapped)(Z.query))this._unwrap(Z,"query");if(this._wrap(Z,"query",this._getV3PatchFind()),(0,W0.isWrapped)(Z.getMore))this._unwrap(Z,"getMore");return this._wrap(Z,"getMore",this._getV3PatchCursor()),Z},v3UnpatchConnection:(Z)=>{if(Z===void 0)return;this._unwrap(Z,"insert"),this._unwrap(Z,"remove"),this._unwrap(Z,"update"),this._unwrap(Z,"command"),this._unwrap(Z,"query"),this._unwrap(Z,"getMore")}}}_getV4SessionsPatches(){return{v4PatchSessions:(Z)=>{if((0,W0.isWrapped)(Z.acquire))this._unwrap(Z,"acquire");if(this._wrap(Z.ServerSessionPool.prototype,"acquire",this._getV4AcquireCommand()),(0,W0.isWrapped)(Z.release))this._unwrap(Z,"release");return this._wrap(Z.ServerSessionPool.prototype,"release",this._getV4ReleaseCommand()),Z},v4UnpatchSessions:(Z)=>{if(Z===void 0)return;if((0,W0.isWrapped)(Z.acquire))this._unwrap(Z,"acquire");if((0,W0.isWrapped)(Z.release))this._unwrap(Z,"release")}}}_getV4AcquireCommand(){let Z=this;return(J)=>{return function(){let $=this.sessions.length,Y=J.call(this),X=this.sessions.length;if($===X)Z._connCountAdd(1,Z._poolName,"used");else if($-1===X)Z._connCountAdd(-1,Z._poolName,"idle"),Z._connCountAdd(1,Z._poolName,"used");return Y}}}_getV4ReleaseCommand(){let Z=this;return(J)=>{return function($){let Y=J.call(this,$);return Z._connCountAdd(-1,Z._poolName,"used"),Z._connCountAdd(1,Z._poolName,"idle"),Y}}}_getV4ConnectionPoolPatches(){return{v4PatchConnectionPool:(Z)=>{let J=Z.ConnectionPool.prototype;if((0,W0.isWrapped)(J.checkOut))this._unwrap(J,"checkOut");return this._wrap(J,"checkOut",this._getV4ConnectionPoolCheckOut()),Z},v4UnpatchConnectionPool:(Z)=>{if(Z===void 0)return;this._unwrap(Z.ConnectionPool.prototype,"checkOut")}}}_getV4ConnectPatches(){return{v4PatchConnect:(Z)=>{if((0,W0.isWrapped)(Z.connect))this._unwrap(Z,"connect");return this._wrap(Z,"connect",this._getV4ConnectCommand()),Z},v4UnpatchConnect:(Z)=>{if(Z===void 0)return;this._unwrap(Z,"connect")}}}_getV4ConnectionPoolCheckOut(){return(Z)=>{return function(Q){let $=v0.context.bind(v0.context.active(),Q);return Z.call(this,$)}}}_getV4ConnectCommand(){let Z=this;return(J)=>{return function($,Y){if(J.length===1){let W=J.call(this,$);if(W&&typeof W.then==="function")W.then(()=>Z.setPoolName($),()=>{return});return W}let X=function(W,K){if(W||!K){Y(W,K);return}Z.setPoolName($),Y(W,K)};return J.call(this,$,X)}}}_getV4ConnectionPatches(){return{v4PatchConnectionCallback:(Z)=>{if((0,W0.isWrapped)(Z.Connection.prototype.command))this._unwrap(Z.Connection.prototype,"command");return this._wrap(Z.Connection.prototype,"command",this._getV4PatchCommandCallback()),Z},v4PatchConnectionPromise:(Z)=>{if((0,W0.isWrapped)(Z.Connection.prototype.command))this._unwrap(Z.Connection.prototype,"command");return this._wrap(Z.Connection.prototype,"command",this._getV4PatchCommandPromise()),Z},v4UnpatchConnection:(Z)=>{if(Z===void 0)return;this._unwrap(Z.Connection.prototype,"command")}}}_getV3PatchOperation(Z){let J=this;return(Q)=>{return function(Y,X,W,K,z){let G=v0.trace.getSpan(v0.context.active()),H=J._checkSkipInstrumentation(G),B=typeof K==="function"?K:z;if(H||typeof B!=="function"||typeof W!=="object")if(typeof K==="function")return Q.call(this,Y,X,W,K);else return Q.call(this,Y,X,W,K,z);let V=J._getV3SpanAttributes(X,Y,W[0],Z),F=J._spanNameFromAttrs(V),U=J.tracer.startSpan(F,{kind:v0.SpanKind.CLIENT,attributes:V}),w=J._patchEnd(U,B);if(typeof K==="function")return Q.call(this,Y,X,W,w);else return Q.call(this,Y,X,W,K,w)}}}_getV3PatchCommand(){let Z=this;return(J)=>{return function($,Y,X,W,K){let z=v0.trace.getSpan(v0.context.active()),G=Z._checkSkipInstrumentation(z),H=typeof W==="function"?W:K;if(G||typeof H!=="function"||typeof X!=="object")if(typeof W==="function")return J.call(this,$,Y,X,W);else return J.call(this,$,Y,X,W,K);let B=kj._getCommandType(X),V=B===I5.MongodbCommandType.UNKNOWN?void 0:B,F=Z._getV3SpanAttributes(Y,$,X,V),U=Z._spanNameFromAttrs(F),w=Z.tracer.startSpan(U,{kind:v0.SpanKind.CLIENT,attributes:F}),D=Z._patchEnd(w,H);if(typeof W==="function")return J.call(this,$,Y,X,D);else return J.call(this,$,Y,X,W,D)}}}_getV4PatchCommandCallback(){let Z=this;return(J)=>{return function($,Y,X,W){let K=v0.trace.getSpan(v0.context.active()),z=Z._checkSkipInstrumentation(K),G=W,H=Object.keys(Y)[0];if(typeof Y!=="object"||Y.ismaster||Y.hello)return J.call(this,$,Y,X,W);let B=void 0;if(!z){let F=Z._getV4SpanAttributes(this,$,Y,H),U=Z._spanNameFromAttrs(F);B=Z.tracer.startSpan(U,{kind:v0.SpanKind.CLIENT,attributes:F})}let V=Z._patchEnd(B,G,this.id,H);return J.call(this,$,Y,X,V)}}}_getV4PatchCommandPromise(){let Z=this;return(J)=>{return function(...$){let[Y,X]=$,W=v0.trace.getSpan(v0.context.active()),K=Z._checkSkipInstrumentation(W),z=Object.keys(X)[0],G=()=>{return};if(typeof X!=="object"||X.ismaster||X.hello)return J.apply(this,$);let H=void 0;if(!K){let F=Z._getV4SpanAttributes(this,Y,X,z),U=Z._spanNameFromAttrs(F);H=Z.tracer.startSpan(U,{kind:v0.SpanKind.CLIENT,attributes:F})}let B=Z._patchEnd(H,G,this.id,z),V=J.apply(this,$);return V.then((F)=>B(null,F),(F)=>B(F)),V}}}_getV3PatchFind(){let Z=this;return(J)=>{return function($,Y,X,W,K,z){let G=v0.trace.getSpan(v0.context.active()),H=Z._checkSkipInstrumentation(G),B=typeof K==="function"?K:z;if(H||typeof B!=="function"||typeof X!=="object")if(typeof K==="function")return J.call(this,$,Y,X,W,K);else return J.call(this,$,Y,X,W,K,z);let V=Z._getV3SpanAttributes(Y,$,X,"find"),F=Z._spanNameFromAttrs(V),U=Z.tracer.startSpan(F,{kind:v0.SpanKind.CLIENT,attributes:V}),w=Z._patchEnd(U,B);if(typeof K==="function")return J.call(this,$,Y,X,W,w);else return J.call(this,$,Y,X,W,K,w)}}}_getV3PatchCursor(){let Z=this;return(J)=>{return function($,Y,X,W,K,z){let G=v0.trace.getSpan(v0.context.active()),H=Z._checkSkipInstrumentation(G),B=typeof K==="function"?K:z;if(H||typeof B!=="function")if(typeof K==="function")return J.call(this,$,Y,X,W,K);else return J.call(this,$,Y,X,W,K,z);let V=Z._getV3SpanAttributes(Y,$,X.cmd,"getMore"),F=Z._spanNameFromAttrs(V),U=Z.tracer.startSpan(F,{kind:v0.SpanKind.CLIENT,attributes:V}),w=Z._patchEnd(U,B);if(typeof K==="function")return J.call(this,$,Y,X,W,w);else return J.call(this,$,Y,X,W,K,w)}}}static _getCommandType(Z){if(Z.createIndexes!==void 0)return I5.MongodbCommandType.CREATE_INDEXES;else if(Z.findandmodify!==void 0)return I5.MongodbCommandType.FIND_AND_MODIFY;else if(Z.ismaster!==void 0)return I5.MongodbCommandType.IS_MASTER;else if(Z.count!==void 0)return I5.MongodbCommandType.COUNT;else if(Z.aggregate!==void 0)return I5.MongodbCommandType.AGGREGATE;else return I5.MongodbCommandType.UNKNOWN}_getV4SpanAttributes(Z,J,Q,$){let Y,X;if(Z){let K=typeof Z.address==="string"?Z.address.split(":"):"";if(K.length===2)Y=K[0],X=K[1]}let W;if(Q?.documents&&Q.documents[0])W=Q.documents[0];else if(Q?.cursors)W=Q.cursors;else W=Q;return this._getSpanAttributes(J.db,J.collection,Y,X,W,$)}_getV3SpanAttributes(Z,J,Q,$){let Y,X;if(J&&J.s){if(Y=J.s.options?.host??J.s.host,X=(J.s.options?.port??J.s.port)?.toString(),Y==null||X==null){let G=J.description?.address;if(G){let H=G.split(":");Y=H[0],X=H[1]}}}let[W,K]=Z.toString().split("."),z=Q?.query??Q?.q??Q;return this._getSpanAttributes(W,K,Y,X,z,$)}_getSpanAttributes(Z,J,Q,$,Y,X){let W={};if(this._dbSemconvStability&W0.SemconvStability.OLD)W[y6.ATTR_DB_SYSTEM]=y6.DB_SYSTEM_VALUE_MONGODB,W[y6.ATTR_DB_NAME]=Z,W[y6.ATTR_DB_MONGODB_COLLECTION]=J,W[y6.ATTR_DB_OPERATION]=X,W[y6.ATTR_DB_CONNECTION_STRING]=`mongodb://${Q}:${$}/${Z}`;if(this._dbSemconvStability&W0.SemconvStability.STABLE)W[r8.ATTR_DB_SYSTEM_NAME]=y6.DB_SYSTEM_NAME_VALUE_MONGODB,W[r8.ATTR_DB_NAMESPACE]=Z,W[r8.ATTR_DB_OPERATION_NAME]=X,W[r8.ATTR_DB_COLLECTION_NAME]=J;if(Q&&$){if(this._netSemconvStability&W0.SemconvStability.OLD)W[y6.ATTR_NET_PEER_NAME]=Q;if(this._netSemconvStability&W0.SemconvStability.STABLE)W[r8.ATTR_SERVER_ADDRESS]=Q;let K=parseInt($,10);if(!isNaN(K)){if(this._netSemconvStability&W0.SemconvStability.OLD)W[y6.ATTR_NET_PEER_PORT]=K;if(this._netSemconvStability&W0.SemconvStability.STABLE)W[r8.ATTR_SERVER_PORT]=K}}if(Y){let{dbStatementSerializer:K}=this.getConfig(),z=typeof K==="function"?K:this._defaultDbStatementSerializer.bind(this);(0,W0.safeExecuteInTheMiddle)(()=>{let G=z(Y);if(this._dbSemconvStability&W0.SemconvStability.OLD)W[y6.ATTR_DB_STATEMENT]=G;if(this._dbSemconvStability&W0.SemconvStability.STABLE)W[r8.ATTR_DB_QUERY_TEXT]=G},(G)=>{if(G)this._diag.error("Error running dbStatementSerializer hook",G)},!0)}return W}_spanNameFromAttrs(Z){let J;if(this._dbSemconvStability&W0.SemconvStability.STABLE)J=[Z[r8.ATTR_DB_OPERATION_NAME],Z[r8.ATTR_DB_COLLECTION_NAME]].filter((Q)=>Q).join(" ")||y6.DB_SYSTEM_NAME_VALUE_MONGODB;else J=`mongodb.${Z[y6.ATTR_DB_OPERATION]||"command"}`;return J}_getDefaultDbStatementReplacer(){let Z=new WeakSet;return(J,Q)=>{if(typeof Q!=="object"||!Q)return"?";if(Z.has(Q))return"[Circular]";return Z.add(Q),Q}}_defaultDbStatementSerializer(Z){let{enhancedDatabaseReporting:J}=this.getConfig();if(J)return JSON.stringify(Z);return JSON.stringify(Z,this._getDefaultDbStatementReplacer())}_handleExecutionResult(Z,J){let{responseHook:Q}=this.getConfig();if(typeof Q==="function")(0,W0.safeExecuteInTheMiddle)(()=>{Q(Z,{data:J})},($)=>{if($)this._diag.error("Error running response hook",$)},!0)}_patchEnd(Z,J,Q,$){let Y=v0.context.active(),X=this,W=!1;return function(...z){if(!W){W=!0;let G=z[0];if(Z){if(G instanceof Error)Z.setStatus({code:v0.SpanStatusCode.ERROR,message:G.message});else{let H=z[1];X._handleExecutionResult(Z,H)}Z.end()}if($==="endSessions")X._connCountAdd(-1,X._poolName,"idle")}return v0.context.with(Y,()=>{return J.apply(this,z)})}}setPoolName(Z){let J=Z.hostAddress?.host,Q=Z.hostAddress?.port,$=Z.dbName,Y=`mongodb://${J}:${Q}/${$}`;this._poolName=Y}_checkSkipInstrumentation(Z){return this.getConfig().requireParentSpan===!0&&Z===void 0}}ut.MongoDBInstrumentation=kj});var ot=j((it)=>{Object.defineProperty(it,"__esModule",{value:!0});it.MongodbCommandType=void 0;var hh0;(function(Z){Z.CREATE_INDEXES="createIndexes",Z.FIND_AND_MODIFY="findAndModify",Z.IS_MASTER="isMaster",Z.COUNT="count",Z.UNKNOWN="unknown"})(hh0=it.MongodbCommandType||(it.MongodbCommandType={}))});var nt=j((Vz)=>{Object.defineProperty(Vz,"__esModule",{value:!0});Vz.MongodbCommandType=Vz.MongoDBInstrumentation=void 0;var bh0=pt();Object.defineProperty(Vz,"MongoDBInstrumentation",{enumerable:!0,get:function(){return bh0.MongoDBInstrumentation}});var vh0=ot();Object.defineProperty(Vz,"MongodbCommandType",{enumerable:!0,get:function(){return vh0.MongodbCommandType}})});function gh0(Z){let J=Aj(Z);return JSON.stringify(J)}function Aj(Z){if(Array.isArray(Z))return Z.map((J)=>Aj(J));if(dh0(Z)){let J={};return Object.entries(Z).map(([Q,$])=>[Q,Aj($)]).reduce((Q,$)=>{if(mh0($))Q[$[0]]=$[1];return Q},J)}return"?"}function dh0(Z){return typeof Z==="object"&&Z!==null&&!ch0(Z)}function ch0(Z){let J=!1;if(typeof Buffer<"u")J=Buffer.isBuffer(Z);return J}function mh0(Z){return Array.isArray(Z)}var at,st="Mongo",rt,uh0=()=>{return{name:st,setupOnce(){rt()}}},v$;var Ij=q(()=>{N();X0();at=A(nt(),1),rt=y(st,()=>new at.MongoDBInstrumentation({dbStatementSerializer:gh0,responseHook(Z){q0(Z,"auto.db.otel.mongo")}}));v$=P(uh0)});var Tj=j((tt)=>{Object.defineProperty(tt,"__esModule",{value:!0});tt.DB_SYSTEM_NAME_VALUE_MONGODB=tt.ATTR_NET_PEER_PORT=tt.ATTR_NET_PEER_NAME=tt.ATTR_DB_USER=tt.ATTR_DB_SYSTEM=tt.ATTR_DB_STATEMENT=tt.ATTR_DB_OPERATION=tt.ATTR_DB_NAME=tt.ATTR_DB_MONGODB_COLLECTION=void 0;tt.ATTR_DB_MONGODB_COLLECTION="db.mongodb.collection";tt.ATTR_DB_NAME="db.name";tt.ATTR_DB_OPERATION="db.operation";tt.ATTR_DB_STATEMENT="db.statement";tt.ATTR_DB_SYSTEM="db.system";tt.ATTR_DB_USER="db.user";tt.ATTR_NET_PEER_NAME="net.peer.name";tt.ATTR_NET_PEER_PORT="net.peer.port";tt.DB_SYSTEM_NAME_VALUE_MONGODB="mongodb"});var Ye=j((Qe)=>{Object.defineProperty(Qe,"__esModule",{value:!0});Qe.handleCallbackResponse=Qe.handlePromiseResponse=Qe.getAttributesFromCollection=void 0;var Ze=I(),g$=n(),x$=Tj(),Fz=Y0();function th0(Z,J,Q){let $={};if(J&g$.SemconvStability.OLD)$[x$.ATTR_DB_MONGODB_COLLECTION]=Z.name,$[x$.ATTR_DB_NAME]=Z.conn.name,$[x$.ATTR_DB_USER]=Z.conn.user;if(J&g$.SemconvStability.STABLE)$[Fz.ATTR_DB_COLLECTION_NAME]=Z.name,$[Fz.ATTR_DB_NAMESPACE]=Z.conn.name;if(Q&g$.SemconvStability.OLD)$[x$.ATTR_NET_PEER_NAME]=Z.conn.host,$[x$.ATTR_NET_PEER_PORT]=Z.conn.port;if(Q&g$.SemconvStability.STABLE)$[Fz.ATTR_SERVER_ADDRESS]=Z.conn.host,$[Fz.ATTR_SERVER_PORT]=Z.conn.port;return $}Qe.getAttributesFromCollection=th0;function Je(Z,J={}){Z.recordException(J),Z.setStatus({code:Ze.SpanStatusCode.ERROR,message:`${J.message} ${J.code?`
|
|
40
|
-
Mongoose Error Code: ${J.code}`:""}`})}function Ej(Z,J,Q,$=void 0){if(!Q)return;(0,g$.safeExecuteInTheMiddle)(()=>Q(Z,{moduleVersion:$,response:J}),(Y)=>{if(Y)Ze.diag.error("mongoose instrumentation: responseHook error",Y)},!0)}function eh0(Z,J,Q,$=void 0){if(!(Z instanceof Promise))return Ej(J,Z,Q,$),J.end(),Z;return Z.then((Y)=>{return Ej(J,Y,Q,$),Y}).catch((Y)=>{throw Je(J,Y),Y}).finally(()=>J.end())}Qe.handlePromiseResponse=eh0;function Zb0(Z,J,Q,$,Y,X,W=void 0){let K=0;if(Y.length===2)K=1;else if(Y.length===3)K=2;return Y[K]=(z,G)=>{if(z)Je($,z);else Ej($,G,X,W);return $.end(),Z(z,G)},J.apply(Q,Y)}Qe.handleCallbackResponse=Zb0});var Ke=j((Xe)=>{Object.defineProperty(Xe,"__esModule",{value:!0});Xe.PACKAGE_NAME=Xe.PACKAGE_VERSION=void 0;Xe.PACKAGE_VERSION="0.59.0";Xe.PACKAGE_NAME="@opentelemetry/instrumentation-mongoose"});var qe=j((Fe)=>{Object.defineProperty(Fe,"__esModule",{value:!0});Fe.MongooseInstrumentation=Fe._ALREADY_INSTRUMENTED=Fe._STORED_PARENT_SPAN=void 0;var H1=I(),Yb0=R0(),fj=Ye(),f1=n(),ze=Ke(),X7=Tj(),T5=Y0(),Uz=["deleteOne","deleteMany","find","findOne","estimatedDocumentCount","countDocuments","distinct","where","$where","findOneAndUpdate","findOneAndDelete","findOneAndReplace"],Xb0=["remove","count","findOneAndRemove",...Uz],Wb0=["count","findOneAndRemove",...Uz],Kb0=[...Uz];function Ge(Z){if(!Z)return Uz;else if(Z.startsWith("6.")||Z.startsWith("5."))return Xb0;else if(Z.startsWith("7."))return Wb0;else return Kb0}function He(Z){return Z&&(Z.startsWith("5.")||Z.startsWith("6."))||!1}function Be(Z){if(!Z||!Z.startsWith("8."))return!1;return parseInt(Z.split(".")[1],10)>=21}Fe._STORED_PARENT_SPAN=Symbol("stored-parent-span");Fe._ALREADY_INSTRUMENTED=Symbol("already-instrumented");class Ve extends f1.InstrumentationBase{_netSemconvStability;_dbSemconvStability;constructor(Z={}){super(ze.PACKAGE_NAME,ze.PACKAGE_VERSION,Z);this._setSemconvStabilityFromEnv()}_setSemconvStabilityFromEnv(){this._netSemconvStability=(0,f1.semconvStabilityFromStr)("http",process.env.OTEL_SEMCONV_STABILITY_OPT_IN),this._dbSemconvStability=(0,f1.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}init(){return new f1.InstrumentationNodeModuleDefinition("mongoose",[">=5.9.7 <10"],this.patch.bind(this),this.unpatch.bind(this))}patch(Z,J){let Q=Z[Symbol.toStringTag]==="Module"?Z.default:Z;if(this._wrap(Q.Model.prototype,"save",this.patchOnModelMethods("save",J)),Q.Model.prototype.$save=Q.Model.prototype.save,He(J))this._wrap(Q.Model.prototype,"remove",this.patchOnModelMethods("remove",J));if(Be(J))this._wrap(Q.Model.prototype,"updateOne",this._patchDocumentUpdateMethods("updateOne",J)),this._wrap(Q.Model.prototype,"deleteOne",this._patchDocumentUpdateMethods("deleteOne",J));return this._wrap(Q.Query.prototype,"exec",this.patchQueryExec(J)),this._wrap(Q.Aggregate.prototype,"exec",this.patchAggregateExec(J)),Ge(J).forEach((Y)=>{this._wrap(Q.Query.prototype,Y,this.patchAndCaptureSpanContext(Y))}),this._wrap(Q.Model,"aggregate",this.patchModelAggregate()),this._wrap(Q.Model,"insertMany",this.patchModelStatic("insertMany",J)),this._wrap(Q.Model,"bulkWrite",this.patchModelStatic("bulkWrite",J)),Q}unpatch(Z,J){let Q=Z[Symbol.toStringTag]==="Module"?Z.default:Z,$=Ge(J);if(this._unwrap(Q.Model.prototype,"save"),Q.Model.prototype.$save=Q.Model.prototype.save,He(J))this._unwrap(Q.Model.prototype,"remove");if(Be(J))this._unwrap(Q.Model.prototype,"updateOne"),this._unwrap(Q.Model.prototype,"deleteOne");this._unwrap(Q.Query.prototype,"exec"),this._unwrap(Q.Aggregate.prototype,"exec"),$.forEach((Y)=>{this._unwrap(Q.Query.prototype,Y)}),this._unwrap(Q.Model,"aggregate"),this._unwrap(Q.Model,"insertMany"),this._unwrap(Q.Model,"bulkWrite")}patchAggregateExec(Z){let J=this;return(Q)=>{return function(Y){if(J.getConfig().requireParentSpan&&H1.trace.getSpan(H1.context.active())===void 0)return Q.apply(this,arguments);let X=this[Fe._STORED_PARENT_SPAN],W={},{dbStatementSerializer:K}=J.getConfig();if(K){let G=K("aggregate",{options:this.options,aggregatePipeline:this._pipeline});if(J._dbSemconvStability&f1.SemconvStability.OLD)W[X7.ATTR_DB_STATEMENT]=G;if(J._dbSemconvStability&f1.SemconvStability.STABLE)W[T5.ATTR_DB_QUERY_TEXT]=G}let z=J._startSpan(this._model.collection,this._model?.modelName,"aggregate",W,X);return J._handleResponse(z,Q,this,arguments,Y,Z)}}}patchQueryExec(Z){let J=this;return(Q)=>{return function(Y){if(this[Fe._ALREADY_INSTRUMENTED])return Q.apply(this,arguments);if(J.getConfig().requireParentSpan&&H1.trace.getSpan(H1.context.active())===void 0)return Q.apply(this,arguments);let X=this[Fe._STORED_PARENT_SPAN],W={},{dbStatementSerializer:K}=J.getConfig();if(K){let G=K(this.op,{condition:this.getFilter?.()??this._conditions,updates:this._update,options:this.getOptions?.()??this.options,fields:this._fields});if(J._dbSemconvStability&f1.SemconvStability.OLD)W[X7.ATTR_DB_STATEMENT]=G;if(J._dbSemconvStability&f1.SemconvStability.STABLE)W[T5.ATTR_DB_QUERY_TEXT]=G}let z=J._startSpan(this.mongooseCollection,this.model.modelName,this.op,W,X);return J._handleResponse(z,Q,this,arguments,Y,Z)}}}patchOnModelMethods(Z,J){let Q=this;return($)=>{return function(X,W){if(Q.getConfig().requireParentSpan&&H1.trace.getSpan(H1.context.active())===void 0)return $.apply(this,arguments);let K={document:this};if(X&&!(X instanceof Function))K.options=X;let z={},{dbStatementSerializer:G}=Q.getConfig();if(G){let B=G(Z,K);if(Q._dbSemconvStability&f1.SemconvStability.OLD)z[X7.ATTR_DB_STATEMENT]=B;if(Q._dbSemconvStability&f1.SemconvStability.STABLE)z[T5.ATTR_DB_QUERY_TEXT]=B}let H=Q._startSpan(this.constructor.collection,this.constructor.modelName,Z,z);if(X instanceof Function)W=X,X=void 0;return Q._handleResponse(H,$,this,arguments,W,J)}}}_patchDocumentUpdateMethods(Z,J){let Q=this;return($)=>{return function(X,W,K){if(Q.getConfig().requireParentSpan&&H1.trace.getSpan(H1.context.active())===void 0)return $.apply(this,arguments);let z=K,G=X,H=W;if(typeof X==="function")z=X,G=void 0,H=void 0;else if(typeof W==="function")z=W,H=void 0;let B={},V=Q.getConfig().dbStatementSerializer;if(V){let w=V(Z,{condition:{_id:this._id},updates:G,options:H});if(Q._dbSemconvStability&f1.SemconvStability.OLD)B[X7.ATTR_DB_STATEMENT]=w;if(Q._dbSemconvStability&f1.SemconvStability.STABLE)B[T5.ATTR_DB_QUERY_TEXT]=w}let F=Q._startSpan(this.constructor.collection,this.constructor.modelName,Z,B),U=Q._handleResponse(F,$,this,arguments,z,J);if(U&&typeof U==="object")U[Fe._ALREADY_INSTRUMENTED]=!0;return U}}}patchModelStatic(Z,J){let Q=this;return($)=>{return function(X,W,K){if(Q.getConfig().requireParentSpan&&H1.trace.getSpan(H1.context.active())===void 0)return $.apply(this,arguments);if(typeof W==="function")K=W,W=void 0;let z={};switch(Z){case"insertMany":z.documents=X;break;case"bulkWrite":z.operations=X;break;default:z.document=X;break}if(W!==void 0)z.options=W;let G={},{dbStatementSerializer:H}=Q.getConfig();if(H){let V=H(Z,z);if(Q._dbSemconvStability&f1.SemconvStability.OLD)G[X7.ATTR_DB_STATEMENT]=V;if(Q._dbSemconvStability&f1.SemconvStability.STABLE)G[T5.ATTR_DB_QUERY_TEXT]=V}let B=Q._startSpan(this.collection,this.modelName,Z,G);return Q._handleResponse(B,$,this,arguments,K,J)}}}patchModelAggregate(){let Z=this;return(J)=>{return function(){let $=H1.trace.getSpan(H1.context.active()),Y=Z._callOriginalFunction(()=>J.apply(this,arguments));if(Y)Y[Fe._STORED_PARENT_SPAN]=$;return Y}}}patchAndCaptureSpanContext(Z){let J=this;return(Q)=>{return function(){return this[Fe._STORED_PARENT_SPAN]=H1.trace.getSpan(H1.context.active()),J._callOriginalFunction(()=>Q.apply(this,arguments))}}}_startSpan(Z,J,Q,$,Y){let X={...$,...(0,fj.getAttributesFromCollection)(Z,this._dbSemconvStability,this._netSemconvStability)};if(this._dbSemconvStability&f1.SemconvStability.OLD)X[X7.ATTR_DB_OPERATION]=Q,X[X7.ATTR_DB_SYSTEM]="mongoose";if(this._dbSemconvStability&f1.SemconvStability.STABLE)X[T5.ATTR_DB_OPERATION_NAME]=Q,X[T5.ATTR_DB_SYSTEM_NAME]=X7.DB_SYSTEM_NAME_VALUE_MONGODB;let W=this._dbSemconvStability&f1.SemconvStability.STABLE?`${Q} ${Z.name}`:`mongoose.${J}.${Q}`;return this.tracer.startSpan(W,{kind:H1.SpanKind.CLIENT,attributes:X},Y?H1.trace.setSpan(H1.context.active(),Y):void 0)}_handleResponse(Z,J,Q,$,Y,X=void 0){let W=this;if(Y instanceof Function)return W._callOriginalFunction(()=>(0,fj.handleCallbackResponse)(Y,J,Q,Z,$,W.getConfig().responseHook,X));else{let K=W._callOriginalFunction(()=>J.apply(Q,$));return(0,fj.handlePromiseResponse)(K,Z,W.getConfig().responseHook,X)}}_callOriginalFunction(Z){if(this.getConfig().suppressInternalInstrumentation)return H1.context.with((0,Yb0.suppressTracing)(H1.context.active()),Z);else return Z()}}Fe.MongooseInstrumentation=Ve});var we=j((Sj)=>{Object.defineProperty(Sj,"__esModule",{value:!0});Sj.MongooseInstrumentation=void 0;var zb0=qe();Object.defineProperty(Sj,"MongooseInstrumentation",{enumerable:!0,get:function(){return zb0.MongooseInstrumentation}})});var je,De="Mongoose",Oe,Hb0=()=>{return{name:De,setupOnce(){Oe()}}},c$;var _j=q(()=>{N();X0();je=A(we(),1),Oe=y(De,()=>new je.MongooseInstrumentation({responseHook(Z){q0(Z,"auto.db.otel.mongoose")}})),c$=P(Hb0)});var Pe=j((Le)=>{Object.defineProperty(Le,"__esModule",{value:!0});Le.METRIC_DB_CLIENT_CONNECTIONS_USAGE=Le.DB_SYSTEM_VALUE_MYSQL=Le.ATTR_NET_PEER_PORT=Le.ATTR_NET_PEER_NAME=Le.ATTR_DB_USER=Le.ATTR_DB_SYSTEM=Le.ATTR_DB_STATEMENT=Le.ATTR_DB_NAME=Le.ATTR_DB_CONNECTION_STRING=void 0;Le.ATTR_DB_CONNECTION_STRING="db.connection_string";Le.ATTR_DB_NAME="db.name";Le.ATTR_DB_STATEMENT="db.statement";Le.ATTR_DB_SYSTEM="db.system";Le.ATTR_DB_USER="db.user";Le.ATTR_NET_PEER_NAME="net.peer.name";Le.ATTR_NET_PEER_PORT="net.peer.port";Le.DB_SYSTEM_VALUE_MYSQL="mysql";Le.METRIC_DB_CLIENT_CONNECTIONS_USAGE="db.client.connections.usage"});var Re=j((Me)=>{Object.defineProperty(Me,"__esModule",{value:!0});Me.AttributeNames=void 0;var Ob0;(function(Z){Z.MYSQL_VALUES="db.mysql.values"})(Ob0=Me.AttributeNames||(Me.AttributeNames={}))});var Ae=j((ke)=>{Object.defineProperty(ke,"__esModule",{value:!0});ke.getPoolNameOld=ke.arrayStringifyHelper=ke.getSpanName=ke.getDbValues=ke.getDbQueryText=ke.getJDBCString=ke.getConfig=void 0;function Lb0(Z){let{host:J,port:Q,database:$,user:Y}=Z&&Z.connectionConfig||Z||{};return{host:J,port:Q,database:$,user:Y}}ke.getConfig=Lb0;function Cb0(Z,J,Q){let $=`jdbc:mysql://${Z||"localhost"}`;if(typeof J==="number")$+=`:${J}`;if(typeof Q==="string")$+=`/${Q}`;return $}ke.getJDBCString=Cb0;function Pb0(Z){if(typeof Z==="string")return Z;else return Z.sql}ke.getDbQueryText=Pb0;function Mb0(Z,J){if(typeof Z==="string")return bj(J);else return bj(J||Z.values)}ke.getDbValues=Mb0;function Rb0(Z){let J=typeof Z==="object"?Z.sql:Z,Q=J?.indexOf(" ");if(typeof Q==="number"&&Q!==-1)return J?.substring(0,Q);return J}ke.getSpanName=Rb0;function bj(Z){if(Z)return`[${Z.toString()}]`;return""}ke.arrayStringifyHelper=bj;function kb0(Z){let J=Z.config.connectionConfig,Q="";if(Q+=J.host?`host: '${J.host}', `:"",Q+=J.port?`port: ${J.port}, `:"",Q+=J.database?`database: '${J.database}', `:"",Q+=J.user?`user: '${J.user}'`:"",!J.user)Q=Q.substring(0,Q.length-2);return Q.trim()}ke.getPoolNameOld=kb0});var Ee=j((Ie)=>{Object.defineProperty(Ie,"__esModule",{value:!0});Ie.PACKAGE_NAME=Ie.PACKAGE_VERSION=void 0;Ie.PACKAGE_VERSION="0.59.0";Ie.PACKAGE_NAME="@opentelemetry/instrumentation-mysql"});var he=j((Se)=>{Object.defineProperty(Se,"__esModule",{value:!0});Se.MySQLInstrumentation=void 0;var B6=I(),X9=n(),SJ=Y0(),t8=Pe(),Sb0=Re(),E5=Ae(),fe=Ee();class ye extends X9.InstrumentationBase{_netSemconvStability;_dbSemconvStability;constructor(Z={}){super(fe.PACKAGE_NAME,fe.PACKAGE_VERSION,Z);this._setSemconvStabilityFromEnv()}_setSemconvStabilityFromEnv(){this._netSemconvStability=(0,X9.semconvStabilityFromStr)("http",process.env.OTEL_SEMCONV_STABILITY_OPT_IN),this._dbSemconvStability=(0,X9.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}_updateMetricInstruments(){this._connectionsUsageOld=this.meter.createUpDownCounter(t8.METRIC_DB_CLIENT_CONNECTIONS_USAGE,{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}_connCountAdd(Z,J,Q){this._connectionsUsageOld?.add(Z,{state:Q,name:J})}init(){return[new X9.InstrumentationNodeModuleDefinition("mysql",[">=2.0.0 <3"],(Z)=>{if((0,X9.isWrapped)(Z.createConnection))this._unwrap(Z,"createConnection");if(this._wrap(Z,"createConnection",this._patchCreateConnection()),(0,X9.isWrapped)(Z.createPool))this._unwrap(Z,"createPool");if(this._wrap(Z,"createPool",this._patchCreatePool()),(0,X9.isWrapped)(Z.createPoolCluster))this._unwrap(Z,"createPoolCluster");return this._wrap(Z,"createPoolCluster",this._patchCreatePoolCluster()),Z},(Z)=>{if(Z===void 0)return;this._unwrap(Z,"createConnection"),this._unwrap(Z,"createPool"),this._unwrap(Z,"createPoolCluster")})]}_patchCreateConnection(){return(Z)=>{let J=this;return function($){let Y=Z(...arguments);return J._wrap(Y,"query",J._patchQuery(Y)),Y}}}_patchCreatePool(){return(Z)=>{let J=this;return function($){let Y=Z(...arguments);return J._wrap(Y,"query",J._patchQuery(Y)),J._wrap(Y,"getConnection",J._patchGetConnection(Y)),J._wrap(Y,"end",J._patchPoolEnd(Y)),J._setPoolCallbacks(Y,""),Y}}}_patchPoolEnd(Z){return(J)=>{let Q=this;return function(Y){let X=Z._allConnections.length,W=Z._freeConnections.length,K=X-W,z=(0,E5.getPoolNameOld)(Z);Q._connCountAdd(-K,z,"used"),Q._connCountAdd(-W,z,"idle"),J.apply(Z,arguments)}}}_patchCreatePoolCluster(){return(Z)=>{let J=this;return function($){let Y=Z(...arguments);return J._wrap(Y,"getConnection",J._patchGetConnection(Y)),J._wrap(Y,"add",J._patchAdd(Y)),Y}}}_patchAdd(Z){return(J)=>{let Q=this;return function(Y,X){if(!Q._enabled)return Q._unwrap(Z,"add"),J.apply(Z,arguments);J.apply(Z,arguments);let W=Z._nodes;if(W){let K=typeof Y==="object"?"CLUSTER::"+Z._lastId:String(Y),z=W[K].pool;Q._setPoolCallbacks(z,Y)}}}}_patchGetConnection(Z){return(J)=>{let Q=this;return function(Y,X,W){if(!Q._enabled)return Q._unwrap(Z,"getConnection"),J.apply(Z,arguments);if(arguments.length===1&&typeof Y==="function"){let K=Q._getConnectionCallbackPatchFn(Y);return J.call(Z,K)}if(arguments.length===2&&typeof X==="function"){let K=Q._getConnectionCallbackPatchFn(X);return J.call(Z,Y,K)}if(arguments.length===3&&typeof W==="function"){let K=Q._getConnectionCallbackPatchFn(W);return J.call(Z,Y,X,K)}return J.apply(Z,arguments)}}}_getConnectionCallbackPatchFn(Z){let J=this,Q=B6.context.active();return function($,Y){if(Y){if(!(0,X9.isWrapped)(Y.query))J._wrap(Y,"query",J._patchQuery(Y))}if(typeof Z==="function")B6.context.with(Q,Z,this,$,Y)}}_patchQuery(Z){return(J)=>{let Q=this;return function($,Y,X){if(!Q._enabled)return Q._unwrap(Z,"query"),J.apply(Z,arguments);let W={},{host:K,port:z,database:G,user:H}=(0,E5.getConfig)(Z.config),B=parseInt(z,10),V=(0,E5.getDbQueryText)($);if(Q._dbSemconvStability&X9.SemconvStability.OLD)W[t8.ATTR_DB_SYSTEM]=t8.DB_SYSTEM_VALUE_MYSQL,W[t8.ATTR_DB_CONNECTION_STRING]=(0,E5.getJDBCString)(K,z,G),W[t8.ATTR_DB_NAME]=G,W[t8.ATTR_DB_USER]=H,W[t8.ATTR_DB_STATEMENT]=V;if(Q._dbSemconvStability&X9.SemconvStability.STABLE)W[SJ.ATTR_DB_SYSTEM_NAME]=SJ.DB_SYSTEM_NAME_VALUE_MYSQL,W[SJ.ATTR_DB_NAMESPACE]=G,W[SJ.ATTR_DB_QUERY_TEXT]=V;if(Q._netSemconvStability&X9.SemconvStability.OLD){if(W[t8.ATTR_NET_PEER_NAME]=K,!isNaN(B))W[t8.ATTR_NET_PEER_PORT]=B}if(Q._netSemconvStability&X9.SemconvStability.STABLE){if(W[SJ.ATTR_SERVER_ADDRESS]=K,!isNaN(B))W[SJ.ATTR_SERVER_PORT]=B}let F=Q.tracer.startSpan((0,E5.getSpanName)($),{kind:B6.SpanKind.CLIENT,attributes:W});if(Q.getConfig().enhancedDatabaseReporting){let D;if(Array.isArray(Y))D=Y;else if(arguments[2])D=[Y];F.setAttribute(Sb0.AttributeNames.MYSQL_VALUES,(0,E5.getDbValues)($,D))}let U=Array.from(arguments).findIndex((D)=>typeof D==="function"),w=B6.context.active();if(U===-1){let D=B6.context.with(B6.trace.setSpan(B6.context.active(),F),()=>{return J.apply(Z,arguments)});return B6.context.bind(w,D),D.on("error",(L)=>F.setStatus({code:B6.SpanStatusCode.ERROR,message:L.message})).on("end",()=>{F.end()})}else return Q._wrap(arguments,U,Q._patchCallbackQuery(F,w)),B6.context.with(B6.trace.setSpan(B6.context.active(),F),()=>{return J.apply(Z,arguments)})}}}_patchCallbackQuery(Z,J){return(Q)=>{return function($,Y,X){if($)Z.setStatus({code:B6.SpanStatusCode.ERROR,message:$.message});return Z.end(),B6.context.with(J,()=>Q(...arguments))}}}_setPoolCallbacks(Z,J){let Q=J||(0,E5.getPoolNameOld)(Z);Z.on("connection",($)=>{this._connCountAdd(1,Q,"idle")}),Z.on("acquire",($)=>{this._connCountAdd(-1,Q,"idle"),this._connCountAdd(1,Q,"used")}),Z.on("release",($)=>{this._connCountAdd(1,Q,"idle"),this._connCountAdd(-1,Q,"used")})}}Se.MySQLInstrumentation=ye});var be=j((vj)=>{Object.defineProperty(vj,"__esModule",{value:!0});vj.MySQLInstrumentation=void 0;var _b0=he();Object.defineProperty(vj,"MySQLInstrumentation",{enumerable:!0,get:function(){return _b0.MySQLInstrumentation}})});var ve,xe="Mysql",ge,bb0=()=>{return{name:xe,setupOnce(){ge()}}},m$;var xj=q(()=>{N();X0();ve=A(be(),1),ge=y(xe,()=>new ve.MySQLInstrumentation({})),m$=P(bb0)});var gj=j((de)=>{Object.defineProperty(de,"__esModule",{value:!0});de.DB_SYSTEM_VALUE_MYSQL=de.ATTR_NET_PEER_PORT=de.ATTR_NET_PEER_NAME=de.ATTR_DB_USER=de.ATTR_DB_SYSTEM=de.ATTR_DB_STATEMENT=de.ATTR_DB_NAME=de.ATTR_DB_CONNECTION_STRING=void 0;de.ATTR_DB_CONNECTION_STRING="db.connection_string";de.ATTR_DB_NAME="db.name";de.ATTR_DB_STATEMENT="db.statement";de.ATTR_DB_SYSTEM="db.system";de.ATTR_DB_USER="db.user";de.ATTR_NET_PEER_NAME="net.peer.name";de.ATTR_NET_PEER_PORT="net.peer.port";de.DB_SYSTEM_VALUE_MYSQL="mysql"});var cj=j((me)=>{Object.defineProperty(me,"__esModule",{value:!0});me.addSqlCommenterComment=void 0;var dj=I(),lb0=R0();function pb0(Z){let J=Z.indexOf("--");if(J>=0)return!0;if(Z.indexOf("/*")<0)return!1;let $=Z.indexOf("*/");return J<$}function ib0(Z){return encodeURIComponent(Z).replace(/[!'()*]/g,(J)=>`%${J.charCodeAt(0).toString(16).toUpperCase()}`)}function ob0(Z,J){if(typeof J!=="string"||J.length===0)return J;if(pb0(J))return J;let Q=new lb0.W3CTraceContextPropagator,$={};Q.inject(dj.trace.setSpan(dj.ROOT_CONTEXT,Z),$,dj.defaultTextMapSetter);let Y=Object.keys($).sort();if(Y.length===0)return J;let X=Y.map((W)=>{let K=ib0($[W]);return`${W}='${K}'`}).join(",");return`${J} /*${X}*/`}me.addSqlCommenterComment=ob0});var ie=j((le)=>{Object.defineProperty(le,"__esModule",{value:!0});le.getConnectionPrototypeToInstrument=le.once=le.getSpanName=le.getQueryText=le.getConnectionAttributes=void 0;var u$=gj(),qz=n(),mj=Y0();function nb0(Z,J,Q){let{host:$,port:Y,database:X,user:W}=ab0(Z),K={};if(J&qz.SemconvStability.OLD)K[u$.ATTR_DB_CONNECTION_STRING]=sb0($,Y,X),K[u$.ATTR_DB_NAME]=X,K[u$.ATTR_DB_USER]=W;if(J&qz.SemconvStability.STABLE)K[mj.ATTR_DB_NAMESPACE]=X;let z=parseInt(Y,10);if(Q&qz.SemconvStability.OLD){if(K[u$.ATTR_NET_PEER_NAME]=$,!isNaN(z))K[u$.ATTR_NET_PEER_PORT]=z}if(Q&qz.SemconvStability.STABLE){if(K[mj.ATTR_SERVER_ADDRESS]=$,!isNaN(z))K[mj.ATTR_SERVER_PORT]=z}return K}le.getConnectionAttributes=nb0;function ab0(Z){let{host:J,port:Q,database:$,user:Y}=Z&&Z.connectionConfig||Z||{};return{host:J,port:Q,database:$,user:Y}}function sb0(Z,J,Q){let $=`jdbc:mysql://${Z||"localhost"}`;if(typeof J==="number")$+=`:${J}`;if(typeof Q==="string")$+=`/${Q}`;return $}function rb0(Z,J,Q,$=!1,Y=tb0){let[X,W]=typeof Z==="string"?[Z,Q]:[Z.sql,eb0(Z)?Q||Z.values:Q];try{if($)return Y(X);else if(J&&W)return J(X,W);else return X}catch(K){return"Could not determine the query due to an error in masking or formatting"}}le.getQueryText=rb0;function tb0(Z){return Z.replace(/\b\d+\b/g,"?").replace(/(["'])(?:(?=(\\?))\2.)*?\1/g,"?")}function eb0(Z){return"values"in Z}function Zv0(Z){let J=typeof Z==="object"?Z.sql:Z,Q=J?.indexOf(" ");if(typeof Q==="number"&&Q!==-1)return J?.substring(0,Q);return J}le.getSpanName=Zv0;var Jv0=(Z)=>{let J=!1;return(...Q)=>{if(J)return;return J=!0,Z(...Q)}};le.once=Jv0;function Qv0(Z){let J=Z.prototype,Q=Object.getPrototypeOf(J);if(typeof Q?.query==="function"&&typeof Q?.execute==="function")return Q;return J}le.getConnectionPrototypeToInstrument=Qv0});var ae=j((oe)=>{Object.defineProperty(oe,"__esModule",{value:!0});oe.PACKAGE_NAME=oe.PACKAGE_VERSION=void 0;oe.PACKAGE_VERSION="0.59.0";oe.PACKAGE_NAME="@opentelemetry/instrumentation-mysql2"});var Q00=j((Z00)=>{Object.defineProperty(Z00,"__esModule",{value:!0});Z00.MySQL2Instrumentation=void 0;var se=I(),h9=n(),uj=gj(),re=cj(),_J=ie(),te=ae(),lj=Y0(),pj=[">=1.4.2 <4"];class ee extends h9.InstrumentationBase{_netSemconvStability;_dbSemconvStability;constructor(Z={}){super(te.PACKAGE_NAME,te.PACKAGE_VERSION,Z);this._setSemconvStabilityFromEnv()}_setSemconvStabilityFromEnv(){this._netSemconvStability=(0,h9.semconvStabilityFromStr)("http",process.env.OTEL_SEMCONV_STABILITY_OPT_IN),this._dbSemconvStability=(0,h9.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}init(){let Z;function J(Y){if(!Z&&Y.format)Z=Y.format}let Q=(Y)=>{if((0,h9.isWrapped)(Y.query))this._unwrap(Y,"query");if(this._wrap(Y,"query",this._patchQuery(Z,!1)),(0,h9.isWrapped)(Y.execute))this._unwrap(Y,"execute");this._wrap(Y,"execute",this._patchQuery(Z,!0))},$=(Y)=>{this._unwrap(Y,"query"),this._unwrap(Y,"execute")};return[new h9.InstrumentationNodeModuleDefinition("mysql2",pj,(Y)=>{return J(Y),Y},()=>{},[new h9.InstrumentationNodeModuleFile("mysql2/promise.js",pj,(Y)=>{return J(Y),Y},()=>{}),new h9.InstrumentationNodeModuleFile("mysql2/lib/connection.js",pj,(Y)=>{let X=(0,_J.getConnectionPrototypeToInstrument)(Y);return Q(X),Y},(Y)=>{if(Y===void 0)return;let X=(0,_J.getConnectionPrototypeToInstrument)(Y);$(X)})])]}_patchQuery(Z,J){return(Q)=>{let $=this;return function(Y,X,W){let K;if(Array.isArray(X))K=X;else if(arguments[2])K=[X];let{maskStatement:z,maskStatementHook:G,responseHook:H}=$.getConfig(),B=(0,_J.getConnectionAttributes)(this.config,$._dbSemconvStability,$._netSemconvStability),V=(0,_J.getQueryText)(Y,Z,K,z,G);if($._dbSemconvStability&h9.SemconvStability.OLD)B[uj.ATTR_DB_SYSTEM]=uj.DB_SYSTEM_VALUE_MYSQL,B[uj.ATTR_DB_STATEMENT]=V;if($._dbSemconvStability&h9.SemconvStability.STABLE)B[lj.ATTR_DB_SYSTEM_NAME]=lj.DB_SYSTEM_NAME_VALUE_MYSQL,B[lj.ATTR_DB_QUERY_TEXT]=V;let F=$.tracer.startSpan((0,_J.getSpanName)(Y),{kind:se.SpanKind.CLIENT,attributes:B});if(!J&&$.getConfig().addSqlCommenterCommentToQueries)arguments[0]=Y=typeof Y==="string"?(0,re.addSqlCommenterComment)(F,Y):Object.assign(Y,{sql:(0,re.addSqlCommenterComment)(F,Y.sql)});let U=(0,_J.once)((w,D)=>{if(w)F.setStatus({code:se.SpanStatusCode.ERROR,message:w.message});else if(typeof H==="function")(0,h9.safeExecuteInTheMiddle)(()=>{H(F,{queryResults:D})},(L)=>{if(L)$._diag.warn("Failed executing responseHook",L)},!0);F.end()});if(arguments.length===1){if(typeof Y.onResult==="function")$._wrap(Y,"onResult",$._patchCallbackQuery(U));let w=Q.apply(this,arguments);return w.once("error",(D)=>{U(D)}).once("result",(D)=>{U(void 0,D)}),w}if(typeof arguments[1]==="function")$._wrap(arguments,1,$._patchCallbackQuery(U));else if(typeof arguments[2]==="function")$._wrap(arguments,2,$._patchCallbackQuery(U));return Q.apply(this,arguments)}}}_patchCallbackQuery(Z){return(J)=>{return function(Q,$,Y){return Z(Q,$),J(...arguments)}}}}Z00.MySQL2Instrumentation=ee});var $00=j((ij)=>{Object.defineProperty(ij,"__esModule",{value:!0});ij.MySQL2Instrumentation=void 0;var zv0=Q00();Object.defineProperty(ij,"MySQL2Instrumentation",{enumerable:!0,get:function(){return zv0.MySQL2Instrumentation}})});var Y00,X00="Mysql2",W00,Hv0=()=>{return{name:X00,setupOnce(){W00()}}},l$;var oj=q(()=>{N();X0();Y00=A($00(),1),W00=y(X00,()=>new Y00.MySQL2Instrumentation({responseHook(Z){q0(Z,"auto.db.otel.mysql2")}})),l$=P(Hv0)});var G00=j((K00)=>{Object.defineProperty(K00,"__esModule",{value:!0});K00.DB_SYSTEM_VALUE_REDIS=K00.DB_SYSTEM_NAME_VALUE_REDIS=K00.ATTR_NET_PEER_PORT=K00.ATTR_NET_PEER_NAME=K00.ATTR_DB_SYSTEM=K00.ATTR_DB_STATEMENT=K00.ATTR_DB_CONNECTION_STRING=void 0;K00.ATTR_DB_CONNECTION_STRING="db.connection_string";K00.ATTR_DB_STATEMENT="db.statement";K00.ATTR_DB_SYSTEM="db.system";K00.ATTR_NET_PEER_NAME="net.peer.name";K00.ATTR_NET_PEER_PORT="net.peer.port";K00.DB_SYSTEM_NAME_VALUE_REDIS="redis";K00.DB_SYSTEM_VALUE_REDIS="redis"});var V00=j((H00)=>{Object.defineProperty(H00,"__esModule",{value:!0});H00.endSpan=void 0;var jv0=I(),Dv0=(Z,J)=>{if(J)Z.recordException(J),Z.setStatus({code:jv0.SpanStatusCode.ERROR,message:J.message});Z.end()};H00.endSpan=Dv0});var wz=j((F00)=>{Object.defineProperty(F00,"__esModule",{value:!0});F00.defaultDbStatementSerializer=void 0;var Ov0=[{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}],Lv0=(Z,J)=>{if(Array.isArray(J)&&J.length){let Q=Ov0.find(({regex:Y})=>{return Y.test(Z)})?.args??0,$=Q>=0?J.slice(0,Q):J;if(J.length>$.length)$.push(`[${J.length-Q} other arguments]`);return`${Z} ${$.join(" ")}`}return Z};F00.defaultDbStatementSerializer=Lv0});var j00=j((q00)=>{Object.defineProperty(q00,"__esModule",{value:!0});q00.PACKAGE_NAME=q00.PACKAGE_VERSION=void 0;q00.PACKAGE_VERSION="0.61.0";q00.PACKAGE_NAME="@opentelemetry/instrumentation-ioredis"});var R00=j((P00)=>{Object.defineProperty(P00,"__esModule",{value:!0});P00.IORedisInstrumentation=void 0;var W7=I(),V6=n(),K7=Y0(),F6=G00(),D00=n(),p$=V00(),Pv0=wz(),O00=j00(),L00={requireParentSpan:!0};class C00 extends V6.InstrumentationBase{_netSemconvStability;_dbSemconvStability;constructor(Z={}){super(O00.PACKAGE_NAME,O00.PACKAGE_VERSION,{...L00,...Z});this._setSemconvStabilityFromEnv()}_setSemconvStabilityFromEnv(){this._netSemconvStability=(0,V6.semconvStabilityFromStr)("http",process.env.OTEL_SEMCONV_STABILITY_OPT_IN),this._dbSemconvStability=(0,V6.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}setConfig(Z={}){super.setConfig({...L00,...Z})}init(){return[new V6.InstrumentationNodeModuleDefinition("ioredis",[">=2.0.0 <6"],(Z,J)=>{let Q=Z[Symbol.toStringTag]==="Module"?Z.default:Z;if((0,V6.isWrapped)(Q.prototype.sendCommand))this._unwrap(Q.prototype,"sendCommand");if(this._wrap(Q.prototype,"sendCommand",this._patchSendCommand(J)),(0,V6.isWrapped)(Q.prototype.connect))this._unwrap(Q.prototype,"connect");return this._wrap(Q.prototype,"connect",this._patchConnection()),Z},(Z)=>{if(Z===void 0)return;let J=Z[Symbol.toStringTag]==="Module"?Z.default:Z;this._unwrap(J.prototype,"sendCommand"),this._unwrap(J.prototype,"connect")})]}_patchSendCommand(Z){return(J)=>{return this._traceSendCommand(J,Z)}}_patchConnection(){return(Z)=>{return this._traceConnection(Z)}}_traceSendCommand(Z,J){let Q=this;return function($){if(arguments.length<1||typeof $!=="object")return Z.apply(this,arguments);let Y=Q.getConfig(),X=Y.dbStatementSerializer||Pv0.defaultDbStatementSerializer,W=W7.trace.getSpan(W7.context.active())===void 0;if(Y.requireParentSpan===!0&&W)return Z.apply(this,arguments);let K={},{host:z,port:G}=this.options,H=X($.name,$.args);if(Q._dbSemconvStability&V6.SemconvStability.OLD)K[F6.ATTR_DB_SYSTEM]=F6.DB_SYSTEM_VALUE_REDIS,K[F6.ATTR_DB_STATEMENT]=H,K[F6.ATTR_DB_CONNECTION_STRING]=`redis://${z}:${G}`;if(Q._dbSemconvStability&V6.SemconvStability.STABLE)K[K7.ATTR_DB_SYSTEM_NAME]=F6.DB_SYSTEM_NAME_VALUE_REDIS,K[K7.ATTR_DB_QUERY_TEXT]=H;if(Q._netSemconvStability&V6.SemconvStability.OLD)K[F6.ATTR_NET_PEER_NAME]=z,K[F6.ATTR_NET_PEER_PORT]=G;if(Q._netSemconvStability&V6.SemconvStability.STABLE)K[K7.ATTR_SERVER_ADDRESS]=z,K[K7.ATTR_SERVER_PORT]=G;let B=Q.tracer.startSpan($.name,{kind:W7.SpanKind.CLIENT,attributes:K}),{requestHook:V}=Y;if(V)(0,D00.safeExecuteInTheMiddle)(()=>V(B,{moduleVersion:J,cmdName:$.name,cmdArgs:$.args}),(F)=>{if(F)W7.diag.error("ioredis instrumentation: request hook failed",F)},!0);try{let F=Z.apply(this,arguments),U=$.resolve;$.resolve=function(D){(0,D00.safeExecuteInTheMiddle)(()=>Y.responseHook?.(B,$.name,$.args,D),(L)=>{if(L)W7.diag.error("ioredis instrumentation: response hook failed",L)},!0),(0,p$.endSpan)(B,null),U(D)};let w=$.reject;return $.reject=function(D){(0,p$.endSpan)(B,D),w(D)},F}catch(F){throw(0,p$.endSpan)(B,F),F}}}_traceConnection(Z){let J=this;return function(){let Q=W7.trace.getSpan(W7.context.active())===void 0;if(J.getConfig().requireParentSpan===!0&&Q)return Z.apply(this,arguments);let $={},{host:Y,port:X}=this.options;if(J._dbSemconvStability&V6.SemconvStability.OLD)$[F6.ATTR_DB_SYSTEM]=F6.DB_SYSTEM_VALUE_REDIS,$[F6.ATTR_DB_STATEMENT]="connect",$[F6.ATTR_DB_CONNECTION_STRING]=`redis://${Y}:${X}`;if(J._dbSemconvStability&V6.SemconvStability.STABLE)$[K7.ATTR_DB_SYSTEM_NAME]=F6.DB_SYSTEM_NAME_VALUE_REDIS,$[K7.ATTR_DB_QUERY_TEXT]="connect";if(J._netSemconvStability&V6.SemconvStability.OLD)$[F6.ATTR_NET_PEER_NAME]=Y,$[F6.ATTR_NET_PEER_PORT]=X;if(J._netSemconvStability&V6.SemconvStability.STABLE)$[K7.ATTR_SERVER_ADDRESS]=Y,$[K7.ATTR_SERVER_PORT]=X;let W=J.tracer.startSpan("connect",{kind:W7.SpanKind.CLIENT,attributes:$});try{let K=Z.apply(this,arguments);return(0,p$.endSpan)(W,null),K}catch(K){throw(0,p$.endSpan)(W,K),K}}}}P00.IORedisInstrumentation=C00});var k00=j((nj)=>{Object.defineProperty(nj,"__esModule",{value:!0});nj.IORedisInstrumentation=void 0;var Mv0=R00();Object.defineProperty(nj,"IORedisInstrumentation",{enumerable:!0,get:function(){return Mv0.IORedisInstrumentation}})});var jz=j((N00)=>{Object.defineProperty(N00,"__esModule",{value:!0});N00.PACKAGE_NAME=N00.PACKAGE_VERSION=void 0;N00.PACKAGE_VERSION="0.61.0";N00.PACKAGE_NAME="@opentelemetry/instrumentation-redis"});var E00=j((I00)=>{Object.defineProperty(I00,"__esModule",{value:!0});I00.getTracedCreateStreamTrace=I00.getTracedCreateClient=I00.endSpan=void 0;var i$=I(),Nv0=(Z,J)=>{if(J)Z.setStatus({code:i$.SpanStatusCode.ERROR,message:J.message});Z.end()};I00.endSpan=Nv0;var Av0=(Z)=>{return function(){let Q=Z.apply(this,arguments);return i$.context.bind(i$.context.active(),Q)}};I00.getTracedCreateClient=Av0;var Iv0=(Z)=>{return function(){if(!Object.prototype.hasOwnProperty.call(this,"stream"))Object.defineProperty(this,"stream",{get(){return this._patched_redis_stream},set(Q){i$.context.bind(i$.context.active(),Q),this._patched_redis_stream=Q}});return Z.apply(this,arguments)}};I00.getTracedCreateStreamTrace=Iv0});var Dz=j((f00)=>{Object.defineProperty(f00,"__esModule",{value:!0});f00.DB_SYSTEM_VALUE_REDIS=f00.DB_SYSTEM_NAME_VALUE_REDIS=f00.ATTR_NET_PEER_PORT=f00.ATTR_NET_PEER_NAME=f00.ATTR_DB_SYSTEM=f00.ATTR_DB_STATEMENT=f00.ATTR_DB_CONNECTION_STRING=void 0;f00.ATTR_DB_CONNECTION_STRING="db.connection_string";f00.ATTR_DB_STATEMENT="db.statement";f00.ATTR_DB_SYSTEM="db.system";f00.ATTR_NET_PEER_NAME="net.peer.name";f00.ATTR_NET_PEER_PORT="net.peer.port";f00.DB_SYSTEM_NAME_VALUE_REDIS="redis";f00.DB_SYSTEM_VALUE_REDIS="redis"});var b00=j((_00)=>{Object.defineProperty(_00,"__esModule",{value:!0});_00.RedisInstrumentationV2_V3=void 0;var S6=n(),Oz=E00(),S00=jz(),o$=I(),n$=Y0(),f5=Dz(),vv0=wz();class aj extends S6.InstrumentationBase{static COMPONENT="redis";_semconvStability;constructor(Z={}){super(S00.PACKAGE_NAME,S00.PACKAGE_VERSION,Z);this._semconvStability=Z.semconvStability?Z.semconvStability:(0,S6.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}setConfig(Z={}){super.setConfig(Z),this._semconvStability=Z.semconvStability?Z.semconvStability:(0,S6.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}init(){return[new S6.InstrumentationNodeModuleDefinition("redis",[">=2.6.0 <4"],(Z)=>{if((0,S6.isWrapped)(Z.RedisClient.prototype.internal_send_command))this._unwrap(Z.RedisClient.prototype,"internal_send_command");if(this._wrap(Z.RedisClient.prototype,"internal_send_command",this._getPatchInternalSendCommand()),(0,S6.isWrapped)(Z.RedisClient.prototype.create_stream))this._unwrap(Z.RedisClient.prototype,"create_stream");if(this._wrap(Z.RedisClient.prototype,"create_stream",this._getPatchCreateStream()),(0,S6.isWrapped)(Z.createClient))this._unwrap(Z,"createClient");return this._wrap(Z,"createClient",this._getPatchCreateClient()),Z},(Z)=>{if(Z===void 0)return;this._unwrap(Z.RedisClient.prototype,"internal_send_command"),this._unwrap(Z.RedisClient.prototype,"create_stream"),this._unwrap(Z,"createClient")})]}_getPatchInternalSendCommand(){let Z=this;return function(Q){return function(Y){if(arguments.length!==1||typeof Y!=="object")return Q.apply(this,arguments);let X=Z.getConfig(),W=o$.trace.getSpan(o$.context.active())===void 0;if(X.requireParentSpan===!0&&W)return Q.apply(this,arguments);let K=X?.dbStatementSerializer||vv0.defaultDbStatementSerializer,z={};if(Z._semconvStability&S6.SemconvStability.OLD)Object.assign(z,{[f5.ATTR_DB_SYSTEM]:f5.DB_SYSTEM_VALUE_REDIS,[f5.ATTR_DB_STATEMENT]:K(Y.command,Y.args)});if(Z._semconvStability&S6.SemconvStability.STABLE)Object.assign(z,{[n$.ATTR_DB_SYSTEM_NAME]:f5.DB_SYSTEM_NAME_VALUE_REDIS,[n$.ATTR_DB_OPERATION_NAME]:Y.command,[n$.ATTR_DB_QUERY_TEXT]:K(Y.command,Y.args)});let G=Z.tracer.startSpan(`${aj.COMPONENT}-${Y.command}`,{kind:o$.SpanKind.CLIENT,attributes:z});if(this.connection_options){let B={};if(Z._semconvStability&S6.SemconvStability.OLD)Object.assign(B,{[f5.ATTR_NET_PEER_NAME]:this.connection_options.host,[f5.ATTR_NET_PEER_PORT]:this.connection_options.port});if(Z._semconvStability&S6.SemconvStability.STABLE)Object.assign(B,{[n$.ATTR_SERVER_ADDRESS]:this.connection_options.host,[n$.ATTR_SERVER_PORT]:this.connection_options.port});G.setAttributes(B)}if(this.address&&Z._semconvStability&S6.SemconvStability.OLD)G.setAttribute(f5.ATTR_DB_CONNECTION_STRING,`redis://${this.address}`);let H=arguments[0].callback;if(H){let B=o$.context.active();arguments[0].callback=function(F,U){if(X?.responseHook){let w=X.responseHook;(0,S6.safeExecuteInTheMiddle)(()=>{w(G,Y.command,Y.args,U)},(D)=>{if(D)Z._diag.error("Error executing responseHook",D)},!0)}return(0,Oz.endSpan)(G,F),o$.context.with(B,H,this,...arguments)}}try{return Q.apply(this,arguments)}catch(B){throw(0,Oz.endSpan)(G,B),B}}}}_getPatchCreateClient(){return function(J){return(0,Oz.getTracedCreateClient)(J)}}_getPatchCreateStream(){return function(J){return(0,Oz.getTracedCreateStreamTrace)(J)}}}_00.RedisInstrumentationV2_V3=aj});var d00=j((x00)=>{Object.defineProperty(x00,"__esModule",{value:!0});x00.getClientAttributes=void 0;var sj=Y0(),hJ=Dz(),v00=n();function xv0(Z,J,Q){let $={};if(Q&v00.SemconvStability.OLD)Object.assign($,{[hJ.ATTR_DB_SYSTEM]:hJ.DB_SYSTEM_VALUE_REDIS,[hJ.ATTR_NET_PEER_NAME]:J?.socket?.host,[hJ.ATTR_NET_PEER_PORT]:J?.socket?.port,[hJ.ATTR_DB_CONNECTION_STRING]:gv0(Z,J?.url)});if(Q&v00.SemconvStability.STABLE)Object.assign($,{[sj.ATTR_DB_SYSTEM_NAME]:hJ.DB_SYSTEM_NAME_VALUE_REDIS,[sj.ATTR_SERVER_ADDRESS]:J?.socket?.host,[sj.ATTR_SERVER_PORT]:J?.socket?.port});return $}x00.getClientAttributes=xv0;function gv0(Z,J){if(typeof J!=="string"||!J)return;try{let Q=new URL(J);return Q.searchParams.delete("user_pwd"),Q.username="",Q.password="",Q.href}catch(Q){Z.error("failed to sanitize redis connection url",Q)}return}});var i00=j((l00)=>{Object.defineProperty(l00,"__esModule",{value:!0});l00.RedisInstrumentationV4_V5=void 0;var W9=I(),N0=n(),c00=d00(),dv0=wz(),m00=jz(),rj=Y0(),cv0=Dz(),a$=Symbol("opentelemetry.instrumentation.redis.open_spans"),u00=Symbol("opentelemetry.instrumentation.redis.multi_command_options");class Lz extends N0.InstrumentationBase{static COMPONENT="redis";_semconvStability;constructor(Z={}){super(m00.PACKAGE_NAME,m00.PACKAGE_VERSION,Z);this._semconvStability=Z.semconvStability?Z.semconvStability:(0,N0.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}setConfig(Z={}){super.setConfig(Z),this._semconvStability=Z.semconvStability?Z.semconvStability:(0,N0.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}init(){return[this._getInstrumentationNodeModuleDefinition("@redis/client"),this._getInstrumentationNodeModuleDefinition("@node-redis/client")]}_getInstrumentationNodeModuleDefinition(Z){let J=new N0.InstrumentationNodeModuleFile(`${Z}/dist/lib/commander.js`,["^1.0.0"],(Y,X)=>{let W=Y.transformCommandArguments;if(!W)return this._diag.error("internal instrumentation error, missing transformCommandArguments function"),Y;let K=X?.startsWith("1.0.")?"extendWithCommands":"attachCommands";if((0,N0.isWrapped)(Y?.[K]))this._unwrap(Y,K);return this._wrap(Y,K,this._getPatchExtendWithCommands(W)),Y},(Y)=>{if((0,N0.isWrapped)(Y?.extendWithCommands))this._unwrap(Y,"extendWithCommands");if((0,N0.isWrapped)(Y?.attachCommands))this._unwrap(Y,"attachCommands")}),Q=new N0.InstrumentationNodeModuleFile(`${Z}/dist/lib/client/multi-command.js`,["^1.0.0","^5.0.0"],(Y)=>{let X=Y?.default?.prototype;if((0,N0.isWrapped)(X?.exec))this._unwrap(X,"exec");if(this._wrap(X,"exec",this._getPatchMultiCommandsExec(!1)),(0,N0.isWrapped)(X?.execAsPipeline))this._unwrap(X,"execAsPipeline");if(this._wrap(X,"execAsPipeline",this._getPatchMultiCommandsExec(!0)),(0,N0.isWrapped)(X?.addCommand))this._unwrap(X,"addCommand");return this._wrap(X,"addCommand",this._getPatchMultiCommandsAddCommand()),Y},(Y)=>{let X=Y?.default?.prototype;if((0,N0.isWrapped)(X?.exec))this._unwrap(X,"exec");if((0,N0.isWrapped)(X?.addCommand))this._unwrap(X,"addCommand")}),$=new N0.InstrumentationNodeModuleFile(`${Z}/dist/lib/client/index.js`,["^1.0.0","^5.0.0"],(Y)=>{let X=Y?.default?.prototype;if(X?.multi){if((0,N0.isWrapped)(X?.multi))this._unwrap(X,"multi");this._wrap(X,"multi",this._getPatchRedisClientMulti())}if(X?.MULTI){if((0,N0.isWrapped)(X?.MULTI))this._unwrap(X,"MULTI");this._wrap(X,"MULTI",this._getPatchRedisClientMulti())}if((0,N0.isWrapped)(X?.sendCommand))this._unwrap(X,"sendCommand");return this._wrap(X,"sendCommand",this._getPatchRedisClientSendCommand()),this._wrap(X,"connect",this._getPatchedClientConnect()),Y},(Y)=>{let X=Y?.default?.prototype;if((0,N0.isWrapped)(X?.multi))this._unwrap(X,"multi");if((0,N0.isWrapped)(X?.MULTI))this._unwrap(X,"MULTI");if((0,N0.isWrapped)(X?.sendCommand))this._unwrap(X,"sendCommand")});return new N0.InstrumentationNodeModuleDefinition(Z,["^1.0.0","^5.0.0"],(Y)=>{return Y},()=>{},[J,Q,$])}_getPatchExtendWithCommands(Z){let J=this;return function($){return function(X){if(X?.BaseClass?.name!=="RedisClient")return $.apply(this,arguments);let W=X.executor;return X.executor=function(K,z){let G=Z(K,z).args;return J._traceClientCommand(W,this,arguments,G)},$.apply(this,arguments)}}}_getPatchMultiCommandsExec(Z){let J=this;return function($){return function(){let X=$.apply(this,arguments);if(typeof X?.then!=="function")return J._diag.error("non-promise result when patching exec/execAsPipeline"),X;return X.then((W)=>{let K=this[a$];return J._endSpansWithRedisReplies(K,W,Z),W}).catch((W)=>{let K=this[a$];if(!K)J._diag.error("cannot find open spans to end for multi/pipeline");else{let z=W.constructor.name==="MultiErrorReply"?W.replies:Array(K.length).fill(W);J._endSpansWithRedisReplies(K,z,Z)}return Promise.reject(W)})}}}_getPatchMultiCommandsAddCommand(){let Z=this;return function(Q){return function(Y){return Z._traceClientCommand(Q,this,arguments,Y)}}}_getPatchRedisClientMulti(){return function(J){return function(){let $=J.apply(this,arguments);return $[u00]=this.options,$}}}_getPatchRedisClientSendCommand(){let Z=this;return function(Q){return function(Y){return Z._traceClientCommand(Q,this,arguments,Y)}}}_getPatchedClientConnect(){let Z=this;return function(Q){return function(){let Y=this.options,X=(0,c00.getClientAttributes)(Z._diag,Y,Z._semconvStability),W=Z.tracer.startSpan(`${Lz.COMPONENT}-connect`,{kind:W9.SpanKind.CLIENT,attributes:X});return W9.context.with(W9.trace.setSpan(W9.context.active(),W),()=>{return Q.apply(this)}).then((z)=>{return W.end(),z}).catch((z)=>{return W.recordException(z),W.setStatus({code:W9.SpanStatusCode.ERROR,message:z.message}),W.end(),Promise.reject(z)})}}}_traceClientCommand(Z,J,Q,$){if(W9.trace.getSpan(W9.context.active())===void 0&&this.getConfig().requireParentSpan)return Z.apply(J,Q);let X=J.options||J[u00],W=$[0],K=$.slice(1),z=this.getConfig().dbStatementSerializer||dv0.defaultDbStatementSerializer,G=(0,c00.getClientAttributes)(this._diag,X,this._semconvStability);if(this._semconvStability&N0.SemconvStability.STABLE)G[rj.ATTR_DB_OPERATION_NAME]=W;try{let V=z(W,K);if(V!=null){if(this._semconvStability&N0.SemconvStability.OLD)G[cv0.ATTR_DB_STATEMENT]=V;if(this._semconvStability&N0.SemconvStability.STABLE)G[rj.ATTR_DB_QUERY_TEXT]=V}}catch(V){this._diag.error("dbStatementSerializer throw an exception",V,{commandName:W})}let H=this.tracer.startSpan(`${Lz.COMPONENT}-${W}`,{kind:W9.SpanKind.CLIENT,attributes:G}),B=W9.context.with(W9.trace.setSpan(W9.context.active(),H),()=>{return Z.apply(J,Q)});if(typeof B?.then==="function")B.then((V)=>{this._endSpanWithResponse(H,W,K,V,void 0)},(V)=>{this._endSpanWithResponse(H,W,K,null,V)});else{let V=B;V[a$]=V[a$]||[],V[a$].push({span:H,commandName:W,commandArgs:K})}return B}_endSpansWithRedisReplies(Z,J,Q=!1){if(!Z)return this._diag.error("cannot find open spans to end for redis multi/pipeline");if(J.length!==Z.length)return this._diag.error("number of multi command spans does not match response from redis");let $=Z.map((W)=>W.commandName),X=$.every((W)=>W===$[0])?(Q?"PIPELINE ":"MULTI ")+$[0]:Q?"PIPELINE":"MULTI";for(let W=0;W<Z.length;W++){let{span:K,commandArgs:z}=Z[W],G=J[W],[H,B]=G instanceof Error?[null,G]:[G,void 0];if(this._semconvStability&N0.SemconvStability.STABLE)K.setAttribute(rj.ATTR_DB_OPERATION_NAME,X);this._endSpanWithResponse(K,$[W],z,H,B)}}_endSpanWithResponse(Z,J,Q,$,Y){let{responseHook:X}=this.getConfig();if(!Y&&X)try{X(Z,J,Q,$)}catch(W){this._diag.error("responseHook throw an exception",W)}if(Y)Z.recordException(Y),Z.setStatus({code:W9.SpanStatusCode.ERROR,message:Y?.message});Z.end()}}l00.RedisInstrumentationV4_V5=Lz});var t00=j((s00)=>{Object.defineProperty(s00,"__esModule",{value:!0});s00.RedisInstrumentation=void 0;var mv0=n(),o00=jz(),uv0=b00(),lv0=i00(),n00={requireParentSpan:!1};class a00 extends mv0.InstrumentationBase{instrumentationV2_V3;instrumentationV4_V5;initialized=!1;constructor(Z={}){let J={...n00,...Z};super(o00.PACKAGE_NAME,o00.PACKAGE_VERSION,J);this.instrumentationV2_V3=new uv0.RedisInstrumentationV2_V3(this.getConfig()),this.instrumentationV4_V5=new lv0.RedisInstrumentationV4_V5(this.getConfig()),this.initialized=!0}setConfig(Z={}){let J={...n00,...Z};if(super.setConfig(J),!this.initialized)return;this.instrumentationV2_V3.setConfig(J),this.instrumentationV4_V5.setConfig(J)}init(){}getModuleDefinitions(){return[...this.instrumentationV2_V3.getModuleDefinitions(),...this.instrumentationV4_V5.getModuleDefinitions()]}setTracerProvider(Z){if(super.setTracerProvider(Z),!this.initialized)return;this.instrumentationV2_V3.setTracerProvider(Z),this.instrumentationV4_V5.setTracerProvider(Z)}enable(){if(super.enable(),!this.initialized)return;this.instrumentationV2_V3.enable(),this.instrumentationV4_V5.enable()}disable(){if(super.disable(),!this.initialized)return;this.instrumentationV2_V3.disable(),this.instrumentationV4_V5.disable()}}s00.RedisInstrumentation=a00});var e00=j((tj)=>{Object.defineProperty(tj,"__esModule",{value:!0});tj.RedisInstrumentation=void 0;var pv0=t00();Object.defineProperty(tj,"RedisInstrumentation",{enumerable:!0,get:function(){return pv0.RedisInstrumentation}})});function s$(Z,J){return Z.includes(J.toLowerCase())}function ZD(Z){if(s$(ej,Z))return"cache.get";else if(s$(nv0,Z))return"cache.put";else return}function av0(Z,J){return J.some((Q)=>Z.startsWith(Q))}function J10(Z,J){try{if(J.length===0)return;let Q=(Y)=>{if(typeof Y==="string"||typeof Y==="number"||Buffer.isBuffer(Y))return[Y.toString()];else if(Array.isArray(Y))return Z10(Y.map((X)=>Q(X)));else return["<unknown>"]},$=J[0];if(s$(ov0,Z)&&$!=null)return Q($);return Z10(J.map((Y)=>Q(Y)))}catch{return}}function Q10(Z,J,Q){if(!ZD(Z))return!1;for(let $ of J)if(av0($,Q))return!0;return!1}function $10(Z){let J=(Q)=>{try{if(Buffer.isBuffer(Q))return Q.byteLength;else if(typeof Q==="string")return Q.length;else if(typeof Q==="number")return Q.toString().length;else if(Q===null||Q===void 0)return 0;return JSON.stringify(Q).length}catch{return}};return Array.isArray(Z)?Z.reduce((Q,$)=>{let Y=J($);return typeof Y==="number"?Q!==void 0?Q+Y:Y:Q},0):J(Z)}function Z10(Z){let J=[],Q=($)=>{$.forEach((Y)=>{if(Array.isArray(Y))Q(Y);else J.push(Y)})};return Q(Z),J}var ov0,ej,nv0;var Y10=q(()=>{ov0=["get","set","setex"],ej=["get","mget"],nv0=["set","setex"]});var X10,W10,Cz="Redis",r$,K10=(Z,J,Q,$)=>{Z.setAttribute(f,"auto.db.otel.redis");let Y=J10(J,Q),X=ZD(J);if(!Y||!X||!r$.cachePrefixes||!Q10(J,Y,r$.cachePrefixes))return;let W=v(Z).data["net.peer.name"],K=v(Z).data["net.peer.port"];if(K&&W)Z.setAttributes({"network.peer.address":W,"network.peer.port":K});let z=$10($);if(z)Z.setAttribute(wV,z);if(s$(ej,J)&&z!==void 0)Z.setAttribute(UV,z>0);Z.setAttributes({[g]:X,[qV]:Y});let G=Y.join(", ");Z.updateName(r$.maxCacheKeyLength?p6(G,r$.maxCacheKeyLength):G)},sv0,rv0,z10,tv0=(Z={})=>{return{name:Cz,setupOnce(){r$=Z,z10()}}},t$;var JD=q(()=>{N();X0();Y10();X10=A(k00(),1),W10=A(e00(),1),r$={},sv0=y(`${Cz}.IORedis`,()=>{return new X10.IORedisInstrumentation({responseHook:K10})}),rv0=y(`${Cz}.Redis`,()=>{return new W10.RedisInstrumentation({responseHook:K10})}),z10=Object.assign(()=>{sv0(),rv0()},{id:Cz}),t$=P(tv0)});var B10=j((G10)=>{Object.defineProperty(G10,"__esModule",{value:!0});G10.EVENT_LISTENERS_SET=void 0;G10.EVENT_LISTENERS_SET=Symbol("opentelemetry.instrumentation.pg.eventListenersSet")});var $D=j((V10)=>{Object.defineProperty(V10,"__esModule",{value:!0});V10.AttributeNames=void 0;var ev0;(function(Z){Z.PG_VALUES="db.postgresql.values",Z.PG_PLAN="db.postgresql.plan",Z.IDLE_TIMEOUT_MILLIS="db.postgresql.idle.timeout.millis",Z.MAX_CLIENT="db.postgresql.max.client"})(ev0=V10.AttributeNames||(V10.AttributeNames={}))});var YD=j((F10)=>{Object.defineProperty(F10,"__esModule",{value:!0});F10.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS=F10.METRIC_DB_CLIENT_CONNECTION_COUNT=F10.DB_SYSTEM_VALUE_POSTGRESQL=F10.DB_CLIENT_CONNECTION_STATE_VALUE_USED=F10.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE=F10.ATTR_NET_PEER_PORT=F10.ATTR_NET_PEER_NAME=F10.ATTR_DB_USER=F10.ATTR_DB_SYSTEM=F10.ATTR_DB_STATEMENT=F10.ATTR_DB_NAME=F10.ATTR_DB_CONNECTION_STRING=F10.ATTR_DB_CLIENT_CONNECTION_STATE=F10.ATTR_DB_CLIENT_CONNECTION_POOL_NAME=void 0;F10.ATTR_DB_CLIENT_CONNECTION_POOL_NAME="db.client.connection.pool.name";F10.ATTR_DB_CLIENT_CONNECTION_STATE="db.client.connection.state";F10.ATTR_DB_CONNECTION_STRING="db.connection_string";F10.ATTR_DB_NAME="db.name";F10.ATTR_DB_STATEMENT="db.statement";F10.ATTR_DB_SYSTEM="db.system";F10.ATTR_DB_USER="db.user";F10.ATTR_NET_PEER_NAME="net.peer.name";F10.ATTR_NET_PEER_PORT="net.peer.port";F10.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE="idle";F10.DB_CLIENT_CONNECTION_STATE_VALUE_USED="used";F10.DB_SYSTEM_VALUE_POSTGRESQL="postgresql";F10.METRIC_DB_CLIENT_CONNECTION_COUNT="db.client.connection.count";F10.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS="db.client.connection.pending_requests"});var WD=j((q10)=>{Object.defineProperty(q10,"__esModule",{value:!0});q10.SpanNames=void 0;var Fx0;(function(Z){Z.QUERY_PREFIX="pg.query",Z.CONNECT="pg.connect",Z.POOL_CONNECT="pg-pool.connect"})(Fx0=q10.SpanNames||(q10.SpanNames={}))});var R10=j((P10)=>{Object.defineProperty(P10,"__esModule",{value:!0});P10.sanitizedErrorMessage=P10.isObjectWithTextString=P10.getErrorMessage=P10.patchClientConnectCallback=P10.patchCallbackPGPool=P10.updateCounter=P10.getPoolName=P10.patchCallback=P10.handleExecutionResult=P10.handleConfigQuery=P10.shouldSkipInstrumentation=P10.getSemanticAttributesFromPoolConnection=P10.getSemanticAttributesFromConnection=P10.getConnectionString=P10.parseAndMaskConnectionString=P10.parseNormalizedOperationName=P10.getQuerySpanName=void 0;var z7=I(),Pz=$D(),K9=Y0(),p0=YD(),y5=n(),w10=WD();function j10(Z,J){if(!J)return w10.SpanNames.QUERY_PREFIX;let Q=typeof J.name==="string"&&J.name?J.name:D10(J.text);return`${w10.SpanNames.QUERY_PREFIX}:${Q}${Z?` ${Z}`:""}`}P10.getQuerySpanName=j10;function D10(Z){let J=Z.trim(),Q=J.indexOf(" "),$=Q===-1?J:J.slice(0,Q);return $=$.toUpperCase(),$.endsWith(";")?$.slice(0,-1):$}P10.parseNormalizedOperationName=D10;function O10(Z){try{let J=new URL(Z);return J.username="",J.password="",J.toString()}catch(J){return"postgresql://localhost:5432/"}}P10.parseAndMaskConnectionString=O10;function KD(Z){if("connectionString"in Z&&Z.connectionString)return O10(Z.connectionString);let J=Z.host||"localhost",Q=Z.port||5432,$=Z.database||"";return`postgresql://${J}:${Q}/${$}`}P10.getConnectionString=KD;function Mz(Z){if(Number.isInteger(Z))return Z;return}function L10(Z,J){let Q={};if(J&y5.SemconvStability.OLD)Q={...Q,[p0.ATTR_DB_SYSTEM]:p0.DB_SYSTEM_VALUE_POSTGRESQL,[p0.ATTR_DB_NAME]:Z.database,[p0.ATTR_DB_CONNECTION_STRING]:KD(Z),[p0.ATTR_DB_USER]:Z.user,[p0.ATTR_NET_PEER_NAME]:Z.host,[p0.ATTR_NET_PEER_PORT]:Mz(Z.port)};if(J&y5.SemconvStability.STABLE)Q={...Q,[K9.ATTR_DB_SYSTEM_NAME]:K9.DB_SYSTEM_NAME_VALUE_POSTGRESQL,[K9.ATTR_DB_NAMESPACE]:Z.namespace,[K9.ATTR_SERVER_ADDRESS]:Z.host,[K9.ATTR_SERVER_PORT]:Mz(Z.port)};return Q}P10.getSemanticAttributesFromConnection=L10;function Ux0(Z,J){let Q;try{Q=Z.connectionString?new URL(Z.connectionString):void 0}catch(Y){Q=void 0}let $={[Pz.AttributeNames.IDLE_TIMEOUT_MILLIS]:Z.idleTimeoutMillis,[Pz.AttributeNames.MAX_CLIENT]:Z.maxClient};if(J&y5.SemconvStability.OLD)$={...$,[p0.ATTR_DB_SYSTEM]:p0.DB_SYSTEM_VALUE_POSTGRESQL,[p0.ATTR_DB_NAME]:Q?.pathname.slice(1)??Z.database,[p0.ATTR_DB_CONNECTION_STRING]:KD(Z),[p0.ATTR_NET_PEER_NAME]:Q?.hostname??Z.host,[p0.ATTR_NET_PEER_PORT]:Number(Q?.port)||Mz(Z.port),[p0.ATTR_DB_USER]:Q?.username??Z.user};if(J&y5.SemconvStability.STABLE)$={...$,[K9.ATTR_DB_SYSTEM_NAME]:K9.DB_SYSTEM_NAME_VALUE_POSTGRESQL,[K9.ATTR_DB_NAMESPACE]:Z.namespace,[K9.ATTR_SERVER_ADDRESS]:Q?.hostname??Z.host,[K9.ATTR_SERVER_PORT]:Number(Q?.port)||Mz(Z.port)};return $}P10.getSemanticAttributesFromPoolConnection=Ux0;function qx0(Z){return Z.requireParentSpan===!0&&z7.trace.getSpan(z7.context.active())===void 0}P10.shouldSkipInstrumentation=qx0;function wx0(Z,J,Q,$){let{connectionParameters:Y}=this,X=Y.database,W=j10(X,$),K=Z.startSpan(W,{kind:z7.SpanKind.CLIENT,attributes:L10(Y,Q)});if(!$)return K;if($.text){if(Q&y5.SemconvStability.OLD)K.setAttribute(p0.ATTR_DB_STATEMENT,$.text);if(Q&y5.SemconvStability.STABLE)K.setAttribute(K9.ATTR_DB_QUERY_TEXT,$.text)}if(J.enhancedDatabaseReporting&&Array.isArray($.values))try{let z=$.values.map((G)=>{if(G==null)return"null";else if(G instanceof Buffer)return G.toString();else if(typeof G==="object"){if(typeof G.toPostgres==="function")return G.toPostgres();return JSON.stringify(G)}else return G.toString()});K.setAttribute(Pz.AttributeNames.PG_VALUES,z)}catch(z){z7.diag.error("failed to stringify ",$.values,z)}if(typeof $.name==="string")K.setAttribute(Pz.AttributeNames.PG_PLAN,$.name);return K}P10.handleConfigQuery=wx0;function C10(Z,J,Q){if(typeof Z.responseHook==="function")(0,y5.safeExecuteInTheMiddle)(()=>{Z.responseHook(J,{data:Q})},($)=>{if($)z7.diag.error("Error running response hook",$)},!0)}P10.handleExecutionResult=C10;function jx0(Z,J,Q,$,Y){return function(W,K){if(W){if(Object.prototype.hasOwnProperty.call(W,"code"))$[K9.ATTR_ERROR_TYPE]=W.code;if(W instanceof Error)J.recordException(Rz(W));J.setStatus({code:z7.SpanStatusCode.ERROR,message:W.message})}else C10(Z,J,K);Y(),J.end(),Q.call(this,W,K)}}P10.patchCallback=jx0;function Dx0(Z){let J="";return J+=(Z?.host?`${Z.host}`:"unknown_host")+":",J+=(Z?.port?`${Z.port}`:"unknown_port")+"/",J+=Z?.database?`${Z.database}`:"unknown_database",J.trim()}P10.getPoolName=Dx0;function Ox0(Z,J,Q,$,Y){let{totalCount:X,waitingCount:W,idleCount:K}=J,z=X-K;return Q.add(z-Y.used,{[p0.ATTR_DB_CLIENT_CONNECTION_STATE]:p0.DB_CLIENT_CONNECTION_STATE_VALUE_USED,[p0.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:Z}),Q.add(K-Y.idle,{[p0.ATTR_DB_CLIENT_CONNECTION_STATE]:p0.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE,[p0.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:Z}),$.add(W-Y.pending,{[p0.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:Z}),{used:z,idle:K,pending:W}}P10.updateCounter=Ox0;function Lx0(Z,J){return function($,Y,X){if($){if($ instanceof Error)Z.recordException(Rz($));Z.setStatus({code:z7.SpanStatusCode.ERROR,message:$.message})}Z.end(),J.call(this,$,Y,X)}}P10.patchCallbackPGPool=Lx0;function Cx0(Z,J){return function($){if($){if($ instanceof Error)Z.recordException(Rz($));Z.setStatus({code:z7.SpanStatusCode.ERROR,message:$.message})}Z.end(),J.apply(this,arguments)}}P10.patchClientConnectCallback=Cx0;function Px0(Z){return typeof Z==="object"&&Z!==null&&"message"in Z?String(Z.message):void 0}P10.getErrorMessage=Px0;function Mx0(Z){return typeof Z==="object"&&typeof Z?.text==="string"}P10.isObjectWithTextString=Mx0;function Rz(Z){let J=Z?.name??"PostgreSQLError",Q=Z?.code??"UNKNOWN";return`PostgreSQL error of type '${J}' occurred (code: ${Q})`}P10.sanitizedErrorMessage=Rz});var A10=j((k10)=>{Object.defineProperty(k10,"__esModule",{value:!0});k10.PACKAGE_NAME=k10.PACKAGE_VERSION=void 0;k10.PACKAGE_VERSION="0.65.0";k10.PACKAGE_NAME="@opentelemetry/instrumentation-pg"});var b10=j((_10)=>{Object.defineProperty(_10,"__esModule",{value:!0});_10.PgInstrumentation=void 0;var t1=n(),j0=I(),I10=B10(),x0=R10(),T10=cj(),E10=A10(),f10=WD(),kz=R0(),b9=Y0(),e$=YD();function bJ(Z){return Z[Symbol.toStringTag]==="Module"?Z.default:Z}class S10 extends t1.InstrumentationBase{_connectionsCounter={used:0,idle:0,pending:0};_semconvStability;constructor(Z={}){super(E10.PACKAGE_NAME,E10.PACKAGE_VERSION,Z);this._semconvStability=(0,t1.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}_updateMetricInstruments(){this._operationDuration=this.meter.createHistogram(b9.METRIC_DB_CLIENT_OPERATION_DURATION,{description:"Duration of database client operations.",unit:"s",valueType:j0.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(e$.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(e$.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS,{description:"The number of current pending requests for an open connection.",unit:"{connection}"})}init(){let Z=[">=8.0.3 <9"],J=[">=2.0.0 <4"],Q=new t1.InstrumentationNodeModuleFile("pg/lib/native/client.js",Z,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),$=new t1.InstrumentationNodeModuleFile("pg/lib/client.js",Z,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),Y=new t1.InstrumentationNodeModuleDefinition("pg",Z,(W)=>{let K=bJ(W);return this._patchPgClient(K.Client),W},(W)=>{let K=bJ(W);return this._unpatchPgClient(K.Client),W},[$,Q]),X=new t1.InstrumentationNodeModuleDefinition("pg-pool",J,(W)=>{let K=bJ(W);if((0,t1.isWrapped)(K.prototype.connect))this._unwrap(K.prototype,"connect");return this._wrap(K.prototype,"connect",this._getPoolConnectPatch()),K},(W)=>{let K=bJ(W);if((0,t1.isWrapped)(K.prototype.connect))this._unwrap(K.prototype,"connect")});return[Y,X]}_patchPgClient(Z){if(!Z)return;let J=bJ(Z);if((0,t1.isWrapped)(J.prototype.query))this._unwrap(J.prototype,"query");if((0,t1.isWrapped)(J.prototype.connect))this._unwrap(J.prototype,"connect");return this._wrap(J.prototype,"query",this._getClientQueryPatch()),this._wrap(J.prototype,"connect",this._getClientConnectPatch()),Z}_unpatchPgClient(Z){let J=bJ(Z);if((0,t1.isWrapped)(J.prototype.query))this._unwrap(J.prototype,"query");if((0,t1.isWrapped)(J.prototype.connect))this._unwrap(J.prototype,"connect");return Z}_getClientConnectPatch(){let Z=this;return(J)=>{return function($){let Y=Z.getConfig();if(x0.shouldSkipInstrumentation(Y)||Y.ignoreConnectSpans)return J.call(this,$);let X=Z.tracer.startSpan(f10.SpanNames.CONNECT,{kind:j0.SpanKind.CLIENT,attributes:x0.getSemanticAttributesFromConnection(this,Z._semconvStability)});if($){let K=j0.trace.getSpan(j0.context.active());if($=x0.patchClientConnectCallback(X,$),K)$=j0.context.bind(j0.context.active(),$)}let W=j0.context.with(j0.trace.setSpan(j0.context.active(),X),()=>{return J.call(this,$)});return y10(X,W)}}}recordOperationDuration(Z,J){let Q={},$=[b9.ATTR_DB_NAMESPACE,b9.ATTR_ERROR_TYPE,b9.ATTR_SERVER_PORT,b9.ATTR_SERVER_ADDRESS,b9.ATTR_DB_OPERATION_NAME];if(this._semconvStability&t1.SemconvStability.OLD)$.push(e$.ATTR_DB_SYSTEM);if(this._semconvStability&t1.SemconvStability.STABLE)$.push(b9.ATTR_DB_SYSTEM_NAME);$.forEach((X)=>{if(X in Z)Q[X]=Z[X]});let Y=(0,kz.hrTimeToMilliseconds)((0,kz.hrTimeDuration)(J,(0,kz.hrTime)()))/1000;this._operationDuration.record(Y,Q)}_getClientQueryPatch(){let Z=this;return(J)=>{return this._diag.debug("Patching pg.Client.prototype.query"),function(...$){if(x0.shouldSkipInstrumentation(Z.getConfig()))return J.apply(this,$);let Y=(0,kz.hrTime)(),X=$[0],W=typeof X==="string",K=x0.isObjectWithTextString(X),z=W?{text:X,values:Array.isArray($[1])?$[1]:void 0}:K?{...X,name:X.name,text:X.text,values:X.values??(Array.isArray($[1])?$[1]:void 0)}:void 0,G={[e$.ATTR_DB_SYSTEM]:e$.DB_SYSTEM_VALUE_POSTGRESQL,[b9.ATTR_DB_NAMESPACE]:this.database,[b9.ATTR_SERVER_PORT]:this.connectionParameters.port,[b9.ATTR_SERVER_ADDRESS]:this.connectionParameters.host};if(z?.text)G[b9.ATTR_DB_OPERATION_NAME]=x0.parseNormalizedOperationName(z?.text);let H=()=>{Z.recordOperationDuration(G,Y)},B=Z.getConfig(),V=x0.handleConfigQuery.call(this,Z.tracer,B,Z._semconvStability,z);if(B.addSqlCommenterCommentToQueries){if(W)$[0]=(0,T10.addSqlCommenterComment)(V,X);else if(K&&!("name"in X))$[0]={...X,text:(0,T10.addSqlCommenterComment)(V,X.text)}}if($.length>0){let w=j0.trace.getSpan(j0.context.active());if(typeof $[$.length-1]==="function"){if($[$.length-1]=x0.patchCallback(B,V,$[$.length-1],G,H),w)$[$.length-1]=j0.context.bind(j0.context.active(),$[$.length-1])}else if(typeof z?.callback==="function"){let D=x0.patchCallback(Z.getConfig(),V,z.callback,G,H);if(w)D=j0.context.bind(j0.context.active(),D);$[0].callback=D}}let{requestHook:F}=B;if(typeof F==="function"&&z)(0,t1.safeExecuteInTheMiddle)(()=>{let{database:w,host:D,port:L,user:C}=this.connectionParameters;F(V,{connection:{database:w,host:D,port:L,user:C},query:{text:z.text,values:z.values,name:z.name}})},(w)=>{if(w)Z._diag.error("Error running query hook",w)},!0);let U;try{U=J.apply(this,$)}catch(w){if(w instanceof Error)V.recordException(x0.sanitizedErrorMessage(w));throw V.setStatus({code:j0.SpanStatusCode.ERROR,message:x0.getErrorMessage(w)}),V.end(),w}if(U instanceof Promise)return U.then((w)=>{return new Promise((D)=>{x0.handleExecutionResult(Z.getConfig(),V,w),H(),V.end(),D(w)})}).catch((w)=>{return new Promise((D,L)=>{if(w instanceof Error)V.recordException(x0.sanitizedErrorMessage(w));V.setStatus({code:j0.SpanStatusCode.ERROR,message:w.message}),H(),V.end(),L(w)})});return U}}}_setPoolConnectEventListeners(Z){if(Z[I10.EVENT_LISTENERS_SET])return;let J=x0.getPoolName(Z.options);Z.on("connect",()=>{this._connectionsCounter=x0.updateCounter(J,Z,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),Z.on("acquire",()=>{this._connectionsCounter=x0.updateCounter(J,Z,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),Z.on("remove",()=>{this._connectionsCounter=x0.updateCounter(J,Z,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),Z.on("release",()=>{this._connectionsCounter=x0.updateCounter(J,Z,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),Z[I10.EVENT_LISTENERS_SET]=!0}_getPoolConnectPatch(){let Z=this;return(J)=>{return function($){let Y=Z.getConfig();if(x0.shouldSkipInstrumentation(Y))return J.call(this,$);if(Z._setPoolConnectEventListeners(this),Y.ignoreConnectSpans)return J.call(this,$);let X=Z.tracer.startSpan(f10.SpanNames.POOL_CONNECT,{kind:j0.SpanKind.CLIENT,attributes:x0.getSemanticAttributesFromPoolConnection(this.options,Z._semconvStability)});if($){let K=j0.trace.getSpan(j0.context.active());if($=x0.patchCallbackPGPool(X,$),K)$=j0.context.bind(j0.context.active(),$)}let W=j0.context.with(j0.trace.setSpan(j0.context.active(),X),()=>{return J.call(this,$)});return y10(X,W)}}}}_10.PgInstrumentation=S10;function y10(Z,J){if(!(J instanceof Promise))return J;let Q=J;return j0.context.bind(j0.context.active(),Q.then(($)=>{return Z.end(),$}).catch(($)=>{if($ instanceof Error)Z.recordException(x0.sanitizedErrorMessage($));return Z.setStatus({code:j0.SpanStatusCode.ERROR,message:x0.getErrorMessage($)}),Z.end(),Promise.reject($)}))}});var v10=j((Nz)=>{Object.defineProperty(Nz,"__esModule",{value:!0});Nz.AttributeNames=Nz.PgInstrumentation=void 0;var cx0=b10();Object.defineProperty(Nz,"PgInstrumentation",{enumerable:!0,get:function(){return cx0.PgInstrumentation}});var mx0=$D();Object.defineProperty(Nz,"AttributeNames",{enumerable:!0,get:function(){return mx0.AttributeNames}})});var x10,g10="Postgres",d10,lx0=(Z)=>{return{name:g10,setupOnce(){d10(Z)}}},ZY;var zD=q(()=>{N();X0();x10=A(v10(),1),d10=y(g10,x10.PgInstrumentation,(Z)=>({requireParentSpan:!0,requestHook(J){q0(J,"auto.db.otel.postgres")},ignoreConnectSpans:Z?.ignoreConnectSpans??!1})),ZY=P(lx0)});var vJ,G7,v9,GD="PostgresJs",c10,px0,ix0,m10,u10,ox0=(Z)=>{return{name:GD,setupOnce(){m10(Z)}}},JY;var HD=q(()=>{N();X0();Z7();vJ=A(I(),1),G7=A(n(),1),v9=A(Y0(),1),c10=[">=3.0.0 <4"],px0=/^(SELECT|INSERT|UPDATE|DELETE|CREATE|DROP|ALTER)/i,ix0=Symbol.for("sentry.query.from.instrumented.sql"),m10=y(GD,(Z)=>new u10({requireParentSpan:Z?.requireParentSpan??!0,requestHook:Z?.requestHook}));u10=class u10 extends G7.InstrumentationBase{constructor(Z){super("sentry-postgres-js",e,Z)}init(){let Z=new G7.InstrumentationNodeModuleDefinition("postgres",c10,(J)=>{try{return this._patchPostgres(J)}catch(Q){return e0&&O.error("Failed to patch postgres module:",Q),J}},(J)=>J);return["src","cf/src","cjs/src"].forEach((J)=>{Z.files.push(new G7.InstrumentationNodeModuleFile(`postgres/${J}/query.js`,c10,this._patchQueryPrototype.bind(this),this._unpatchQueryPrototype.bind(this)))}),Z}_patchPostgres(Z){let J=typeof Z==="function",Q=J?Z:Z.default;if(typeof Q!=="function")return e0&&O.warn("postgres module does not export a function. Skipping instrumentation."),Z;let $=this,Y=function(...X){let W=Reflect.construct(Q,X);if(!W||typeof W!=="function")return e0&&O.warn("postgres() did not return a valid instance"),W;let K=$.getConfig();return kF(W,{requireParentSpan:K.requireParentSpan,requestHook:K.requestHook})};Object.setPrototypeOf(Y,Q),Object.setPrototypeOf(Y.prototype,Q.prototype);for(let X of Object.getOwnPropertyNames(Q))if(!["length","name","prototype"].includes(X)){let W=Object.getOwnPropertyDescriptor(Q,X);if(W)Object.defineProperty(Y,X,W)}if(J)return Y;else return o3(Z,"default",Y),Z}_shouldCreateSpans(){let Z=this.getConfig();return vJ.trace.getSpan(vJ.context.active())!==void 0||!Z.requireParentSpan}_setOperationName(Z,J,Q){if(Q){Z.setAttribute(v9.ATTR_DB_OPERATION_NAME,Q);return}let $=J?.match(px0);if($?.[1])Z.setAttribute(v9.ATTR_DB_OPERATION_NAME,$[1].toUpperCase())}_reconstructQuery(Z){if(!Z?.length)return;if(Z.length===1)return Z[0]||void 0;return Z.reduce((J,Q,$)=>$===0?Q:`${J}$${$}${Q}`,"")}_sanitizeSqlQuery(Z){if(!Z)return"Unknown SQL Query";return Z.replace(/--.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/;\s*$/,"").replace(/\s+/g," ").trim().replace(/\bX'[0-9A-Fa-f]*'/gi,"?").replace(/\bB'[01]*'/gi,"?").replace(/'(?:[^']|'')*'/g,"?").replace(/\b0x[0-9A-Fa-f]+/gi,"?").replace(/\b(?:TRUE|FALSE)\b/gi,"?").replace(/-?\b\d+\.?\d*[eE][+-]?\d+\b/g,"?").replace(/-?\b\d+\.\d+\b/g,"?").replace(/-?\.\d+\b/g,"?").replace(/(?<!\$)-?\b\d+\b/g,"?").replace(/\bIN\b\s*\(\s*\?(?:\s*,\s*\?)*\s*\)/gi,"IN (?)").replace(/\bIN\b\s*\(\s*\$\d+(?:\s*,\s*\$\d+)*\s*\)/gi,"IN ($?)")}_patchQueryPrototype(Z){let J=this,Q=Z.Query.prototype.handle;return Z.Query.prototype.handle=async function(...$){if(this[ix0])return Q.apply(this,$);if(!J._shouldCreateSpans())return Q.apply(this,$);let Y=J._reconstructQuery(this.strings),X=J._sanitizeSqlQuery(Y);return h0({name:X||"postgresjs.query",op:"db"},(W)=>{q0(W,"auto.db.postgresjs"),W.setAttributes({[v9.ATTR_DB_SYSTEM_NAME]:"postgres",[v9.ATTR_DB_QUERY_TEXT]:X});let K=J.getConfig(),{requestHook:z}=K;if(z)G7.safeExecuteInTheMiddle(()=>z(W,X,void 0),(B)=>{if(B)W.setAttribute("sentry.hook.error","requestHook failed"),e0&&O.error(`Error in requestHook for ${GD} integration:`,B)},!0);let G=this.resolve;this.resolve=new Proxy(G,{apply:(B,V,F)=>{try{J._setOperationName(W,X,F?.[0]?.command),W.end()}catch(U){e0&&O.error("Error ending span in resolve callback:",U)}return Reflect.apply(B,V,F)}});let H=this.reject;this.reject=new Proxy(H,{apply:(B,V,F)=>{try{W.setStatus({code:a,message:F?.[0]?.message||"unknown_error"}),W.setAttribute(v9.ATTR_DB_RESPONSE_STATUS_CODE,F?.[0]?.code||"unknown"),W.setAttribute(v9.ATTR_ERROR_TYPE,F?.[0]?.name||"unknown"),J._setOperationName(W,X),W.end()}catch(U){e0&&O.error("Error ending span in reject callback:",U)}return Reflect.apply(B,V,F)}});try{return Q.apply(this,$)}catch(B){throw W.setStatus({code:a,message:B instanceof Error?B.message:"unknown_error"}),W.end(),B}})},Z.Query.prototype.handle.__sentry_original__=Q,Z}_unpatchQueryPrototype(Z){if(Z.Query.prototype.handle.__sentry_original__)Z.Query.prototype.handle=Z.Query.prototype.handle.__sentry_original__;return Z}};JY=P(ox0)});class Az{emit(Z){}}var l10;var BD=q(()=>{l10=new Az});class p10{getLogger(Z,J,Q){return new Az}}var Iz;var VD=q(()=>{BD();Iz=new p10});class FD{constructor(Z,J,Q,$){this._provider=Z,this.name=J,this.version=Q,this.options=$}emit(Z){this._getLogger().emit(Z)}_getLogger(){if(this._delegate)return this._delegate;let Z=this._provider._getDelegateLogger(this.name,this.version,this.options);if(!Z)return l10;return this._delegate=Z,this._delegate}}var i10=q(()=>{BD()});class Tz{getLogger(Z,J,Q){var $;return($=this._getDelegateLogger(Z,J,Q))!==null&&$!==void 0?$:new FD(this,Z,J,Q)}_getDelegate(){var Z;return(Z=this._delegate)!==null&&Z!==void 0?Z:Iz}_setDelegate(Z){this._delegate=Z}_getDelegateLogger(Z,J,Q){var $;return($=this._delegate)===null||$===void 0?void 0:$.getLogger(Z,J,Q)}}var o10=q(()=>{VD();i10()});var Ez;var n10=q(()=>{Ez=typeof globalThis==="object"?globalThis:global});var a10=q(()=>{n10()});var s10=q(()=>{a10()});function r10(Z,J,Q){return($)=>$===Z?J:Q}var QY,xJ,UD=1;var t10=q(()=>{s10();QY=Symbol.for("io.opentelemetry.js.api.logs"),xJ=Ez});class fz{constructor(){this._proxyLoggerProvider=new Tz}static getInstance(){if(!this._instance)this._instance=new fz;return this._instance}setGlobalLoggerProvider(Z){if(xJ[QY])return this.getLoggerProvider();return xJ[QY]=r10(UD,Z,Iz),this._proxyLoggerProvider._setDelegate(Z),Z}getLoggerProvider(){var Z,J;return(J=(Z=xJ[QY])===null||Z===void 0?void 0:Z.call(xJ,UD))!==null&&J!==void 0?J:this._proxyLoggerProvider}getLogger(Z,J,Q){return this.getLoggerProvider().getLogger(Z,J,Q)}disable(){delete xJ[QY],this._proxyLoggerProvider=new Tz}}var e10=q(()=>{t10();VD();o10()});var Z60;var J60=q(()=>{e10();Z60=fz.getInstance()});function K60(Z,J,Q){if(!sx0(Z))return yz.diag.error(`Invalid version: ${Z}`),!1;if(!J)return!0;J=J.replace(/([<>=~^]+)\s+/g,"$1");let $=Zg0(Z);if(!$)return!1;let Y=[],X=z60($,J,Y,Q);if(X&&!Q?.includePrerelease)return tx0($,Y);return X}function sx0(Z){return typeof Z==="string"&&W60.test(Z)}function z60(Z,J,Q,$){if(J.includes("||")){let Y=J.trim().split("||");for(let X of Y)if(qD(Z,X,Q,$))return!0;return!1}else if(J.includes(" - "))J=Cg0(J,$);else if(J.includes(" ")){let Y=J.trim().replace(/\s{2,}/g," ").split(" ");for(let X of Y)if(!qD(Z,X,Q,$))return!1;return!0}return qD(Z,J,Q,$)}function qD(Z,J,Q,$){if(J=ex0(J,$),J.includes(" "))return z60(Z,J,Q,$);else{let Y=Jg0(J);return Q.push(Y),rx0(Z,Y)}}function rx0(Z,J){if(J.invalid)return!1;if(!J.version||jD(J.version))return!0;let Q=$60(Z.versionSegments||[],J.versionSegments||[]);if(Q===0){let $=Z.prereleaseSegments||[],Y=J.prereleaseSegments||[];if(!$.length&&!Y.length)Q=0;else if(!$.length&&Y.length)Q=1;else if($.length&&!Y.length)Q=-1;else Q=$60($,Y)}return ax0[J.op]?.includes(Q)}function tx0(Z,J){if(Z.prerelease)return J.some((Q)=>Q.prerelease&&Q.version===Z.version);return!0}function ex0(Z,J){return Z=Z.trim(),Z=Og0(Z,J),Z=Dg0(Z),Z=Lg0(Z,J),Z=Z.trim(),Z}function e1(Z){return!Z||Z.toLowerCase()==="x"||Z==="*"}function Zg0(Z){let J=Z.match(W60);if(!J){yz.diag.error(`Invalid version: ${Z}`);return}let Q=J.groups.version,$=J.groups.prerelease,Y=J.groups.build,X=Q.split("."),W=$?.split(".");return{op:void 0,version:Q,versionSegments:X,versionSegmentCount:X.length,prerelease:$,prereleaseSegments:W,prereleaseSegmentCount:W?W.length:0,build:Y}}function Jg0(Z){if(!Z)return{};let J=Z.match(nx0);if(!J)return yz.diag.error(`Invalid range: ${Z}`),{invalid:!0};let Q=J.groups.op,$=J.groups.version,Y=J.groups.prerelease,X=J.groups.build,W=$.split("."),K=Y?.split(".");if(Q==="==")Q="=";return{op:Q||"=",version:$,versionSegments:W,versionSegmentCount:W.length,prerelease:Y,prereleaseSegments:K,prereleaseSegmentCount:K?K.length:0,build:X}}function jD(Z){return Z==="*"||Z==="x"||Z==="X"}function Q60(Z){let J=parseInt(Z,10);return isNaN(J)?Z:J}function Qg0(Z,J){if(typeof Z===typeof J)if(typeof Z==="number")return[Z,J];else if(typeof Z==="string")return[Z,J];else throw Error("Version segments can only be strings or numbers");else return[String(Z),String(J)]}function $g0(Z,J){if(jD(Z)||jD(J))return 0;let[Q,$]=Qg0(Q60(Z),Q60(J));if(Q>$)return 1;else if(Q<$)return-1;return 0}function $60(Z,J){for(let Q=0;Q<Math.max(Z.length,J.length);Q++){let $=$g0(Z[Q]||"0",J[Q]||"0");if($!==0)return $}return 0}function Dg0(Z){let J=Ug0;return Z.replace(J,(Q,$,Y,X,W)=>{let K;if(e1($))K="";else if(e1(Y))K=`>=${$}.0.0 <${+$+1}.0.0-0`;else if(e1(X))K=`>=${$}.${Y}.0 <${$}.${+Y+1}.0-0`;else if(W)K=`>=${$}.${Y}.${X}-${W} <${$}.${+Y+1}.0-0`;else K=`>=${$}.${Y}.${X} <${$}.${+Y+1}.0-0`;return K})}function Og0(Z,J){let Q=jg0,$=J?.includePrerelease?"-0":"";return Z.replace(Q,(Y,X,W,K,z)=>{let G;if(e1(X))G="";else if(e1(W))G=`>=${X}.0.0${$} <${+X+1}.0.0-0`;else if(e1(K))if(X==="0")G=`>=${X}.${W}.0${$} <${X}.${+W+1}.0-0`;else G=`>=${X}.${W}.0${$} <${+X+1}.0.0-0`;else if(z)if(X==="0")if(W==="0")G=`>=${X}.${W}.${K}-${z} <${X}.${W}.${+K+1}-0`;else G=`>=${X}.${W}.${K}-${z} <${X}.${+W+1}.0-0`;else G=`>=${X}.${W}.${K}-${z} <${+X+1}.0.0-0`;else if(X==="0")if(W==="0")G=`>=${X}.${W}.${K}${$} <${X}.${W}.${+K+1}-0`;else G=`>=${X}.${W}.${K}${$} <${X}.${+W+1}.0-0`;else G=`>=${X}.${W}.${K} <${+X+1}.0.0-0`;return G})}function Lg0(Z,J){let Q=Gg0;return Z.replace(Q,($,Y,X,W,K,z)=>{let G=e1(X),H=G||e1(W),B=H||e1(K),V=B;if(Y==="="&&V)Y="";if(z=J?.includePrerelease?"-0":"",G)if(Y===">"||Y==="<")$="<0.0.0-0";else $="*";else if(Y&&V){if(H)W=0;if(K=0,Y===">")if(Y=">=",H)X=+X+1,W=0,K=0;else W=+W+1,K=0;else if(Y==="<=")if(Y="<",H)X=+X+1;else W=+W+1;if(Y==="<")z="-0";$=`${Y+X}.${W}.${K}${z}`}else if(H)$=`>=${X}.0.0${z} <${+X+1}.0.0-0`;else if(B)$=`>=${X}.${W}.0${z} <${X}.${+W+1}.0-0`;return $})}function Cg0(Z,J){let Q=Bg0;return Z.replace(Q,($,Y,X,W,K,z,G,H,B,V,F,U)=>{if(e1(X))Y="";else if(e1(W))Y=`>=${X}.0.0${J?.includePrerelease?"-0":""}`;else if(e1(K))Y=`>=${X}.${W}.0${J?.includePrerelease?"-0":""}`;else if(z)Y=`>=${Y}`;else Y=`>=${Y}${J?.includePrerelease?"-0":""}`;if(e1(B))H="";else if(e1(V))H=`<${+B+1}.0.0-0`;else if(e1(F))H=`<${B}.${+V+1}.0-0`;else if(U)H=`<=${B}.${V}.${F}-${U}`;else if(J?.includePrerelease)H=`<${B}.${V}.${+F+1}-0`;else H=`<=${H}`;return`${Y} ${H}`.trim()})}var yz,W60,nx0,ax0,G60="[a-zA-Z0-9-]",H60="0|[1-9]\\d*",Yg0,Xg0="((?:<|>)?=?)",Y60,Wg0,X60,Kg0,wD,$Y,zg0,Gg0,Hg0,Bg0,Vg0="(?:~>?)",Fg0,Ug0,qg0="(?:\\^)",wg0,jg0;var B60=q(()=>{yz=A(I(),1),W60=/^(?:v)?(?<version>(?<major>0|[1-9]\d*)\.(?<minor>0|[1-9]\d*)\.(?<patch>0|[1-9]\d*))(?:-(?<prerelease>(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+(?<build>[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/,nx0=/^(?<op><|>|=|==|<=|>=|~|\^|~>)?\s*(?:v)?(?<version>(?<major>x|X|\*|0|[1-9]\d*)(?:\.(?<minor>x|X|\*|0|[1-9]\d*))?(?:\.(?<patch>x|X|\*|0|[1-9]\d*))?)(?:-(?<prerelease>(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+(?<build>[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/,ax0={">":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1],"!=":[-1,1]};Yg0=`\\d*[a-zA-Z-]${G60}*`,Y60=`(?:${H60}|${Yg0})`,Wg0=`(?:-(${Y60}(?:\\.${Y60})*))`,X60=`${G60}+`,Kg0=`(?:\\+(${X60}(?:\\.${X60})*))`,wD=`${H60}|x|X|\\*`,$Y=`[v=\\s]*(${wD})(?:\\.(${wD})(?:\\.(${wD})(?:${Wg0})?${Kg0}?)?)?`,zg0=`^${Xg0}\\s*${$Y}$`,Gg0=new RegExp(zg0),Hg0=`^\\s*(${$Y})\\s+-\\s+(${$Y})\\s*$`,Bg0=new RegExp(Hg0),Fg0=`^${Vg0}${$Y}$`,Ug0=new RegExp(Fg0),wg0=`^${qg0}${$Y}$`,jg0=new RegExp(wg0)});function YY(Z,J,Q){let $=!!Z[J]&&Object.prototype.propertyIsEnumerable.call(Z,J);Object.defineProperty(Z,J,{configurable:!0,enumerable:$,writable:!0,value:Q})}function XY(Z){if(Z&&Z.logger)if(typeof Z.logger!=="function")Z6("new logger isn't a function, not replacing");else Z6=Z.logger}var Z6,S5=(Z,J,Q)=>{if(!Z||!Z[J]){Z6("no original function "+String(J)+" to wrap");return}if(!Q){Z6("no wrapper function"),Z6(Error().stack);return}let $=Z[J];if(typeof $!=="function"||typeof Q!=="function"){Z6("original object and wrapper must be functions");return}let Y=Q($,J);return YY(Y,"__original",$),YY(Y,"__unwrap",()=>{if(Z[J]===Y)YY(Z,J,$)}),YY(Y,"__wrapped",!0),YY(Z,J,Y),Y},DD=(Z,J,Q)=>{if(!Z){Z6("must provide one or more modules to patch"),Z6(Error().stack);return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){Z6("must provide one or more functions to wrap on modules");return}Z.forEach(($)=>{J.forEach((Y)=>{S5($,Y,Q)})})},gJ=(Z,J)=>{if(!Z||!Z[J]){Z6("no function to unwrap."),Z6(Error().stack);return}let Q=Z[J];if(!Q.__unwrap)Z6("no original to unwrap to -- has "+String(J)+" already been unwrapped?");else{Q.__unwrap();return}},OD=(Z,J)=>{if(!Z){Z6("must provide one or more modules to patch"),Z6(Error().stack);return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){Z6("must provide one or more functions to unwrap on modules");return}Z.forEach((Q)=>{J.forEach(($)=>{gJ(Q,$)})})};var LD=q(()=>{Z6=console.error.bind(console);XY.wrap=S5;XY.massWrap=DD;XY.unwrap=gJ;XY.massUnwrap=OD});class CD{instrumentationName;instrumentationVersion;_config={};_tracer;_meter;_logger;_diag;constructor(Z,J,Q){this.instrumentationName=Z,this.instrumentationVersion=J,this.setConfig(Q),this._diag=dJ.diag.createComponentLogger({namespace:Z}),this._tracer=dJ.trace.getTracer(Z,J),this._meter=dJ.metrics.getMeter(Z,J),this._logger=Z60.getLogger(Z,J),this._updateMetricInstruments()}_wrap=S5;_unwrap=gJ;_massWrap=DD;_massUnwrap=OD;get meter(){return this._meter}setMeterProvider(Z){this._meter=Z.getMeter(this.instrumentationName,this.instrumentationVersion),this._updateMetricInstruments()}get logger(){return this._logger}setLoggerProvider(Z){this._logger=Z.getLogger(this.instrumentationName,this.instrumentationVersion)}getModuleDefinitions(){let Z=this.init()??[];if(!Array.isArray(Z))return[Z];return Z}_updateMetricInstruments(){return}getConfig(){return this._config}setConfig(Z){this._config={enabled:!0,...Z}}setTracerProvider(Z){this._tracer=Z.getTracer(this.instrumentationName,this.instrumentationVersion)}get tracer(){return this._tracer}_runSpanCustomizationHook(Z,J,Q,$){if(!Z)return;try{Z(Q,$)}catch(Y){this._diag.error("Error running span customization hook due to exception in handler",{triggerName:J},Y)}}}var dJ;var V60=q(()=>{J60();LD();dJ=A(I(),1)});class PD{hooks=[];children=new Map}class RD{_trie=new PD;_counter=0;insert(Z){let J=this._trie;for(let Q of Z.moduleName.split("/")){let $=J.children.get(Q);if(!$)$=new PD,J.children.set(Q,$);J=$}J.hooks.push({hook:Z,insertedId:this._counter++})}search(Z,{maintainInsertionOrder:J,fullOnly:Q}={}){let $=this._trie,Y=[],X=!0;for(let W of Z.split("/")){let K=$.children.get(W);if(!K){X=!1;break}if(!Q)Y.push(...K.hooks);$=K}if(Q&&X)Y.push(...$.hooks);if(Y.length===0)return[];if(Y.length===1)return[Y[0].hook];if(J)Y.sort((W,K)=>W.insertedId-K.insertedId);return Y.map(({hook:W})=>W)}}var MD="/";import*as kD from"path";class WY{_moduleNameTrie=new RD;static _instance;constructor(){this._initialize()}_initialize(){new F60.Hook(null,{internals:!0},(Z,J,Q)=>{let $=Rg0(J),Y=this._moduleNameTrie.search($,{maintainInsertionOrder:!0,fullOnly:Q===void 0});for(let{onRequire:X}of Y)Z=X(Z,J,Q);return Z})}register(Z,J){let Q={moduleName:Z,onRequire:J};return this._moduleNameTrie.insert(Q),Q}static getInstance(){if(Mg0)return new WY;return this._instance=this._instance??new WY}}function Rg0(Z){return kD.sep!==MD?Z.split(kD.sep).join(MD):Z}var F60,Mg0;var U60=q(()=>{F60=A(_7(),1),Mg0=["afterEach","after","beforeEach","before","describe","it"].every((Z)=>{return typeof global[Z]==="function"})});var O60=j((Ag0)=>{var q60=[],ND=new WeakMap,w60=new WeakMap,j60=new Map,D60=[],kg0={set(Z,J,Q){let $=ND.get(Z),Y=$&&$[J];if(typeof Y==="function")return Y(Q);return!0},get(Z,J){if(J===Symbol.toStringTag)return"Module";let Q=w60.get(Z)[J];if(typeof Q==="function")return Q()},defineProperty(Z,J,Q){if(!("value"in Q))throw Error("Getters/setters are not supported for exports property descriptors.");let $=ND.get(Z),Y=$&&$[J];if(typeof Y==="function")return Y(Q.value);return!0}};function Ng0(Z,J,Q,$,Y){j60.set(Z,Y),ND.set(J,Q),w60.set(J,$);let X=new Proxy(J,kg0);q60.forEach((W)=>W(Z,X,Y)),D60.push([Z,X,Y])}Ag0.register=Ng0;Ag0.importHooks=q60;Ag0.specifiers=j60;Ag0.toHook=D60});var M60=j((Xj1,mJ)=>{var L60=E("path"),yg0=AQ(),{fileURLToPath:Sg0}=E("url"),{MessageChannel:_g0}=E("worker_threads"),{isBuiltin:AD}=E("module");if(!AD)AD=()=>!0;var{importHooks:ID,specifiers:hg0,toHook:bg0}=O60();function C60(Z){ID.push(Z),bg0.forEach(([J,Q,$])=>Z(J,Q,$))}function P60(Z){let J=ID.indexOf(Z);if(J>-1)ID.splice(J,1)}function cJ(Z,J,Q,$){let Y=Z(J,Q,$);if(Y&&Y!==J){if("default"in J)J.default=Y}}var TD;function vg0(){let{port1:Z,port2:J}=new _g0,Q=0,$;TD=(K)=>{Q++,Z.postMessage(K)},Z.on("message",()=>{if(Q--,$&&Q<=0)$()}).unref();function Y(){let K=setInterval(()=>{},1000),z=new Promise((G)=>{$=G}).then(()=>{clearInterval(K)});if(Q===0)$();return z}let X=J;return{registerOptions:{data:{addHookMessagePort:X,include:[]},transferList:[X]},addHookMessagePort:X,waitForAllMessagesAcknowledged:Y}}function KY(Z,J,Q){if(this instanceof KY===!1)return new KY(Z,J,Q);if(typeof Z==="function")Q=Z,Z=null,J=null;else if(typeof J==="function")Q=J,J=null;let $=J?J.internals===!0:!1;if(TD&&Array.isArray(Z))TD(Z);this._iitmHook=(Y,X,W)=>{let K=Y,z=K.startsWith("node:"),G,H;if(z){let B=Y.slice(5);if(AD(B))Y=B}else if(K.startsWith("file://")){let B=Error.stackTraceLimit;Error.stackTraceLimit=0;try{G=Sg0(Y),Y=G}catch(V){}if(Error.stackTraceLimit=B,G){let V=yg0(G);if(V)Y=V.name,H=V.basedir}}if(Z){for(let B of Z)if(G&&B===G)cJ(Q,X,G,void 0);else if(B===Y){if(!H)cJ(Q,X,Y,H);else if(H.endsWith(hg0.get(K)))cJ(Q,X,Y,H);else if($){let V=Y+L60.sep+L60.relative(H,G);cJ(Q,X,V,H)}}else if(B===W)cJ(Q,X,W,H)}else cJ(Q,X,Y,H)},C60(this._iitmHook)}KY.prototype.unhook=function(){P60(this._iitmHook)};mJ.exports=KY;mJ.exports.Hook=KY;mJ.exports.addHook=C60;mJ.exports.removeHook=P60;mJ.exports.createAddHookMessageChannel=vg0});function R60(Z){return typeof Z==="function"&&typeof Z.__original==="function"&&typeof Z.__unwrap==="function"&&Z.__wrapped===!0}import*as e8 from"path";import{types as k60}from"util";import{readFileSync as xg0}from"fs";function N60(Z,J,Q){if(typeof J>"u")return Z.includes("*");return Z.some(($)=>{return K60(J,$,{includePrerelease:Q})})}var A60,uJ,I60,lJ;var T60=q(()=>{B60();LD();V60();U60();A60=A(M60(),1),uJ=A(I(),1),I60=A(_7(),1);lJ=class lJ extends CD{_modules;_hooks=[];_requireInTheMiddleSingleton=WY.getInstance();_enabled=!1;constructor(Z,J,Q){super(Z,J,Q);let $=this.init();if($&&!Array.isArray($))$=[$];if(this._modules=$||[],this._config.enabled)this.enable()}_wrap=(Z,J,Q)=>{if(R60(Z[J]))this._unwrap(Z,J);if(!k60.isProxy(Z))return S5(Z,J,Q);else{let $=S5(Object.assign({},Z),J,Q);return Object.defineProperty(Z,J,{value:$}),$}};_unwrap=(Z,J)=>{if(!k60.isProxy(Z))return gJ(Z,J);else return Object.defineProperty(Z,J,{value:Z[J]})};_massWrap=(Z,J,Q)=>{if(!Z){uJ.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){uJ.diag.error("must provide one or more functions to wrap on modules");return}Z.forEach(($)=>{J.forEach((Y)=>{this._wrap($,Y,Q)})})};_massUnwrap=(Z,J)=>{if(!Z){uJ.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){uJ.diag.error("must provide one or more functions to wrap on modules");return}Z.forEach((Q)=>{J.forEach(($)=>{this._unwrap(Q,$)})})};_warnOnPreloadedModules(){this._modules.forEach((Z)=>{let{name:J}=Z;try{let Q=E.resolve(J);if(E.cache[Q])this._diag.warn(`Module ${J} has been loaded before ${this.instrumentationName} so it might not work, please initialize it before requiring ${J}`)}catch{}})}_extractPackageVersion(Z){try{let J=xg0(e8.join(Z,"package.json"),{encoding:"utf8"}),Q=JSON.parse(J).version;return typeof Q==="string"?Q:void 0}catch{uJ.diag.warn("Failed extracting version",Z)}return}_onRequire(Z,J,Q,$){if(!$){if(typeof Z.patch==="function"){if(Z.moduleExports=J,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs core module on require hook",{module:Z.name}),Z.patch(J)}return J}let Y=this._extractPackageVersion($);if(Z.moduleVersion=Y,Z.name===Q){if(N60(Z.supportedVersions,Y,Z.includePrerelease)){if(typeof Z.patch==="function"){if(Z.moduleExports=J,this._enabled)return this._diag.debug("Applying instrumentation patch for module on require hook",{module:Z.name,version:Z.moduleVersion,baseDir:$}),Z.patch(J,Z.moduleVersion)}}return J}let X=Z.files??[],W=e8.normalize(Q);return X.filter((z)=>z.name===W).filter((z)=>N60(z.supportedVersions,Y,Z.includePrerelease)).reduce((z,G)=>{if(G.moduleExports=z,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs module file on require hook",{module:Z.name,version:Z.moduleVersion,fileName:G.name,baseDir:$}),G.patch(z,Z.moduleVersion);return z},J)}enable(){if(this._enabled)return;if(this._enabled=!0,this._hooks.length>0){for(let Z of this._modules){if(typeof Z.patch==="function"&&Z.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module on instrumentation enabled",{module:Z.name,version:Z.moduleVersion}),Z.patch(Z.moduleExports,Z.moduleVersion);for(let J of Z.files)if(J.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module file on instrumentation enabled",{module:Z.name,version:Z.moduleVersion,fileName:J.name}),J.patch(J.moduleExports,Z.moduleVersion)}return}this._warnOnPreloadedModules();for(let Z of this._modules){let J=(X,W,K)=>{if(!K&&e8.isAbsolute(W)){let z=e8.parse(W);W=z.name,K=z.dir}return this._onRequire(Z,X,W,K)},Q=(X,W,K)=>{return this._onRequire(Z,X,W,K)},$=e8.isAbsolute(Z.name)?new I60.Hook([Z.name],{internals:!0},Q):this._requireInTheMiddleSingleton.register(Z.name,Q);this._hooks.push($);let Y=new A60.Hook([Z.name],{internals:!1},J);this._hooks.push(Y)}}disable(){if(!this._enabled)return;this._enabled=!1;for(let Z of this._modules){if(typeof Z.unpatch==="function"&&Z.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module on instrumentation disabled",{module:Z.name,version:Z.moduleVersion}),Z.unpatch(Z.moduleExports,Z.moduleVersion);for(let J of Z.files)if(J.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module file on instrumentation disabled",{module:Z.name,version:Z.moduleVersion,fileName:J.name}),J.unpatch(J.moduleExports,Z.moduleVersion)}}isEnabled(){return this._enabled}}});var E60=q(()=>{T60()});var f60=q(()=>{E60()});class Sz{name;supportedVersions;patch;unpatch;files;constructor(Z,J,Q,$,Y){this.name=Z,this.supportedVersions=J,this.patch=Q,this.unpatch=$,this.files=Y||[]}}var y60=q(()=>{f60()});function cg0(){let Z=pJ[fD];if(Z?.helper)return Z.helper;return pJ[ED]?.helper}function mg0(Z){let J={helper:Z};pJ[fD]=J,pJ[ED]=J}function ug0(){delete pJ[fD],delete pJ[ED]}function ig0(Z){switch(Z){case"client":return H7.SpanKind.CLIENT;case"internal":default:return H7.SpanKind.INTERNAL}}function b60(Z,J,Q,$,Y){if(v60(J.name,Y))return;let X={attributes:J.attributes,kind:ig0(J.kind),startTime:J.startTime};Z.startActiveSpan(J.name,X,(W)=>{if($.set(J.id,W.spanContext().spanId),J.links)W.addLinks(J.links.flatMap((z)=>{let G=$.get(z);if(!G)return[];return{context:{spanId:G,traceId:W.spanContext().traceId,traceFlags:W.spanContext().traceFlags}}}));let K=Q.filter((z)=>z.parentId===J.id);for(let z of K)b60(Z,z,Q,$,Y);W.end(J.endTime)})}function S60(Z,J){if(ng0(J))return J.then((Q)=>{return Z.end(),Q},(Q)=>{throw Z.end(),Q});return Z.end(),J}function ng0(Z){return Z!=null&&typeof Z.then==="function"}function v60(Z,J){return J.some((Q)=>typeof Q==="string"?Q===Z:Q.test(Z))}var h60,H7,gg0,dg0,ED="PRISMA_INSTRUMENTATION",fD,pJ,lg0,pg0="00-10-10-00",og0=class{tracerProvider;ignoreSpanTypes;constructor({tracerProvider:Z,ignoreSpanTypes:J}){this.tracerProvider=Z,this.ignoreSpanTypes=J}isEnabled(){return!0}getTraceParent(Z){let J=H7.trace.getSpanContext(Z??H7.context.active());if(J)return`00-${J.traceId}-${J.spanId}-0${J.traceFlags}`;return pg0}dispatchEngineSpans(Z){let J=this.tracerProvider.getTracer("prisma"),Q=new Map,$=Z.filter((Y)=>Y.parentId===null);for(let Y of $)b60(J,Y,Z,Q,this.ignoreSpanTypes)}getActiveContext(){return H7.context.active()}runInChildSpan(Z,J){if(typeof Z==="string")Z={name:Z};if(Z.internal&&!lg0)return J();let Q=this.tracerProvider.getTracer("prisma"),$=Z.context??this.getActiveContext(),Y=`prisma:client:${Z.name}`;if(v60(Y,this.ignoreSpanTypes))return J();if(Z.active===!1){let X=Q.startSpan(Y,Z,$);return S60(X,J(X,$))}return Q.startActiveSpan(Y,Z,(X)=>S60(X,J(X,$)))}},x60,_60,ag0,sg0="@prisma/client",g60;var d60=q(()=>{y60();h60=A(I(),1),H7=A(I(),1),gg0={name:"@prisma/instrumentation-contract",version:"7.4.2",description:"Shared types and utilities for Prisma instrumentation",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.mts",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-contract"},bugs:"https://github.com/prisma/prisma/issues",scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",prepublishOnly:"pnpm run build",test:"vitest run"},files:["dist"],sideEffects:!1,devDependencies:{"@opentelemetry/api":"1.9.0"},peerDependencies:{"@opentelemetry/api":"^1.8"}},dg0=gg0.version.split(".")[0],fD=`V${dg0}_PRISMA_INSTRUMENTATION`,pJ=globalThis;lg0=process.env.PRISMA_SHOW_ALL_TRACES==="true";x60={name:"@prisma/instrumentation",version:"7.4.2",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:{"@opentelemetry/api":"1.9.0","@prisma/instrumentation-contract":"workspace:*","@types/node":"~20.19.24",typescript:"5.4.5"},dependencies:{"@opentelemetry/instrumentation":"^0.207.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:"vitest run"},sideEffects:!1},_60=x60.version,ag0=x60.name,g60=class extends lJ{tracerProvider;constructor(Z={}){super(ag0,_60,Z)}setTracerProvider(Z){this.tracerProvider=Z}init(){return[new Sz(sg0,[_60])]}enable(){let Z=this._config;mg0(new og0({tracerProvider:this.tracerProvider??h60.trace.getTracerProvider(),ignoreSpanTypes:Z.ignoreSpanTypes??[]}))}disable(){ug0()}isEnabled(){return cg0()!==void 0}}});function rg0(Z){return!!Z&&typeof Z==="object"&&"dispatchEngineSpans"in Z}function m60(){let Z=globalThis.PRISMA_INSTRUMENTATION;return Z&&typeof Z==="object"&&"helper"in Z?Z.helper:void 0}function tg0(Z){switch(Z){case"client":return z9.SpanKind.CLIENT;case"internal":default:return z9.SpanKind.INTERNAL}}var z9,c60="Prisma",u60,eg0,zY;var yD=q(()=>{d60();N();X0();z9=A(I(),1);u60=class u60 extends g60{constructor(Z){super(Z?.instrumentationConfig)}enable(){super.enable();let Z=m60();if(rg0(Z))Z.createEngineSpan=(J)=>{let Q=z9.trace.getTracer("prismaV5Compatibility"),$=Q._idGenerator;if(!$){G0(()=>{console.warn("[Sentry] Could not find _idGenerator on tracer, skipping Prisma v5 compatibility - some Prisma spans may be missing!")});return}try{J.spans.forEach((Y)=>{let X=tg0(Y.kind),W=Y.parent_span_id,K=Y.span_id,z=Y.trace_id,G=Y.links?.map((B)=>{return{context:{traceId:B.trace_id,spanId:B.span_id,traceFlags:z9.TraceFlags.SAMPLED}}}),H=z9.trace.setSpanContext(z9.context.active(),{traceId:z,spanId:W,traceFlags:z9.TraceFlags.SAMPLED});z9.context.with(H,()=>{let B={generateTraceId:()=>{return z},generateSpanId:()=>{return K}};Q._idGenerator=B,Q.startSpan(Y.name,{kind:X,links:G,startTime:Y.start_time,attributes:Y.attributes}).end(Y.end_time),Q._idGenerator=$})})}finally{Q._idGenerator=$}}}};eg0=y(c60,(Z)=>{return new u60(Z)}),zY=P((Z)=>{return{name:c60,setupOnce(){eg0(Z)},setup(J){if(!m60())return;J.on("spanStart",(Q)=>{let $=v(Q);if($.description?.startsWith("prisma:"))Q.setAttribute(f,"auto.db.otel.prisma");if($.description==="prisma:engine:db_query"&&$.data["db.query.text"])Q.updateName($.data["db.query.text"]);if($.description==="prisma:engine:db_query"&&!$.data["db.system"])Q.setAttribute("db.system","prisma")})}}})});var i60=j((l60)=>{Object.defineProperty(l60,"__esModule",{value:!0});l60.PACKAGE_NAME=l60.PACKAGE_VERSION=void 0;l60.PACKAGE_VERSION="0.59.0";l60.PACKAGE_NAME="@opentelemetry/instrumentation-hapi"});var SD=j((o60)=>{Object.defineProperty(o60,"__esModule",{value:!0});o60.HapiLifecycleMethodNames=o60.HapiLayerType=o60.handlerPatched=o60.HapiComponentName=void 0;o60.HapiComponentName="@hapi/hapi";o60.handlerPatched=Symbol("hapi-handler-patched");o60.HapiLayerType={ROUTER:"router",PLUGIN:"plugin",EXT:"server.ext"};o60.HapiLifecycleMethodNames=new Set(["onPreAuth","onCredentials","onPostAuth","onPreHandler","onPostHandler","onPreResponse","onRequest"])});var r60=j((a60)=>{Object.defineProperty(a60,"__esModule",{value:!0});a60.ATTR_HTTP_METHOD=void 0;a60.ATTR_HTTP_METHOD="http.method"});var hD=j((t60)=>{Object.defineProperty(t60,"__esModule",{value:!0});t60.AttributeNames=void 0;var Yd0;(function(Z){Z.HAPI_TYPE="hapi.type",Z.PLUGIN_NAME="hapi.plugin.name",Z.EXT_TYPE="server.ext.type"})(Yd0=t60.AttributeNames||(t60.AttributeNames={}))});var $90=j((J90)=>{Object.defineProperty(J90,"__esModule",{value:!0});J90.getPluginFromInput=J90.getExtMetadata=J90.getRouteMetadata=J90.isPatchableExtMethod=J90.isDirectExtInput=J90.isLifecycleExtEventObj=J90.isLifecycleExtType=J90.getPluginName=void 0;var e60=Y0(),Xd0=r60(),GY=SD(),B7=hD(),Z90=n();function Wd0(Z){if(Z.name)return Z.name;else return Z.pkg.name}J90.getPluginName=Wd0;var Kd0=(Z)=>{return typeof Z==="string"&&GY.HapiLifecycleMethodNames.has(Z)};J90.isLifecycleExtType=Kd0;var zd0=(Z)=>{let J=Z?.type;return J!==void 0&&J90.isLifecycleExtType(J)};J90.isLifecycleExtEventObj=zd0;var Gd0=(Z)=>{return Array.isArray(Z)&&Z.length<=3&&J90.isLifecycleExtType(Z[0])&&typeof Z[1]==="function"};J90.isDirectExtInput=Gd0;var Hd0=(Z)=>{return!Array.isArray(Z)};J90.isPatchableExtMethod=Hd0;var Bd0=(Z,J,Q)=>{let $={[e60.ATTR_HTTP_ROUTE]:Z.path};if(J&Z90.SemconvStability.OLD)$[Xd0.ATTR_HTTP_METHOD]=Z.method;if(J&Z90.SemconvStability.STABLE)$[e60.ATTR_HTTP_REQUEST_METHOD]=Z.method;let Y;if(Q)$[B7.AttributeNames.HAPI_TYPE]=GY.HapiLayerType.PLUGIN,$[B7.AttributeNames.PLUGIN_NAME]=Q,Y=`${Q}: route - ${Z.path}`;else $[B7.AttributeNames.HAPI_TYPE]=GY.HapiLayerType.ROUTER,Y=`route - ${Z.path}`;return{attributes:$,name:Y}};J90.getRouteMetadata=Bd0;var Vd0=(Z,J)=>{if(J)return{attributes:{[B7.AttributeNames.EXT_TYPE]:Z,[B7.AttributeNames.HAPI_TYPE]:GY.HapiLayerType.EXT,[B7.AttributeNames.PLUGIN_NAME]:J},name:`${J}: ext - ${Z}`};return{attributes:{[B7.AttributeNames.EXT_TYPE]:Z,[B7.AttributeNames.HAPI_TYPE]:GY.HapiLayerType.EXT},name:`ext - ${Z}`}};J90.getExtMetadata=Vd0;var Fd0=(Z)=>{if("plugin"in Z){if("plugin"in Z.plugin)return Z.plugin.plugin;return Z.plugin}return Z};J90.getPluginFromInput=Fd0});var G90=j((K90)=>{Object.defineProperty(K90,"__esModule",{value:!0});K90.HapiInstrumentation=void 0;var _6=I(),Y90=R0(),HY=n(),X90=i60(),BY=SD(),ZZ=$90();class W90 extends HY.InstrumentationBase{_semconvStability;constructor(Z={}){super(X90.PACKAGE_NAME,X90.PACKAGE_VERSION,Z);this._semconvStability=(0,HY.semconvStabilityFromStr)("http",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}init(){return new HY.InstrumentationNodeModuleDefinition(BY.HapiComponentName,[">=17.0.0 <22"],(Z)=>{let J=Z[Symbol.toStringTag]==="Module"?Z.default:Z;if(!(0,HY.isWrapped)(J.server))this._wrap(J,"server",this._getServerPatch.bind(this));if(!(0,HY.isWrapped)(J.Server))this._wrap(J,"Server",this._getServerPatch.bind(this));return J},(Z)=>{let J=Z[Symbol.toStringTag]==="Module"?Z.default:Z;this._massUnwrap([J],["server","Server"])})}_getServerPatch(Z){let J=this,Q=this;return function(Y){let X=Z.apply(this,[Y]);return Q._wrap(X,"route",(W)=>{return J._getServerRoutePatch.bind(J)(W)}),Q._wrap(X,"ext",(W)=>{return J._getServerExtPatch.bind(J)(W)}),Q._wrap(X,"register",J._getServerRegisterPatch.bind(J)),X}}_getServerRegisterPatch(Z){let J=this;return function($,Y){if(Array.isArray($))for(let X of $){let W=(0,ZZ.getPluginFromInput)(X);J._wrapRegisterHandler(W)}else{let X=(0,ZZ.getPluginFromInput)($);J._wrapRegisterHandler(X)}return Z.apply(this,[$,Y])}}_getServerExtPatch(Z,J){let Q=this;return function(...Y){if(Array.isArray(Y[0])){let X=Y[0];for(let W=0;W<X.length;W++){let K=X[W];if((0,ZZ.isLifecycleExtType)(K.type)){let z=K,G=Q._wrapExtMethods(z.method,K.type,J);z.method=G,X[W]=z}}return Z.apply(this,Y)}else if((0,ZZ.isDirectExtInput)(Y)){let X=Y,W=X[1],K=Q._wrapExtMethods(W,X[0],J);return Z.apply(this,[X[0],K,X[2]])}else if((0,ZZ.isLifecycleExtEventObj)(Y[0])){let X=Y[0],W=Q._wrapExtMethods(X.method,X.type,J);return X.method=W,Z.call(this,X)}return Z.apply(this,Y)}}_getServerRoutePatch(Z,J){let Q=this;return function($){if(Array.isArray($))for(let Y=0;Y<$.length;Y++){let X=Q._wrapRouteHandler.call(Q,$[Y],J);$[Y]=X}else $=Q._wrapRouteHandler.call(Q,$,J);return Z.apply(this,[$])}}_wrapRegisterHandler(Z){let J=this,Q=(0,ZZ.getPluginName)(Z),$=Z.register,Y=this,X=function(W,K){return Y._wrap(W,"route",(z)=>{return J._getServerRoutePatch.bind(J)(z,Q)}),Y._wrap(W,"ext",(z)=>{return J._getServerExtPatch.bind(J)(z,Q)}),$.call(this,W,K)};Z.register=X}_wrapExtMethods(Z,J,Q){let $=this;if(Z instanceof Array){for(let Y=0;Y<Z.length;Y++)Z[Y]=$._wrapExtMethods(Z[Y],J);return Z}else if((0,ZZ.isPatchableExtMethod)(Z)){if(Z[BY.handlerPatched]===!0)return Z;return Z[BY.handlerPatched]=!0,async function(...X){if(_6.trace.getSpan(_6.context.active())===void 0)return await Z.apply(this,X);let W=(0,ZZ.getExtMetadata)(J,Q),K=$.tracer.startSpan(W.name,{attributes:W.attributes});try{return await _6.context.with(_6.trace.setSpan(_6.context.active(),K),Z,void 0,...X)}catch(z){throw K.recordException(z),K.setStatus({code:_6.SpanStatusCode.ERROR,message:z.message}),z}finally{K.end()}}}return Z}_wrapRouteHandler(Z,J){let Q=this;if(Z[BY.handlerPatched]===!0)return Z;Z[BY.handlerPatched]=!0;let $=(Y)=>{return async function(...X){if(_6.trace.getSpan(_6.context.active())===void 0)return await Y.call(this,...X);let W=(0,Y90.getRPCMetadata)(_6.context.active());if(W?.type===Y90.RPCType.HTTP)W.route=Z.path;let K=(0,ZZ.getRouteMetadata)(Z,Q._semconvStability,J),z=Q.tracer.startSpan(K.name,{attributes:K.attributes});try{return await _6.context.with(_6.trace.setSpan(_6.context.active(),z),()=>Y.call(this,...X))}catch(G){throw z.recordException(G),z.setStatus({code:_6.SpanStatusCode.ERROR,message:G.message}),G}finally{z.end()}}};if(typeof Z.handler==="function")Z.handler=$(Z.handler);else if(typeof Z.options==="function"){let Y=Z.options;Z.options=function(X){let W=Y(X);if(typeof W.handler==="function")W.handler=$(W.handler);return W}}else if(typeof Z.options?.handler==="function")Z.options.handler=$(Z.options.handler);return Z}}K90.HapiInstrumentation=W90});var H90=j((_z)=>{Object.defineProperty(_z,"__esModule",{value:!0});_z.AttributeNames=_z.HapiInstrumentation=void 0;var Ld0=G90();Object.defineProperty(_z,"HapiInstrumentation",{enumerable:!0,get:function(){return Ld0.HapiInstrumentation}});var Cd0=hD();Object.defineProperty(_z,"AttributeNames",{enumerable:!0,get:function(){return Cd0.AttributeNames}})});function Rd0(Z){return!!(Z&&typeof Z==="object"&&("error"in Z)&&Z.error)}function kd0(Z){_(Z,{mechanism:{type:"auto.function.hapi",handled:!1}})}async function vD(Z){await Z.register(Nd0);let J=k();if(J)J.on("spanStart",(Q)=>{Ad0(Q)});E9(Z.register,"hapi")}function Ad0(Z){let J=v(Z).data,Q=J["hapi.type"];if(J[g]||!Q)return;Z.setAttributes({[f]:"auto.http.otel.hapi",[g]:`${Q}.hapi`})}var B90,V90="Hapi",F90,Md0=()=>{return{name:V90,setupOnce(){F90()}}},VY,Nd0;var xD=q(()=>{N();X0();Z7();B90=A(H90(),1),F90=y(V90,()=>new B90.HapiInstrumentation),VY=P(Md0);Nd0={name:"SentryHapiErrorPlugin",version:e,register:async function(Z){Z.events.on({name:"request",channels:["error"]},(Q,$)=>{if(x()!==X6()){let Y=Q.route;if(Y.path)x().setTransactionName(`${Y.method.toUpperCase()} ${Y.path}`)}else e0&&O.warn("Isolation scope is still the default isolation scope - skipping setting transactionName");if(Rd0($))kd0($.error)})}}});var V7,FY;var gD=q(()=>{V7={HONO_TYPE:"hono.type",HONO_NAME:"hono.name"},FY={MIDDLEWARE:"middleware",REQUEST_HANDLER:"request_handler"}});var _5,hz,Id0="@sentry/instrumentation-hono",Td0="0.0.1",dD;var U90=q(()=>{N();gD();_5=A(I(),1),hz=A(n(),1);dD=class dD extends hz.InstrumentationBase{constructor(Z={}){super(Id0,Td0,Z)}init(){return[new hz.InstrumentationNodeModuleDefinition("hono",[">=4.0.0 <5"],(Z)=>this._patch(Z))]}_patch(Z){let J=this;class Q extends Z.Hono{constructor(...$){super(...$);J._wrap(this,"get",J._patchHandler()),J._wrap(this,"post",J._patchHandler()),J._wrap(this,"put",J._patchHandler()),J._wrap(this,"delete",J._patchHandler()),J._wrap(this,"options",J._patchHandler()),J._wrap(this,"patch",J._patchHandler()),J._wrap(this,"all",J._patchHandler()),J._wrap(this,"on",J._patchOnHandler()),J._wrap(this,"use",J._patchMiddlewareHandler())}}try{Z.Hono=Q}catch{return{...Z,Hono:Q}}return Z}_patchHandler(){let Z=this;return function(J){return function(...$){if(typeof $[0]==="string"){let Y=$[0];if($.length===1)return J.apply(this,[Y]);let X=$.slice(1);return J.apply(this,[Y,...X.map((W)=>Z._wrapHandler(W))])}return J.apply(this,$.map((Y)=>Z._wrapHandler(Y)))}}}_patchOnHandler(){let Z=this;return function(J){return function(...$){let Y=$.slice(2);return J.apply(this,[...$.slice(0,2),...Y.map((X)=>Z._wrapHandler(X))])}}}_patchMiddlewareHandler(){let Z=this;return function(J){return function(...$){if(typeof $[0]==="string"){let Y=$[0];if($.length===1)return J.apply(this,[Y]);let X=$.slice(1);return J.apply(this,[Y,...X.map((W)=>Z._wrapHandler(W))])}return J.apply(this,$.map((Y)=>Z._wrapHandler(Y)))}}}_wrapHandler(Z){let J=this;return function(Q,$){if(!J.isEnabled())return Z.apply(this,[Q,$]);let Y=Q.req.path,X=J.tracer.startSpan(Y);return _5.context.with(_5.trace.setSpan(_5.context.active(),X),()=>{return J._safeExecute(()=>{let W=Z.apply(this,[Q,$]);if(X1(W))return W.then((K)=>{let z=J._determineHandlerType(K);return X.setAttributes({[V7.HONO_TYPE]:z,[V7.HONO_NAME]:z===FY.REQUEST_HANDLER?Y:Z.name||"anonymous"}),J.getConfig().responseHook?.(X),K});else{let K=J._determineHandlerType(W);return X.setAttributes({[V7.HONO_TYPE]:K,[V7.HONO_NAME]:K===FY.REQUEST_HANDLER?Y:Z.name||"anonymous"}),J.getConfig().responseHook?.(X),W}},()=>X.end(),(W)=>{J._handleError(X,W),X.end()})})}}_safeExecute(Z,J,Q){try{let $=Z();if(X1($))$.then(()=>J(),(Y)=>Q(Y));else J();return $}catch($){throw Q($),$}}_determineHandlerType(Z){return Z===void 0?FY.MIDDLEWARE:FY.REQUEST_HANDLER}_handleError(Z,J){if(J instanceof Error)Z.setStatus({code:_5.SpanStatusCode.ERROR,message:J.message}),Z.recordException(J)}}});function Ed0(Z){let J=v(Z).data,Q=J[V7.HONO_TYPE];if(J[g]||!Q)return;Z.setAttributes({[f]:"auto.http.otel.hono",[g]:`${Q}.hono`});let $=J[V7.HONO_NAME];if(typeof $==="string")Z.updateName($);if(x()===X6()){e0&&O.warn("Isolation scope is default isolation scope - skipping setting transactionName");return}let Y=J[bz.ATTR_HTTP_ROUTE],X=J[bz.ATTR_HTTP_REQUEST_METHOD];if(typeof Y==="string"&&typeof X==="string")x().setTransactionName(`${X} ${Y}`)}function yd0(){return async function(J,Q){let $=TZ(J.req);x().setSDKProcessingMetadata({normalizedRequest:$}),await Q()}}function Sd0(Z){return Z.res.status>=500}function _d0(Z){return async function(Q,$){if(await $(),(Z?.shouldHandleError||Sd0)(Q))Q.res.sentry=_(Q.error,{mechanism:{type:"auto.middleware.hono",handled:!1}})}}function cD(Z,J){Z.use(yd0()),Z.use(_d0(J)),E9(Z.use,"hono")}var bz,q90="Hono",w90,fd0=()=>{return{name:q90,setupOnce(){w90()}}},UY;var mD=q(()=>{N();X0();Z7();gD();U90();bz=A(Y0(),1);w90=y(q90,()=>new dD({responseHook:(Z)=>{Ed0(Z)}})),UY=P(fd0)});var vz=j((j90)=>{Object.defineProperty(j90,"__esModule",{value:!0});j90.KoaLayerType=void 0;var hd0;(function(Z){Z.ROUTER="router",Z.MIDDLEWARE="middleware"})(hd0=j90.KoaLayerType||(j90.KoaLayerType={}))});var L90=j((D90)=>{Object.defineProperty(D90,"__esModule",{value:!0});D90.PACKAGE_NAME=D90.PACKAGE_VERSION=void 0;D90.PACKAGE_VERSION="0.61.0";D90.PACKAGE_NAME="@opentelemetry/instrumentation-koa"});var pD=j((C90)=>{Object.defineProperty(C90,"__esModule",{value:!0});C90.AttributeNames=void 0;var vd0;(function(Z){Z.KOA_TYPE="koa.type",Z.KOA_NAME="koa.name"})(vd0=C90.AttributeNames||(C90.AttributeNames={}))});var k90=j((M90)=>{Object.defineProperty(M90,"__esModule",{value:!0});M90.isLayerIgnored=M90.getMiddlewareMetadata=void 0;var P90=vz(),xz=pD(),xd0=Y0(),gd0=(Z,J,Q,$)=>{if(Q)return{attributes:{[xz.AttributeNames.KOA_NAME]:$?.toString(),[xz.AttributeNames.KOA_TYPE]:P90.KoaLayerType.ROUTER,[xd0.ATTR_HTTP_ROUTE]:$?.toString()},name:Z._matchedRouteName||`router - ${$}`};else return{attributes:{[xz.AttributeNames.KOA_NAME]:J.name??"middleware",[xz.AttributeNames.KOA_TYPE]:P90.KoaLayerType.MIDDLEWARE},name:`middleware - ${J.name}`}};M90.getMiddlewareMetadata=gd0;var dd0=(Z,J)=>{return!!(Array.isArray(J?.ignoreLayersType)&&J?.ignoreLayersType?.includes(Z))};M90.isLayerIgnored=dd0});var I90=j((N90)=>{Object.defineProperty(N90,"__esModule",{value:!0});N90.kLayerPatched=void 0;N90.kLayerPatched=Symbol("koa-layer-patched")});var v90=j((h90)=>{Object.defineProperty(h90,"__esModule",{value:!0});h90.KoaInstrumentation=void 0;var Q8=I(),qY=n(),T90=vz(),E90=L90(),f90=k90(),y90=R0(),S90=I90();class _90 extends qY.InstrumentationBase{constructor(Z={}){super(E90.PACKAGE_NAME,E90.PACKAGE_VERSION,Z)}init(){return new qY.InstrumentationNodeModuleDefinition("koa",[">=2.0.0 <4"],(Z)=>{let J=Z[Symbol.toStringTag]==="Module"?Z.default:Z;if(J==null)return J;if((0,qY.isWrapped)(J.prototype.use))this._unwrap(J.prototype,"use");return this._wrap(J.prototype,"use",this._getKoaUsePatch.bind(this)),Z},(Z)=>{let J=Z[Symbol.toStringTag]==="Module"?Z.default:Z;if((0,qY.isWrapped)(J.prototype.use))this._unwrap(J.prototype,"use")})}_getKoaUsePatch(Z){let J=this;return function($){let Y;if($.router)Y=J._patchRouterDispatch($);else Y=J._patchLayer($,!1);return Z.apply(this,[Y])}}_patchRouterDispatch(Z){Q8.diag.debug("Patching @koa/router dispatch");let Q=Z.router?.stack??[];for(let $ of Q){let{path:Y,stack:X}=$;for(let W=0;W<X.length;W++){let K=X[W];X[W]=this._patchLayer(K,!0,Y)}}return Z}_patchLayer(Z,J,Q){let $=J?T90.KoaLayerType.ROUTER:T90.KoaLayerType.MIDDLEWARE;if(Z[S90.kLayerPatched]===!0||(0,f90.isLayerIgnored)($,this.getConfig()))return Z;if(Z.constructor.name==="GeneratorFunction"||Z.constructor.name==="AsyncGeneratorFunction")return Q8.diag.debug("ignoring generator-based Koa middleware layer"),Z;return Z[S90.kLayerPatched]=!0,Q8.diag.debug("patching Koa middleware layer"),async(Y,X)=>{if(Q8.trace.getSpan(Q8.context.active())===void 0)return Z(Y,X);let K=(0,f90.getMiddlewareMetadata)(Y,Z,J,Q),z=this.tracer.startSpan(K.name,{attributes:K.attributes}),G=(0,y90.getRPCMetadata)(Q8.context.active());if(G?.type===y90.RPCType.HTTP&&Y._matchedRoute)G.route=Y._matchedRoute.toString();let{requestHook:H}=this.getConfig();if(H)(0,qY.safeExecuteInTheMiddle)(()=>H(z,{context:Y,middlewareLayer:Z,layerType:$}),(V)=>{if(V)Q8.diag.error("koa instrumentation: request hook failed",V)},!0);let B=Q8.trace.setSpan(Q8.context.active(),z);return Q8.context.with(B,async()=>{try{return await Z(Y,X)}catch(V){throw z.recordException(V),V}finally{z.end()}})}}}h90.KoaInstrumentation=_90});var x90=j((wY)=>{Object.defineProperty(wY,"__esModule",{value:!0});wY.KoaLayerType=wY.AttributeNames=wY.KoaInstrumentation=void 0;var md0=v90();Object.defineProperty(wY,"KoaInstrumentation",{enumerable:!0,get:function(){return md0.KoaInstrumentation}});var ud0=pD();Object.defineProperty(wY,"AttributeNames",{enumerable:!0,get:function(){return ud0.AttributeNames}});var ld0=vz();Object.defineProperty(wY,"KoaLayerType",{enumerable:!0,get:function(){return ld0.KoaLayerType}})});var g90,d90,c90="Koa",m90,id0=(Z={})=>{return{name:c90,setupOnce(){m90(Z)}}},jY,iD=(Z)=>{Z.use(async(J,Q)=>{try{await Q()}catch($){throw _($,{mechanism:{handled:!1,type:"auto.middleware.koa"}}),$}}),E9(Z.use,"koa")};var oD=q(()=>{N();X0();Z7();g90=A(x90(),1),d90=A(Y0(),1),m90=y(c90,g90.KoaInstrumentation,(Z={})=>{return{ignoreLayersType:Z.ignoreLayersType,requestHook(J,Q){q0(J,"auto.http.otel.koa");let $=v(J).data,Y=$["koa.type"];if(Y)J.setAttribute(g,`${Y}.koa`);let X=$["koa.name"];if(typeof X==="string")J.updateName(X||"< unknown >");if(x()===X6()){e0&&O.warn("Isolation scope is default isolation scope - skipping setting transactionName");return}let W=$[d90.ATTR_HTTP_ROUTE],K=Q.context?.request?.method?.toUpperCase()||"GET";if(W)x().setTransactionName(`${K} ${W}`)}}}),jY=P(id0)});var aD=j((p90)=>{Object.defineProperty(p90,"__esModule",{value:!0});p90.ConnectNames=p90.ConnectTypes=p90.AttributeNames=void 0;var od0;(function(Z){Z.CONNECT_TYPE="connect.type",Z.CONNECT_NAME="connect.name"})(od0=p90.AttributeNames||(p90.AttributeNames={}));var nd0;(function(Z){Z.MIDDLEWARE="middleware",Z.REQUEST_HANDLER="request_handler"})(nd0=p90.ConnectTypes||(p90.ConnectTypes={}));var ad0;(function(Z){Z.MIDDLEWARE="middleware",Z.REQUEST_HANDLER="request handler"})(ad0=p90.ConnectNames||(p90.ConnectNames={}))});var n90=j((i90)=>{Object.defineProperty(i90,"__esModule",{value:!0});i90.PACKAGE_NAME=i90.PACKAGE_VERSION=void 0;i90.PACKAGE_VERSION="0.56.0";i90.PACKAGE_NAME="@opentelemetry/instrumentation-connect"});var r90=j((a90)=>{Object.defineProperty(a90,"__esModule",{value:!0});a90._LAYERS_STORE_PROPERTY=void 0;a90._LAYERS_STORE_PROPERTY=Symbol("opentelemetry.instrumentation-connect.request-route-stack")});var Z80=j((t90)=>{Object.defineProperty(t90,"__esModule",{value:!0});t90.generateRoute=t90.replaceCurrentStackRoute=t90.addNewStackLayer=void 0;var rd0=I(),F7=r90(),td0=(Z)=>{if(Array.isArray(Z[F7._LAYERS_STORE_PROPERTY])===!1)Object.defineProperty(Z,F7._LAYERS_STORE_PROPERTY,{enumerable:!1,value:[]});Z[F7._LAYERS_STORE_PROPERTY].push("/");let J=Z[F7._LAYERS_STORE_PROPERTY].length;return()=>{if(J===Z[F7._LAYERS_STORE_PROPERTY].length)Z[F7._LAYERS_STORE_PROPERTY].pop();else rd0.diag.warn("Connect: Trying to pop the stack multiple time")}};t90.addNewStackLayer=td0;var ed0=(Z,J)=>{if(J)Z[F7._LAYERS_STORE_PROPERTY].splice(-1,1,J)};t90.replaceCurrentStackRoute=ed0;var Zc0=(Z)=>{return Z[F7._LAYERS_STORE_PROPERTY].reduce((J,Q)=>J.replace(/\/+$/,"")+Q)};t90.generateRoute=Zc0});var W80=j((Y80)=>{Object.defineProperty(Y80,"__esModule",{value:!0});Y80.ConnectInstrumentation=Y80.ANONYMOUS_NAME=void 0;var $c0=I(),J80=R0(),iJ=aD(),Q80=n90(),gz=n(),Yc0=Y0(),sD=Z80();Y80.ANONYMOUS_NAME="anonymous";class $80 extends gz.InstrumentationBase{constructor(Z={}){super(Q80.PACKAGE_NAME,Q80.PACKAGE_VERSION,Z)}init(){return[new gz.InstrumentationNodeModuleDefinition("connect",[">=3.0.0 <4"],(Z)=>{return this._patchConstructor(Z)})]}_patchApp(Z){if(!(0,gz.isWrapped)(Z.use))this._wrap(Z,"use",this._patchUse.bind(this));if(!(0,gz.isWrapped)(Z.handle))this._wrap(Z,"handle",this._patchHandle.bind(this))}_patchConstructor(Z){let J=this;return function(...Q){let $=Z.apply(this,Q);return J._patchApp($),$}}_patchNext(Z,J){return function($){let Y=Z.apply(this,[$]);return J(),Y}}_startSpan(Z,J){let Q,$,Y;if(Z)Q=iJ.ConnectTypes.REQUEST_HANDLER,Y=iJ.ConnectNames.REQUEST_HANDLER,$=Z;else Q=iJ.ConnectTypes.MIDDLEWARE,Y=iJ.ConnectNames.MIDDLEWARE,$=J.name||Y80.ANONYMOUS_NAME;let X=`${Y} - ${$}`,W={attributes:{[Yc0.ATTR_HTTP_ROUTE]:Z.length>0?Z:"/",[iJ.AttributeNames.CONNECT_TYPE]:Q,[iJ.AttributeNames.CONNECT_NAME]:$}};return this.tracer.startSpan(X,W)}_patchMiddleware(Z,J){let Q=this,$=J.length===4;function Y(){if(!Q.isEnabled())return J.apply(this,arguments);let[X,W,K]=$?[1,2,3]:[0,1,2],z=arguments[X],G=arguments[W],H=arguments[K];(0,sD.replaceCurrentStackRoute)(z,Z);let B=(0,J80.getRPCMetadata)($c0.context.active());if(Z&&B?.type===J80.RPCType.HTTP)B.route=(0,sD.generateRoute)(z);let V="";if(Z)V=`request handler - ${Z}`;else V=`middleware - ${J.name||Y80.ANONYMOUS_NAME}`;let F=Q._startSpan(Z,J);Q._diag.debug("start span",V);let U=!1;function w(){if(!U)U=!0,Q._diag.debug(`finishing span ${F.name}`),F.end();else Q._diag.debug(`span ${F.name} - already finished`);G.removeListener("close",w)}return G.addListener("close",w),arguments[K]=Q._patchNext(H,w),J.apply(this,arguments)}return Object.defineProperty(Y,"length",{value:J.length,writable:!1,configurable:!0}),Y}_patchUse(Z){let J=this;return function(...Q){let $=Q[Q.length-1],Y=Q[Q.length-2]||"";return Q[Q.length-1]=J._patchMiddleware(Y,$),Z.apply(this,Q)}}_patchHandle(Z){let J=this;return function(){let[Q,$]=[0,2],Y=arguments[Q],X=arguments[$],W=(0,sD.addNewStackLayer)(Y);if(typeof X==="function")arguments[$]=J._patchOut(X,W);return Z.apply(this,arguments)}}_patchOut(Z,J){return function(...$){return J(),Reflect.apply(Z,this,$)}}}Y80.ConnectInstrumentation=$80});var z80=j((h5)=>{Object.defineProperty(h5,"__esModule",{value:!0});h5.ConnectTypes=h5.ConnectNames=h5.AttributeNames=h5.ANONYMOUS_NAME=h5.ConnectInstrumentation=void 0;var K80=W80();Object.defineProperty(h5,"ConnectInstrumentation",{enumerable:!0,get:function(){return K80.ConnectInstrumentation}});Object.defineProperty(h5,"ANONYMOUS_NAME",{enumerable:!0,get:function(){return K80.ANONYMOUS_NAME}});var tD=aD();Object.defineProperty(h5,"AttributeNames",{enumerable:!0,get:function(){return tD.AttributeNames}});Object.defineProperty(h5,"ConnectNames",{enumerable:!0,get:function(){return tD.ConnectNames}});Object.defineProperty(h5,"ConnectTypes",{enumerable:!0,get:function(){return tD.ConnectTypes}})});function Kc0(Z,J,Q,$){_(Z,{mechanism:{handled:!1,type:"auto.middleware.connect"}}),$(Z)}function zc0(Z){let J=v(Z).data,Q=J["connect.type"];if(J[g]||!Q)return;Z.setAttributes({[f]:"auto.http.otel.connect",[g]:`${Q}.connect`});let $=J["connect.name"];if(typeof $==="string")Z.updateName($)}var G80,H80="Connect",B80,Wc0=()=>{return{name:H80,setupOnce(){B80()}}},DY,eD=(Z)=>{Z.use(Kc0);let J=k();if(J)J.on("spanStart",(Q)=>{zc0(Q)});E9(Z.use,"connect")};var Z2=q(()=>{N();X0();G80=A(z80(),1),B80=y(H80,()=>new G80.ConnectInstrumentation),DY=P(Wc0)});var U80=j((V80)=>{Object.defineProperty(V80,"__esModule",{value:!0});V80.PACKAGE_NAME=V80.PACKAGE_VERSION=void 0;V80.PACKAGE_VERSION="0.57.0";V80.PACKAGE_NAME="@opentelemetry/instrumentation-knex"});var j80=j((q80)=>{Object.defineProperty(q80,"__esModule",{value:!0});q80.SUPPORTED_VERSIONS=q80.MODULE_NAME=void 0;q80.MODULE_NAME="knex";q80.SUPPORTED_VERSIONS=[">=0.22.0 <4",">=0.10.0 <0.18.0",">=0.19.0 <0.22.0",">=0.18.0 <0.19.0"]});var J2=j((D80)=>{Object.defineProperty(D80,"__esModule",{value:!0});D80.DB_SYSTEM_NAME_VALUE_SQLITE=D80.ATTR_NET_TRANSPORT=D80.ATTR_NET_PEER_PORT=D80.ATTR_NET_PEER_NAME=D80.ATTR_DB_USER=D80.ATTR_DB_SYSTEM=D80.ATTR_DB_STATEMENT=D80.ATTR_DB_SQL_TABLE=D80.ATTR_DB_OPERATION=D80.ATTR_DB_NAME=void 0;D80.ATTR_DB_NAME="db.name";D80.ATTR_DB_OPERATION="db.operation";D80.ATTR_DB_SQL_TABLE="db.sql.table";D80.ATTR_DB_STATEMENT="db.statement";D80.ATTR_DB_SYSTEM="db.system";D80.ATTR_DB_USER="db.user";D80.ATTR_NET_PEER_NAME="net.peer.name";D80.ATTR_NET_PEER_PORT="net.peer.port";D80.ATTR_NET_TRANSPORT="net.transport";D80.DB_SYSTEM_NAME_VALUE_SQLITE="sqlite"});var C80=j((L80)=>{Object.defineProperty(L80,"__esModule",{value:!0});L80.extractTableName=L80.limitLength=L80.getName=L80.mapSystem=L80.otelExceptionFromKnexError=L80.getFormatter=void 0;var Lc0=Y0(),Cc0=J2(),Pc0=(Z)=>{if(Z){if(Z.client){if(Z.client._formatQuery)return Z.client._formatQuery.bind(Z.client);else if(Z.client.SqlString)return Z.client.SqlString.format.bind(Z.client.SqlString)}if(Z.builder)return Z.builder.toString.bind(Z.builder)}return()=>"<noop formatter>"};L80.getFormatter=Pc0;function Mc0(Z,J){if(!(Z&&Z instanceof Error))return Z;return{message:J,code:Z.code,stack:Z.stack,name:Z.name}}L80.otelExceptionFromKnexError=Mc0;var Rc0=new Map([["sqlite3",Cc0.DB_SYSTEM_NAME_VALUE_SQLITE],["pg",Lc0.DB_SYSTEM_NAME_VALUE_POSTGRESQL]]),kc0=(Z)=>{return Rc0.get(Z)||Z};L80.mapSystem=kc0;var Nc0=(Z,J,Q)=>{if(J){if(Q)return`${J} ${Z}.${Q}`;return`${J} ${Z}`}return Z};L80.getName=Nc0;var Ac0=(Z,J)=>{if(typeof Z==="string"&&typeof J==="number"&&0<J&&J<Z.length)return Z.substring(0,J)+"..";return Z};L80.limitLength=Ac0;var Ic0=(Z)=>{let J=Z?._single?.table;if(typeof J==="object")return L80.extractTableName(J);return J};L80.extractTableName=Ic0});var I80=j((N80)=>{Object.defineProperty(N80,"__esModule",{value:!0});N80.KnexInstrumentation=void 0;var JZ=I(),P80=U80(),dz=j80(),$8=n(),b5=C80(),v5=Y0(),QZ=J2(),M80=Symbol("opentelemetry.instrumentation-knex.context"),R80={maxQueryLength:1022,requireParentSpan:!1};class k80 extends $8.InstrumentationBase{_semconvStability;constructor(Z={}){super(P80.PACKAGE_NAME,P80.PACKAGE_VERSION,{...R80,...Z});this._semconvStability=(0,$8.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}setConfig(Z={}){super.setConfig({...R80,...Z})}init(){let Z=new $8.InstrumentationNodeModuleDefinition(dz.MODULE_NAME,dz.SUPPORTED_VERSIONS);return Z.files.push(this.getClientNodeModuleFileInstrumentation("src"),this.getClientNodeModuleFileInstrumentation("lib"),this.getRunnerNodeModuleFileInstrumentation("src"),this.getRunnerNodeModuleFileInstrumentation("lib"),this.getRunnerNodeModuleFileInstrumentation("lib/execution")),Z}getRunnerNodeModuleFileInstrumentation(Z){return new $8.InstrumentationNodeModuleFile(`knex/${Z}/runner.js`,dz.SUPPORTED_VERSIONS,(J,Q)=>{return this.ensureWrapped(J.prototype,"query",this.createQueryWrapper(Q)),J},(J,Q)=>{return this._unwrap(J.prototype,"query"),J})}getClientNodeModuleFileInstrumentation(Z){return new $8.InstrumentationNodeModuleFile(`knex/${Z}/client.js`,dz.SUPPORTED_VERSIONS,(J)=>{return this.ensureWrapped(J.prototype,"queryBuilder",this.storeContext.bind(this)),this.ensureWrapped(J.prototype,"schemaBuilder",this.storeContext.bind(this)),this.ensureWrapped(J.prototype,"raw",this.storeContext.bind(this)),J},(J)=>{return this._unwrap(J.prototype,"queryBuilder"),this._unwrap(J.prototype,"schemaBuilder"),this._unwrap(J.prototype,"raw"),J})}createQueryWrapper(Z){let J=this;return function($){return function(X){let W=this.client.config,K=b5.extractTableName(this.builder),z=X?.method,G=W?.connection?.filename||W?.connection?.database,{maxQueryLength:H}=J.getConfig(),B={"knex.version":Z},V=W?.connection?.filename===":memory:"?"inproc":void 0;if(J._semconvStability&$8.SemconvStability.OLD)Object.assign(B,{[QZ.ATTR_DB_SYSTEM]:b5.mapSystem(this.client.driverName),[QZ.ATTR_DB_SQL_TABLE]:K,[QZ.ATTR_DB_OPERATION]:z,[QZ.ATTR_DB_USER]:W?.connection?.user,[QZ.ATTR_DB_NAME]:G,[QZ.ATTR_NET_PEER_NAME]:W?.connection?.host,[QZ.ATTR_NET_PEER_PORT]:W?.connection?.port,[QZ.ATTR_NET_TRANSPORT]:V});if(J._semconvStability&$8.SemconvStability.STABLE)Object.assign(B,{[v5.ATTR_DB_SYSTEM_NAME]:b5.mapSystem(this.client.driverName),[v5.ATTR_DB_COLLECTION_NAME]:K,[v5.ATTR_DB_OPERATION_NAME]:z,[v5.ATTR_DB_NAMESPACE]:G,[v5.ATTR_SERVER_ADDRESS]:W?.connection?.host,[v5.ATTR_SERVER_PORT]:W?.connection?.port});if(H){let C=b5.limitLength(X?.sql,H);if(J._semconvStability&$8.SemconvStability.STABLE)B[v5.ATTR_DB_QUERY_TEXT]=C;if(J._semconvStability&$8.SemconvStability.OLD)B[QZ.ATTR_DB_STATEMENT]=C}let F=this.builder[M80]||JZ.context.active(),U=JZ.trace.getSpan(F),w=U&&JZ.trace.isSpanContextValid(U.spanContext());if(J._config.requireParentSpan&&!w)return $.bind(this)(...arguments);let D=J.tracer.startSpan(b5.getName(G,z,K),{kind:JZ.SpanKind.CLIENT,attributes:B},F),L=JZ.trace.setSpan(JZ.context.active(),D);return JZ.context.with(L,$,this,...arguments).then((C)=>{return D.end(),C}).catch((C)=>{let T=b5.getFormatter(this)(X.sql,X.bindings||[]),S=C.message.replace(T+" - ",""),m=b5.otelExceptionFromKnexError(C,S);throw D.recordException(m),D.setStatus({code:JZ.SpanStatusCode.ERROR,message:S}),D.end(),C})}}}storeContext(Z){return function(){let Q=Z.apply(this,arguments);return Object.defineProperty(Q,M80,{value:JZ.context.active()}),Q}}ensureWrapped(Z,J,Q){if((0,$8.isWrapped)(Z[J]))this._unwrap(Z,J);this._wrap(Z,J,Q)}}N80.KnexInstrumentation=k80});var T80=j(($2)=>{Object.defineProperty($2,"__esModule",{value:!0});$2.KnexInstrumentation=void 0;var _c0=I80();Object.defineProperty($2,"KnexInstrumentation",{enumerable:!0,get:function(){return _c0.KnexInstrumentation}})});var E80,f80="Knex",bc0,vc0=()=>{let Z;return{name:f80,setupOnce(){let J=bc0();Z=u8(J)},setup(J){Z?.(()=>J.on("spanStart",(Q)=>{let{data:$}=v(Q);if("knex.version"in $)Q.setAttribute(f,"auto.db.otel.knex")}))}}},Y2;var y80=q(()=>{N();X0();E80=A(T80(),1),bc0=y(f80,()=>new E80.KnexInstrumentation({requireParentSpan:!0})),Y2=P(vc0)});var h80=j((S80)=>{Object.defineProperty(S80,"__esModule",{value:!0});S80.DB_SYSTEM_VALUE_MSSQL=S80.ATTR_NET_PEER_PORT=S80.ATTR_NET_PEER_NAME=S80.ATTR_DB_USER=S80.ATTR_DB_SYSTEM=S80.ATTR_DB_STATEMENT=S80.ATTR_DB_SQL_TABLE=S80.ATTR_DB_NAME=void 0;S80.ATTR_DB_NAME="db.name";S80.ATTR_DB_SQL_TABLE="db.sql.table";S80.ATTR_DB_STATEMENT="db.statement";S80.ATTR_DB_SYSTEM="db.system";S80.ATTR_DB_USER="db.user";S80.ATTR_NET_PEER_NAME="net.peer.name";S80.ATTR_NET_PEER_PORT="net.peer.port";S80.DB_SYSTEM_VALUE_MSSQL="mssql"});var x80=j((b80)=>{Object.defineProperty(b80,"__esModule",{value:!0});b80.once=b80.getSpanName=void 0;function pc0(Z,J,Q,$){if(Z==="execBulkLoad"&&$&&J)return`${Z} ${$} ${J}`;if(Z==="callProcedure"){if(J)return`${Z} ${Q} ${J}`;return`${Z} ${Q}`}if(J)return`${Z} ${J}`;return`${Z}`}b80.getSpanName=pc0;var ic0=(Z)=>{let J=!1;return(...Q)=>{if(J)return;return J=!0,Z(...Q)}};b80.once=ic0});var c80=j((g80)=>{Object.defineProperty(g80,"__esModule",{value:!0});g80.PACKAGE_NAME=g80.PACKAGE_VERSION=void 0;g80.PACKAGE_VERSION="0.32.0";g80.PACKAGE_NAME="@opentelemetry/instrumentation-tedious"});var n80=j((i80)=>{Object.defineProperty(i80,"__esModule",{value:!0});i80.TediousInstrumentation=i80.INJECTED_CTX=void 0;var oJ=I(),ac0=E("events"),Y8=n(),x5=Y0(),U7=h80(),m80=x80(),u80=c80(),p80=Symbol("opentelemetry.instrumentation-tedious.current-database");i80.INJECTED_CTX=Symbol("opentelemetry.instrumentation-tedious.context-info-injected");var l80=["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"];function cz(Z){Object.defineProperty(this,p80,{value:Z,writable:!0})}class W2 extends Y8.InstrumentationBase{static COMPONENT="tedious";_netSemconvStability;_dbSemconvStability;constructor(Z={}){super(u80.PACKAGE_NAME,u80.PACKAGE_VERSION,Z);this._setSemconvStabilityFromEnv()}_setSemconvStabilityFromEnv(){this._netSemconvStability=(0,Y8.semconvStabilityFromStr)("http",process.env.OTEL_SEMCONV_STABILITY_OPT_IN),this._dbSemconvStability=(0,Y8.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}init(){return[new Y8.InstrumentationNodeModuleDefinition(W2.COMPONENT,[">=1.11.0 <20"],(Z)=>{let J=Z.Connection.prototype;for(let Q of l80){if((0,Y8.isWrapped)(J[Q]))this._unwrap(J,Q);this._wrap(J,Q,this._patchQuery(Q,Z))}if((0,Y8.isWrapped)(J.connect))this._unwrap(J,"connect");return this._wrap(J,"connect",this._patchConnect),Z},(Z)=>{if(Z===void 0)return;let J=Z.Connection.prototype;for(let Q of l80)this._unwrap(J,Q);this._unwrap(J,"connect")})]}_patchConnect(Z){return function(){return cz.call(this,this.config?.options?.database),this.removeListener("databaseChange",cz),this.on("databaseChange",cz),this.once("end",()=>{this.removeListener("databaseChange",cz)}),Z.apply(this,arguments)}}_buildTraceparent(Z){let J=Z.spanContext();return`00-${J.traceId}-${J.spanId}-0${Number(J.traceFlags||oJ.TraceFlags.NONE).toString(16)}`}_injectContextInfo(Z,J,Q){return new Promise(($)=>{try{let X=new J.Request("set context_info @opentelemetry_traceparent",(K)=>{$()});Object.defineProperty(X,i80.INJECTED_CTX,{value:!0});let W=Buffer.from(Q,"utf8");X.addParameter("opentelemetry_traceparent",J.TYPES.VarBinary,W,{length:W.length}),Z.execSql(X)}catch{$()}})}_shouldInjectFor(Z){return Z==="execSql"||Z==="execSqlBatch"||Z==="callProcedure"||Z==="execute"}_patchQuery(Z,J){return(Q)=>{let $=this;function Y(X){if(X?.[i80.INJECTED_CTX])return Q.apply(this,arguments);if(!(X instanceof ac0.EventEmitter))return $._diag.warn(`Unexpected invocation of patched ${Z} method. Span not recorded`),Q.apply(this,arguments);let W=0,K=0,z=()=>K++,G=()=>W++,H=this[p80],B=((R)=>{if(R.sqlTextOrProcedure==="sp_prepare"&&R.parametersByName?.stmt?.value)return R.parametersByName.stmt.value;return R.sqlTextOrProcedure})(X),V={};if($._dbSemconvStability&Y8.SemconvStability.OLD)V[U7.ATTR_DB_SYSTEM]=U7.DB_SYSTEM_VALUE_MSSQL,V[U7.ATTR_DB_NAME]=H,V[U7.ATTR_DB_USER]=this.config?.userName??this.config?.authentication?.options?.userName,V[U7.ATTR_DB_STATEMENT]=B,V[U7.ATTR_DB_SQL_TABLE]=X.table;if($._dbSemconvStability&Y8.SemconvStability.STABLE)V[x5.ATTR_DB_NAMESPACE]=H,V[x5.ATTR_DB_SYSTEM_NAME]=x5.DB_SYSTEM_NAME_VALUE_MICROSOFT_SQL_SERVER,V[x5.ATTR_DB_QUERY_TEXT]=B,V[x5.ATTR_DB_COLLECTION_NAME]=X.table;if($._netSemconvStability&Y8.SemconvStability.OLD)V[U7.ATTR_NET_PEER_NAME]=this.config?.server,V[U7.ATTR_NET_PEER_PORT]=this.config?.options?.port;if($._netSemconvStability&Y8.SemconvStability.STABLE)V[x5.ATTR_SERVER_ADDRESS]=this.config?.server,V[x5.ATTR_SERVER_PORT]=this.config?.options?.port;let F=$.tracer.startSpan((0,m80.getSpanName)(Z,H,B,X.table),{kind:oJ.SpanKind.CLIENT,attributes:V}),U=(0,m80.once)((R)=>{if(X.removeListener("done",z),X.removeListener("doneInProc",z),X.removeListener("doneProc",G),X.removeListener("error",U),this.removeListener("end",U),F.setAttribute("tedious.procedure_count",W),F.setAttribute("tedious.statement_count",K),R)F.setStatus({code:oJ.SpanStatusCode.ERROR,message:R.message});F.end()});if(X.on("done",z),X.on("doneInProc",z),X.on("doneProc",G),X.once("error",U),this.on("end",U),typeof X.callback==="function")$._wrap(X,"callback",$._patchCallbackQuery(U));else $._diag.error("Expected request.callback to be a function");let w=()=>{return oJ.context.with(oJ.trace.setSpan(oJ.context.active(),F),Q,this,...arguments)};if(!($.getConfig().enableTraceContextPropagation&&$._shouldInjectFor(Z)))return w();let C=$._buildTraceparent(F);$._injectContextInfo(this,J,C).finally(w)}return Object.defineProperty(Y,"length",{value:Q.length,writable:!1}),Y}}_patchCallbackQuery(Z){return(J)=>{return function(Q,$,Y){return Z(Q),J.apply(this,arguments)}}}}i80.TediousInstrumentation=W2});var a80=j((K2)=>{Object.defineProperty(K2,"__esModule",{value:!0});K2.TediousInstrumentation=void 0;var sc0=n80();Object.defineProperty(K2,"TediousInstrumentation",{enumerable:!0,get:function(){return sc0.TediousInstrumentation}})});var s80,tc0,r80="Tedious",t80,ec0=()=>{let Z;return{name:r80,setupOnce(){let J=t80();Z=u8(J)},setup(J){Z?.(()=>J.on("spanStart",(Q)=>{let{description:$,data:Y}=v(Q);if(!$||Y["db.system"]!=="mssql")return;let X=$.split(" ")[0]||"";if(tc0.has(X))Q.setAttribute(f,"auto.db.otel.tedious")}))}}},OY;var z2=q(()=>{N();X0();s80=A(a80(),1),tc0=new Set(["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"]),t80=y(r80,()=>new s80.TediousInstrumentation({})),OY=P(ec0)});var JZ0=j((e80)=>{Object.defineProperty(e80,"__esModule",{value:!0});e80.PACKAGE_NAME=e80.PACKAGE_VERSION=void 0;e80.PACKAGE_VERSION="0.56.0";e80.PACKAGE_NAME="@opentelemetry/instrumentation-generic-pool"});var WZ0=j((YZ0)=>{Object.defineProperty(YZ0,"__esModule",{value:!0});YZ0.GenericPoolInstrumentation=void 0;var nJ=I(),g5=n(),QZ0=JZ0(),G2="generic-pool";class $Z0 extends g5.InstrumentationBase{_isDisabled=!1;constructor(Z={}){super(QZ0.PACKAGE_NAME,QZ0.PACKAGE_VERSION,Z)}init(){return[new g5.InstrumentationNodeModuleDefinition(G2,[">=3.0.0 <4"],(Z)=>{let J=Z.Pool;if((0,g5.isWrapped)(J.prototype.acquire))this._unwrap(J.prototype,"acquire");return this._wrap(J.prototype,"acquire",this._acquirePatcher.bind(this)),Z},(Z)=>{let J=Z.Pool;return this._unwrap(J.prototype,"acquire"),Z}),new g5.InstrumentationNodeModuleDefinition(G2,[">=2.4.0 <3"],(Z)=>{let J=Z.Pool;if((0,g5.isWrapped)(J.prototype.acquire))this._unwrap(J.prototype,"acquire");return this._wrap(J.prototype,"acquire",this._acquireWithCallbacksPatcher.bind(this)),Z},(Z)=>{let J=Z.Pool;return this._unwrap(J.prototype,"acquire"),Z}),new g5.InstrumentationNodeModuleDefinition(G2,[">=2.0.0 <2.4"],(Z)=>{if(this._isDisabled=!1,(0,g5.isWrapped)(Z.Pool))this._unwrap(Z,"Pool");return this._wrap(Z,"Pool",this._poolWrapper.bind(this)),Z},(Z)=>{return this._isDisabled=!0,Z})]}_acquirePatcher(Z){let J=this;return function(...$){let Y=nJ.context.active(),X=J.tracer.startSpan("generic-pool.acquire",{},Y);return nJ.context.with(nJ.trace.setSpan(Y,X),()=>{return Z.call(this,...$).then((W)=>{return X.end(),W},(W)=>{throw X.recordException(W),X.end(),W})})}}_poolWrapper(Z){let J=this;return function(){let $=Z.apply(this,arguments);return J._wrap($,"acquire",J._acquireWithCallbacksPatcher.bind(J)),$}}_acquireWithCallbacksPatcher(Z){let J=this;return function($,Y){if(J._isDisabled)return Z.call(this,$,Y);let X=nJ.context.active(),W=J.tracer.startSpan("generic-pool.acquire",{},X);return nJ.context.with(nJ.trace.setSpan(X,W),()=>{Z.call(this,(K,z)=>{if(W.end(),$)return $(K,z)},Y)})}}}YZ0.GenericPoolInstrumentation=$Z0});var KZ0=j((H2)=>{Object.defineProperty(H2,"__esModule",{value:!0});H2.GenericPoolInstrumentation=void 0;var Jm0=WZ0();Object.defineProperty(H2,"GenericPoolInstrumentation",{enumerable:!0,get:function(){return Jm0.GenericPoolInstrumentation}})});var zZ0,GZ0="GenericPool",HZ0,$m0=()=>{let Z;return{name:GZ0,setupOnce(){let J=HZ0();Z=u8(J)},setup(J){Z?.(()=>J.on("spanStart",(Q)=>{let Y=v(Q).description;if(Y==="generic-pool.aquire"||Y==="generic-pool.acquire")Q.setAttribute(f,"auto.db.otel.generic_pool")}))}}},LY;var B2=q(()=>{N();X0();zZ0=A(KZ0(),1),HZ0=y(GZ0,()=>new zZ0.GenericPoolInstrumentation({})),LY=P($m0)});var FZ0=j((BZ0)=>{Object.defineProperty(BZ0,"__esModule",{value:!0});BZ0.PACKAGE_NAME=BZ0.PACKAGE_VERSION=void 0;BZ0.PACKAGE_VERSION="0.30.0";BZ0.PACKAGE_NAME="@opentelemetry/instrumentation-dataloader"});var OZ0=j((jZ0)=>{Object.defineProperty(jZ0,"__esModule",{value:!0});jZ0.DataloaderInstrumentation=void 0;var $Z=n(),O0=I(),UZ0=FZ0(),V2="dataloader";function qZ0(Z){return Z[Symbol.toStringTag]==="Module"?Z.default:Z}class wZ0 extends $Z.InstrumentationBase{constructor(Z={}){super(UZ0.PACKAGE_NAME,UZ0.PACKAGE_VERSION,Z)}init(){return[new $Z.InstrumentationNodeModuleDefinition(V2,[">=2.0.0 <3"],(Z)=>{let J=qZ0(Z);return this._patchLoad(J.prototype),this._patchLoadMany(J.prototype),this._patchPrime(J.prototype),this._patchClear(J.prototype),this._patchClearAll(J.prototype),this._getPatchedConstructor(J)},(Z)=>{let J=qZ0(Z);["load","loadMany","prime","clear","clearAll"].forEach((Q)=>{if((0,$Z.isWrapped)(J.prototype[Q]))this._unwrap(J.prototype,Q)})})]}shouldCreateSpans(){let Z=this.getConfig();return O0.trace.getSpan(O0.context.active())!==void 0||!Z.requireParentSpan}getSpanName(Z,J){let Q=Z.name;if(Q===void 0||Q===null)return`${V2}.${J}`;return`${V2}.${J} ${Q}`}_wrapBatchLoadFn(Z){let J=this;return function(...$){if(!J.isEnabled()||!J.shouldCreateSpans())return Z.call(this,...$);let Y=O0.context.active(),X=J.tracer.startSpan(J.getSpanName(this,"batch"),{links:this._batch?.spanLinks},Y);return O0.context.with(O0.trace.setSpan(Y,X),()=>{return Z.apply(this,$).then((W)=>{return X.end(),W}).catch((W)=>{throw X.recordException(W),X.setStatus({code:O0.SpanStatusCode.ERROR,message:W.message}),X.end(),W})})}}_getPatchedConstructor(Z){let J=this,Q=Z.prototype;if(!J.isEnabled())return Z;function $(...Y){if(typeof Y[0]==="function"){if((0,$Z.isWrapped)(Y[0]))J._unwrap(Y,0);Y[0]=J._wrapBatchLoadFn(Y[0])}return Z.apply(this,Y)}return $.prototype=Q,$}_patchLoad(Z){if((0,$Z.isWrapped)(Z.load))this._unwrap(Z,"load");this._wrap(Z,"load",this._getPatchedLoad.bind(this))}_getPatchedLoad(Z){let J=this;return function(...$){if(!J.shouldCreateSpans())return Z.call(this,...$);let Y=O0.context.active(),X=J.tracer.startSpan(J.getSpanName(this,"load"),{kind:O0.SpanKind.CLIENT},Y);return O0.context.with(O0.trace.setSpan(Y,X),()=>{let W=Z.call(this,...$).then((z)=>{return X.end(),z}).catch((z)=>{throw X.recordException(z),X.setStatus({code:O0.SpanStatusCode.ERROR,message:z.message}),X.end(),z}),K=this;if(K._batch){if(!K._batch.spanLinks)K._batch.spanLinks=[];K._batch.spanLinks.push({context:X.spanContext()})}return W})}}_patchLoadMany(Z){if((0,$Z.isWrapped)(Z.loadMany))this._unwrap(Z,"loadMany");this._wrap(Z,"loadMany",this._getPatchedLoadMany.bind(this))}_getPatchedLoadMany(Z){let J=this;return function(...$){if(!J.shouldCreateSpans())return Z.call(this,...$);let Y=O0.context.active(),X=J.tracer.startSpan(J.getSpanName(this,"loadMany"),{kind:O0.SpanKind.CLIENT},Y);return O0.context.with(O0.trace.setSpan(Y,X),()=>{return Z.call(this,...$).then((W)=>{return X.end(),W})})}}_patchPrime(Z){if((0,$Z.isWrapped)(Z.prime))this._unwrap(Z,"prime");this._wrap(Z,"prime",this._getPatchedPrime.bind(this))}_getPatchedPrime(Z){let J=this;return function(...$){if(!J.shouldCreateSpans())return Z.call(this,...$);let Y=O0.context.active(),X=J.tracer.startSpan(J.getSpanName(this,"prime"),{kind:O0.SpanKind.CLIENT},Y),W=O0.context.with(O0.trace.setSpan(Y,X),()=>{return Z.call(this,...$)});return X.end(),W}}_patchClear(Z){if((0,$Z.isWrapped)(Z.clear))this._unwrap(Z,"clear");this._wrap(Z,"clear",this._getPatchedClear.bind(this))}_getPatchedClear(Z){let J=this;return function(...$){if(!J.shouldCreateSpans())return Z.call(this,...$);let Y=O0.context.active(),X=J.tracer.startSpan(J.getSpanName(this,"clear"),{kind:O0.SpanKind.CLIENT},Y),W=O0.context.with(O0.trace.setSpan(Y,X),()=>{return Z.call(this,...$)});return X.end(),W}}_patchClearAll(Z){if((0,$Z.isWrapped)(Z.clearAll))this._unwrap(Z,"clearAll");this._wrap(Z,"clearAll",this._getPatchedClearAll.bind(this))}_getPatchedClearAll(Z){let J=this;return function(...$){if(!J.shouldCreateSpans())return Z.call(this,...$);let Y=O0.context.active(),X=J.tracer.startSpan(J.getSpanName(this,"clearAll"),{kind:O0.SpanKind.CLIENT},Y),W=O0.context.with(O0.trace.setSpan(Y,X),()=>{return Z.call(this,...$)});return X.end(),W}}}jZ0.DataloaderInstrumentation=wZ0});var LZ0=j((F2)=>{Object.defineProperty(F2,"__esModule",{value:!0});F2.DataloaderInstrumentation=void 0;var Xm0=OZ0();Object.defineProperty(F2,"DataloaderInstrumentation",{enumerable:!0,get:function(){return Xm0.DataloaderInstrumentation}})});var CZ0,PZ0="Dataloader",Km0,zm0=()=>{let Z;return{name:PZ0,setupOnce(){let J=Km0();Z=u8(J)},setup(J){Z?.(()=>{J.on("spanStart",(Q)=>{let $=v(Q);if($.description?.startsWith("dataloader"))Q.setAttribute(f,"auto.db.otel.dataloader");if($.description==="dataloader.load"||$.description==="dataloader.loadMany"||$.description==="dataloader.batch")Q.setAttribute(g,"cache.get")})})}}},U2;var MZ0=q(()=>{N();X0();CZ0=A(LZ0(),1),Km0=y(PZ0,()=>new CZ0.DataloaderInstrumentation({requireParentSpan:!0})),U2=P(zm0)});var q2=j((RZ0)=>{Object.defineProperty(RZ0,"__esModule",{value:!0});RZ0.ATTR_NET_PEER_PORT=RZ0.ATTR_NET_PEER_NAME=RZ0.ATTR_MESSAGING_SYSTEM=RZ0.ATTR_MESSAGING_OPERATION=void 0;RZ0.ATTR_MESSAGING_OPERATION="messaging.operation";RZ0.ATTR_MESSAGING_SYSTEM="messaging.system";RZ0.ATTR_NET_PEER_NAME="net.peer.name";RZ0.ATTR_NET_PEER_PORT="net.peer.port"});var w2=j((NZ0)=>{Object.defineProperty(NZ0,"__esModule",{value:!0});NZ0.ATTR_MESSAGING_CONVERSATION_ID=NZ0.OLD_ATTR_MESSAGING_MESSAGE_ID=NZ0.MESSAGING_DESTINATION_KIND_VALUE_TOPIC=NZ0.ATTR_MESSAGING_URL=NZ0.ATTR_MESSAGING_PROTOCOL_VERSION=NZ0.ATTR_MESSAGING_PROTOCOL=NZ0.MESSAGING_OPERATION_VALUE_PROCESS=NZ0.ATTR_MESSAGING_RABBITMQ_ROUTING_KEY=NZ0.ATTR_MESSAGING_DESTINATION_KIND=NZ0.ATTR_MESSAGING_DESTINATION=void 0;NZ0.ATTR_MESSAGING_DESTINATION="messaging.destination";NZ0.ATTR_MESSAGING_DESTINATION_KIND="messaging.destination_kind";NZ0.ATTR_MESSAGING_RABBITMQ_ROUTING_KEY="messaging.rabbitmq.routing_key";NZ0.MESSAGING_OPERATION_VALUE_PROCESS="process";NZ0.ATTR_MESSAGING_PROTOCOL="messaging.protocol";NZ0.ATTR_MESSAGING_PROTOCOL_VERSION="messaging.protocol_version";NZ0.ATTR_MESSAGING_URL="messaging.url";NZ0.MESSAGING_DESTINATION_KIND_VALUE_TOPIC="topic";NZ0.OLD_ATTR_MESSAGING_MESSAGE_ID="messaging.message_id";NZ0.ATTR_MESSAGING_CONVERSATION_ID="messaging.conversation_id"});var j2=j((TZ0)=>{Object.defineProperty(TZ0,"__esModule",{value:!0});TZ0.DEFAULT_CONFIG=TZ0.EndOperation=void 0;var Cm0;(function(Z){Z.AutoAck="auto ack",Z.Ack="ack",Z.AckAll="ackAll",Z.Reject="reject",Z.Nack="nack",Z.NackAll="nackAll",Z.ChannelClosed="channel closed",Z.ChannelError="channel error",Z.InstrumentationTimeout="instrumentation timeout"})(Cm0=TZ0.EndOperation||(TZ0.EndOperation={}));TZ0.DEFAULT_CONFIG={consumeTimeoutMs:60000,useLinksForConsume:!1}});var bZ0=j((_Z0)=>{Object.defineProperty(_Z0,"__esModule",{value:!0});_Z0.isConfirmChannelTracing=_Z0.unmarkConfirmChannelTracing=_Z0.markConfirmChannelTracing=_Z0.getConnectionAttributesFromUrl=_Z0.getConnectionAttributesFromServer=_Z0.normalizeExchange=_Z0.CONNECTION_ATTRIBUTES=_Z0.CHANNEL_CONSUME_TIMEOUT_TIMER=_Z0.CHANNEL_SPANS_NOT_ENDED=_Z0.MESSAGE_STORED_SPAN=void 0;var D2=I(),q7=n(),mz=Y0(),CY=q2(),uz=w2();_Z0.MESSAGE_STORED_SPAN=Symbol("opentelemetry.amqplib.message.stored-span");_Z0.CHANNEL_SPANS_NOT_ENDED=Symbol("opentelemetry.amqplib.channel.spans-not-ended");_Z0.CHANNEL_CONSUME_TIMEOUT_TIMER=Symbol("opentelemetry.amqplib.channel.consumer-timeout-timer");_Z0.CONNECTION_ATTRIBUTES=Symbol("opentelemetry.amqplib.connection.attributes");var O2=(0,D2.createContextKey)("opentelemetry.amqplib.channel.is-confirm-channel"),Pm0=(Z)=>Z!==""?Z:"<default>";_Z0.normalizeExchange=Pm0;var Mm0=(Z)=>{return Z.replace(/:[^:@/]*@/,":***@")},fZ0=(Z,J)=>{return Z||(J==="AMQP"?5672:5671)},yZ0=(Z)=>{let J=Z||"amqp";return(J.endsWith(":")?J.substring(0,J.length-1):J).toUpperCase()},SZ0=(Z)=>{return Z||"localhost"},X8=(Z,J,Q,$)=>{if(Q)return{[J]:Q};else return D2.diag.error(`amqplib instrumentation: could not extract connection attribute ${$} from user supplied url`,{url:Z}),{}},Rm0=(Z)=>{let J=Z.serverProperties.product?.toLowerCase?.();if(J)return{[CY.ATTR_MESSAGING_SYSTEM]:J};else return{}};_Z0.getConnectionAttributesFromServer=Rm0;var km0=(Z,J)=>{let Q={[uz.ATTR_MESSAGING_PROTOCOL_VERSION]:"0.9.1"};if(Z=Z||"amqp://localhost",typeof Z==="object"){let $=Z,Y=yZ0($?.protocol);Object.assign(Q,{...X8(Z,uz.ATTR_MESSAGING_PROTOCOL,Y,"protocol")});let X=SZ0($?.hostname);if(J&q7.SemconvStability.OLD)Object.assign(Q,{...X8(Z,CY.ATTR_NET_PEER_NAME,X,"hostname")});if(J&q7.SemconvStability.STABLE)Object.assign(Q,{...X8(Z,mz.ATTR_SERVER_ADDRESS,X,"hostname")});let W=fZ0($.port,Y);if(J&q7.SemconvStability.OLD)Object.assign(Q,X8(Z,CY.ATTR_NET_PEER_PORT,W,"port"));if(J&q7.SemconvStability.STABLE)Object.assign(Q,X8(Z,mz.ATTR_SERVER_PORT,W,"port"))}else{let $=Mm0(Z);Q[uz.ATTR_MESSAGING_URL]=$;try{let Y=new URL($),X=yZ0(Y.protocol);Object.assign(Q,{...X8($,uz.ATTR_MESSAGING_PROTOCOL,X,"protocol")});let W=SZ0(Y.hostname);if(J&q7.SemconvStability.OLD)Object.assign(Q,{...X8($,CY.ATTR_NET_PEER_NAME,W,"hostname")});if(J&q7.SemconvStability.STABLE)Object.assign(Q,{...X8($,mz.ATTR_SERVER_ADDRESS,W,"hostname")});let K=fZ0(Y.port?parseInt(Y.port):void 0,X);if(J&q7.SemconvStability.OLD)Object.assign(Q,X8($,CY.ATTR_NET_PEER_PORT,K,"port"));if(J&q7.SemconvStability.STABLE)Object.assign(Q,X8($,mz.ATTR_SERVER_PORT,K,"port"))}catch(Y){D2.diag.error("amqplib instrumentation: error while extracting connection details from connection url",{censoredUrl:$,err:Y})}}return Q};_Z0.getConnectionAttributesFromUrl=km0;var Nm0=(Z)=>{return Z.setValue(O2,!0)};_Z0.markConfirmChannelTracing=Nm0;var Am0=(Z)=>{return Z.deleteValue(O2)};_Z0.unmarkConfirmChannelTracing=Am0;var Im0=(Z)=>{return Z.getValue(O2)===!0};_Z0.isConfirmChannelTracing=Im0});var gZ0=j((vZ0)=>{Object.defineProperty(vZ0,"__esModule",{value:!0});vZ0.PACKAGE_NAME=vZ0.PACKAGE_VERSION=void 0;vZ0.PACKAGE_VERSION="0.60.0";vZ0.PACKAGE_NAME="@opentelemetry/instrumentation-amqplib"});var lZ0=j((mZ0)=>{Object.defineProperty(mZ0,"__esModule",{value:!0});mZ0.AmqplibInstrumentation=void 0;var g0=I(),lz=R0(),V0=n(),gm0=q2(),h6=w2(),J6=j2(),i0=bZ0(),dZ0=gZ0(),pz=[">=0.5.5 <1"];class cZ0 extends V0.InstrumentationBase{_netSemconvStability;constructor(Z={}){super(dZ0.PACKAGE_NAME,dZ0.PACKAGE_VERSION,{...J6.DEFAULT_CONFIG,...Z});this._setSemconvStabilityFromEnv()}_setSemconvStabilityFromEnv(){this._netSemconvStability=(0,V0.semconvStabilityFromStr)("http",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}setConfig(Z={}){super.setConfig({...J6.DEFAULT_CONFIG,...Z})}init(){let Z=new V0.InstrumentationNodeModuleFile("amqplib/lib/channel_model.js",pz,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),J=new V0.InstrumentationNodeModuleFile("amqplib/lib/callback_model.js",pz,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),Q=new V0.InstrumentationNodeModuleFile("amqplib/lib/connect.js",pz,this.patchConnect.bind(this),this.unpatchConnect.bind(this));return new V0.InstrumentationNodeModuleDefinition("amqplib",pz,void 0,void 0,[Z,Q,J])}patchConnect(Z){if(Z=this.unpatchConnect(Z),!(0,V0.isWrapped)(Z.connect))this._wrap(Z,"connect",this.getConnectPatch.bind(this));return Z}unpatchConnect(Z){if((0,V0.isWrapped)(Z.connect))this._unwrap(Z,"connect");return Z}patchChannelModel(Z,J){if(!(0,V0.isWrapped)(Z.Channel.prototype.publish))this._wrap(Z.Channel.prototype,"publish",this.getPublishPatch.bind(this,J));if(!(0,V0.isWrapped)(Z.Channel.prototype.consume))this._wrap(Z.Channel.prototype,"consume",this.getConsumePatch.bind(this,J));if(!(0,V0.isWrapped)(Z.Channel.prototype.ack))this._wrap(Z.Channel.prototype,"ack",this.getAckPatch.bind(this,!1,J6.EndOperation.Ack));if(!(0,V0.isWrapped)(Z.Channel.prototype.nack))this._wrap(Z.Channel.prototype,"nack",this.getAckPatch.bind(this,!0,J6.EndOperation.Nack));if(!(0,V0.isWrapped)(Z.Channel.prototype.reject))this._wrap(Z.Channel.prototype,"reject",this.getAckPatch.bind(this,!0,J6.EndOperation.Reject));if(!(0,V0.isWrapped)(Z.Channel.prototype.ackAll))this._wrap(Z.Channel.prototype,"ackAll",this.getAckAllPatch.bind(this,!1,J6.EndOperation.AckAll));if(!(0,V0.isWrapped)(Z.Channel.prototype.nackAll))this._wrap(Z.Channel.prototype,"nackAll",this.getAckAllPatch.bind(this,!0,J6.EndOperation.NackAll));if(!(0,V0.isWrapped)(Z.Channel.prototype.emit))this._wrap(Z.Channel.prototype,"emit",this.getChannelEmitPatch.bind(this));if(!(0,V0.isWrapped)(Z.ConfirmChannel.prototype.publish))this._wrap(Z.ConfirmChannel.prototype,"publish",this.getConfirmedPublishPatch.bind(this,J));return Z}unpatchChannelModel(Z){if((0,V0.isWrapped)(Z.Channel.prototype.publish))this._unwrap(Z.Channel.prototype,"publish");if((0,V0.isWrapped)(Z.Channel.prototype.consume))this._unwrap(Z.Channel.prototype,"consume");if((0,V0.isWrapped)(Z.Channel.prototype.ack))this._unwrap(Z.Channel.prototype,"ack");if((0,V0.isWrapped)(Z.Channel.prototype.nack))this._unwrap(Z.Channel.prototype,"nack");if((0,V0.isWrapped)(Z.Channel.prototype.reject))this._unwrap(Z.Channel.prototype,"reject");if((0,V0.isWrapped)(Z.Channel.prototype.ackAll))this._unwrap(Z.Channel.prototype,"ackAll");if((0,V0.isWrapped)(Z.Channel.prototype.nackAll))this._unwrap(Z.Channel.prototype,"nackAll");if((0,V0.isWrapped)(Z.Channel.prototype.emit))this._unwrap(Z.Channel.prototype,"emit");if((0,V0.isWrapped)(Z.ConfirmChannel.prototype.publish))this._unwrap(Z.ConfirmChannel.prototype,"publish");return Z}getConnectPatch(Z){let J=this;return function($,Y,X){return Z.call(this,$,Y,function(W,K){if(W==null){let z=(0,i0.getConnectionAttributesFromUrl)($,J._netSemconvStability),G=(0,i0.getConnectionAttributesFromServer)(K);K[i0.CONNECTION_ATTRIBUTES]={...z,...G}}X.apply(this,arguments)})}}getChannelEmitPatch(Z){let J=this;return function($){if($==="close"){J.endAllSpansOnChannel(this,!0,J6.EndOperation.ChannelClosed,void 0);let Y=this[i0.CHANNEL_CONSUME_TIMEOUT_TIMER];if(Y)clearInterval(Y);this[i0.CHANNEL_CONSUME_TIMEOUT_TIMER]=void 0}else if($==="error")J.endAllSpansOnChannel(this,!0,J6.EndOperation.ChannelError,void 0);return Z.apply(this,arguments)}}getAckAllPatch(Z,J,Q){let $=this;return function(X){return $.endAllSpansOnChannel(this,Z,J,X),Q.apply(this,arguments)}}getAckPatch(Z,J,Q){let $=this;return function(X,W,K){let z=this,G=J===J6.EndOperation.Reject?W:K,H=z[i0.CHANNEL_SPANS_NOT_ENDED]??[],B=H.findIndex((V)=>V.msg===X);if(B<0)$.endConsumerSpan(X,Z,J,G);else if(J!==J6.EndOperation.Reject&&W){for(let V=0;V<=B;V++)$.endConsumerSpan(H[V].msg,Z,J,G);H.splice(0,B+1)}else $.endConsumerSpan(X,Z,J,G),H.splice(B,1);return Q.apply(this,arguments)}}getConsumePatch(Z,J){let Q=this;return function(Y,X,W){let K=this;if(!Object.prototype.hasOwnProperty.call(K,i0.CHANNEL_SPANS_NOT_ENDED)){let{consumeTimeoutMs:G}=Q.getConfig();if(G){let H=setInterval(()=>{Q.checkConsumeTimeoutOnChannel(K)},G);H.unref(),K[i0.CHANNEL_CONSUME_TIMEOUT_TIMER]=H}K[i0.CHANNEL_SPANS_NOT_ENDED]=[]}let z=function(G){if(!G)return X.call(this,G);let H=G.properties.headers??{},B=g0.propagation.extract(g0.ROOT_CONTEXT,H),V=G.fields?.exchange,F;if(Q._config.useLinksForConsume){let L=B?g0.trace.getSpan(B)?.spanContext():void 0;if(B=void 0,L)F=[{context:L}]}let U=Q.tracer.startSpan(`${Y} process`,{kind:g0.SpanKind.CONSUMER,attributes:{...K?.connection?.[i0.CONNECTION_ATTRIBUTES],[h6.ATTR_MESSAGING_DESTINATION]:V,[h6.ATTR_MESSAGING_DESTINATION_KIND]:h6.MESSAGING_DESTINATION_KIND_VALUE_TOPIC,[h6.ATTR_MESSAGING_RABBITMQ_ROUTING_KEY]:G.fields?.routingKey,[gm0.ATTR_MESSAGING_OPERATION]:h6.MESSAGING_OPERATION_VALUE_PROCESS,[h6.OLD_ATTR_MESSAGING_MESSAGE_ID]:G?.properties.messageId,[h6.ATTR_MESSAGING_CONVERSATION_ID]:G?.properties.correlationId},links:F},B),{consumeHook:w}=Q.getConfig();if(w)(0,V0.safeExecuteInTheMiddle)(()=>w(U,{moduleVersion:Z,msg:G}),(L)=>{if(L)g0.diag.error("amqplib instrumentation: consumerHook error",L)},!0);if(!W?.noAck)K[i0.CHANNEL_SPANS_NOT_ENDED].push({msg:G,timeOfConsume:(0,lz.hrTime)()}),G[i0.MESSAGE_STORED_SPAN]=U;let D=B?B:g0.ROOT_CONTEXT;if(g0.context.with(g0.trace.setSpan(D,U),()=>{X.call(this,G)}),W?.noAck)Q.callConsumeEndHook(U,G,!1,J6.EndOperation.AutoAck),U.end()};return arguments[1]=z,J.apply(this,arguments)}}getConfirmedPublishPatch(Z,J){let Q=this;return function(Y,X,W,K,z){let G=this,{span:H,modifiedOptions:B}=Q.createPublishSpan(Q,Y,X,G,K),{publishHook:V}=Q.getConfig();if(V)(0,V0.safeExecuteInTheMiddle)(()=>V(H,{moduleVersion:Z,exchange:Y,routingKey:X,content:W,options:B,isConfirmChannel:!0}),(D)=>{if(D)g0.diag.error("amqplib instrumentation: publishHook error",D)},!0);let F=function(D,L){try{z?.call(this,D,L)}finally{let{publishConfirmHook:C}=Q.getConfig();if(C)(0,V0.safeExecuteInTheMiddle)(()=>C(H,{moduleVersion:Z,exchange:Y,routingKey:X,content:W,options:K,isConfirmChannel:!0,confirmError:D}),(R)=>{if(R)g0.diag.error("amqplib instrumentation: publishConfirmHook error",R)},!0);if(D)H.setStatus({code:g0.SpanStatusCode.ERROR,message:"message confirmation has been nack'ed"});H.end()}},U=(0,i0.markConfirmChannelTracing)(g0.context.active()),w=[...arguments];return w[3]=B,w[4]=g0.context.bind((0,i0.unmarkConfirmChannelTracing)(g0.trace.setSpan(U,H)),F),g0.context.with(U,J.bind(this,...w))}}getPublishPatch(Z,J){let Q=this;return function(Y,X,W,K){if((0,i0.isConfirmChannelTracing)(g0.context.active()))return J.apply(this,arguments);else{let z=this,{span:G,modifiedOptions:H}=Q.createPublishSpan(Q,Y,X,z,K),{publishHook:B}=Q.getConfig();if(B)(0,V0.safeExecuteInTheMiddle)(()=>B(G,{moduleVersion:Z,exchange:Y,routingKey:X,content:W,options:H,isConfirmChannel:!1}),(U)=>{if(U)g0.diag.error("amqplib instrumentation: publishHook error",U)},!0);let V=[...arguments];V[3]=H;let F=J.apply(this,V);return G.end(),F}}}createPublishSpan(Z,J,Q,$,Y){let X=(0,i0.normalizeExchange)(J),W=Z.tracer.startSpan(`publish ${X}`,{kind:g0.SpanKind.PRODUCER,attributes:{...$.connection[i0.CONNECTION_ATTRIBUTES],[h6.ATTR_MESSAGING_DESTINATION]:J,[h6.ATTR_MESSAGING_DESTINATION_KIND]:h6.MESSAGING_DESTINATION_KIND_VALUE_TOPIC,[h6.ATTR_MESSAGING_RABBITMQ_ROUTING_KEY]:Q,[h6.OLD_ATTR_MESSAGING_MESSAGE_ID]:Y?.messageId,[h6.ATTR_MESSAGING_CONVERSATION_ID]:Y?.correlationId}}),K=Y??{};return K.headers=K.headers??{},g0.propagation.inject(g0.trace.setSpan(g0.context.active(),W),K.headers),{span:W,modifiedOptions:K}}endConsumerSpan(Z,J,Q,$){let Y=Z[i0.MESSAGE_STORED_SPAN];if(!Y)return;if(J!==!1)Y.setStatus({code:g0.SpanStatusCode.ERROR,message:Q!==J6.EndOperation.ChannelClosed&&Q!==J6.EndOperation.ChannelError?`${Q} called on message${$===!0?" with requeue":$===!1?" without requeue":""}`:Q});this.callConsumeEndHook(Y,Z,J,Q),Y.end(),Z[i0.MESSAGE_STORED_SPAN]=void 0}endAllSpansOnChannel(Z,J,Q,$){(Z[i0.CHANNEL_SPANS_NOT_ENDED]??[]).forEach((X)=>{this.endConsumerSpan(X.msg,J,Q,$)}),Z[i0.CHANNEL_SPANS_NOT_ENDED]=[]}callConsumeEndHook(Z,J,Q,$){let{consumeEndHook:Y}=this.getConfig();if(!Y)return;(0,V0.safeExecuteInTheMiddle)(()=>Y(Z,{msg:J,rejected:Q,endOperation:$}),(X)=>{if(X)g0.diag.error("amqplib instrumentation: consumerEndHook error",X)},!0)}checkConsumeTimeoutOnChannel(Z){let J=(0,lz.hrTime)(),Q=Z[i0.CHANNEL_SPANS_NOT_ENDED]??[],$,{consumeTimeoutMs:Y}=this.getConfig();for($=0;$<Q.length;$++){let X=Q[$],W=(0,lz.hrTimeDuration)(X.timeOfConsume,J);if((0,lz.hrTimeToMilliseconds)(W)<Y)break;this.endConsumerSpan(X.msg,null,J6.EndOperation.InstrumentationTimeout,!0)}Q.splice(0,$)}}mZ0.AmqplibInstrumentation=cZ0});var iZ0=j((PY)=>{Object.defineProperty(PY,"__esModule",{value:!0});PY.EndOperation=PY.DEFAULT_CONFIG=PY.AmqplibInstrumentation=void 0;var dm0=lZ0();Object.defineProperty(PY,"AmqplibInstrumentation",{enumerable:!0,get:function(){return dm0.AmqplibInstrumentation}});var pZ0=j2();Object.defineProperty(PY,"DEFAULT_CONFIG",{enumerable:!0,get:function(){return pZ0.DEFAULT_CONFIG}});Object.defineProperty(PY,"EndOperation",{enumerable:!0,get:function(){return pZ0.EndOperation}})});var oZ0,nZ0="Amqplib",mm0,aZ0,um0=()=>{return{name:nZ0,setupOnce(){aZ0()}}},MY;var L2=q(()=>{N();X0();oZ0=A(iZ0(),1),mm0={consumeEndHook:(Z)=>{q0(Z,"auto.amqplib.otel.consumer")},publishHook:(Z)=>{q0(Z,"auto.amqplib.otel.publisher")}},aZ0=y(nZ0,()=>new oZ0.AmqplibInstrumentation(mm0)),MY=P(um0)});var RY="VercelAI";var C2=()=>{};function pm0(Z){if(typeof Z!=="object"||Z===null)return!1;let J=Z;return"type"in J&&"error"in J&&"toolName"in J&&"toolCallId"in J&&J.type==="tool-error"&&J.error instanceof Error}function im0(Z){if(typeof Z!=="object"||Z===null||!("content"in Z))return;let J=Z;if(!Array.isArray(J.content))return;om0(J.content),nm0(J.content)}function om0(Z){for(let J of Z){if(!pm0(J))continue;let Q=UU(J.toolCallId);if(Q)c0(($)=>{$.setContext("trace",{trace_id:Q.traceId,span_id:Q.spanId}),$.setTag("vercel.ai.tool.name",J.toolName),$.setTag("vercel.ai.tool.callId",J.toolCallId),$.setLevel("error"),_(J.error,{mechanism:{type:"auto.vercelai.otel",handled:!1}})});else c0(($)=>{$.setTag("vercel.ai.tool.name",J.toolName),$.setTag("vercel.ai.tool.callId",J.toolCallId),$.setLevel("error"),_(J.error,{mechanism:{type:"auto.vercelai.otel",handled:!1}})})}}function nm0(Z){for(let J of Z)if(typeof J==="object"&&J!==null&&"toolCallId"in J&&typeof J.toolCallId==="string")qU(J.toolCallId)}function am0(Z,J,Q,$){let Y=Z?.recordInputs!==void 0?Z.recordInputs:J.recordInputs!==void 0?J.recordInputs:Q===!0?!0:$,X=Z?.recordOutputs!==void 0?Z.recordOutputs:J.recordOutputs!==void 0?J.recordOutputs:Q===!0?!0:$;return{recordInputs:Y,recordOutputs:X}}var iz,lm0,sZ0,kY;var rZ0=q(()=>{N();C2();iz=A(n(),1),lm0=[">=3.0.0 <7"],sZ0=["generateText","streamText","generateObject","streamObject","embed","embedMany","rerank"];kY=class kY extends iz.InstrumentationBase{__init(){this._isPatched=!1}__init2(){this._callbacks=[]}constructor(Z={}){super("@sentry/instrumentation-vercel-ai",e,Z);kY.prototype.__init.call(this),kY.prototype.__init2.call(this)}init(){return new iz.InstrumentationNodeModuleDefinition("ai",lm0,this._patch.bind(this))}callWhenPatched(Z){if(this._isPatched)Z();else this._callbacks.push(Z)}_patch(Z){this._isPatched=!0,this._callbacks.forEach((Q)=>Q()),this._callbacks=[];let J=(Q)=>{return new Proxy(Q,{apply:($,Y,X)=>{let W=X[0].experimental_telemetry||{},K=W.isEnabled,z=k(),G=z?.getIntegrationByName(RY),H=G?.options,B=G?Boolean(z?.getOptions().sendDefaultPii):!1,{recordInputs:V,recordOutputs:F}=am0(H,W,K,B);return X[0].experimental_telemetry={...W,isEnabled:K!==void 0?K:!0,recordInputs:V,recordOutputs:F},L9(()=>Reflect.apply($,Y,X),(U)=>{if(U&&typeof U==="object")T0(U,"_sentry_active_span",s0())},()=>{},(U)=>{im0(U)})}})};if(Object.prototype.toString.call(Z)==="[object Module]"){for(let Q of sZ0)if(Z[Q]!=null)Z[Q]=J(Z[Q]);return Z}else{let Q=sZ0.reduce(($,Y)=>{if(Z[Y]!=null)$[Y]=J(Z[Y]);return $},{});return{...Z,...Q}}}}});function sm0(Z){return!!Z.getIntegrationByName("Modules")?.getModules?.()?.ai}var tZ0,rm0=(Z={})=>{let J;return{name:RY,options:Z,setupOnce(){J=tZ0()},afterAllSetup(Q){if(Z.force??sm0(Q))xW(Q);else J?.callWhenPatched(()=>xW(Q))}}},NY;var P2=q(()=>{N();X0();C2();rZ0();tZ0=y(RY,()=>new kY({}));NY=P(rm0)});var oz,tm0,M2;var eZ0=q(()=>{N();oz=A(n(),1),tm0=[">=4.0.0 <7"];M2=class M2 extends oz.InstrumentationBase{constructor(Z={}){super("@sentry/instrumentation-openai",e,Z)}init(){return new oz.InstrumentationNodeModuleDefinition("openai",tm0,this._patch.bind(this))}_patch(Z){let J=Z;return J=this._patchClient(J,"OpenAI"),J=this._patchClient(J,"AzureOpenAI"),J}_patchClient(Z,J){let Q=Z[J];if(!Q)return Z;let $=this.getConfig(),Y=function(...X){if(J5(gZ))return Reflect.construct(Q,X);let W=Reflect.construct(Q,X);return s4(W,$)};Object.setPrototypeOf(Y,Q),Object.setPrototypeOf(Y.prototype,Q.prototype);for(let X of Object.getOwnPropertyNames(Q))if(!["length","name","prototype"].includes(X)){let W=Object.getOwnPropertyDescriptor(Q,X);if(W)Object.defineProperty(Y,X,W)}try{Z[J]=Y}catch{Object.defineProperty(Z,J,{value:Y,writable:!0,configurable:!0,enumerable:!0})}if(Z.default===Q)try{Z.default=Y}catch{Object.defineProperty(Z,"default",{value:Y,writable:!0,configurable:!0,enumerable:!0})}return Z}}});var Z70,em0=(Z={})=>{return{name:gZ,setupOnce(){Z70(Z)}}},AY;var R2=q(()=>{N();X0();eZ0();Z70=y(gZ,(Z)=>new M2(Z)),AY=P(em0)});var nz,Zu0,k2;var J70=q(()=>{N();nz=A(n(),1),Zu0=[">=0.19.2 <1.0.0"];k2=class k2 extends nz.InstrumentationBase{constructor(Z={}){super("@sentry/instrumentation-anthropic-ai",e,Z)}init(){return new nz.InstrumentationNodeModuleDefinition("@anthropic-ai/sdk",Zu0,this._patch.bind(this))}_patch(Z){let J=Z.Anthropic,Q=this.getConfig(),$=function(...Y){if(J5(dZ))return Reflect.construct(J,Y);let X=Reflect.construct(J,Y);return r4(X,Q)};Object.setPrototypeOf($,J),Object.setPrototypeOf($.prototype,J.prototype);for(let Y of Object.getOwnPropertyNames(J))if(!["length","name","prototype"].includes(Y)){let X=Object.getOwnPropertyDescriptor(J,Y);if(X)Object.defineProperty($,Y,X)}try{Z.Anthropic=$}catch{Object.defineProperty(Z,"Anthropic",{value:$,writable:!0,configurable:!0,enumerable:!0})}if(Z.default===J)try{Z.default=$}catch{Object.defineProperty(Z,"default",{value:$,writable:!0,configurable:!0,enumerable:!0})}return Z}}});var Q70,Ju0=(Z={})=>{return{name:dZ,options:Z,setupOnce(){Q70(Z)}}},IY;var N2=q(()=>{N();X0();J70();Q70=y(dZ,(Z)=>new k2(Z)),IY=P(Ju0)});var aJ,$70,A2;var Y70=q(()=>{N();aJ=A(n(),1),$70=[">=0.10.0 <2"];A2=class A2 extends aJ.InstrumentationBase{constructor(Z={}){super("@sentry/instrumentation-google-genai",e,Z)}init(){return new aJ.InstrumentationNodeModuleDefinition("@google/genai",$70,(J)=>this._patch(J),(J)=>J,[new aJ.InstrumentationNodeModuleFile("@google/genai/dist/node/index.cjs",$70,(J)=>this._patch(J),(J)=>J)])}_patch(Z){let J=Z.GoogleGenAI,Q=this.getConfig();if(typeof J!=="function")return Z;let $=function(...Y){if(J5(cZ))return Reflect.construct(J,Y);let X=Reflect.construct(J,Y);return e4(X,Q)};Object.setPrototypeOf($,J),Object.setPrototypeOf($.prototype,J.prototype);for(let Y of Object.getOwnPropertyNames(J))if(!["length","name","prototype"].includes(Y)){let X=Object.getOwnPropertyDescriptor(J,Y);if(X)Object.defineProperty($,Y,X)}return o3(Z,"GoogleGenAI",$),Z}}});var X70,Qu0=(Z={})=>{return{name:cZ,setupOnce(){X70(Z)}}},TY;var I2=q(()=>{N();X0();Y70();X70=y(cZ,(Z)=>new A2(Z)),TY=P(Qu0)});function $u0(Z,J){if(!Z)return[J];if(Array.isArray(Z)){if(Z.includes(J))return Z;return[...Z,J]}if(typeof Z==="object")return[Z,J];return Z}function Yu0(Z,J,Q){return new Proxy(Z,{apply($,Y,X){let K=X[1];if(!K||typeof K!=="object"||Array.isArray(K))K={},X[1]=K;let z=K.callbacks,G=$u0(z,J);return K.callbacks=G,Reflect.apply($,Y,X)}})}var w7,az,T2;var W70=q(()=>{N();w7=A(n(),1),az=[">=0.1.0 <2.0.0"];T2=class T2 extends w7.InstrumentationBase{constructor(Z={}){super("@sentry/instrumentation-langchain",e,Z)}init(){let Z=[],J=["@langchain/anthropic","@langchain/openai","@langchain/google-genai","@langchain/mistralai","@langchain/google-vertexai","@langchain/groq"];for(let Q of J)Z.push(new w7.InstrumentationNodeModuleDefinition(Q,az,this._patch.bind(this),($)=>$,[new w7.InstrumentationNodeModuleFile(`${Q}/dist/index.cjs`,az,this._patch.bind(this),($)=>$)]));return Z.push(new w7.InstrumentationNodeModuleDefinition("langchain",az,this._patch.bind(this),(Q)=>Q,[new w7.InstrumentationNodeModuleFile("langchain/dist/chat_models/universal.cjs",az,this._patch.bind(this),(Q)=>Q)])),Z}_patch(Z){GF([gZ,dZ,cZ]);let J=JJ(this.getConfig());return this._patchRunnableMethods(Z,J),Z}_patchRunnableMethods(Z,J){let Q=["ChatAnthropic","ChatOpenAI","ChatGoogleGenerativeAI","ChatMistralAI","ChatVertexAI","ChatGroq","ConfigurableModel"],$=Z.universal_exports??Z,Y=Object.values($).find((K)=>{return typeof K==="function"&&Q.includes(K.name)});if(!Y)return;let X=Y.prototype;if(X.__sentry_patched__)return;X.__sentry_patched__=!0;let W=["invoke","stream","batch"];for(let K of W){let z=X[K];if(typeof z==="function")X[K]=Yu0(z,J)}}}});var K70,Xu0=(Z={})=>{return{name:uW,setupOnce(){K70(Z)}}},EY;var E2=q(()=>{N();X0();W70();K70=y(uW,(Z)=>new T2(Z)),EY=P(Xu0)});var sJ,z70,f2;var G70=q(()=>{N();sJ=A(n(),1),z70=[">=0.0.0 <2.0.0"];f2=class f2 extends sJ.InstrumentationBase{constructor(Z={}){super("@sentry/instrumentation-langgraph",e,Z)}init(){return new sJ.InstrumentationNodeModuleDefinition("@langchain/langgraph",z70,this._patch.bind(this),(J)=>J,[new sJ.InstrumentationNodeModuleFile("@langchain/langgraph/dist/index.cjs",z70,this._patch.bind(this),(J)=>J)])}_patch(Z){if(Z.StateGraph&&typeof Z.StateGraph==="function")QJ(Z.StateGraph.prototype,this.getConfig());return Z}}});var H70,Wu0=(Z={})=>{return{name:iW,setupOnce(){H70(Z)}}},fY;var y2=q(()=>{N();X0();G70();H70=y(iW,(Z)=>new f2(Z)),fY=P(Wu0)});function _2(){if(!I9())G0(()=>{console.warn("The buildLaunchDarklyFlagUsedHandler() can only be used in the browser.")});return{name:"sentry-flag-auditor",type:"flag-used",synchronous:!0,method:()=>null}}var S2;var B70=q(()=>{N();S2=P((Z)=>{if(!I9())G0(()=>{console.warn("The launchDarklyIntegration() can only be used in the browser.")});return{name:"LaunchDarkly"}})});class sz{constructor(){if(!I9())G0(()=>{console.warn("The OpenFeatureIntegrationHook can only be used in the browser.")})}after(){}error(){}}var h2;var V70=q(()=>{N();h2=P((Z)=>{if(!I9())G0(()=>{console.warn("The openFeatureIntegration() can only be used in the browser.")});return{name:"OpenFeature"}})});var b2;var F70=q(()=>{N();b2=P((Z)=>{if(!I9())G0(()=>{console.warn("The statsigIntegration() can only be used in the browser.")});return{name:"Statsig"}})});var v2;var U70=q(()=>{N();v2=P((Z)=>{if(!I9())G0(()=>{console.warn("The unleashIntegration() can only be used in the browser.")});return{name:"Unleash"}})});var x2;var q70=q(()=>{N();x2=AF});import*as j70 from"net";function D70(Z,J,Q,$,Y){let W=()=>{},K=Y.firestoreSpanCreationHook;if(typeof K==="function")W=(H)=>{XZ.safeExecuteInTheMiddle(()=>K(H),(B)=>{if(!B)return;YZ.diag.error(B?.message)},!0)};let z=new XZ.InstrumentationNodeModuleDefinition("@firebase/firestore",J,(H)=>w70(H,Q,$,Z,W)),G=["@firebase/firestore/dist/lite/index.node.cjs.js","@firebase/firestore/dist/lite/index.node.mjs.js","@firebase/firestore/dist/lite/index.rn.esm2017.js","@firebase/firestore/dist/lite/index.cjs.js"];for(let H of G)z.files.push(new XZ.InstrumentationNodeModuleFile(H,J,(B)=>w70(B,Q,$,Z,W),(B)=>O70(B,$)));return z}function w70(Z,J,Q,$,Y){return O70(Z,Q),J(Z,"addDoc",Ku0($,Y)),J(Z,"getDocs",Gu0($,Y)),J(Z,"setDoc",Hu0($,Y)),J(Z,"deleteDoc",zu0($,Y)),Z}function O70(Z,J){for(let Q of["addDoc","getDocs","setDoc","deleteDoc"])if(XZ.isWrapped(Z[Q]))J(Z,Q);return Z}function Ku0(Z,J){return function($){return function(Y,X){let W=tz(Z,"addDoc",Y);return J(W),rz(W,()=>{return $(Y,X)})}}}function zu0(Z,J){return function($){return function(Y){let X=tz(Z,"deleteDoc",Y.parent||Y);return J(X),rz(X,()=>{return $(Y)})}}}function Gu0(Z,J){return function($){return function(Y){let X=tz(Z,"getDocs",Y);return J(X),rz(X,()=>{return $(Y)})}}}function Hu0(Z,J){return function($){return function(Y,X,W){let K=tz(Z,"setDoc",Y.parent||Y);return J(K),rz(K,()=>{return typeof W<"u"?$(Y,X,W):$(Y,X)})}}}function rz(Z,J){return YZ.context.with(YZ.trace.setSpan(YZ.context.active(),Z),()=>{return XZ.safeExecuteInTheMiddle(()=>{return J()},(Q)=>{if(Q)Z.recordException(Q);Z.end()},!0)})}function tz(Z,J,Q){let $=Z.startSpan(`${J} ${Q.path}`,{kind:YZ.SpanKind.CLIENT});return Vu0($,Q),$.setAttribute(G9.ATTR_DB_OPERATION_NAME,J),$}function Bu0(Z){let J,Q;if(typeof Z.host==="string")if(Z.host.startsWith("[")){if(Z.host.endsWith("]"))J=Z.host.replace(/^\[|\]$/g,"");else if(Z.host.includes("]:")){let $=Z.host.lastIndexOf(":");if($!==-1)J=Z.host.slice(1,$).replace(/^\[|\]$/g,""),Q=Z.host.slice($+1)}}else if(j70.isIPv6(Z.host))J=Z.host;else{let $=Z.host.lastIndexOf(":");if($!==-1)J=Z.host.slice(0,$),Q=Z.host.slice($+1);else J=Z.host}return{address:J,port:Q?parseInt(Q,10):void 0}}function Vu0(Z,J){let Q=J.firestore.app,$=Q.options,X=(J.firestore.toJSON()||{}).settings||{},W={[G9.ATTR_DB_COLLECTION_NAME]:J.path,[G9.ATTR_DB_NAMESPACE]:Q.name,[G9.ATTR_DB_SYSTEM_NAME]:"firebase.firestore","firebase.firestore.type":J.type,"firebase.firestore.options.projectId":$.projectId,"firebase.firestore.options.appId":$.appId,"firebase.firestore.options.messagingSenderId":$.messagingSenderId,"firebase.firestore.options.storageBucket":$.storageBucket},{address:K,port:z}=Bu0(X);if(K)W[G9.ATTR_SERVER_ADDRESS]=K;if(z)W[G9.ATTR_SERVER_PORT]=z;Z.setAttributes(W)}var YZ,XZ,G9;var L70=q(()=>{YZ=A(I(),1),XZ=A(n(),1),G9=A(Y0(),1)});function C70(Z,J,Q,$,Y){let X=()=>{},W=()=>{},K=Y.functions?.errorHook,z=Y.functions?.requestHook,G=Y.functions?.responseHook;if(typeof G==="function")W=(V,F)=>{WZ.safeExecuteInTheMiddle(()=>G(V,F),(U)=>{if(!U)return;W8.diag.error(U?.message)},!0)};if(typeof z==="function")X=(V)=>{WZ.safeExecuteInTheMiddle(()=>z(V),(F)=>{if(!F)return;W8.diag.error(F?.message)},!0)};let H=new WZ.InstrumentationNodeModuleDefinition("firebase-functions",J);return[{name:"firebase-functions/lib/v2/providers/https.js",triggerType:"function"},{name:"firebase-functions/lib/v2/providers/firestore.js",triggerType:"firestore"},{name:"firebase-functions/lib/v2/providers/scheduler.js",triggerType:"scheduler"},{name:"firebase-functions/lib/v2/storage.js",triggerType:"storage"}].forEach(({name:V,triggerType:F})=>{H.files.push(new WZ.InstrumentationNodeModuleFile(V,J,(U)=>Fu0(U,Q,$,Z,{requestHook:X,responseHook:W,errorHook:K},F),(U)=>P70(U,$)))}),H}function Q6(Z,J,Q){return function(Y){return function(...X){let W=typeof X[0]==="function"?X[0]:X[1],K=typeof X[0]==="function"?void 0:X[0];if(!W)return Y.call(this,...X);let z=async function(...G){let H=process.env.FUNCTION_TARGET||process.env.K_SERVICE||"unknown",B=Z.startSpan(`firebase.function.${Q}`,{kind:W8.SpanKind.SERVER}),V={"faas.name":H,"faas.trigger":Q,"faas.provider":"firebase"};if(process.env.GCLOUD_PROJECT)V["cloud.project_id"]=process.env.GCLOUD_PROJECT;if(process.env.EVENTARC_CLOUD_EVENT_SOURCE)V["cloud.event_source"]=process.env.EVENTARC_CLOUD_EVENT_SOURCE;return B.setAttributes(V),J?.requestHook?.(B),W8.context.with(W8.trace.setSpan(W8.context.active(),B),async()=>{let F,U;try{U=await W.apply(this,G)}catch(w){F=w}if(J?.responseHook?.(B,F),F)B.recordException(F);if(B.end(),F)throw await J?.errorHook?.(B,F),F;return U})};if(K)return Y.call(this,K,z);else return Y.call(this,z)}}}function Fu0(Z,J,Q,$,Y,X){switch(P70(Z,Q),X){case"function":J(Z,"onRequest",Q6($,Y,"http.request")),J(Z,"onCall",Q6($,Y,"http.call"));break;case"firestore":J(Z,"onDocumentCreated",Q6($,Y,"firestore.document.created")),J(Z,"onDocumentUpdated",Q6($,Y,"firestore.document.updated")),J(Z,"onDocumentDeleted",Q6($,Y,"firestore.document.deleted")),J(Z,"onDocumentWritten",Q6($,Y,"firestore.document.written")),J(Z,"onDocumentCreatedWithAuthContext",Q6($,Y,"firestore.document.created")),J(Z,"onDocumentUpdatedWithAuthContext",Q6($,Y,"firestore.document.updated")),J(Z,"onDocumentDeletedWithAuthContext",Q6($,Y,"firestore.document.deleted")),J(Z,"onDocumentWrittenWithAuthContext",Q6($,Y,"firestore.document.written"));break;case"scheduler":J(Z,"onSchedule",Q6($,Y,"scheduler.scheduled"));break;case"storage":J(Z,"onObjectFinalized",Q6($,Y,"storage.object.finalized")),J(Z,"onObjectArchived",Q6($,Y,"storage.object.archived")),J(Z,"onObjectDeleted",Q6($,Y,"storage.object.deleted")),J(Z,"onObjectMetadataUpdated",Q6($,Y,"storage.object.metadataUpdated"));break}return Z}function P70(Z,J){let Q=["onSchedule","onRequest","onCall","onObjectFinalized","onObjectArchived","onObjectDeleted","onObjectMetadataUpdated","onDocumentCreated","onDocumentUpdated","onDocumentDeleted","onDocumentWritten","onDocumentCreatedWithAuthContext","onDocumentUpdatedWithAuthContext","onDocumentDeletedWithAuthContext","onDocumentWrittenWithAuthContext"];for(let $ of Q)if(WZ.isWrapped(Z[$]))J(Z,$);return Z}var W8,WZ;var M70=q(()=>{W8=A(I(),1),WZ=A(n(),1)});var k70,R70,Uu0,qu0,g2;var N70=q(()=>{N();L70();M70();k70=A(n(),1),R70={},Uu0=[">=3.0.0 <5"],qu0=[">=6.0.0 <7"];g2=class g2 extends k70.InstrumentationBase{constructor(Z=R70){super("@sentry/instrumentation-firebase",e,Z)}setConfig(Z={}){super.setConfig({...R70,...Z})}init(){let Z=[];return Z.push(D70(this.tracer,Uu0,this._wrap,this._unwrap,this.getConfig())),Z.push(C70(this.tracer,qu0,this._wrap,this._unwrap,this.getConfig())),Z}}});var A70="Firebase",wu0,I70,ju0=()=>{return{name:A70,setupOnce(){I70()}}},yY;var d2=q(()=>{N();X0();N70();wu0={firestoreSpanCreationHook:(Z)=>{q0(Z,"auto.firebase.otel.firestore"),Z.setAttribute(g,"db.query")},functions:{requestHook:(Z)=>{q0(Z,"auto.firebase.otel.functions"),Z.setAttribute(g,"http.request")},errorHook:async(Z,J)=>{if(J)_(J,{mechanism:{type:"auto.firebase.otel.functions",handled:!1}}),await t7(2000)}}},I70=y(A70,()=>new g2(wu0)),yY=P(ju0)});function d5(){return[U$(),y$(),_$(),UY(),v$(),c$(),m$(),l$(),t$(),ZY(),zY(),VY(),jY(),DY(),OY(),LY(),h$(),MY(),b$(),EY(),fY(),NY(),AY(),IY(),TY(),JY(),yY()]}var c2=q(()=>{L2();N2();Z2();Ow();Bj();d2();B2();I2();Oj();xD();mD();Cj();oD();E2();y2();Mj();Ij();_j();xj();oj();R2();zD();HD();yD();JD();z2();P2()});function SY(Z,J={}){if(Z.getOptions().debug)Tq();let[Q,$]=Du0(Z,J);Z.traceProvider=Q,Z.asyncLocalStorageLookup=$}function Du0(Z,J={}){let Q=new CK({sampler:new Iq(Z),resource:Z$().merge(qK({[tJ.ATTR_SERVICE_NAME]:"node",[tJ.SEMRESATTRS_SERVICE_NAMESPACE]:"sentry",[tJ.ATTR_SERVICE_VERSION]:e})),forceFlushTimeoutMillis:500,spanProcessors:[new Aq({timeout:Ou0(Z.getOptions().maxSpanWaitDuration)}),...J.spanProcessors||[]]});rJ.trace.setGlobalTracerProvider(Q),rJ.propagation.setGlobalPropagator(new Nq);let $=new MK;return rJ.context.setGlobalContextManager($),[Q,$.getAsyncLocalStorageLookup()]}function Ou0(Z){if(Z==null)return;if(Z>m2)return e0&&O.warn(`\`maxSpanWaitDuration\` is too high, using the maximum value of ${m2}`),m2;else if(Z<=0||Number.isNaN(Z)){e0&&O.warn("`maxSpanWaitDuration` must be a positive number, using default value instead.");return}return Z}var rJ,tJ,m2=1e6;var u2=q(()=>{Jq();Vq();N();X0();jJ();Z7();rJ=A(I(),1),tJ=A(Y0(),1)});function T70(){return EK().filter((J)=>J.name!=="Http"&&J.name!=="NodeFetch").concat(M5(),R5())}function E70(Z){return[...T70(),...P0(Z)?d5():[]]}function l2(Z={}){return Lu0(Z,E70)}function Lu0(Z={},J){k9(Z,"node");let Q=Qw({...Z,defaultIntegrations:Z.defaultIntegrations??J(Z)});if(Q&&!Z.skipOpenTelemetrySetup)SY(Q,{spanProcessors:Z.openTelemetrySpanProcessors}),fK();return Q}var f70=q(()=>{N();X0();Kw();Hw();c2();u2()});var p2=q(()=>{Kw();Hw();uo();Ow();Bj();Oj();Cj();Mj();Ij();_j();xj();oj();JD();zD();HD();yD();xD();mD();oD();Z2();y80();z2();B2();MZ0();L2();P2();R2();N2();I2();E2();y2();B70();V70();F70();U70();q70();d2();f70();u2();c2();N();X0()});import*as y70 from"os";var i2;var S70=q(()=>{N();i2=class i2 extends _4{constructor(Z){k9(Z,"bun");let J={...Z,platform:"javascript",runtime:{name:"bun",version:Bun.version},serverName:Z.serverName||global.process.env.SENTRY_NAME||y70.hostname()};super(J)}}});function Mu0(){if(_70)return;Bun.serve=new Proxy(Bun.serve,{apply(Z,J,Q){h70(Q[0]);let $=Z.apply(J,Q),Y=$.reload.bind($);return $.reload=(X)=>{return h70(X),Y(X)},$}}),_70=!0}function h70(Z){Ru0(Z),ku0(Z)}function Ru0(Z){if(typeof Z.fetch!=="function")return;Z.fetch=new Proxy(Z.fetch,{apply(J,Q,$){return o2(J,Q,$)}})}function ku0(Z){if(!Z.routes)return;if(typeof Z.routes!=="object")return;Object.keys(Z.routes).forEach((J)=>{let Q=Z.routes[J];if(typeof Q==="function")Z.routes[J]=new Proxy(Q,{apply:($,Y,X)=>{return o2($,Y,X,J)}});if(Q instanceof Response)return;if(typeof Q==="object")Object.entries(Q).forEach(([$,Y])=>{if(typeof Y==="function")Z.routes[J][$]=new Proxy(Y,{apply:(X,W,K)=>{return o2(X,W,K,J)}})})})}function o2(Z,J,Q,$){return l1((Y)=>{let X=Q[0],W=X.method.toUpperCase();if(W==="OPTIONS"||W==="HEAD")return Z.apply(J,Q);let K=A8(X.url),z=Nu0(K,X),G=K?.pathname||"/";if(X.params){if(Object.keys(X.params).forEach((B)=>{z[`url.path.parameter.${B}`]=X.params[B]}),$)z[H0]="route",z["url.template"]=$,G=$}if($?.endsWith("/*"))z[H0]="route",z["url.template"]=$,G=$;let H=k()?.getOptions().sendDefaultPii??!1;return Object.assign(z,T8(X.headers.toJSON(),H)),Y.setSDKProcessingMetadata({normalizedRequest:{url:X.url,method:X.method,headers:X.headers.toJSON(),query_string:K?.search}}),o7({sentryTrace:X.headers.get("sentry-trace")??"",baggage:X.headers.get("baggage")},()=>r0({attributes:z,op:"http.server",name:`${X.method} ${G}`},async(B)=>{try{let V=await Z.apply(J,Q);if(V?.status)l9(B,V.status),Y.setContext("response",{status_code:V.status}),B.setAttributes(T8(V.headers.toJSON(),H,"response"));return V}catch(V){throw _(V,{mechanism:{type:"auto.http.bun.serve",handled:!1}}),V}}))})}function Nu0(Z,J){let Q={[f]:"auto.http.bun.serve",[vQ]:J.method||"GET",[H0]:"url"};if(Z){if(Z.search)Q["url.query"]=Z.search;if(Z.hash)Q["url.fragment"]=Z.hash;if(Z.pathname)Q["url.path"]=Z.pathname;if(!$5(Z)){if(Q["url.full"]=Z.href,Z.port)Q["url.port"]=Z.port;if(Z.protocol)Q["url.scheme"]=Z.protocol;if(Z.hostname)Q["url.domain"]=Z.hostname}}return Q}var Cu0="BunServer",Pu0=()=>{return{name:Cu0,setupOnce(){Mu0()}}},ez,_70=!1;var n2=q(()=>{N();ez=P(Pu0)});function ZG(Z){function J(Q){let $={body:Q.body,method:"POST",headers:Z.headers};try{return P9(()=>{return fetch(Z.url,$).then((Y)=>{return{statusCode:Y.status,headers:{"x-sentry-rate-limits":Y.headers.get("X-Sentry-Rate-Limits"),"retry-after":Y.headers.get("Retry-After")}}})})}catch(Y){return Promise.reject(Y)}}return o9(Z,J)}var a2=q(()=>{N()});import*as b70 from"os";function s2(Z){return[f8(),E8(),y8(),S8(),_8(),M5(),R5(),sZ(),rZ(),nZ(),oZ(),aZ(),tZ(),ez(),...P0(Z)?d5():[]]}function v70(Z={}){k9(Z,"bun");let J={...Z,platform:"javascript",runtime:{name:"bun",version:typeof Bun<"u"?Bun.version:"unknown"},serverName:Z.serverName||global.process.env.SENTRY_NAME||b70.hostname()};if(J.transport=J.transport||ZG,J.defaultIntegrations===void 0)J.defaultIntegrations=s2(J);return l2(J)}var x70=q(()=>{N();p2();n2();a2()});var g70={};y1(g70,{zodErrorsIntegration:()=>N3,wrapMcpServerWithSentry:()=>y3,withScope:()=>c0,withMonitor:()=>a6,withIsolationScope:()=>l1,withActiveSpan:()=>n6,winterCGHeadersToDict:()=>zW,vercelAIIntegration:()=>NY,updateSpanName:()=>lQ,unleashIntegration:()=>v2,trpcMiddleware:()=>T3,tediousIntegration:()=>OY,suppressTracing:()=>P9,supabaseIntegration:()=>k3,statsigIntegration:()=>b2,startSpanManual:()=>h0,startSpan:()=>r0,startSession:()=>e7,startNewTrace:()=>kZ,startInactiveSpan:()=>P8,spotlightIntegration:()=>CJ,spanToTraceHeader:()=>c7,spanToJSON:()=>v,spanToBaggageHeader:()=>pQ,setupKoaErrorHandler:()=>iD,setupHonoErrorHandler:()=>cD,setupHapiErrorHandler:()=>vD,setupFastifyErrorHandler:()=>Hj,setupExpressErrorHandler:()=>Dw,setupConnectErrorHandler:()=>eD,setUser:()=>G3,setTags:()=>K3,setTag:()=>z3,setMeasurement:()=>tQ,setHttpStatus:()=>l9,setExtras:()=>X3,setExtra:()=>W3,setCurrentClient:()=>O3,setConversationId:()=>tX,setContext:()=>Y3,rewriteFramesIntegration:()=>R3,requestDataIntegration:()=>S8,redisIntegration:()=>t$,profiler:()=>I3,processSessionIntegration:()=>tZ,prismaIntegration:()=>zY,postgresJsIntegration:()=>JY,postgresIntegration:()=>ZY,pinoIntegration:()=>hK,parameterize:()=>b4,openFeatureIntegration:()=>h2,openAIIntegration:()=>AY,onUnhandledRejectionIntegration:()=>rZ,onUncaughtExceptionIntegration:()=>sZ,nodeContextIntegration:()=>oZ,nativeNodeFetchIntegration:()=>R5,mysqlIntegration:()=>m$,mysql2Integration:()=>l$,mongooseIntegration:()=>c$,mongoIntegration:()=>v$,modulesIntegration:()=>aZ,metrics:()=>m4,makeNodeTransport:()=>PJ,makeFetchTransport:()=>ZG,lruMemoizerIntegration:()=>b$,logger:()=>H$,localVariablesIntegration:()=>OJ,linkedErrorsIntegration:()=>y8,launchDarklyIntegration:()=>S2,lastEventId:()=>H3,langGraphIntegration:()=>fY,langChainIntegration:()=>EY,koaIntegration:()=>jY,knexIntegration:()=>Y2,kafkaIntegration:()=>h$,isInitialized:()=>V3,isEnabled:()=>R8,instrumentSupabaseClient:()=>g4,instrumentStateGraphCompile:()=>p3,instrumentOpenAiClient:()=>s4,instrumentLangGraph:()=>QJ,instrumentGoogleGenAIClient:()=>e4,instrumentAnthropicAiClient:()=>r4,initOpenTelemetry:()=>SY,init:()=>v70,inboundFiltersIntegration:()=>f8,httpServerSpansIntegration:()=>pZ,httpServerIntegration:()=>lZ,httpIntegration:()=>M5,httpHeadersToSpanAttributes:()=>T8,honoIntegration:()=>UY,hapiIntegration:()=>VY,growthbookIntegration:()=>x2,graphqlIntegration:()=>_$,googleGenAIIntegration:()=>TY,getTraceMetaTags:()=>L3,getTraceData:()=>N9,getSpanStatusFromHttpCode:()=>D6,getSpanDescendants:()=>l7,getSentryRelease:()=>RJ,getRootSpan:()=>D0,getIsolationScope:()=>x,getGlobalScope:()=>D8,getDefaultIntegrations:()=>s2,getCurrentScope:()=>i,getClient:()=>k,getAutoPerformanceIntegrations:()=>d5,getActiveSpan:()=>s0,genericPoolIntegration:()=>LY,generateInstrumentOnce:()=>y,functionToStringIntegration:()=>E8,fsIntegration:()=>Vw,flush:()=>t7,firebaseIntegration:()=>yY,featureFlagsIntegration:()=>A3,fastifyIntegration:()=>y$,extraErrorDataIntegration:()=>M3,expressIntegration:()=>U$,expressErrorHandler:()=>pK,eventFiltersIntegration:()=>v4,endSession:()=>k8,disableAnrDetectionForCallback:()=>SK,defaultStackParser:()=>kJ,dedupeIntegration:()=>P3,dataloaderIntegration:()=>U2,cron:()=>vK,createTransport:()=>o9,createSentryWinstonTransport:()=>_K,createLangChainCallbackHandler:()=>JJ,createGetModuleFromFilename:()=>MJ,createConsolaReporter:()=>h3,continueTrace:()=>o7,contextLinesIntegration:()=>nZ,consoleLoggingIntegration:()=>_3,consoleIntegration:()=>_8,connectIntegration:()=>DY,close:()=>B3,captureSession:()=>U3,captureMessage:()=>s7,captureFeedback:()=>S3,captureException:()=>_,captureEvent:()=>r7,captureConsoleIntegration:()=>C3,captureCheckIn:()=>a7,bunServerIntegration:()=>ez,buildLaunchDarklyFlagUsedHandler:()=>_2,anthropicAIIntegration:()=>IY,anrIntegration:()=>yK,amqplibIntegration:()=>MY,addIntegration:()=>q3,addEventProcessor:()=>F3,addBreadcrumb:()=>N1,Scope:()=>K1,SEMANTIC_ATTRIBUTE_SENTRY_SOURCE:()=>H0,SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE:()=>W6,SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN:()=>f,SEMANTIC_ATTRIBUTE_SENTRY_OP:()=>g,SDK_VERSION:()=>e,OpenFeatureIntegrationHook:()=>sz,NodeClient:()=>C5,BunClient:()=>i2});var d70=q(()=>{p2();N();S70();x70();n2();a2()});function Tu0(Z){let J={},Q=0;while(Q<Z.length){let $=Z[Q];switch($){case"-u":case"--users":J.users=Z[++Q];break;case"--shell":J.shell=Z[++Q];break;case"--cols":J.cols=parseInt(Z[++Q]||"",10);break;case"--rows":J.rows=parseInt(Z[++Q]||"",10);break;case"--debounce":J.debounce=parseInt(Z[++Q]||"",10);break;case"-d":case"--debug":J.debug=!0;break;case"--health-port":J.healthPort=parseInt(Z[++Q]||"",10);break;case"--home-dir":J.homeDir=Z[++Q];break;case"--download-dir":J.downloadDir=Z[++Q];break;case"--auto-download":J.autoDownload=!0;break;case"--help":J.help=!0;break;case"--version":J.version=!0;break;default:if($.startsWith("-"))console.error(`Unknown option: ${$}`),console.error("Use --help for usage information"),process.exit(1)}Q++}return J}function j7(Z,J,Q){if(Z!==void 0)return Z;return process.env[J]||Q}function Eu0(Z,J,Q){if(Z!==void 0)return Z;let $=process.env[J];if(!$)throw Error(`Missing required config: ${Q}
|
|
36
|
+
`);let{connect:z,buffered:G}=await K;if(Z.emit("proxyConnect",z),this.emit("proxyConnect",z,Z),z.statusCode===200){if(Z.once("socket",XT0),J.secureEndpoint){G$("Upgrading socket connection to TLS");let B=J.servername||J.host;return sq.connect({...Ii(J,"host","path","port"),socket:$,servername:p8.isIP(B)?void 0:B})}return $}$.destroy();let H=new p8.Socket({writable:!1});return H.readable=!0,Z.once("socket",(B)=>{G$("Replaying proxy buffer for failed request"),B.push(G),B.push(null)}),H}};TK.__initStatic()});import*as WT0 from"http";import*as KT0 from"https";import{Readable as zT0}from"stream";import{createGzip as GT0}from"zlib";function BT0(Z){return new zT0({read(){this.push(Z),this.push(null)}})}function PJ(Z){let J;try{J=new URL(Z.url)}catch(z){return G0(()=>{console.warn("[@sentry/node]: Invalid dsn or tunnel option, will not send any events. The tunnel option must be a full URL when used.")}),o9(Z,()=>Promise.resolve({}))}let Q=J.protocol==="https:",$=VT0(J,Z.proxy||(Q?process.env.https_proxy:void 0)||process.env.http_proxy),Y=Q?KT0:WT0,X=Z.keepAlive===void 0?!1:Z.keepAlive,W=$?new TK($):new Y.Agent({keepAlive:X,maxSockets:30,timeout:2000}),K=FT0(Z,Z.httpModule??Y,W);return o9(Z,K)}function VT0(Z,J){let{no_proxy:Q}=process.env;if(Q?.split(",").some((Y)=>Z.host.endsWith(Y)||Z.hostname.endsWith(Y)))return;else return J}function FT0(Z,J,Q){let{hostname:$,pathname:Y,port:X,protocol:W,search:K}=new URL(Z.url);return function(G){return new Promise((H,B)=>{P9(()=>{let V=BT0(G.body),F={...Z.headers};if(G.body.length>HT0)F["content-encoding"]="gzip",V=V.pipe(GT0());let U=$.startsWith("["),w=J.request({method:"POST",agent:Q,headers:F,hostname:U?$.slice(1,-1):$,path:`${Y}${K}`,port:X,protocol:W,ca:Z.caCerts},(D)=>{D.on("data",()=>{}),D.on("end",()=>{}),D.setEncoding("utf8");let L=D.headers["retry-after"]??null,C=D.headers["x-sentry-rate-limits"]??null;H({statusCode:D.statusCode,headers:{"retry-after":L,"x-sentry-rate-limits":Array.isArray(C)?C[0]||null:C}})});w.on("error",B),V.pipe(w)})})}}var HT0=32768;var rq=q(()=>{N();Ti()});function Ei(Z){if(Z===!1)return!1;if(typeof Z==="string")return Z;let J=Q5(process.env.SENTRY_SPOTLIGHT,{strict:!0}),Q=J===null&&process.env.SENTRY_SPOTLIGHT?process.env.SENTRY_SPOTLIGHT:void 0;return Z===!0?Q??!0:J??Q}var fi=q(()=>{N()});import{posix as UT0,sep as qT0}from"path";function yi(Z){return Z.replace(/^[A-Z]:/,"").replace(/\\/g,"/")}function MJ(Z=process.argv[1]?LF(process.argv[1]):process.cwd(),J=qT0==="\\"){let Q=J?yi(Z):Z;return($)=>{if(!$)return;let Y=J?yi($):$,{dir:X,base:W,ext:K}=UT0.parse(Y);if(K===".js"||K===".mjs"||K===".cjs")W=W.slice(0,K.length*-1);let z=decodeURIComponent(W);if(!X)X=".";let G=X.lastIndexOf("/node_modules");if(G>-1)return`${X.slice(G+14).replace(/\//g,".")}:${z}`;if(X.startsWith(Q)){let H=X.slice(Q.length+1).replace(/\//g,".");return H?`${H}:${z}`:z}return z}}var tq=q(()=>{N()});function RJ(Z){if(process.env.SENTRY_RELEASE)return process.env.SENTRY_RELEASE;if(d.SENTRY_RELEASE?.id)return d.SENTRY_RELEASE.id;let J=process.env.GITHUB_SHA||process.env.CI_MERGE_REQUEST_SOURCE_BRANCH_SHA||process.env.CI_BUILD_REF||process.env.CI_COMMIT_SHA||process.env.BITBUCKET_COMMIT,Q=process.env.APPVEYOR_PULL_REQUEST_HEAD_COMMIT||process.env.APPVEYOR_REPO_COMMIT||process.env.CODEBUILD_RESOLVED_SOURCE_VERSION||process.env.AWS_COMMIT_ID||process.env.BUILD_SOURCEVERSION||process.env.GIT_CLONE_COMMIT_HASH||process.env.BUDDY_EXECUTION_REVISION||process.env.BUILDKITE_COMMIT||process.env.CIRCLE_SHA1||process.env.CIRRUS_CHANGE_IN_REPO||process.env.CF_REVISION||process.env.CM_COMMIT||process.env.CF_PAGES_COMMIT_SHA||process.env.DRONE_COMMIT_SHA||process.env.FC_GIT_COMMIT_SHA||process.env.HEROKU_TEST_RUN_COMMIT_VERSION||process.env.HEROKU_BUILD_COMMIT||process.env.HEROKU_SLUG_COMMIT||process.env.RAILWAY_GIT_COMMIT_SHA||process.env.RENDER_GIT_COMMIT||process.env.SEMAPHORE_GIT_SHA||process.env.TRAVIS_PULL_REQUEST_SHA||process.env.VERCEL_GIT_COMMIT_SHA||process.env.VERCEL_GITHUB_COMMIT_SHA||process.env.VERCEL_GITLAB_COMMIT_SHA||process.env.VERCEL_BITBUCKET_COMMIT_SHA||process.env.ZEIT_GITHUB_COMMIT_SHA||process.env.ZEIT_GITLAB_COMMIT_SHA||process.env.ZEIT_BITBUCKET_COMMIT_SHA,$=process.env.CI_COMMIT_ID||process.env.SOURCE_COMMIT||process.env.SOURCE_VERSION||process.env.GIT_COMMIT||process.env.COMMIT_REF||process.env.BUILD_VCS_NUMBER||process.env.CI_COMMIT_SHA;return J||Q||$||Z}var kJ;var eq=q(()=>{N();tq();kJ=yX(IU(MJ()))});import*as Si from"os";import{threadId as wT0,isMainThread as jT0}from"worker_threads";var _i,hi,DT0=60000,C5;var Zw=q(()=>{N();jJ();e6();_i=A(I(),1),hi=A(n(),1);C5=class C5 extends _4{constructor(Z){let J=Z.includeServerName===!1?void 0:Z.serverName||global.process.env.SENTRY_NAME||Si.hostname(),Q={...Z,platform:"node",runtime:Z.runtime||{name:"node",version:global.process.version},serverName:J};if(Z.openTelemetryInstrumentations)hi.registerInstrumentations({instrumentations:Z.openTelemetryInstrumentations});k9(Q,"node"),O.log(`Initializing Sentry: process: ${process.pid}, thread: ${jT0?"main":`worker-${wT0}`}.`);super(Q);if(this.getOptions().enableLogs){if(this._logOnExitFlushListener=()=>{Z5(this)},J)this.on("beforeCaptureLog",($)=>{$.attributes={...$.attributes,"server.address":J}});process.on("beforeExit",this._logOnExitFlushListener)}}get tracer(){if(this._tracer)return this._tracer;let Z="@sentry/node",J=e,Q=_i.trace.getTracer(Z,J);return this._tracer=Q,Q}async flush(Z){if(await this.traceProvider?.forceFlush(),this.getOptions().sendClientReports)this._flushOutcomes();return super.flush(Z)}async close(Z){if(this._clientReportInterval)clearInterval(this._clientReportInterval);if(this._clientReportOnExitFlushListener)process.off("beforeExit",this._clientReportOnExitFlushListener);if(this._logOnExitFlushListener)process.off("beforeExit",this._logOnExitFlushListener);let J=await super.close(Z);if(this.traceProvider)await this.traceProvider.shutdown();return J}startClientReportTracking(){let Z=this.getOptions();if(Z.sendClientReports)this._clientReportOnExitFlushListener=()=>{this._flushOutcomes()},this._clientReportInterval=setInterval(()=>{s&&O.log("Flushing client reports based on interval."),this._flushOutcomes()},Z.clientReportFlushInterval??DT0).unref(),process.on("beforeExit",this._clientReportOnExitFlushListener)}_setupIntegrations(){HF(),super._setupIntegrations()}_getTraceInfoFromScope(Z){if(!Z)return[void 0,void 0];return _p(this,Z)}}});import*as vi from"module";function Jw(){if(!wi())return;if(!d._sentryEsmLoaderHookRegistered){d._sentryEsmLoaderHookRegistered=!0;try{let{addHookMessagePort:Z}=bi.createAddHookMessageChannel();vi.register("import-in-the-middle/hook.mjs",import.meta.url,{data:{addHookMessagePort:Z,include:[]},transferList:[Z]})}catch(Z){O.warn("Failed to register 'import-in-the-middle' hook",Z)}}}var bi;var xi=q(()=>{N();LJ();bi=A(yB(),1)});function EK(){return[f8(),E8(),y8(),S8(),oq(),IF(),_8(),$i(),Li(),sZ(),rZ(),nZ(),OJ(),oZ(),yq(),tZ(),aZ()]}function Qw(Z={}){return OT0(Z,EK)}function OT0(Z={},J){let Q=LT0(Z,J);if(Q.debug===!0)if(s)O.enable();else G0(()=>{console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle.")});if(Q.registerEsmLoaderHooks!==!1)Jw();if(vp(),i().update(Q.initialScope),Q.spotlight&&!Q.integrations.some(({name:X})=>X===pq))Q.integrations.push(CJ({sidecarUrl:typeof Q.spotlight==="string"?Q.spotlight:void 0}));k9(Q,"node-core");let Y=new C5(Q);if(i().setClient(Y),Y.init(),O.log(`SDK initialized from ${l8()?"CommonJS":"ESM"}`),Y.startClientReportTracking(),MT0(),Cp(Y),bp(Y),process.env.VERCEL)process.on("SIGTERM",async()=>{await Y.flush(200)});return Y}function fK(){if(!s)return;let Z=kp(),J=["SentryContextManager","SentryPropagator"];if(P0())J.push("SentrySpanProcessor");for(let Q of J)if(!Z.includes(Q))O.error(`You have to set up the ${Q}. Without this, the OpenTelemetry & Sentry integration will not work properly.`);if(!Z.includes("SentrySampler"))O.warn("You have to set up the SentrySampler. Without this, the OpenTelemetry & Sentry integration may still work, but sample rates set for the Sentry SDK will not be respected. If you use a custom sampler, make sure to use `wrapSamplingDecision`.")}function LT0(Z,J){let Q=CT0(Z.release),$=Ei(Z.spotlight),Y=PT0(Z.tracesSampleRate),X={...Z,dsn:Z.dsn??process.env.SENTRY_DSN,environment:Z.environment??process.env.SENTRY_ENVIRONMENT,sendClientReports:Z.sendClientReports??!0,transport:Z.transport??PJ,stackParser:$V(Z.stackParser||kJ),release:Q,tracesSampleRate:Y,spotlight:$,debug:Q5(Z.debug??process.env.SENTRY_DEBUG)},W=Z.integrations,K=Z.defaultIntegrations??J(X);return{...X,integrations:mV({defaultIntegrations:K,integrations:W})}}function CT0(Z){if(Z!==void 0)return Z;let J=RJ();if(J!==void 0)return J;return}function PT0(Z){if(Z!==void 0)return Z;let J=process.env.SENTRY_TRACES_SAMPLE_RATE;if(!J)return;let Q=parseFloat(J);return isFinite(Q)?Q:void 0}function MT0(){if(Q5(process.env.SENTRY_USE_ENVIRONMENT)!==!1){let Z=process.env.SENTRY_TRACE,J=process.env.SENTRY_BAGGAGE,Q=d7(Z,J);i().setPropagationContext(Q)}}var gi=q(()=>{N();jJ();e6();np();Sq();hq();Yi();xq();dq();Ci();mq();uq();lq();iq();Ri();rq();LJ();fi();eq();Zw();xi()});var di=(Z)=>({package:Z,"javascript.is_cjs":l8()});var ci=q(()=>{LJ()});function E9(Z,J){let Q=k()?.getOptions();if(!Q?.disableInstrumentationWarnings&&!mi.isWrapped(Z)&&R8()&&P0(Q))G0(()=>{if(l8())console.warn(`[Sentry] ${J} is not instrumented. This is likely because you required/imported ${J} before calling \`Sentry.init()\`.`);else console.warn(`[Sentry] ${J} is not instrumented. Please make sure to initialize Sentry in a separate file that you \`--import\` when running node, see: https://docs.sentry.io/platforms/javascript/guides/${J}/install/esm/.`)}),D8().setContext("missing_instrumentation",di(J))}var mi;var ui=q(()=>{N();ci();LJ();mi=A(n(),1)});import{types as RT0}from"util";import{Worker as kT0}from"worker_threads";function $w(Z,...J){O.log(`[ANR] ${Z}`,...J)}function ET0(){return d}function fT0(){let Z=M9(x(),i());return Z.attachments=[],Z.eventProcessors=[],Z}async function yT0(Z){let J={message:"ANR"},Q={};for(let $ of Z.getEventProcessors()){if(J===null)break;J=await $(J,Q)}return J?.contexts||{}}async function _T0(Z,J){let Q=Z.getDsn();if(!Q)return()=>{};let $=await yT0(Z);delete $.app?.app_memory,delete $.device?.free_memory;let Y=Z.getOptions(),X=Z.getSdkMetadata()||{};if(X.sdk)X.sdk.integrations=Y.integrations.map((G)=>G.name);let W={debug:O.isEnabled(),dsn:Q,tunnel:Y.tunnel,environment:Y.environment||"production",release:Y.release,dist:Y.dist,sdkMetadata:X,appRootPath:J.appRootPath,pollInterval:J.pollInterval||IT0,anrThreshold:J.anrThreshold||TT0,captureStackTrace:!!J.captureStackTrace,maxAnrEvents:J.maxAnrEvents||1,staticTags:J.staticTags||{},contexts:$};if(W.captureStackTrace){let G=await import("inspector");if(!G.url())G.open(0)}let K=new kT0(new URL(`data:application/javascript;base64,${AT0}`),{workerData:W,execArgv:[],env:{...process.env,NODE_OPTIONS:void 0}});process.on("exit",()=>{K.terminate()});let z=setInterval(()=>{try{let G=x().getSession(),H=G?{...G,toJSON:void 0}:void 0;K.postMessage({session:H,debugImages:Q3(Y.stackParser)})}catch{}},W.pollInterval);return z.unref(),K.on("message",(G)=>{if(G==="session-ended")$w("ANR event sent from ANR worker. Clearing session in this thread."),x().setSession(void 0)}),K.once("error",(G)=>{clearInterval(z),$w("ANR worker error",G)}),K.once("exit",(G)=>{clearInterval(z),$w("ANR worker exit",G)}),K.unref(),()=>{K.terminate(),clearInterval(z)}}function SK(Z){let J=k()?.getIntegrationByName(li);if(!J)return Z();J.stopWorker();let Q=Z();if(NT0(Q))return Q.finally(()=>J.startWorker());return J.startWorker(),Q}var NT0,AT0="LyohIEBzZW50cnkvbm9kZS1jb3JlIDEwLjQ2LjAgKGU1ZmRjOWQpIHwgaHR0cHM6Ly9naXRodWIuY29tL2dldHNlbnRyeS9zZW50cnktamF2YXNjcmlwdCAqLwppbXBvcnR7U2Vzc2lvbiBhcyB0fWZyb20ibm9kZTppbnNwZWN0b3IiO2ltcG9ydHt3b3JrZXJEYXRhIGFzIG4scGFyZW50UG9ydCBhcyBlfWZyb20ibm9kZTp3b3JrZXJfdGhyZWFkcyI7aW1wb3J0e3Bvc2l4IGFzIHIsc2VwIGFzIG99ZnJvbSJub2RlOnBhdGgiO2ltcG9ydCphcyBpIGZyb20ibm9kZTpodHRwIjtpbXBvcnQqYXMgcyBmcm9tIm5vZGU6aHR0cHMiO2ltcG9ydHtSZWFkYWJsZSBhcyBjfWZyb20ibm9kZTpzdHJlYW0iO2ltcG9ydHtjcmVhdGVHemlwIGFzIHV9ZnJvbSJub2RlOnpsaWIiO2ltcG9ydCphcyBhIGZyb20ibm9kZTpuZXQiO2ltcG9ydCphcyBmIGZyb20ibm9kZTp0bHMiO2NvbnN0IGg9InVuZGVmaW5lZCI9PXR5cGVvZiBfX1NFTlRSWV9ERUJVR19ffHxfX1NFTlRSWV9ERUJVR19fLHA9Z2xvYmFsVGhpcyxkPSIxMC40Ni4wIjtmdW5jdGlvbiBsKCl7cmV0dXJuIG0ocCkscH1mdW5jdGlvbiBtKHQpe2NvbnN0IG49dC5fX1NFTlRSWV9fPXQuX19TRU5UUllfX3x8e307cmV0dXJuIG4udmVyc2lvbj1uLnZlcnNpb258fGQsbltkXT1uW2RdfHx7fX1mdW5jdGlvbiBnKHQsbixlPXApe2NvbnN0IHI9ZS5fX1NFTlRSWV9fPWUuX19TRU5UUllfX3x8e30sbz1yW2RdPXJbZF18fHt9O3JldHVybiBvW3RdfHwob1t0XT1uKCkpfWNvbnN0IHk9e307ZnVuY3Rpb24gYih0KXtpZighKCJjb25zb2xlImluIHApKXJldHVybiB0KCk7Y29uc3Qgbj1wLmNvbnNvbGUsZT17fSxyPU9iamVjdC5rZXlzKHkpO3IuZm9yRWFjaCh0PT57Y29uc3Qgcj15W3RdO2VbdF09blt0XSxuW3RdPXJ9KTt0cnl7cmV0dXJuIHQoKX1maW5hbGx5e3IuZm9yRWFjaCh0PT57blt0XT1lW3RdfSl9fWZ1bmN0aW9uIHYoKXtyZXR1cm4gdygpLmVuYWJsZWR9ZnVuY3Rpb24gXyh0LC4uLm4pe2gmJnYoKSYmYigoKT0+e3AuY29uc29sZVt0XShgU2VudHJ5IExvZ2dlciBbJHt0fV06YCwuLi5uKX0pfWZ1bmN0aW9uIHcoKXtyZXR1cm4gaD9nKCJsb2dnZXJTZXR0aW5ncyIsKCk9Pih7ZW5hYmxlZDohMX0pKTp7ZW5hYmxlZDohMX19Y29uc3QgUz17ZW5hYmxlOmZ1bmN0aW9uKCl7dygpLmVuYWJsZWQ9ITB9LGRpc2FibGU6ZnVuY3Rpb24oKXt3KCkuZW5hYmxlZD0hMX0saXNFbmFibGVkOnYsbG9nOmZ1bmN0aW9uKC4uLnQpe18oImxvZyIsLi4udCl9LHdhcm46ZnVuY3Rpb24oLi4udCl7Xygid2FybiIsLi4udCl9LGVycm9yOmZ1bmN0aW9uKC4uLnQpe18oImVycm9yIiwuLi50KX19LCQ9L2NhcHR1cmVNZXNzYWdlfGNhcHR1cmVFeGNlcHRpb24vO2Z1bmN0aW9uIEUodCl7cmV0dXJuIHRbdC5sZW5ndGgtMV18fHt9fWNvbnN0IHg9Ijxhbm9ueW1vdXM+Ijtjb25zdCBOPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7ZnVuY3Rpb24gaih0LG4pe3JldHVybiBOLmNhbGwodCk9PT1gW29iamVjdCAke259XWB9ZnVuY3Rpb24gQyh0KXtyZXR1cm4gaih0LCJTdHJpbmciKX1mdW5jdGlvbiBBKHQpe3JldHVybiBqKHQsIk9iamVjdCIpfWZ1bmN0aW9uIFQodCl7cmV0dXJuIEJvb2xlYW4odD8udGhlbiYmImZ1bmN0aW9uIj09dHlwZW9mIHQudGhlbil9ZnVuY3Rpb24gayh0LG4pe3RyeXtyZXR1cm4gdCBpbnN0YW5jZW9mIG59Y2F0Y2h7cmV0dXJuITF9fWNvbnN0IEk9cDtmdW5jdGlvbiBPKHQsbil7Y29uc3QgZT10LHI9W107aWYoIWU/LnRhZ05hbWUpcmV0dXJuIiI7aWYoSS5IVE1MRWxlbWVudCYmZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZlLmRhdGFzZXQpe2lmKGUuZGF0YXNldC5zZW50cnlDb21wb25lbnQpcmV0dXJuIGUuZGF0YXNldC5zZW50cnlDb21wb25lbnQ7aWYoZS5kYXRhc2V0LnNlbnRyeUVsZW1lbnQpcmV0dXJuIGUuZGF0YXNldC5zZW50cnlFbGVtZW50fXIucHVzaChlLnRhZ05hbWUudG9Mb3dlckNhc2UoKSk7Y29uc3Qgbz1uPy5sZW5ndGg/bi5maWx0ZXIodD0+ZS5nZXRBdHRyaWJ1dGUodCkpLm1hcCh0PT5bdCxlLmdldEF0dHJpYnV0ZSh0KV0pOm51bGw7aWYobz8ubGVuZ3RoKW8uZm9yRWFjaCh0PT57ci5wdXNoKGBbJHt0WzBdfT0iJHt0WzFdfSJdYCl9KTtlbHNle2UuaWQmJnIucHVzaChgIyR7ZS5pZH1gKTtjb25zdCB0PWUuY2xhc3NOYW1lO2lmKHQmJkModCkpe2NvbnN0IG49dC5zcGxpdCgvXHMrLyk7Zm9yKGNvbnN0IHQgb2YgbilyLnB1c2goYC4ke3R9YCl9fWZvcihjb25zdCB0IG9mWyJhcmlhLWxhYmVsIiwidHlwZSIsIm5hbWUiLCJ0aXRsZSIsImFsdCJdKXtjb25zdCBuPWUuZ2V0QXR0cmlidXRlKHQpO24mJnIucHVzaChgWyR7dH09IiR7bn0iXWApfXJldHVybiByLmpvaW4oIiIpfWZ1bmN0aW9uIFIodCl7aWYoZnVuY3Rpb24odCl7c3dpdGNoKE4uY2FsbCh0KSl7Y2FzZSJbb2JqZWN0IEVycm9yXSI6Y2FzZSJbb2JqZWN0IEV4Y2VwdGlvbl0iOmNhc2UiW29iamVjdCBET01FeGNlcHRpb25dIjpjYXNlIltvYmplY3QgV2ViQXNzZW1ibHkuRXhjZXB0aW9uXSI6cmV0dXJuITA7ZGVmYXVsdDpyZXR1cm4gayh0LEVycm9yKX19KHQpKXJldHVybnttZXNzYWdlOnQubWVzc2FnZSxuYW1lOnQubmFtZSxzdGFjazp0LnN0YWNrLC4uLkQodCl9O2lmKG49dCwidW5kZWZpbmVkIiE9dHlwZW9mIEV2ZW50JiZrKG4sRXZlbnQpKXtjb25zdCBuPXt0eXBlOnQudHlwZSx0YXJnZXQ6UCh0LnRhcmdldCksY3VycmVudFRhcmdldDpQKHQuY3VycmVudFRhcmdldCksLi4uRCh0KX07cmV0dXJuInVuZGVmaW5lZCIhPXR5cGVvZiBDdXN0b21FdmVudCYmayh0LEN1c3RvbUV2ZW50KSYmKG4uZGV0YWlsPXQuZGV0YWlsKSxufXJldHVybiB0O3ZhciBufWZ1bmN0aW9uIFAodCl7dHJ5e3JldHVybiBuPXQsInVuZGVmaW5lZCIhPXR5cGVvZiBFbGVtZW50JiZrKG4sRWxlbWVudCk/ZnVuY3Rpb24odCxuPXt9KXtpZighdClyZXR1cm4iPHVua25vd24+Ijt0cnl7bGV0IGU9dDtjb25zdCByPTUsbz1bXTtsZXQgaT0wLHM9MDtjb25zdCBjPSIgPiAiLHU9Yy5sZW5ndGg7bGV0IGE7Y29uc3QgZj1BcnJheS5pc0FycmF5KG4pP246bi5rZXlBdHRycyxoPSFBcnJheS5pc0FycmF5KG4pJiZuLm1heFN0cmluZ0xlbmd0aHx8ODA7Zm9yKDtlJiZpKys8ciYmKGE9TyhlLGYpLCEoImh0bWwiPT09YXx8aT4xJiZzK28ubGVuZ3RoKnUrYS5sZW5ndGg+PWgpKTspby5wdXNoKGEpLHMrPWEubGVuZ3RoLGU9ZS5wYXJlbnROb2RlO3JldHVybiBvLnJldmVyc2UoKS5qb2luKGMpfWNhdGNoe3JldHVybiI8dW5rbm93bj4ifX0odCk6T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpfWNhdGNoe3JldHVybiI8dW5rbm93bj4ifXZhciBufWZ1bmN0aW9uIEQodCl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiB0JiZudWxsIT09dD9PYmplY3QuZnJvbUVudHJpZXMoT2JqZWN0LmVudHJpZXModCkpOnt9fWxldCBVLEw7ZnVuY3Rpb24gTSh0KXtpZih2b2lkIDAhPT1VKXJldHVybiBVP1UodCk6dCgpO2NvbnN0IG49U3ltYm9sLmZvcigiX19TRU5UUllfU0FGRV9SQU5ET01fSURfV1JBUFBFUl9fIiksZT1wO3JldHVybiBuIGluIGUmJiJmdW5jdGlvbiI9PXR5cGVvZiBlW25dPyhVPWVbbl0sVSh0KSk6KFU9bnVsbCx0KCkpfWZ1bmN0aW9uIEIoKXtyZXR1cm4gTSgoKT0+TWF0aC5yYW5kb20oKSl9ZnVuY3Rpb24gVygpe3JldHVybiBNKCgpPT5EYXRlLm5vdygpKX1mdW5jdGlvbiB6KHQsbj0wKXtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIHR8fDA9PT1ufHx0Lmxlbmd0aDw9bj90OmAke3Quc2xpY2UoMCxuKX0uLi5gfWZ1bmN0aW9uIEYodD1mdW5jdGlvbigpe2NvbnN0IHQ9cDtyZXR1cm4gdC5jcnlwdG98fHQubXNDcnlwdG99KCkpe3RyeXtpZih0Py5yYW5kb21VVUlEKXJldHVybiBNKCgpPT50LnJhbmRvbVVVSUQoKSkucmVwbGFjZSgvLS9nLCIiKX1jYXRjaHt9cmV0dXJuIEx8fChMPVsxZTddKzFlMys0ZTMrOGUzKzFlMTEpLEwucmVwbGFjZSgvWzAxOF0vZyx0PT4odF4oMTYqQigpJjE1KT4+dC80KS50b1N0cmluZygxNikpfWZ1bmN0aW9uIEcoKXtyZXR1cm4gVygpLzFlM31sZXQgSDtmdW5jdGlvbiBKKCl7cmV0dXJuKEg/PyhIPWZ1bmN0aW9uKCl7Y29uc3R7cGVyZm9ybWFuY2U6dH09cDtpZighdD8ubm93fHwhdC50aW1lT3JpZ2luKXJldHVybiBHO2NvbnN0IG49dC50aW1lT3JpZ2luO3JldHVybigpPT4obitNKCgpPT50Lm5vdygpKSkvMWUzfSgpKSkoKX1mdW5jdGlvbiBZKHQpe2NvbnN0IG49SigpLGU9e3NpZDpGKCksaW5pdDohMCx0aW1lc3RhbXA6bixzdGFydGVkOm4sZHVyYXRpb246MCxzdGF0dXM6Im9rIixlcnJvcnM6MCxpZ25vcmVEdXJhdGlvbjohMSx0b0pTT046KCk9PmZ1bmN0aW9uKHQpe3JldHVybntzaWQ6YCR7dC5zaWR9YCxpbml0OnQuaW5pdCxzdGFydGVkOm5ldyBEYXRlKDFlMyp0LnN0YXJ0ZWQpLnRvSVNPU3RyaW5nKCksdGltZXN0YW1wOm5ldyBEYXRlKDFlMyp0LnRpbWVzdGFtcCkudG9JU09TdHJpbmcoKSxzdGF0dXM6dC5zdGF0dXMsZXJyb3JzOnQuZXJyb3JzLGRpZDoibnVtYmVyIj09dHlwZW9mIHQuZGlkfHwic3RyaW5nIj09dHlwZW9mIHQuZGlkP2Ake3QuZGlkfWA6dm9pZCAwLGR1cmF0aW9uOnQuZHVyYXRpb24sYWJub3JtYWxfbWVjaGFuaXNtOnQuYWJub3JtYWxfbWVjaGFuaXNtLGF0dHJzOntyZWxlYXNlOnQucmVsZWFzZSxlbnZpcm9ubWVudDp0LmVudmlyb25tZW50LGlwX2FkZHJlc3M6dC5pcEFkZHJlc3MsdXNlcl9hZ2VudDp0LnVzZXJBZ2VudH19fShlKX07cmV0dXJuIHQmJlYoZSx0KSxlfWZ1bmN0aW9uIFYodCxuPXt9KXtpZihuLnVzZXImJighdC5pcEFkZHJlc3MmJm4udXNlci5pcF9hZGRyZXNzJiYodC5pcEFkZHJlc3M9bi51c2VyLmlwX2FkZHJlc3MpLHQuZGlkfHxuLmRpZHx8KHQuZGlkPW4udXNlci5pZHx8bi51c2VyLmVtYWlsfHxuLnVzZXIudXNlcm5hbWUpKSx0LnRpbWVzdGFtcD1uLnRpbWVzdGFtcHx8SigpLG4uYWJub3JtYWxfbWVjaGFuaXNtJiYodC5hYm5vcm1hbF9tZWNoYW5pc209bi5hYm5vcm1hbF9tZWNoYW5pc20pLG4uaWdub3JlRHVyYXRpb24mJih0Lmlnbm9yZUR1cmF0aW9uPW4uaWdub3JlRHVyYXRpb24pLG4uc2lkJiYodC5zaWQ9MzI9PT1uLnNpZC5sZW5ndGg/bi5zaWQ6RigpKSx2b2lkIDAhPT1uLmluaXQmJih0LmluaXQ9bi5pbml0KSwhdC5kaWQmJm4uZGlkJiYodC5kaWQ9YCR7bi5kaWR9YCksIm51bWJlciI9PXR5cGVvZiBuLnN0YXJ0ZWQmJih0LnN0YXJ0ZWQ9bi5zdGFydGVkKSx0Lmlnbm9yZUR1cmF0aW9uKXQuZHVyYXRpb249dm9pZCAwO2Vsc2UgaWYoIm51bWJlciI9PXR5cGVvZiBuLmR1cmF0aW9uKXQuZHVyYXRpb249bi5kdXJhdGlvbjtlbHNle2NvbnN0IG49dC50aW1lc3RhbXAtdC5zdGFydGVkO3QuZHVyYXRpb249bj49MD9uOjB9bi5yZWxlYXNlJiYodC5yZWxlYXNlPW4ucmVsZWFzZSksbi5lbnZpcm9ubWVudCYmKHQuZW52aXJvbm1lbnQ9bi5lbnZpcm9ubWVudCksIXQuaXBBZGRyZXNzJiZuLmlwQWRkcmVzcyYmKHQuaXBBZGRyZXNzPW4uaXBBZGRyZXNzKSwhdC51c2VyQWdlbnQmJm4udXNlckFnZW50JiYodC51c2VyQWdlbnQ9bi51c2VyQWdlbnQpLCJudW1iZXIiPT10eXBlb2Ygbi5lcnJvcnMmJih0LmVycm9ycz1uLmVycm9ycyksbi5zdGF0dXMmJih0LnN0YXR1cz1uLnN0YXR1cyl9ZnVuY3Rpb24gSyh0LG4sZT0yKXtpZighbnx8Im9iamVjdCIhPXR5cGVvZiBufHxlPD0wKXJldHVybiBuO2lmKHQmJjA9PT1PYmplY3Qua2V5cyhuKS5sZW5ndGgpcmV0dXJuIHQ7Y29uc3Qgcj17Li4udH07Zm9yKGNvbnN0IHQgaW4gbilPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobix0KSYmKHJbdF09SyhyW3RdLG5bdF0sZS0xKSk7cmV0dXJuIHJ9ZnVuY3Rpb24gWigpe3JldHVybiBGKCl9ZnVuY3Rpb24gcSgpe3JldHVybiBGKCkuc3Vic3RyaW5nKDE2KX1jb25zdCBRPSJfc2VudHJ5U3BhbiI7ZnVuY3Rpb24gWCh0LG4pe24/ZnVuY3Rpb24odCxuLGUpe3RyeXtPYmplY3QuZGVmaW5lUHJvcGVydHkodCxuLHt2YWx1ZTplLHdyaXRhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMH0pfWNhdGNoe2gmJlMubG9nKGBGYWlsZWQgdG8gYWRkIG5vbi1lbnVtZXJhYmxlIHByb3BlcnR5ICIke259IiB0byBvYmplY3RgLHQpfX0odCxRLG4pOmRlbGV0ZSB0W1FdfWZ1bmN0aW9uIHR0KHQpe3JldHVybiB0W1FdfWNsYXNzIG50e2NvbnN0cnVjdG9yKCl7dGhpcy50PSExLHRoaXMubz1bXSx0aGlzLmk9W10sdGhpcy51PVtdLHRoaXMuaD1bXSx0aGlzLnA9e30sdGhpcy5sPXt9LHRoaXMubT17fSx0aGlzLnY9e30sdGhpcy5fPXt9LHRoaXMuUz17fSx0aGlzLk49e3RyYWNlSWQ6WigpLHNhbXBsZVJhbmQ6QigpfX1jbG9uZSgpe2NvbnN0IHQ9bmV3IG50O3JldHVybiB0LnU9Wy4uLnRoaXMudV0sdC5sPXsuLi50aGlzLmx9LHQubT17Li4udGhpcy5tfSx0LnY9ey4uLnRoaXMudn0sdC5fPXsuLi50aGlzLl99LHRoaXMuXy5mbGFncyYmKHQuXy5mbGFncz17dmFsdWVzOlsuLi50aGlzLl8uZmxhZ3MudmFsdWVzXX0pLHQucD10aGlzLnAsdC5qPXRoaXMuaix0LkM9dGhpcy5DLHQuQT10aGlzLkEsdC5UPXRoaXMuVCx0Lmk9Wy4uLnRoaXMuaV0sdC5oPVsuLi50aGlzLmhdLHQuUz17Li4udGhpcy5TfSx0Lk49ey4uLnRoaXMuTn0sdC5rPXRoaXMuayx0Lkk9dGhpcy5JLHQuTz10aGlzLk8sWCh0LHR0KHRoaXMpKSx0fXNldENsaWVudCh0KXt0aGlzLms9dH1zZXRMYXN0RXZlbnRJZCh0KXt0aGlzLkk9dH1nZXRDbGllbnQoKXtyZXR1cm4gdGhpcy5rfWxhc3RFdmVudElkKCl7cmV0dXJuIHRoaXMuSX1hZGRTY29wZUxpc3RlbmVyKHQpe3RoaXMuby5wdXNoKHQpfWFkZEV2ZW50UHJvY2Vzc29yKHQpe3JldHVybiB0aGlzLmkucHVzaCh0KSx0aGlzfXNldFVzZXIodCl7cmV0dXJuIHRoaXMucD10fHx7ZW1haWw6dm9pZCAwLGlkOnZvaWQgMCxpcF9hZGRyZXNzOnZvaWQgMCx1c2VybmFtZTp2b2lkIDB9LHRoaXMuQyYmVih0aGlzLkMse3VzZXI6dH0pLHRoaXMuUigpLHRoaXN9Z2V0VXNlcigpe3JldHVybiB0aGlzLnB9c2V0Q29udmVyc2F0aW9uSWQodCl7cmV0dXJuIHRoaXMuTz10fHx2b2lkIDAsdGhpcy5SKCksdGhpc31zZXRUYWdzKHQpe3JldHVybiB0aGlzLmw9ey4uLnRoaXMubCwuLi50fSx0aGlzLlIoKSx0aGlzfXNldFRhZyh0LG4pe3JldHVybiB0aGlzLnNldFRhZ3Moe1t0XTpufSl9c2V0QXR0cmlidXRlcyh0KXtyZXR1cm4gdGhpcy5tPXsuLi50aGlzLm0sLi4udH0sdGhpcy5SKCksdGhpc31zZXRBdHRyaWJ1dGUodCxuKXtyZXR1cm4gdGhpcy5zZXRBdHRyaWJ1dGVzKHtbdF06bn0pfXJlbW92ZUF0dHJpYnV0ZSh0KXtyZXR1cm4gdCBpbiB0aGlzLm0mJihkZWxldGUgdGhpcy5tW3RdLHRoaXMuUigpKSx0aGlzfXNldEV4dHJhcyh0KXtyZXR1cm4gdGhpcy52PXsuLi50aGlzLnYsLi4udH0sdGhpcy5SKCksdGhpc31zZXRFeHRyYSh0LG4pe3JldHVybiB0aGlzLnY9ey4uLnRoaXMudixbdF06bn0sdGhpcy5SKCksdGhpc31zZXRGaW5nZXJwcmludCh0KXtyZXR1cm4gdGhpcy5UPXQsdGhpcy5SKCksdGhpc31zZXRMZXZlbCh0KXtyZXR1cm4gdGhpcy5qPXQsdGhpcy5SKCksdGhpc31zZXRUcmFuc2FjdGlvbk5hbWUodCl7cmV0dXJuIHRoaXMuQT10LHRoaXMuUigpLHRoaXN9c2V0Q29udGV4dCh0LG4pe3JldHVybiBudWxsPT09bj9kZWxldGUgdGhpcy5fW3RdOnRoaXMuX1t0XT1uLHRoaXMuUigpLHRoaXN9c2V0U2Vzc2lvbih0KXtyZXR1cm4gdD90aGlzLkM9dDpkZWxldGUgdGhpcy5DLHRoaXMuUigpLHRoaXN9Z2V0U2Vzc2lvbigpe3JldHVybiB0aGlzLkN9dXBkYXRlKHQpe2lmKCF0KXJldHVybiB0aGlzO2NvbnN0IG49ImZ1bmN0aW9uIj09dHlwZW9mIHQ/dCh0aGlzKTp0LGU9biBpbnN0YW5jZW9mIG50P24uZ2V0U2NvcGVEYXRhKCk6QShuKT90OnZvaWQgMCx7dGFnczpyLGF0dHJpYnV0ZXM6byxleHRyYTppLHVzZXI6cyxjb250ZXh0czpjLGxldmVsOnUsZmluZ2VycHJpbnQ6YT1bXSxwcm9wYWdhdGlvbkNvbnRleHQ6Zixjb252ZXJzYXRpb25JZDpofT1lfHx7fTtyZXR1cm4gdGhpcy5sPXsuLi50aGlzLmwsLi4ucn0sdGhpcy5tPXsuLi50aGlzLm0sLi4ub30sdGhpcy52PXsuLi50aGlzLnYsLi4uaX0sdGhpcy5fPXsuLi50aGlzLl8sLi4uY30scyYmT2JqZWN0LmtleXMocykubGVuZ3RoJiYodGhpcy5wPXMpLHUmJih0aGlzLmo9dSksYS5sZW5ndGgmJih0aGlzLlQ9YSksZiYmKHRoaXMuTj1mKSxoJiYodGhpcy5PPWgpLHRoaXN9Y2xlYXIoKXtyZXR1cm4gdGhpcy51PVtdLHRoaXMubD17fSx0aGlzLm09e30sdGhpcy52PXt9LHRoaXMucD17fSx0aGlzLl89e30sdGhpcy5qPXZvaWQgMCx0aGlzLkE9dm9pZCAwLHRoaXMuVD12b2lkIDAsdGhpcy5DPXZvaWQgMCx0aGlzLk89dm9pZCAwLFgodGhpcyx2b2lkIDApLHRoaXMuaD1bXSx0aGlzLnNldFByb3BhZ2F0aW9uQ29udGV4dCh7dHJhY2VJZDpaKCksc2FtcGxlUmFuZDpCKCl9KSx0aGlzLlIoKSx0aGlzfWFkZEJyZWFkY3J1bWIodCxuKXtjb25zdCBlPSJudW1iZXIiPT10eXBlb2Ygbj9uOjEwMDtpZihlPD0wKXJldHVybiB0aGlzO2NvbnN0IHI9e3RpbWVzdGFtcDpHKCksLi4udCxtZXNzYWdlOnQubWVzc2FnZT96KHQubWVzc2FnZSwyMDQ4KTp0Lm1lc3NhZ2V9O3JldHVybiB0aGlzLnUucHVzaChyKSx0aGlzLnUubGVuZ3RoPmUmJih0aGlzLnU9dGhpcy51LnNsaWNlKC1lKSx0aGlzLms/LnJlY29yZERyb3BwZWRFdmVudCgiYnVmZmVyX292ZXJmbG93IiwibG9nX2l0ZW0iKSksdGhpcy5SKCksdGhpc31nZXRMYXN0QnJlYWRjcnVtYigpe3JldHVybiB0aGlzLnVbdGhpcy51Lmxlbmd0aC0xXX1jbGVhckJyZWFkY3J1bWJzKCl7cmV0dXJuIHRoaXMudT1bXSx0aGlzLlIoKSx0aGlzfWFkZEF0dGFjaG1lbnQodCl7cmV0dXJuIHRoaXMuaC5wdXNoKHQpLHRoaXN9Y2xlYXJBdHRhY2htZW50cygpe3JldHVybiB0aGlzLmg9W10sdGhpc31nZXRTY29wZURhdGEoKXtyZXR1cm57YnJlYWRjcnVtYnM6dGhpcy51LGF0dGFjaG1lbnRzOnRoaXMuaCxjb250ZXh0czp0aGlzLl8sdGFnczp0aGlzLmwsYXR0cmlidXRlczp0aGlzLm0sZXh0cmE6dGhpcy52LHVzZXI6dGhpcy5wLGxldmVsOnRoaXMuaixmaW5nZXJwcmludDp0aGlzLlR8fFtdLGV2ZW50UHJvY2Vzc29yczp0aGlzLmkscHJvcGFnYXRpb25Db250ZXh0OnRoaXMuTixzZGtQcm9jZXNzaW5nTWV0YWRhdGE6dGhpcy5TLHRyYW5zYWN0aW9uTmFtZTp0aGlzLkEsc3Bhbjp0dCh0aGlzKSxjb252ZXJzYXRpb25JZDp0aGlzLk99fXNldFNES1Byb2Nlc3NpbmdNZXRhZGF0YSh0KXtyZXR1cm4gdGhpcy5TPUsodGhpcy5TLHQsMiksdGhpc31zZXRQcm9wYWdhdGlvbkNvbnRleHQodCl7cmV0dXJuIHRoaXMuTj10LHRoaXN9Z2V0UHJvcGFnYXRpb25Db250ZXh0KCl7cmV0dXJuIHRoaXMuTn1jYXB0dXJlRXhjZXB0aW9uKHQsbil7Y29uc3QgZT1uPy5ldmVudF9pZHx8RigpO2lmKCF0aGlzLmspcmV0dXJuIGgmJlMud2FybigiTm8gY2xpZW50IGNvbmZpZ3VyZWQgb24gc2NvcGUgLSB3aWxsIG5vdCBjYXB0dXJlIGV4Y2VwdGlvbiEiKSxlO2NvbnN0IHI9bmV3IEVycm9yKCJTZW50cnkgc3ludGhldGljRXhjZXB0aW9uIik7cmV0dXJuIHRoaXMuay5jYXB0dXJlRXhjZXB0aW9uKHQse29yaWdpbmFsRXhjZXB0aW9uOnQsc3ludGhldGljRXhjZXB0aW9uOnIsLi4ubixldmVudF9pZDplfSx0aGlzKSxlfWNhcHR1cmVNZXNzYWdlKHQsbixlKXtjb25zdCByPWU/LmV2ZW50X2lkfHxGKCk7aWYoIXRoaXMuaylyZXR1cm4gaCYmUy53YXJuKCJObyBjbGllbnQgY29uZmlndXJlZCBvbiBzY29wZSAtIHdpbGwgbm90IGNhcHR1cmUgbWVzc2FnZSEiKSxyO2NvbnN0IG89ZT8uc3ludGhldGljRXhjZXB0aW9uPz9uZXcgRXJyb3IodCk7cmV0dXJuIHRoaXMuay5jYXB0dXJlTWVzc2FnZSh0LG4se29yaWdpbmFsRXhjZXB0aW9uOnQsc3ludGhldGljRXhjZXB0aW9uOm8sLi4uZSxldmVudF9pZDpyfSx0aGlzKSxyfWNhcHR1cmVFdmVudCh0LG4pe2NvbnN0IGU9dC5ldmVudF9pZHx8bj8uZXZlbnRfaWR8fEYoKTtyZXR1cm4gdGhpcy5rPyh0aGlzLmsuY2FwdHVyZUV2ZW50KHQsey4uLm4sZXZlbnRfaWQ6ZX0sdGhpcyksZSk6KGgmJlMud2FybigiTm8gY2xpZW50IGNvbmZpZ3VyZWQgb24gc2NvcGUgLSB3aWxsIG5vdCBjYXB0dXJlIGV2ZW50ISIpLGUpfVIoKXt0aGlzLnR8fCh0aGlzLnQ9ITAsdGhpcy5vLmZvckVhY2godD0+e3QodGhpcyl9KSx0aGlzLnQ9ITEpfX1jb25zdCBldD10PT50IGluc3RhbmNlb2YgUHJvbWlzZSYmIXRbcnRdLHJ0PVN5bWJvbCgiY2hhaW5lZCBQcm9taXNlTGlrZSIpLG90PSh0LG4pPT57bGV0IGU9ITE7Zm9yKGNvbnN0IHIgaW4gdCl7aWYociBpbiBuKWNvbnRpbnVlO2U9ITA7Y29uc3Qgbz10W3JdOyJmdW5jdGlvbiI9PXR5cGVvZiBvP09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLHIse3ZhbHVlOiguLi5uKT0+by5hcHBseSh0LG4pLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6bltyXT1vfXJldHVybiBlJiZPYmplY3QuYXNzaWduKG4se1tydF06ITB9KSxufTtjbGFzcyBpdHtjb25zdHJ1Y3Rvcih0LG4pe2xldCBlLHI7ZT10fHxuZXcgbnQscj1ufHxuZXcgbnQsdGhpcy5QPVt7c2NvcGU6ZX1dLHRoaXMuRD1yfXdpdGhTY29wZSh0KXtjb25zdCBuPXRoaXMuVSgpO2xldCBlO3RyeXtlPXQobil9Y2F0Y2godCl7dGhyb3cgdGhpcy5MKCksdH1yZXR1cm4gVChlKT8oKHQsbixlKT0+e2NvbnN0IHI9dC50aGVuKHQ9PihuKHQpLHQpLHQ9Pnt0aHJvdyBlKHQpLHR9KTtyZXR1cm4gZXQocikmJmV0KHQpP3I6b3QodCxyKX0pKGUsKCk9PnRoaXMuTCgpLCgpPT50aGlzLkwoKSk6KHRoaXMuTCgpLGUpfWdldENsaWVudCgpe3JldHVybiB0aGlzLmdldFN0YWNrVG9wKCkuY2xpZW50fWdldFNjb3BlKCl7cmV0dXJuIHRoaXMuZ2V0U3RhY2tUb3AoKS5zY29wZX1nZXRJc29sYXRpb25TY29wZSgpe3JldHVybiB0aGlzLkR9Z2V0U3RhY2tUb3AoKXtyZXR1cm4gdGhpcy5QW3RoaXMuUC5sZW5ndGgtMV19VSgpe2NvbnN0IHQ9dGhpcy5nZXRTY29wZSgpLmNsb25lKCk7cmV0dXJuIHRoaXMuUC5wdXNoKHtjbGllbnQ6dGhpcy5nZXRDbGllbnQoKSxzY29wZTp0fSksdH1MKCl7cmV0dXJuISh0aGlzLlAubGVuZ3RoPD0xKSYmISF0aGlzLlAucG9wKCl9fWZ1bmN0aW9uIHN0KCl7Y29uc3QgdD1tKGwoKSk7cmV0dXJuIHQuc3RhY2s9dC5zdGFja3x8bmV3IGl0KGcoImRlZmF1bHRDdXJyZW50U2NvcGUiLCgpPT5uZXcgbnQpLGcoImRlZmF1bHRJc29sYXRpb25TY29wZSIsKCk9Pm5ldyBudCkpfWZ1bmN0aW9uIGN0KHQpe3JldHVybiBzdCgpLndpdGhTY29wZSh0KX1mdW5jdGlvbiB1dCh0LG4pe2NvbnN0IGU9c3QoKTtyZXR1cm4gZS53aXRoU2NvcGUoKCk9PihlLmdldFN0YWNrVG9wKCkuc2NvcGU9dCxuKHQpKSl9ZnVuY3Rpb24gYXQodCl7cmV0dXJuIHN0KCkud2l0aFNjb3BlKCgpPT50KHN0KCkuZ2V0SXNvbGF0aW9uU2NvcGUoKSkpfWZ1bmN0aW9uIGZ0KHQpe2NvbnN0IG49bSh0KTtyZXR1cm4gbi5hY3M/bi5hY3M6e3dpdGhJc29sYXRpb25TY29wZTphdCx3aXRoU2NvcGU6Y3Qsd2l0aFNldFNjb3BlOnV0LHdpdGhTZXRJc29sYXRpb25TY29wZToodCxuKT0+YXQobiksZ2V0Q3VycmVudFNjb3BlOigpPT5zdCgpLmdldFNjb3BlKCksZ2V0SXNvbGF0aW9uU2NvcGU6KCk9PnN0KCkuZ2V0SXNvbGF0aW9uU2NvcGUoKX19ZnVuY3Rpb24gaHQoKXtyZXR1cm4gZnQobCgpKS5nZXRDdXJyZW50U2NvcGUoKS5nZXRDbGllbnQoKX1mdW5jdGlvbiBwdCh0KXtpZih0KXtpZigib2JqZWN0Ij09dHlwZW9mIHQmJiJkZXJlZiJpbiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgdC5kZXJlZil0cnl7cmV0dXJuIHQuZGVyZWYoKX1jYXRjaHtyZXR1cm59cmV0dXJuIHR9fWZ1bmN0aW9uIGR0KHQpe2NvbnN0IG49dDtyZXR1cm57c2NvcGU6bi5fc2VudHJ5U2NvcGUsaXNvbGF0aW9uU2NvcGU6cHQobi5fc2VudHJ5SXNvbGF0aW9uU2NvcGUpfX1jb25zdCBsdD0ic2VudHJ5LSI7ZnVuY3Rpb24gbXQodCl7Y29uc3Qgbj1mdW5jdGlvbih0KXtpZighdHx8IUModCkmJiFBcnJheS5pc0FycmF5KHQpKXJldHVybjtpZihBcnJheS5pc0FycmF5KHQpKXJldHVybiB0LnJlZHVjZSgodCxuKT0+e2NvbnN0IGU9Z3Qobik7cmV0dXJuIE9iamVjdC5lbnRyaWVzKGUpLmZvckVhY2goKFtuLGVdKT0+e3Rbbl09ZX0pLHR9LHt9KTtyZXR1cm4gZ3QodCl9KHQpO2lmKCFuKXJldHVybjtjb25zdCBlPU9iamVjdC5lbnRyaWVzKG4pLnJlZHVjZSgodCxbbixlXSk9PntpZihuLnN0YXJ0c1dpdGgobHQpKXt0W24uc2xpY2UoNyldPWV9cmV0dXJuIHR9LHt9KTtyZXR1cm4gT2JqZWN0LmtleXMoZSkubGVuZ3RoPjA/ZTp2b2lkIDB9ZnVuY3Rpb24gZ3QodCl7cmV0dXJuIHQuc3BsaXQoIiwiKS5tYXAodD0+e2NvbnN0IG49dC5pbmRleE9mKCI9Iik7aWYoLTE9PT1uKXJldHVybltdO3JldHVyblt0LnNsaWNlKDAsbiksdC5zbGljZShuKzEpXS5tYXAodD0+e3RyeXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KHQudHJpbSgpKX1jYXRjaHtyZXR1cm59fSl9KS5yZWR1Y2UoKHQsW24sZV0pPT4obiYmZSYmKHRbbl09ZSksdCkse30pfWNvbnN0IHl0PS9ebyhcZCspXC4vO2Z1bmN0aW9uIGJ0KHQsbj0hMSl7Y29uc3R7aG9zdDplLHBhdGg6cixwYXNzOm8scG9ydDppLHByb2plY3RJZDpzLHByb3RvY29sOmMscHVibGljS2V5OnV9PXQ7cmV0dXJuYCR7Y306Ly8ke3V9JHtuJiZvP2A6JHtvfWA6IiJ9QCR7ZX0ke2k/YDoke2l9YDoiIn0vJHtyP2Ake3J9L2A6cn0ke3N9YH1mdW5jdGlvbiB2dCh0KXtjb25zdCBuPXQuZ2V0T3B0aW9ucygpLHtob3N0OmV9PXQuZ2V0RHNuKCl8fHt9O2xldCByO3JldHVybiBuLm9yZ0lkP3I9U3RyaW5nKG4ub3JnSWQpOmUmJihyPWZ1bmN0aW9uKHQpe2NvbnN0IG49dC5tYXRjaCh5dCk7cmV0dXJuIG4/LlsxXX0oZSkpLHJ9ZnVuY3Rpb24gX3QodCl7Y29uc3R7c3BhbklkOm4sdHJhY2VJZDplLGlzUmVtb3RlOnJ9PXQuc3BhbkNvbnRleHQoKSxvPXI/bjpFdCh0KS5wYXJlbnRfc3Bhbl9pZCxpPWR0KHQpLnNjb3BlO3JldHVybntwYXJlbnRfc3Bhbl9pZDpvLHNwYW5faWQ6cj9pPy5nZXRQcm9wYWdhdGlvbkNvbnRleHQoKS5wcm9wYWdhdGlvblNwYW5JZHx8cSgpOm4sdHJhY2VfaWQ6ZX19ZnVuY3Rpb24gd3QodCl7cmV0dXJuIHQmJnQubGVuZ3RoPjA/dC5tYXAoKHtjb250ZXh0OntzcGFuSWQ6dCx0cmFjZUlkOm4sdHJhY2VGbGFnczplLC4uLnJ9LGF0dHJpYnV0ZXM6b30pPT4oe3NwYW5faWQ6dCx0cmFjZV9pZDpuLHNhbXBsZWQ6MT09PWUsYXR0cmlidXRlczpvLC4uLnJ9KSk6dm9pZCAwfWZ1bmN0aW9uIFN0KHQpe3JldHVybiJudW1iZXIiPT10eXBlb2YgdD8kdCh0KTpBcnJheS5pc0FycmF5KHQpP3RbMF0rdFsxXS8xZTk6dCBpbnN0YW5jZW9mIERhdGU/JHQodC5nZXRUaW1lKCkpOkooKX1mdW5jdGlvbiAkdCh0KXtyZXR1cm4gdD45OTk5OTk5OTk5P3QvMWUzOnR9ZnVuY3Rpb24gRXQodCl7aWYoZnVuY3Rpb24odCl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIHQuZ2V0U3BhbkpTT059KHQpKXJldHVybiB0LmdldFNwYW5KU09OKCk7Y29uc3R7c3BhbklkOm4sdHJhY2VJZDplfT10LnNwYW5Db250ZXh0KCk7aWYoZnVuY3Rpb24odCl7Y29uc3Qgbj10O3JldHVybiEhKG4uYXR0cmlidXRlcyYmbi5zdGFydFRpbWUmJm4ubmFtZSYmbi5lbmRUaW1lJiZuLnN0YXR1cyl9KHQpKXtjb25zdHthdHRyaWJ1dGVzOnIsc3RhcnRUaW1lOm8sbmFtZTppLGVuZFRpbWU6cyxzdGF0dXM6YyxsaW5rczp1fT10O3JldHVybntzcGFuX2lkOm4sdHJhY2VfaWQ6ZSxkYXRhOnIsZGVzY3JpcHRpb246aSxwYXJlbnRfc3Bhbl9pZDoicGFyZW50U3BhbklkImluIHQ/dC5wYXJlbnRTcGFuSWQ6InBhcmVudFNwYW5Db250ZXh0ImluIHQ/dC5wYXJlbnRTcGFuQ29udGV4dD8uc3BhbklkOnZvaWQgMCxzdGFydF90aW1lc3RhbXA6U3QobyksdGltZXN0YW1wOlN0KHMpfHx2b2lkIDAsc3RhdHVzOnh0KGMpLG9wOnJbInNlbnRyeS5vcCJdLG9yaWdpbjpyWyJzZW50cnkub3JpZ2luIl0sbGlua3M6d3QodSl9fXJldHVybntzcGFuX2lkOm4sdHJhY2VfaWQ6ZSxzdGFydF90aW1lc3RhbXA6MCxkYXRhOnt9fX1mdW5jdGlvbiB4dCh0KXtpZih0JiYwIT09dC5jb2RlKXJldHVybiAxPT09dC5jb2RlPyJvayI6dC5tZXNzYWdlfHwiaW50ZXJuYWxfZXJyb3IifWZ1bmN0aW9uIE50KHQpe3JldHVybiB0Ll9zZW50cnlSb290U3Bhbnx8dH1mdW5jdGlvbiBqdCh0KXtjb25zdCBuPWh0KCk7aWYoIW4pcmV0dXJue307Y29uc3QgZT1OdCh0KSxyPUV0KGUpLG89ci5kYXRhLGk9ZS5zcGFuQ29udGV4dCgpLnRyYWNlU3RhdGUscz1pPy5nZXQoInNlbnRyeS5zYW1wbGVfcmF0ZSIpPz9vWyJzZW50cnkuc2FtcGxlX3JhdGUiXT8/b1sic2VudHJ5LnByZXZpb3VzX3RyYWNlX3NhbXBsZV9yYXRlIl07ZnVuY3Rpb24gYyh0KXtyZXR1cm4ibnVtYmVyIiE9dHlwZW9mIHMmJiJzdHJpbmciIT10eXBlb2Ygc3x8KHQuc2FtcGxlX3JhdGU9YCR7c31gKSx0fWNvbnN0IHU9ZS5fZnJvemVuRHNjO2lmKHUpcmV0dXJuIGModSk7Y29uc3QgYT1pPy5nZXQoInNlbnRyeS5kc2MiKSxmPWEmJm10KGEpO2lmKGYpcmV0dXJuIGMoZik7Y29uc3QgaD1mdW5jdGlvbih0LG4pe2NvbnN0IGU9bi5nZXRPcHRpb25zKCkse3B1YmxpY0tleTpyfT1uLmdldERzbigpfHx7fSxvPXtlbnZpcm9ubWVudDplLmVudmlyb25tZW50fHwicHJvZHVjdGlvbiIscmVsZWFzZTplLnJlbGVhc2UscHVibGljX2tleTpyLHRyYWNlX2lkOnQsb3JnX2lkOnZ0KG4pfTtyZXR1cm4gbi5lbWl0KCJjcmVhdGVEc2MiLG8pLG99KHQuc3BhbkNvbnRleHQoKS50cmFjZUlkLG4pLHA9b1sic2VudHJ5LnNvdXJjZSJdLGQ9ci5kZXNjcmlwdGlvbjtyZXR1cm4idXJsIiE9PXAmJmQmJihoLnRyYW5zYWN0aW9uPWQpLGZ1bmN0aW9uKCl7aWYoImJvb2xlYW4iPT10eXBlb2YgX19TRU5UUllfVFJBQ0lOR19fJiYhX19TRU5UUllfVFJBQ0lOR19fKXJldHVybiExO2NvbnN0IHQ9aHQoKT8uZ2V0T3B0aW9ucygpO3JldHVybiEoIXR8fG51bGw9PXQudHJhY2VzU2FtcGxlUmF0ZSYmIXQudHJhY2VzU2FtcGxlcil9KCkmJihoLnNhbXBsZWQ9U3RyaW5nKGZ1bmN0aW9uKHQpe2NvbnN0e3RyYWNlRmxhZ3M6bn09dC5zcGFuQ29udGV4dCgpO3JldHVybiAxPT09bn0oZSkpLGguc2FtcGxlX3JhbmQ9aT8uZ2V0KCJzZW50cnkuc2FtcGxlX3JhbmQiKT8/ZHQoZSkuc2NvcGU/LmdldFByb3BhZ2F0aW9uQ29udGV4dCgpLnNhbXBsZVJhbmQudG9TdHJpbmcoKSksYyhoKSxuLmVtaXQoImNyZWF0ZURzYyIsaCxlKSxofWZ1bmN0aW9uIEN0KHQsbj0xMDAsZT0xLzApe3RyeXtyZXR1cm4gQXQoIiIsdCxuLGUpfWNhdGNoKHQpe3JldHVybntFUlJPUjpgKipub24tc2VyaWFsaXphYmxlKiogKCR7dH0pYH19fWZ1bmN0aW9uIEF0KHQsbixlPTEvMCxyPTEvMCxvPWZ1bmN0aW9uKCl7Y29uc3QgdD1uZXcgV2Vha1NldDtmdW5jdGlvbiBuKG4pe3JldHVybiEhdC5oYXMobil8fCh0LmFkZChuKSwhMSl9ZnVuY3Rpb24gZShuKXt0LmRlbGV0ZShuKX1yZXR1cm5bbixlXX0oKSl7Y29uc3RbaSxzXT1vO2lmKG51bGw9PW58fFsiYm9vbGVhbiIsInN0cmluZyJdLmluY2x1ZGVzKHR5cGVvZiBuKXx8Im51bWJlciI9PXR5cGVvZiBuJiZOdW1iZXIuaXNGaW5pdGUobikpcmV0dXJuIG47Y29uc3QgYz1mdW5jdGlvbih0LG4pe3RyeXtpZigiZG9tYWluIj09PXQmJm4mJiJvYmplY3QiPT10eXBlb2YgbiYmbi5NKXJldHVybiJbRG9tYWluXSI7aWYoImRvbWFpbkVtaXR0ZXIiPT09dClyZXR1cm4iW0RvbWFpbkVtaXR0ZXJdIjtpZigidW5kZWZpbmVkIiE9dHlwZW9mIGdsb2JhbCYmbj09PWdsb2JhbClyZXR1cm4iW0dsb2JhbF0iO2lmKCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZuPT09d2luZG93KXJldHVybiJbV2luZG93XSI7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBkb2N1bWVudCYmbj09PWRvY3VtZW50KXJldHVybiJbRG9jdW1lbnRdIjtpZigib2JqZWN0Ij09dHlwZW9mKGU9bikmJm51bGwhPT1lJiYoZS5fX2lzVnVlfHxlLkJ8fGUuX192X2lzVk5vZGUpKXJldHVybiBmdW5jdGlvbih0KXtyZXR1cm4iX192X2lzVk5vZGUiaW4gdCYmdC5fX3ZfaXNWTm9kZT8iW1Z1ZVZOb2RlXSI6IltWdWVWaWV3TW9kZWxdIn0obik7aWYoZnVuY3Rpb24odCl7cmV0dXJuIEEodCkmJiJuYXRpdmVFdmVudCJpbiB0JiYicHJldmVudERlZmF1bHQiaW4gdCYmInN0b3BQcm9wYWdhdGlvbiJpbiB0fShuKSlyZXR1cm4iW1N5bnRoZXRpY0V2ZW50XSI7aWYoIm51bWJlciI9PXR5cGVvZiBuJiYhTnVtYmVyLmlzRmluaXRlKG4pKXJldHVybmBbJHtufV1gO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBuKXJldHVybmBbRnVuY3Rpb246ICR7ZnVuY3Rpb24odCl7dHJ5e3JldHVybiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgdCYmdC5uYW1lfHx4fWNhdGNoe3JldHVybiB4fX0obil9XWA7aWYoInN5bWJvbCI9PXR5cGVvZiBuKXJldHVybmBbJHtTdHJpbmcobil9XWA7aWYoImJpZ2ludCI9PXR5cGVvZiBuKXJldHVybmBbQmlnSW50OiAke1N0cmluZyhuKX1dYDtjb25zdCByPWZ1bmN0aW9uKHQpe2NvbnN0IG49T2JqZWN0LmdldFByb3RvdHlwZU9mKHQpO3JldHVybiBuPy5jb25zdHJ1Y3Rvcj9uLmNvbnN0cnVjdG9yLm5hbWU6Im51bGwgcHJvdG90eXBlIn0obik7cmV0dXJuL15IVE1MKFx3KilFbGVtZW50JC8udGVzdChyKT9gW0hUTUxFbGVtZW50OiAke3J9XWA6YFtvYmplY3QgJHtyfV1gfWNhdGNoKHQpe3JldHVybmAqKm5vbi1zZXJpYWxpemFibGUqKiAoJHt0fSlgfXZhciBlfSh0LG4pO2lmKCFjLnN0YXJ0c1dpdGgoIltvYmplY3QgIikpcmV0dXJuIGM7aWYobi5fX3NlbnRyeV9za2lwX25vcm1hbGl6YXRpb25fXylyZXR1cm4gbjtjb25zdCB1PSJudW1iZXIiPT10eXBlb2Ygbi5fX3NlbnRyeV9vdmVycmlkZV9ub3JtYWxpemF0aW9uX2RlcHRoX18/bi5fX3NlbnRyeV9vdmVycmlkZV9ub3JtYWxpemF0aW9uX2RlcHRoX186ZTtpZigwPT09dSlyZXR1cm4gYy5yZXBsYWNlKCJvYmplY3QgIiwiIik7aWYoaShuKSlyZXR1cm4iW0NpcmN1bGFyIH5dIjtjb25zdCBhPW47aWYoYSYmImZ1bmN0aW9uIj09dHlwZW9mIGEudG9KU09OKXRyeXtyZXR1cm4gQXQoIiIsYS50b0pTT04oKSx1LTEscixvKX1jYXRjaHt9Y29uc3QgZj1BcnJheS5pc0FycmF5KG4pP1tdOnt9O2xldCBoPTA7Y29uc3QgcD1SKG4pO2Zvcihjb25zdCB0IGluIHApe2lmKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocCx0KSljb250aW51ZTtpZihoPj1yKXtmW3RdPSJbTWF4UHJvcGVydGllcyB+XSI7YnJlYWt9Y29uc3Qgbj1wW3RdO2ZbdF09QXQodCxuLHUtMSxyLG8pLGgrK31yZXR1cm4gcyhuKSxmfWZ1bmN0aW9uIFR0KHQsbil7Y29uc3QgZT1uLnJlcGxhY2UoL1xcL2csIi8iKS5yZXBsYWNlKC9bfFxce30oKVtcXV4kKyo/Ll0vZywiXFwkJiIpO2xldCByPXQ7dHJ5e3I9ZGVjb2RlVVJJKHQpfWNhdGNoe31yZXR1cm4gci5yZXBsYWNlKC9cXC9nLCIvIikucmVwbGFjZSgvd2VicGFjazpcLz8vZywiIikucmVwbGFjZShuZXcgUmVnRXhwKGAoZmlsZTovLyk/Lyoke2V9LypgLCJpZyIpLCJhcHA6Ly8vIil9ZnVuY3Rpb24ga3QodCxuPVtdKXtyZXR1cm5bdCxuXX1mdW5jdGlvbiBJdCh0LG4pe2NvbnN0IGU9dFsxXTtmb3IoY29uc3QgdCBvZiBlKXtpZihuKHQsdFswXS50eXBlKSlyZXR1cm4hMH1yZXR1cm4hMX1mdW5jdGlvbiBPdCh0KXtjb25zdCBuPW0ocCk7cmV0dXJuIG4uZW5jb2RlUG9seWZpbGw/bi5lbmNvZGVQb2x5ZmlsbCh0KToobmV3IFRleHRFbmNvZGVyKS5lbmNvZGUodCl9ZnVuY3Rpb24gUnQodCl7Y29uc3RbbixlXT10O2xldCByPUpTT04uc3RyaW5naWZ5KG4pO2Z1bmN0aW9uIG8odCl7InN0cmluZyI9PXR5cGVvZiByP3I9InN0cmluZyI9PXR5cGVvZiB0P3IrdDpbT3QociksdF06ci5wdXNoKCJzdHJpbmciPT10eXBlb2YgdD9PdCh0KTp0KX1mb3IoY29uc3QgdCBvZiBlKXtjb25zdFtuLGVdPXQ7aWYobyhgXG4ke0pTT04uc3RyaW5naWZ5KG4pfVxuYCksInN0cmluZyI9PXR5cGVvZiBlfHxlIGluc3RhbmNlb2YgVWludDhBcnJheSlvKGUpO2Vsc2V7bGV0IHQ7dHJ5e3Q9SlNPTi5zdHJpbmdpZnkoZSl9Y2F0Y2h7dD1KU09OLnN0cmluZ2lmeShDdChlKSl9byh0KX19cmV0dXJuInN0cmluZyI9PXR5cGVvZiByP3I6ZnVuY3Rpb24odCl7Y29uc3Qgbj10LnJlZHVjZSgodCxuKT0+dCtuLmxlbmd0aCwwKSxlPW5ldyBVaW50OEFycmF5KG4pO2xldCByPTA7Zm9yKGNvbnN0IG4gb2YgdCllLnNldChuLHIpLHIrPW4ubGVuZ3RoO3JldHVybiBlfShyKX1jb25zdCBQdD17c2Vzc2lvbnM6InNlc3Npb24iLGV2ZW50OiJlcnJvciIsY2xpZW50X3JlcG9ydDoiaW50ZXJuYWwiLHVzZXJfcmVwb3J0OiJkZWZhdWx0Iixwcm9maWxlX2NodW5rOiJwcm9maWxlIixyZXBsYXlfZXZlbnQ6InJlcGxheSIscmVwbGF5X3JlY29yZGluZzoicmVwbGF5IixjaGVja19pbjoibW9uaXRvciIscmF3X3NlY3VyaXR5OiJzZWN1cml0eSIsbG9nOiJsb2dfaXRlbSIsdHJhY2VfbWV0cmljOiJtZXRyaWMifTtmdW5jdGlvbiBEdCh0KXtyZXR1cm4gZnVuY3Rpb24odCl7cmV0dXJuIHQgaW4gUHR9KHQpP1B0W3RdOnR9ZnVuY3Rpb24gVXQodCl7aWYoIXQ/LnNkaylyZXR1cm47Y29uc3R7bmFtZTpuLHZlcnNpb246ZX09dC5zZGs7cmV0dXJue25hbWU6bix2ZXJzaW9uOmV9fWZ1bmN0aW9uIEx0KHQsbixlLHIpe2NvbnN0IG89VXQoZSksaT10LnR5cGUmJiJyZXBsYXlfZXZlbnQiIT09dC50eXBlP3QudHlwZToiZXZlbnQiOyFmdW5jdGlvbih0LG4pe2lmKCFuKXJldHVybiB0O2NvbnN0IGU9dC5zZGt8fHt9O3Quc2RrPXsuLi5lLG5hbWU6ZS5uYW1lfHxuLm5hbWUsdmVyc2lvbjplLnZlcnNpb258fG4udmVyc2lvbixpbnRlZ3JhdGlvbnM6Wy4uLnQuc2RrPy5pbnRlZ3JhdGlvbnN8fFtdLC4uLm4uaW50ZWdyYXRpb25zfHxbXV0scGFja2FnZXM6Wy4uLnQuc2RrPy5wYWNrYWdlc3x8W10sLi4ubi5wYWNrYWdlc3x8W11dLHNldHRpbmdzOnQuc2RrPy5zZXR0aW5nc3x8bi5zZXR0aW5ncz97Li4udC5zZGs/LnNldHRpbmdzLC4uLm4uc2V0dGluZ3N9OnZvaWQgMH19KHQsZT8uc2RrKTtjb25zdCBzPWZ1bmN0aW9uKHQsbixlLHIpe2NvbnN0IG89dC5zZGtQcm9jZXNzaW5nTWV0YWRhdGE/LmR5bmFtaWNTYW1wbGluZ0NvbnRleHQ7cmV0dXJue2V2ZW50X2lkOnQuZXZlbnRfaWQsc2VudF9hdDoobmV3IERhdGUpLnRvSVNPU3RyaW5nKCksLi4ubiYme3NkazpufSwuLi4hIWUmJnImJntkc246YnQocil9LC4uLm8mJnt0cmFjZTpvfX19KHQsbyxyLG4pO2RlbGV0ZSB0LnNka1Byb2Nlc3NpbmdNZXRhZGF0YTtyZXR1cm4ga3QocyxbW3t0eXBlOml9LHRdXSl9Y29uc3QgTXQ9Il9fU0VOVFJZX1NVUFBSRVNTX1RSQUNJTkdfXyI7ZnVuY3Rpb24gQnQodCl7Y29uc3Qgbj1mdChsKCkpO3JldHVybiBuLnN1cHByZXNzVHJhY2luZz9uLnN1cHByZXNzVHJhY2luZyh0KTpmdW5jdGlvbiguLi50KXtjb25zdCBuPWZ0KGwoKSk7aWYoMj09PXQubGVuZ3RoKXtjb25zdFtlLHJdPXQ7cmV0dXJuIGU/bi53aXRoU2V0U2NvcGUoZSxyKTpuLndpdGhTY29wZShyKX1yZXR1cm4gbi53aXRoU2NvcGUodFswXSl9KG49PntuLnNldFNES1Byb2Nlc3NpbmdNZXRhZGF0YSh7W010XTohMH0pO2NvbnN0IGU9dCgpO3JldHVybiBuLnNldFNES1Byb2Nlc3NpbmdNZXRhZGF0YSh7W010XTp2b2lkIDB9KSxlfSl9Y2xhc3MgV3R7Y29uc3RydWN0b3IodCl7dGhpcy5XPTAsdGhpcy5GPVtdLHRoaXMuRyh0KX10aGVuKHQsbil7cmV0dXJuIG5ldyBXdCgoZSxyKT0+e3RoaXMuRi5wdXNoKFshMSxuPT57aWYodCl0cnl7ZSh0KG4pKX1jYXRjaCh0KXtyKHQpfWVsc2UgZShuKX0sdD0+e2lmKG4pdHJ5e2Uobih0KSl9Y2F0Y2godCl7cih0KX1lbHNlIHIodCl9XSksdGhpcy5IKCl9KX1jYXRjaCh0KXtyZXR1cm4gdGhpcy50aGVuKHQ9PnQsdCl9ZmluYWxseSh0KXtyZXR1cm4gbmV3IFd0KChuLGUpPT57bGV0IHIsbztyZXR1cm4gdGhpcy50aGVuKG49PntvPSExLHI9bix0JiZ0KCl9LG49PntvPSEwLHI9bix0JiZ0KCl9KS50aGVuKCgpPT57bz9lKHIpOm4ocil9KX0pfUgoKXtpZigwPT09dGhpcy5XKXJldHVybjtjb25zdCB0PXRoaXMuRi5zbGljZSgpO3RoaXMuRj1bXSx0LmZvckVhY2godD0+e3RbMF18fCgxPT09dGhpcy5XJiZ0WzFdKHRoaXMuSiksMj09PXRoaXMuVyYmdFsyXSh0aGlzLkopLHRbMF09ITApfSl9Ryh0KXtjb25zdCBuPSh0LG4pPT57MD09PXRoaXMuVyYmKFQobik/bi50aGVuKGUscik6KHRoaXMuVz10LHRoaXMuSj1uLHRoaXMuSCgpKSl9LGU9dD0+e24oMSx0KX0scj10PT57bigyLHQpfTt0cnl7dChlLHIpfWNhdGNoKHQpe3IodCl9fX1mdW5jdGlvbiB6dCh0LG4pe2NvbnN0e2ZpbmdlcnByaW50OmUsc3BhbjpyLGJyZWFkY3J1bWJzOm8sc2RrUHJvY2Vzc2luZ01ldGFkYXRhOml9PW47IWZ1bmN0aW9uKHQsbil7Y29uc3R7ZXh0cmE6ZSx0YWdzOnIsdXNlcjpvLGNvbnRleHRzOmksbGV2ZWw6cyx0cmFuc2FjdGlvbk5hbWU6Y309bjtPYmplY3Qua2V5cyhlKS5sZW5ndGgmJih0LmV4dHJhPXsuLi5lLC4uLnQuZXh0cmF9KTtPYmplY3Qua2V5cyhyKS5sZW5ndGgmJih0LnRhZ3M9ey4uLnIsLi4udC50YWdzfSk7T2JqZWN0LmtleXMobykubGVuZ3RoJiYodC51c2VyPXsuLi5vLC4uLnQudXNlcn0pO09iamVjdC5rZXlzKGkpLmxlbmd0aCYmKHQuY29udGV4dHM9ey4uLmksLi4udC5jb250ZXh0c30pO3MmJih0LmxldmVsPXMpO2MmJiJ0cmFuc2FjdGlvbiIhPT10LnR5cGUmJih0LnRyYW5zYWN0aW9uPWMpfSh0LG4pLHImJmZ1bmN0aW9uKHQsbil7dC5jb250ZXh0cz17dHJhY2U6X3QobiksLi4udC5jb250ZXh0c30sdC5zZGtQcm9jZXNzaW5nTWV0YWRhdGE9e2R5bmFtaWNTYW1wbGluZ0NvbnRleHQ6anQobiksLi4udC5zZGtQcm9jZXNzaW5nTWV0YWRhdGF9O2NvbnN0IGU9TnQobikscj1FdChlKS5kZXNjcmlwdGlvbjtyJiYhdC50cmFuc2FjdGlvbiYmInRyYW5zYWN0aW9uIj09PXQudHlwZSYmKHQudHJhbnNhY3Rpb249cil9KHQsciksZnVuY3Rpb24odCxuKXt0LmZpbmdlcnByaW50PXQuZmluZ2VycHJpbnQ/QXJyYXkuaXNBcnJheSh0LmZpbmdlcnByaW50KT90LmZpbmdlcnByaW50Olt0LmZpbmdlcnByaW50XTpbXSxuJiYodC5maW5nZXJwcmludD10LmZpbmdlcnByaW50LmNvbmNhdChuKSk7dC5maW5nZXJwcmludC5sZW5ndGh8fGRlbGV0ZSB0LmZpbmdlcnByaW50fSh0LGUpLGZ1bmN0aW9uKHQsbil7Y29uc3QgZT1bLi4udC5icmVhZGNydW1ic3x8W10sLi4ubl07dC5icmVhZGNydW1icz1lLmxlbmd0aD9lOnZvaWQgMH0odCxvKSxmdW5jdGlvbih0LG4pe3Quc2RrUHJvY2Vzc2luZ01ldGFkYXRhPXsuLi50LnNka1Byb2Nlc3NpbmdNZXRhZGF0YSwuLi5ufX0odCxpKX1jb25zdCBGdD1TeW1ib2wuZm9yKCJTZW50cnlCdWZmZXJGdWxsRXJyb3IiKTtmdW5jdGlvbiBHdCh0PTEwMCl7Y29uc3Qgbj1uZXcgU2V0O2Z1bmN0aW9uIGUodCl7bi5kZWxldGUodCl9cmV0dXJue2dldCAkKCl7cmV0dXJuIEFycmF5LmZyb20obil9LGFkZDpmdW5jdGlvbihyKXtpZighKG4uc2l6ZTx0KSlyZXR1cm4gbz1GdCxuZXcgV3QoKHQsbik9PntuKG8pfSk7dmFyIG87Y29uc3QgaT1yKCk7cmV0dXJuIG4uYWRkKGkpLGkudGhlbigoKT0+ZShpKSwoKT0+ZShpKSksaX0sZHJhaW46ZnVuY3Rpb24odCl7aWYoIW4uc2l6ZSlyZXR1cm4gZT0hMCxuZXcgV3QodD0+e3QoZSl9KTt2YXIgZTtjb25zdCByPVByb21pc2UuYWxsU2V0dGxlZChBcnJheS5mcm9tKG4pKS50aGVuKCgpPT4hMCk7aWYoIXQpcmV0dXJuIHI7Y29uc3Qgbz1bcixuZXcgUHJvbWlzZShuPT57cmV0dXJuIm9iamVjdCI9PXR5cGVvZihlPXNldFRpbWVvdXQoKCk9Pm4oITEpLHQpKSYmImZ1bmN0aW9uIj09dHlwZW9mIGUudW5yZWYmJmUudW5yZWYoKSxlO3ZhciBlfSldO3JldHVybiBQcm9taXNlLnJhY2Uobyl9fX1mdW5jdGlvbiBIdCh0LHtzdGF0dXNDb2RlOm4saGVhZGVyczplfSxyPVcoKSl7Y29uc3Qgbz17Li4udH0saT1lPy5bIngtc2VudHJ5LXJhdGUtbGltaXRzIl0scz1lPy5bInJldHJ5LWFmdGVyIl07aWYoaSlmb3IoY29uc3QgdCBvZiBpLnRyaW0oKS5zcGxpdCgiLCIpKXtjb25zdFtuLGUsLCxpXT10LnNwbGl0KCI6Iiw1KSxzPXBhcnNlSW50KG4sMTApLGM9MWUzKihpc05hTihzKT82MDpzKTtpZihlKWZvcihjb25zdCB0IG9mIGUuc3BsaXQoIjsiKSkibWV0cmljX2J1Y2tldCI9PT10JiZpJiYhaS5zcGxpdCgiOyIpLmluY2x1ZGVzKCJjdXN0b20iKXx8KG9bdF09citjKTtlbHNlIG8uYWxsPXIrY31lbHNlIHM/by5hbGw9citmdW5jdGlvbih0LG49VygpKXtjb25zdCBlPXBhcnNlSW50KGAke3R9YCwxMCk7aWYoIWlzTmFOKGUpKXJldHVybiAxZTMqZTtjb25zdCByPURhdGUucGFyc2UoYCR7dH1gKTtyZXR1cm4gaXNOYU4ocik/NmU0OnItbn0ocyxyKTo0Mjk9PT1uJiYoby5hbGw9cis2ZTQpO3JldHVybiBvfWZ1bmN0aW9uIEp0KHQsbixlPUd0KHQuYnVmZmVyU2l6ZXx8NjQpKXtsZXQgcj17fTtyZXR1cm57c2VuZDpmdW5jdGlvbih0KXtjb25zdCBvPVtdO2lmKEl0KHQsKHQsbik9Pntjb25zdCBlPUR0KG4pOyhmdW5jdGlvbih0LG4sZT1XKCkpe3JldHVybiBmdW5jdGlvbih0LG4pe3JldHVybiB0W25dfHx0LmFsbHx8MH0odCxuKT5lfSkocixlKXx8by5wdXNoKHQpfSksMD09PW8ubGVuZ3RoKXJldHVybiBQcm9taXNlLnJlc29sdmUoe30pO2NvbnN0IGk9a3QodFswXSxvKSxzPXQ9PnshZnVuY3Rpb24odCxuKXtyZXR1cm4gSXQodCwodCxlKT0+bi5pbmNsdWRlcyhlKSl9KGksWyJjbGllbnRfcmVwb3J0Il0pP0l0KGksKHQsbik9Pnt9KTpoJiZTLndhcm4oYERyb3BwaW5nIGNsaWVudCByZXBvcnQuIFdpbGwgbm90IHNlbmQgb3V0Y29tZXMgKHJlYXNvbjogJHt0fSkuYCl9O3JldHVybiBlLmFkZCgoKT0+bih7Ym9keTpSdChpKX0pLnRoZW4odD0+NDEzPT09dC5zdGF0dXNDb2RlPyhoJiZTLmVycm9yKCJTZW50cnkgcmVzcG9uZGVkIHdpdGggc3RhdHVzIGNvZGUgNDEzLiBFbnZlbG9wZSB3YXMgZGlzY2FyZGVkIGR1ZSB0byBleGNlZWRpbmcgc2l6ZSBsaW1pdHMuIikscygic2VuZF9lcnJvciIpLHQpOihoJiZ2b2lkIDAhPT10LnN0YXR1c0NvZGUmJih0LnN0YXR1c0NvZGU8MjAwfHx0LnN0YXR1c0NvZGU+PTMwMCkmJlMud2FybihgU2VudHJ5IHJlc3BvbmRlZCB3aXRoIHN0YXR1cyBjb2RlICR7dC5zdGF0dXNDb2RlfSB0byBzZW50IGV2ZW50LmApLHI9SHQocix0KSx0KSx0PT57dGhyb3cgcygibmV0d29ya19lcnJvciIpLGgmJlMuZXJyb3IoIkVuY291bnRlcmVkIGVycm9yIHJ1bm5pbmcgdHJhbnNwb3J0IHJlcXVlc3Q6Iix0KSx0fSkpLnRoZW4odD0+dCx0PT57aWYodD09PUZ0KXJldHVybiBoJiZTLmVycm9yKCJTa2lwcGVkIHNlbmRpbmcgZXZlbnQgYmVjYXVzZSBidWZmZXIgaXMgZnVsbC4iKSxzKCJxdWV1ZV9vdmVyZmxvdyIpLFByb21pc2UucmVzb2x2ZSh7fSk7dGhyb3cgdH0pfSxmbHVzaDp0PT5lLmRyYWluKHQpfX1jb25zdCBZdD0vXihcUys6XFx8XC8/KShbXHNcU10qPykoKD86XC57MSwyfXxbXi9cXF0rP3wpKFwuW14uL1xcXSp8KSkoPzpbL1xcXSopJC87ZnVuY3Rpb24gVnQodCl7Y29uc3Qgbj1mdW5jdGlvbih0KXtjb25zdCBuPXQubGVuZ3RoPjEwMjQ/YDx0cnVuY2F0ZWQ+JHt0LnNsaWNlKC0xMDI0KX1gOnQsZT1ZdC5leGVjKG4pO3JldHVybiBlP2Uuc2xpY2UoMSk6W119KHQpLGU9blswXXx8IiI7bGV0IHI9blsxXTtyZXR1cm4gZXx8cj8ociYmKHI9ci5zbGljZSgwLHIubGVuZ3RoLTEpKSxlK3IpOiIuIn1mdW5jdGlvbiBLdCh0LG49ITEpe3JldHVybiEobnx8dCYmIXQuc3RhcnRzV2l0aCgiLyIpJiYhdC5tYXRjaCgvXltBLVpdOi8pJiYhdC5zdGFydHNXaXRoKCIuIikmJiF0Lm1hdGNoKC9eW2EtekEtWl0oW2EtekEtWjAtOS5cLStdKSo6XC9cLy8pKSYmdm9pZCAwIT09dCYmIXQuaW5jbHVkZXMoIm5vZGVfbW9kdWxlcy8iKX1jb25zdCBadD1TeW1ib2woIkFnZW50QmFzZUludGVybmFsU3RhdGUiKTtjbGFzcyBxdCBleHRlbmRzIGkuQWdlbnR7Y29uc3RydWN0b3IodCl7c3VwZXIodCksdGhpc1tadF09e319aXNTZWN1cmVFbmRwb2ludCh0KXtpZih0KXtpZigiYm9vbGVhbiI9PXR5cGVvZiB0LnNlY3VyZUVuZHBvaW50KXJldHVybiB0LnNlY3VyZUVuZHBvaW50O2lmKCJzdHJpbmciPT10eXBlb2YgdC5wcm90b2NvbClyZXR1cm4iaHR0cHM6Ij09PXQucHJvdG9jb2x9Y29uc3R7c3RhY2s6bn09bmV3IEVycm9yO3JldHVybiJzdHJpbmciPT10eXBlb2YgbiYmbi5zcGxpdCgiXG4iKS5zb21lKHQ9Pi0xIT09dC5pbmRleE9mKCIoaHR0cHMuanM6Iil8fC0xIT09dC5pbmRleE9mKCJub2RlOmh0dHBzOiIpKX1jcmVhdGVTb2NrZXQodCxuLGUpe2NvbnN0IHI9ey4uLm4sc2VjdXJlRW5kcG9pbnQ6dGhpcy5pc1NlY3VyZUVuZHBvaW50KG4pfTtQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT50aGlzLmNvbm5lY3QodCxyKSkudGhlbihvPT57aWYobyBpbnN0YW5jZW9mIGkuQWdlbnQpcmV0dXJuIG8uYWRkUmVxdWVzdCh0LHIpO3RoaXNbWnRdLmN1cnJlbnRTb2NrZXQ9byxzdXBlci5jcmVhdGVTb2NrZXQodCxuLGUpfSxlKX1jcmVhdGVDb25uZWN0aW9uKCl7Y29uc3QgdD10aGlzW1p0XS5jdXJyZW50U29ja2V0O2lmKHRoaXNbWnRdLmN1cnJlbnRTb2NrZXQ9dm9pZCAwLCF0KXRocm93IG5ldyBFcnJvcigiTm8gc29ja2V0IHdhcyByZXR1cm5lZCBpbiB0aGUgYGNvbm5lY3QoKWAgZnVuY3Rpb24iKTtyZXR1cm4gdH1nZXQgZGVmYXVsdFBvcnQoKXtyZXR1cm4gdGhpc1tadF0uZGVmYXVsdFBvcnQ/PygiaHR0cHM6Ij09PXRoaXMucHJvdG9jb2w/NDQzOjgwKX1zZXQgZGVmYXVsdFBvcnQodCl7dGhpc1tadF0mJih0aGlzW1p0XS5kZWZhdWx0UG9ydD10KX1nZXQgcHJvdG9jb2woKXtyZXR1cm4gdGhpc1tadF0ucHJvdG9jb2w/Pyh0aGlzLmlzU2VjdXJlRW5kcG9pbnQoKT8iaHR0cHM6IjoiaHR0cDoiKX1zZXQgcHJvdG9jb2wodCl7dGhpc1tadF0mJih0aGlzW1p0XS5wcm90b2NvbD10KX19ZnVuY3Rpb24gUXQoLi4udCl7Uy5sb2coIltodHRwcy1wcm94eS1hZ2VudDpwYXJzZS1wcm94eS1yZXNwb25zZV0iLC4uLnQpfWZ1bmN0aW9uIFh0KHQpe3JldHVybiBuZXcgUHJvbWlzZSgobixlKT0+e2xldCByPTA7Y29uc3Qgbz1bXTtmdW5jdGlvbiBpKCl7Y29uc3QgYz10LnJlYWQoKTtjP2Z1bmN0aW9uKGMpe28ucHVzaChjKSxyKz1jLmxlbmd0aDtjb25zdCB1PUJ1ZmZlci5jb25jYXQobyxyKSxhPXUuaW5kZXhPZigiXHJcblxyXG4iKTtpZigtMT09PWEpcmV0dXJuIFF0KCJoYXZlIG5vdCByZWNlaXZlZCBlbmQgb2YgSFRUUCBoZWFkZXJzIHlldC4uLiIpLHZvaWQgaSgpO2NvbnN0IGY9dS5zdWJhcnJheSgwLGEpLnRvU3RyaW5nKCJhc2NpaSIpLnNwbGl0KCJcclxuIiksaD1mLnNoaWZ0KCk7aWYoIWgpcmV0dXJuIHQuZGVzdHJveSgpLGUobmV3IEVycm9yKCJObyBoZWFkZXIgcmVjZWl2ZWQgZnJvbSBwcm94eSBDT05ORUNUIHJlc3BvbnNlIikpO2NvbnN0IHA9aC5zcGxpdCgiICIpLGQ9KyhwWzFdfHwwKSxsPXAuc2xpY2UoMikuam9pbigiICIpLG09e307Zm9yKGNvbnN0IG4gb2YgZil7aWYoIW4pY29udGludWU7Y29uc3Qgcj1uLmluZGV4T2YoIjoiKTtpZigtMT09PXIpcmV0dXJuIHQuZGVzdHJveSgpLGUobmV3IEVycm9yKGBJbnZhbGlkIGhlYWRlciBmcm9tIHByb3h5IENPTk5FQ1QgcmVzcG9uc2U6ICIke259ImApKTtjb25zdCBvPW4uc2xpY2UoMCxyKS50b0xvd2VyQ2FzZSgpLGk9bi5zbGljZShyKzEpLnRyaW1TdGFydCgpLHM9bVtvXTsic3RyaW5nIj09dHlwZW9mIHM/bVtvXT1bcyxpXTpBcnJheS5pc0FycmF5KHMpP3MucHVzaChpKTptW29dPWl9UXQoImdvdCBwcm94eSBzZXJ2ZXIgcmVzcG9uc2U6ICVvICVvIixoLG0pLHMoKSxuKHtjb25uZWN0OntzdGF0dXNDb2RlOmQsc3RhdHVzVGV4dDpsLGhlYWRlcnM6bX0sYnVmZmVyZWQ6dX0pfShjKTp0Lm9uY2UoInJlYWRhYmxlIixpKX1mdW5jdGlvbiBzKCl7dC5yZW1vdmVMaXN0ZW5lcigiZW5kIixjKSx0LnJlbW92ZUxpc3RlbmVyKCJlcnJvciIsdSksdC5yZW1vdmVMaXN0ZW5lcigicmVhZGFibGUiLGkpfWZ1bmN0aW9uIGMoKXtzKCksUXQoIm9uZW5kIiksZShuZXcgRXJyb3IoIlByb3h5IGNvbm5lY3Rpb24gZW5kZWQgYmVmb3JlIHJlY2VpdmluZyBDT05ORUNUIHJlc3BvbnNlIikpfWZ1bmN0aW9uIHUodCl7cygpLFF0KCJvbmVycm9yICVvIix0KSxlKHQpfXQub24oImVycm9yIix1KSx0Lm9uKCJlbmQiLGMpLGkoKX0pfWZ1bmN0aW9uIHRuKC4uLnQpe1MubG9nKCJbaHR0cHMtcHJveHktYWdlbnRdIiwuLi50KX1jbGFzcyBubiBleHRlbmRzIHF0e3N0YXRpYyBfX2luaXRTdGF0aWMoKXt0aGlzLnByb3RvY29scz1bImh0dHAiLCJodHRwcyJdfWNvbnN0cnVjdG9yKHQsbil7c3VwZXIobiksdGhpcy5vcHRpb25zPXt9LHRoaXMucHJveHk9InN0cmluZyI9PXR5cGVvZiB0P25ldyBVUkwodCk6dCx0aGlzLnByb3h5SGVhZGVycz1uPy5oZWFkZXJzPz97fSx0bigiQ3JlYXRpbmcgbmV3IEh0dHBzUHJveHlBZ2VudCBpbnN0YW5jZTogJW8iLHRoaXMucHJveHkuaHJlZik7Y29uc3QgZT0odGhpcy5wcm94eS5ob3N0bmFtZXx8dGhpcy5wcm94eS5ob3N0KS5yZXBsYWNlKC9eXFt8XF0kL2csIiIpLHI9dGhpcy5wcm94eS5wb3J0P3BhcnNlSW50KHRoaXMucHJveHkucG9ydCwxMCk6Imh0dHBzOiI9PT10aGlzLnByb3h5LnByb3RvY29sPzQ0Mzo4MDt0aGlzLmNvbm5lY3RPcHRzPXtBTFBOUHJvdG9jb2xzOlsiaHR0cC8xLjEiXSwuLi5uP3JuKG4sImhlYWRlcnMiKTpudWxsLGhvc3Q6ZSxwb3J0OnJ9fWFzeW5jIGNvbm5lY3QodCxuKXtjb25zdHtwcm94eTplfT10aGlzO2lmKCFuLmhvc3QpdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gImhvc3QiIHByb3ZpZGVkJyk7bGV0IHI7aWYoImh0dHBzOiI9PT1lLnByb3RvY29sKXt0bigiQ3JlYXRpbmcgYHRscy5Tb2NrZXRgOiAlbyIsdGhpcy5jb25uZWN0T3B0cyk7Y29uc3QgdD10aGlzLmNvbm5lY3RPcHRzLnNlcnZlcm5hbWV8fHRoaXMuY29ubmVjdE9wdHMuaG9zdDtyPWYuY29ubmVjdCh7Li4udGhpcy5jb25uZWN0T3B0cyxzZXJ2ZXJuYW1lOnQmJmEuaXNJUCh0KT92b2lkIDA6dH0pfWVsc2UgdG4oIkNyZWF0aW5nIGBuZXQuU29ja2V0YDogJW8iLHRoaXMuY29ubmVjdE9wdHMpLHI9YS5jb25uZWN0KHRoaXMuY29ubmVjdE9wdHMpO2NvbnN0IG89ImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMucHJveHlIZWFkZXJzP3RoaXMucHJveHlIZWFkZXJzKCk6ey4uLnRoaXMucHJveHlIZWFkZXJzfSxpPWEuaXNJUHY2KG4uaG9zdCk/YFske24uaG9zdH1dYDpuLmhvc3Q7bGV0IHM9YENPTk5FQ1QgJHtpfToke24ucG9ydH0gSFRUUC8xLjFcclxuYDtpZihlLnVzZXJuYW1lfHxlLnBhc3N3b3JkKXtjb25zdCB0PWAke2RlY29kZVVSSUNvbXBvbmVudChlLnVzZXJuYW1lKX06JHtkZWNvZGVVUklDb21wb25lbnQoZS5wYXNzd29yZCl9YDtvWyJQcm94eS1BdXRob3JpemF0aW9uIl09YEJhc2ljICR7QnVmZmVyLmZyb20odCkudG9TdHJpbmcoImJhc2U2NCIpfWB9by5Ib3N0PWAke2l9OiR7bi5wb3J0fWAsb1siUHJveHktQ29ubmVjdGlvbiJdfHwob1siUHJveHktQ29ubmVjdGlvbiJdPXRoaXMua2VlcEFsaXZlPyJLZWVwLUFsaXZlIjoiY2xvc2UiKTtmb3IoY29uc3QgdCBvZiBPYmplY3Qua2V5cyhvKSlzKz1gJHt0fTogJHtvW3RdfVxyXG5gO2NvbnN0IGM9WHQocik7ci53cml0ZShgJHtzfVxyXG5gKTtjb25zdHtjb25uZWN0OnUsYnVmZmVyZWQ6aH09YXdhaXQgYztpZih0LmVtaXQoInByb3h5Q29ubmVjdCIsdSksdGhpcy5lbWl0KCJwcm94eUNvbm5lY3QiLHUsdCksMjAwPT09dS5zdGF0dXNDb2RlKXtpZih0Lm9uY2UoInNvY2tldCIsZW4pLG4uc2VjdXJlRW5kcG9pbnQpe3RuKCJVcGdyYWRpbmcgc29ja2V0IGNvbm5lY3Rpb24gdG8gVExTIik7Y29uc3QgdD1uLnNlcnZlcm5hbWV8fG4uaG9zdDtyZXR1cm4gZi5jb25uZWN0KHsuLi5ybihuLCJob3N0IiwicGF0aCIsInBvcnQiKSxzb2NrZXQ6cixzZXJ2ZXJuYW1lOmEuaXNJUCh0KT92b2lkIDA6dH0pfXJldHVybiByfXIuZGVzdHJveSgpO2NvbnN0IHA9bmV3IGEuU29ja2V0KHt3cml0YWJsZTohMX0pO3JldHVybiBwLnJlYWRhYmxlPSEwLHQub25jZSgic29ja2V0Iix0PT57dG4oIlJlcGxheWluZyBwcm94eSBidWZmZXIgZm9yIGZhaWxlZCByZXF1ZXN0IiksdC5wdXNoKGgpLHQucHVzaChudWxsKX0pLHB9fWZ1bmN0aW9uIGVuKHQpe3QucmVzdW1lKCl9ZnVuY3Rpb24gcm4odCwuLi5uKXtjb25zdCBlPXt9O2xldCByO2ZvcihyIGluIHQpbi5pbmNsdWRlcyhyKXx8KGVbcl09dFtyXSk7cmV0dXJuIGV9bm4uX19pbml0U3RhdGljKCk7ZnVuY3Rpb24gb24odCl7cmV0dXJuIHQucmVwbGFjZSgvXltBLVpdOi8sIiIpLnJlcGxhY2UoL1xcL2csIi8iKX1jb25zdCBzbj1uO2xldCBjbix1bj0wLGFuPXt9O2Z1bmN0aW9uIGZuKHQpe3NuLmRlYnVnJiZjb25zb2xlLmxvZyhgW0FOUiBXb3JrZXJdICR7dH1gKX12YXIgaG4scG4sZG47Y29uc3QgbG49ZnVuY3Rpb24odCl7bGV0IG47dHJ5e249bmV3IFVSTCh0LnVybCl9Y2F0Y2gobil7cmV0dXJuIGIoKCk9Pntjb25zb2xlLndhcm4oIltAc2VudHJ5L25vZGVdOiBJbnZhbGlkIGRzbiBvciB0dW5uZWwgb3B0aW9uLCB3aWxsIG5vdCBzZW5kIGFueSBldmVudHMuIFRoZSB0dW5uZWwgb3B0aW9uIG11c3QgYmUgYSBmdWxsIFVSTCB3aGVuIHVzZWQuIil9KSxKdCh0LCgpPT5Qcm9taXNlLnJlc29sdmUoe30pKX1jb25zdCBlPSJodHRwczoiPT09bi5wcm90b2NvbCxyPWZ1bmN0aW9uKHQsbil7Y29uc3R7bm9fcHJveHk6ZX09cHJvY2Vzcy5lbnYscj1lPy5zcGxpdCgiLCIpLnNvbWUobj0+dC5ob3N0LmVuZHNXaXRoKG4pfHx0Lmhvc3RuYW1lLmVuZHNXaXRoKG4pKTtyZXR1cm4gcj92b2lkIDA6bn0obix0LnByb3h5fHwoZT9wcm9jZXNzLmVudi5odHRwc19wcm94eTp2b2lkIDApfHxwcm9jZXNzLmVudi5odHRwX3Byb3h5KSxvPWU/czppLGE9dm9pZCAwIT09dC5rZWVwQWxpdmUmJnQua2VlcEFsaXZlLGY9cj9uZXcgbm4ocik6bmV3IG8uQWdlbnQoe2tlZXBBbGl2ZTphLG1heFNvY2tldHM6MzAsdGltZW91dDoyZTN9KSxoPWZ1bmN0aW9uKHQsbixlKXtjb25zdHtob3N0bmFtZTpyLHBhdGhuYW1lOm8scG9ydDppLHByb3RvY29sOnMsc2VhcmNoOmF9PW5ldyBVUkwodC51cmwpO3JldHVybiBmdW5jdGlvbihmKXtyZXR1cm4gbmV3IFByb21pc2UoKGgscCk9PntCdCgoKT0+e2xldCBkPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgYyh7cmVhZCgpe3RoaXMucHVzaCh0KSx0aGlzLnB1c2gobnVsbCl9fSl9KGYuYm9keSk7Y29uc3QgbD17Li4udC5oZWFkZXJzfTtmLmJvZHkubGVuZ3RoPjMyNzY4JiYobFsiY29udGVudC1lbmNvZGluZyJdPSJnemlwIixkPWQucGlwZSh1KCkpKTtjb25zdCBtPXIuc3RhcnRzV2l0aCgiWyIpLGc9bi5yZXF1ZXN0KHttZXRob2Q6IlBPU1QiLGFnZW50OmUsaGVhZGVyczpsLGhvc3RuYW1lOm0/ci5zbGljZSgxLC0xKTpyLHBhdGg6YCR7b30ke2F9YCxwb3J0OmkscHJvdG9jb2w6cyxjYTp0LmNhQ2VydHN9LHQ9Pnt0Lm9uKCJkYXRhIiwoKT0+e30pLHQub24oImVuZCIsKCk9Pnt9KSx0LnNldEVuY29kaW5nKCJ1dGY4Iik7Y29uc3Qgbj10LmhlYWRlcnNbInJldHJ5LWFmdGVyIl0/P251bGwsZT10LmhlYWRlcnNbIngtc2VudHJ5LXJhdGUtbGltaXRzIl0/P251bGw7aCh7c3RhdHVzQ29kZTp0LnN0YXR1c0NvZGUsaGVhZGVyczp7InJldHJ5LWFmdGVyIjpuLCJ4LXNlbnRyeS1yYXRlLWxpbWl0cyI6QXJyYXkuaXNBcnJheShlKT9lWzBdfHxudWxsOmV9fSl9KTtnLm9uKCJlcnJvciIscCksZC5waXBlKGcpfSl9KX19KHQsdC5odHRwTW9kdWxlPz9vLGYpO3JldHVybiBKdCh0LGgpfSh7dXJsOihobj1zbi5kc24scG49c24udHVubmVsLGRuPXNuLnNka01ldGFkYXRhLnNkayxwbnx8YCR7ZnVuY3Rpb24odCl7cmV0dXJuYCR7ZnVuY3Rpb24odCl7Y29uc3Qgbj10LnByb3RvY29sP2Ake3QucHJvdG9jb2x9OmA6IiIsZT10LnBvcnQ/YDoke3QucG9ydH1gOiIiO3JldHVybmAke259Ly8ke3QuaG9zdH0ke2V9JHt0LnBhdGg/YC8ke3QucGF0aH1gOiIifS9hcGkvYH0odCl9JHt0LnByb2plY3RJZH0vZW52ZWxvcGUvYH0oaG4pfT8ke2Z1bmN0aW9uKHQsbil7Y29uc3QgZT17c2VudHJ5X3ZlcnNpb246IjcifTtyZXR1cm4gdC5wdWJsaWNLZXkmJihlLnNlbnRyeV9rZXk9dC5wdWJsaWNLZXkpLG4mJihlLnNlbnRyeV9jbGllbnQ9YCR7bi5uYW1lfS8ke24udmVyc2lvbn1gKSxuZXcgVVJMU2VhcmNoUGFyYW1zKGUpLnRvU3RyaW5nKCl9KGhuLGRuKX1gKX0pO2FzeW5jIGZ1bmN0aW9uIG1uKCl7aWYoY24pe2ZuKCJTZW5kaW5nIGFibm9ybWFsIHNlc3Npb24iKSxWKGNuLHtzdGF0dXM6ImFibm9ybWFsIixhYm5vcm1hbF9tZWNoYW5pc206ImFucl9mb3JlZ3JvdW5kIixyZWxlYXNlOnNuLnJlbGVhc2UsZW52aXJvbm1lbnQ6c24uZW52aXJvbm1lbnR9KTtjb25zdCB0PWZ1bmN0aW9uKHQsbixlLHIpe2NvbnN0IG89VXQoZSk7cmV0dXJuIGt0KHtzZW50X2F0OihuZXcgRGF0ZSkudG9JU09TdHJpbmcoKSwuLi5vJiZ7c2RrOm99LC4uLiEhciYmbiYme2RzbjpidChuKX19LFsiYWdncmVnYXRlcyJpbiB0P1t7dHlwZToic2Vzc2lvbnMifSx0XTpbe3R5cGU6InNlc3Npb24ifSx0LnRvSlNPTigpXV0pfShjbixzbi5kc24sc24uc2RrTWV0YWRhdGEsc24udHVubmVsKTtmbihKU09OLnN0cmluZ2lmeSh0KSksYXdhaXQgbG4uc2VuZCh0KTt0cnl7ZT8ucG9zdE1lc3NhZ2UoInNlc3Npb24tZW5kZWQiKX1jYXRjaHt9fX1mdW5jdGlvbiBnbih0KXtpZighdClyZXR1cm47Y29uc3Qgbj1mdW5jdGlvbih0KXtpZighdC5sZW5ndGgpcmV0dXJuW107Y29uc3Qgbj1BcnJheS5mcm9tKHQpO3JldHVybi9zZW50cnlXcmFwcGVkLy50ZXN0KEUobikuZnVuY3Rpb258fCIiKSYmbi5wb3AoKSxuLnJldmVyc2UoKSwkLnRlc3QoRShuKS5mdW5jdGlvbnx8IiIpJiYobi5wb3AoKSwkLnRlc3QoRShuKS5mdW5jdGlvbnx8IiIpJiZuLnBvcCgpKSxuLnNsaWNlKDAsNTApLm1hcCh0PT4oey4uLnQsZmlsZW5hbWU6dC5maWxlbmFtZXx8RShuKS5maWxlbmFtZSxmdW5jdGlvbjp0LmZ1bmN0aW9ufHwiPyJ9KSl9KHQpO2lmKHNuLmFwcFJvb3RQYXRoKWZvcihjb25zdCB0IG9mIG4pdC5maWxlbmFtZSYmKHQuZmlsZW5hbWU9VHQodC5maWxlbmFtZSxzbi5hcHBSb290UGF0aCkpO3JldHVybiBufWFzeW5jIGZ1bmN0aW9uIHluKHQsbil7aWYodW4+PXNuLm1heEFuckV2ZW50cylyZXR1cm47dW4rPTEsYXdhaXQgbW4oKSxmbigiU2VuZGluZyBldmVudCIpO2NvbnN0IGU9e2V2ZW50X2lkOkYoKSxjb250ZXh0czpzbi5jb250ZXh0cyxyZWxlYXNlOnNuLnJlbGVhc2UsZW52aXJvbm1lbnQ6c24uZW52aXJvbm1lbnQsZGlzdDpzbi5kaXN0LHBsYXRmb3JtOiJub2RlIixsZXZlbDoiZXJyb3IiLGV4Y2VwdGlvbjp7dmFsdWVzOlt7dHlwZToiQXBwbGljYXRpb25Ob3RSZXNwb25kaW5nIix2YWx1ZTpgQXBwbGljYXRpb24gTm90IFJlc3BvbmRpbmcgZm9yIGF0IGxlYXN0ICR7c24uYW5yVGhyZXNob2xkfSBtc2Asc3RhY2t0cmFjZTp7ZnJhbWVzOmduKHQpfSxtZWNoYW5pc206e3R5cGU6IkFOUiJ9fV19LHRhZ3M6c24uc3RhdGljVGFnc307biYmZnVuY3Rpb24odCxuKXtpZih6dCh0LG4pLCF0LmNvbnRleHRzPy50cmFjZSl7Y29uc3R7dHJhY2VJZDplLHBhcmVudFNwYW5JZDpyLHByb3BhZ2F0aW9uU3BhbklkOm99PW4ucHJvcGFnYXRpb25Db250ZXh0O3QuY29udGV4dHM9e3RyYWNlOnt0cmFjZV9pZDplLHNwYW5faWQ6b3x8cSgpLHBhcmVudF9zcGFuX2lkOnJ9LC4uLnQuY29udGV4dHN9fX0oZSxuKSxmdW5jdGlvbih0KXtpZigwPT09T2JqZWN0LmtleXMoYW4pLmxlbmd0aClyZXR1cm47Y29uc3Qgbj1zbi5hcHBSb290UGF0aD97fTphbjtpZihzbi5hcHBSb290UGF0aClmb3IoY29uc3RbdCxlXW9mIE9iamVjdC5lbnRyaWVzKGFuKSluW1R0KHQsc24uYXBwUm9vdFBhdGgpXT1lO2NvbnN0IGU9bmV3IE1hcDtmb3IoY29uc3QgciBvZiB0LmV4Y2VwdGlvbj8udmFsdWVzfHxbXSlmb3IoY29uc3QgdCBvZiByLnN0YWNrdHJhY2U/LmZyYW1lc3x8W10pe2NvbnN0IHI9dC5hYnNfcGF0aHx8dC5maWxlbmFtZTtyJiZuW3JdJiZlLnNldChyLG5bcl0pfWlmKGUuc2l6ZT4wKXtjb25zdCBuPVtdO2Zvcihjb25zdFt0LHJdb2YgZS5lbnRyaWVzKCkpbi5wdXNoKHt0eXBlOiJzb3VyY2VtYXAiLGNvZGVfZmlsZTp0LGRlYnVnX2lkOnJ9KTt0LmRlYnVnX21ldGE9e2ltYWdlczpufX19KGUpO2NvbnN0IHI9THQoZSxzbi5kc24sc24uc2RrTWV0YWRhdGEsc24udHVubmVsKTtmbihKU09OLnN0cmluZ2lmeShyKSksYXdhaXQgbG4uc2VuZChyKSxhd2FpdCBsbi5mbHVzaCgyZTMpLHVuPj1zbi5tYXhBbnJFdmVudHMmJnNldFRpbWVvdXQoKCk9Pntwcm9jZXNzLmV4aXQoMCl9LDVlMyl9bGV0IGJuO2lmKGZuKCJTdGFydGVkIiksc24uY2FwdHVyZVN0YWNrVHJhY2Upe2ZuKCJDb25uZWN0aW5nIHRvIGRlYnVnZ2VyIik7Y29uc3Qgbj1uZXcgdDtuLmNvbm5lY3RUb01haW5UaHJlYWQoKSxmbigiQ29ubmVjdGVkIHRvIGRlYnVnZ2VyIik7Y29uc3QgZT1uZXcgTWFwO24ub24oIkRlYnVnZ2VyLnNjcmlwdFBhcnNlZCIsdD0+e2Uuc2V0KHQucGFyYW1zLnNjcmlwdElkLHQucGFyYW1zLnVybCl9KSxuLm9uKCJEZWJ1Z2dlci5wYXVzZWQiLHQ9PntpZigib3RoZXIiPT09dC5wYXJhbXMucmVhc29uKXRyeXtmbigiRGVidWdnZXIgcGF1c2VkIik7Y29uc3QgaT1bLi4udC5wYXJhbXMuY2FsbEZyYW1lc10scz1zbi5hcHBSb290UGF0aD9mdW5jdGlvbih0PShwcm9jZXNzLmFyZ3ZbMV0/VnQocHJvY2Vzcy5hcmd2WzFdKTpwcm9jZXNzLmN3ZCgpKSxuPSJcXCI9PT1vKXtjb25zdCBlPW4/b24odCk6dDtyZXR1cm4gdD0+e2lmKCF0KXJldHVybjtjb25zdCBvPW4/b24odCk6dDtsZXR7ZGlyOmksYmFzZTpzLGV4dDpjfT1yLnBhcnNlKG8pOyIuanMiIT09YyYmIi5tanMiIT09YyYmIi5janMiIT09Y3x8KHM9cy5zbGljZSgwLC0xKmMubGVuZ3RoKSk7Y29uc3QgdT1kZWNvZGVVUklDb21wb25lbnQocyk7aXx8KGk9Ii4iKTtjb25zdCBhPWkubGFzdEluZGV4T2YoIi9ub2RlX21vZHVsZXMiKTtpZihhPi0xKXJldHVybmAke2kuc2xpY2UoYSsxNCkucmVwbGFjZSgvXC8vZywiLiIpfToke3V9YDtpZihpLnN0YXJ0c1dpdGgoZSkpe2NvbnN0IHQ9aS5zbGljZShlLmxlbmd0aCsxKS5yZXBsYWNlKC9cLy9nLCIuIik7cmV0dXJuIHQ/YCR7dH06JHt1fWA6dX1yZXR1cm4gdX19KHNuLmFwcFJvb3RQYXRoKTooKT0+e30sYz1pLm1hcCh0PT5mdW5jdGlvbih0LG4sZSl7Y29uc3Qgcj1uP24ucmVwbGFjZSgvXmZpbGU6XC9cLy8sIiIpOnZvaWQgMCxvPXQubG9jYXRpb24uY29sdW1uTnVtYmVyP3QubG9jYXRpb24uY29sdW1uTnVtYmVyKzE6dm9pZCAwLGk9dC5sb2NhdGlvbi5saW5lTnVtYmVyP3QubG9jYXRpb24ubGluZU51bWJlcisxOnZvaWQgMDtyZXR1cm57ZmlsZW5hbWU6cixtb2R1bGU6ZShyKSxmdW5jdGlvbjp0LmZ1bmN0aW9uTmFtZXx8Ij8iLGNvbG5vOm8sbGluZW5vOmksaW5fYXBwOnI/S3Qocik6dm9pZCAwfX0odCxlLmdldCh0LmxvY2F0aW9uLnNjcmlwdElkKSxzKSksdT1zZXRUaW1lb3V0KCgpPT57eW4oYykudGhlbihudWxsLCgpPT57Zm4oIlNlbmRpbmcgQU5SIGV2ZW50IGZhaWxlZC4iKX0pfSw1ZTMpO24ucG9zdCgiUnVudGltZS5ldmFsdWF0ZSIse2V4cHJlc3Npb246Imdsb2JhbC5fX1NFTlRSWV9HRVRfU0NPUEVTX18oKTsiLHNpbGVudDohMCxyZXR1cm5CeVZhbHVlOiEwfSwodCxlKT0+e3QmJmZuKGBFcnJvciBleGVjdXRpbmcgc2NyaXB0OiAnJHt0Lm1lc3NhZ2V9J2ApLGNsZWFyVGltZW91dCh1KTtjb25zdCByPWU/LnJlc3VsdD9lLnJlc3VsdC52YWx1ZTp2b2lkIDA7bi5wb3N0KCJEZWJ1Z2dlci5yZXN1bWUiKSxuLnBvc3QoIkRlYnVnZ2VyLmRpc2FibGUiKSx5bihjLHIpLnRoZW4obnVsbCwoKT0+e2ZuKCJTZW5kaW5nIEFOUiBldmVudCBmYWlsZWQuIil9KX0pfWNhdGNoKHQpe3Rocm93IG4ucG9zdCgiRGVidWdnZXIucmVzdW1lIiksbi5wb3N0KCJEZWJ1Z2dlci5kaXNhYmxlIiksdH19KSxibj0oKT0+e3RyeXtuLnBvc3QoIkRlYnVnZ2VyLmVuYWJsZSIsKCk9PntuLnBvc3QoIkRlYnVnZ2VyLnBhdXNlIil9KX1jYXRjaHt9fX1jb25zdHtwb2xsOnZufT1mdW5jdGlvbih0LG4sZSxyKXtjb25zdCBvPXQoKTtsZXQgaT0hMSxzPSEwO3JldHVybiBzZXRJbnRlcnZhbCgoKT0+e2NvbnN0IHQ9by5nZXRUaW1lTXMoKTshMT09PWkmJnQ+bitlJiYoaT0hMCxzJiZyKCkpLHQ8bitlJiYoaT0hMSl9LDIwKSx7cG9sbDooKT0+e28ucmVzZXQoKX0sZW5hYmxlZDp0PT57cz10fX19KGZ1bmN0aW9uKCl7bGV0IHQ9cHJvY2Vzcy5ocnRpbWUoKTtyZXR1cm57Z2V0VGltZU1zOigpPT57Y29uc3RbbixlXT1wcm9jZXNzLmhydGltZSh0KTtyZXR1cm4gTWF0aC5mbG9vcigxZTMqbitlLzFlNil9LHJlc2V0OigpPT57dD1wcm9jZXNzLmhydGltZSgpfX19LHNuLnBvbGxJbnRlcnZhbCxzbi5hbnJUaHJlc2hvbGQsZnVuY3Rpb24oKXtmbigiV2F0Y2hkb2cgdGltZW91dCIpLGJuPyhmbigiUGF1c2luZyBkZWJ1Z2dlciB0byBjYXB0dXJlIHN0YWNrIHRyYWNlIiksYm4oKSk6KGZuKCJDYXB0dXJpbmcgZXZlbnQgd2l0aG91dCBhIHN0YWNrIHRyYWNlIikseW4oKS50aGVuKG51bGwsKCk9PntmbigiU2VuZGluZyBBTlIgZXZlbnQgZmFpbGVkIG9uIHdhdGNoZG9nIHRpbWVvdXQuIil9KSl9KTtlPy5vbigibWVzc2FnZSIsdD0+e3Quc2Vzc2lvbiYmKGNuPVkodC5zZXNzaW9uKSksdC5kZWJ1Z0ltYWdlcyYmKGFuPXQuZGVidWdJbWFnZXMpLHZuKCl9KTs=",IT0=50,TT0=5000,li="Anr",ST0=(Z={})=>{if(b1.major<16||b1.major===16&&b1.minor<17)throw Error("ANR detection requires Node 16.17.0 or later");let J,Q,$=ET0();return $.__SENTRY_GET_SCOPES__=fT0,{name:li,startWorker:()=>{if(J)return;if(Q)J=_T0(Q,Z)},stopWorker:()=>{if(J)J.then((Y)=>{Y(),J=void 0})},async setup(Y){if(Q=Y,Z.captureStackTrace&&await DJ())O.warn("ANR captureStackTrace has been disabled because the debugger was already enabled"),Z.captureStackTrace=!1;setImmediate(()=>this.startWorker())}}},yK;var pi=q(()=>{N();j5();NK();({isPromise:NT0}=RT0);yK=P(ST0)});import{format as hT0}from"util";function i8(Z,...J){let[Q,$,Y,X]=J;if(Array.isArray($)){let W={...Y};W["sentry.message.template"]=Q,$.forEach((z,G)=>{W[`sentry.message.parameter.${G}`]=z});let K=hT0(Q,...$);R9({level:Z,message:K,attributes:W},X?.scope)}else R9({level:Z,message:Q,attributes:$},Y?.scope??X?.scope)}var Yw=q(()=>{N()});var H$={};y1(H$,{warn:()=>gT0,trace:()=>bT0,info:()=>xT0,fmt:()=>FF,fatal:()=>cT0,error:()=>dT0,debug:()=>vT0});function bT0(...Z){i8("trace",...Z)}function vT0(...Z){i8("debug",...Z)}function xT0(...Z){i8("info",...Z)}function gT0(...Z){i8("warn",...Z)}function dT0(...Z){i8("error",...Z)}function cT0(...Z){i8("fatal",...Z)}var ii=q(()=>{Yw();N()});function _K(Z,J){class Q extends Z{constructor($){super($);this._levels=new Set(J?.levels??mT0)}log($,Y){try{if(setImmediate(()=>{this.emit("logged",$)}),!pT0($))return;let X=$[oi],{level:W,message:K,timestamp:z,...G}=$;G[oi]=void 0,G[uT0]=void 0,G[lT0]=void 0;let H=J?.customLevelMap?.[X],B=iT0[X],V=H??B??"info";if(this._levels.has(V))i8(V,K,{...G,"sentry.origin":"auto.log.winston"});else if(!H&&!B)s&&O.log(`Winston log level ${X} is not captured by Sentry. Please add ${X} to the "customLevelMap" option of the Sentry Winston transport.`)}catch{}if(Y)Y()}}return Q}function pT0(Z){return typeof Z==="object"&&Z!=null}var mT0,oi,uT0,lT0,iT0;var ni=q(()=>{N();e6();Yw();mT0=["trace","debug","info","warn","error","fatal"],oi=Symbol.for("level"),uT0=Symbol.for("message"),lT0=Symbol.for("splat");iT0={silly:"trace",debug:"debug",verbose:"debug",http:"debug",info:"info",notice:"info",warn:"warn",warning:"warn",error:"error",emerg:"fatal",alert:"fatal",crit:"fatal"}});import*as ri from"diagnostics_channel";function ai(Z,J,Q){let $=Object.getOwnPropertySymbols(Z),Y=`Symbol(${J})`;for(let X of $)if(X.toString()===Y){let W=Z[X];return typeof W==="string"?W:Q}return Q}function oT0(Z){let{level:J,time:Q,pid:$,hostname:Y,...X}=Z;return X}var Xw,si,nT0,hK;var ti=q(()=>{N();Xw=Symbol("sentry-track-pino-logger");si={error:{levels:[],handled:!0},log:{levels:["trace","debug","info","warn","error","fatal"]}};nT0=P((Z={})=>{let J={autoInstrument:Z.autoInstrument!==!1,error:{...si.error,...Z.error},log:{...si.log,...Z.log}};function Q($){let Y=$[Xw];return Y==="track"||Y!=="ignore"&&J.autoInstrument}return{name:"Pino",setup:($)=>{let Y=!!$.getOptions().enableLogs,X=ri.tracingChannel("pino_asJson");function W(K,z,G){if(!Q(K))return;let H=oT0(G),[B,V,F]=z,U=K?.levels?.labels?.[F]||"info",w=ai(K,"pino.messageKey","msg"),D=V||H?.[w]||"";if(Y&&J.log.levels.includes(U)){let L={...H,"sentry.origin":"auto.log.pino","pino.logger.level":F};R9({level:U,message:D,attributes:L})}if(J.error.levels.includes(U)){let L={level:EZ(U)};c0((C)=>{C.addEventProcessor((T)=>{return T.logger="pino",i6(T,{handled:J.error.handled,type:"auto.log.pino"}),T});let R=B[ai(K,"pino.errorKey","err")];if(R){h(R,L);return}s7(D,L)})}}X.end.subscribe((K)=>{let{instance:z,arguments:G,result:H}=K;W(z,G,JSON.parse(H))})}}}),hK=Object.assign(nT0,{trackLogger(Z){if(Z&&typeof Z==="object"&&"levels"in Z)Z[Xw]="track"},untrackLogger(Z){if(Z&&typeof Z==="object"&&"levels"in Z)Z[Xw]="ignore"}})});function q0(Z,J){Z.setAttribute(f,J)}var ei=q(()=>{N()});function B$(Z){let J=Z.protocol||"",Q=Z.hostname||Z.host||"",$=!Z.port||Z.port===80||Z.port===443||/^(.*):(\d+)$/.test(Q)?"":`:${Z.port}`,Y=Z.path?Z.path:"/";return`${J}//${Q}${$}${Y}`}var Zo=()=>{};function P5(Z){return aT0.reduce((J,[Q,$])=>J.replace(new RegExp(Q,"gi"),$),Z)}var aT0;var bK=q(()=>{aT0=[["january","1"],["february","2"],["march","3"],["april","4"],["may","5"],["june","6"],["july","7"],["august","8"],["september","9"],["october","10"],["november","11"],["december","12"],["jan","1"],["feb","2"],["mar","3"],["apr","4"],["may","5"],["jun","6"],["jul","7"],["aug","8"],["sep","9"],["oct","10"],["nov","11"],["dec","12"],["sunday","0"],["monday","1"],["tuesday","2"],["wednesday","3"],["thursday","4"],["friday","5"],["saturday","6"],["sun","0"],["mon","1"],["tue","2"],["wed","3"],["thu","4"],["fri","5"],["sat","6"]]});function Qo(Z,J){let Q=!1;return new Proxy(Z,{construct($,Y){let[X,W,K,z,G,...H]=Y;if(typeof X!=="string")throw Error(Jo);if(Q)throw Error(`A job named '${J}' has already been scheduled`);Q=!0;let B=P5(X);async function V(F,U){return a6(J,async()=>{try{await W(F,U)}catch(w){throw h(w,{mechanism:{handled:!1,type:"auto.function.cron.instrumentCron"}}),w}},{schedule:{type:"crontab",value:B},timezone:G||void 0})}return new $(X,V,K,z,G,...H)},get($,Y){if(Y==="from")return(X)=>{let{cronTime:W,onTick:K,timeZone:z}=X;if(typeof W!=="string")throw Error(Jo);if(Q)throw Error(`A job named '${J}' has already been scheduled`);Q=!0;let G=P5(W);return X.onTick=async(H,B)=>{return a6(J,async()=>{try{await K(H,B)}catch(V){throw h(V,{mechanism:{handled:!1,type:"auto.function.cron.instrumentCron"}}),V}},{schedule:{type:"crontab",value:G},timezone:z||void 0})},$.from(X)};else return $[Y]}})}var Jo="Automatic instrumentation of CronJob only supports crontab string";var $o=q(()=>{N();bK()});function Yo(Z,J={}){return new Proxy(Z,{get(Q,$){if($==="schedule"&&Q.schedule)return new Proxy(Q.schedule,{apply(Y,X,W){let[K,z,G]=W,H=G?.name,B=G?.timezone;if(!H)throw Error('Missing "name" for scheduled job. A name is required for Sentry check-in monitoring.');let V=async(...F)=>{return a6(H,async()=>{try{return await z(...F)}catch(U){throw h(U,{mechanism:{handled:!1,type:"auto.function.node-cron.instrumentNodeCron"}}),U}},{schedule:{type:"crontab",value:P5(K)},timezone:B,...J})};return Y.apply(X,[K,V,G])}});else return Q[$]}})}var Xo=q(()=>{N();bK()});function Wo(Z){return new Proxy(Z,{get(J,Q){if(Q==="scheduleJob")return new Proxy(J.scheduleJob,{apply($,Y,X){let[W,K,z]=X;if(typeof W!=="string"||typeof K!=="string"||typeof z!=="function")throw Error("Automatic instrumentation of 'node-schedule' requires the first parameter of 'scheduleJob' to be a job name string and the second parameter to be a crontab string");let G=W,H=K;async function B(){return a6(G,async()=>{await z?.()},{schedule:{type:"crontab",value:P5(H)}})}return $.apply(Y,[G,H,B])}});return J[Q]}})}var Ko=q(()=>{N();bK()});var vK;var zo=q(()=>{$o();Xo();Ko();vK={instrumentCron:Qo,instrumentNodeCron:Yo,instrumentNodeSchedule:Wo}});var X0=q(()=>{oU();WK();rU();eU();ip();op();RK();gi();Zw();ui();lq();pi();N();ii();Sq();hq();xq();dq();mq();uq();iq();ni();ti();eq();tq();ei();Zo();rq();zo();j5()});function tT0(Z,J={}){if(typeof Z.spans==="boolean")return Z.spans;if(J.skipOpenTelemetrySetup)return!1;if(!P0(J)&&xK)return!1;return!0}function eT0(Z={}){return{disableOutgoingRequestInstrumentation:xK,ignoreOutgoingRequestHook:(Q)=>{let $=B$(Q);if(!$)return!1;let Y=Z.ignoreOutgoingRequests;if(Y?.($,Q))return!0;return!1},requireParentforOutgoingSpans:!1,requestHook:(Q,$)=>{q0(Q,"auto.http.otel.http");let Y=B$($);if(Y.startsWith("data:")){let X=h4(Y);Q.setAttribute("http.url",X),Q.setAttribute(OZ,X),Q.updateName(`${$.method||"GET"} ${X}`)}Z.instrumentation?.requestHook?.(Q,$)},responseHook:(Q,$)=>{Z.instrumentation?.responseHook?.(Q,$)},applyCustomAttributesOnSpan:(Q,$,Y)=>{Z.instrumentation?.applyCustomAttributesOnSpan?.(Q,$,Y)}}}var Ho,Bo,Ww="Http",Go="@opentelemetry_sentry-patched/instrumentation-http",xK,sT0,rT0,M5;var Kw=q(()=>{N();X0();Ho=A(I(),1),Bo=A(Lh(),1),xK=b1.major===22&&b1.minor>=12||b1.major===23&&b1.minor>=2||b1.major>=24,sT0=S(`${Ww}.sentry`,(Z)=>{return new XJ(Z)}),rT0=S(Ww,(Z)=>{let J=new Bo.HttpInstrumentation({...Z,disableIncomingRequestInstrumentation:!0});try{J._diag=Ho.diag.createComponentLogger({namespace:Go}),J.instrumentationName=Go}catch{}try{let Q={get:()=>!1,set:()=>{}};Object.defineProperty(J,"_httpPatched",Q),Object.defineProperty(J,"_httpsPatched",Q)}catch{}return J});M5=P((Z={})=>{let J=Z.spans??!0,Q=Z.disableIncomingRequestSpans,$={sessions:Z.trackIncomingRequestsAsSessions,sessionFlushingDelayMS:Z.sessionFlushingDelayMS,ignoreRequestBody:Z.ignoreIncomingRequestBody,maxRequestBodySize:Z.maxIncomingRequestBodySize},Y={ignoreIncomingRequests:Z.ignoreIncomingRequests,ignoreStaticAssets:Z.ignoreStaticAssets,ignoreStatusCodes:Z.dropSpansForIncomingRequestStatusCodes,instrumentation:Z.instrumentation,onSpanCreated:Z.incomingRequestSpanHook},X=lZ($),W=pZ(Y),K=J&&!Q;return{name:Ww,setup(z){let G=z.getOptions();if(K&&P0(G))W.setup(z)},setupOnce(){let z=k()?.getOptions()||{},G=tT0(Z,z);X.setupOnce();let H={breadcrumbs:Z.breadcrumbs,propagateTraceInOutgoingRequests:typeof Z.tracePropagation==="boolean"?Z.tracePropagation:xK||!G,createSpansForOutgoingRequests:xK,spans:Z.spans,ignoreOutgoingRequests:Z.ignoreOutgoingRequests,outgoingRequestHook:(B,V)=>{let F=B$(V);if(F.startsWith("data:")){let U=h4(F);B.setAttribute("http.url",U),B.setAttribute(OZ,U),B.updateName(`${V.method||"GET"} ${U}`)}Z.instrumentation?.requestHook?.(B,V)},outgoingResponseHook:Z.instrumentation?.responseHook,outgoingRequestApplyCustomAttributes:Z.instrumentation?.applyCustomAttributesOnSpan};if(sT0(H),G){let B=eT0(Z);rT0(B)}},processEvent(z){return W.processEvent(z)}}})});var Uo=j((Vo)=>{Object.defineProperty(Vo,"__esModule",{value:!0});Vo.PACKAGE_NAME=Vo.PACKAGE_VERSION=void 0;Vo.PACKAGE_VERSION="0.23.0";Vo.PACKAGE_NAME="@opentelemetry/instrumentation-undici"});var Oo=j((jo)=>{Object.defineProperty(jo,"__esModule",{value:!0});jo.UndiciInstrumentation=void 0;var zw=E("diagnostics_channel"),JE0=E("url"),V$=n(),f6=I(),gK=R0(),$1=Y0(),qo=Uo();class wo extends V$.InstrumentationBase{_recordFromReq=new WeakMap;constructor(Z={}){super(qo.PACKAGE_NAME,qo.PACKAGE_VERSION,Z)}init(){return}disable(){super.disable(),this._channelSubs.forEach((Z)=>Z.unsubscribe()),this._channelSubs.length=0}enable(){if(super.enable(),this._channelSubs=this._channelSubs||[],this._channelSubs.length>0)return;this.subscribeToChannel("undici:request:create",this.onRequestCreated.bind(this)),this.subscribeToChannel("undici:client:sendHeaders",this.onRequestHeaders.bind(this)),this.subscribeToChannel("undici:request:headers",this.onResponseHeaders.bind(this)),this.subscribeToChannel("undici:request:trailers",this.onDone.bind(this)),this.subscribeToChannel("undici:request:error",this.onError.bind(this))}_updateMetricInstruments(){this._httpClientDurationHistogram=this.meter.createHistogram($1.METRIC_HTTP_CLIENT_REQUEST_DURATION,{description:"Measures the duration of outbound HTTP requests.",unit:"s",valueType:f6.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}})}subscribeToChannel(Z,J){let[Q,$]=process.version.replace("v","").split(".").map((W)=>Number(W)),Y=Q>18||Q===18&&$>=19,X;if(Y)zw.subscribe?.(Z,J),X=()=>zw.unsubscribe?.(Z,J);else{let W=zw.channel(Z);W.subscribe(J),X=()=>W.unsubscribe(J)}this._channelSubs.push({name:Z,unsubscribe:X})}parseRequestHeaders(Z){let J=new Map;if(Array.isArray(Z.headers))for(let Q=0;Q<Z.headers.length;Q+=2){let $=Z.headers[Q],Y=Z.headers[Q+1];if(typeof $==="string")J.set($.toLowerCase(),Y)}else if(typeof Z.headers==="string"){let Q=Z.headers.split(`\r
|
|
37
|
+
`);for(let $ of Q){if(!$)continue;let Y=$.indexOf(":");if(Y===-1)continue;let X=$.substring(0,Y).toLowerCase(),W=$.substring(Y+1).trim(),K=J.get(X);if(K&&Array.isArray(K))K.push(W);else if(K)J.set(X,[K,W]);else J.set(X,W)}}return J}onRequestCreated({request:Z}){let J=this.getConfig(),Q=J.enabled!==!1;if((0,V$.safeExecuteInTheMiddle)(()=>!Q||Z.method==="CONNECT"||J.ignoreRequestHook?.(Z),(_)=>_&&this._diag.error("caught ignoreRequestHook error: ",_),!0))return;let Y=(0,gK.hrTime)(),X;try{X=new JE0.URL(Z.path,Z.origin)}catch(_){this._diag.warn("could not determine url.full:",_);return}let W=X.protocol.replace(":",""),K=this.getRequestMethod(Z.method),z={[$1.ATTR_HTTP_REQUEST_METHOD]:K,[$1.ATTR_HTTP_REQUEST_METHOD_ORIGINAL]:Z.method,[$1.ATTR_URL_FULL]:X.toString(),[$1.ATTR_URL_PATH]:X.pathname,[$1.ATTR_URL_QUERY]:X.search,[$1.ATTR_URL_SCHEME]:W},G={https:"443",http:"80"},H=X.hostname,B=X.port||G[W];if(z[$1.ATTR_SERVER_ADDRESS]=H,B&&!isNaN(Number(B)))z[$1.ATTR_SERVER_PORT]=Number(B);let F=this.parseRequestHeaders(Z).get("user-agent");if(F){let _=Array.isArray(F)?F[F.length-1]:F;z[$1.ATTR_USER_AGENT_ORIGINAL]=_}let U=(0,V$.safeExecuteInTheMiddle)(()=>J.startSpanHook?.(Z),(_)=>_&&this._diag.error("caught startSpanHook error: ",_),!0);if(U)Object.entries(U).forEach(([_,m])=>{z[_]=m});let w=f6.context.active(),D=f6.trace.getSpan(w),L;if(J.requireParentforSpans&&(!D||!f6.trace.isSpanContextValid(D.spanContext())))L=f6.trace.wrapSpanContext(f6.INVALID_SPAN_CONTEXT);else L=this.tracer.startSpan(K==="_OTHER"?"HTTP":K,{kind:f6.SpanKind.CLIENT,attributes:z},w);(0,V$.safeExecuteInTheMiddle)(()=>J.requestHook?.(L,Z),(_)=>_&&this._diag.error("caught requestHook error: ",_),!0);let C=f6.trace.setSpan(f6.context.active(),L),R={};f6.propagation.inject(C,R);let T=Object.entries(R);for(let _=0;_<T.length;_++){let[m,l]=T[_];if(typeof Z.addHeader==="function")Z.addHeader(m,l);else if(typeof Z.headers==="string")Z.headers+=`${m}: ${l}\r
|
|
38
|
+
`;else if(Array.isArray(Z.headers))Z.headers.push(m,l)}this._recordFromReq.set(Z,{span:L,attributes:z,startTime:Y})}onRequestHeaders({request:Z,socket:J}){let Q=this._recordFromReq.get(Z);if(!Q)return;let $=this.getConfig(),{span:Y}=Q,{remoteAddress:X,remotePort:W}=J,K={[$1.ATTR_NETWORK_PEER_ADDRESS]:X,[$1.ATTR_NETWORK_PEER_PORT]:W};if($.headersToSpanAttributes?.requestHeaders){let z=new Set($.headersToSpanAttributes.requestHeaders.map((H)=>H.toLowerCase())),G=this.parseRequestHeaders(Z);for(let[H,B]of G.entries())if(z.has(H)){let V=Array.isArray(B)?B:[B];K[`http.request.header.${H}`]=V}}Y.setAttributes(K)}onResponseHeaders({request:Z,response:J}){let Q=this._recordFromReq.get(Z);if(!Q)return;let{span:$,attributes:Y}=Q,X={[$1.ATTR_HTTP_RESPONSE_STATUS_CODE]:J.statusCode},W=this.getConfig();if((0,V$.safeExecuteInTheMiddle)(()=>W.responseHook?.($,{request:Z,response:J}),(K)=>K&&this._diag.error("caught responseHook error: ",K),!0),W.headersToSpanAttributes?.responseHeaders){let K=new Set;W.headersToSpanAttributes?.responseHeaders.forEach((z)=>K.add(z.toLowerCase()));for(let z=0;z<J.headers.length;z=z+2){let G=J.headers[z].toString().toLowerCase(),H=J.headers[z+1];if(K.has(G)){let B=`http.response.header.${G}`;if(!Object.hasOwn(X,B))X[B]=[H.toString()];else X[B].push(H.toString())}}}$.setAttributes(X),$.setStatus({code:J.statusCode>=400?f6.SpanStatusCode.ERROR:f6.SpanStatusCode.UNSET}),Q.attributes=Object.assign(Y,X)}onDone({request:Z}){let J=this._recordFromReq.get(Z);if(!J)return;let{span:Q,attributes:$,startTime:Y}=J;Q.end(),this._recordFromReq.delete(Z),this.recordRequestDuration($,Y)}onError({request:Z,error:J}){let Q=this._recordFromReq.get(Z);if(!Q)return;let{span:$,attributes:Y,startTime:X}=Q;$.recordException(J),$.setStatus({code:f6.SpanStatusCode.ERROR,message:J.message}),$.end(),this._recordFromReq.delete(Z),Y[$1.ATTR_ERROR_TYPE]=J.message,this.recordRequestDuration(Y,X)}recordRequestDuration(Z,J){let Q={};[$1.ATTR_HTTP_RESPONSE_STATUS_CODE,$1.ATTR_HTTP_REQUEST_METHOD,$1.ATTR_SERVER_ADDRESS,$1.ATTR_SERVER_PORT,$1.ATTR_URL_SCHEME,$1.ATTR_ERROR_TYPE].forEach((X)=>{if(X in Z)Q[X]=Z[X]});let Y=(0,gK.hrTimeToMilliseconds)((0,gK.hrTimeDuration)(J,(0,gK.hrTime)()))/1000;this._httpClientDurationHistogram.record(Y,Q)}getRequestMethod(Z){let J={CONNECT:!0,OPTIONS:!0,HEAD:!0,GET:!0,POST:!0,PUT:!0,PATCH:!0,DELETE:!0,TRACE:!0,QUERY:!0};if(Z.toUpperCase()in J)return Z.toUpperCase();return"_OTHER"}}jo.UndiciInstrumentation=wo});var Lo=j((Gw)=>{Object.defineProperty(Gw,"__esModule",{value:!0});Gw.UndiciInstrumentation=void 0;var QE0=Oo();Object.defineProperty(Gw,"UndiciInstrumentation",{enumerable:!0,get:function(){return QE0.UndiciInstrumentation}})});function Co(Z,J="/"){let Q=`${Z}`;if(Q.endsWith("/")&&J.startsWith("/"))return`${Q}${J.slice(1)}`;if(!Q.endsWith("/")&&!J.startsWith("/"))return`${Q}/${J}`;return`${Q}${J}`}function KE0(Z,J={}){return typeof Z.spans==="boolean"?Z.spans:!J.skipOpenTelemetrySetup&&P0(J)}function zE0(Z={}){return{requireParentforSpans:!1,ignoreRequestHook:(Q)=>{let $=Co(Q.origin,Q.path),Y=Z.ignoreOutgoingRequests;return!!(Y&&$&&Y($))},startSpanHook:(Q)=>{let $=Co(Q.origin,Q.path);if($.startsWith("data:")){let Y=h4($);return{[f]:"auto.http.otel.node_fetch","http.url":Y,[OZ]:Y,[L6]:`${Q.method||"GET"} ${Y}`}}return{[f]:"auto.http.otel.node_fetch"}},requestHook:Z.requestHook,responseHook:Z.responseHook,headersToSpanAttributes:Z.headersToSpanAttributes}}var Po,Mo="NodeFetch",YE0,XE0,WE0=(Z={})=>{return{name:"NodeFetch",setupOnce(){if(KE0(Z,k()?.getOptions()))YE0(Z);XE0(Z)}}},R5;var Hw=q(()=>{N();X0();Po=A(Lo(),1),YE0=S(Mo,Po.UndiciInstrumentation,(Z)=>{return zE0(Z)}),XE0=S(`${Mo}.sentry`,KJ,(Z)=>{return Z}),R5=P(WE0)});var No=j((Ro)=>{Object.defineProperty(Ro,"__esModule",{value:!0});Ro.PACKAGE_NAME=Ro.PACKAGE_VERSION=void 0;Ro.PACKAGE_VERSION="0.32.0";Ro.PACKAGE_NAME="@opentelemetry/instrumentation-fs"});var To=j((Ao)=>{Object.defineProperty(Ao,"__esModule",{value:!0});Ao.SYNC_FUNCTIONS=Ao.CALLBACK_FUNCTIONS=Ao.PROMISE_FUNCTIONS=void 0;Ao.PROMISE_FUNCTIONS=["access","appendFile","chmod","chown","copyFile","cp","lchown","link","lstat","lutimes","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","rename","rm","rmdir","stat","symlink","truncate","unlink","utimes","writeFile"];Ao.CALLBACK_FUNCTIONS=["access","appendFile","chmod","chown","copyFile","cp","exists","lchown","link","lstat","lutimes","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","realpath.native","rename","rm","rmdir","stat","symlink","truncate","unlink","utimes","writeFile"];Ao.SYNC_FUNCTIONS=["accessSync","appendFileSync","chmodSync","chownSync","copyFileSync","cpSync","existsSync","lchownSync","linkSync","lstatSync","lutimesSync","mkdirSync","mkdtempSync","opendirSync","openSync","readdirSync","readFileSync","readlinkSync","realpathSync","realpathSync.native","renameSync","rmdirSync","rmSync","statSync","symlinkSync","truncateSync","unlinkSync","utimesSync","writeFileSync"]});var So=j((fo)=>{Object.defineProperty(fo,"__esModule",{value:!0});fo.indexFs=fo.splitTwoLevels=void 0;function Eo(Z){let J=Z.split(".");if(J.length>1){if(J.length!==2)throw Error(`Invalid member function name ${Z}`);return J}else return[Z]}fo.splitTwoLevels=Eo;function VE0(Z,J){if(!J)throw Error(JSON.stringify({member:J}));let Q=Eo(J),[$,Y]=Q;if(Y)return{objectToPatch:Z[$],functionNameToPatch:Y};else return{objectToPatch:Z,functionNameToPatch:$}}fo.indexFs=VE0});var xo=j((bo)=>{Object.defineProperty(bo,"__esModule",{value:!0});bo.FsInstrumentation=void 0;var E0=I(),o8=R0(),f9=n(),_o=No(),eZ=To(),UE0=E("util"),dK=So();function cK(Z,J){return Object.assign(Z,J)}class ho extends f9.InstrumentationBase{constructor(Z={}){super(_o.PACKAGE_NAME,_o.PACKAGE_VERSION,Z)}init(){return[new f9.InstrumentationNodeModuleDefinition("fs",["*"],(Z)=>{for(let J of eZ.SYNC_FUNCTIONS){let{objectToPatch:Q,functionNameToPatch:$}=(0,dK.indexFs)(Z,J);if((0,f9.isWrapped)(Q[$]))this._unwrap(Q,$);this._wrap(Q,$,this._patchSyncFunction.bind(this,J))}for(let J of eZ.CALLBACK_FUNCTIONS){let{objectToPatch:Q,functionNameToPatch:$}=(0,dK.indexFs)(Z,J);if((0,f9.isWrapped)(Q[$]))this._unwrap(Q,$);if(J==="exists"){this._wrap(Q,$,this._patchExistsCallbackFunction.bind(this,J));continue}this._wrap(Q,$,this._patchCallbackFunction.bind(this,J))}for(let J of eZ.PROMISE_FUNCTIONS){if((0,f9.isWrapped)(Z.promises[J]))this._unwrap(Z.promises,J);this._wrap(Z.promises,J,this._patchPromiseFunction.bind(this,J))}return Z},(Z)=>{if(Z===void 0)return;for(let J of eZ.SYNC_FUNCTIONS){let{objectToPatch:Q,functionNameToPatch:$}=(0,dK.indexFs)(Z,J);if((0,f9.isWrapped)(Q[$]))this._unwrap(Q,$)}for(let J of eZ.CALLBACK_FUNCTIONS){let{objectToPatch:Q,functionNameToPatch:$}=(0,dK.indexFs)(Z,J);if((0,f9.isWrapped)(Q[$]))this._unwrap(Q,$)}for(let J of eZ.PROMISE_FUNCTIONS)if((0,f9.isWrapped)(Z.promises[J]))this._unwrap(Z.promises,J)}),new f9.InstrumentationNodeModuleDefinition("fs/promises",["*"],(Z)=>{for(let J of eZ.PROMISE_FUNCTIONS){if((0,f9.isWrapped)(Z[J]))this._unwrap(Z,J);this._wrap(Z,J,this._patchPromiseFunction.bind(this,J))}return Z},(Z)=>{if(Z===void 0)return;for(let J of eZ.PROMISE_FUNCTIONS)if((0,f9.isWrapped)(Z[J]))this._unwrap(Z,J)})]}_patchSyncFunction(Z,J){let Q=this;return cK(function(...Y){let X=E0.context.active();if(!Q._shouldTrace(X))return J.apply(this,Y);if(Q._runCreateHook(Z,{args:Y})===!1)return E0.context.with((0,o8.suppressTracing)(X),J,this,...Y);let W=Q.tracer.startSpan(`fs ${Z}`);try{let K=E0.context.with((0,o8.suppressTracing)(E0.trace.setSpan(X,W)),J,this,...Y);return Q._runEndHook(Z,{args:Y,span:W}),K}catch(K){throw W.recordException(K),W.setStatus({message:K.message,code:E0.SpanStatusCode.ERROR}),Q._runEndHook(Z,{args:Y,span:W,error:K}),K}finally{W.end()}},J)}_patchCallbackFunction(Z,J){let Q=this;return cK(function(...Y){let X=E0.context.active();if(!Q._shouldTrace(X))return J.apply(this,Y);if(Q._runCreateHook(Z,{args:Y})===!1)return E0.context.with((0,o8.suppressTracing)(X),J,this,...Y);let W=Y.length-1,K=Y[W];if(typeof K==="function"){let z=Q.tracer.startSpan(`fs ${Z}`);Y[W]=E0.context.bind(X,function(G){if(G)z.recordException(G),z.setStatus({message:G.message,code:E0.SpanStatusCode.ERROR});return Q._runEndHook(Z,{args:Y,span:z,error:G}),z.end(),K.apply(this,arguments)});try{return E0.context.with((0,o8.suppressTracing)(E0.trace.setSpan(X,z)),J,this,...Y)}catch(G){throw z.recordException(G),z.setStatus({message:G.message,code:E0.SpanStatusCode.ERROR}),Q._runEndHook(Z,{args:Y,span:z,error:G}),z.end(),G}}else return J.apply(this,Y)},J)}_patchExistsCallbackFunction(Z,J){let Q=this,Y=cK(function(...W){let K=E0.context.active();if(!Q._shouldTrace(K))return J.apply(this,W);if(Q._runCreateHook(Z,{args:W})===!1)return E0.context.with((0,o8.suppressTracing)(K),J,this,...W);let z=W.length-1,G=W[z];if(typeof G==="function"){let H=Q.tracer.startSpan(`fs ${Z}`);W[z]=E0.context.bind(K,function(){return Q._runEndHook(Z,{args:W,span:H}),H.end(),G.apply(this,arguments)});try{return E0.context.with((0,o8.suppressTracing)(E0.trace.setSpan(K,H)),J,this,...W)}catch(B){throw H.recordException(B),H.setStatus({message:B.message,code:E0.SpanStatusCode.ERROR}),Q._runEndHook(Z,{args:W,span:H,error:B}),H.end(),B}}else return J.apply(this,W)},J),X=function(W){return new Promise((K)=>Y(W,K))};return Object.defineProperty(X,"name",{value:Z}),Object.defineProperty(Y,UE0.promisify.custom,{value:X}),Y}_patchPromiseFunction(Z,J){let Q=this;return cK(async function(...Y){let X=E0.context.active();if(!Q._shouldTrace(X))return J.apply(this,Y);if(Q._runCreateHook(Z,{args:Y})===!1)return E0.context.with((0,o8.suppressTracing)(X),J,this,...Y);let W=Q.tracer.startSpan(`fs ${Z}`);try{let K=await E0.context.with((0,o8.suppressTracing)(E0.trace.setSpan(X,W)),J,this,...Y);return Q._runEndHook(Z,{args:Y,span:W}),K}catch(K){throw W.recordException(K),W.setStatus({message:K.message,code:E0.SpanStatusCode.ERROR}),Q._runEndHook(Z,{args:Y,span:W,error:K}),K}finally{W.end()}},J)}_runCreateHook(...Z){let{createHook:J}=this.getConfig();if(typeof J==="function")try{return J(...Z)}catch(Q){this._diag.error("caught createHook error",Q)}return!0}_runEndHook(...Z){let{endHook:J}=this.getConfig();if(typeof J==="function")try{J(...Z)}catch(Q){this._diag.error("caught endHook error",Q)}}_shouldTrace(Z){if((0,o8.isTracingSuppressed)(Z))return!1;let{requireParentSpan:J}=this.getConfig();if(J){if(E0.trace.getSpan(Z)==null)return!1}return!0}}bo.FsInstrumentation=ho});var go=j((Bw)=>{Object.defineProperty(Bw,"__esModule",{value:!0});Bw.FsInstrumentation=void 0;var qE0=xo();Object.defineProperty(Bw,"FsInstrumentation",{enumerable:!0,get:function(){return qE0.FsInstrumentation}})});var mo,co="FileSystem",Vw,jE0,DE0,OE0,LE0,CE0,PE0;var uo=q(()=>{N();X0();mo=A(go(),1),Vw=P((Z={})=>{return{name:co,setupOnce(){S(co,()=>new mo.FsInstrumentation({requireParentSpan:!0,endHook(J,{args:Q,span:$,error:Y}){if($.updateName(`fs.${J}`),$.setAttributes({[g]:"file",[f]:"auto.file.fs"}),Z.recordErrorMessagesAsSpanAttributes){if(typeof Q[0]==="string"&&PE0.includes(J))$.setAttribute("path_argument",Q[0]);else if(typeof Q[0]==="string"&&typeof Q[1]==="string"&&CE0.includes(J))$.setAttribute("target_argument",Q[0]),$.setAttribute("path_argument",Q[1]);else if(typeof Q[0]==="string"&&LE0.includes(J))$.setAttribute("prefix_argument",Q[0]);else if(typeof Q[0]==="string"&&typeof Q[1]==="string"&&OE0.includes(J))$.setAttribute("existing_path_argument",Q[0]),$.setAttribute("new_path_argument",Q[1]);else if(typeof Q[0]==="string"&&typeof Q[1]==="string"&&DE0.includes(J))$.setAttribute("src_argument",Q[0]),$.setAttribute("dest_argument",Q[1]);else if(typeof Q[0]==="string"&&typeof Q[1]==="string"&&jE0.includes(J))$.setAttribute("old_path_argument",Q[0]),$.setAttribute("new_path_argument",Q[1])}if(Y&&Z.recordErrorMessagesAsSpanAttributes)$.setAttribute("fs_error",Y.message)}}))()}}}),jE0=["rename","renameSync"],DE0=["copyFile","cp","copyFileSync","cpSync"],OE0=["link","linkSync"],LE0=["mkdtemp","mkdtempSync"],CE0=["symlink","symlinkSync"],PE0=["access","appendFile","chmod","chown","exists","mkdir","lchown","lstat","lutimes","open","opendir","readdir","readFile","readlink","realpath","realpath.native","rm","rmdir","stat","truncate","unlink","utimes","writeFile","accessSync","appendFileSync","chmodSync","chownSync","existsSync","lchownSync","lstatSync","lutimesSync","opendirSync","mkdirSync","openSync","readdirSync","readFileSync","readlinkSync","realpathSync","realpathSync.native","rmdirSync","rmSync","statSync","truncateSync","unlinkSync","utimesSync","writeFileSync"]});var mK=j((lo)=>{Object.defineProperty(lo,"__esModule",{value:!0});lo.ExpressLayerType=void 0;var ME0;(function(Z){Z.ROUTER="router",Z.MIDDLEWARE="middleware",Z.REQUEST_HANDLER="request_handler"})(ME0=lo.ExpressLayerType||(lo.ExpressLayerType={}))});var uK=j((po)=>{Object.defineProperty(po,"__esModule",{value:!0});po.AttributeNames=void 0;var RE0;(function(Z){Z.EXPRESS_TYPE="express.type",Z.EXPRESS_NAME="express.name"})(RE0=po.AttributeNames||(po.AttributeNames={}))});var qw=j((io)=>{Object.defineProperty(io,"__esModule",{value:!0});io._LAYERS_STORE_PROPERTY=io.kLayerPatched=void 0;io.kLayerPatched=Symbol("express-layer-patched");io._LAYERS_STORE_PROPERTY="__ot_middlewares"});var to=j((so)=>{Object.defineProperty(so,"__esModule",{value:!0});so.getActualMatchedRoute=so.getConstructedRoute=so.getLayerPath=so.asErrorAndMessage=so.isLayerIgnored=so.getLayerMetadata=so.getRouterPath=so.storeLayerPath=void 0;var ww=mK(),NJ=uK(),k5=qw(),NE0=(Z,J)=>{if(Array.isArray(Z[k5._LAYERS_STORE_PROPERTY])===!1)Object.defineProperty(Z,k5._LAYERS_STORE_PROPERTY,{enumerable:!1,value:[]});if(J===void 0)return{isLayerPathStored:!1};return Z[k5._LAYERS_STORE_PROPERTY].push(J),{isLayerPathStored:!0}};so.storeLayerPath=NE0;var AE0=(Z,J)=>{let Q=J.handle?.stack?.[0];if(Q?.route?.path)return`${Z}${Q.route.path}`;if(Q?.handle?.stack)return so.getRouterPath(Z,Q);return Z};so.getRouterPath=AE0;var IE0=(Z,J,Q)=>{if(J.name==="router"){let $=so.getRouterPath("",J),Y=$?$:Q||Z||"/";return{attributes:{[NJ.AttributeNames.EXPRESS_NAME]:Y,[NJ.AttributeNames.EXPRESS_TYPE]:ww.ExpressLayerType.ROUTER},name:`router - ${Y}`}}else if(J.name==="bound dispatch"||J.name==="handle")return{attributes:{[NJ.AttributeNames.EXPRESS_NAME]:(Z||Q)??"request handler",[NJ.AttributeNames.EXPRESS_TYPE]:ww.ExpressLayerType.REQUEST_HANDLER},name:`request handler${J.path?` - ${Z||Q}`:""}`};else return{attributes:{[NJ.AttributeNames.EXPRESS_NAME]:J.name,[NJ.AttributeNames.EXPRESS_TYPE]:ww.ExpressLayerType.MIDDLEWARE},name:`middleware - ${J.name}`}};so.getLayerMetadata=IE0;var TE0=(Z,J)=>{if(typeof J==="string")return J===Z;else if(J instanceof RegExp)return J.test(Z);else if(typeof J==="function")return J(Z);else throw TypeError("Pattern is in unsupported datatype")},EE0=(Z,J,Q)=>{if(Array.isArray(Q?.ignoreLayersType)&&Q?.ignoreLayersType?.includes(J))return!0;if(Array.isArray(Q?.ignoreLayers)===!1)return!1;try{for(let $ of Q.ignoreLayers)if(TE0(Z,$))return!0}catch($){}return!1};so.isLayerIgnored=EE0;var fE0=(Z)=>Z instanceof Error?[Z,Z.message]:[String(Z),String(Z)];so.asErrorAndMessage=fE0;var yE0=(Z)=>{let J=Z[0];if(Array.isArray(J))return J.map((Q)=>no(Q)||"").join(",");return no(J)};so.getLayerPath=yE0;var no=(Z)=>{if(typeof Z==="string")return Z;if(Z instanceof RegExp||typeof Z==="number")return Z.toString();return};function ao(Z){let Q=(Array.isArray(Z[k5._LAYERS_STORE_PROPERTY])?Z[k5._LAYERS_STORE_PROPERTY]:[]).filter(($)=>$!=="/"&&$!=="/*");if(Q.length===1&&Q[0]==="*")return"*";return Q.join("").replace(/\/{2,}/g,"/")}so.getConstructedRoute=ao;function SE0(Z){let J=Array.isArray(Z[k5._LAYERS_STORE_PROPERTY])?Z[k5._LAYERS_STORE_PROPERTY]:[];if(J.length===0)return;if(J.every((X)=>X==="/"))return Z.originalUrl==="/"?"/":void 0;let Q=ao(Z);if(Q==="*")return Q;if(Q.includes("/")&&(Q.includes(",")||Q.includes("\\")||Q.includes("*")||Q.includes("[")))return Q;let $=Q.startsWith("/")?Q:`/${Q}`;return $.length>0&&(Z.originalUrl===$||Z.originalUrl.startsWith($)||_E0($))?$:void 0}so.getActualMatchedRoute=SE0;function _E0(Z){return Z.includes(":")||Z.includes("*")}});var Jn=j((eo)=>{Object.defineProperty(eo,"__esModule",{value:!0});eo.PACKAGE_NAME=eo.PACKAGE_VERSION=void 0;eo.PACKAGE_VERSION="0.61.0";eo.PACKAGE_NAME="@opentelemetry/instrumentation-express"});var Gn=j((Kn)=>{Object.defineProperty(Kn,"__esModule",{value:!0});Kn.ExpressInstrumentation=void 0;var Qn=R0(),y9=I(),$n=mK(),Yn=uK(),J8=to(),Xn=Jn(),AJ=n(),mE0=Y0(),lK=qw();class Wn extends AJ.InstrumentationBase{constructor(Z={}){super(Xn.PACKAGE_NAME,Xn.PACKAGE_VERSION,Z)}init(){return[new AJ.InstrumentationNodeModuleDefinition("express",[">=4.0.0 <6"],(Z)=>{let J=typeof Z?.Router?.prototype?.route==="function",Q=J?Z.Router.prototype:Z.Router;if((0,AJ.isWrapped)(Q.route))this._unwrap(Q,"route");if(this._wrap(Q,"route",this._getRoutePatch()),(0,AJ.isWrapped)(Q.use))this._unwrap(Q,"use");if(this._wrap(Q,"use",this._getRouterUsePatch()),(0,AJ.isWrapped)(Z.application.use))this._unwrap(Z.application,"use");return this._wrap(Z.application,"use",this._getAppUsePatch(J)),Z},(Z)=>{if(Z===void 0)return;let Q=typeof Z?.Router?.prototype?.route==="function"?Z.Router.prototype:Z.Router;this._unwrap(Q,"route"),this._unwrap(Q,"use"),this._unwrap(Z.application,"use")})]}_getRoutePatch(){let Z=this;return function(J){return function(...$){let Y=J.apply(this,$),X=this.stack[this.stack.length-1];return Z._applyPatch(X,(0,J8.getLayerPath)($)),Y}}}_getRouterUsePatch(){let Z=this;return function(J){return function(...$){let Y=J.apply(this,$),X=this.stack[this.stack.length-1];return Z._applyPatch(X,(0,J8.getLayerPath)($)),Y}}}_getAppUsePatch(Z){let J=this;return function(Q){return function(...Y){let X=Z?this.router:this._router,W=Q.apply(this,Y);if(X){let K=X.stack[X.stack.length-1];J._applyPatch(K,(0,J8.getLayerPath)(Y))}return W}}}_applyPatch(Z,J){let Q=this;if(Z[lK.kLayerPatched]===!0)return;Z[lK.kLayerPatched]=!0,this._wrap(Z,"handle",($)=>{if($.length===4)return $;let Y=function(X,W){let{isLayerPathStored:K}=(0,J8.storeLayerPath)(X,J),z=(0,J8.getConstructedRoute)(X),G=(0,J8.getActualMatchedRoute)(X),H={[mE0.ATTR_HTTP_ROUTE]:G},B=(0,J8.getLayerMetadata)(z,Z,J),V=B.attributes[Yn.AttributeNames.EXPRESS_TYPE],F=(0,Qn.getRPCMetadata)(y9.context.active());if(F?.type===Qn.RPCType.HTTP)F.route=G;if((0,J8.isLayerIgnored)(B.name,V,Q.getConfig())){if(V===$n.ExpressLayerType.MIDDLEWARE)X[lK._LAYERS_STORE_PROPERTY].pop();return $.apply(this,arguments)}if(y9.trace.getSpan(y9.context.active())===void 0)return $.apply(this,arguments);let U=Q._getSpanName({request:X,layerType:V,route:z},B.name),w=Q.tracer.startSpan(U,{attributes:Object.assign(H,B.attributes)}),D=y9.context.active(),L=y9.trace.setSpan(D,w),{requestHook:C}=Q.getConfig();if(C)(0,AJ.safeExecuteInTheMiddle)(()=>C(w,{request:X,layerType:V,route:z}),(l)=>{if(l)y9.diag.error("express instrumentation: request hook failed",l)},!0);let R=!1;if(B.attributes[Yn.AttributeNames.EXPRESS_TYPE]===$n.ExpressLayerType.ROUTER)w.end(),R=!0,L=D;let T=()=>{if(R===!1)R=!0,w.end()},_=Array.from(arguments),m=_.findIndex((l)=>typeof l==="function");if(m>=0)arguments[m]=function(){let l=arguments[0],y0=![void 0,null,"route","router"].includes(l);if(!R&&y0){let[c9,m9]=(0,J8.asErrorAndMessage)(l);w.recordException(c9),w.setStatus({code:y9.SpanStatusCode.ERROR,message:m9})}if(R===!1)R=!0,X.res?.removeListener("finish",T),w.end();if(!(X.route&&y0)&&K)X[lK._LAYERS_STORE_PROPERTY].pop();let $6=_[m];return y9.context.bind(D,$6).apply(this,arguments)};try{return y9.context.bind(L,$).apply(this,arguments)}catch(l){let[y0,$6]=(0,J8.asErrorAndMessage)(l);throw w.recordException(y0),w.setStatus({code:y9.SpanStatusCode.ERROR,message:$6}),l}finally{if(!R)W.once("finish",T)}};for(let X in $)Object.defineProperty(Y,X,{get(){return $[X]},set(W){$[X]=W}});return Y})}_getSpanName(Z,J){let{spanNameHook:Q}=this.getConfig();if(!(Q instanceof Function))return J;try{return Q(Z,J)??J}catch($){return y9.diag.error("express instrumentation: error calling span name rewrite hook",$),J}}}Kn.ExpressInstrumentation=Wn});var Hn=j((F$)=>{Object.defineProperty(F$,"__esModule",{value:!0});F$.AttributeNames=F$.ExpressLayerType=F$.ExpressInstrumentation=void 0;var uE0=Gn();Object.defineProperty(F$,"ExpressInstrumentation",{enumerable:!0,get:function(){return uE0.ExpressInstrumentation}});var lE0=mK();Object.defineProperty(F$,"ExpressLayerType",{enumerable:!0,get:function(){return lE0.ExpressLayerType}});var pE0=uK();Object.defineProperty(F$,"AttributeNames",{enumerable:!0,get:function(){return pE0.AttributeNames}})});var e0;var Z7=q(()=>{e0=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__});function oE0(Z){q0(Z,"auto.http.otel.express");let J=v(Z).data,Q=J["express.type"];if(Q)Z.setAttribute(g,`${Q}.express`);let $=J["express.name"];if(typeof $==="string")Z.updateName($)}function nE0(Z,J){if(x()===X6())return e0&&O.warn("Isolation scope is still default isolation scope - skipping setting transactionName"),J;if(Z.layerType==="request_handler"){let Q=Z.request,$=Q.method?Q.method.toUpperCase():"GET";x().setTransactionName(`${$} ${Z.route}`)}return J}function pK(Z){return function(Q,$,Y,X){let W=TZ($);if(x().setSDKProcessingMetadata({normalizedRequest:W}),(Z?.shouldHandleError||tE0)(Q)){let z=h(Q,{mechanism:{type:"auto.middleware.express",handled:!1}});Y.sentry=z}X(Q)}}function sE0(){return function(J,Q,$){let Y=TZ(J);x().setSDKProcessingMetadata({normalizedRequest:Y}),$()}}function Dw(Z,J){Z.use(sE0()),Z.use(pK(J)),E9(Z.use,"express")}function rE0(Z){let J=Z.status||Z.statusCode||Z.status_code||Z.output?.statusCode;return J?parseInt(J,10):500}function tE0(Z){return rE0(Z)>=500}var Bn,Vn="Express",Fn,aE0=()=>{return{name:Vn,setupOnce(){Fn()}}},U$;var Ow=q(()=>{N();X0();Z7();Bn=A(Hn(),1);Fn=S(Vn,()=>new Bn.ExpressInstrumentation({requestHook:(Z)=>oE0(Z),spanNameHook:(Z,J)=>nE0(Z,J)})),U$=P(aE0)});var qn=j((Un)=>{Object.defineProperty(Un,"__esModule",{value:!0});Un.SeverityNumber=void 0;var eE0;(function(Z){Z[Z.UNSPECIFIED=0]="UNSPECIFIED",Z[Z.TRACE=1]="TRACE",Z[Z.TRACE2=2]="TRACE2",Z[Z.TRACE3=3]="TRACE3",Z[Z.TRACE4=4]="TRACE4",Z[Z.DEBUG=5]="DEBUG",Z[Z.DEBUG2=6]="DEBUG2",Z[Z.DEBUG3=7]="DEBUG3",Z[Z.DEBUG4=8]="DEBUG4",Z[Z.INFO=9]="INFO",Z[Z.INFO2=10]="INFO2",Z[Z.INFO3=11]="INFO3",Z[Z.INFO4=12]="INFO4",Z[Z.WARN=13]="WARN",Z[Z.WARN2=14]="WARN2",Z[Z.WARN3=15]="WARN3",Z[Z.WARN4=16]="WARN4",Z[Z.ERROR=17]="ERROR",Z[Z.ERROR2=18]="ERROR2",Z[Z.ERROR3=19]="ERROR3",Z[Z.ERROR4=20]="ERROR4",Z[Z.FATAL=21]="FATAL",Z[Z.FATAL2=22]="FATAL2",Z[Z.FATAL3=23]="FATAL3",Z[Z.FATAL4=24]="FATAL4"})(eE0=Un.SeverityNumber||(Un.SeverityNumber={}))});var iK=j((wn)=>{Object.defineProperty(wn,"__esModule",{value:!0});wn.NOOP_LOGGER=wn.NoopLogger=void 0;class Cw{emit(Z){}}wn.NoopLogger=Cw;wn.NOOP_LOGGER=new Cw});var Ln=j((Dn)=>{Object.defineProperty(Dn,"__esModule",{value:!0});Dn.API_BACKWARDS_COMPATIBILITY_VERSION=Dn.makeGetter=Dn._global=Dn.GLOBAL_LOGS_API_KEY=void 0;Dn.GLOBAL_LOGS_API_KEY=Symbol.for("io.opentelemetry.js.api.logs");Dn._global=globalThis;function Jf0(Z,J,Q){return($)=>$===Z?J:Q}Dn.makeGetter=Jf0;Dn.API_BACKWARDS_COMPATIBILITY_VERSION=1});var Mw=j((Cn)=>{Object.defineProperty(Cn,"__esModule",{value:!0});Cn.NOOP_LOGGER_PROVIDER=Cn.NoopLoggerProvider=void 0;var Xf0=iK();class Pw{getLogger(Z,J,Q){return new Xf0.NoopLogger}}Cn.NoopLoggerProvider=Pw;Cn.NOOP_LOGGER_PROVIDER=new Pw});var Nn=j((Rn)=>{Object.defineProperty(Rn,"__esModule",{value:!0});Rn.ProxyLogger=void 0;var Kf0=iK();class Mn{constructor(Z,J,Q,$){this._provider=Z,this.name=J,this.version=Q,this.options=$}emit(Z){this._getLogger().emit(Z)}_getLogger(){if(this._delegate)return this._delegate;let Z=this._provider._getDelegateLogger(this.name,this.version,this.options);if(!Z)return Kf0.NOOP_LOGGER;return this._delegate=Z,this._delegate}}Rn.ProxyLogger=Mn});var En=j((In)=>{Object.defineProperty(In,"__esModule",{value:!0});In.ProxyLoggerProvider=void 0;var zf0=Mw(),Gf0=Nn();class An{getLogger(Z,J,Q){var $;return($=this._getDelegateLogger(Z,J,Q))!==null&&$!==void 0?$:new Gf0.ProxyLogger(this,Z,J,Q)}_getDelegate(){var Z;return(Z=this._delegate)!==null&&Z!==void 0?Z:zf0.NOOP_LOGGER_PROVIDER}_setDelegate(Z){this._delegate=Z}_getDelegateLogger(Z,J,Q){var $;return($=this._delegate)===null||$===void 0?void 0:$.getLogger(Z,J,Q)}}In.ProxyLoggerProvider=An});var _n=j((yn)=>{Object.defineProperty(yn,"__esModule",{value:!0});yn.LogsAPI=void 0;var J9=Ln(),Hf0=Mw(),fn=En();class Rw{constructor(){this._proxyLoggerProvider=new fn.ProxyLoggerProvider}static getInstance(){if(!this._instance)this._instance=new Rw;return this._instance}setGlobalLoggerProvider(Z){if(J9._global[J9.GLOBAL_LOGS_API_KEY])return this.getLoggerProvider();return J9._global[J9.GLOBAL_LOGS_API_KEY]=(0,J9.makeGetter)(J9.API_BACKWARDS_COMPATIBILITY_VERSION,Z,Hf0.NOOP_LOGGER_PROVIDER),this._proxyLoggerProvider._setDelegate(Z),Z}getLoggerProvider(){var Z,J;return(J=(Z=J9._global[J9.GLOBAL_LOGS_API_KEY])===null||Z===void 0?void 0:Z.call(J9._global,J9.API_BACKWARDS_COMPATIBILITY_VERSION))!==null&&J!==void 0?J:this._proxyLoggerProvider}getLogger(Z,J,Q){return this.getLoggerProvider().getLogger(Z,J,Q)}disable(){delete J9._global[J9.GLOBAL_LOGS_API_KEY],this._proxyLoggerProvider=new fn.ProxyLoggerProvider}}yn.LogsAPI=Rw});var kw=j((q$)=>{Object.defineProperty(q$,"__esModule",{value:!0});q$.logs=q$.NoopLogger=q$.NOOP_LOGGER=q$.SeverityNumber=void 0;var Bf0=qn();Object.defineProperty(q$,"SeverityNumber",{enumerable:!0,get:function(){return Bf0.SeverityNumber}});var hn=iK();Object.defineProperty(q$,"NOOP_LOGGER",{enumerable:!0,get:function(){return hn.NOOP_LOGGER}});Object.defineProperty(q$,"NoopLogger",{enumerable:!0,get:function(){return hn.NoopLogger}});var Vf0=_n();q$.logs=Vf0.LogsAPI.getInstance()});var gn=j((vn)=>{Object.defineProperty(vn,"__esModule",{value:!0});vn.disableInstrumentations=vn.enableInstrumentations=void 0;function Ff0(Z,J,Q,$){for(let Y=0,X=Z.length;Y<X;Y++){let W=Z[Y];if(J)W.setTracerProvider(J);if(Q)W.setMeterProvider(Q);if($&&W.setLoggerProvider)W.setLoggerProvider($);if(!W.getConfig().enabled)W.enable()}}vn.enableInstrumentations=Ff0;function Uf0(Z){Z.forEach((J)=>J.disable())}vn.disableInstrumentations=Uf0});var ln=j((mn)=>{Object.defineProperty(mn,"__esModule",{value:!0});mn.registerInstrumentations=void 0;var dn=I(),wf0=kw(),cn=gn();function jf0(Z){let J=Z.tracerProvider||dn.trace.getTracerProvider(),Q=Z.meterProvider||dn.metrics.getMeterProvider(),$=Z.loggerProvider||wf0.logs.getLoggerProvider(),Y=Z.instrumentations?.flat()??[];return(0,cn.enableInstrumentations)(Y,J,Q,$),()=>{(0,cn.disableInstrumentations)(Y)}}mn.registerInstrumentations=jf0});var Qa=j((Za)=>{Object.defineProperty(Za,"__esModule",{value:!0});Za.satisfies=void 0;var Tw=I(),sn=/^(?:v)?(?<version>(?<major>0|[1-9]\d*)\.(?<minor>0|[1-9]\d*)\.(?<patch>0|[1-9]\d*))(?:-(?<prerelease>(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+(?<build>[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/,Df0=/^(?<op><|>|=|==|<=|>=|~|\^|~>)?\s*(?:v)?(?<version>(?<major>x|X|\*|0|[1-9]\d*)(?:\.(?<minor>x|X|\*|0|[1-9]\d*))?(?:\.(?<patch>x|X|\*|0|[1-9]\d*))?)(?:-(?<prerelease>(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+(?<build>[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/,Of0={">":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1],"!=":[-1,1]};function Lf0(Z,J,Q){if(!Cf0(Z))return Tw.diag.error(`Invalid version: ${Z}`),!1;if(!J)return!0;J=J.replace(/([<>=~^]+)\s+/g,"$1");let $=kf0(Z);if(!$)return!1;let Y=[],X=rn($,J,Y,Q);if(X&&!Q?.includePrerelease)return Mf0($,Y);return X}Za.satisfies=Lf0;function Cf0(Z){return typeof Z==="string"&&sn.test(Z)}function rn(Z,J,Q,$){if(J.includes("||")){let Y=J.trim().split("||");for(let X of Y)if(Nw(Z,X,Q,$))return!0;return!1}else if(J.includes(" - "))J=if0(J,$);else if(J.includes(" ")){let Y=J.trim().replace(/\s{2,}/g," ").split(" ");for(let X of Y)if(!Nw(Z,X,Q,$))return!1;return!0}return Nw(Z,J,Q,$)}function Nw(Z,J,Q,$){if(J=Rf0(J,$),J.includes(" "))return rn(Z,J,Q,$);else{let Y=Nf0(J);return Q.push(Y),Pf0(Z,Y)}}function Pf0(Z,J){if(J.invalid)return!1;if(!J.version||Iw(J.version))return!0;let Q=on(Z.versionSegments||[],J.versionSegments||[]);if(Q===0){let $=Z.prereleaseSegments||[],Y=J.prereleaseSegments||[];if(!$.length&&!Y.length)Q=0;else if(!$.length&&Y.length)Q=1;else if($.length&&!Y.length)Q=-1;else Q=on($,Y)}return Of0[J.op]?.includes(Q)}function Mf0(Z,J){if(Z.prerelease)return J.some((Q)=>Q.prerelease&&Q.version===Z.version);return!0}function Rf0(Z,J){return Z=Z.trim(),Z=lf0(Z,J),Z=uf0(Z),Z=pf0(Z,J),Z=Z.trim(),Z}function s1(Z){return!Z||Z.toLowerCase()==="x"||Z==="*"}function kf0(Z){let J=Z.match(sn);if(!J){Tw.diag.error(`Invalid version: ${Z}`);return}let Q=J.groups.version,$=J.groups.prerelease,Y=J.groups.build,X=Q.split("."),W=$?.split(".");return{op:void 0,version:Q,versionSegments:X,versionSegmentCount:X.length,prerelease:$,prereleaseSegments:W,prereleaseSegmentCount:W?W.length:0,build:Y}}function Nf0(Z){if(!Z)return{};let J=Z.match(Df0);if(!J)return Tw.diag.error(`Invalid range: ${Z}`),{invalid:!0};let Q=J.groups.op,$=J.groups.version,Y=J.groups.prerelease,X=J.groups.build,W=$.split("."),K=Y?.split(".");if(Q==="==")Q="=";return{op:Q||"=",version:$,versionSegments:W,versionSegmentCount:W.length,prerelease:Y,prereleaseSegments:K,prereleaseSegmentCount:K?K.length:0,build:X}}function Iw(Z){return Z==="*"||Z==="x"||Z==="X"}function pn(Z){let J=parseInt(Z,10);return isNaN(J)?Z:J}function Af0(Z,J){if(typeof Z===typeof J)if(typeof Z==="number")return[Z,J];else if(typeof Z==="string")return[Z,J];else throw Error("Version segments can only be strings or numbers");else return[String(Z),String(J)]}function If0(Z,J){if(Iw(Z)||Iw(J))return 0;let[Q,$]=Af0(pn(Z),pn(J));if(Q>$)return 1;else if(Q<$)return-1;return 0}function on(Z,J){for(let Q=0;Q<Math.max(Z.length,J.length);Q++){let $=If0(Z[Q]||"0",J[Q]||"0");if($!==0)return $}return 0}var tn="[a-zA-Z0-9-]",en="0|[1-9]\\d*",Tf0=`\\d*[a-zA-Z-]${tn}*`,Ef0="((?:<|>)?=?)",nn=`(?:${en}|${Tf0})`,ff0=`(?:-(${nn}(?:\\.${nn})*))`,an=`${tn}+`,yf0=`(?:\\+(${an}(?:\\.${an})*))`,Aw=`${en}|x|X|\\*`,w$=`[v=\\s]*(${Aw})(?:\\.(${Aw})(?:\\.(${Aw})(?:${ff0})?${yf0}?)?)?`,Sf0=`^${Ef0}\\s*${w$}$`,_f0=new RegExp(Sf0),hf0=`^\\s*(${w$})\\s+-\\s+(${w$})\\s*$`,bf0=new RegExp(hf0),vf0="(?:~>?)",xf0=`^${vf0}${w$}$`,gf0=new RegExp(xf0),df0="(?:\\^)",cf0=`^${df0}${w$}$`,mf0=new RegExp(cf0);function uf0(Z){let J=gf0;return Z.replace(J,(Q,$,Y,X,W)=>{let K;if(s1($))K="";else if(s1(Y))K=`>=${$}.0.0 <${+$+1}.0.0-0`;else if(s1(X))K=`>=${$}.${Y}.0 <${$}.${+Y+1}.0-0`;else if(W)K=`>=${$}.${Y}.${X}-${W} <${$}.${+Y+1}.0-0`;else K=`>=${$}.${Y}.${X} <${$}.${+Y+1}.0-0`;return K})}function lf0(Z,J){let Q=mf0,$=J?.includePrerelease?"-0":"";return Z.replace(Q,(Y,X,W,K,z)=>{let G;if(s1(X))G="";else if(s1(W))G=`>=${X}.0.0${$} <${+X+1}.0.0-0`;else if(s1(K))if(X==="0")G=`>=${X}.${W}.0${$} <${X}.${+W+1}.0-0`;else G=`>=${X}.${W}.0${$} <${+X+1}.0.0-0`;else if(z)if(X==="0")if(W==="0")G=`>=${X}.${W}.${K}-${z} <${X}.${W}.${+K+1}-0`;else G=`>=${X}.${W}.${K}-${z} <${X}.${+W+1}.0-0`;else G=`>=${X}.${W}.${K}-${z} <${+X+1}.0.0-0`;else if(X==="0")if(W==="0")G=`>=${X}.${W}.${K}${$} <${X}.${W}.${+K+1}-0`;else G=`>=${X}.${W}.${K}${$} <${X}.${+W+1}.0-0`;else G=`>=${X}.${W}.${K} <${+X+1}.0.0-0`;return G})}function pf0(Z,J){let Q=_f0;return Z.replace(Q,($,Y,X,W,K,z)=>{let G=s1(X),H=G||s1(W),B=H||s1(K),V=B;if(Y==="="&&V)Y="";if(z=J?.includePrerelease?"-0":"",G)if(Y===">"||Y==="<")$="<0.0.0-0";else $="*";else if(Y&&V){if(H)W=0;if(K=0,Y===">")if(Y=">=",H)X=+X+1,W=0,K=0;else W=+W+1,K=0;else if(Y==="<=")if(Y="<",H)X=+X+1;else W=+W+1;if(Y==="<")z="-0";$=`${Y+X}.${W}.${K}${z}`}else if(H)$=`>=${X}.0.0${z} <${+X+1}.0.0-0`;else if(B)$=`>=${X}.${W}.0${z} <${X}.${+W+1}.0-0`;return $})}function if0(Z,J){let Q=bf0;return Z.replace(Q,($,Y,X,W,K,z,G,H,B,V,F,U)=>{if(s1(X))Y="";else if(s1(W))Y=`>=${X}.0.0${J?.includePrerelease?"-0":""}`;else if(s1(K))Y=`>=${X}.${W}.0${J?.includePrerelease?"-0":""}`;else if(z)Y=`>=${Y}`;else Y=`>=${Y}${J?.includePrerelease?"-0":""}`;if(s1(B))H="";else if(s1(V))H=`<${+B+1}.0.0-0`;else if(s1(F))H=`<${B}.${+V+1}.0-0`;else if(U)H=`<=${B}.${V}.${F}-${U}`;else if(J?.includePrerelease)H=`<${B}.${V}.${+F+1}-0`;else H=`<=${H}`;return`${Y} ${H}`.trim()})}});var Sw=j(($a)=>{Object.defineProperty($a,"__esModule",{value:!0});$a.massUnwrap=$a.unwrap=$a.massWrap=$a.wrap=void 0;var r1=console.error.bind(console);function j$(Z,J,Q){let $=!!Z[J]&&Object.prototype.propertyIsEnumerable.call(Z,J);Object.defineProperty(Z,J,{configurable:!0,enumerable:$,writable:!0,value:Q})}var of0=(Z,J,Q)=>{if(!Z||!Z[J]){r1("no original function "+String(J)+" to wrap");return}if(!Q){r1("no wrapper function"),r1(Error().stack);return}let $=Z[J];if(typeof $!=="function"||typeof Q!=="function"){r1("original object and wrapper must be functions");return}let Y=Q($,J);return j$(Y,"__original",$),j$(Y,"__unwrap",()=>{if(Z[J]===Y)j$(Z,J,$)}),j$(Y,"__wrapped",!0),j$(Z,J,Y),Y};$a.wrap=of0;var nf0=(Z,J,Q)=>{if(!Z){r1("must provide one or more modules to patch"),r1(Error().stack);return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){r1("must provide one or more functions to wrap on modules");return}Z.forEach(($)=>{J.forEach((Y)=>{$a.wrap($,Y,Q)})})};$a.massWrap=nf0;var af0=(Z,J)=>{if(!Z||!Z[J]){r1("no function to unwrap."),r1(Error().stack);return}let Q=Z[J];if(!Q.__unwrap)r1("no original to unwrap to -- has "+String(J)+" already been unwrapped?");else{Q.__unwrap();return}};$a.unwrap=af0;var sf0=(Z,J)=>{if(!Z){r1("must provide one or more modules to patch"),r1(Error().stack);return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){r1("must provide one or more functions to unwrap on modules");return}Z.forEach((Q)=>{J.forEach(($)=>{$a.unwrap(Q,$)})})};$a.massUnwrap=sf0;function D$(Z){if(Z&&Z.logger)if(typeof Z.logger!=="function")r1("new logger isn't a function, not replacing");else r1=Z.logger}$a.default=D$;D$.wrap=$a.wrap;D$.massWrap=$a.massWrap;D$.unwrap=$a.unwrap;D$.massUnwrap=$a.massUnwrap});var za=j((Wa)=>{Object.defineProperty(Wa,"__esModule",{value:!0});Wa.InstrumentationAbstract=void 0;var _w=I(),tf0=kw(),oK=Sw();class Xa{_config={};_tracer;_meter;_logger;_diag;instrumentationName;instrumentationVersion;constructor(Z,J,Q){this.instrumentationName=Z,this.instrumentationVersion=J,this.setConfig(Q),this._diag=_w.diag.createComponentLogger({namespace:Z}),this._tracer=_w.trace.getTracer(Z,J),this._meter=_w.metrics.getMeter(Z,J),this._logger=tf0.logs.getLogger(Z,J),this._updateMetricInstruments()}_wrap=oK.wrap;_unwrap=oK.unwrap;_massWrap=oK.massWrap;_massUnwrap=oK.massUnwrap;get meter(){return this._meter}setMeterProvider(Z){this._meter=Z.getMeter(this.instrumentationName,this.instrumentationVersion),this._updateMetricInstruments()}get logger(){return this._logger}setLoggerProvider(Z){this._logger=Z.getLogger(this.instrumentationName,this.instrumentationVersion)}getModuleDefinitions(){let Z=this.init()??[];if(!Array.isArray(Z))return[Z];return Z}_updateMetricInstruments(){return}getConfig(){return this._config}setConfig(Z){this._config={enabled:!0,...Z}}setTracerProvider(Z){this._tracer=Z.getTracer(this.instrumentationName,this.instrumentationVersion)}get tracer(){return this._tracer}_runSpanCustomizationHook(Z,J,Q,$){if(!Z)return;try{Z(Q,$)}catch(Y){this._diag.error("Error running span customization hook due to exception in handler",{triggerName:J},Y)}}}Wa.InstrumentationAbstract=Xa});var Va=j((Ha)=>{Object.defineProperty(Ha,"__esModule",{value:!0});Ha.ModuleNameTrie=Ha.ModuleNameSeparator=void 0;Ha.ModuleNameSeparator="/";class hw{hooks=[];children=new Map}class Ga{_trie=new hw;_counter=0;insert(Z){let J=this._trie;for(let Q of Z.moduleName.split(Ha.ModuleNameSeparator)){let $=J.children.get(Q);if(!$)$=new hw,J.children.set(Q,$);J=$}J.hooks.push({hook:Z,insertedId:this._counter++})}search(Z,{maintainInsertionOrder:J,fullOnly:Q}={}){let $=this._trie,Y=[],X=!0;for(let W of Z.split(Ha.ModuleNameSeparator)){let K=$.children.get(W);if(!K){X=!1;break}if(!Q)Y.push(...K.hooks);$=K}if(Q&&X)Y.push(...$.hooks);if(Y.length===0)return[];if(Y.length===1)return[Y[0].hook];if(J)Y.sort((W,K)=>W.insertedId-K.insertedId);return Y.map(({hook:W})=>W)}}Ha.ModuleNameTrie=Ga});var wa=j((Ua)=>{Object.defineProperty(Ua,"__esModule",{value:!0});Ua.RequireInTheMiddleSingleton=void 0;var ef0=_7(),Fa=E("path"),vw=Va(),Zy0=["afterEach","after","beforeEach","before","describe","it"].every((Z)=>{return typeof global[Z]==="function"});class nK{_moduleNameTrie=new vw.ModuleNameTrie;static _instance;constructor(){this._initialize()}_initialize(){new ef0.Hook(null,{internals:!0},(Z,J,Q)=>{let $=Jy0(J),Y=this._moduleNameTrie.search($,{maintainInsertionOrder:!0,fullOnly:Q===void 0});for(let{onRequire:X}of Y)Z=X(Z,J,Q);return Z})}register(Z,J){let Q={moduleName:Z,onRequire:J};return this._moduleNameTrie.insert(Q),Q}static getInstance(){if(Zy0)return new nK;return this._instance=this._instance??new nK}}Ua.RequireInTheMiddleSingleton=nK;function Jy0(Z){return Fa.sep!==vw.ModuleNameSeparator?Z.split(Fa.sep).join(vw.ModuleNameSeparator):Z}});var Ca=j((Yy0)=>{var ja=[],xw=new WeakMap,Da=new WeakMap,Oa=new Map,La=[],Qy0={set(Z,J,Q){let $=xw.get(Z),Y=$&&$[J];if(typeof Y==="function")return Y(Q);return!0},get(Z,J){if(J===Symbol.toStringTag)return"Module";let Q=Da.get(Z)[J];if(typeof Q==="function")return Q()},defineProperty(Z,J,Q){if(!("value"in Q))throw Error("Getters/setters are not supported for exports property descriptors.");let $=xw.get(Z),Y=$&&$[J];if(typeof Y==="function")return Y(Q.value);return!0}};function $y0(Z,J,Q,$,Y){Oa.set(Z,Y),xw.set(J,Q),Da.set(J,$);let X=new Proxy(J,Qy0);ja.forEach((W)=>W(Z,X,Y)),La.push([Z,X,Y])}Yy0.register=$y0;Yy0.importHooks=ja;Yy0.specifiers=Oa;Yy0.toHook=La});var ka=j((nF1,TJ)=>{var Pa=E("path"),Gy0=AQ(),{fileURLToPath:Hy0}=E("url"),{MessageChannel:By0}=E("worker_threads"),{isBuiltin:gw}=E("module");if(!gw)gw=()=>!0;var{importHooks:dw,specifiers:Vy0,toHook:Fy0}=Ca();function Ma(Z){dw.push(Z),Fy0.forEach(([J,Q,$])=>Z(J,Q,$))}function Ra(Z){let J=dw.indexOf(Z);if(J>-1)dw.splice(J,1)}function IJ(Z,J,Q,$){let Y=Z(J,Q,$);if(Y&&Y!==J){if("default"in J)J.default=Y}}var cw;function Uy0(){let{port1:Z,port2:J}=new By0,Q=0,$;cw=(K)=>{Q++,Z.postMessage(K)},Z.on("message",()=>{if(Q--,$&&Q<=0)$()}).unref();function Y(){let K=setInterval(()=>{},1000),z=new Promise((G)=>{$=G}).then(()=>{clearInterval(K)});if(Q===0)$();return z}let X=J;return{registerOptions:{data:{addHookMessagePort:X,include:[]},transferList:[X]},addHookMessagePort:X,waitForAllMessagesAcknowledged:Y}}function O$(Z,J,Q){if(this instanceof O$===!1)return new O$(Z,J,Q);if(typeof Z==="function")Q=Z,Z=null,J=null;else if(typeof J==="function")Q=J,J=null;let $=J?J.internals===!0:!1;if(cw&&Array.isArray(Z))cw(Z);this._iitmHook=(Y,X,W)=>{let K=Y,z=K.startsWith("node:"),G,H;if(z){let B=Y.slice(5);if(gw(B))Y=B}else if(K.startsWith("file://")){let B=Error.stackTraceLimit;Error.stackTraceLimit=0;try{G=Hy0(Y),Y=G}catch(V){}if(Error.stackTraceLimit=B,G){let V=Gy0(G);if(V)Y=V.name,H=V.basedir}}if(Z){for(let B of Z)if(G&&B===G)IJ(Q,X,G,void 0);else if(B===Y){if(!H)IJ(Q,X,Y,H);else if(H.endsWith(Vy0.get(K)))IJ(Q,X,Y,H);else if($){let V=Y+Pa.sep+Pa.relative(H,G);IJ(Q,X,V,H)}}else if(B===W)IJ(Q,X,W,H)}else IJ(Q,X,Y,H)},Ma(this._iitmHook)}O$.prototype.unhook=function(){Ra(this._iitmHook)};TJ.exports=O$;TJ.exports.Hook=O$;TJ.exports.addHook=Ma;TJ.exports.removeHook=Ra;TJ.exports.createAddHookMessageChannel=Uy0});var mw=j((Na)=>{Object.defineProperty(Na,"__esModule",{value:!0});Na.isWrapped=Na.safeExecuteInTheMiddleAsync=Na.safeExecuteInTheMiddle=void 0;function qy0(Z,J,Q){let $,Y;try{Y=Z()}catch(X){$=X}finally{if(J($,Y),$&&!Q)throw $;return Y}}Na.safeExecuteInTheMiddle=qy0;async function wy0(Z,J,Q){let $,Y;try{Y=await Z()}catch(X){$=X}finally{if(await J($,Y),$&&!Q)throw $;return Y}}Na.safeExecuteInTheMiddleAsync=wy0;function jy0(Z){return typeof Z==="function"&&typeof Z.__original==="function"&&typeof Z.__unwrap==="function"&&Z.__wrapped===!0}Na.isWrapped=jy0});var Sa=j((fa)=>{Object.defineProperty(fa,"__esModule",{value:!0});fa.InstrumentationBase=void 0;var L$=E("path"),Ia=E("util"),Ly0=Qa(),uw=Sw(),Cy0=za(),Py0=wa(),My0=ka(),C$=I(),Ry0=_7(),ky0=E("fs"),Ny0=mw();class Ea extends Cy0.InstrumentationAbstract{_modules;_hooks=[];_requireInTheMiddleSingleton=Py0.RequireInTheMiddleSingleton.getInstance();_enabled=!1;constructor(Z,J,Q){super(Z,J,Q);let $=this.init();if($&&!Array.isArray($))$=[$];if(this._modules=$||[],this._config.enabled)this.enable()}_wrap=(Z,J,Q)=>{if((0,Ny0.isWrapped)(Z[J]))this._unwrap(Z,J);if(!Ia.types.isProxy(Z))return(0,uw.wrap)(Z,J,Q);else{let $=(0,uw.wrap)(Object.assign({},Z),J,Q);return Object.defineProperty(Z,J,{value:$}),$}};_unwrap=(Z,J)=>{if(!Ia.types.isProxy(Z))return(0,uw.unwrap)(Z,J);else return Object.defineProperty(Z,J,{value:Z[J]})};_massWrap=(Z,J,Q)=>{if(!Z){C$.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){C$.diag.error("must provide one or more functions to wrap on modules");return}Z.forEach(($)=>{J.forEach((Y)=>{this._wrap($,Y,Q)})})};_massUnwrap=(Z,J)=>{if(!Z){C$.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){C$.diag.error("must provide one or more functions to wrap on modules");return}Z.forEach((Q)=>{J.forEach(($)=>{this._unwrap(Q,$)})})};_warnOnPreloadedModules(){this._modules.forEach((Z)=>{let{name:J}=Z;try{let Q=E.resolve(J);if(E.cache[Q])this._diag.warn(`Module ${J} has been loaded before ${this.instrumentationName} so it might not work, please initialize it before requiring ${J}`)}catch{}})}_extractPackageVersion(Z){try{let J=(0,ky0.readFileSync)(L$.join(Z,"package.json"),{encoding:"utf8"}),Q=JSON.parse(J).version;return typeof Q==="string"?Q:void 0}catch{C$.diag.warn("Failed extracting version",Z)}return}_onRequire(Z,J,Q,$){if(!$){if(typeof Z.patch==="function"){if(Z.moduleExports=J,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs core module on require hook",{module:Z.name}),Z.patch(J)}return J}let Y=this._extractPackageVersion($);if(Z.moduleVersion=Y,Z.name===Q){if(Ta(Z.supportedVersions,Y,Z.includePrerelease)){if(typeof Z.patch==="function"){if(Z.moduleExports=J,this._enabled)return this._diag.debug("Applying instrumentation patch for module on require hook",{module:Z.name,version:Z.moduleVersion,baseDir:$}),Z.patch(J,Z.moduleVersion)}}return J}let X=Z.files??[],W=L$.normalize(Q);return X.filter((z)=>z.name===W&&Ta(z.supportedVersions,Y,Z.includePrerelease)).reduce((z,G)=>{if(G.moduleExports=z,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs module file on require hook",{module:Z.name,version:Z.moduleVersion,fileName:G.name,baseDir:$}),G.patch(z,Z.moduleVersion);return z},J)}enable(){if(this._enabled)return;if(this._enabled=!0,this._hooks.length>0){for(let Z of this._modules){if(typeof Z.patch==="function"&&Z.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module on instrumentation enabled",{module:Z.name,version:Z.moduleVersion}),Z.patch(Z.moduleExports,Z.moduleVersion);for(let J of Z.files)if(J.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module file on instrumentation enabled",{module:Z.name,version:Z.moduleVersion,fileName:J.name}),J.patch(J.moduleExports,Z.moduleVersion)}return}this._warnOnPreloadedModules();for(let Z of this._modules){let J=(X,W,K)=>{if(!K&&L$.isAbsolute(W)){let z=L$.parse(W);W=z.name,K=z.dir}return this._onRequire(Z,X,W,K)},Q=(X,W,K)=>{return this._onRequire(Z,X,W,K)},$=L$.isAbsolute(Z.name)?new Ry0.Hook([Z.name],{internals:!0},Q):this._requireInTheMiddleSingleton.register(Z.name,Q);this._hooks.push($);let Y=new My0.Hook([Z.name],{internals:!0},J);this._hooks.push(Y)}}disable(){if(!this._enabled)return;this._enabled=!1;for(let Z of this._modules){if(typeof Z.unpatch==="function"&&Z.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module on instrumentation disabled",{module:Z.name,version:Z.moduleVersion}),Z.unpatch(Z.moduleExports,Z.moduleVersion);for(let J of Z.files)if(J.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module file on instrumentation disabled",{module:Z.name,version:Z.moduleVersion,fileName:J.name}),J.unpatch(J.moduleExports,Z.moduleVersion)}}isEnabled(){return this._enabled}}fa.InstrumentationBase=Ea;function Ta(Z,J,Q){if(typeof J>"u")return Z.includes("*");return Z.some(($)=>{return(0,Ly0.satisfies)(J,$,{includePrerelease:Q})})}});var _a=j((lw)=>{Object.defineProperty(lw,"__esModule",{value:!0});lw.normalize=void 0;var Ay0=E("path");Object.defineProperty(lw,"normalize",{enumerable:!0,get:function(){return Ay0.normalize}})});var ha=j((aK)=>{Object.defineProperty(aK,"__esModule",{value:!0});aK.normalize=aK.InstrumentationBase=void 0;var Ty0=Sa();Object.defineProperty(aK,"InstrumentationBase",{enumerable:!0,get:function(){return Ty0.InstrumentationBase}});var Ey0=_a();Object.defineProperty(aK,"normalize",{enumerable:!0,get:function(){return Ey0.normalize}})});var pw=j((sK)=>{Object.defineProperty(sK,"__esModule",{value:!0});sK.normalize=sK.InstrumentationBase=void 0;var ba=ha();Object.defineProperty(sK,"InstrumentationBase",{enumerable:!0,get:function(){return ba.InstrumentationBase}});Object.defineProperty(sK,"normalize",{enumerable:!0,get:function(){return ba.normalize}})});var da=j((xa)=>{Object.defineProperty(xa,"__esModule",{value:!0});xa.InstrumentationNodeModuleDefinition=void 0;class va{files;name;supportedVersions;patch;unpatch;constructor(Z,J,Q,$,Y){this.files=Y||[],this.name=Z,this.supportedVersions=J,this.patch=Q,this.unpatch=$}}xa.InstrumentationNodeModuleDefinition=va});var la=j((ma)=>{Object.defineProperty(ma,"__esModule",{value:!0});ma.InstrumentationNodeModuleFile=void 0;var Sy0=pw();class ca{name;supportedVersions;patch;unpatch;constructor(Z,J,Q,$){this.name=(0,Sy0.normalize)(Z),this.supportedVersions=J,this.patch=Q,this.unpatch=$}}ma.InstrumentationNodeModuleFile=ca});var na=j((ia)=>{Object.defineProperty(ia,"__esModule",{value:!0});ia.semconvStabilityFromStr=ia.SemconvStability=void 0;var rK;(function(Z){Z[Z.STABLE=1]="STABLE",Z[Z.OLD=2]="OLD",Z[Z.DUPLICATE=3]="DUPLICATE"})(rK=ia.SemconvStability||(ia.SemconvStability={}));function _y0(Z,J){let Q=rK.OLD,$=J?.split(",").map((Y)=>Y.trim()).filter((Y)=>Y!=="");for(let Y of $??[])if(Y.toLowerCase()===Z+"/dup"){Q=rK.DUPLICATE;break}else if(Y.toLowerCase()===Z)Q=rK.STABLE;return Q}ia.semconvStabilityFromStr=_y0});var sa=j((S9)=>{Object.defineProperty(S9,"__esModule",{value:!0});S9.semconvStabilityFromStr=S9.SemconvStability=S9.safeExecuteInTheMiddleAsync=S9.safeExecuteInTheMiddle=S9.isWrapped=S9.InstrumentationNodeModuleFile=S9.InstrumentationNodeModuleDefinition=S9.InstrumentationBase=S9.registerInstrumentations=void 0;var hy0=ln();Object.defineProperty(S9,"registerInstrumentations",{enumerable:!0,get:function(){return hy0.registerInstrumentations}});var by0=pw();Object.defineProperty(S9,"InstrumentationBase",{enumerable:!0,get:function(){return by0.InstrumentationBase}});var vy0=da();Object.defineProperty(S9,"InstrumentationNodeModuleDefinition",{enumerable:!0,get:function(){return vy0.InstrumentationNodeModuleDefinition}});var xy0=la();Object.defineProperty(S9,"InstrumentationNodeModuleFile",{enumerable:!0,get:function(){return xy0.InstrumentationNodeModuleFile}});var iw=mw();Object.defineProperty(S9,"isWrapped",{enumerable:!0,get:function(){return iw.isWrapped}});Object.defineProperty(S9,"safeExecuteInTheMiddle",{enumerable:!0,get:function(){return iw.safeExecuteInTheMiddle}});Object.defineProperty(S9,"safeExecuteInTheMiddleAsync",{enumerable:!0,get:function(){return iw.safeExecuteInTheMiddleAsync}});var aa=na();Object.defineProperty(S9,"SemconvStability",{enumerable:!0,get:function(){return aa.SemconvStability}});Object.defineProperty(S9,"semconvStabilityFromStr",{enumerable:!0,get:function(){return aa.semconvStabilityFromStr}})});var ra=j((qU1,dy0)=>{dy0.exports={name:"@fastify/otel",version:"0.17.1",description:"Official Fastify OpenTelemetry Instrumentation",main:"index.js",type:"commonjs",types:"types/index.d.ts",scripts:{lint:"eslint","lint:fix":"eslint --fix",test:"npm run test:all && npm run test:typescript","test:unit":"c8 --100 node --test","test:all":"npm run test:v4 && npm run test:v5","test:v4":"cross-env FASTIFY_VERSION=fastifyv4 npm run test:unit","test:v5":"cross-env FASTIFY_VERSION=fastify npm run test:unit","test:coverage":"c8 node --test && c8 report --reporter=html","test:typescript":"tsd"},repository:{type:"git",url:"git+https://github.com/fastify/otel.git"},keywords:["plugin","helper","fastify","instrumentation","otel","opentelemetry"],author:"Carlos Fuentes - @metcoder95 (https://metcoder.dev)",license:"MIT",bugs:{url:"https://github.com/fastify/otel/issues"},homepage:"https://github.com/fastify/otel#readme",funding:[{type:"github",url:"https://github.com/sponsors/fastify"},{type:"opencollective",url:"https://opencollective.com/fastify"}],devDependencies:{"@fastify/type-provider-typebox":"^6.1.0","@opentelemetry/context-async-hooks":"^2.0.0","@opentelemetry/contrib-test-utils":"^0.59.0","@opentelemetry/instrumentation-http":"^0.212.0","@opentelemetry/propagator-jaeger":"^2.0.0","@opentelemetry/sdk-trace-base":"^2.0.0","@opentelemetry/sdk-trace-node":"^2.2.0","@types/node":"^25.0.3",c8:"^11.0.0","cross-env":"^10.0.0",eslint:"^9.16.0",fastify:"^5.1.0","fastify-plugin":"^5.1.0",fastifyv4:"npm:fastify@^4.0.0",neostandard:"^0.12.0",tsd:"^0.33.0"},dependencies:{"@opentelemetry/core":"^2.0.0","@opentelemetry/instrumentation":"^0.212.0","@opentelemetry/semantic-conventions":"^1.28.0",minimatch:"^10.2.4"},peerDependencies:{"@opentelemetry/api":"^1.9.0"},tsd:{directory:"types"}}});var Zs=j((ea)=>{Object.defineProperty(ea,"__esModule",{value:!0});ea.range=ea.balanced=void 0;var cy0=(Z,J,Q)=>{let $=Z instanceof RegExp?ta(Z,Q):Z,Y=J instanceof RegExp?ta(J,Q):J,X=$!==null&&Y!=null&&ea.range($,Y,Q);return X&&{start:X[0],end:X[1],pre:Q.slice(0,X[0]),body:Q.slice(X[0]+$.length,X[1]),post:Q.slice(X[1]+Y.length)}};ea.balanced=cy0;var ta=(Z,J)=>{let Q=J.match(Z);return Q?Q[0]:null},my0=(Z,J,Q)=>{let $,Y,X,W=void 0,K,z=Q.indexOf(Z),G=Q.indexOf(J,z+1),H=z;if(z>=0&&G>0){if(Z===J)return[z,G];$=[],X=Q.length;while(H>=0&&!K){if(H===z)$.push(H),z=Q.indexOf(Z,H+1);else if($.length===1){let B=$.pop();if(B!==void 0)K=[B,G]}else{if(Y=$.pop(),Y!==void 0&&Y<X)X=Y,W=G;G=Q.indexOf(J,H+1)}H=z<G&&z>=0?z:G}if($.length&&W!==void 0)K=[X,W]}return K};ea.range=my0});var zs=j((Ks)=>{Object.defineProperty(Ks,"__esModule",{value:!0});Ks.EXPANSION_MAX=void 0;Ks.expand=QS0;var Js=Zs(),Qs="\x00SLASH"+Math.random()+"\x00",$s="\x00OPEN"+Math.random()+"\x00",aw="\x00CLOSE"+Math.random()+"\x00",Ys="\x00COMMA"+Math.random()+"\x00",Xs="\x00PERIOD"+Math.random()+"\x00",ly0=new RegExp(Qs,"g"),py0=new RegExp($s,"g"),iy0=new RegExp(aw,"g"),oy0=new RegExp(Ys,"g"),ny0=new RegExp(Xs,"g"),ay0=/\\\\/g,sy0=/\\{/g,ry0=/\\}/g,ty0=/\\,/g,ey0=/\\\./g;Ks.EXPANSION_MAX=1e5;function nw(Z){return!isNaN(Z)?parseInt(Z,10):Z.charCodeAt(0)}function ZS0(Z){return Z.replace(ay0,Qs).replace(sy0,$s).replace(ry0,aw).replace(ty0,Ys).replace(ey0,Xs)}function JS0(Z){return Z.replace(ly0,"\\").replace(py0,"{").replace(iy0,"}").replace(oy0,",").replace(ny0,".")}function Ws(Z){if(!Z)return[""];let J=[],Q=(0,Js.balanced)("{","}",Z);if(!Q)return Z.split(",");let{pre:$,body:Y,post:X}=Q,W=$.split(",");W[W.length-1]+="{"+Y+"}";let K=Ws(X);if(X.length)W[W.length-1]+=K.shift(),W.push.apply(W,K);return J.push.apply(J,W),J}function QS0(Z,J={}){if(!Z)return[];let{max:Q=Ks.EXPANSION_MAX}=J;if(Z.slice(0,2)==="{}")Z="\\{\\}"+Z.slice(2);return P$(ZS0(Z),Q,!0).map(JS0)}function $S0(Z){return"{"+Z+"}"}function YS0(Z){return/^-?0\d/.test(Z)}function XS0(Z,J){return Z<=J}function WS0(Z,J){return Z>=J}function P$(Z,J,Q){let $=[],Y=(0,Js.balanced)("{","}",Z);if(!Y)return[Z];let X=Y.pre,W=Y.post.length?P$(Y.post,J,!1):[""];if(/\$$/.test(Y.pre))for(let K=0;K<W.length&&K<J;K++){let z=X+"{"+Y.body+"}"+W[K];$.push(z)}else{let K=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(Y.body),z=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(Y.body),G=K||z,H=Y.body.indexOf(",")>=0;if(!G&&!H){if(Y.post.match(/,(?!,).*\}/))return Z=Y.pre+"{"+Y.body+aw+Y.post,P$(Z,J,!0);return[Z]}let B;if(G)B=Y.body.split(/\.\./);else if(B=Ws(Y.body),B.length===1&&B[0]!==void 0){if(B=P$(B[0],J,!1).map($S0),B.length===1)return W.map((F)=>Y.pre+B[0]+F)}let V;if(G&&B[0]!==void 0&&B[1]!==void 0){let F=nw(B[0]),U=nw(B[1]),w=Math.max(B[0].length,B[1].length),D=B.length===3&&B[2]!==void 0?Math.max(Math.abs(nw(B[2])),1):1,L=XS0;if(U<F)D*=-1,L=WS0;let R=B.some(YS0);V=[];for(let T=F;L(T,U);T+=D){let _;if(z){if(_=String.fromCharCode(T),_==="\\")_=""}else if(_=String(T),R){let m=w-_.length;if(m>0){let l=Array(m+1).join("0");if(T<0)_="-"+l+_.slice(1);else _=l+_}}V.push(_)}}else{V=[];for(let F=0;F<B.length;F++)V.push.apply(V,P$(B[F],J,!1))}for(let F=0;F<V.length;F++)for(let U=0;U<W.length&&$.length<J;U++){let w=X+V[F]+W[U];if(!Q||G||w)$.push(w)}}return $}});var Bs=j((Gs)=>{Object.defineProperty(Gs,"__esModule",{value:!0});Gs.assertValidPattern=void 0;var zS0=65536,GS0=(Z)=>{if(typeof Z!=="string")throw TypeError("invalid pattern");if(Z.length>zS0)throw TypeError("pattern is too long")};Gs.assertValidPattern=GS0});var qs=j((Fs)=>{Object.defineProperty(Fs,"__esModule",{value:!0});Fs.parseClass=void 0;var HS0={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},M$=(Z)=>Z.replace(/[[\]\\-]/g,"\\$&"),BS0=(Z)=>Z.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Vs=(Z)=>Z.join(""),VS0=(Z,J)=>{let Q=J;if(Z.charAt(Q)!=="[")throw Error("not in a brace expression");let $=[],Y=[],X=Q+1,W=!1,K=!1,z=!1,G=!1,H=Q,B="";Z:while(X<Z.length){let w=Z.charAt(X);if((w==="!"||w==="^")&&X===Q+1){G=!0,X++;continue}if(w==="]"&&W&&!z){H=X+1;break}if(W=!0,w==="\\"){if(!z){z=!0,X++;continue}}if(w==="["&&!z){for(let[D,[L,C,R]]of Object.entries(HS0))if(Z.startsWith(D,X)){if(B)return["$.",!1,Z.length-Q,!0];if(X+=D.length,R)Y.push(L);else $.push(L);K=K||C;continue Z}}if(z=!1,B){if(w>B)$.push(M$(B)+"-"+M$(w));else if(w===B)$.push(M$(w));B="",X++;continue}if(Z.startsWith("-]",X+1)){$.push(M$(w+"-")),X+=2;continue}if(Z.startsWith("-",X+1)){B=w,X+=2;continue}$.push(M$(w)),X++}if(H<X)return["",!1,0,!1];if(!$.length&&!Y.length)return["$.",!1,Z.length-Q,!0];if(Y.length===0&&$.length===1&&/^\\?.$/.test($[0])&&!G){let w=$[0].length===2?$[0].slice(-1):$[0];return[BS0(w),!1,H-Q,!1]}let V="["+(G?"^":"")+Vs($)+"]",F="["+(G?"":"^")+Vs(Y)+"]";return[$.length&&Y.length?"("+V+"|"+F+")":$.length?V:F,K,H-Q,!0]};Fs.parseClass=VS0});var tK=j((ws)=>{Object.defineProperty(ws,"__esModule",{value:!0});ws.unescape=void 0;var FS0=(Z,{windowsPathsNoEscape:J=!1,magicalBraces:Q=!0}={})=>{if(Q)return J?Z.replace(/\[([^\/\\])\]/g,"$1"):Z.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");return J?Z.replace(/\[([^\/\\{}])\]/g,"$1"):Z.replace(/((?!\\).|^)\[([^\/\\{}])\]/g,"$1$2").replace(/\\([^\/{}])/g,"$1")};ws.unescape=FS0});var Zj=j((Ps)=>{var H6;Object.defineProperty(Ps,"__esModule",{value:!0});Ps.AST=void 0;var US0=qs(),eK=tK(),qS0=new Set(["!","?","+","*","@"]),rw=(Z)=>qS0.has(Z),Ds=(Z)=>rw(Z.type),wS0=new Map([["!",["@"]],["?",["?","@"]],["@",["@"]],["*",["*","+","?","@"]],["+",["+","@"]]]),jS0=new Map([["!",["?"]],["@",["?"]],["+",["?","*"]]]),DS0=new Map([["!",["?","@"]],["?",["?","@"]],["@",["?","@"]],["*",["*","+","?","@"]],["+",["+","@","?","*"]]]),Os=new Map([["!",new Map([["!","@"]])],["?",new Map([["*","*"],["+","*"]])],["@",new Map([["!","!"],["?","?"],["@","@"],["*","*"],["+","+"]])],["+",new Map([["?","*"],["*","*"]])]]),OS0="(?!(?:^|/)\\.\\.?(?:$|/))",Zz="(?!\\.)",LS0=new Set(["[","."]),CS0=new Set(["..","."]),PS0=new Set("().*{}+?[]^$\\!"),MS0=(Z)=>Z.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),tw="[^/]",Ls=tw+"*?",Cs=tw+"+?",RS0=0;class ew{type;#J;#Q;#$=!1;#Z=[];#Y;#K;#G;#z=!1;#X;#W;#H=!1;id=++RS0;get depth(){return(this.#Y?.depth??-1)+1}[Symbol.for("nodejs.util.inspect.custom")](){return{"@@type":"AST",id:this.id,type:this.type,root:this.#J.id,parent:this.#Y?.id,depth:this.depth,partsLength:this.#Z.length,parts:this.#Z}}constructor(Z,J,Q={}){if(this.type=Z,Z)this.#Q=!0;if(this.#Y=J,this.#J=this.#Y?this.#Y.#J:this,this.#X=this.#J===this?Q:this.#J.#X,this.#G=this.#J===this?[]:this.#J.#G,Z==="!"&&!this.#J.#z)this.#G.push(this);this.#K=this.#Y?this.#Y.#Z.length:0}get hasMagic(){if(this.#Q!==void 0)return this.#Q;for(let Z of this.#Z){if(typeof Z==="string")continue;if(Z.type||Z.hasMagic)return this.#Q=!0}return this.#Q}toString(){if(this.#W!==void 0)return this.#W;if(!this.type)return this.#W=this.#Z.map((Z)=>String(Z)).join("");else return this.#W=this.type+"("+this.#Z.map((Z)=>String(Z)).join("|")+")"}#j(){if(this!==this.#J)throw Error("should only call on root");if(this.#z)return this;this.toString(),this.#z=!0;let Z;while(Z=this.#G.pop()){if(Z.type!=="!")continue;let J=Z,Q=J.#Y;while(Q){for(let $=J.#K+1;!Q.type&&$<Q.#Z.length;$++)for(let Y of Z.#Z){if(typeof Y==="string")throw Error("string part in extglob AST??");Y.copyIn(Q.#Z[$])}J=Q,Q=J.#Y}}return this}push(...Z){for(let J of Z){if(J==="")continue;if(typeof J!=="string"&&!(J instanceof H6&&J.#Y===this))throw Error("invalid part: "+J);this.#Z.push(J)}}toJSON(){let Z=this.type===null?this.#Z.slice().map((J)=>typeof J==="string"?J:J.toJSON()):[this.type,...this.#Z.map((J)=>J.toJSON())];if(this.isStart()&&!this.type)Z.unshift([]);if(this.isEnd()&&(this===this.#J||this.#J.#z&&this.#Y?.type==="!"))Z.push({});return Z}isStart(){if(this.#J===this)return!0;if(!this.#Y?.isStart())return!1;if(this.#K===0)return!0;let Z=this.#Y;for(let J=0;J<this.#K;J++){let Q=Z.#Z[J];if(!(Q instanceof H6&&Q.type==="!"))return!1}return!0}isEnd(){if(this.#J===this)return!0;if(this.#Y?.type==="!")return!0;if(!this.#Y?.isEnd())return!1;if(!this.type)return this.#Y?.isEnd();let Z=this.#Y?this.#Y.#Z.length:0;return this.#K===Z-1}copyIn(Z){if(typeof Z==="string")this.push(Z);else this.push(Z.clone(this))}clone(Z){let J=new H6(this.type,Z);for(let Q of this.#Z)J.copyIn(Q);return J}static#B(Z,J,Q,$,Y){let X=$.maxExtglobRecursion??2,W=!1,K=!1,z=-1,G=!1;if(J.type===null){let U=Q,w="";while(U<Z.length){let D=Z.charAt(U++);if(W||D==="\\"){W=!W,w+=D;continue}if(K){if(U===z+1){if(D==="^"||D==="!")G=!0}else if(D==="]"&&!(U===z+2&&G))K=!1;w+=D;continue}else if(D==="["){K=!0,z=U,G=!1,w+=D;continue}if(!$.noext&&rw(D)&&Z.charAt(U)==="("&&Y<=X){J.push(w),w="";let C=new H6(D,J);U=H6.#B(Z,C,U,$,Y+1),J.push(C);continue}w+=D}return J.push(w),U}let H=Q+1,B=new H6(null,J),V=[],F="";while(H<Z.length){let U=Z.charAt(H++);if(W||U==="\\"){W=!W,F+=U;continue}if(K){if(H===z+1){if(U==="^"||U==="!")G=!0}else if(U==="]"&&!(H===z+2&&G))K=!1;F+=U;continue}else if(U==="["){K=!0,z=H,G=!1,F+=U;continue}if(!$.noext&&rw(U)&&Z.charAt(H)==="("&&(Y<=X||J&&J.#V(U))){let D=J&&J.#V(U)?0:1;B.push(F),F="";let L=new H6(U,B);B.push(L),H=H6.#B(Z,L,H,$,Y+D);continue}if(U==="|"){B.push(F),F="",V.push(B),B=new H6(null,J);continue}if(U===")"){if(F===""&&J.#Z.length===0)J.#H=!0;return B.push(F),F="",J.push(...V,B),H}F+=U}return J.type=null,J.#Q=void 0,J.#Z=[Z.substring(Q-1)],H}#D(Z){return this.#U(Z,jS0)}#U(Z,J=wS0){if(!Z||typeof Z!=="object"||Z.type!==null||Z.#Z.length!==1||this.type===null)return!1;let Q=Z.#Z[0];if(!Q||typeof Q!=="object"||Q.type===null)return!1;return this.#V(Q.type,J)}#V(Z,J=DS0){return!!J.get(this.type)?.includes(Z)}#O(Z,J){let Q=Z.#Z[0],$=new H6(null,Q,this.options);$.#Z.push(""),Q.push($),this.#q(Z,J)}#q(Z,J){let Q=Z.#Z[0];this.#Z.splice(J,1,...Q.#Z);for(let $ of Q.#Z)if(typeof $==="object")$.#Y=this;this.#W=void 0}#L(Z){return!!Os.get(this.type)?.has(Z)}#C(Z){if(!Z||typeof Z!=="object"||Z.type!==null||Z.#Z.length!==1||this.type===null||this.#Z.length!==1)return!1;let J=Z.#Z[0];if(!J||typeof J!=="object"||J.type===null)return!1;return this.#L(J.type)}#P(Z){let J=Os.get(this.type),Q=Z.#Z[0],$=J?.get(Q.type);if(!$)return!1;this.#Z=Q.#Z;for(let Y of this.#Z)if(typeof Y==="object")Y.#Y=this;this.type=$,this.#W=void 0,this.#H=!1}static fromGlob(Z,J={}){let Q=new H6(null,void 0,J);return H6.#B(Z,Q,0,J,0),Q}toMMPattern(){if(this!==this.#J)return this.#J.toMMPattern();let Z=this.toString(),[J,Q,$,Y]=this.toRegExpSource();if(!($||this.#Q||this.#X.nocase&&!this.#X.nocaseMagicOnly&&Z.toUpperCase()!==Z.toLowerCase()))return Q;let W=(this.#X.nocase?"i":"")+(Y?"u":"");return Object.assign(new RegExp(`^${J}$`,W),{_src:J,_glob:Z})}get options(){return this.#X}toRegExpSource(Z){let J=Z??!!this.#X.dot;if(this.#J===this)this.#F(),this.#j();if(!Ds(this)){let K=this.isStart()&&this.isEnd()&&!this.#Z.some((V)=>typeof V!=="string"),z=this.#Z.map((V)=>{let[F,U,w,D]=typeof V==="string"?H6.#M(V,this.#Q,K):V.toRegExpSource(Z);return this.#Q=this.#Q||w,this.#$=this.#$||D,F}).join(""),G="";if(this.isStart()){if(typeof this.#Z[0]==="string"){if(!(this.#Z.length===1&&CS0.has(this.#Z[0]))){let F=LS0,U=J&&F.has(z.charAt(0))||z.startsWith("\\.")&&F.has(z.charAt(2))||z.startsWith("\\.\\.")&&F.has(z.charAt(4)),w=!J&&!Z&&F.has(z.charAt(0));G=U?OS0:w?Zz:""}}}let H="";if(this.isEnd()&&this.#J.#z&&this.#Y?.type==="!")H="(?:$|\\/)";return[G+z+H,(0,eK.unescape)(z),this.#Q=!!this.#Q,this.#$]}let Q=this.type==="*"||this.type==="+",$=this.type==="!"?"(?:(?!(?:":"(?:",Y=this.#w(J);if(this.isStart()&&this.isEnd()&&!Y&&this.type!=="!"){let K=this.toString(),z=this;return z.#Z=[K],z.type=null,z.#Q=void 0,[K,(0,eK.unescape)(this.toString()),!1,!1]}let X=!Q||Z||J||!Zz?"":this.#w(!0);if(X===Y)X="";if(X)Y=`(?:${Y})(?:${X})*?`;let W="";if(this.type==="!"&&this.#H)W=(this.isStart()&&!J?Zz:"")+Cs;else{let K=this.type==="!"?"))"+(this.isStart()&&!J&&!Z?Zz:"")+Ls+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&X?")":this.type==="*"&&X?")?":`)${this.type}`;W=$+Y+K}return[W,(0,eK.unescape)(Y),this.#Q=!!this.#Q,this.#$]}#F(){if(!Ds(this)){for(let Z of this.#Z)if(typeof Z==="object")Z.#F()}else{let Z=0,J=!1;do{J=!0;for(let Q=0;Q<this.#Z.length;Q++){let $=this.#Z[Q];if(typeof $==="object"){if($.#F(),this.#U($))J=!1,this.#q($,Q);else if(this.#D($))J=!1,this.#O($,Q);else if(this.#C($))J=!1,this.#P($)}}}while(!J&&++Z<10)}this.#W=void 0}#w(Z){return this.#Z.map((J)=>{if(typeof J==="string")throw Error("string type in extglob ast??");let[Q,$,Y,X]=J.toRegExpSource(Z);return this.#$=this.#$||X,Q}).filter((J)=>!(this.isStart()&&this.isEnd())||!!J).join("|")}static#M(Z,J,Q=!1){let $=!1,Y="",X=!1,W=!1;for(let K=0;K<Z.length;K++){let z=Z.charAt(K);if($){$=!1,Y+=(PS0.has(z)?"\\":"")+z;continue}if(z==="*"){if(W)continue;W=!0,Y+=Q&&/^[*]+$/.test(Z)?Cs:Ls,J=!0;continue}else W=!1;if(z==="\\"){if(K===Z.length-1)Y+="\\\\";else $=!0;continue}if(z==="["){let[G,H,B,V]=(0,US0.parseClass)(Z,K);if(B){Y+=G,X=X||H,K+=B-1,J=J||V;continue}}if(z==="?"){Y+=tw,J=!0;continue}Y+=MS0(z)}return[Y,(0,eK.unescape)(Z),!!J,X]}}Ps.AST=ew;H6=ew});var Jj=j((Rs)=>{Object.defineProperty(Rs,"__esModule",{value:!0});Rs.escape=void 0;var kS0=(Z,{windowsPathsNoEscape:J=!1,magicalBraces:Q=!1}={})=>{if(Q)return J?Z.replace(/[?*()[\]{}]/g,"[$&]"):Z.replace(/[?*()[\]\\{}]/g,"\\$&");return J?Z.replace(/[?*()[\]]/g,"[$&]"):Z.replace(/[?*()[\]\\]/g,"\\$&")};Rs.escape=kS0});var vs=j((R$)=>{Object.defineProperty(R$,"__esModule",{value:!0});R$.unescape=R$.escape=R$.AST=R$.Minimatch=R$.match=R$.makeRe=R$.braceExpand=R$.defaults=R$.filter=R$.GLOBSTAR=R$.sep=R$.minimatch=void 0;var NS0=zs(),Jz=Bs(),Is=Zj(),AS0=Jj(),IS0=tK(),TS0=(Z,J,Q={})=>{if((0,Jz.assertValidPattern)(J),!Q.nocomment&&J.charAt(0)==="#")return!1;return new EJ(J,Q).match(Z)};R$.minimatch=TS0;var ES0=/^\*+([^+@!?\*\[\(]*)$/,fS0=(Z)=>(J)=>!J.startsWith(".")&&J.endsWith(Z),yS0=(Z)=>(J)=>J.endsWith(Z),SS0=(Z)=>{return Z=Z.toLowerCase(),(J)=>!J.startsWith(".")&&J.toLowerCase().endsWith(Z)},_S0=(Z)=>{return Z=Z.toLowerCase(),(J)=>J.toLowerCase().endsWith(Z)},hS0=/^\*+\.\*+$/,bS0=(Z)=>!Z.startsWith(".")&&Z.includes("."),vS0=(Z)=>Z!=="."&&Z!==".."&&Z.includes("."),xS0=/^\.\*+$/,gS0=(Z)=>Z!=="."&&Z!==".."&&Z.startsWith("."),dS0=/^\*+$/,cS0=(Z)=>Z.length!==0&&!Z.startsWith("."),mS0=(Z)=>Z.length!==0&&Z!=="."&&Z!=="..",uS0=/^\?+([^+@!?\*\[\(]*)?$/,lS0=([Z,J=""])=>{let Q=Ts([Z]);if(!J)return Q;return J=J.toLowerCase(),($)=>Q($)&&$.toLowerCase().endsWith(J)},pS0=([Z,J=""])=>{let Q=Es([Z]);if(!J)return Q;return J=J.toLowerCase(),($)=>Q($)&&$.toLowerCase().endsWith(J)},iS0=([Z,J=""])=>{let Q=Es([Z]);return!J?Q:($)=>Q($)&&$.endsWith(J)},oS0=([Z,J=""])=>{let Q=Ts([Z]);return!J?Q:($)=>Q($)&&$.endsWith(J)},Ts=([Z])=>{let J=Z.length;return(Q)=>Q.length===J&&!Q.startsWith(".")},Es=([Z])=>{let J=Z.length;return(Q)=>Q.length===J&&Q!=="."&&Q!==".."},fs=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",Ns={win32:{sep:"\\"},posix:{sep:"/"}};R$.sep=fs==="win32"?Ns.win32.sep:Ns.posix.sep;R$.minimatch.sep=R$.sep;R$.GLOBSTAR=Symbol("globstar **");R$.minimatch.GLOBSTAR=R$.GLOBSTAR;var nS0="[^/]",aS0=nS0+"*?",sS0="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",rS0="(?:(?!(?:\\/|^)\\.).)*?",tS0=(Z,J={})=>(Q)=>R$.minimatch(Q,Z,J);R$.filter=tS0;R$.minimatch.filter=R$.filter;var Q9=(Z,J={})=>Object.assign({},Z,J),eS0=(Z)=>{if(!Z||typeof Z!=="object"||!Object.keys(Z).length)return R$.minimatch;let J=R$.minimatch;return Object.assign(($,Y,X={})=>J($,Y,Q9(Z,X)),{Minimatch:class extends J.Minimatch{constructor(Y,X={}){super(Y,Q9(Z,X))}static defaults(Y){return J.defaults(Q9(Z,Y)).Minimatch}},AST:class extends J.AST{constructor(Y,X,W={}){super(Y,X,Q9(Z,W))}static fromGlob(Y,X={}){return J.AST.fromGlob(Y,Q9(Z,X))}},unescape:($,Y={})=>J.unescape($,Q9(Z,Y)),escape:($,Y={})=>J.escape($,Q9(Z,Y)),filter:($,Y={})=>J.filter($,Q9(Z,Y)),defaults:($)=>J.defaults(Q9(Z,$)),makeRe:($,Y={})=>J.makeRe($,Q9(Z,Y)),braceExpand:($,Y={})=>J.braceExpand($,Q9(Z,Y)),match:($,Y,X={})=>J.match($,Y,Q9(Z,X)),sep:J.sep,GLOBSTAR:R$.GLOBSTAR})};R$.defaults=eS0;R$.minimatch.defaults=R$.defaults;var Z_0=(Z,J={})=>{if((0,Jz.assertValidPattern)(Z),J.nobrace||!/\{(?:(?!\{).)*\}/.test(Z))return[Z];return(0,NS0.expand)(Z,{max:J.braceExpandMax})};R$.braceExpand=Z_0;R$.minimatch.braceExpand=R$.braceExpand;var J_0=(Z,J={})=>new EJ(Z,J).makeRe();R$.makeRe=J_0;R$.minimatch.makeRe=R$.makeRe;var Q_0=(Z,J,Q={})=>{let $=new EJ(J,Q);if(Z=Z.filter((Y)=>$.match(Y)),$.options.nonull&&!Z.length)Z.push(J);return Z};R$.match=Q_0;R$.minimatch.match=R$.match;var As=/[?*]|[+@!]\(.*?\)|\[|\]/,$_0=(Z)=>Z.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");class EJ{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;maxGlobstarRecursion;regexp;constructor(Z,J={}){(0,Jz.assertValidPattern)(Z),J=J||{},this.options=J,this.maxGlobstarRecursion=J.maxGlobstarRecursion??200,this.pattern=Z,this.platform=J.platform||fs,this.isWindows=this.platform==="win32";let Q="allowWindowsEscape";if(this.windowsPathsNoEscape=!!J.windowsPathsNoEscape||J[Q]===!1,this.windowsPathsNoEscape)this.pattern=this.pattern.replace(/\\/g,"/");this.preserveMultipleSlashes=!!J.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!J.nonegate,this.comment=!1,this.empty=!1,this.partial=!!J.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=J.windowsNoMagicRoot!==void 0?J.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let Z of this.set)for(let J of Z)if(typeof J!=="string")return!0;return!1}debug(...Z){}make(){let Z=this.pattern,J=this.options;if(!J.nocomment&&Z.charAt(0)==="#"){this.comment=!0;return}if(!Z){this.empty=!0;return}if(this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],J.debug)this.debug=(...Y)=>console.error(...Y);this.debug(this.pattern,this.globSet);let Q=this.globSet.map((Y)=>this.slashSplit(Y));this.globParts=this.preprocess(Q),this.debug(this.pattern,this.globParts);let $=this.globParts.map((Y,X,W)=>{if(this.isWindows&&this.windowsNoMagicRoot){let K=Y[0]===""&&Y[1]===""&&(Y[2]==="?"||!As.test(Y[2]))&&!As.test(Y[3]),z=/^[a-z]:/i.test(Y[0]);if(K)return[...Y.slice(0,4),...Y.slice(4).map((G)=>this.parse(G))];else if(z)return[Y[0],...Y.slice(1).map((G)=>this.parse(G))]}return Y.map((K)=>this.parse(K))});if(this.debug(this.pattern,$),this.set=$.filter((Y)=>Y.indexOf(!1)===-1),this.isWindows)for(let Y=0;Y<this.set.length;Y++){let X=this.set[Y];if(X[0]===""&&X[1]===""&&this.globParts[Y][2]==="?"&&typeof X[3]==="string"&&/^[a-z]:$/i.test(X[3]))X[2]="?"}this.debug(this.pattern,this.set)}preprocess(Z){if(this.options.noglobstar){for(let Q=0;Q<Z.length;Q++)for(let $=0;$<Z[Q].length;$++)if(Z[Q][$]==="**")Z[Q][$]="*"}let{optimizationLevel:J=1}=this.options;if(J>=2)Z=this.firstPhasePreProcess(Z),Z=this.secondPhasePreProcess(Z);else if(J>=1)Z=this.levelOneOptimize(Z);else Z=this.adjascentGlobstarOptimize(Z);return Z}adjascentGlobstarOptimize(Z){return Z.map((J)=>{let Q=-1;while((Q=J.indexOf("**",Q+1))!==-1){let $=Q;while(J[$+1]==="**")$++;if($!==Q)J.splice(Q,$-Q)}return J})}levelOneOptimize(Z){return Z.map((J)=>{return J=J.reduce((Q,$)=>{let Y=Q[Q.length-1];if($==="**"&&Y==="**")return Q;if($===".."){if(Y&&Y!==".."&&Y!=="."&&Y!=="**")return Q.pop(),Q}return Q.push($),Q},[]),J.length===0?[""]:J})}levelTwoFileOptimize(Z){if(!Array.isArray(Z))Z=this.slashSplit(Z);let J=!1;do{if(J=!1,!this.preserveMultipleSlashes){for(let $=1;$<Z.length-1;$++){let Y=Z[$];if($===1&&Y===""&&Z[0]==="")continue;if(Y==="."||Y==="")J=!0,Z.splice($,1),$--}if(Z[0]==="."&&Z.length===2&&(Z[1]==="."||Z[1]===""))J=!0,Z.pop()}let Q=0;while((Q=Z.indexOf("..",Q+1))!==-1){let $=Z[Q-1];if($&&$!=="."&&$!==".."&&$!=="**")J=!0,Z.splice(Q-1,2),Q-=2}}while(J);return Z.length===0?[""]:Z}firstPhasePreProcess(Z){let J=!1;do{J=!1;for(let Q of Z){let $=-1;while(($=Q.indexOf("**",$+1))!==-1){let X=$;while(Q[X+1]==="**")X++;if(X>$)Q.splice($+1,X-$);let W=Q[$+1],K=Q[$+2],z=Q[$+3];if(W!=="..")continue;if(!K||K==="."||K===".."||!z||z==="."||z==="..")continue;J=!0,Q.splice($,1);let G=Q.slice(0);G[$]="**",Z.push(G),$--}if(!this.preserveMultipleSlashes){for(let X=1;X<Q.length-1;X++){let W=Q[X];if(X===1&&W===""&&Q[0]==="")continue;if(W==="."||W==="")J=!0,Q.splice(X,1),X--}if(Q[0]==="."&&Q.length===2&&(Q[1]==="."||Q[1]===""))J=!0,Q.pop()}let Y=0;while((Y=Q.indexOf("..",Y+1))!==-1){let X=Q[Y-1];if(X&&X!=="."&&X!==".."&&X!=="**"){J=!0;let K=Y===1&&Q[Y+1]==="**"?["."]:[];if(Q.splice(Y-1,2,...K),Q.length===0)Q.push("");Y-=2}}}}while(J);return Z}secondPhasePreProcess(Z){for(let J=0;J<Z.length-1;J++)for(let Q=J+1;Q<Z.length;Q++){let $=this.partsMatch(Z[J],Z[Q],!this.preserveMultipleSlashes);if($){Z[J]=[],Z[Q]=$;break}}return Z.filter((J)=>J.length)}partsMatch(Z,J,Q=!1){let $=0,Y=0,X=[],W="";while($<Z.length&&Y<J.length)if(Z[$]===J[Y])X.push(W==="b"?J[Y]:Z[$]),$++,Y++;else if(Q&&Z[$]==="**"&&J[Y]===Z[$+1])X.push(Z[$]),$++;else if(Q&&J[Y]==="**"&&Z[$]===J[Y+1])X.push(J[Y]),Y++;else if(Z[$]==="*"&&J[Y]&&(this.options.dot||!J[Y].startsWith("."))&&J[Y]!=="**"){if(W==="b")return!1;W="a",X.push(Z[$]),$++,Y++}else if(J[Y]==="*"&&Z[$]&&(this.options.dot||!Z[$].startsWith("."))&&Z[$]!=="**"){if(W==="a")return!1;W="b",X.push(J[Y]),$++,Y++}else return!1;return Z.length===J.length&&X}parseNegate(){if(this.nonegate)return;let Z=this.pattern,J=!1,Q=0;for(let $=0;$<Z.length&&Z.charAt($)==="!";$++)J=!J,Q++;if(Q)this.pattern=Z.slice(Q);this.negate=J}matchOne(Z,J,Q=!1){let $=0,Y=0;if(this.isWindows){let W=typeof Z[0]==="string"&&/^[a-z]:$/i.test(Z[0]),K=!W&&Z[0]===""&&Z[1]===""&&Z[2]==="?"&&/^[a-z]:$/i.test(Z[3]),z=typeof J[0]==="string"&&/^[a-z]:$/i.test(J[0]),G=!z&&J[0]===""&&J[1]===""&&J[2]==="?"&&typeof J[3]==="string"&&/^[a-z]:$/i.test(J[3]),H=K?3:W?0:void 0,B=G?3:z?0:void 0;if(typeof H==="number"&&typeof B==="number"){let[V,F]=[Z[H],J[B]];if(V.toLowerCase()===F.toLowerCase())J[B]=V,Y=B,$=H}}let{optimizationLevel:X=1}=this.options;if(X>=2)Z=this.levelTwoFileOptimize(Z);if(J.includes(R$.GLOBSTAR))return this.#J(Z,J,Q,$,Y);return this.#$(Z,J,Q,$,Y)}#J(Z,J,Q,$,Y){let X=J.indexOf(R$.GLOBSTAR,Y),W=J.lastIndexOf(R$.GLOBSTAR),[K,z,G]=Q?[J.slice(Y,X),J.slice(X+1),[]]:[J.slice(Y,X),J.slice(X+1,W),J.slice(W+1)];if(K.length){let L=Z.slice($,$+K.length);if(!this.#$(L,K,Q,0,0))return!1;$+=K.length,Y+=K.length}let H=0;if(G.length){if(G.length+$>Z.length)return!1;let L=Z.length-G.length;if(this.#$(Z,G,Q,L,0))H=G.length;else{if(Z[Z.length-1]!==""||$+G.length===Z.length)return!1;if(L--,!this.#$(Z,G,Q,L,0))return!1;H=G.length+1}}if(!z.length){let L=!!H;for(let C=$;C<Z.length-H;C++){let R=String(Z[C]);if(L=!0,R==="."||R===".."||!this.options.dot&&R.startsWith("."))return!1}return Q||L}let B=[[[],0]],V=B[0],F=0,U=[0];for(let L of z)if(L===R$.GLOBSTAR)U.push(F),V=[[],0],B.push(V);else V[0].push(L),F++;let w=B.length-1,D=Z.length-H;for(let L of B)L[1]=D-(U[w--]+L[0].length);return!!this.#Q(Z,B,$,0,Q,0,!!H)}#Q(Z,J,Q,$,Y,X,W){let K=J[$];if(!K){for(let H=Q;H<Z.length;H++){W=!0;let B=Z[H];if(B==="."||B===".."||!this.options.dot&&B.startsWith("."))return!1}return W}let[z,G]=K;while(Q<=G){if(this.#$(Z.slice(0,Q+z.length),z,Y,Q,0)&&X<this.maxGlobstarRecursion){let V=this.#Q(Z,J,Q+z.length,$+1,Y,X+1,W);if(V!==!1)return V}let B=Z[Q];if(B==="."||B===".."||!this.options.dot&&B.startsWith("."))return!1;Q++}return Y||null}#$(Z,J,Q,$,Y){let X,W,K,z;for(X=$,W=Y,z=Z.length,K=J.length;X<z&&W<K;X++,W++){this.debug("matchOne loop");let G=J[W],H=Z[X];if(this.debug(J,G,H),G===!1||G===R$.GLOBSTAR)return!1;let B;if(typeof G==="string")B=H===G,this.debug("string match",G,H,B);else B=G.test(H),this.debug("pattern match",G,H,B);if(!B)return!1}if(X===z&&W===K)return!0;else if(X===z)return Q;else if(W===K)return X===z-1&&Z[X]==="";else throw Error("wtf?")}braceExpand(){return R$.braceExpand(this.pattern,this.options)}parse(Z){(0,Jz.assertValidPattern)(Z);let J=this.options;if(Z==="**")return R$.GLOBSTAR;if(Z==="")return"";let Q,$=null;if(Q=Z.match(dS0))$=J.dot?mS0:cS0;else if(Q=Z.match(ES0))$=(J.nocase?J.dot?_S0:SS0:J.dot?yS0:fS0)(Q[1]);else if(Q=Z.match(uS0))$=(J.nocase?J.dot?pS0:lS0:J.dot?iS0:oS0)(Q);else if(Q=Z.match(hS0))$=J.dot?vS0:bS0;else if(Q=Z.match(xS0))$=gS0;let Y=Is.AST.fromGlob(Z,this.options).toMMPattern();if($&&typeof Y==="object")Reflect.defineProperty(Y,"test",{value:$});return Y}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let Z=this.set;if(!Z.length)return this.regexp=!1,this.regexp;let J=this.options,Q=J.noglobstar?aS0:J.dot?sS0:rS0,$=new Set(J.nocase?["i"]:[]),Y=Z.map((K)=>{let z=K.map((H)=>{if(H instanceof RegExp)for(let B of H.flags.split(""))$.add(B);return typeof H==="string"?$_0(H):H===R$.GLOBSTAR?R$.GLOBSTAR:H._src});z.forEach((H,B)=>{let V=z[B+1],F=z[B-1];if(H!==R$.GLOBSTAR||F===R$.GLOBSTAR)return;if(F===void 0)if(V!==void 0&&V!==R$.GLOBSTAR)z[B+1]="(?:\\/|"+Q+"\\/)?"+V;else z[B]=Q;else if(V===void 0)z[B-1]=F+"(?:\\/|\\/"+Q+")?";else if(V!==R$.GLOBSTAR)z[B-1]=F+"(?:\\/|\\/"+Q+"\\/)"+V,z[B+1]=R$.GLOBSTAR});let G=z.filter((H)=>H!==R$.GLOBSTAR);if(this.partial&&G.length>=1){let H=[];for(let B=1;B<=G.length;B++)H.push(G.slice(0,B).join("/"));return"(?:"+H.join("|")+")"}return G.join("/")}).join("|"),[X,W]=Z.length>1?["(?:",")"]:["",""];if(Y="^"+X+Y+W+"$",this.partial)Y="^(?:\\/|"+X+Y.slice(1,-1)+W+")$";if(this.negate)Y="^(?!"+Y+").+$";try{this.regexp=new RegExp(Y,[...$].join(""))}catch(K){this.regexp=!1}return this.regexp}slashSplit(Z){if(this.preserveMultipleSlashes)return Z.split("/");else if(this.isWindows&&/^\/\/[^\/]+/.test(Z))return["",...Z.split(/\/+/)];else return Z.split(/\/+/)}match(Z,J=this.partial){if(this.debug("match",Z,this.pattern),this.comment)return!1;if(this.empty)return Z==="";if(Z==="/"&&J)return!0;let Q=this.options;if(this.isWindows)Z=Z.split("\\").join("/");let $=this.slashSplit(Z);this.debug(this.pattern,"split",$);let Y=this.set;this.debug(this.pattern,"set",Y);let X=$[$.length-1];if(!X)for(let W=$.length-2;!X&&W>=0;W--)X=$[W];for(let W=0;W<Y.length;W++){let K=Y[W],z=$;if(Q.matchBase&&K.length===1)z=[X];if(this.matchOne(z,K,J)){if(Q.flipNegate)return!0;return!this.negate}}if(Q.flipNegate)return!1;return this.negate}static defaults(Z){return R$.minimatch.defaults(Z).Minimatch}}R$.Minimatch=EJ;var Y_0=Zj();Object.defineProperty(R$,"AST",{enumerable:!0,get:function(){return Y_0.AST}});var X_0=Jj();Object.defineProperty(R$,"escape",{enumerable:!0,get:function(){return X_0.escape}});var W_0=tK();Object.defineProperty(R$,"unescape",{enumerable:!0,get:function(){return W_0.unescape}});R$.minimatch.AST=Is.AST;R$.minimatch.Minimatch=EJ;R$.minimatch.escape=AS0.escape;R$.minimatch.unescape=IS0.unescape});var ls=j((NU1,Wj)=>{var xs=E("diagnostics_channel"),{context:Qz,trace:$j,SpanStatusCode:k$,propagation:Yj,diag:G_0}=I(),{getRPCMetadata:H_0,RPCType:B_0}=R0(),{ATTR_HTTP_ROUTE:$z,ATTR_HTTP_RESPONSE_STATUS_CODE:gs,ATTR_HTTP_REQUEST_METHOD:V_0,ATTR_URL_PATH:F_0}=Y0(),{InstrumentationBase:U_0}=sa(),{version:q_0,name:ds}=ra(),cs=["onRequest","preParsing","preValidation","preHandler","preSerialization","onSend","onResponse","onError"],k0={HOOK_NAME:"hook.name",FASTIFY_TYPE:"fastify.type",HOOK_CALLBACK_NAME:"hook.callback.name",ROOT:"fastify.root"},J7={ROUTE:"route-hook",INSTANCE:"hook",HANDLER:"request-handler"},Q7=Symbol("fastify otel instance"),$7=Symbol("fastify otel request spans"),N$=Symbol("fastify otel request context"),ms=Symbol("fastify otel addhook original"),us=Symbol("fastify otel setnotfound original"),A$=Symbol("fastify otel ignore path"),I$=Symbol("fastify otel record exceptions");class Xj extends U_0{logger=null;_requestHook=null;_lifecycleHook=null;constructor(Z){super(ds,q_0,Z);if(this.logger=G_0.createComponentLogger({namespace:ds}),this[A$]=null,this[I$]=!0,Z?.recordExceptions!=null){if(typeof Z.recordExceptions!=="boolean")throw TypeError("recordExceptions must be a boolean");this[I$]=Z.recordExceptions}if(typeof Z?.requestHook==="function")this._requestHook=Z.requestHook;if(typeof Z?.lifecycleHook==="function")this._lifecycleHook=Z.lifecycleHook;if(Z?.ignorePaths!=null||process.env.OTEL_FASTIFY_IGNORE_PATHS!=null){let J=Z?.ignorePaths??process.env.OTEL_FASTIFY_IGNORE_PATHS;if((typeof J!=="string"||J.length===0)&&typeof J!=="function")throw TypeError("ignorePaths must be a string or a function");let Q=null;this[A$]=($)=>{if(typeof J==="function")return J($);else{if(Q==null)Q=vs().minimatch;return Q($.url,J)}}}}enable(){if(this._handleInitialization===void 0&&this.getConfig().registerOnInitialization)this._handleInitialization=(Z)=>{this.plugin()(Z.fastify,void 0,()=>{});let J=(Q,$,Y)=>{Y()};J[Symbol.for("skip-override")]=!0,J[Symbol.for("fastify.display-name")]="@fastify/otel",Z.fastify.register(J)},xs.subscribe("fastify.initialization",this._handleInitialization);return super.enable()}disable(){if(this._handleInitialization)xs.unsubscribe("fastify.initialization",this._handleInitialization),this._handleInitialization=void 0;return super.disable()}init(){return[]}plugin(){let Z=this;return J[Symbol.for("skip-override")]=!0,J[Symbol.for("fastify.display-name")]="@fastify/otel",J[Symbol.for("plugin-meta")]={fastify:">=4.0.0 <6",name:"@fastify/otel"},J;function J(Q,$,Y){Q.decorate(Q7,Z),Q.decorate(ms,Q.addHook),Q.decorate(us,Q.setNotFoundHandler),Q.decorateRequest("opentelemetry",function(){let B=this[N$],V=this[$7];return{enabled:this.routeOptions.config?.otel!==!1,span:V,tracer:Z.tracer,context:B,inject:(F,U)=>{return Yj.inject(B,F,U)},extract:(F,U)=>{return Yj.extract(B,F,U)}}}),Q.decorateRequest($7,null),Q.decorateRequest(N$,null),Q.addHook("onRoute",function(B){if(Z[A$]?.(B)===!0){Z.logger.debug(`Ignoring route instrumentation ${B.method} ${B.url} because it matches the ignore path`);return}if(B.config?.otel===!1){Z.logger.debug(`Ignoring route instrumentation ${B.method} ${B.url} because it is disabled`);return}for(let V of cs)if(B[V]!=null){let F=B[V];if(typeof F==="function")B[V]=G(F,V,{[k0.HOOK_NAME]:`${this.pluginName} - route -> ${V}`,[k0.FASTIFY_TYPE]:J7.ROUTE,[$z]:B.url,[k0.HOOK_CALLBACK_NAME]:F.name?.length>0?F.name:"anonymous"});else if(Array.isArray(F)){let U=[];for(let w of F)U.push(G(w,V,{[k0.HOOK_NAME]:`${this.pluginName} - route -> ${V}`,[k0.FASTIFY_TYPE]:J7.ROUTE,[$z]:B.url,[k0.HOOK_CALLBACK_NAME]:w.name?.length>0?w.name:"anonymous"}));B[V]=U}}if(B.onSend!=null)B.onSend=Array.isArray(B.onSend)?[...B.onSend,X]:[B.onSend,X];else B.onSend=X;if(B.onError!=null)B.onError=Array.isArray(B.onError)?[...B.onError,W]:[B.onError,W];else B.onError=W;B.handler=G(B.handler,"handler",{[k0.HOOK_NAME]:`${this.pluginName} - route-handler`,[k0.FASTIFY_TYPE]:J7.HANDLER,[$z]:B.url,[k0.HOOK_CALLBACK_NAME]:B.handler.name.length>0?B.handler.name:"anonymous"})}),Q.addHook("onRequest",function(B,V,F){if(this[Q7].isEnabled()===!1||B.routeOptions.config?.otel===!1)return F();if(this[Q7][A$]?.({url:B.url,method:B.method})===!0)return this[Q7].logger.debug(`Ignoring request ${B.method} ${B.url} because it matches the ignore path`),F();let U=Qz.active();if($j.getSpan(U)==null)U=Yj.extract(U,B.headers);let w=H_0(U);if(B.routeOptions.url!=null&&w?.type===B_0.HTTP)w.route=B.routeOptions.url;let D={[k0.ROOT]:"@fastify/otel",[V_0]:B.method,[F_0]:B.url};if(B.routeOptions.url!=null)D[$z]=B.routeOptions.url;let L=this[Q7].tracer.startSpan("request",{attributes:D},U);try{this[Q7]._requestHook?.(L,B)}catch(C){this[Q7].logger.error({err:C},"requestHook threw")}B[N$]=$j.setSpan(U,L),B[$7]=L,Qz.with(B[N$],()=>{F()})}),Q.addHook("onResponse",function(B,V,F){let U=B[$7];if(U!=null)U.setStatus({code:k$.OK,message:"OK"}),U.setAttributes({[gs]:404}),U.end();B[$7]=null,F()}),Q.addHook=K,Q.setNotFoundHandler=z,Y();function X(H,B,V,F){let U=H[$7];if(U!=null){if(B.statusCode<500)U.setStatus({code:k$.OK,message:"OK"});U.setAttributes({[gs]:B.statusCode}),U.end()}H[$7]=null,F(null,V)}function W(H,B,V,F){let U=H[$7];if(U!=null){if(U.setStatus({code:k$.ERROR,message:V.message}),Z[I$]!==!1)U.recordException(V)}F()}function K(H,B){let V=this[ms];if(cs.includes(H))return V.call(this,H,G(B,H,{[k0.HOOK_NAME]:`${this.pluginName} - ${H}`,[k0.FASTIFY_TYPE]:J7.INSTANCE,[k0.HOOK_CALLBACK_NAME]:B.name?.length>0?B.name:"anonymous"}));else return V.call(this,H,B)}function z(H,B){let V=this[us];if(typeof H==="function")B=G(H,"notFoundHandler",{[k0.HOOK_NAME]:`${this.pluginName} - not-found-handler`,[k0.FASTIFY_TYPE]:J7.INSTANCE,[k0.HOOK_CALLBACK_NAME]:H.name?.length>0?H.name:"anonymous"}),V.call(this,B);else{if(H.preValidation!=null)H.preValidation=G(H.preValidation,"notFoundHandler - preValidation",{[k0.HOOK_NAME]:`${this.pluginName} - not-found-handler - preValidation`,[k0.FASTIFY_TYPE]:J7.INSTANCE,[k0.HOOK_CALLBACK_NAME]:H.preValidation.name?.length>0?H.preValidation.name:"anonymous"});if(H.preHandler!=null)H.preHandler=G(H.preHandler,"notFoundHandler - preHandler",{[k0.HOOK_NAME]:`${this.pluginName} - not-found-handler - preHandler`,[k0.FASTIFY_TYPE]:J7.INSTANCE,[k0.HOOK_CALLBACK_NAME]:H.preHandler.name?.length>0?H.preHandler.name:"anonymous"});B=G(B,"notFoundHandler",{[k0.HOOK_NAME]:`${this.pluginName} - not-found-handler`,[k0.FASTIFY_TYPE]:J7.INSTANCE,[k0.HOOK_CALLBACK_NAME]:B.name?.length>0?B.name:"anonymous"}),V.call(this,H,B)}}function G(H,B,V={}){return function(...U){let w=this[Q7],[D]=U;if(w.isEnabled()===!1||D.routeOptions.config?.otel===!1)return w.logger.debug(`Ignoring route instrumentation ${D.routeOptions.method} ${D.routeOptions.url} because it is disabled`),H.call(this,...U);if(w[A$]?.({url:D.url,method:D.method})===!0)return w.logger.debug(`Ignoring route instrumentation ${D.routeOptions.method} ${D.routeOptions.url} because it matches the ignore path`),H.call(this,...U);let L=D[N$]??Qz.active(),C=H.name?.length>0?H.name:this.pluginName??"anonymous",R=w.tracer.startSpan(`${B} - ${C}`,{attributes:V},L);if(w._lifecycleHook!=null)try{w._lifecycleHook(R,{hookName:B,request:D,handler:C})}catch(T){w.logger.error({err:T},"Execution of lifecycleHook failed")}return Qz.with($j.setSpan(L,R),function(){try{let T=H.call(this,...U);if(typeof T?.then==="function")return T.then((_)=>{return R.end(),_},(_)=>{if(R.setStatus({code:k$.ERROR,message:_.message}),w[I$]!==!1)R.recordException(_);return R.end(),Promise.reject(_)});return R.end(),T}catch(T){if(R.setStatus({code:k$.ERROR,message:T.message}),w[I$]!==!1)R.recordException(T);throw R.end(),T}},this)}}}}}Wj.exports=Xj;Wj.exports.FastifyOtelInstrumentation=Xj});var n8,T$,E$;var ps=q(()=>{(function(Z){Z.FASTIFY_NAME="fastify.name";let Q="fastify.type";Z.FASTIFY_TYPE=Q;let $="hook.name";Z.HOOK_NAME=$;let Y="plugin.name";Z.PLUGIN_NAME=Y})(n8||(n8={}));(function(Z){Z.MIDDLEWARE="middleware";let Q="request_handler";Z.REQUEST_HANDLER=Q})(T$||(T$={}));(function(Z){Z.MIDDLEWARE="middleware";let Q="request handler";Z.REQUEST_HANDLER=Q})(E$||(E$={}))});var f$;var is=q(()=>{f$=Symbol("opentelemetry.instrumentation.fastify.request_active_span")});function Kj(Z,J,Q,$={}){let Y=J.startSpan(Q,{attributes:$}),X=Z[f$]||[];return X.push(Y),Object.defineProperty(Z,f$,{enumerable:!1,configurable:!0,value:X}),Y}function Yz(Z,J){let Q=Z[f$]||[];if(!Q.length)return;Q.forEach(($)=>{if(J)$.setStatus({code:ns.SpanStatusCode.ERROR,message:J.message}),$.recordException(J);$.end()}),delete Z[f$]}function as(Z,J,Q){let $,Y=void 0;try{if(Y=Z(),os(Y))Y.then((X)=>J(void 0,X),(X)=>J(X))}catch(X){$=X}finally{if(!os(Y)){if(J($,Y),$)throw $}return Y}}function os(Z){return typeof Z==="object"&&Z&&typeof Object.getOwnPropertyDescriptor(Z,"then")?.value==="function"||!1}var ns;var ss=q(()=>{is();ns=A(I(),1)});function O_0(){let Z=k();if(Z)Z.on("spanStart",(J)=>{es(J)})}function es(Z){let J=v(Z).data,Q=J["fastify.type"];if(J[g]||!Q)return;Z.setAttributes({[f]:"auto.http.otel.fastify",[g]:`${Q}.fastify`});let $=J["fastify.name"]||J["plugin.name"]||J["hook.name"];if(typeof $==="string"){let Y=$.replace(/^fastify -> /,"").replace(/^@fastify\/otel -> /,"");Z.updateName(Y)}}var _9,Xz,N5,ts,w_0="0.1.0",j_0="@sentry/instrumentation-fastify-v3",rs="anonymous",D_0,zj;var Zr=q(()=>{N();ps();ss();_9=A(I(),1),Xz=A(R0(),1),N5=A(n(),1),ts=A(Y0(),1),D_0=new Set(["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError"]);zj=class zj extends N5.InstrumentationBase{constructor(Z={}){super(j_0,w_0,Z)}init(){return[new N5.InstrumentationNodeModuleDefinition("fastify",[">=3.0.0 <4"],(Z)=>{return this._patchConstructor(Z)})]}_hookOnRequest(){let Z=this;return function(Q,$,Y){if(!Z.isEnabled())return Y();Z._wrap($,"send",Z._patchSend());let X=Q,W=Xz.getRPCMetadata(_9.context.active()),K=X.routeOptions?X.routeOptions.url:Q.routerPath;if(K&&W?.type===Xz.RPCType.HTTP)W.route=K;let z=Q.method||"GET";x().setTransactionName(`${z} ${K}`),Y()}}_wrapHandler(Z,J,Q,$){let Y=this;return this._diag.debug("Patching fastify route.handler function"),function(...X){if(!Y.isEnabled())return Q.apply(this,X);let W=Q.name||Z||rs,K=`${E$.MIDDLEWARE} - ${W}`,z=X[1],G=Kj(z,Y.tracer,K,{[n8.FASTIFY_TYPE]:T$.MIDDLEWARE,[n8.PLUGIN_NAME]:Z,[n8.HOOK_NAME]:J}),H=$&&X[X.length-1];if(H)X[X.length-1]=function(...B){Yz(z),H.apply(this,B)};return _9.context.with(_9.trace.setSpan(_9.context.active(),G),()=>{return as(()=>{return Q.apply(this,X)},(B)=>{if(B instanceof Error)G.setStatus({code:_9.SpanStatusCode.ERROR,message:B.message}),G.recordException(B);if(!$)Yz(z)})})}}_wrapAddHook(){let Z=this;return this._diag.debug("Patching fastify server.addHook function"),function(J){return function(...$){let Y=$[0],X=$[1],W=this.pluginName;if(!D_0.has(Y))return J.apply(this,$);let K=typeof $[$.length-1]==="function"&&X.constructor.name!=="AsyncFunction";return J.apply(this,[Y,Z._wrapHandler(W,Y,X,K)])}}}_patchConstructor(Z){let J=this;function Q(...$){let Y=Z.fastify.apply(this,$);return Y.addHook("onRequest",J._hookOnRequest()),Y.addHook("preHandler",J._hookPreHandler()),O_0(),J._wrap(Y,"addHook",J._wrapAddHook()),Y}if(Z.errorCodes!==void 0)Q.errorCodes=Z.errorCodes;return Q.fastify=Q,Q.default=Q,Q}_patchSend(){let Z=this;return this._diag.debug("Patching fastify reply.send function"),function(Q){return function(...Y){let X=Y[0];if(!Z.isEnabled())return Q.apply(this,Y);return N5.safeExecuteInTheMiddle(()=>{return Q.apply(this,Y)},(W)=>{if(!W&&X instanceof Error)W=X;Yz(this,W)})}}}_hookPreHandler(){let Z=this;return this._diag.debug("Patching fastify preHandler function"),function(Q,$,Y){if(!Z.isEnabled())return Y();let X=Q,W=X.routeOptions?.handler||X.context?.handler,K=W?.name.startsWith("bound ")?W.name.substring(6):W?.name,z=`${E$.REQUEST_HANDLER} - ${K||this.pluginName||rs}`,G={[n8.PLUGIN_NAME]:this.pluginName,[n8.FASTIFY_TYPE]:T$.REQUEST_HANDLER,[ts.SEMATTRS_HTTP_ROUTE]:X.routeOptions?X.routeOptions.url:Q.routerPath};if(K)G[n8.FASTIFY_NAME]=K;let H=Kj($,Z.tracer,z,G);es(H);let{requestHook:B}=Z.getConfig();if(B)N5.safeExecuteInTheMiddle(()=>B(H,{request:Q}),(V)=>{if(V)Z._diag.error("request hook failed",V)},!0);return _9.context.with(_9.trace.setSpan(_9.context.active(),H),()=>{Y()})}}}});import*as Gj from"diagnostics_channel";function $r(){let Z=k();if(!Z)return;else return Z.getIntegrationByName(Kz)}function Wz(Z,J,Q,$){let Y=$r()?.getShouldHandleError()||Xr;if($==="diagnostics-channel")this.diagnosticsChannelExists=!0;if(this.diagnosticsChannelExists&&$==="onError-hook"){e0&&O.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(Y(Z,J,Q))h(Z,{mechanism:{handled:!1,type:"auto.function.fastify"}})}function Xr(Z,J,Q){let $=Q.statusCode;return $>=500||$<=299}function Hj(Z,J){if(J?.shouldHandleError)$r()?.setShouldHandleError(J.shouldHandleError);let Q=Object.assign(function($,Y,X){$.addHook("onError",async(W,K,z)=>{Wz.call(Wz,z,W,K,"onError-hook")}),X()},{[Symbol.for("skip-override")]:!0,[Symbol.for("fastify.display-name")]:"sentry-fastify-error-handler"});Z.register(Q)}function Wr(Z){let J=v(Z),Q=J.description,$=J.data,Y=$["fastify.type"],X=Y==="hook",W=Y===Q?.startsWith("handler -"),K=Q==="request"||Y==="request-handler";if($[g]||!W&&!K&&!X)return;let z=X?"hook":W?"middleware":K?"request_handler":"<unknown>";Z.setAttributes({[f]:"auto.http.otel.fastify",[g]:`${z}.fastify`});let G=$["fastify.name"]||$["plugin.name"]||$["hook.name"];if(typeof G==="string"){let H=G.replace(/^fastify -> /,"").replace(/^@fastify\/otel -> /,"");Z.updateName(H)}}function C_0(){let Z=k();if(Z)Z.on("spanStart",(J)=>{Wr(J)})}function P_0(Z){Z.addHook("onRequest",async(J,Q)=>{if(J.opentelemetry){let{span:X}=J.opentelemetry();if(X)Wr(X)}let $=J.routeOptions?.url,Y=J.method||"GET";x().setTransactionName(`${Y} ${$}`)})}var Jr,Kz="Fastify",Qr,Yr,L_0=({shouldHandleError:Z})=>{let J;return{name:Kz,setupOnce(){J=Z||Xr,Qr(),Yr()},getShouldHandleError(){return J},setShouldHandleError(Q){J=Q}}},y$;var Bj=q(()=>{N();X0();Z7();Zr();Jr=A(ls(),1),Qr=S(`${Kz}.v3`,()=>new zj);Yr=S(`${Kz}.v5`,()=>{let Z=new Jr.FastifyOtelInstrumentation,J=Z.plugin();return Gj.subscribe("fastify.initialization",(Q)=>{let $=Q.fastify;$?.register(J).after((Y)=>{if(Y)e0&&O.error("Failed to setup Fastify instrumentation",Y);else if(C_0(),$)P_0($)})}),Gj.subscribe("tracing:fastify.request.handler:error",(Q)=>{let{error:$,request:Y,reply:X}=Q;Wz.call(Wz,$,Y,X,"diagnostics-channel")}),Z}),y$=P((Z={})=>L_0(Z))});var Fj=j((Gr)=>{Object.defineProperty(Gr,"__esModule",{value:!0});Gr.SpanNames=Gr.TokenKind=Gr.AllowedOperationTypes=void 0;var M_0;(function(Z){Z.QUERY="query",Z.MUTATION="mutation",Z.SUBSCRIPTION="subscription"})(M_0=Gr.AllowedOperationTypes||(Gr.AllowedOperationTypes={}));var R_0;(function(Z){Z.SOF="<SOF>",Z.EOF="<EOF>",Z.BANG="!",Z.DOLLAR="$",Z.AMP="&",Z.PAREN_L="(",Z.PAREN_R=")",Z.SPREAD="...",Z.COLON=":",Z.EQUALS="=",Z.AT="@",Z.BRACKET_L="[",Z.BRACKET_R="]",Z.BRACE_L="{",Z.PIPE="|",Z.BRACE_R="}",Z.NAME="Name",Z.INT="Int",Z.FLOAT="Float",Z.STRING="String",Z.BLOCK_STRING="BlockString",Z.COMMENT="Comment"})(R_0=Gr.TokenKind||(Gr.TokenKind={}));var k_0;(function(Z){Z.EXECUTE="graphql.execute",Z.PARSE="graphql.parse",Z.RESOLVE="graphql.resolve",Z.VALIDATE="graphql.validate",Z.SCHEMA_VALIDATE="graphql.validateSchema",Z.SCHEMA_PARSE="graphql.parseSchema"})(k_0=Gr.SpanNames||(Gr.SpanNames={}))});var qj=j((Hr)=>{Object.defineProperty(Hr,"__esModule",{value:!0});Hr.AttributeNames=void 0;var N_0;(function(Z){Z.SOURCE="graphql.source",Z.FIELD_NAME="graphql.field.name",Z.FIELD_PATH="graphql.field.path",Z.FIELD_TYPE="graphql.field.type",Z.PARENT_NAME="graphql.parent.name",Z.OPERATION_TYPE="graphql.operation.type",Z.OPERATION_NAME="graphql.operation.name",Z.VARIABLES="graphql.variables.",Z.ERROR_VALIDATION_NAME="graphql.validation.error"})(N_0=Hr.AttributeNames||(Hr.AttributeNames={}))});var zz=j((Br)=>{Object.defineProperty(Br,"__esModule",{value:!0});Br.OTEL_GRAPHQL_DATA_SYMBOL=Br.OTEL_PATCHED_SYMBOL=void 0;Br.OTEL_PATCHED_SYMBOL=Symbol.for("opentelemetry.patched");Br.OTEL_GRAPHQL_DATA_SYMBOL=Symbol.for("opentelemetry.graphql_data")});var qr=j((Fr)=>{Object.defineProperty(Fr,"__esModule",{value:!0});Fr.OPERATION_NOT_SUPPORTED=void 0;var uU1=zz();Fr.OPERATION_NOT_SUPPORTED="Operation$operationName$not supported"});var yr=j((Tr)=>{Object.defineProperty(Tr,"__esModule",{value:!0});Tr.wrapFieldResolver=Tr.wrapFields=Tr.getSourceFromLocation=Tr.getOperation=Tr.endSpan=Tr.addSpanSource=Tr.addInputVariableAttributes=Tr.isPromise=void 0;var fJ=I(),Y7=Fj(),A5=qj(),a8=zz(),wr=Object.values(Y7.AllowedOperationTypes),I_0=(Z)=>{return typeof Z?.then==="function"};Tr.isPromise=I_0;var T_0=(Z)=>{return typeof Z=="object"&&Z!==null};function wj(Z,J,Q){if(Array.isArray(Q))Q.forEach(($,Y)=>{wj(Z,`${J}.${Y}`,$)});else if(Q instanceof Object)Object.entries(Q).forEach(([$,Y])=>{wj(Z,`${J}.${$}`,Y)});else Z.setAttribute(`${A5.AttributeNames.VARIABLES}${String(J)}`,Q)}function E_0(Z,J){Object.entries(J).forEach(([Q,$])=>{wj(Z,Q,$)})}Tr.addInputVariableAttributes=E_0;function Lr(Z,J,Q,$,Y){let X=kr(J,Q,$,Y);Z.setAttribute(A5.AttributeNames.SOURCE,X)}Tr.addSpanSource=Lr;function f_0(Z,J,Q,$,Y){let X=Cr(Q,Y);if(X)return{field:X,spanAdded:!1};let K=J().flatResolveSpans?Mr(Q):Pr(Q,Y);return X={span:y_0(Z,J,Q,$,Y,K)},h_0(Q,Y,X),{field:X,spanAdded:!0}}function y_0(Z,J,Q,$,Y,X){let W={[A5.AttributeNames.FIELD_NAME]:$.fieldName,[A5.AttributeNames.FIELD_PATH]:Y.join("."),[A5.AttributeNames.FIELD_TYPE]:$.returnType.toString(),[A5.AttributeNames.PARENT_NAME]:$.parentType.name},K=Z.startSpan(`${Y7.SpanNames.RESOLVE} ${W[A5.AttributeNames.FIELD_PATH]}`,{attributes:W},X?fJ.trace.setSpan(fJ.context.active(),X):void 0),z=Q[a8.OTEL_GRAPHQL_DATA_SYMBOL].source,G=$.fieldNodes.find((H)=>H.kind==="Field");if(G)Lr(K,z.loc,J().allowValues,G.loc?.start,G.loc?.end);return K}function S_0(Z,J){if(J)Z.recordException(J);Z.end()}Tr.endSpan=S_0;function __0(Z,J){if(!Z||!Array.isArray(Z.definitions))return;if(J)return Z.definitions.filter((Q)=>wr.indexOf(Q?.operation)!==-1).find((Q)=>J===Q?.name?.value);else return Z.definitions.find((Q)=>wr.indexOf(Q?.operation)!==-1)}Tr.getOperation=__0;function h_0(Z,J,Q){return Z[a8.OTEL_GRAPHQL_DATA_SYMBOL].fields[J.join(".")]=Q}function Cr(Z,J){return Z[a8.OTEL_GRAPHQL_DATA_SYMBOL].fields[J.join(".")]}function Pr(Z,J){for(let Q=J.length-1;Q>0;Q--){let $=Cr(Z,J.slice(0,Q));if($)return $.span}return Mr(Z)}function Mr(Z){return Z[a8.OTEL_GRAPHQL_DATA_SYMBOL].span}function b_0(Z,J){let Q=[],$=J;while($){let Y=$.key;if(Z&&typeof Y==="number")Y="*";Q.push(String(Y)),$=$.prev}return Q.reverse()}function v_0(Z){return Rr(`
|
|
39
|
+
`,Z)}function jr(Z){return Rr(" ",Z)}function Rr(Z,J){let Q="";for(let $=0;$<J;$++)Q+=Z;return Q}var x_0=[Y7.TokenKind.FLOAT,Y7.TokenKind.STRING,Y7.TokenKind.INT,Y7.TokenKind.BLOCK_STRING];function kr(Z,J=!1,Q,$){let Y="";if(Z?.startToken){let X=typeof Q==="number"?Q:Z.start,W=typeof $==="number"?$:Z.end,K=Z.startToken.next,z=1;while(K){if(K.start<X){K=K.next,z=K?.line;continue}if(K.end>W){K=K.next,z=K?.line;continue}let G=K.value||K.kind,H="";if(!J&&x_0.indexOf(K.kind)>=0)G="*";if(K.kind===Y7.TokenKind.STRING)G=`"${G}"`;if(K.kind===Y7.TokenKind.EOF)G="";if(K.line>z)Y+=v_0(K.line-z),z=K.line,H=jr(K.column-1);else if(K.line===K.prev?.line)H=jr(K.start-(K.prev?.end||0));if(Y+=H+G,K)K=K.next}}return Y}Tr.getSourceFromLocation=kr;function Nr(Z,J,Q){if(!Z||Z[a8.OTEL_PATCHED_SYMBOL])return;let $=Z.getFields();Z[a8.OTEL_PATCHED_SYMBOL]=!0,Object.keys($).forEach((Y)=>{let X=$[Y];if(!X)return;if(X.resolve)X.resolve=Ir(J,Q,X.resolve);if(X.type){let W=Ar(X.type);for(let K of W)Nr(K,J,Q)}})}Tr.wrapFields=Nr;function Ar(Z){if("ofType"in Z)return Ar(Z.ofType);if(g_0(Z))return Z.getTypes();if(d_0(Z))return[Z];return[]}function g_0(Z){return"getTypes"in Z&&typeof Z.getTypes==="function"}function d_0(Z){return"getFields"in Z&&typeof Z.getFields==="function"}var Dr=(Z,J,Q)=>{if(!Q)return;Z.recordException(J),Z.setStatus({code:fJ.SpanStatusCode.ERROR,message:J.message}),Z.end()},Or=(Z,J)=>{if(!J)return;Z.end()};function Ir(Z,J,Q,$=!1){if(Y[a8.OTEL_PATCHED_SYMBOL]||typeof Q!=="function")return Q;function Y(X,W,K,z){if(!Q)return;let G=J();if(G.ignoreTrivialResolveSpans&&$&&(T_0(X)||typeof X==="function")){if(typeof X[z.fieldName]!=="function")return Q.call(this,X,W,K,z)}if(!K[a8.OTEL_GRAPHQL_DATA_SYMBOL])return Q.call(this,X,W,K,z);let H=b_0(G.mergeItems,z&&z.path),B=H.filter((U)=>typeof U==="string").length,V,F=!1;if(G.depth>=0&&G.depth<B)V=Pr(K,H);else{let{field:U,spanAdded:w}=f_0(Z,J,K,z,H);V=U.span,F=w}return fJ.context.with(fJ.trace.setSpan(fJ.context.active(),V),()=>{try{let U=Q.call(this,X,W,K,z);if(Tr.isPromise(U))return U.then((w)=>{return Or(V,F),w},(w)=>{throw Dr(V,w,F),w});else return Or(V,F),U}catch(U){throw Dr(V,U,F),U}})}return Y[a8.OTEL_PATCHED_SYMBOL]=!0,Y}Tr.wrapFieldResolver=Ir});var hr=j((Sr)=>{Object.defineProperty(Sr,"__esModule",{value:!0});Sr.PACKAGE_NAME=Sr.PACKAGE_VERSION=void 0;Sr.PACKAGE_VERSION="0.61.0";Sr.PACKAGE_NAME="@opentelemetry/instrumentation-graphql"});var cr=j((gr)=>{Object.defineProperty(gr,"__esModule",{value:!0});gr.GraphQLInstrumentation=void 0;var s8=I(),$9=n(),S$=Fj(),Gz=qj(),jj=zz(),n_0=qr(),x1=yr(),br=hr(),vr={mergeItems:!1,depth:-1,allowValues:!1,ignoreResolveSpans:!1},Hz=[">=14.0.0 <17"];class xr extends $9.InstrumentationBase{constructor(Z={}){super(br.PACKAGE_NAME,br.PACKAGE_VERSION,{...vr,...Z})}setConfig(Z={}){super.setConfig({...vr,...Z})}init(){let Z=new $9.InstrumentationNodeModuleDefinition("graphql",Hz);return Z.files.push(this._addPatchingExecute()),Z.files.push(this._addPatchingParser()),Z.files.push(this._addPatchingValidate()),Z}_addPatchingExecute(){return new $9.InstrumentationNodeModuleFile("graphql/execution/execute.js",Hz,(Z)=>{if((0,$9.isWrapped)(Z.execute))this._unwrap(Z,"execute");return this._wrap(Z,"execute",this._patchExecute(Z.defaultFieldResolver)),Z},(Z)=>{if(Z)this._unwrap(Z,"execute")})}_addPatchingParser(){return new $9.InstrumentationNodeModuleFile("graphql/language/parser.js",Hz,(Z)=>{if((0,$9.isWrapped)(Z.parse))this._unwrap(Z,"parse");return this._wrap(Z,"parse",this._patchParse()),Z},(Z)=>{if(Z)this._unwrap(Z,"parse")})}_addPatchingValidate(){return new $9.InstrumentationNodeModuleFile("graphql/validation/validate.js",Hz,(Z)=>{if((0,$9.isWrapped)(Z.validate))this._unwrap(Z,"validate");return this._wrap(Z,"validate",this._patchValidate()),Z},(Z)=>{if(Z)this._unwrap(Z,"validate")})}_patchExecute(Z){let J=this;return function($){return function(){let X;if(arguments.length>=2){let z=arguments;X=J._wrapExecuteArgs(z[0],z[1],z[2],z[3],z[4],z[5],z[6],z[7],Z)}else{let z=arguments[0];X=J._wrapExecuteArgs(z.schema,z.document,z.rootValue,z.contextValue,z.variableValues,z.operationName,z.fieldResolver,z.typeResolver,Z)}let W=(0,x1.getOperation)(X.document,X.operationName),K=J._createExecuteSpan(W,X);return X.contextValue[jj.OTEL_GRAPHQL_DATA_SYMBOL]={source:X.document?X.document||X.document[jj.OTEL_GRAPHQL_DATA_SYMBOL]:void 0,span:K,fields:{}},s8.context.with(s8.trace.setSpan(s8.context.active(),K),()=>{return(0,$9.safeExecuteInTheMiddle)(()=>{return $.apply(this,[X])},(z,G)=>{J._handleExecutionResult(K,z,G)})})}}}_handleExecutionResult(Z,J,Q){let $=this.getConfig();if(Q===void 0||J){(0,x1.endSpan)(Z,J);return}if((0,x1.isPromise)(Q))Q.then((Y)=>{if(typeof $.responseHook!=="function"){(0,x1.endSpan)(Z);return}this._executeResponseHook(Z,Y)},(Y)=>{(0,x1.endSpan)(Z,Y)});else{if(typeof $.responseHook!=="function"){(0,x1.endSpan)(Z);return}this._executeResponseHook(Z,Q)}}_executeResponseHook(Z,J){let{responseHook:Q}=this.getConfig();if(!Q)return;(0,$9.safeExecuteInTheMiddle)(()=>{Q(Z,J)},($)=>{if($)this._diag.error("Error running response hook",$);(0,x1.endSpan)(Z,void 0)},!0)}_patchParse(){let Z=this;return function(Q){return function(Y,X){return Z._parse(this,Q,Y,X)}}}_patchValidate(){let Z=this;return function(Q){return function(Y,X,W,K,z){return Z._validate(this,Q,Y,X,W,z,K)}}}_parse(Z,J,Q,$){let Y=this.getConfig(),X=this.tracer.startSpan(S$.SpanNames.PARSE);return s8.context.with(s8.trace.setSpan(s8.context.active(),X),()=>{return(0,$9.safeExecuteInTheMiddle)(()=>{return J.call(Z,Q,$)},(W,K)=>{if(K){if(!(0,x1.getOperation)(K))X.updateName(S$.SpanNames.SCHEMA_PARSE);else if(K.loc)(0,x1.addSpanSource)(X,K.loc,Y.allowValues)}(0,x1.endSpan)(X,W)})})}_validate(Z,J,Q,$,Y,X,W){let K=this.tracer.startSpan(S$.SpanNames.VALIDATE,{});return s8.context.with(s8.trace.setSpan(s8.context.active(),K),()=>{return(0,$9.safeExecuteInTheMiddle)(()=>{return J.call(Z,Q,$,Y,W,X)},(z,G)=>{if(!$.loc)K.updateName(S$.SpanNames.SCHEMA_VALIDATE);if(G&&G.length)K.recordException({name:Gz.AttributeNames.ERROR_VALIDATION_NAME,message:JSON.stringify(G)});(0,x1.endSpan)(K,z)})})}_createExecuteSpan(Z,J){let Q=this.getConfig(),$=this.tracer.startSpan(S$.SpanNames.EXECUTE,{});if(Z){let{operation:Y,name:X}=Z;$.setAttribute(Gz.AttributeNames.OPERATION_TYPE,Y);let W=X?.value;if(W)$.setAttribute(Gz.AttributeNames.OPERATION_NAME,W),$.updateName(`${Y} ${W}`);else $.updateName(Y)}else{let Y=" ";if(J.operationName)Y=` "${J.operationName}" `;Y=n_0.OPERATION_NOT_SUPPORTED.replace("$operationName$",Y),$.setAttribute(Gz.AttributeNames.OPERATION_NAME,Y)}if(J.document?.loc)(0,x1.addSpanSource)($,J.document.loc,Q.allowValues);if(J.variableValues&&Q.allowValues)(0,x1.addInputVariableAttributes)($,J.variableValues);return $}_wrapExecuteArgs(Z,J,Q,$,Y,X,W,K,z){if(!$)$={};if($[jj.OTEL_GRAPHQL_DATA_SYMBOL]||this.getConfig().ignoreResolveSpans)return{schema:Z,document:J,rootValue:Q,contextValue:$,variableValues:Y,operationName:X,fieldResolver:W,typeResolver:K};let G=W==null,H=W??z;if(W=(0,x1.wrapFieldResolver)(this.tracer,()=>this.getConfig(),H,G),Z)(0,x1.wrapFields)(Z.getQueryType(),this.tracer,()=>this.getConfig()),(0,x1.wrapFields)(Z.getMutationType(),this.tracer,()=>this.getConfig());return{schema:Z,document:J,rootValue:Q,contextValue:$,variableValues:Y,operationName:X,fieldResolver:W,typeResolver:K}}}gr.GraphQLInstrumentation=xr});var mr=j((Dj)=>{Object.defineProperty(Dj,"__esModule",{value:!0});Dj.GraphQLInstrumentation=void 0;var a_0=cr();Object.defineProperty(Dj,"GraphQLInstrumentation",{enumerable:!0,get:function(){return a_0.GraphQLInstrumentation}})});function or(Z){return{ignoreResolveSpans:!0,ignoreTrivialResolveSpans:!0,useOperationNameForRootSpan:!0,...Z}}function t_0(Z){if(Array.isArray(Z)){let J=Z.slice().sort();if(J.length<=5)return J.join(", ");else return`${J.slice(0,5).join(", ")}, +${J.length-5}`}return`${Z}`}var ur,lr,pr="Graphql",ir,r_0=(Z={})=>{return{name:pr,setupOnce(){ir(or(Z))}}},_$;var Oj=q(()=>{N();X0();jJ();ur=A(I(),1),lr=A(mr(),1),ir=S(pr,lr.GraphQLInstrumentation,(Z)=>{let J=or(Z);return{...J,responseHook(Q,$){if(q0(Q,"auto.graphql.otel.graphql"),$.errors?.length&&!v(Q).status)Q.setStatus({code:ur.SpanStatusCode.ERROR});let X=v(Q).data,W=X["graphql.operation.type"],K=X["graphql.operation.name"];if(J.useOperationNameForRootSpan&&W){let z=D0(Q),H=v(z).data[qJ]||[],B=K?`${W} ${K}`:`${W}`;if(Array.isArray(H))H.push(B),z.setAttribute(qJ,H);else if(typeof H==="string")z.setAttribute(qJ,[H,B]);else z.setAttribute(qJ,B);if(!v(z).data["original-description"])z.setAttribute("original-description",v(z).description);z.updateName(`${v(z).data["original-description"]} (${t_0(H)})`)}}}}),_$=P(r_0)});var sr=j((nr)=>{Object.defineProperty(nr,"__esModule",{value:!0});nr.EVENT_LISTENERS_SET=void 0;nr.EVENT_LISTENERS_SET=Symbol("opentelemetry.instrumentation.kafkajs.eventListenersSet")});var er=j((rr)=>{Object.defineProperty(rr,"__esModule",{value:!0});rr.bufferTextMapGetter=void 0;rr.bufferTextMapGetter={get(Z,J){if(!Z)return;let Q=Object.keys(Z);for(let $ of Q)if($===J||$.toLowerCase()===J)return Z[$]?.toString();return},keys(Z){return Z?Object.keys(Z):[]}}});var Qt=j((Zt)=>{Object.defineProperty(Zt,"__esModule",{value:!0});Zt.METRIC_MESSAGING_PROCESS_DURATION=Zt.METRIC_MESSAGING_CLIENT_SENT_MESSAGES=Zt.METRIC_MESSAGING_CLIENT_OPERATION_DURATION=Zt.METRIC_MESSAGING_CLIENT_CONSUMED_MESSAGES=Zt.MESSAGING_SYSTEM_VALUE_KAFKA=Zt.MESSAGING_OPERATION_TYPE_VALUE_SEND=Zt.MESSAGING_OPERATION_TYPE_VALUE_RECEIVE=Zt.MESSAGING_OPERATION_TYPE_VALUE_PROCESS=Zt.ATTR_MESSAGING_SYSTEM=Zt.ATTR_MESSAGING_OPERATION_TYPE=Zt.ATTR_MESSAGING_OPERATION_NAME=Zt.ATTR_MESSAGING_KAFKA_OFFSET=Zt.ATTR_MESSAGING_KAFKA_MESSAGE_TOMBSTONE=Zt.ATTR_MESSAGING_KAFKA_MESSAGE_KEY=Zt.ATTR_MESSAGING_DESTINATION_PARTITION_ID=Zt.ATTR_MESSAGING_DESTINATION_NAME=Zt.ATTR_MESSAGING_BATCH_MESSAGE_COUNT=void 0;Zt.ATTR_MESSAGING_BATCH_MESSAGE_COUNT="messaging.batch.message_count";Zt.ATTR_MESSAGING_DESTINATION_NAME="messaging.destination.name";Zt.ATTR_MESSAGING_DESTINATION_PARTITION_ID="messaging.destination.partition.id";Zt.ATTR_MESSAGING_KAFKA_MESSAGE_KEY="messaging.kafka.message.key";Zt.ATTR_MESSAGING_KAFKA_MESSAGE_TOMBSTONE="messaging.kafka.message.tombstone";Zt.ATTR_MESSAGING_KAFKA_OFFSET="messaging.kafka.offset";Zt.ATTR_MESSAGING_OPERATION_NAME="messaging.operation.name";Zt.ATTR_MESSAGING_OPERATION_TYPE="messaging.operation.type";Zt.ATTR_MESSAGING_SYSTEM="messaging.system";Zt.MESSAGING_OPERATION_TYPE_VALUE_PROCESS="process";Zt.MESSAGING_OPERATION_TYPE_VALUE_RECEIVE="receive";Zt.MESSAGING_OPERATION_TYPE_VALUE_SEND="send";Zt.MESSAGING_SYSTEM_VALUE_KAFKA="kafka";Zt.METRIC_MESSAGING_CLIENT_CONSUMED_MESSAGES="messaging.client.consumed.messages";Zt.METRIC_MESSAGING_CLIENT_OPERATION_DURATION="messaging.client.operation.duration";Zt.METRIC_MESSAGING_CLIENT_SENT_MESSAGES="messaging.client.sent.messages";Zt.METRIC_MESSAGING_PROCESS_DURATION="messaging.process.duration"});var Xt=j(($t)=>{Object.defineProperty($t,"__esModule",{value:!0});$t.PACKAGE_NAME=$t.PACKAGE_VERSION=void 0;$t.PACKAGE_VERSION="0.22.0";$t.PACKAGE_NAME="@opentelemetry/instrumentation-kafkajs"});var Ut=j((Vt)=>{Object.defineProperty(Vt,"__esModule",{value:!0});Vt.KafkaJsInstrumentation=void 0;var w0=I(),Y9=n(),yJ=Y0(),Wt=sr(),Kt=er(),c=Qt(),zt=Xt();function Bz(Z,J,Q){return($)=>{Z.add(J,{...Q,...$?{[yJ.ATTR_ERROR_TYPE]:$}:{}})}}function Gt(Z,J,Q){return($)=>{Z.record((Date.now()-J)/1000,{...Q,...$?{[yJ.ATTR_ERROR_TYPE]:$}:{}})}}var Ht=[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10];class Bt extends Y9.InstrumentationBase{constructor(Z={}){super(zt.PACKAGE_NAME,zt.PACKAGE_VERSION,Z)}_updateMetricInstruments(){this._clientDuration=this.meter.createHistogram(c.METRIC_MESSAGING_CLIENT_OPERATION_DURATION,{advice:{explicitBucketBoundaries:Ht}}),this._sentMessages=this.meter.createCounter(c.METRIC_MESSAGING_CLIENT_SENT_MESSAGES),this._consumedMessages=this.meter.createCounter(c.METRIC_MESSAGING_CLIENT_CONSUMED_MESSAGES),this._processDuration=this.meter.createHistogram(c.METRIC_MESSAGING_PROCESS_DURATION,{advice:{explicitBucketBoundaries:Ht}})}init(){let Z=(Q)=>{if((0,Y9.isWrapped)(Q?.Kafka?.prototype.producer))this._unwrap(Q.Kafka.prototype,"producer");if((0,Y9.isWrapped)(Q?.Kafka?.prototype.consumer))this._unwrap(Q.Kafka.prototype,"consumer")};return new Y9.InstrumentationNodeModuleDefinition("kafkajs",[">=0.3.0 <3"],(Q)=>{return Z(Q),this._wrap(Q?.Kafka?.prototype,"producer",this._getProducerPatch()),this._wrap(Q?.Kafka?.prototype,"consumer",this._getConsumerPatch()),Q},Z)}_getConsumerPatch(){let Z=this;return(J)=>{return function(...$){let Y=J.apply(this,$);if((0,Y9.isWrapped)(Y.run))Z._unwrap(Y,"run");return Z._wrap(Y,"run",Z._getConsumerRunPatch()),Z._setKafkaEventListeners(Y),Y}}}_setKafkaEventListeners(Z){if(Z[Wt.EVENT_LISTENERS_SET])return;if(Z.events?.REQUEST)Z.on(Z.events.REQUEST,this._recordClientDurationMetric.bind(this));Z[Wt.EVENT_LISTENERS_SET]=!0}_recordClientDurationMetric(Z){let[J,Q]=Z.payload.broker.split(":");this._clientDuration.record(Z.payload.duration/1000,{[c.ATTR_MESSAGING_SYSTEM]:c.MESSAGING_SYSTEM_VALUE_KAFKA,[c.ATTR_MESSAGING_OPERATION_NAME]:`${Z.payload.apiName}`,[yJ.ATTR_SERVER_ADDRESS]:J,[yJ.ATTR_SERVER_PORT]:Number.parseInt(Q,10)})}_getProducerPatch(){let Z=this;return(J)=>{return function(...$){let Y=J.apply(this,$);if((0,Y9.isWrapped)(Y.sendBatch))Z._unwrap(Y,"sendBatch");if(Z._wrap(Y,"sendBatch",Z._getSendBatchPatch()),(0,Y9.isWrapped)(Y.send))Z._unwrap(Y,"send");if(Z._wrap(Y,"send",Z._getSendPatch()),(0,Y9.isWrapped)(Y.transaction))Z._unwrap(Y,"transaction");return Z._wrap(Y,"transaction",Z._getProducerTransactionPatch()),Z._setKafkaEventListeners(Y),Y}}}_getConsumerRunPatch(){let Z=this;return(J)=>{return function(...$){let Y=$[0];if(Y?.eachMessage){if((0,Y9.isWrapped)(Y.eachMessage))Z._unwrap(Y,"eachMessage");Z._wrap(Y,"eachMessage",Z._getConsumerEachMessagePatch())}if(Y?.eachBatch){if((0,Y9.isWrapped)(Y.eachBatch))Z._unwrap(Y,"eachBatch");Z._wrap(Y,"eachBatch",Z._getConsumerEachBatchPatch())}return J.call(this,Y)}}}_getConsumerEachMessagePatch(){let Z=this;return(J)=>{return function(...$){let Y=$[0],X=w0.propagation.extract(w0.ROOT_CONTEXT,Y.message.headers,Kt.bufferTextMapGetter),W=Z._startConsumerSpan({topic:Y.topic,message:Y.message,operationType:c.MESSAGING_OPERATION_TYPE_VALUE_PROCESS,ctx:X,attributes:{[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:String(Y.partition)}}),K=[Gt(Z._processDuration,Date.now(),{[c.ATTR_MESSAGING_SYSTEM]:c.MESSAGING_SYSTEM_VALUE_KAFKA,[c.ATTR_MESSAGING_OPERATION_NAME]:"process",[c.ATTR_MESSAGING_DESTINATION_NAME]:Y.topic,[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:String(Y.partition)}),Bz(Z._consumedMessages,1,{[c.ATTR_MESSAGING_SYSTEM]:c.MESSAGING_SYSTEM_VALUE_KAFKA,[c.ATTR_MESSAGING_OPERATION_NAME]:"process",[c.ATTR_MESSAGING_DESTINATION_NAME]:Y.topic,[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:String(Y.partition)})],z=w0.context.with(w0.trace.setSpan(X,W),()=>{return J.apply(this,$)});return Z._endSpansOnPromise([W],K,z)}}}_getConsumerEachBatchPatch(){return(Z)=>{let J=this;return function(...$){let Y=$[0],X=J._startConsumerSpan({topic:Y.batch.topic,message:void 0,operationType:c.MESSAGING_OPERATION_TYPE_VALUE_RECEIVE,ctx:w0.ROOT_CONTEXT,attributes:{[c.ATTR_MESSAGING_BATCH_MESSAGE_COUNT]:Y.batch.messages.length,[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:String(Y.batch.partition)}});return w0.context.with(w0.trace.setSpan(w0.context.active(),X),()=>{let W=Date.now(),K=[],z=[Bz(J._consumedMessages,Y.batch.messages.length,{[c.ATTR_MESSAGING_SYSTEM]:c.MESSAGING_SYSTEM_VALUE_KAFKA,[c.ATTR_MESSAGING_OPERATION_NAME]:"process",[c.ATTR_MESSAGING_DESTINATION_NAME]:Y.batch.topic,[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:String(Y.batch.partition)})];Y.batch.messages.forEach((H)=>{let B=w0.propagation.extract(w0.ROOT_CONTEXT,H.headers,Kt.bufferTextMapGetter),V=w0.trace.getSpan(B)?.spanContext(),F;if(V)F={context:V};K.push(J._startConsumerSpan({topic:Y.batch.topic,message:H,operationType:c.MESSAGING_OPERATION_TYPE_VALUE_PROCESS,link:F,attributes:{[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:String(Y.batch.partition)}})),z.push(Gt(J._processDuration,W,{[c.ATTR_MESSAGING_SYSTEM]:c.MESSAGING_SYSTEM_VALUE_KAFKA,[c.ATTR_MESSAGING_OPERATION_NAME]:"process",[c.ATTR_MESSAGING_DESTINATION_NAME]:Y.batch.topic,[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:String(Y.batch.partition)}))});let G=Z.apply(this,$);return K.unshift(X),J._endSpansOnPromise(K,z,G)})}}}_getProducerTransactionPatch(){let Z=this;return(J)=>{return function(...$){let Y=Z.tracer.startSpan("transaction"),X=J.apply(this,$);return X.then((W)=>{let K=W.send;W.send=function(...V){return w0.context.with(w0.trace.setSpan(w0.context.active(),Y),()=>{return Z._getSendPatch()(K).apply(this,V).catch((U)=>{throw Y.setStatus({code:w0.SpanStatusCode.ERROR,message:U?.message}),Y.recordException(U),U})})};let z=W.sendBatch;W.sendBatch=function(...V){return w0.context.with(w0.trace.setSpan(w0.context.active(),Y),()=>{return Z._getSendBatchPatch()(z).apply(this,V).catch((U)=>{throw Y.setStatus({code:w0.SpanStatusCode.ERROR,message:U?.message}),Y.recordException(U),U})})};let G=W.commit;W.commit=function(...V){let F=G.apply(this,V).then(()=>{Y.setStatus({code:w0.SpanStatusCode.OK})});return Z._endSpansOnPromise([Y],[],F)};let H=W.abort;W.abort=function(...V){let F=H.apply(this,V);return Z._endSpansOnPromise([Y],[],F)}}).catch((W)=>{Y.setStatus({code:w0.SpanStatusCode.ERROR,message:W?.message}),Y.recordException(W),Y.end()}),X}}}_getSendBatchPatch(){let Z=this;return(J)=>{return function(...$){let X=$[0].topicMessages||[],W=[],K=[];X.forEach((G)=>{G.messages.forEach((H)=>{W.push(Z._startProducerSpan(G.topic,H)),K.push(Bz(Z._sentMessages,1,{[c.ATTR_MESSAGING_SYSTEM]:c.MESSAGING_SYSTEM_VALUE_KAFKA,[c.ATTR_MESSAGING_OPERATION_NAME]:"send",[c.ATTR_MESSAGING_DESTINATION_NAME]:G.topic,...H.partition!==void 0?{[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:String(H.partition)}:{}}))})});let z=J.apply(this,$);return Z._endSpansOnPromise(W,K,z)}}}_getSendPatch(){let Z=this;return(J)=>{return function(...$){let Y=$[0],X=Y.messages.map((z)=>{return Z._startProducerSpan(Y.topic,z)}),W=Y.messages.map((z)=>Bz(Z._sentMessages,1,{[c.ATTR_MESSAGING_SYSTEM]:c.MESSAGING_SYSTEM_VALUE_KAFKA,[c.ATTR_MESSAGING_OPERATION_NAME]:"send",[c.ATTR_MESSAGING_DESTINATION_NAME]:Y.topic,...z.partition!==void 0?{[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:String(z.partition)}:{}})),K=J.apply(this,$);return Z._endSpansOnPromise(X,W,K)}}}_endSpansOnPromise(Z,J,Q){return Promise.resolve(Q).then(($)=>{return J.forEach((Y)=>Y()),$}).catch(($)=>{let Y,X=yJ.ERROR_TYPE_VALUE_OTHER;if(typeof $==="string"||$===void 0)Y=$;else if(typeof $==="object"&&Object.prototype.hasOwnProperty.call($,"message"))Y=$.message,X=$.constructor.name;throw J.forEach((W)=>W(X)),Z.forEach((W)=>{W.setAttribute(yJ.ATTR_ERROR_TYPE,X),W.setStatus({code:w0.SpanStatusCode.ERROR,message:Y})}),$}).finally(()=>{Z.forEach(($)=>$.end())})}_startConsumerSpan({topic:Z,message:J,operationType:Q,ctx:$,link:Y,attributes:X}){let W=Q===c.MESSAGING_OPERATION_TYPE_VALUE_RECEIVE?"poll":Q,K=this.tracer.startSpan(`${W} ${Z}`,{kind:Q===c.MESSAGING_OPERATION_TYPE_VALUE_RECEIVE?w0.SpanKind.CLIENT:w0.SpanKind.CONSUMER,attributes:{...X,[c.ATTR_MESSAGING_SYSTEM]:c.MESSAGING_SYSTEM_VALUE_KAFKA,[c.ATTR_MESSAGING_DESTINATION_NAME]:Z,[c.ATTR_MESSAGING_OPERATION_TYPE]:Q,[c.ATTR_MESSAGING_OPERATION_NAME]:W,[c.ATTR_MESSAGING_KAFKA_MESSAGE_KEY]:J?.key?String(J.key):void 0,[c.ATTR_MESSAGING_KAFKA_MESSAGE_TOMBSTONE]:J?.key&&J.value===null?!0:void 0,[c.ATTR_MESSAGING_KAFKA_OFFSET]:J?.offset},links:Y?[Y]:[]},$),{consumerHook:z}=this.getConfig();if(z&&J)(0,Y9.safeExecuteInTheMiddle)(()=>z(K,{topic:Z,message:J}),(G)=>{if(G)this._diag.error("consumerHook error",G)},!0);return K}_startProducerSpan(Z,J){let Q=this.tracer.startSpan(`send ${Z}`,{kind:w0.SpanKind.PRODUCER,attributes:{[c.ATTR_MESSAGING_SYSTEM]:c.MESSAGING_SYSTEM_VALUE_KAFKA,[c.ATTR_MESSAGING_DESTINATION_NAME]:Z,[c.ATTR_MESSAGING_KAFKA_MESSAGE_KEY]:J.key?String(J.key):void 0,[c.ATTR_MESSAGING_KAFKA_MESSAGE_TOMBSTONE]:J.key&&J.value===null?!0:void 0,[c.ATTR_MESSAGING_DESTINATION_PARTITION_ID]:J.partition!==void 0?String(J.partition):void 0,[c.ATTR_MESSAGING_OPERATION_NAME]:"send",[c.ATTR_MESSAGING_OPERATION_TYPE]:c.MESSAGING_OPERATION_TYPE_VALUE_SEND}});J.headers=J.headers??{},w0.propagation.inject(w0.trace.setSpan(w0.context.active(),Q),J.headers);let{producerHook:$}=this.getConfig();if($)(0,Y9.safeExecuteInTheMiddle)(()=>$(Q,{topic:Z,message:J}),(Y)=>{if(Y)this._diag.error("producerHook error",Y)},!0);return Q}}Vt.KafkaJsInstrumentation=Bt});var qt=j((Lj)=>{Object.defineProperty(Lj,"__esModule",{value:!0});Lj.KafkaJsInstrumentation=void 0;var wh0=Ut();Object.defineProperty(Lj,"KafkaJsInstrumentation",{enumerable:!0,get:function(){return wh0.KafkaJsInstrumentation}})});var wt,jt="Kafka",Dt,Dh0=()=>{return{name:jt,setupOnce(){Dt()}}},h$;var Cj=q(()=>{N();X0();wt=A(qt(),1),Dt=S(jt,()=>new wt.KafkaJsInstrumentation({consumerHook(Z){q0(Z,"auto.kafkajs.otel.consumer")},producerHook(Z){q0(Z,"auto.kafkajs.otel.producer")}})),h$=P(Dh0)});var Ct=j((Ot)=>{Object.defineProperty(Ot,"__esModule",{value:!0});Ot.PACKAGE_NAME=Ot.PACKAGE_VERSION=void 0;Ot.PACKAGE_VERSION="0.57.0";Ot.PACKAGE_NAME="@opentelemetry/instrumentation-lru-memoizer"});var It=j((Nt)=>{Object.defineProperty(Nt,"__esModule",{value:!0});Nt.LruMemoizerInstrumentation=void 0;var Pt=I(),Mt=n(),Rt=Ct();class kt extends Mt.InstrumentationBase{constructor(Z={}){super(Rt.PACKAGE_NAME,Rt.PACKAGE_VERSION,Z)}init(){return[new Mt.InstrumentationNodeModuleDefinition("lru-memoizer",[">=1.3 <3"],(Z)=>{let J=function(){let Q=Z.apply(this,arguments);return function(){let $=[...arguments],Y=$.pop(),X=typeof Y==="function"?Pt.context.bind(Pt.context.active(),Y):Y;return $.push(X),Q.apply(this,$)}};return J.sync=Z.sync,J},void 0)]}}Nt.LruMemoizerInstrumentation=kt});var Tt=j((Pj)=>{Object.defineProperty(Pj,"__esModule",{value:!0});Pj.LruMemoizerInstrumentation=void 0;var Lh0=It();Object.defineProperty(Pj,"LruMemoizerInstrumentation",{enumerable:!0,get:function(){return Lh0.LruMemoizerInstrumentation}})});var Et,ft="LruMemoizer",yt,Ph0=()=>{return{name:ft,setupOnce(){yt()}}},b$;var Mj=q(()=>{N();X0();Et=A(Tt(),1),yt=S(ft,()=>new Et.LruMemoizerInstrumentation),b$=P(Ph0)});var ht=j((St)=>{Object.defineProperty(St,"__esModule",{value:!0});St.METRIC_DB_CLIENT_CONNECTIONS_USAGE=St.DB_SYSTEM_VALUE_MONGODB=St.DB_SYSTEM_NAME_VALUE_MONGODB=St.ATTR_NET_PEER_PORT=St.ATTR_NET_PEER_NAME=St.ATTR_DB_SYSTEM=St.ATTR_DB_STATEMENT=St.ATTR_DB_OPERATION=St.ATTR_DB_NAME=St.ATTR_DB_MONGODB_COLLECTION=St.ATTR_DB_CONNECTION_STRING=void 0;St.ATTR_DB_CONNECTION_STRING="db.connection_string";St.ATTR_DB_MONGODB_COLLECTION="db.mongodb.collection";St.ATTR_DB_NAME="db.name";St.ATTR_DB_OPERATION="db.operation";St.ATTR_DB_STATEMENT="db.statement";St.ATTR_DB_SYSTEM="db.system";St.ATTR_NET_PEER_NAME="net.peer.name";St.ATTR_NET_PEER_PORT="net.peer.port";St.DB_SYSTEM_NAME_VALUE_MONGODB="mongodb";St.DB_SYSTEM_VALUE_MONGODB="mongodb";St.METRIC_DB_CLIENT_CONNECTIONS_USAGE="db.client.connections.usage"});var vt=j((bt)=>{Object.defineProperty(bt,"__esModule",{value:!0});bt.MongodbCommandType=void 0;var Sh0;(function(Z){Z.CREATE_INDEXES="createIndexes",Z.FIND_AND_MODIFY="findAndModify",Z.IS_MASTER="isMaster",Z.COUNT="count",Z.AGGREGATE="aggregate",Z.UNKNOWN="unknown"})(Sh0=bt.MongodbCommandType||(bt.MongodbCommandType={}))});var dt=j((xt)=>{Object.defineProperty(xt,"__esModule",{value:!0});xt.PACKAGE_NAME=xt.PACKAGE_VERSION=void 0;xt.PACKAGE_VERSION="0.66.0";xt.PACKAGE_NAME="@opentelemetry/instrumentation-mongodb"});var pt=j((ut)=>{Object.defineProperty(ut,"__esModule",{value:!0});ut.MongoDBInstrumentation=void 0;var v0=I(),W0=n(),r8=Y0(),y6=ht(),I5=vt(),ct=dt(),mt={requireParentSpan:!0};class kj extends W0.InstrumentationBase{_netSemconvStability;_dbSemconvStability;constructor(Z={}){super(ct.PACKAGE_NAME,ct.PACKAGE_VERSION,{...mt,...Z});this._setSemconvStabilityFromEnv()}_setSemconvStabilityFromEnv(){this._netSemconvStability=(0,W0.semconvStabilityFromStr)("http",process.env.OTEL_SEMCONV_STABILITY_OPT_IN),this._dbSemconvStability=(0,W0.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}setConfig(Z={}){super.setConfig({...mt,...Z})}_updateMetricInstruments(){this._connectionsUsage=this.meter.createUpDownCounter(y6.METRIC_DB_CLIENT_CONNECTIONS_USAGE,{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}_connCountAdd(Z,J,Q){this._connectionsUsage?.add(Z,{"pool.name":J,state:Q})}init(){let{v3PatchConnection:Z,v3UnpatchConnection:J}=this._getV3ConnectionPatches(),{v4PatchConnect:Q,v4UnpatchConnect:$}=this._getV4ConnectPatches(),{v4PatchConnectionCallback:Y,v4PatchConnectionPromise:X,v4UnpatchConnection:W}=this._getV4ConnectionPatches(),{v4PatchConnectionPool:K,v4UnpatchConnectionPool:z}=this._getV4ConnectionPoolPatches(),{v4PatchSessions:G,v4UnpatchSessions:H}=this._getV4SessionsPatches();return[new W0.InstrumentationNodeModuleDefinition("mongodb",[">=3.3.0 <4"],void 0,void 0,[new W0.InstrumentationNodeModuleFile("mongodb/lib/core/wireprotocol/index.js",[">=3.3.0 <4"],Z,J)]),new W0.InstrumentationNodeModuleDefinition("mongodb",[">=4.0.0 <8"],void 0,void 0,[new W0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection.js",[">=4.0.0 <6.4"],Y,W),new W0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection.js",[">=6.4.0 <8"],X,W),new W0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection_pool.js",[">=4.0.0 <6.4"],K,z),new W0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connect.js",[">=4.0.0 <8"],Q,$),new W0.InstrumentationNodeModuleFile("mongodb/lib/sessions.js",[">=4.0.0 <8"],G,H)])]}_getV3ConnectionPatches(){return{v3PatchConnection:(Z)=>{if((0,W0.isWrapped)(Z.insert))this._unwrap(Z,"insert");if(this._wrap(Z,"insert",this._getV3PatchOperation("insert")),(0,W0.isWrapped)(Z.remove))this._unwrap(Z,"remove");if(this._wrap(Z,"remove",this._getV3PatchOperation("remove")),(0,W0.isWrapped)(Z.update))this._unwrap(Z,"update");if(this._wrap(Z,"update",this._getV3PatchOperation("update")),(0,W0.isWrapped)(Z.command))this._unwrap(Z,"command");if(this._wrap(Z,"command",this._getV3PatchCommand()),(0,W0.isWrapped)(Z.query))this._unwrap(Z,"query");if(this._wrap(Z,"query",this._getV3PatchFind()),(0,W0.isWrapped)(Z.getMore))this._unwrap(Z,"getMore");return this._wrap(Z,"getMore",this._getV3PatchCursor()),Z},v3UnpatchConnection:(Z)=>{if(Z===void 0)return;this._unwrap(Z,"insert"),this._unwrap(Z,"remove"),this._unwrap(Z,"update"),this._unwrap(Z,"command"),this._unwrap(Z,"query"),this._unwrap(Z,"getMore")}}}_getV4SessionsPatches(){return{v4PatchSessions:(Z)=>{if((0,W0.isWrapped)(Z.acquire))this._unwrap(Z,"acquire");if(this._wrap(Z.ServerSessionPool.prototype,"acquire",this._getV4AcquireCommand()),(0,W0.isWrapped)(Z.release))this._unwrap(Z,"release");return this._wrap(Z.ServerSessionPool.prototype,"release",this._getV4ReleaseCommand()),Z},v4UnpatchSessions:(Z)=>{if(Z===void 0)return;if((0,W0.isWrapped)(Z.acquire))this._unwrap(Z,"acquire");if((0,W0.isWrapped)(Z.release))this._unwrap(Z,"release")}}}_getV4AcquireCommand(){let Z=this;return(J)=>{return function(){let $=this.sessions.length,Y=J.call(this),X=this.sessions.length;if($===X)Z._connCountAdd(1,Z._poolName,"used");else if($-1===X)Z._connCountAdd(-1,Z._poolName,"idle"),Z._connCountAdd(1,Z._poolName,"used");return Y}}}_getV4ReleaseCommand(){let Z=this;return(J)=>{return function($){let Y=J.call(this,$);return Z._connCountAdd(-1,Z._poolName,"used"),Z._connCountAdd(1,Z._poolName,"idle"),Y}}}_getV4ConnectionPoolPatches(){return{v4PatchConnectionPool:(Z)=>{let J=Z.ConnectionPool.prototype;if((0,W0.isWrapped)(J.checkOut))this._unwrap(J,"checkOut");return this._wrap(J,"checkOut",this._getV4ConnectionPoolCheckOut()),Z},v4UnpatchConnectionPool:(Z)=>{if(Z===void 0)return;this._unwrap(Z.ConnectionPool.prototype,"checkOut")}}}_getV4ConnectPatches(){return{v4PatchConnect:(Z)=>{if((0,W0.isWrapped)(Z.connect))this._unwrap(Z,"connect");return this._wrap(Z,"connect",this._getV4ConnectCommand()),Z},v4UnpatchConnect:(Z)=>{if(Z===void 0)return;this._unwrap(Z,"connect")}}}_getV4ConnectionPoolCheckOut(){return(Z)=>{return function(Q){let $=v0.context.bind(v0.context.active(),Q);return Z.call(this,$)}}}_getV4ConnectCommand(){let Z=this;return(J)=>{return function($,Y){if(J.length===1){let W=J.call(this,$);if(W&&typeof W.then==="function")W.then(()=>Z.setPoolName($),()=>{return});return W}let X=function(W,K){if(W||!K){Y(W,K);return}Z.setPoolName($),Y(W,K)};return J.call(this,$,X)}}}_getV4ConnectionPatches(){return{v4PatchConnectionCallback:(Z)=>{if((0,W0.isWrapped)(Z.Connection.prototype.command))this._unwrap(Z.Connection.prototype,"command");return this._wrap(Z.Connection.prototype,"command",this._getV4PatchCommandCallback()),Z},v4PatchConnectionPromise:(Z)=>{if((0,W0.isWrapped)(Z.Connection.prototype.command))this._unwrap(Z.Connection.prototype,"command");return this._wrap(Z.Connection.prototype,"command",this._getV4PatchCommandPromise()),Z},v4UnpatchConnection:(Z)=>{if(Z===void 0)return;this._unwrap(Z.Connection.prototype,"command")}}}_getV3PatchOperation(Z){let J=this;return(Q)=>{return function(Y,X,W,K,z){let G=v0.trace.getSpan(v0.context.active()),H=J._checkSkipInstrumentation(G),B=typeof K==="function"?K:z;if(H||typeof B!=="function"||typeof W!=="object")if(typeof K==="function")return Q.call(this,Y,X,W,K);else return Q.call(this,Y,X,W,K,z);let V=J._getV3SpanAttributes(X,Y,W[0],Z),F=J._spanNameFromAttrs(V),U=J.tracer.startSpan(F,{kind:v0.SpanKind.CLIENT,attributes:V}),w=J._patchEnd(U,B);if(typeof K==="function")return Q.call(this,Y,X,W,w);else return Q.call(this,Y,X,W,K,w)}}}_getV3PatchCommand(){let Z=this;return(J)=>{return function($,Y,X,W,K){let z=v0.trace.getSpan(v0.context.active()),G=Z._checkSkipInstrumentation(z),H=typeof W==="function"?W:K;if(G||typeof H!=="function"||typeof X!=="object")if(typeof W==="function")return J.call(this,$,Y,X,W);else return J.call(this,$,Y,X,W,K);let B=kj._getCommandType(X),V=B===I5.MongodbCommandType.UNKNOWN?void 0:B,F=Z._getV3SpanAttributes(Y,$,X,V),U=Z._spanNameFromAttrs(F),w=Z.tracer.startSpan(U,{kind:v0.SpanKind.CLIENT,attributes:F}),D=Z._patchEnd(w,H);if(typeof W==="function")return J.call(this,$,Y,X,D);else return J.call(this,$,Y,X,W,D)}}}_getV4PatchCommandCallback(){let Z=this;return(J)=>{return function($,Y,X,W){let K=v0.trace.getSpan(v0.context.active()),z=Z._checkSkipInstrumentation(K),G=W,H=Object.keys(Y)[0];if(typeof Y!=="object"||Y.ismaster||Y.hello)return J.call(this,$,Y,X,W);let B=void 0;if(!z){let F=Z._getV4SpanAttributes(this,$,Y,H),U=Z._spanNameFromAttrs(F);B=Z.tracer.startSpan(U,{kind:v0.SpanKind.CLIENT,attributes:F})}let V=Z._patchEnd(B,G,this.id,H);return J.call(this,$,Y,X,V)}}}_getV4PatchCommandPromise(){let Z=this;return(J)=>{return function(...$){let[Y,X]=$,W=v0.trace.getSpan(v0.context.active()),K=Z._checkSkipInstrumentation(W),z=Object.keys(X)[0],G=()=>{return};if(typeof X!=="object"||X.ismaster||X.hello)return J.apply(this,$);let H=void 0;if(!K){let F=Z._getV4SpanAttributes(this,Y,X,z),U=Z._spanNameFromAttrs(F);H=Z.tracer.startSpan(U,{kind:v0.SpanKind.CLIENT,attributes:F})}let B=Z._patchEnd(H,G,this.id,z),V=J.apply(this,$);return V.then((F)=>B(null,F),(F)=>B(F)),V}}}_getV3PatchFind(){let Z=this;return(J)=>{return function($,Y,X,W,K,z){let G=v0.trace.getSpan(v0.context.active()),H=Z._checkSkipInstrumentation(G),B=typeof K==="function"?K:z;if(H||typeof B!=="function"||typeof X!=="object")if(typeof K==="function")return J.call(this,$,Y,X,W,K);else return J.call(this,$,Y,X,W,K,z);let V=Z._getV3SpanAttributes(Y,$,X,"find"),F=Z._spanNameFromAttrs(V),U=Z.tracer.startSpan(F,{kind:v0.SpanKind.CLIENT,attributes:V}),w=Z._patchEnd(U,B);if(typeof K==="function")return J.call(this,$,Y,X,W,w);else return J.call(this,$,Y,X,W,K,w)}}}_getV3PatchCursor(){let Z=this;return(J)=>{return function($,Y,X,W,K,z){let G=v0.trace.getSpan(v0.context.active()),H=Z._checkSkipInstrumentation(G),B=typeof K==="function"?K:z;if(H||typeof B!=="function")if(typeof K==="function")return J.call(this,$,Y,X,W,K);else return J.call(this,$,Y,X,W,K,z);let V=Z._getV3SpanAttributes(Y,$,X.cmd,"getMore"),F=Z._spanNameFromAttrs(V),U=Z.tracer.startSpan(F,{kind:v0.SpanKind.CLIENT,attributes:V}),w=Z._patchEnd(U,B);if(typeof K==="function")return J.call(this,$,Y,X,W,w);else return J.call(this,$,Y,X,W,K,w)}}}static _getCommandType(Z){if(Z.createIndexes!==void 0)return I5.MongodbCommandType.CREATE_INDEXES;else if(Z.findandmodify!==void 0)return I5.MongodbCommandType.FIND_AND_MODIFY;else if(Z.ismaster!==void 0)return I5.MongodbCommandType.IS_MASTER;else if(Z.count!==void 0)return I5.MongodbCommandType.COUNT;else if(Z.aggregate!==void 0)return I5.MongodbCommandType.AGGREGATE;else return I5.MongodbCommandType.UNKNOWN}_getV4SpanAttributes(Z,J,Q,$){let Y,X;if(Z){let K=typeof Z.address==="string"?Z.address.split(":"):"";if(K.length===2)Y=K[0],X=K[1]}let W;if(Q?.documents&&Q.documents[0])W=Q.documents[0];else if(Q?.cursors)W=Q.cursors;else W=Q;return this._getSpanAttributes(J.db,J.collection,Y,X,W,$)}_getV3SpanAttributes(Z,J,Q,$){let Y,X;if(J&&J.s){if(Y=J.s.options?.host??J.s.host,X=(J.s.options?.port??J.s.port)?.toString(),Y==null||X==null){let G=J.description?.address;if(G){let H=G.split(":");Y=H[0],X=H[1]}}}let[W,K]=Z.toString().split("."),z=Q?.query??Q?.q??Q;return this._getSpanAttributes(W,K,Y,X,z,$)}_getSpanAttributes(Z,J,Q,$,Y,X){let W={};if(this._dbSemconvStability&W0.SemconvStability.OLD)W[y6.ATTR_DB_SYSTEM]=y6.DB_SYSTEM_VALUE_MONGODB,W[y6.ATTR_DB_NAME]=Z,W[y6.ATTR_DB_MONGODB_COLLECTION]=J,W[y6.ATTR_DB_OPERATION]=X,W[y6.ATTR_DB_CONNECTION_STRING]=`mongodb://${Q}:${$}/${Z}`;if(this._dbSemconvStability&W0.SemconvStability.STABLE)W[r8.ATTR_DB_SYSTEM_NAME]=y6.DB_SYSTEM_NAME_VALUE_MONGODB,W[r8.ATTR_DB_NAMESPACE]=Z,W[r8.ATTR_DB_OPERATION_NAME]=X,W[r8.ATTR_DB_COLLECTION_NAME]=J;if(Q&&$){if(this._netSemconvStability&W0.SemconvStability.OLD)W[y6.ATTR_NET_PEER_NAME]=Q;if(this._netSemconvStability&W0.SemconvStability.STABLE)W[r8.ATTR_SERVER_ADDRESS]=Q;let K=parseInt($,10);if(!isNaN(K)){if(this._netSemconvStability&W0.SemconvStability.OLD)W[y6.ATTR_NET_PEER_PORT]=K;if(this._netSemconvStability&W0.SemconvStability.STABLE)W[r8.ATTR_SERVER_PORT]=K}}if(Y){let{dbStatementSerializer:K}=this.getConfig(),z=typeof K==="function"?K:this._defaultDbStatementSerializer.bind(this);(0,W0.safeExecuteInTheMiddle)(()=>{let G=z(Y);if(this._dbSemconvStability&W0.SemconvStability.OLD)W[y6.ATTR_DB_STATEMENT]=G;if(this._dbSemconvStability&W0.SemconvStability.STABLE)W[r8.ATTR_DB_QUERY_TEXT]=G},(G)=>{if(G)this._diag.error("Error running dbStatementSerializer hook",G)},!0)}return W}_spanNameFromAttrs(Z){let J;if(this._dbSemconvStability&W0.SemconvStability.STABLE)J=[Z[r8.ATTR_DB_OPERATION_NAME],Z[r8.ATTR_DB_COLLECTION_NAME]].filter((Q)=>Q).join(" ")||y6.DB_SYSTEM_NAME_VALUE_MONGODB;else J=`mongodb.${Z[y6.ATTR_DB_OPERATION]||"command"}`;return J}_getDefaultDbStatementReplacer(){let Z=new WeakSet;return(J,Q)=>{if(typeof Q!=="object"||!Q)return"?";if(Z.has(Q))return"[Circular]";return Z.add(Q),Q}}_defaultDbStatementSerializer(Z){let{enhancedDatabaseReporting:J}=this.getConfig();if(J)return JSON.stringify(Z);return JSON.stringify(Z,this._getDefaultDbStatementReplacer())}_handleExecutionResult(Z,J){let{responseHook:Q}=this.getConfig();if(typeof Q==="function")(0,W0.safeExecuteInTheMiddle)(()=>{Q(Z,{data:J})},($)=>{if($)this._diag.error("Error running response hook",$)},!0)}_patchEnd(Z,J,Q,$){let Y=v0.context.active(),X=this,W=!1;return function(...z){if(!W){W=!0;let G=z[0];if(Z){if(G instanceof Error)Z.setStatus({code:v0.SpanStatusCode.ERROR,message:G.message});else{let H=z[1];X._handleExecutionResult(Z,H)}Z.end()}if($==="endSessions")X._connCountAdd(-1,X._poolName,"idle")}return v0.context.with(Y,()=>{return J.apply(this,z)})}}setPoolName(Z){let J=Z.hostAddress?.host,Q=Z.hostAddress?.port,$=Z.dbName,Y=`mongodb://${J}:${Q}/${$}`;this._poolName=Y}_checkSkipInstrumentation(Z){return this.getConfig().requireParentSpan===!0&&Z===void 0}}ut.MongoDBInstrumentation=kj});var ot=j((it)=>{Object.defineProperty(it,"__esModule",{value:!0});it.MongodbCommandType=void 0;var hh0;(function(Z){Z.CREATE_INDEXES="createIndexes",Z.FIND_AND_MODIFY="findAndModify",Z.IS_MASTER="isMaster",Z.COUNT="count",Z.UNKNOWN="unknown"})(hh0=it.MongodbCommandType||(it.MongodbCommandType={}))});var nt=j((Vz)=>{Object.defineProperty(Vz,"__esModule",{value:!0});Vz.MongodbCommandType=Vz.MongoDBInstrumentation=void 0;var bh0=pt();Object.defineProperty(Vz,"MongoDBInstrumentation",{enumerable:!0,get:function(){return bh0.MongoDBInstrumentation}});var vh0=ot();Object.defineProperty(Vz,"MongodbCommandType",{enumerable:!0,get:function(){return vh0.MongodbCommandType}})});function gh0(Z){let J=Aj(Z);return JSON.stringify(J)}function Aj(Z){if(Array.isArray(Z))return Z.map((J)=>Aj(J));if(dh0(Z)){let J={};return Object.entries(Z).map(([Q,$])=>[Q,Aj($)]).reduce((Q,$)=>{if(mh0($))Q[$[0]]=$[1];return Q},J)}return"?"}function dh0(Z){return typeof Z==="object"&&Z!==null&&!ch0(Z)}function ch0(Z){let J=!1;if(typeof Buffer<"u")J=Buffer.isBuffer(Z);return J}function mh0(Z){return Array.isArray(Z)}var at,st="Mongo",rt,uh0=()=>{return{name:st,setupOnce(){rt()}}},v$;var Ij=q(()=>{N();X0();at=A(nt(),1),rt=S(st,()=>new at.MongoDBInstrumentation({dbStatementSerializer:gh0,responseHook(Z){q0(Z,"auto.db.otel.mongo")}}));v$=P(uh0)});var Tj=j((tt)=>{Object.defineProperty(tt,"__esModule",{value:!0});tt.DB_SYSTEM_NAME_VALUE_MONGODB=tt.ATTR_NET_PEER_PORT=tt.ATTR_NET_PEER_NAME=tt.ATTR_DB_USER=tt.ATTR_DB_SYSTEM=tt.ATTR_DB_STATEMENT=tt.ATTR_DB_OPERATION=tt.ATTR_DB_NAME=tt.ATTR_DB_MONGODB_COLLECTION=void 0;tt.ATTR_DB_MONGODB_COLLECTION="db.mongodb.collection";tt.ATTR_DB_NAME="db.name";tt.ATTR_DB_OPERATION="db.operation";tt.ATTR_DB_STATEMENT="db.statement";tt.ATTR_DB_SYSTEM="db.system";tt.ATTR_DB_USER="db.user";tt.ATTR_NET_PEER_NAME="net.peer.name";tt.ATTR_NET_PEER_PORT="net.peer.port";tt.DB_SYSTEM_NAME_VALUE_MONGODB="mongodb"});var Ye=j((Qe)=>{Object.defineProperty(Qe,"__esModule",{value:!0});Qe.handleCallbackResponse=Qe.handlePromiseResponse=Qe.getAttributesFromCollection=void 0;var Ze=I(),g$=n(),x$=Tj(),Fz=Y0();function th0(Z,J,Q){let $={};if(J&g$.SemconvStability.OLD)$[x$.ATTR_DB_MONGODB_COLLECTION]=Z.name,$[x$.ATTR_DB_NAME]=Z.conn.name,$[x$.ATTR_DB_USER]=Z.conn.user;if(J&g$.SemconvStability.STABLE)$[Fz.ATTR_DB_COLLECTION_NAME]=Z.name,$[Fz.ATTR_DB_NAMESPACE]=Z.conn.name;if(Q&g$.SemconvStability.OLD)$[x$.ATTR_NET_PEER_NAME]=Z.conn.host,$[x$.ATTR_NET_PEER_PORT]=Z.conn.port;if(Q&g$.SemconvStability.STABLE)$[Fz.ATTR_SERVER_ADDRESS]=Z.conn.host,$[Fz.ATTR_SERVER_PORT]=Z.conn.port;return $}Qe.getAttributesFromCollection=th0;function Je(Z,J={}){Z.recordException(J),Z.setStatus({code:Ze.SpanStatusCode.ERROR,message:`${J.message} ${J.code?`
|
|
40
|
+
Mongoose Error Code: ${J.code}`:""}`})}function Ej(Z,J,Q,$=void 0){if(!Q)return;(0,g$.safeExecuteInTheMiddle)(()=>Q(Z,{moduleVersion:$,response:J}),(Y)=>{if(Y)Ze.diag.error("mongoose instrumentation: responseHook error",Y)},!0)}function eh0(Z,J,Q,$=void 0){if(!(Z instanceof Promise))return Ej(J,Z,Q,$),J.end(),Z;return Z.then((Y)=>{return Ej(J,Y,Q,$),Y}).catch((Y)=>{throw Je(J,Y),Y}).finally(()=>J.end())}Qe.handlePromiseResponse=eh0;function Zb0(Z,J,Q,$,Y,X,W=void 0){let K=0;if(Y.length===2)K=1;else if(Y.length===3)K=2;return Y[K]=(z,G)=>{if(z)Je($,z);else Ej($,G,X,W);return $.end(),Z(z,G)},J.apply(Q,Y)}Qe.handleCallbackResponse=Zb0});var Ke=j((Xe)=>{Object.defineProperty(Xe,"__esModule",{value:!0});Xe.PACKAGE_NAME=Xe.PACKAGE_VERSION=void 0;Xe.PACKAGE_VERSION="0.59.0";Xe.PACKAGE_NAME="@opentelemetry/instrumentation-mongoose"});var qe=j((Fe)=>{Object.defineProperty(Fe,"__esModule",{value:!0});Fe.MongooseInstrumentation=Fe._ALREADY_INSTRUMENTED=Fe._STORED_PARENT_SPAN=void 0;var H1=I(),Yb0=R0(),fj=Ye(),f1=n(),ze=Ke(),X7=Tj(),T5=Y0(),Uz=["deleteOne","deleteMany","find","findOne","estimatedDocumentCount","countDocuments","distinct","where","$where","findOneAndUpdate","findOneAndDelete","findOneAndReplace"],Xb0=["remove","count","findOneAndRemove",...Uz],Wb0=["count","findOneAndRemove",...Uz],Kb0=[...Uz];function Ge(Z){if(!Z)return Uz;else if(Z.startsWith("6.")||Z.startsWith("5."))return Xb0;else if(Z.startsWith("7."))return Wb0;else return Kb0}function He(Z){return Z&&(Z.startsWith("5.")||Z.startsWith("6."))||!1}function Be(Z){if(!Z||!Z.startsWith("8."))return!1;return parseInt(Z.split(".")[1],10)>=21}Fe._STORED_PARENT_SPAN=Symbol("stored-parent-span");Fe._ALREADY_INSTRUMENTED=Symbol("already-instrumented");class Ve extends f1.InstrumentationBase{_netSemconvStability;_dbSemconvStability;constructor(Z={}){super(ze.PACKAGE_NAME,ze.PACKAGE_VERSION,Z);this._setSemconvStabilityFromEnv()}_setSemconvStabilityFromEnv(){this._netSemconvStability=(0,f1.semconvStabilityFromStr)("http",process.env.OTEL_SEMCONV_STABILITY_OPT_IN),this._dbSemconvStability=(0,f1.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}init(){return new f1.InstrumentationNodeModuleDefinition("mongoose",[">=5.9.7 <10"],this.patch.bind(this),this.unpatch.bind(this))}patch(Z,J){let Q=Z[Symbol.toStringTag]==="Module"?Z.default:Z;if(this._wrap(Q.Model.prototype,"save",this.patchOnModelMethods("save",J)),Q.Model.prototype.$save=Q.Model.prototype.save,He(J))this._wrap(Q.Model.prototype,"remove",this.patchOnModelMethods("remove",J));if(Be(J))this._wrap(Q.Model.prototype,"updateOne",this._patchDocumentUpdateMethods("updateOne",J)),this._wrap(Q.Model.prototype,"deleteOne",this._patchDocumentUpdateMethods("deleteOne",J));return this._wrap(Q.Query.prototype,"exec",this.patchQueryExec(J)),this._wrap(Q.Aggregate.prototype,"exec",this.patchAggregateExec(J)),Ge(J).forEach((Y)=>{this._wrap(Q.Query.prototype,Y,this.patchAndCaptureSpanContext(Y))}),this._wrap(Q.Model,"aggregate",this.patchModelAggregate()),this._wrap(Q.Model,"insertMany",this.patchModelStatic("insertMany",J)),this._wrap(Q.Model,"bulkWrite",this.patchModelStatic("bulkWrite",J)),Q}unpatch(Z,J){let Q=Z[Symbol.toStringTag]==="Module"?Z.default:Z,$=Ge(J);if(this._unwrap(Q.Model.prototype,"save"),Q.Model.prototype.$save=Q.Model.prototype.save,He(J))this._unwrap(Q.Model.prototype,"remove");if(Be(J))this._unwrap(Q.Model.prototype,"updateOne"),this._unwrap(Q.Model.prototype,"deleteOne");this._unwrap(Q.Query.prototype,"exec"),this._unwrap(Q.Aggregate.prototype,"exec"),$.forEach((Y)=>{this._unwrap(Q.Query.prototype,Y)}),this._unwrap(Q.Model,"aggregate"),this._unwrap(Q.Model,"insertMany"),this._unwrap(Q.Model,"bulkWrite")}patchAggregateExec(Z){let J=this;return(Q)=>{return function(Y){if(J.getConfig().requireParentSpan&&H1.trace.getSpan(H1.context.active())===void 0)return Q.apply(this,arguments);let X=this[Fe._STORED_PARENT_SPAN],W={},{dbStatementSerializer:K}=J.getConfig();if(K){let G=K("aggregate",{options:this.options,aggregatePipeline:this._pipeline});if(J._dbSemconvStability&f1.SemconvStability.OLD)W[X7.ATTR_DB_STATEMENT]=G;if(J._dbSemconvStability&f1.SemconvStability.STABLE)W[T5.ATTR_DB_QUERY_TEXT]=G}let z=J._startSpan(this._model.collection,this._model?.modelName,"aggregate",W,X);return J._handleResponse(z,Q,this,arguments,Y,Z)}}}patchQueryExec(Z){let J=this;return(Q)=>{return function(Y){if(this[Fe._ALREADY_INSTRUMENTED])return Q.apply(this,arguments);if(J.getConfig().requireParentSpan&&H1.trace.getSpan(H1.context.active())===void 0)return Q.apply(this,arguments);let X=this[Fe._STORED_PARENT_SPAN],W={},{dbStatementSerializer:K}=J.getConfig();if(K){let G=K(this.op,{condition:this.getFilter?.()??this._conditions,updates:this._update,options:this.getOptions?.()??this.options,fields:this._fields});if(J._dbSemconvStability&f1.SemconvStability.OLD)W[X7.ATTR_DB_STATEMENT]=G;if(J._dbSemconvStability&f1.SemconvStability.STABLE)W[T5.ATTR_DB_QUERY_TEXT]=G}let z=J._startSpan(this.mongooseCollection,this.model.modelName,this.op,W,X);return J._handleResponse(z,Q,this,arguments,Y,Z)}}}patchOnModelMethods(Z,J){let Q=this;return($)=>{return function(X,W){if(Q.getConfig().requireParentSpan&&H1.trace.getSpan(H1.context.active())===void 0)return $.apply(this,arguments);let K={document:this};if(X&&!(X instanceof Function))K.options=X;let z={},{dbStatementSerializer:G}=Q.getConfig();if(G){let B=G(Z,K);if(Q._dbSemconvStability&f1.SemconvStability.OLD)z[X7.ATTR_DB_STATEMENT]=B;if(Q._dbSemconvStability&f1.SemconvStability.STABLE)z[T5.ATTR_DB_QUERY_TEXT]=B}let H=Q._startSpan(this.constructor.collection,this.constructor.modelName,Z,z);if(X instanceof Function)W=X,X=void 0;return Q._handleResponse(H,$,this,arguments,W,J)}}}_patchDocumentUpdateMethods(Z,J){let Q=this;return($)=>{return function(X,W,K){if(Q.getConfig().requireParentSpan&&H1.trace.getSpan(H1.context.active())===void 0)return $.apply(this,arguments);let z=K,G=X,H=W;if(typeof X==="function")z=X,G=void 0,H=void 0;else if(typeof W==="function")z=W,H=void 0;let B={},V=Q.getConfig().dbStatementSerializer;if(V){let w=V(Z,{condition:{_id:this._id},updates:G,options:H});if(Q._dbSemconvStability&f1.SemconvStability.OLD)B[X7.ATTR_DB_STATEMENT]=w;if(Q._dbSemconvStability&f1.SemconvStability.STABLE)B[T5.ATTR_DB_QUERY_TEXT]=w}let F=Q._startSpan(this.constructor.collection,this.constructor.modelName,Z,B),U=Q._handleResponse(F,$,this,arguments,z,J);if(U&&typeof U==="object")U[Fe._ALREADY_INSTRUMENTED]=!0;return U}}}patchModelStatic(Z,J){let Q=this;return($)=>{return function(X,W,K){if(Q.getConfig().requireParentSpan&&H1.trace.getSpan(H1.context.active())===void 0)return $.apply(this,arguments);if(typeof W==="function")K=W,W=void 0;let z={};switch(Z){case"insertMany":z.documents=X;break;case"bulkWrite":z.operations=X;break;default:z.document=X;break}if(W!==void 0)z.options=W;let G={},{dbStatementSerializer:H}=Q.getConfig();if(H){let V=H(Z,z);if(Q._dbSemconvStability&f1.SemconvStability.OLD)G[X7.ATTR_DB_STATEMENT]=V;if(Q._dbSemconvStability&f1.SemconvStability.STABLE)G[T5.ATTR_DB_QUERY_TEXT]=V}let B=Q._startSpan(this.collection,this.modelName,Z,G);return Q._handleResponse(B,$,this,arguments,K,J)}}}patchModelAggregate(){let Z=this;return(J)=>{return function(){let $=H1.trace.getSpan(H1.context.active()),Y=Z._callOriginalFunction(()=>J.apply(this,arguments));if(Y)Y[Fe._STORED_PARENT_SPAN]=$;return Y}}}patchAndCaptureSpanContext(Z){let J=this;return(Q)=>{return function(){return this[Fe._STORED_PARENT_SPAN]=H1.trace.getSpan(H1.context.active()),J._callOriginalFunction(()=>Q.apply(this,arguments))}}}_startSpan(Z,J,Q,$,Y){let X={...$,...(0,fj.getAttributesFromCollection)(Z,this._dbSemconvStability,this._netSemconvStability)};if(this._dbSemconvStability&f1.SemconvStability.OLD)X[X7.ATTR_DB_OPERATION]=Q,X[X7.ATTR_DB_SYSTEM]="mongoose";if(this._dbSemconvStability&f1.SemconvStability.STABLE)X[T5.ATTR_DB_OPERATION_NAME]=Q,X[T5.ATTR_DB_SYSTEM_NAME]=X7.DB_SYSTEM_NAME_VALUE_MONGODB;let W=this._dbSemconvStability&f1.SemconvStability.STABLE?`${Q} ${Z.name}`:`mongoose.${J}.${Q}`;return this.tracer.startSpan(W,{kind:H1.SpanKind.CLIENT,attributes:X},Y?H1.trace.setSpan(H1.context.active(),Y):void 0)}_handleResponse(Z,J,Q,$,Y,X=void 0){let W=this;if(Y instanceof Function)return W._callOriginalFunction(()=>(0,fj.handleCallbackResponse)(Y,J,Q,Z,$,W.getConfig().responseHook,X));else{let K=W._callOriginalFunction(()=>J.apply(Q,$));return(0,fj.handlePromiseResponse)(K,Z,W.getConfig().responseHook,X)}}_callOriginalFunction(Z){if(this.getConfig().suppressInternalInstrumentation)return H1.context.with((0,Yb0.suppressTracing)(H1.context.active()),Z);else return Z()}}Fe.MongooseInstrumentation=Ve});var we=j((Sj)=>{Object.defineProperty(Sj,"__esModule",{value:!0});Sj.MongooseInstrumentation=void 0;var zb0=qe();Object.defineProperty(Sj,"MongooseInstrumentation",{enumerable:!0,get:function(){return zb0.MongooseInstrumentation}})});var je,De="Mongoose",Oe,Hb0=()=>{return{name:De,setupOnce(){Oe()}}},c$;var _j=q(()=>{N();X0();je=A(we(),1),Oe=S(De,()=>new je.MongooseInstrumentation({responseHook(Z){q0(Z,"auto.db.otel.mongoose")}})),c$=P(Hb0)});var Pe=j((Le)=>{Object.defineProperty(Le,"__esModule",{value:!0});Le.METRIC_DB_CLIENT_CONNECTIONS_USAGE=Le.DB_SYSTEM_VALUE_MYSQL=Le.ATTR_NET_PEER_PORT=Le.ATTR_NET_PEER_NAME=Le.ATTR_DB_USER=Le.ATTR_DB_SYSTEM=Le.ATTR_DB_STATEMENT=Le.ATTR_DB_NAME=Le.ATTR_DB_CONNECTION_STRING=void 0;Le.ATTR_DB_CONNECTION_STRING="db.connection_string";Le.ATTR_DB_NAME="db.name";Le.ATTR_DB_STATEMENT="db.statement";Le.ATTR_DB_SYSTEM="db.system";Le.ATTR_DB_USER="db.user";Le.ATTR_NET_PEER_NAME="net.peer.name";Le.ATTR_NET_PEER_PORT="net.peer.port";Le.DB_SYSTEM_VALUE_MYSQL="mysql";Le.METRIC_DB_CLIENT_CONNECTIONS_USAGE="db.client.connections.usage"});var Re=j((Me)=>{Object.defineProperty(Me,"__esModule",{value:!0});Me.AttributeNames=void 0;var Ob0;(function(Z){Z.MYSQL_VALUES="db.mysql.values"})(Ob0=Me.AttributeNames||(Me.AttributeNames={}))});var Ae=j((ke)=>{Object.defineProperty(ke,"__esModule",{value:!0});ke.getPoolNameOld=ke.arrayStringifyHelper=ke.getSpanName=ke.getDbValues=ke.getDbQueryText=ke.getJDBCString=ke.getConfig=void 0;function Lb0(Z){let{host:J,port:Q,database:$,user:Y}=Z&&Z.connectionConfig||Z||{};return{host:J,port:Q,database:$,user:Y}}ke.getConfig=Lb0;function Cb0(Z,J,Q){let $=`jdbc:mysql://${Z||"localhost"}`;if(typeof J==="number")$+=`:${J}`;if(typeof Q==="string")$+=`/${Q}`;return $}ke.getJDBCString=Cb0;function Pb0(Z){if(typeof Z==="string")return Z;else return Z.sql}ke.getDbQueryText=Pb0;function Mb0(Z,J){if(typeof Z==="string")return bj(J);else return bj(J||Z.values)}ke.getDbValues=Mb0;function Rb0(Z){let J=typeof Z==="object"?Z.sql:Z,Q=J?.indexOf(" ");if(typeof Q==="number"&&Q!==-1)return J?.substring(0,Q);return J}ke.getSpanName=Rb0;function bj(Z){if(Z)return`[${Z.toString()}]`;return""}ke.arrayStringifyHelper=bj;function kb0(Z){let J=Z.config.connectionConfig,Q="";if(Q+=J.host?`host: '${J.host}', `:"",Q+=J.port?`port: ${J.port}, `:"",Q+=J.database?`database: '${J.database}', `:"",Q+=J.user?`user: '${J.user}'`:"",!J.user)Q=Q.substring(0,Q.length-2);return Q.trim()}ke.getPoolNameOld=kb0});var Ee=j((Ie)=>{Object.defineProperty(Ie,"__esModule",{value:!0});Ie.PACKAGE_NAME=Ie.PACKAGE_VERSION=void 0;Ie.PACKAGE_VERSION="0.59.0";Ie.PACKAGE_NAME="@opentelemetry/instrumentation-mysql"});var he=j((Se)=>{Object.defineProperty(Se,"__esModule",{value:!0});Se.MySQLInstrumentation=void 0;var B6=I(),X9=n(),SJ=Y0(),t8=Pe(),Sb0=Re(),E5=Ae(),fe=Ee();class ye extends X9.InstrumentationBase{_netSemconvStability;_dbSemconvStability;constructor(Z={}){super(fe.PACKAGE_NAME,fe.PACKAGE_VERSION,Z);this._setSemconvStabilityFromEnv()}_setSemconvStabilityFromEnv(){this._netSemconvStability=(0,X9.semconvStabilityFromStr)("http",process.env.OTEL_SEMCONV_STABILITY_OPT_IN),this._dbSemconvStability=(0,X9.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}_updateMetricInstruments(){this._connectionsUsageOld=this.meter.createUpDownCounter(t8.METRIC_DB_CLIENT_CONNECTIONS_USAGE,{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}_connCountAdd(Z,J,Q){this._connectionsUsageOld?.add(Z,{state:Q,name:J})}init(){return[new X9.InstrumentationNodeModuleDefinition("mysql",[">=2.0.0 <3"],(Z)=>{if((0,X9.isWrapped)(Z.createConnection))this._unwrap(Z,"createConnection");if(this._wrap(Z,"createConnection",this._patchCreateConnection()),(0,X9.isWrapped)(Z.createPool))this._unwrap(Z,"createPool");if(this._wrap(Z,"createPool",this._patchCreatePool()),(0,X9.isWrapped)(Z.createPoolCluster))this._unwrap(Z,"createPoolCluster");return this._wrap(Z,"createPoolCluster",this._patchCreatePoolCluster()),Z},(Z)=>{if(Z===void 0)return;this._unwrap(Z,"createConnection"),this._unwrap(Z,"createPool"),this._unwrap(Z,"createPoolCluster")})]}_patchCreateConnection(){return(Z)=>{let J=this;return function($){let Y=Z(...arguments);return J._wrap(Y,"query",J._patchQuery(Y)),Y}}}_patchCreatePool(){return(Z)=>{let J=this;return function($){let Y=Z(...arguments);return J._wrap(Y,"query",J._patchQuery(Y)),J._wrap(Y,"getConnection",J._patchGetConnection(Y)),J._wrap(Y,"end",J._patchPoolEnd(Y)),J._setPoolCallbacks(Y,""),Y}}}_patchPoolEnd(Z){return(J)=>{let Q=this;return function(Y){let X=Z._allConnections.length,W=Z._freeConnections.length,K=X-W,z=(0,E5.getPoolNameOld)(Z);Q._connCountAdd(-K,z,"used"),Q._connCountAdd(-W,z,"idle"),J.apply(Z,arguments)}}}_patchCreatePoolCluster(){return(Z)=>{let J=this;return function($){let Y=Z(...arguments);return J._wrap(Y,"getConnection",J._patchGetConnection(Y)),J._wrap(Y,"add",J._patchAdd(Y)),Y}}}_patchAdd(Z){return(J)=>{let Q=this;return function(Y,X){if(!Q._enabled)return Q._unwrap(Z,"add"),J.apply(Z,arguments);J.apply(Z,arguments);let W=Z._nodes;if(W){let K=typeof Y==="object"?"CLUSTER::"+Z._lastId:String(Y),z=W[K].pool;Q._setPoolCallbacks(z,Y)}}}}_patchGetConnection(Z){return(J)=>{let Q=this;return function(Y,X,W){if(!Q._enabled)return Q._unwrap(Z,"getConnection"),J.apply(Z,arguments);if(arguments.length===1&&typeof Y==="function"){let K=Q._getConnectionCallbackPatchFn(Y);return J.call(Z,K)}if(arguments.length===2&&typeof X==="function"){let K=Q._getConnectionCallbackPatchFn(X);return J.call(Z,Y,K)}if(arguments.length===3&&typeof W==="function"){let K=Q._getConnectionCallbackPatchFn(W);return J.call(Z,Y,X,K)}return J.apply(Z,arguments)}}}_getConnectionCallbackPatchFn(Z){let J=this,Q=B6.context.active();return function($,Y){if(Y){if(!(0,X9.isWrapped)(Y.query))J._wrap(Y,"query",J._patchQuery(Y))}if(typeof Z==="function")B6.context.with(Q,Z,this,$,Y)}}_patchQuery(Z){return(J)=>{let Q=this;return function($,Y,X){if(!Q._enabled)return Q._unwrap(Z,"query"),J.apply(Z,arguments);let W={},{host:K,port:z,database:G,user:H}=(0,E5.getConfig)(Z.config),B=parseInt(z,10),V=(0,E5.getDbQueryText)($);if(Q._dbSemconvStability&X9.SemconvStability.OLD)W[t8.ATTR_DB_SYSTEM]=t8.DB_SYSTEM_VALUE_MYSQL,W[t8.ATTR_DB_CONNECTION_STRING]=(0,E5.getJDBCString)(K,z,G),W[t8.ATTR_DB_NAME]=G,W[t8.ATTR_DB_USER]=H,W[t8.ATTR_DB_STATEMENT]=V;if(Q._dbSemconvStability&X9.SemconvStability.STABLE)W[SJ.ATTR_DB_SYSTEM_NAME]=SJ.DB_SYSTEM_NAME_VALUE_MYSQL,W[SJ.ATTR_DB_NAMESPACE]=G,W[SJ.ATTR_DB_QUERY_TEXT]=V;if(Q._netSemconvStability&X9.SemconvStability.OLD){if(W[t8.ATTR_NET_PEER_NAME]=K,!isNaN(B))W[t8.ATTR_NET_PEER_PORT]=B}if(Q._netSemconvStability&X9.SemconvStability.STABLE){if(W[SJ.ATTR_SERVER_ADDRESS]=K,!isNaN(B))W[SJ.ATTR_SERVER_PORT]=B}let F=Q.tracer.startSpan((0,E5.getSpanName)($),{kind:B6.SpanKind.CLIENT,attributes:W});if(Q.getConfig().enhancedDatabaseReporting){let D;if(Array.isArray(Y))D=Y;else if(arguments[2])D=[Y];F.setAttribute(Sb0.AttributeNames.MYSQL_VALUES,(0,E5.getDbValues)($,D))}let U=Array.from(arguments).findIndex((D)=>typeof D==="function"),w=B6.context.active();if(U===-1){let D=B6.context.with(B6.trace.setSpan(B6.context.active(),F),()=>{return J.apply(Z,arguments)});return B6.context.bind(w,D),D.on("error",(L)=>F.setStatus({code:B6.SpanStatusCode.ERROR,message:L.message})).on("end",()=>{F.end()})}else return Q._wrap(arguments,U,Q._patchCallbackQuery(F,w)),B6.context.with(B6.trace.setSpan(B6.context.active(),F),()=>{return J.apply(Z,arguments)})}}}_patchCallbackQuery(Z,J){return(Q)=>{return function($,Y,X){if($)Z.setStatus({code:B6.SpanStatusCode.ERROR,message:$.message});return Z.end(),B6.context.with(J,()=>Q(...arguments))}}}_setPoolCallbacks(Z,J){let Q=J||(0,E5.getPoolNameOld)(Z);Z.on("connection",($)=>{this._connCountAdd(1,Q,"idle")}),Z.on("acquire",($)=>{this._connCountAdd(-1,Q,"idle"),this._connCountAdd(1,Q,"used")}),Z.on("release",($)=>{this._connCountAdd(1,Q,"idle"),this._connCountAdd(-1,Q,"used")})}}Se.MySQLInstrumentation=ye});var be=j((vj)=>{Object.defineProperty(vj,"__esModule",{value:!0});vj.MySQLInstrumentation=void 0;var _b0=he();Object.defineProperty(vj,"MySQLInstrumentation",{enumerable:!0,get:function(){return _b0.MySQLInstrumentation}})});var ve,xe="Mysql",ge,bb0=()=>{return{name:xe,setupOnce(){ge()}}},m$;var xj=q(()=>{N();X0();ve=A(be(),1),ge=S(xe,()=>new ve.MySQLInstrumentation({})),m$=P(bb0)});var gj=j((de)=>{Object.defineProperty(de,"__esModule",{value:!0});de.DB_SYSTEM_VALUE_MYSQL=de.ATTR_NET_PEER_PORT=de.ATTR_NET_PEER_NAME=de.ATTR_DB_USER=de.ATTR_DB_SYSTEM=de.ATTR_DB_STATEMENT=de.ATTR_DB_NAME=de.ATTR_DB_CONNECTION_STRING=void 0;de.ATTR_DB_CONNECTION_STRING="db.connection_string";de.ATTR_DB_NAME="db.name";de.ATTR_DB_STATEMENT="db.statement";de.ATTR_DB_SYSTEM="db.system";de.ATTR_DB_USER="db.user";de.ATTR_NET_PEER_NAME="net.peer.name";de.ATTR_NET_PEER_PORT="net.peer.port";de.DB_SYSTEM_VALUE_MYSQL="mysql"});var cj=j((me)=>{Object.defineProperty(me,"__esModule",{value:!0});me.addSqlCommenterComment=void 0;var dj=I(),lb0=R0();function pb0(Z){let J=Z.indexOf("--");if(J>=0)return!0;if(Z.indexOf("/*")<0)return!1;let $=Z.indexOf("*/");return J<$}function ib0(Z){return encodeURIComponent(Z).replace(/[!'()*]/g,(J)=>`%${J.charCodeAt(0).toString(16).toUpperCase()}`)}function ob0(Z,J){if(typeof J!=="string"||J.length===0)return J;if(pb0(J))return J;let Q=new lb0.W3CTraceContextPropagator,$={};Q.inject(dj.trace.setSpan(dj.ROOT_CONTEXT,Z),$,dj.defaultTextMapSetter);let Y=Object.keys($).sort();if(Y.length===0)return J;let X=Y.map((W)=>{let K=ib0($[W]);return`${W}='${K}'`}).join(",");return`${J} /*${X}*/`}me.addSqlCommenterComment=ob0});var ie=j((le)=>{Object.defineProperty(le,"__esModule",{value:!0});le.getConnectionPrototypeToInstrument=le.once=le.getSpanName=le.getQueryText=le.getConnectionAttributes=void 0;var u$=gj(),qz=n(),mj=Y0();function nb0(Z,J,Q){let{host:$,port:Y,database:X,user:W}=ab0(Z),K={};if(J&qz.SemconvStability.OLD)K[u$.ATTR_DB_CONNECTION_STRING]=sb0($,Y,X),K[u$.ATTR_DB_NAME]=X,K[u$.ATTR_DB_USER]=W;if(J&qz.SemconvStability.STABLE)K[mj.ATTR_DB_NAMESPACE]=X;let z=parseInt(Y,10);if(Q&qz.SemconvStability.OLD){if(K[u$.ATTR_NET_PEER_NAME]=$,!isNaN(z))K[u$.ATTR_NET_PEER_PORT]=z}if(Q&qz.SemconvStability.STABLE){if(K[mj.ATTR_SERVER_ADDRESS]=$,!isNaN(z))K[mj.ATTR_SERVER_PORT]=z}return K}le.getConnectionAttributes=nb0;function ab0(Z){let{host:J,port:Q,database:$,user:Y}=Z&&Z.connectionConfig||Z||{};return{host:J,port:Q,database:$,user:Y}}function sb0(Z,J,Q){let $=`jdbc:mysql://${Z||"localhost"}`;if(typeof J==="number")$+=`:${J}`;if(typeof Q==="string")$+=`/${Q}`;return $}function rb0(Z,J,Q,$=!1,Y=tb0){let[X,W]=typeof Z==="string"?[Z,Q]:[Z.sql,eb0(Z)?Q||Z.values:Q];try{if($)return Y(X);else if(J&&W)return J(X,W);else return X}catch(K){return"Could not determine the query due to an error in masking or formatting"}}le.getQueryText=rb0;function tb0(Z){return Z.replace(/\b\d+\b/g,"?").replace(/(["'])(?:(?=(\\?))\2.)*?\1/g,"?")}function eb0(Z){return"values"in Z}function Zv0(Z){let J=typeof Z==="object"?Z.sql:Z,Q=J?.indexOf(" ");if(typeof Q==="number"&&Q!==-1)return J?.substring(0,Q);return J}le.getSpanName=Zv0;var Jv0=(Z)=>{let J=!1;return(...Q)=>{if(J)return;return J=!0,Z(...Q)}};le.once=Jv0;function Qv0(Z){let J=Z.prototype,Q=Object.getPrototypeOf(J);if(typeof Q?.query==="function"&&typeof Q?.execute==="function")return Q;return J}le.getConnectionPrototypeToInstrument=Qv0});var ae=j((oe)=>{Object.defineProperty(oe,"__esModule",{value:!0});oe.PACKAGE_NAME=oe.PACKAGE_VERSION=void 0;oe.PACKAGE_VERSION="0.59.0";oe.PACKAGE_NAME="@opentelemetry/instrumentation-mysql2"});var Q00=j((Z00)=>{Object.defineProperty(Z00,"__esModule",{value:!0});Z00.MySQL2Instrumentation=void 0;var se=I(),h9=n(),uj=gj(),re=cj(),_J=ie(),te=ae(),lj=Y0(),pj=[">=1.4.2 <4"];class ee extends h9.InstrumentationBase{_netSemconvStability;_dbSemconvStability;constructor(Z={}){super(te.PACKAGE_NAME,te.PACKAGE_VERSION,Z);this._setSemconvStabilityFromEnv()}_setSemconvStabilityFromEnv(){this._netSemconvStability=(0,h9.semconvStabilityFromStr)("http",process.env.OTEL_SEMCONV_STABILITY_OPT_IN),this._dbSemconvStability=(0,h9.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}init(){let Z;function J(Y){if(!Z&&Y.format)Z=Y.format}let Q=(Y)=>{if((0,h9.isWrapped)(Y.query))this._unwrap(Y,"query");if(this._wrap(Y,"query",this._patchQuery(Z,!1)),(0,h9.isWrapped)(Y.execute))this._unwrap(Y,"execute");this._wrap(Y,"execute",this._patchQuery(Z,!0))},$=(Y)=>{this._unwrap(Y,"query"),this._unwrap(Y,"execute")};return[new h9.InstrumentationNodeModuleDefinition("mysql2",pj,(Y)=>{return J(Y),Y},()=>{},[new h9.InstrumentationNodeModuleFile("mysql2/promise.js",pj,(Y)=>{return J(Y),Y},()=>{}),new h9.InstrumentationNodeModuleFile("mysql2/lib/connection.js",pj,(Y)=>{let X=(0,_J.getConnectionPrototypeToInstrument)(Y);return Q(X),Y},(Y)=>{if(Y===void 0)return;let X=(0,_J.getConnectionPrototypeToInstrument)(Y);$(X)})])]}_patchQuery(Z,J){return(Q)=>{let $=this;return function(Y,X,W){let K;if(Array.isArray(X))K=X;else if(arguments[2])K=[X];let{maskStatement:z,maskStatementHook:G,responseHook:H}=$.getConfig(),B=(0,_J.getConnectionAttributes)(this.config,$._dbSemconvStability,$._netSemconvStability),V=(0,_J.getQueryText)(Y,Z,K,z,G);if($._dbSemconvStability&h9.SemconvStability.OLD)B[uj.ATTR_DB_SYSTEM]=uj.DB_SYSTEM_VALUE_MYSQL,B[uj.ATTR_DB_STATEMENT]=V;if($._dbSemconvStability&h9.SemconvStability.STABLE)B[lj.ATTR_DB_SYSTEM_NAME]=lj.DB_SYSTEM_NAME_VALUE_MYSQL,B[lj.ATTR_DB_QUERY_TEXT]=V;let F=$.tracer.startSpan((0,_J.getSpanName)(Y),{kind:se.SpanKind.CLIENT,attributes:B});if(!J&&$.getConfig().addSqlCommenterCommentToQueries)arguments[0]=Y=typeof Y==="string"?(0,re.addSqlCommenterComment)(F,Y):Object.assign(Y,{sql:(0,re.addSqlCommenterComment)(F,Y.sql)});let U=(0,_J.once)((w,D)=>{if(w)F.setStatus({code:se.SpanStatusCode.ERROR,message:w.message});else if(typeof H==="function")(0,h9.safeExecuteInTheMiddle)(()=>{H(F,{queryResults:D})},(L)=>{if(L)$._diag.warn("Failed executing responseHook",L)},!0);F.end()});if(arguments.length===1){if(typeof Y.onResult==="function")$._wrap(Y,"onResult",$._patchCallbackQuery(U));let w=Q.apply(this,arguments);return w.once("error",(D)=>{U(D)}).once("result",(D)=>{U(void 0,D)}),w}if(typeof arguments[1]==="function")$._wrap(arguments,1,$._patchCallbackQuery(U));else if(typeof arguments[2]==="function")$._wrap(arguments,2,$._patchCallbackQuery(U));return Q.apply(this,arguments)}}}_patchCallbackQuery(Z){return(J)=>{return function(Q,$,Y){return Z(Q,$),J(...arguments)}}}}Z00.MySQL2Instrumentation=ee});var $00=j((ij)=>{Object.defineProperty(ij,"__esModule",{value:!0});ij.MySQL2Instrumentation=void 0;var zv0=Q00();Object.defineProperty(ij,"MySQL2Instrumentation",{enumerable:!0,get:function(){return zv0.MySQL2Instrumentation}})});var Y00,X00="Mysql2",W00,Hv0=()=>{return{name:X00,setupOnce(){W00()}}},l$;var oj=q(()=>{N();X0();Y00=A($00(),1),W00=S(X00,()=>new Y00.MySQL2Instrumentation({responseHook(Z){q0(Z,"auto.db.otel.mysql2")}})),l$=P(Hv0)});var G00=j((K00)=>{Object.defineProperty(K00,"__esModule",{value:!0});K00.DB_SYSTEM_VALUE_REDIS=K00.DB_SYSTEM_NAME_VALUE_REDIS=K00.ATTR_NET_PEER_PORT=K00.ATTR_NET_PEER_NAME=K00.ATTR_DB_SYSTEM=K00.ATTR_DB_STATEMENT=K00.ATTR_DB_CONNECTION_STRING=void 0;K00.ATTR_DB_CONNECTION_STRING="db.connection_string";K00.ATTR_DB_STATEMENT="db.statement";K00.ATTR_DB_SYSTEM="db.system";K00.ATTR_NET_PEER_NAME="net.peer.name";K00.ATTR_NET_PEER_PORT="net.peer.port";K00.DB_SYSTEM_NAME_VALUE_REDIS="redis";K00.DB_SYSTEM_VALUE_REDIS="redis"});var V00=j((H00)=>{Object.defineProperty(H00,"__esModule",{value:!0});H00.endSpan=void 0;var jv0=I(),Dv0=(Z,J)=>{if(J)Z.recordException(J),Z.setStatus({code:jv0.SpanStatusCode.ERROR,message:J.message});Z.end()};H00.endSpan=Dv0});var wz=j((F00)=>{Object.defineProperty(F00,"__esModule",{value:!0});F00.defaultDbStatementSerializer=void 0;var Ov0=[{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}],Lv0=(Z,J)=>{if(Array.isArray(J)&&J.length){let Q=Ov0.find(({regex:Y})=>{return Y.test(Z)})?.args??0,$=Q>=0?J.slice(0,Q):J;if(J.length>$.length)$.push(`[${J.length-Q} other arguments]`);return`${Z} ${$.join(" ")}`}return Z};F00.defaultDbStatementSerializer=Lv0});var j00=j((q00)=>{Object.defineProperty(q00,"__esModule",{value:!0});q00.PACKAGE_NAME=q00.PACKAGE_VERSION=void 0;q00.PACKAGE_VERSION="0.61.0";q00.PACKAGE_NAME="@opentelemetry/instrumentation-ioredis"});var R00=j((P00)=>{Object.defineProperty(P00,"__esModule",{value:!0});P00.IORedisInstrumentation=void 0;var W7=I(),V6=n(),K7=Y0(),F6=G00(),D00=n(),p$=V00(),Pv0=wz(),O00=j00(),L00={requireParentSpan:!0};class C00 extends V6.InstrumentationBase{_netSemconvStability;_dbSemconvStability;constructor(Z={}){super(O00.PACKAGE_NAME,O00.PACKAGE_VERSION,{...L00,...Z});this._setSemconvStabilityFromEnv()}_setSemconvStabilityFromEnv(){this._netSemconvStability=(0,V6.semconvStabilityFromStr)("http",process.env.OTEL_SEMCONV_STABILITY_OPT_IN),this._dbSemconvStability=(0,V6.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}setConfig(Z={}){super.setConfig({...L00,...Z})}init(){return[new V6.InstrumentationNodeModuleDefinition("ioredis",[">=2.0.0 <6"],(Z,J)=>{let Q=Z[Symbol.toStringTag]==="Module"?Z.default:Z;if((0,V6.isWrapped)(Q.prototype.sendCommand))this._unwrap(Q.prototype,"sendCommand");if(this._wrap(Q.prototype,"sendCommand",this._patchSendCommand(J)),(0,V6.isWrapped)(Q.prototype.connect))this._unwrap(Q.prototype,"connect");return this._wrap(Q.prototype,"connect",this._patchConnection()),Z},(Z)=>{if(Z===void 0)return;let J=Z[Symbol.toStringTag]==="Module"?Z.default:Z;this._unwrap(J.prototype,"sendCommand"),this._unwrap(J.prototype,"connect")})]}_patchSendCommand(Z){return(J)=>{return this._traceSendCommand(J,Z)}}_patchConnection(){return(Z)=>{return this._traceConnection(Z)}}_traceSendCommand(Z,J){let Q=this;return function($){if(arguments.length<1||typeof $!=="object")return Z.apply(this,arguments);let Y=Q.getConfig(),X=Y.dbStatementSerializer||Pv0.defaultDbStatementSerializer,W=W7.trace.getSpan(W7.context.active())===void 0;if(Y.requireParentSpan===!0&&W)return Z.apply(this,arguments);let K={},{host:z,port:G}=this.options,H=X($.name,$.args);if(Q._dbSemconvStability&V6.SemconvStability.OLD)K[F6.ATTR_DB_SYSTEM]=F6.DB_SYSTEM_VALUE_REDIS,K[F6.ATTR_DB_STATEMENT]=H,K[F6.ATTR_DB_CONNECTION_STRING]=`redis://${z}:${G}`;if(Q._dbSemconvStability&V6.SemconvStability.STABLE)K[K7.ATTR_DB_SYSTEM_NAME]=F6.DB_SYSTEM_NAME_VALUE_REDIS,K[K7.ATTR_DB_QUERY_TEXT]=H;if(Q._netSemconvStability&V6.SemconvStability.OLD)K[F6.ATTR_NET_PEER_NAME]=z,K[F6.ATTR_NET_PEER_PORT]=G;if(Q._netSemconvStability&V6.SemconvStability.STABLE)K[K7.ATTR_SERVER_ADDRESS]=z,K[K7.ATTR_SERVER_PORT]=G;let B=Q.tracer.startSpan($.name,{kind:W7.SpanKind.CLIENT,attributes:K}),{requestHook:V}=Y;if(V)(0,D00.safeExecuteInTheMiddle)(()=>V(B,{moduleVersion:J,cmdName:$.name,cmdArgs:$.args}),(F)=>{if(F)W7.diag.error("ioredis instrumentation: request hook failed",F)},!0);try{let F=Z.apply(this,arguments),U=$.resolve;$.resolve=function(D){(0,D00.safeExecuteInTheMiddle)(()=>Y.responseHook?.(B,$.name,$.args,D),(L)=>{if(L)W7.diag.error("ioredis instrumentation: response hook failed",L)},!0),(0,p$.endSpan)(B,null),U(D)};let w=$.reject;return $.reject=function(D){(0,p$.endSpan)(B,D),w(D)},F}catch(F){throw(0,p$.endSpan)(B,F),F}}}_traceConnection(Z){let J=this;return function(){let Q=W7.trace.getSpan(W7.context.active())===void 0;if(J.getConfig().requireParentSpan===!0&&Q)return Z.apply(this,arguments);let $={},{host:Y,port:X}=this.options;if(J._dbSemconvStability&V6.SemconvStability.OLD)$[F6.ATTR_DB_SYSTEM]=F6.DB_SYSTEM_VALUE_REDIS,$[F6.ATTR_DB_STATEMENT]="connect",$[F6.ATTR_DB_CONNECTION_STRING]=`redis://${Y}:${X}`;if(J._dbSemconvStability&V6.SemconvStability.STABLE)$[K7.ATTR_DB_SYSTEM_NAME]=F6.DB_SYSTEM_NAME_VALUE_REDIS,$[K7.ATTR_DB_QUERY_TEXT]="connect";if(J._netSemconvStability&V6.SemconvStability.OLD)$[F6.ATTR_NET_PEER_NAME]=Y,$[F6.ATTR_NET_PEER_PORT]=X;if(J._netSemconvStability&V6.SemconvStability.STABLE)$[K7.ATTR_SERVER_ADDRESS]=Y,$[K7.ATTR_SERVER_PORT]=X;let W=J.tracer.startSpan("connect",{kind:W7.SpanKind.CLIENT,attributes:$});try{let K=Z.apply(this,arguments);return(0,p$.endSpan)(W,null),K}catch(K){throw(0,p$.endSpan)(W,K),K}}}}P00.IORedisInstrumentation=C00});var k00=j((nj)=>{Object.defineProperty(nj,"__esModule",{value:!0});nj.IORedisInstrumentation=void 0;var Mv0=R00();Object.defineProperty(nj,"IORedisInstrumentation",{enumerable:!0,get:function(){return Mv0.IORedisInstrumentation}})});var jz=j((N00)=>{Object.defineProperty(N00,"__esModule",{value:!0});N00.PACKAGE_NAME=N00.PACKAGE_VERSION=void 0;N00.PACKAGE_VERSION="0.61.0";N00.PACKAGE_NAME="@opentelemetry/instrumentation-redis"});var E00=j((I00)=>{Object.defineProperty(I00,"__esModule",{value:!0});I00.getTracedCreateStreamTrace=I00.getTracedCreateClient=I00.endSpan=void 0;var i$=I(),Nv0=(Z,J)=>{if(J)Z.setStatus({code:i$.SpanStatusCode.ERROR,message:J.message});Z.end()};I00.endSpan=Nv0;var Av0=(Z)=>{return function(){let Q=Z.apply(this,arguments);return i$.context.bind(i$.context.active(),Q)}};I00.getTracedCreateClient=Av0;var Iv0=(Z)=>{return function(){if(!Object.prototype.hasOwnProperty.call(this,"stream"))Object.defineProperty(this,"stream",{get(){return this._patched_redis_stream},set(Q){i$.context.bind(i$.context.active(),Q),this._patched_redis_stream=Q}});return Z.apply(this,arguments)}};I00.getTracedCreateStreamTrace=Iv0});var Dz=j((f00)=>{Object.defineProperty(f00,"__esModule",{value:!0});f00.DB_SYSTEM_VALUE_REDIS=f00.DB_SYSTEM_NAME_VALUE_REDIS=f00.ATTR_NET_PEER_PORT=f00.ATTR_NET_PEER_NAME=f00.ATTR_DB_SYSTEM=f00.ATTR_DB_STATEMENT=f00.ATTR_DB_CONNECTION_STRING=void 0;f00.ATTR_DB_CONNECTION_STRING="db.connection_string";f00.ATTR_DB_STATEMENT="db.statement";f00.ATTR_DB_SYSTEM="db.system";f00.ATTR_NET_PEER_NAME="net.peer.name";f00.ATTR_NET_PEER_PORT="net.peer.port";f00.DB_SYSTEM_NAME_VALUE_REDIS="redis";f00.DB_SYSTEM_VALUE_REDIS="redis"});var b00=j((_00)=>{Object.defineProperty(_00,"__esModule",{value:!0});_00.RedisInstrumentationV2_V3=void 0;var S6=n(),Oz=E00(),S00=jz(),o$=I(),n$=Y0(),f5=Dz(),vv0=wz();class aj extends S6.InstrumentationBase{static COMPONENT="redis";_semconvStability;constructor(Z={}){super(S00.PACKAGE_NAME,S00.PACKAGE_VERSION,Z);this._semconvStability=Z.semconvStability?Z.semconvStability:(0,S6.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}setConfig(Z={}){super.setConfig(Z),this._semconvStability=Z.semconvStability?Z.semconvStability:(0,S6.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}init(){return[new S6.InstrumentationNodeModuleDefinition("redis",[">=2.6.0 <4"],(Z)=>{if((0,S6.isWrapped)(Z.RedisClient.prototype.internal_send_command))this._unwrap(Z.RedisClient.prototype,"internal_send_command");if(this._wrap(Z.RedisClient.prototype,"internal_send_command",this._getPatchInternalSendCommand()),(0,S6.isWrapped)(Z.RedisClient.prototype.create_stream))this._unwrap(Z.RedisClient.prototype,"create_stream");if(this._wrap(Z.RedisClient.prototype,"create_stream",this._getPatchCreateStream()),(0,S6.isWrapped)(Z.createClient))this._unwrap(Z,"createClient");return this._wrap(Z,"createClient",this._getPatchCreateClient()),Z},(Z)=>{if(Z===void 0)return;this._unwrap(Z.RedisClient.prototype,"internal_send_command"),this._unwrap(Z.RedisClient.prototype,"create_stream"),this._unwrap(Z,"createClient")})]}_getPatchInternalSendCommand(){let Z=this;return function(Q){return function(Y){if(arguments.length!==1||typeof Y!=="object")return Q.apply(this,arguments);let X=Z.getConfig(),W=o$.trace.getSpan(o$.context.active())===void 0;if(X.requireParentSpan===!0&&W)return Q.apply(this,arguments);let K=X?.dbStatementSerializer||vv0.defaultDbStatementSerializer,z={};if(Z._semconvStability&S6.SemconvStability.OLD)Object.assign(z,{[f5.ATTR_DB_SYSTEM]:f5.DB_SYSTEM_VALUE_REDIS,[f5.ATTR_DB_STATEMENT]:K(Y.command,Y.args)});if(Z._semconvStability&S6.SemconvStability.STABLE)Object.assign(z,{[n$.ATTR_DB_SYSTEM_NAME]:f5.DB_SYSTEM_NAME_VALUE_REDIS,[n$.ATTR_DB_OPERATION_NAME]:Y.command,[n$.ATTR_DB_QUERY_TEXT]:K(Y.command,Y.args)});let G=Z.tracer.startSpan(`${aj.COMPONENT}-${Y.command}`,{kind:o$.SpanKind.CLIENT,attributes:z});if(this.connection_options){let B={};if(Z._semconvStability&S6.SemconvStability.OLD)Object.assign(B,{[f5.ATTR_NET_PEER_NAME]:this.connection_options.host,[f5.ATTR_NET_PEER_PORT]:this.connection_options.port});if(Z._semconvStability&S6.SemconvStability.STABLE)Object.assign(B,{[n$.ATTR_SERVER_ADDRESS]:this.connection_options.host,[n$.ATTR_SERVER_PORT]:this.connection_options.port});G.setAttributes(B)}if(this.address&&Z._semconvStability&S6.SemconvStability.OLD)G.setAttribute(f5.ATTR_DB_CONNECTION_STRING,`redis://${this.address}`);let H=arguments[0].callback;if(H){let B=o$.context.active();arguments[0].callback=function(F,U){if(X?.responseHook){let w=X.responseHook;(0,S6.safeExecuteInTheMiddle)(()=>{w(G,Y.command,Y.args,U)},(D)=>{if(D)Z._diag.error("Error executing responseHook",D)},!0)}return(0,Oz.endSpan)(G,F),o$.context.with(B,H,this,...arguments)}}try{return Q.apply(this,arguments)}catch(B){throw(0,Oz.endSpan)(G,B),B}}}}_getPatchCreateClient(){return function(J){return(0,Oz.getTracedCreateClient)(J)}}_getPatchCreateStream(){return function(J){return(0,Oz.getTracedCreateStreamTrace)(J)}}}_00.RedisInstrumentationV2_V3=aj});var d00=j((x00)=>{Object.defineProperty(x00,"__esModule",{value:!0});x00.getClientAttributes=void 0;var sj=Y0(),hJ=Dz(),v00=n();function xv0(Z,J,Q){let $={};if(Q&v00.SemconvStability.OLD)Object.assign($,{[hJ.ATTR_DB_SYSTEM]:hJ.DB_SYSTEM_VALUE_REDIS,[hJ.ATTR_NET_PEER_NAME]:J?.socket?.host,[hJ.ATTR_NET_PEER_PORT]:J?.socket?.port,[hJ.ATTR_DB_CONNECTION_STRING]:gv0(Z,J?.url)});if(Q&v00.SemconvStability.STABLE)Object.assign($,{[sj.ATTR_DB_SYSTEM_NAME]:hJ.DB_SYSTEM_NAME_VALUE_REDIS,[sj.ATTR_SERVER_ADDRESS]:J?.socket?.host,[sj.ATTR_SERVER_PORT]:J?.socket?.port});return $}x00.getClientAttributes=xv0;function gv0(Z,J){if(typeof J!=="string"||!J)return;try{let Q=new URL(J);return Q.searchParams.delete("user_pwd"),Q.username="",Q.password="",Q.href}catch(Q){Z.error("failed to sanitize redis connection url",Q)}return}});var i00=j((l00)=>{Object.defineProperty(l00,"__esModule",{value:!0});l00.RedisInstrumentationV4_V5=void 0;var W9=I(),N0=n(),c00=d00(),dv0=wz(),m00=jz(),rj=Y0(),cv0=Dz(),a$=Symbol("opentelemetry.instrumentation.redis.open_spans"),u00=Symbol("opentelemetry.instrumentation.redis.multi_command_options");class Lz extends N0.InstrumentationBase{static COMPONENT="redis";_semconvStability;constructor(Z={}){super(m00.PACKAGE_NAME,m00.PACKAGE_VERSION,Z);this._semconvStability=Z.semconvStability?Z.semconvStability:(0,N0.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}setConfig(Z={}){super.setConfig(Z),this._semconvStability=Z.semconvStability?Z.semconvStability:(0,N0.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}init(){return[this._getInstrumentationNodeModuleDefinition("@redis/client"),this._getInstrumentationNodeModuleDefinition("@node-redis/client")]}_getInstrumentationNodeModuleDefinition(Z){let J=new N0.InstrumentationNodeModuleFile(`${Z}/dist/lib/commander.js`,["^1.0.0"],(Y,X)=>{let W=Y.transformCommandArguments;if(!W)return this._diag.error("internal instrumentation error, missing transformCommandArguments function"),Y;let K=X?.startsWith("1.0.")?"extendWithCommands":"attachCommands";if((0,N0.isWrapped)(Y?.[K]))this._unwrap(Y,K);return this._wrap(Y,K,this._getPatchExtendWithCommands(W)),Y},(Y)=>{if((0,N0.isWrapped)(Y?.extendWithCommands))this._unwrap(Y,"extendWithCommands");if((0,N0.isWrapped)(Y?.attachCommands))this._unwrap(Y,"attachCommands")}),Q=new N0.InstrumentationNodeModuleFile(`${Z}/dist/lib/client/multi-command.js`,["^1.0.0","^5.0.0"],(Y)=>{let X=Y?.default?.prototype;if((0,N0.isWrapped)(X?.exec))this._unwrap(X,"exec");if(this._wrap(X,"exec",this._getPatchMultiCommandsExec(!1)),(0,N0.isWrapped)(X?.execAsPipeline))this._unwrap(X,"execAsPipeline");if(this._wrap(X,"execAsPipeline",this._getPatchMultiCommandsExec(!0)),(0,N0.isWrapped)(X?.addCommand))this._unwrap(X,"addCommand");return this._wrap(X,"addCommand",this._getPatchMultiCommandsAddCommand()),Y},(Y)=>{let X=Y?.default?.prototype;if((0,N0.isWrapped)(X?.exec))this._unwrap(X,"exec");if((0,N0.isWrapped)(X?.addCommand))this._unwrap(X,"addCommand")}),$=new N0.InstrumentationNodeModuleFile(`${Z}/dist/lib/client/index.js`,["^1.0.0","^5.0.0"],(Y)=>{let X=Y?.default?.prototype;if(X?.multi){if((0,N0.isWrapped)(X?.multi))this._unwrap(X,"multi");this._wrap(X,"multi",this._getPatchRedisClientMulti())}if(X?.MULTI){if((0,N0.isWrapped)(X?.MULTI))this._unwrap(X,"MULTI");this._wrap(X,"MULTI",this._getPatchRedisClientMulti())}if((0,N0.isWrapped)(X?.sendCommand))this._unwrap(X,"sendCommand");return this._wrap(X,"sendCommand",this._getPatchRedisClientSendCommand()),this._wrap(X,"connect",this._getPatchedClientConnect()),Y},(Y)=>{let X=Y?.default?.prototype;if((0,N0.isWrapped)(X?.multi))this._unwrap(X,"multi");if((0,N0.isWrapped)(X?.MULTI))this._unwrap(X,"MULTI");if((0,N0.isWrapped)(X?.sendCommand))this._unwrap(X,"sendCommand")});return new N0.InstrumentationNodeModuleDefinition(Z,["^1.0.0","^5.0.0"],(Y)=>{return Y},()=>{},[J,Q,$])}_getPatchExtendWithCommands(Z){let J=this;return function($){return function(X){if(X?.BaseClass?.name!=="RedisClient")return $.apply(this,arguments);let W=X.executor;return X.executor=function(K,z){let G=Z(K,z).args;return J._traceClientCommand(W,this,arguments,G)},$.apply(this,arguments)}}}_getPatchMultiCommandsExec(Z){let J=this;return function($){return function(){let X=$.apply(this,arguments);if(typeof X?.then!=="function")return J._diag.error("non-promise result when patching exec/execAsPipeline"),X;return X.then((W)=>{let K=this[a$];return J._endSpansWithRedisReplies(K,W,Z),W}).catch((W)=>{let K=this[a$];if(!K)J._diag.error("cannot find open spans to end for multi/pipeline");else{let z=W.constructor.name==="MultiErrorReply"?W.replies:Array(K.length).fill(W);J._endSpansWithRedisReplies(K,z,Z)}return Promise.reject(W)})}}}_getPatchMultiCommandsAddCommand(){let Z=this;return function(Q){return function(Y){return Z._traceClientCommand(Q,this,arguments,Y)}}}_getPatchRedisClientMulti(){return function(J){return function(){let $=J.apply(this,arguments);return $[u00]=this.options,$}}}_getPatchRedisClientSendCommand(){let Z=this;return function(Q){return function(Y){return Z._traceClientCommand(Q,this,arguments,Y)}}}_getPatchedClientConnect(){let Z=this;return function(Q){return function(){let Y=this.options,X=(0,c00.getClientAttributes)(Z._diag,Y,Z._semconvStability),W=Z.tracer.startSpan(`${Lz.COMPONENT}-connect`,{kind:W9.SpanKind.CLIENT,attributes:X});return W9.context.with(W9.trace.setSpan(W9.context.active(),W),()=>{return Q.apply(this)}).then((z)=>{return W.end(),z}).catch((z)=>{return W.recordException(z),W.setStatus({code:W9.SpanStatusCode.ERROR,message:z.message}),W.end(),Promise.reject(z)})}}}_traceClientCommand(Z,J,Q,$){if(W9.trace.getSpan(W9.context.active())===void 0&&this.getConfig().requireParentSpan)return Z.apply(J,Q);let X=J.options||J[u00],W=$[0],K=$.slice(1),z=this.getConfig().dbStatementSerializer||dv0.defaultDbStatementSerializer,G=(0,c00.getClientAttributes)(this._diag,X,this._semconvStability);if(this._semconvStability&N0.SemconvStability.STABLE)G[rj.ATTR_DB_OPERATION_NAME]=W;try{let V=z(W,K);if(V!=null){if(this._semconvStability&N0.SemconvStability.OLD)G[cv0.ATTR_DB_STATEMENT]=V;if(this._semconvStability&N0.SemconvStability.STABLE)G[rj.ATTR_DB_QUERY_TEXT]=V}}catch(V){this._diag.error("dbStatementSerializer throw an exception",V,{commandName:W})}let H=this.tracer.startSpan(`${Lz.COMPONENT}-${W}`,{kind:W9.SpanKind.CLIENT,attributes:G}),B=W9.context.with(W9.trace.setSpan(W9.context.active(),H),()=>{return Z.apply(J,Q)});if(typeof B?.then==="function")B.then((V)=>{this._endSpanWithResponse(H,W,K,V,void 0)},(V)=>{this._endSpanWithResponse(H,W,K,null,V)});else{let V=B;V[a$]=V[a$]||[],V[a$].push({span:H,commandName:W,commandArgs:K})}return B}_endSpansWithRedisReplies(Z,J,Q=!1){if(!Z)return this._diag.error("cannot find open spans to end for redis multi/pipeline");if(J.length!==Z.length)return this._diag.error("number of multi command spans does not match response from redis");let $=Z.map((W)=>W.commandName),X=$.every((W)=>W===$[0])?(Q?"PIPELINE ":"MULTI ")+$[0]:Q?"PIPELINE":"MULTI";for(let W=0;W<Z.length;W++){let{span:K,commandArgs:z}=Z[W],G=J[W],[H,B]=G instanceof Error?[null,G]:[G,void 0];if(this._semconvStability&N0.SemconvStability.STABLE)K.setAttribute(rj.ATTR_DB_OPERATION_NAME,X);this._endSpanWithResponse(K,$[W],z,H,B)}}_endSpanWithResponse(Z,J,Q,$,Y){let{responseHook:X}=this.getConfig();if(!Y&&X)try{X(Z,J,Q,$)}catch(W){this._diag.error("responseHook throw an exception",W)}if(Y)Z.recordException(Y),Z.setStatus({code:W9.SpanStatusCode.ERROR,message:Y?.message});Z.end()}}l00.RedisInstrumentationV4_V5=Lz});var t00=j((s00)=>{Object.defineProperty(s00,"__esModule",{value:!0});s00.RedisInstrumentation=void 0;var mv0=n(),o00=jz(),uv0=b00(),lv0=i00(),n00={requireParentSpan:!1};class a00 extends mv0.InstrumentationBase{instrumentationV2_V3;instrumentationV4_V5;initialized=!1;constructor(Z={}){let J={...n00,...Z};super(o00.PACKAGE_NAME,o00.PACKAGE_VERSION,J);this.instrumentationV2_V3=new uv0.RedisInstrumentationV2_V3(this.getConfig()),this.instrumentationV4_V5=new lv0.RedisInstrumentationV4_V5(this.getConfig()),this.initialized=!0}setConfig(Z={}){let J={...n00,...Z};if(super.setConfig(J),!this.initialized)return;this.instrumentationV2_V3.setConfig(J),this.instrumentationV4_V5.setConfig(J)}init(){}getModuleDefinitions(){return[...this.instrumentationV2_V3.getModuleDefinitions(),...this.instrumentationV4_V5.getModuleDefinitions()]}setTracerProvider(Z){if(super.setTracerProvider(Z),!this.initialized)return;this.instrumentationV2_V3.setTracerProvider(Z),this.instrumentationV4_V5.setTracerProvider(Z)}enable(){if(super.enable(),!this.initialized)return;this.instrumentationV2_V3.enable(),this.instrumentationV4_V5.enable()}disable(){if(super.disable(),!this.initialized)return;this.instrumentationV2_V3.disable(),this.instrumentationV4_V5.disable()}}s00.RedisInstrumentation=a00});var e00=j((tj)=>{Object.defineProperty(tj,"__esModule",{value:!0});tj.RedisInstrumentation=void 0;var pv0=t00();Object.defineProperty(tj,"RedisInstrumentation",{enumerable:!0,get:function(){return pv0.RedisInstrumentation}})});function s$(Z,J){return Z.includes(J.toLowerCase())}function ZD(Z){if(s$(ej,Z))return"cache.get";else if(s$(nv0,Z))return"cache.put";else return}function av0(Z,J){return J.some((Q)=>Z.startsWith(Q))}function J10(Z,J){try{if(J.length===0)return;let Q=(Y)=>{if(typeof Y==="string"||typeof Y==="number"||Buffer.isBuffer(Y))return[Y.toString()];else if(Array.isArray(Y))return Z10(Y.map((X)=>Q(X)));else return["<unknown>"]},$=J[0];if(s$(ov0,Z)&&$!=null)return Q($);return Z10(J.map((Y)=>Q(Y)))}catch{return}}function Q10(Z,J,Q){if(!ZD(Z))return!1;for(let $ of J)if(av0($,Q))return!0;return!1}function $10(Z){let J=(Q)=>{try{if(Buffer.isBuffer(Q))return Q.byteLength;else if(typeof Q==="string")return Q.length;else if(typeof Q==="number")return Q.toString().length;else if(Q===null||Q===void 0)return 0;return JSON.stringify(Q).length}catch{return}};return Array.isArray(Z)?Z.reduce((Q,$)=>{let Y=J($);return typeof Y==="number"?Q!==void 0?Q+Y:Y:Q},0):J(Z)}function Z10(Z){let J=[],Q=($)=>{$.forEach((Y)=>{if(Array.isArray(Y))Q(Y);else J.push(Y)})};return Q(Z),J}var ov0,ej,nv0;var Y10=q(()=>{ov0=["get","set","setex"],ej=["get","mget"],nv0=["set","setex"]});var X10,W10,Cz="Redis",r$,K10=(Z,J,Q,$)=>{Z.setAttribute(f,"auto.db.otel.redis");let Y=J10(J,Q),X=ZD(J);if(!Y||!X||!r$.cachePrefixes||!Q10(J,Y,r$.cachePrefixes))return;let W=v(Z).data["net.peer.name"],K=v(Z).data["net.peer.port"];if(K&&W)Z.setAttributes({"network.peer.address":W,"network.peer.port":K});let z=$10($);if(z)Z.setAttribute(wV,z);if(s$(ej,J)&&z!==void 0)Z.setAttribute(UV,z>0);Z.setAttributes({[g]:X,[qV]:Y});let G=Y.join(", ");Z.updateName(r$.maxCacheKeyLength?p6(G,r$.maxCacheKeyLength):G)},sv0,rv0,z10,tv0=(Z={})=>{return{name:Cz,setupOnce(){r$=Z,z10()}}},t$;var JD=q(()=>{N();X0();Y10();X10=A(k00(),1),W10=A(e00(),1),r$={},sv0=S(`${Cz}.IORedis`,()=>{return new X10.IORedisInstrumentation({responseHook:K10})}),rv0=S(`${Cz}.Redis`,()=>{return new W10.RedisInstrumentation({responseHook:K10})}),z10=Object.assign(()=>{sv0(),rv0()},{id:Cz}),t$=P(tv0)});var B10=j((G10)=>{Object.defineProperty(G10,"__esModule",{value:!0});G10.EVENT_LISTENERS_SET=void 0;G10.EVENT_LISTENERS_SET=Symbol("opentelemetry.instrumentation.pg.eventListenersSet")});var $D=j((V10)=>{Object.defineProperty(V10,"__esModule",{value:!0});V10.AttributeNames=void 0;var ev0;(function(Z){Z.PG_VALUES="db.postgresql.values",Z.PG_PLAN="db.postgresql.plan",Z.IDLE_TIMEOUT_MILLIS="db.postgresql.idle.timeout.millis",Z.MAX_CLIENT="db.postgresql.max.client"})(ev0=V10.AttributeNames||(V10.AttributeNames={}))});var YD=j((F10)=>{Object.defineProperty(F10,"__esModule",{value:!0});F10.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS=F10.METRIC_DB_CLIENT_CONNECTION_COUNT=F10.DB_SYSTEM_VALUE_POSTGRESQL=F10.DB_CLIENT_CONNECTION_STATE_VALUE_USED=F10.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE=F10.ATTR_NET_PEER_PORT=F10.ATTR_NET_PEER_NAME=F10.ATTR_DB_USER=F10.ATTR_DB_SYSTEM=F10.ATTR_DB_STATEMENT=F10.ATTR_DB_NAME=F10.ATTR_DB_CONNECTION_STRING=F10.ATTR_DB_CLIENT_CONNECTION_STATE=F10.ATTR_DB_CLIENT_CONNECTION_POOL_NAME=void 0;F10.ATTR_DB_CLIENT_CONNECTION_POOL_NAME="db.client.connection.pool.name";F10.ATTR_DB_CLIENT_CONNECTION_STATE="db.client.connection.state";F10.ATTR_DB_CONNECTION_STRING="db.connection_string";F10.ATTR_DB_NAME="db.name";F10.ATTR_DB_STATEMENT="db.statement";F10.ATTR_DB_SYSTEM="db.system";F10.ATTR_DB_USER="db.user";F10.ATTR_NET_PEER_NAME="net.peer.name";F10.ATTR_NET_PEER_PORT="net.peer.port";F10.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE="idle";F10.DB_CLIENT_CONNECTION_STATE_VALUE_USED="used";F10.DB_SYSTEM_VALUE_POSTGRESQL="postgresql";F10.METRIC_DB_CLIENT_CONNECTION_COUNT="db.client.connection.count";F10.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS="db.client.connection.pending_requests"});var WD=j((q10)=>{Object.defineProperty(q10,"__esModule",{value:!0});q10.SpanNames=void 0;var Fx0;(function(Z){Z.QUERY_PREFIX="pg.query",Z.CONNECT="pg.connect",Z.POOL_CONNECT="pg-pool.connect"})(Fx0=q10.SpanNames||(q10.SpanNames={}))});var R10=j((P10)=>{Object.defineProperty(P10,"__esModule",{value:!0});P10.sanitizedErrorMessage=P10.isObjectWithTextString=P10.getErrorMessage=P10.patchClientConnectCallback=P10.patchCallbackPGPool=P10.updateCounter=P10.getPoolName=P10.patchCallback=P10.handleExecutionResult=P10.handleConfigQuery=P10.shouldSkipInstrumentation=P10.getSemanticAttributesFromPoolConnection=P10.getSemanticAttributesFromConnection=P10.getConnectionString=P10.parseAndMaskConnectionString=P10.parseNormalizedOperationName=P10.getQuerySpanName=void 0;var z7=I(),Pz=$D(),K9=Y0(),p0=YD(),y5=n(),w10=WD();function j10(Z,J){if(!J)return w10.SpanNames.QUERY_PREFIX;let Q=typeof J.name==="string"&&J.name?J.name:D10(J.text);return`${w10.SpanNames.QUERY_PREFIX}:${Q}${Z?` ${Z}`:""}`}P10.getQuerySpanName=j10;function D10(Z){let J=Z.trim(),Q=J.indexOf(" "),$=Q===-1?J:J.slice(0,Q);return $=$.toUpperCase(),$.endsWith(";")?$.slice(0,-1):$}P10.parseNormalizedOperationName=D10;function O10(Z){try{let J=new URL(Z);return J.username="",J.password="",J.toString()}catch(J){return"postgresql://localhost:5432/"}}P10.parseAndMaskConnectionString=O10;function KD(Z){if("connectionString"in Z&&Z.connectionString)return O10(Z.connectionString);let J=Z.host||"localhost",Q=Z.port||5432,$=Z.database||"";return`postgresql://${J}:${Q}/${$}`}P10.getConnectionString=KD;function Mz(Z){if(Number.isInteger(Z))return Z;return}function L10(Z,J){let Q={};if(J&y5.SemconvStability.OLD)Q={...Q,[p0.ATTR_DB_SYSTEM]:p0.DB_SYSTEM_VALUE_POSTGRESQL,[p0.ATTR_DB_NAME]:Z.database,[p0.ATTR_DB_CONNECTION_STRING]:KD(Z),[p0.ATTR_DB_USER]:Z.user,[p0.ATTR_NET_PEER_NAME]:Z.host,[p0.ATTR_NET_PEER_PORT]:Mz(Z.port)};if(J&y5.SemconvStability.STABLE)Q={...Q,[K9.ATTR_DB_SYSTEM_NAME]:K9.DB_SYSTEM_NAME_VALUE_POSTGRESQL,[K9.ATTR_DB_NAMESPACE]:Z.namespace,[K9.ATTR_SERVER_ADDRESS]:Z.host,[K9.ATTR_SERVER_PORT]:Mz(Z.port)};return Q}P10.getSemanticAttributesFromConnection=L10;function Ux0(Z,J){let Q;try{Q=Z.connectionString?new URL(Z.connectionString):void 0}catch(Y){Q=void 0}let $={[Pz.AttributeNames.IDLE_TIMEOUT_MILLIS]:Z.idleTimeoutMillis,[Pz.AttributeNames.MAX_CLIENT]:Z.maxClient};if(J&y5.SemconvStability.OLD)$={...$,[p0.ATTR_DB_SYSTEM]:p0.DB_SYSTEM_VALUE_POSTGRESQL,[p0.ATTR_DB_NAME]:Q?.pathname.slice(1)??Z.database,[p0.ATTR_DB_CONNECTION_STRING]:KD(Z),[p0.ATTR_NET_PEER_NAME]:Q?.hostname??Z.host,[p0.ATTR_NET_PEER_PORT]:Number(Q?.port)||Mz(Z.port),[p0.ATTR_DB_USER]:Q?.username??Z.user};if(J&y5.SemconvStability.STABLE)$={...$,[K9.ATTR_DB_SYSTEM_NAME]:K9.DB_SYSTEM_NAME_VALUE_POSTGRESQL,[K9.ATTR_DB_NAMESPACE]:Z.namespace,[K9.ATTR_SERVER_ADDRESS]:Q?.hostname??Z.host,[K9.ATTR_SERVER_PORT]:Number(Q?.port)||Mz(Z.port)};return $}P10.getSemanticAttributesFromPoolConnection=Ux0;function qx0(Z){return Z.requireParentSpan===!0&&z7.trace.getSpan(z7.context.active())===void 0}P10.shouldSkipInstrumentation=qx0;function wx0(Z,J,Q,$){let{connectionParameters:Y}=this,X=Y.database,W=j10(X,$),K=Z.startSpan(W,{kind:z7.SpanKind.CLIENT,attributes:L10(Y,Q)});if(!$)return K;if($.text){if(Q&y5.SemconvStability.OLD)K.setAttribute(p0.ATTR_DB_STATEMENT,$.text);if(Q&y5.SemconvStability.STABLE)K.setAttribute(K9.ATTR_DB_QUERY_TEXT,$.text)}if(J.enhancedDatabaseReporting&&Array.isArray($.values))try{let z=$.values.map((G)=>{if(G==null)return"null";else if(G instanceof Buffer)return G.toString();else if(typeof G==="object"){if(typeof G.toPostgres==="function")return G.toPostgres();return JSON.stringify(G)}else return G.toString()});K.setAttribute(Pz.AttributeNames.PG_VALUES,z)}catch(z){z7.diag.error("failed to stringify ",$.values,z)}if(typeof $.name==="string")K.setAttribute(Pz.AttributeNames.PG_PLAN,$.name);return K}P10.handleConfigQuery=wx0;function C10(Z,J,Q){if(typeof Z.responseHook==="function")(0,y5.safeExecuteInTheMiddle)(()=>{Z.responseHook(J,{data:Q})},($)=>{if($)z7.diag.error("Error running response hook",$)},!0)}P10.handleExecutionResult=C10;function jx0(Z,J,Q,$,Y){return function(W,K){if(W){if(Object.prototype.hasOwnProperty.call(W,"code"))$[K9.ATTR_ERROR_TYPE]=W.code;if(W instanceof Error)J.recordException(Rz(W));J.setStatus({code:z7.SpanStatusCode.ERROR,message:W.message})}else C10(Z,J,K);Y(),J.end(),Q.call(this,W,K)}}P10.patchCallback=jx0;function Dx0(Z){let J="";return J+=(Z?.host?`${Z.host}`:"unknown_host")+":",J+=(Z?.port?`${Z.port}`:"unknown_port")+"/",J+=Z?.database?`${Z.database}`:"unknown_database",J.trim()}P10.getPoolName=Dx0;function Ox0(Z,J,Q,$,Y){let{totalCount:X,waitingCount:W,idleCount:K}=J,z=X-K;return Q.add(z-Y.used,{[p0.ATTR_DB_CLIENT_CONNECTION_STATE]:p0.DB_CLIENT_CONNECTION_STATE_VALUE_USED,[p0.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:Z}),Q.add(K-Y.idle,{[p0.ATTR_DB_CLIENT_CONNECTION_STATE]:p0.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE,[p0.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:Z}),$.add(W-Y.pending,{[p0.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:Z}),{used:z,idle:K,pending:W}}P10.updateCounter=Ox0;function Lx0(Z,J){return function($,Y,X){if($){if($ instanceof Error)Z.recordException(Rz($));Z.setStatus({code:z7.SpanStatusCode.ERROR,message:$.message})}Z.end(),J.call(this,$,Y,X)}}P10.patchCallbackPGPool=Lx0;function Cx0(Z,J){return function($){if($){if($ instanceof Error)Z.recordException(Rz($));Z.setStatus({code:z7.SpanStatusCode.ERROR,message:$.message})}Z.end(),J.apply(this,arguments)}}P10.patchClientConnectCallback=Cx0;function Px0(Z){return typeof Z==="object"&&Z!==null&&"message"in Z?String(Z.message):void 0}P10.getErrorMessage=Px0;function Mx0(Z){return typeof Z==="object"&&typeof Z?.text==="string"}P10.isObjectWithTextString=Mx0;function Rz(Z){let J=Z?.name??"PostgreSQLError",Q=Z?.code??"UNKNOWN";return`PostgreSQL error of type '${J}' occurred (code: ${Q})`}P10.sanitizedErrorMessage=Rz});var A10=j((k10)=>{Object.defineProperty(k10,"__esModule",{value:!0});k10.PACKAGE_NAME=k10.PACKAGE_VERSION=void 0;k10.PACKAGE_VERSION="0.65.0";k10.PACKAGE_NAME="@opentelemetry/instrumentation-pg"});var b10=j((_10)=>{Object.defineProperty(_10,"__esModule",{value:!0});_10.PgInstrumentation=void 0;var t1=n(),j0=I(),I10=B10(),x0=R10(),T10=cj(),E10=A10(),f10=WD(),kz=R0(),b9=Y0(),e$=YD();function bJ(Z){return Z[Symbol.toStringTag]==="Module"?Z.default:Z}class S10 extends t1.InstrumentationBase{_connectionsCounter={used:0,idle:0,pending:0};_semconvStability;constructor(Z={}){super(E10.PACKAGE_NAME,E10.PACKAGE_VERSION,Z);this._semconvStability=(0,t1.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}_updateMetricInstruments(){this._operationDuration=this.meter.createHistogram(b9.METRIC_DB_CLIENT_OPERATION_DURATION,{description:"Duration of database client operations.",unit:"s",valueType:j0.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(e$.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(e$.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS,{description:"The number of current pending requests for an open connection.",unit:"{connection}"})}init(){let Z=[">=8.0.3 <9"],J=[">=2.0.0 <4"],Q=new t1.InstrumentationNodeModuleFile("pg/lib/native/client.js",Z,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),$=new t1.InstrumentationNodeModuleFile("pg/lib/client.js",Z,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),Y=new t1.InstrumentationNodeModuleDefinition("pg",Z,(W)=>{let K=bJ(W);return this._patchPgClient(K.Client),W},(W)=>{let K=bJ(W);return this._unpatchPgClient(K.Client),W},[$,Q]),X=new t1.InstrumentationNodeModuleDefinition("pg-pool",J,(W)=>{let K=bJ(W);if((0,t1.isWrapped)(K.prototype.connect))this._unwrap(K.prototype,"connect");return this._wrap(K.prototype,"connect",this._getPoolConnectPatch()),K},(W)=>{let K=bJ(W);if((0,t1.isWrapped)(K.prototype.connect))this._unwrap(K.prototype,"connect")});return[Y,X]}_patchPgClient(Z){if(!Z)return;let J=bJ(Z);if((0,t1.isWrapped)(J.prototype.query))this._unwrap(J.prototype,"query");if((0,t1.isWrapped)(J.prototype.connect))this._unwrap(J.prototype,"connect");return this._wrap(J.prototype,"query",this._getClientQueryPatch()),this._wrap(J.prototype,"connect",this._getClientConnectPatch()),Z}_unpatchPgClient(Z){let J=bJ(Z);if((0,t1.isWrapped)(J.prototype.query))this._unwrap(J.prototype,"query");if((0,t1.isWrapped)(J.prototype.connect))this._unwrap(J.prototype,"connect");return Z}_getClientConnectPatch(){let Z=this;return(J)=>{return function($){let Y=Z.getConfig();if(x0.shouldSkipInstrumentation(Y)||Y.ignoreConnectSpans)return J.call(this,$);let X=Z.tracer.startSpan(f10.SpanNames.CONNECT,{kind:j0.SpanKind.CLIENT,attributes:x0.getSemanticAttributesFromConnection(this,Z._semconvStability)});if($){let K=j0.trace.getSpan(j0.context.active());if($=x0.patchClientConnectCallback(X,$),K)$=j0.context.bind(j0.context.active(),$)}let W=j0.context.with(j0.trace.setSpan(j0.context.active(),X),()=>{return J.call(this,$)});return y10(X,W)}}}recordOperationDuration(Z,J){let Q={},$=[b9.ATTR_DB_NAMESPACE,b9.ATTR_ERROR_TYPE,b9.ATTR_SERVER_PORT,b9.ATTR_SERVER_ADDRESS,b9.ATTR_DB_OPERATION_NAME];if(this._semconvStability&t1.SemconvStability.OLD)$.push(e$.ATTR_DB_SYSTEM);if(this._semconvStability&t1.SemconvStability.STABLE)$.push(b9.ATTR_DB_SYSTEM_NAME);$.forEach((X)=>{if(X in Z)Q[X]=Z[X]});let Y=(0,kz.hrTimeToMilliseconds)((0,kz.hrTimeDuration)(J,(0,kz.hrTime)()))/1000;this._operationDuration.record(Y,Q)}_getClientQueryPatch(){let Z=this;return(J)=>{return this._diag.debug("Patching pg.Client.prototype.query"),function(...$){if(x0.shouldSkipInstrumentation(Z.getConfig()))return J.apply(this,$);let Y=(0,kz.hrTime)(),X=$[0],W=typeof X==="string",K=x0.isObjectWithTextString(X),z=W?{text:X,values:Array.isArray($[1])?$[1]:void 0}:K?{...X,name:X.name,text:X.text,values:X.values??(Array.isArray($[1])?$[1]:void 0)}:void 0,G={[e$.ATTR_DB_SYSTEM]:e$.DB_SYSTEM_VALUE_POSTGRESQL,[b9.ATTR_DB_NAMESPACE]:this.database,[b9.ATTR_SERVER_PORT]:this.connectionParameters.port,[b9.ATTR_SERVER_ADDRESS]:this.connectionParameters.host};if(z?.text)G[b9.ATTR_DB_OPERATION_NAME]=x0.parseNormalizedOperationName(z?.text);let H=()=>{Z.recordOperationDuration(G,Y)},B=Z.getConfig(),V=x0.handleConfigQuery.call(this,Z.tracer,B,Z._semconvStability,z);if(B.addSqlCommenterCommentToQueries){if(W)$[0]=(0,T10.addSqlCommenterComment)(V,X);else if(K&&!("name"in X))$[0]={...X,text:(0,T10.addSqlCommenterComment)(V,X.text)}}if($.length>0){let w=j0.trace.getSpan(j0.context.active());if(typeof $[$.length-1]==="function"){if($[$.length-1]=x0.patchCallback(B,V,$[$.length-1],G,H),w)$[$.length-1]=j0.context.bind(j0.context.active(),$[$.length-1])}else if(typeof z?.callback==="function"){let D=x0.patchCallback(Z.getConfig(),V,z.callback,G,H);if(w)D=j0.context.bind(j0.context.active(),D);$[0].callback=D}}let{requestHook:F}=B;if(typeof F==="function"&&z)(0,t1.safeExecuteInTheMiddle)(()=>{let{database:w,host:D,port:L,user:C}=this.connectionParameters;F(V,{connection:{database:w,host:D,port:L,user:C},query:{text:z.text,values:z.values,name:z.name}})},(w)=>{if(w)Z._diag.error("Error running query hook",w)},!0);let U;try{U=J.apply(this,$)}catch(w){if(w instanceof Error)V.recordException(x0.sanitizedErrorMessage(w));throw V.setStatus({code:j0.SpanStatusCode.ERROR,message:x0.getErrorMessage(w)}),V.end(),w}if(U instanceof Promise)return U.then((w)=>{return new Promise((D)=>{x0.handleExecutionResult(Z.getConfig(),V,w),H(),V.end(),D(w)})}).catch((w)=>{return new Promise((D,L)=>{if(w instanceof Error)V.recordException(x0.sanitizedErrorMessage(w));V.setStatus({code:j0.SpanStatusCode.ERROR,message:w.message}),H(),V.end(),L(w)})});return U}}}_setPoolConnectEventListeners(Z){if(Z[I10.EVENT_LISTENERS_SET])return;let J=x0.getPoolName(Z.options);Z.on("connect",()=>{this._connectionsCounter=x0.updateCounter(J,Z,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),Z.on("acquire",()=>{this._connectionsCounter=x0.updateCounter(J,Z,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),Z.on("remove",()=>{this._connectionsCounter=x0.updateCounter(J,Z,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),Z.on("release",()=>{this._connectionsCounter=x0.updateCounter(J,Z,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),Z[I10.EVENT_LISTENERS_SET]=!0}_getPoolConnectPatch(){let Z=this;return(J)=>{return function($){let Y=Z.getConfig();if(x0.shouldSkipInstrumentation(Y))return J.call(this,$);if(Z._setPoolConnectEventListeners(this),Y.ignoreConnectSpans)return J.call(this,$);let X=Z.tracer.startSpan(f10.SpanNames.POOL_CONNECT,{kind:j0.SpanKind.CLIENT,attributes:x0.getSemanticAttributesFromPoolConnection(this.options,Z._semconvStability)});if($){let K=j0.trace.getSpan(j0.context.active());if($=x0.patchCallbackPGPool(X,$),K)$=j0.context.bind(j0.context.active(),$)}let W=j0.context.with(j0.trace.setSpan(j0.context.active(),X),()=>{return J.call(this,$)});return y10(X,W)}}}}_10.PgInstrumentation=S10;function y10(Z,J){if(!(J instanceof Promise))return J;let Q=J;return j0.context.bind(j0.context.active(),Q.then(($)=>{return Z.end(),$}).catch(($)=>{if($ instanceof Error)Z.recordException(x0.sanitizedErrorMessage($));return Z.setStatus({code:j0.SpanStatusCode.ERROR,message:x0.getErrorMessage($)}),Z.end(),Promise.reject($)}))}});var v10=j((Nz)=>{Object.defineProperty(Nz,"__esModule",{value:!0});Nz.AttributeNames=Nz.PgInstrumentation=void 0;var cx0=b10();Object.defineProperty(Nz,"PgInstrumentation",{enumerable:!0,get:function(){return cx0.PgInstrumentation}});var mx0=$D();Object.defineProperty(Nz,"AttributeNames",{enumerable:!0,get:function(){return mx0.AttributeNames}})});var x10,g10="Postgres",d10,lx0=(Z)=>{return{name:g10,setupOnce(){d10(Z)}}},ZY;var zD=q(()=>{N();X0();x10=A(v10(),1),d10=S(g10,x10.PgInstrumentation,(Z)=>({requireParentSpan:!0,requestHook(J){q0(J,"auto.db.otel.postgres")},ignoreConnectSpans:Z?.ignoreConnectSpans??!1})),ZY=P(lx0)});var vJ,G7,v9,GD="PostgresJs",c10,px0,ix0,m10,u10,ox0=(Z)=>{return{name:GD,setupOnce(){m10(Z)}}},JY;var HD=q(()=>{N();X0();Z7();vJ=A(I(),1),G7=A(n(),1),v9=A(Y0(),1),c10=[">=3.0.0 <4"],px0=/^(SELECT|INSERT|UPDATE|DELETE|CREATE|DROP|ALTER)/i,ix0=Symbol.for("sentry.query.from.instrumented.sql"),m10=S(GD,(Z)=>new u10({requireParentSpan:Z?.requireParentSpan??!0,requestHook:Z?.requestHook}));u10=class u10 extends G7.InstrumentationBase{constructor(Z){super("sentry-postgres-js",e,Z)}init(){let Z=new G7.InstrumentationNodeModuleDefinition("postgres",c10,(J)=>{try{return this._patchPostgres(J)}catch(Q){return e0&&O.error("Failed to patch postgres module:",Q),J}},(J)=>J);return["src","cf/src","cjs/src"].forEach((J)=>{Z.files.push(new G7.InstrumentationNodeModuleFile(`postgres/${J}/query.js`,c10,this._patchQueryPrototype.bind(this),this._unpatchQueryPrototype.bind(this)))}),Z}_patchPostgres(Z){let J=typeof Z==="function",Q=J?Z:Z.default;if(typeof Q!=="function")return e0&&O.warn("postgres module does not export a function. Skipping instrumentation."),Z;let $=this,Y=function(...X){let W=Reflect.construct(Q,X);if(!W||typeof W!=="function")return e0&&O.warn("postgres() did not return a valid instance"),W;let K=$.getConfig();return kF(W,{requireParentSpan:K.requireParentSpan,requestHook:K.requestHook})};Object.setPrototypeOf(Y,Q),Object.setPrototypeOf(Y.prototype,Q.prototype);for(let X of Object.getOwnPropertyNames(Q))if(!["length","name","prototype"].includes(X)){let W=Object.getOwnPropertyDescriptor(Q,X);if(W)Object.defineProperty(Y,X,W)}if(J)return Y;else return o3(Z,"default",Y),Z}_shouldCreateSpans(){let Z=this.getConfig();return vJ.trace.getSpan(vJ.context.active())!==void 0||!Z.requireParentSpan}_setOperationName(Z,J,Q){if(Q){Z.setAttribute(v9.ATTR_DB_OPERATION_NAME,Q);return}let $=J?.match(px0);if($?.[1])Z.setAttribute(v9.ATTR_DB_OPERATION_NAME,$[1].toUpperCase())}_reconstructQuery(Z){if(!Z?.length)return;if(Z.length===1)return Z[0]||void 0;return Z.reduce((J,Q,$)=>$===0?Q:`${J}$${$}${Q}`,"")}_sanitizeSqlQuery(Z){if(!Z)return"Unknown SQL Query";return Z.replace(/--.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/;\s*$/,"").replace(/\s+/g," ").trim().replace(/\bX'[0-9A-Fa-f]*'/gi,"?").replace(/\bB'[01]*'/gi,"?").replace(/'(?:[^']|'')*'/g,"?").replace(/\b0x[0-9A-Fa-f]+/gi,"?").replace(/\b(?:TRUE|FALSE)\b/gi,"?").replace(/-?\b\d+\.?\d*[eE][+-]?\d+\b/g,"?").replace(/-?\b\d+\.\d+\b/g,"?").replace(/-?\.\d+\b/g,"?").replace(/(?<!\$)-?\b\d+\b/g,"?").replace(/\bIN\b\s*\(\s*\?(?:\s*,\s*\?)*\s*\)/gi,"IN (?)").replace(/\bIN\b\s*\(\s*\$\d+(?:\s*,\s*\$\d+)*\s*\)/gi,"IN ($?)")}_patchQueryPrototype(Z){let J=this,Q=Z.Query.prototype.handle;return Z.Query.prototype.handle=async function(...$){if(this[ix0])return Q.apply(this,$);if(!J._shouldCreateSpans())return Q.apply(this,$);let Y=J._reconstructQuery(this.strings),X=J._sanitizeSqlQuery(Y);return h0({name:X||"postgresjs.query",op:"db"},(W)=>{q0(W,"auto.db.postgresjs"),W.setAttributes({[v9.ATTR_DB_SYSTEM_NAME]:"postgres",[v9.ATTR_DB_QUERY_TEXT]:X});let K=J.getConfig(),{requestHook:z}=K;if(z)G7.safeExecuteInTheMiddle(()=>z(W,X,void 0),(B)=>{if(B)W.setAttribute("sentry.hook.error","requestHook failed"),e0&&O.error(`Error in requestHook for ${GD} integration:`,B)},!0);let G=this.resolve;this.resolve=new Proxy(G,{apply:(B,V,F)=>{try{J._setOperationName(W,X,F?.[0]?.command),W.end()}catch(U){e0&&O.error("Error ending span in resolve callback:",U)}return Reflect.apply(B,V,F)}});let H=this.reject;this.reject=new Proxy(H,{apply:(B,V,F)=>{try{W.setStatus({code:a,message:F?.[0]?.message||"unknown_error"}),W.setAttribute(v9.ATTR_DB_RESPONSE_STATUS_CODE,F?.[0]?.code||"unknown"),W.setAttribute(v9.ATTR_ERROR_TYPE,F?.[0]?.name||"unknown"),J._setOperationName(W,X),W.end()}catch(U){e0&&O.error("Error ending span in reject callback:",U)}return Reflect.apply(B,V,F)}});try{return Q.apply(this,$)}catch(B){throw W.setStatus({code:a,message:B instanceof Error?B.message:"unknown_error"}),W.end(),B}})},Z.Query.prototype.handle.__sentry_original__=Q,Z}_unpatchQueryPrototype(Z){if(Z.Query.prototype.handle.__sentry_original__)Z.Query.prototype.handle=Z.Query.prototype.handle.__sentry_original__;return Z}};JY=P(ox0)});class Az{emit(Z){}}var l10;var BD=q(()=>{l10=new Az});class p10{getLogger(Z,J,Q){return new Az}}var Iz;var VD=q(()=>{BD();Iz=new p10});class FD{constructor(Z,J,Q,$){this._provider=Z,this.name=J,this.version=Q,this.options=$}emit(Z){this._getLogger().emit(Z)}_getLogger(){if(this._delegate)return this._delegate;let Z=this._provider._getDelegateLogger(this.name,this.version,this.options);if(!Z)return l10;return this._delegate=Z,this._delegate}}var i10=q(()=>{BD()});class Tz{getLogger(Z,J,Q){var $;return($=this._getDelegateLogger(Z,J,Q))!==null&&$!==void 0?$:new FD(this,Z,J,Q)}_getDelegate(){var Z;return(Z=this._delegate)!==null&&Z!==void 0?Z:Iz}_setDelegate(Z){this._delegate=Z}_getDelegateLogger(Z,J,Q){var $;return($=this._delegate)===null||$===void 0?void 0:$.getLogger(Z,J,Q)}}var o10=q(()=>{VD();i10()});var Ez;var n10=q(()=>{Ez=typeof globalThis==="object"?globalThis:global});var a10=q(()=>{n10()});var s10=q(()=>{a10()});function r10(Z,J,Q){return($)=>$===Z?J:Q}var QY,xJ,UD=1;var t10=q(()=>{s10();QY=Symbol.for("io.opentelemetry.js.api.logs"),xJ=Ez});class fz{constructor(){this._proxyLoggerProvider=new Tz}static getInstance(){if(!this._instance)this._instance=new fz;return this._instance}setGlobalLoggerProvider(Z){if(xJ[QY])return this.getLoggerProvider();return xJ[QY]=r10(UD,Z,Iz),this._proxyLoggerProvider._setDelegate(Z),Z}getLoggerProvider(){var Z,J;return(J=(Z=xJ[QY])===null||Z===void 0?void 0:Z.call(xJ,UD))!==null&&J!==void 0?J:this._proxyLoggerProvider}getLogger(Z,J,Q){return this.getLoggerProvider().getLogger(Z,J,Q)}disable(){delete xJ[QY],this._proxyLoggerProvider=new Tz}}var e10=q(()=>{t10();VD();o10()});var Z60;var J60=q(()=>{e10();Z60=fz.getInstance()});function K60(Z,J,Q){if(!sx0(Z))return yz.diag.error(`Invalid version: ${Z}`),!1;if(!J)return!0;J=J.replace(/([<>=~^]+)\s+/g,"$1");let $=Zg0(Z);if(!$)return!1;let Y=[],X=z60($,J,Y,Q);if(X&&!Q?.includePrerelease)return tx0($,Y);return X}function sx0(Z){return typeof Z==="string"&&W60.test(Z)}function z60(Z,J,Q,$){if(J.includes("||")){let Y=J.trim().split("||");for(let X of Y)if(qD(Z,X,Q,$))return!0;return!1}else if(J.includes(" - "))J=Cg0(J,$);else if(J.includes(" ")){let Y=J.trim().replace(/\s{2,}/g," ").split(" ");for(let X of Y)if(!qD(Z,X,Q,$))return!1;return!0}return qD(Z,J,Q,$)}function qD(Z,J,Q,$){if(J=ex0(J,$),J.includes(" "))return z60(Z,J,Q,$);else{let Y=Jg0(J);return Q.push(Y),rx0(Z,Y)}}function rx0(Z,J){if(J.invalid)return!1;if(!J.version||jD(J.version))return!0;let Q=$60(Z.versionSegments||[],J.versionSegments||[]);if(Q===0){let $=Z.prereleaseSegments||[],Y=J.prereleaseSegments||[];if(!$.length&&!Y.length)Q=0;else if(!$.length&&Y.length)Q=1;else if($.length&&!Y.length)Q=-1;else Q=$60($,Y)}return ax0[J.op]?.includes(Q)}function tx0(Z,J){if(Z.prerelease)return J.some((Q)=>Q.prerelease&&Q.version===Z.version);return!0}function ex0(Z,J){return Z=Z.trim(),Z=Og0(Z,J),Z=Dg0(Z),Z=Lg0(Z,J),Z=Z.trim(),Z}function e1(Z){return!Z||Z.toLowerCase()==="x"||Z==="*"}function Zg0(Z){let J=Z.match(W60);if(!J){yz.diag.error(`Invalid version: ${Z}`);return}let Q=J.groups.version,$=J.groups.prerelease,Y=J.groups.build,X=Q.split("."),W=$?.split(".");return{op:void 0,version:Q,versionSegments:X,versionSegmentCount:X.length,prerelease:$,prereleaseSegments:W,prereleaseSegmentCount:W?W.length:0,build:Y}}function Jg0(Z){if(!Z)return{};let J=Z.match(nx0);if(!J)return yz.diag.error(`Invalid range: ${Z}`),{invalid:!0};let Q=J.groups.op,$=J.groups.version,Y=J.groups.prerelease,X=J.groups.build,W=$.split("."),K=Y?.split(".");if(Q==="==")Q="=";return{op:Q||"=",version:$,versionSegments:W,versionSegmentCount:W.length,prerelease:Y,prereleaseSegments:K,prereleaseSegmentCount:K?K.length:0,build:X}}function jD(Z){return Z==="*"||Z==="x"||Z==="X"}function Q60(Z){let J=parseInt(Z,10);return isNaN(J)?Z:J}function Qg0(Z,J){if(typeof Z===typeof J)if(typeof Z==="number")return[Z,J];else if(typeof Z==="string")return[Z,J];else throw Error("Version segments can only be strings or numbers");else return[String(Z),String(J)]}function $g0(Z,J){if(jD(Z)||jD(J))return 0;let[Q,$]=Qg0(Q60(Z),Q60(J));if(Q>$)return 1;else if(Q<$)return-1;return 0}function $60(Z,J){for(let Q=0;Q<Math.max(Z.length,J.length);Q++){let $=$g0(Z[Q]||"0",J[Q]||"0");if($!==0)return $}return 0}function Dg0(Z){let J=Ug0;return Z.replace(J,(Q,$,Y,X,W)=>{let K;if(e1($))K="";else if(e1(Y))K=`>=${$}.0.0 <${+$+1}.0.0-0`;else if(e1(X))K=`>=${$}.${Y}.0 <${$}.${+Y+1}.0-0`;else if(W)K=`>=${$}.${Y}.${X}-${W} <${$}.${+Y+1}.0-0`;else K=`>=${$}.${Y}.${X} <${$}.${+Y+1}.0-0`;return K})}function Og0(Z,J){let Q=jg0,$=J?.includePrerelease?"-0":"";return Z.replace(Q,(Y,X,W,K,z)=>{let G;if(e1(X))G="";else if(e1(W))G=`>=${X}.0.0${$} <${+X+1}.0.0-0`;else if(e1(K))if(X==="0")G=`>=${X}.${W}.0${$} <${X}.${+W+1}.0-0`;else G=`>=${X}.${W}.0${$} <${+X+1}.0.0-0`;else if(z)if(X==="0")if(W==="0")G=`>=${X}.${W}.${K}-${z} <${X}.${W}.${+K+1}-0`;else G=`>=${X}.${W}.${K}-${z} <${X}.${+W+1}.0-0`;else G=`>=${X}.${W}.${K}-${z} <${+X+1}.0.0-0`;else if(X==="0")if(W==="0")G=`>=${X}.${W}.${K}${$} <${X}.${W}.${+K+1}-0`;else G=`>=${X}.${W}.${K}${$} <${X}.${+W+1}.0-0`;else G=`>=${X}.${W}.${K} <${+X+1}.0.0-0`;return G})}function Lg0(Z,J){let Q=Gg0;return Z.replace(Q,($,Y,X,W,K,z)=>{let G=e1(X),H=G||e1(W),B=H||e1(K),V=B;if(Y==="="&&V)Y="";if(z=J?.includePrerelease?"-0":"",G)if(Y===">"||Y==="<")$="<0.0.0-0";else $="*";else if(Y&&V){if(H)W=0;if(K=0,Y===">")if(Y=">=",H)X=+X+1,W=0,K=0;else W=+W+1,K=0;else if(Y==="<=")if(Y="<",H)X=+X+1;else W=+W+1;if(Y==="<")z="-0";$=`${Y+X}.${W}.${K}${z}`}else if(H)$=`>=${X}.0.0${z} <${+X+1}.0.0-0`;else if(B)$=`>=${X}.${W}.0${z} <${X}.${+W+1}.0-0`;return $})}function Cg0(Z,J){let Q=Bg0;return Z.replace(Q,($,Y,X,W,K,z,G,H,B,V,F,U)=>{if(e1(X))Y="";else if(e1(W))Y=`>=${X}.0.0${J?.includePrerelease?"-0":""}`;else if(e1(K))Y=`>=${X}.${W}.0${J?.includePrerelease?"-0":""}`;else if(z)Y=`>=${Y}`;else Y=`>=${Y}${J?.includePrerelease?"-0":""}`;if(e1(B))H="";else if(e1(V))H=`<${+B+1}.0.0-0`;else if(e1(F))H=`<${B}.${+V+1}.0-0`;else if(U)H=`<=${B}.${V}.${F}-${U}`;else if(J?.includePrerelease)H=`<${B}.${V}.${+F+1}-0`;else H=`<=${H}`;return`${Y} ${H}`.trim()})}var yz,W60,nx0,ax0,G60="[a-zA-Z0-9-]",H60="0|[1-9]\\d*",Yg0,Xg0="((?:<|>)?=?)",Y60,Wg0,X60,Kg0,wD,$Y,zg0,Gg0,Hg0,Bg0,Vg0="(?:~>?)",Fg0,Ug0,qg0="(?:\\^)",wg0,jg0;var B60=q(()=>{yz=A(I(),1),W60=/^(?:v)?(?<version>(?<major>0|[1-9]\d*)\.(?<minor>0|[1-9]\d*)\.(?<patch>0|[1-9]\d*))(?:-(?<prerelease>(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+(?<build>[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/,nx0=/^(?<op><|>|=|==|<=|>=|~|\^|~>)?\s*(?:v)?(?<version>(?<major>x|X|\*|0|[1-9]\d*)(?:\.(?<minor>x|X|\*|0|[1-9]\d*))?(?:\.(?<patch>x|X|\*|0|[1-9]\d*))?)(?:-(?<prerelease>(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+(?<build>[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/,ax0={">":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1],"!=":[-1,1]};Yg0=`\\d*[a-zA-Z-]${G60}*`,Y60=`(?:${H60}|${Yg0})`,Wg0=`(?:-(${Y60}(?:\\.${Y60})*))`,X60=`${G60}+`,Kg0=`(?:\\+(${X60}(?:\\.${X60})*))`,wD=`${H60}|x|X|\\*`,$Y=`[v=\\s]*(${wD})(?:\\.(${wD})(?:\\.(${wD})(?:${Wg0})?${Kg0}?)?)?`,zg0=`^${Xg0}\\s*${$Y}$`,Gg0=new RegExp(zg0),Hg0=`^\\s*(${$Y})\\s+-\\s+(${$Y})\\s*$`,Bg0=new RegExp(Hg0),Fg0=`^${Vg0}${$Y}$`,Ug0=new RegExp(Fg0),wg0=`^${qg0}${$Y}$`,jg0=new RegExp(wg0)});function YY(Z,J,Q){let $=!!Z[J]&&Object.prototype.propertyIsEnumerable.call(Z,J);Object.defineProperty(Z,J,{configurable:!0,enumerable:$,writable:!0,value:Q})}function XY(Z){if(Z&&Z.logger)if(typeof Z.logger!=="function")Z6("new logger isn't a function, not replacing");else Z6=Z.logger}var Z6,S5=(Z,J,Q)=>{if(!Z||!Z[J]){Z6("no original function "+String(J)+" to wrap");return}if(!Q){Z6("no wrapper function"),Z6(Error().stack);return}let $=Z[J];if(typeof $!=="function"||typeof Q!=="function"){Z6("original object and wrapper must be functions");return}let Y=Q($,J);return YY(Y,"__original",$),YY(Y,"__unwrap",()=>{if(Z[J]===Y)YY(Z,J,$)}),YY(Y,"__wrapped",!0),YY(Z,J,Y),Y},DD=(Z,J,Q)=>{if(!Z){Z6("must provide one or more modules to patch"),Z6(Error().stack);return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){Z6("must provide one or more functions to wrap on modules");return}Z.forEach(($)=>{J.forEach((Y)=>{S5($,Y,Q)})})},gJ=(Z,J)=>{if(!Z||!Z[J]){Z6("no function to unwrap."),Z6(Error().stack);return}let Q=Z[J];if(!Q.__unwrap)Z6("no original to unwrap to -- has "+String(J)+" already been unwrapped?");else{Q.__unwrap();return}},OD=(Z,J)=>{if(!Z){Z6("must provide one or more modules to patch"),Z6(Error().stack);return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){Z6("must provide one or more functions to unwrap on modules");return}Z.forEach((Q)=>{J.forEach(($)=>{gJ(Q,$)})})};var LD=q(()=>{Z6=console.error.bind(console);XY.wrap=S5;XY.massWrap=DD;XY.unwrap=gJ;XY.massUnwrap=OD});class CD{instrumentationName;instrumentationVersion;_config={};_tracer;_meter;_logger;_diag;constructor(Z,J,Q){this.instrumentationName=Z,this.instrumentationVersion=J,this.setConfig(Q),this._diag=dJ.diag.createComponentLogger({namespace:Z}),this._tracer=dJ.trace.getTracer(Z,J),this._meter=dJ.metrics.getMeter(Z,J),this._logger=Z60.getLogger(Z,J),this._updateMetricInstruments()}_wrap=S5;_unwrap=gJ;_massWrap=DD;_massUnwrap=OD;get meter(){return this._meter}setMeterProvider(Z){this._meter=Z.getMeter(this.instrumentationName,this.instrumentationVersion),this._updateMetricInstruments()}get logger(){return this._logger}setLoggerProvider(Z){this._logger=Z.getLogger(this.instrumentationName,this.instrumentationVersion)}getModuleDefinitions(){let Z=this.init()??[];if(!Array.isArray(Z))return[Z];return Z}_updateMetricInstruments(){return}getConfig(){return this._config}setConfig(Z){this._config={enabled:!0,...Z}}setTracerProvider(Z){this._tracer=Z.getTracer(this.instrumentationName,this.instrumentationVersion)}get tracer(){return this._tracer}_runSpanCustomizationHook(Z,J,Q,$){if(!Z)return;try{Z(Q,$)}catch(Y){this._diag.error("Error running span customization hook due to exception in handler",{triggerName:J},Y)}}}var dJ;var V60=q(()=>{J60();LD();dJ=A(I(),1)});class PD{hooks=[];children=new Map}class RD{_trie=new PD;_counter=0;insert(Z){let J=this._trie;for(let Q of Z.moduleName.split("/")){let $=J.children.get(Q);if(!$)$=new PD,J.children.set(Q,$);J=$}J.hooks.push({hook:Z,insertedId:this._counter++})}search(Z,{maintainInsertionOrder:J,fullOnly:Q}={}){let $=this._trie,Y=[],X=!0;for(let W of Z.split("/")){let K=$.children.get(W);if(!K){X=!1;break}if(!Q)Y.push(...K.hooks);$=K}if(Q&&X)Y.push(...$.hooks);if(Y.length===0)return[];if(Y.length===1)return[Y[0].hook];if(J)Y.sort((W,K)=>W.insertedId-K.insertedId);return Y.map(({hook:W})=>W)}}var MD="/";import*as kD from"path";class WY{_moduleNameTrie=new RD;static _instance;constructor(){this._initialize()}_initialize(){new F60.Hook(null,{internals:!0},(Z,J,Q)=>{let $=Rg0(J),Y=this._moduleNameTrie.search($,{maintainInsertionOrder:!0,fullOnly:Q===void 0});for(let{onRequire:X}of Y)Z=X(Z,J,Q);return Z})}register(Z,J){let Q={moduleName:Z,onRequire:J};return this._moduleNameTrie.insert(Q),Q}static getInstance(){if(Mg0)return new WY;return this._instance=this._instance??new WY}}function Rg0(Z){return kD.sep!==MD?Z.split(kD.sep).join(MD):Z}var F60,Mg0;var U60=q(()=>{F60=A(_7(),1),Mg0=["afterEach","after","beforeEach","before","describe","it"].every((Z)=>{return typeof global[Z]==="function"})});var O60=j((Ag0)=>{var q60=[],ND=new WeakMap,w60=new WeakMap,j60=new Map,D60=[],kg0={set(Z,J,Q){let $=ND.get(Z),Y=$&&$[J];if(typeof Y==="function")return Y(Q);return!0},get(Z,J){if(J===Symbol.toStringTag)return"Module";let Q=w60.get(Z)[J];if(typeof Q==="function")return Q()},defineProperty(Z,J,Q){if(!("value"in Q))throw Error("Getters/setters are not supported for exports property descriptors.");let $=ND.get(Z),Y=$&&$[J];if(typeof Y==="function")return Y(Q.value);return!0}};function Ng0(Z,J,Q,$,Y){j60.set(Z,Y),ND.set(J,Q),w60.set(J,$);let X=new Proxy(J,kg0);q60.forEach((W)=>W(Z,X,Y)),D60.push([Z,X,Y])}Ag0.register=Ng0;Ag0.importHooks=q60;Ag0.specifiers=j60;Ag0.toHook=D60});var M60=j((Xj1,mJ)=>{var L60=E("path"),yg0=AQ(),{fileURLToPath:Sg0}=E("url"),{MessageChannel:_g0}=E("worker_threads"),{isBuiltin:AD}=E("module");if(!AD)AD=()=>!0;var{importHooks:ID,specifiers:hg0,toHook:bg0}=O60();function C60(Z){ID.push(Z),bg0.forEach(([J,Q,$])=>Z(J,Q,$))}function P60(Z){let J=ID.indexOf(Z);if(J>-1)ID.splice(J,1)}function cJ(Z,J,Q,$){let Y=Z(J,Q,$);if(Y&&Y!==J){if("default"in J)J.default=Y}}var TD;function vg0(){let{port1:Z,port2:J}=new _g0,Q=0,$;TD=(K)=>{Q++,Z.postMessage(K)},Z.on("message",()=>{if(Q--,$&&Q<=0)$()}).unref();function Y(){let K=setInterval(()=>{},1000),z=new Promise((G)=>{$=G}).then(()=>{clearInterval(K)});if(Q===0)$();return z}let X=J;return{registerOptions:{data:{addHookMessagePort:X,include:[]},transferList:[X]},addHookMessagePort:X,waitForAllMessagesAcknowledged:Y}}function KY(Z,J,Q){if(this instanceof KY===!1)return new KY(Z,J,Q);if(typeof Z==="function")Q=Z,Z=null,J=null;else if(typeof J==="function")Q=J,J=null;let $=J?J.internals===!0:!1;if(TD&&Array.isArray(Z))TD(Z);this._iitmHook=(Y,X,W)=>{let K=Y,z=K.startsWith("node:"),G,H;if(z){let B=Y.slice(5);if(AD(B))Y=B}else if(K.startsWith("file://")){let B=Error.stackTraceLimit;Error.stackTraceLimit=0;try{G=Sg0(Y),Y=G}catch(V){}if(Error.stackTraceLimit=B,G){let V=yg0(G);if(V)Y=V.name,H=V.basedir}}if(Z){for(let B of Z)if(G&&B===G)cJ(Q,X,G,void 0);else if(B===Y){if(!H)cJ(Q,X,Y,H);else if(H.endsWith(hg0.get(K)))cJ(Q,X,Y,H);else if($){let V=Y+L60.sep+L60.relative(H,G);cJ(Q,X,V,H)}}else if(B===W)cJ(Q,X,W,H)}else cJ(Q,X,Y,H)},C60(this._iitmHook)}KY.prototype.unhook=function(){P60(this._iitmHook)};mJ.exports=KY;mJ.exports.Hook=KY;mJ.exports.addHook=C60;mJ.exports.removeHook=P60;mJ.exports.createAddHookMessageChannel=vg0});function R60(Z){return typeof Z==="function"&&typeof Z.__original==="function"&&typeof Z.__unwrap==="function"&&Z.__wrapped===!0}import*as e8 from"path";import{types as k60}from"util";import{readFileSync as xg0}from"fs";function N60(Z,J,Q){if(typeof J>"u")return Z.includes("*");return Z.some(($)=>{return K60(J,$,{includePrerelease:Q})})}var A60,uJ,I60,lJ;var T60=q(()=>{B60();LD();V60();U60();A60=A(M60(),1),uJ=A(I(),1),I60=A(_7(),1);lJ=class lJ extends CD{_modules;_hooks=[];_requireInTheMiddleSingleton=WY.getInstance();_enabled=!1;constructor(Z,J,Q){super(Z,J,Q);let $=this.init();if($&&!Array.isArray($))$=[$];if(this._modules=$||[],this._config.enabled)this.enable()}_wrap=(Z,J,Q)=>{if(R60(Z[J]))this._unwrap(Z,J);if(!k60.isProxy(Z))return S5(Z,J,Q);else{let $=S5(Object.assign({},Z),J,Q);return Object.defineProperty(Z,J,{value:$}),$}};_unwrap=(Z,J)=>{if(!k60.isProxy(Z))return gJ(Z,J);else return Object.defineProperty(Z,J,{value:Z[J]})};_massWrap=(Z,J,Q)=>{if(!Z){uJ.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){uJ.diag.error("must provide one or more functions to wrap on modules");return}Z.forEach(($)=>{J.forEach((Y)=>{this._wrap($,Y,Q)})})};_massUnwrap=(Z,J)=>{if(!Z){uJ.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(Z))Z=[Z];if(!(J&&Array.isArray(J))){uJ.diag.error("must provide one or more functions to wrap on modules");return}Z.forEach((Q)=>{J.forEach(($)=>{this._unwrap(Q,$)})})};_warnOnPreloadedModules(){this._modules.forEach((Z)=>{let{name:J}=Z;try{let Q=E.resolve(J);if(E.cache[Q])this._diag.warn(`Module ${J} has been loaded before ${this.instrumentationName} so it might not work, please initialize it before requiring ${J}`)}catch{}})}_extractPackageVersion(Z){try{let J=xg0(e8.join(Z,"package.json"),{encoding:"utf8"}),Q=JSON.parse(J).version;return typeof Q==="string"?Q:void 0}catch{uJ.diag.warn("Failed extracting version",Z)}return}_onRequire(Z,J,Q,$){if(!$){if(typeof Z.patch==="function"){if(Z.moduleExports=J,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs core module on require hook",{module:Z.name}),Z.patch(J)}return J}let Y=this._extractPackageVersion($);if(Z.moduleVersion=Y,Z.name===Q){if(N60(Z.supportedVersions,Y,Z.includePrerelease)){if(typeof Z.patch==="function"){if(Z.moduleExports=J,this._enabled)return this._diag.debug("Applying instrumentation patch for module on require hook",{module:Z.name,version:Z.moduleVersion,baseDir:$}),Z.patch(J,Z.moduleVersion)}}return J}let X=Z.files??[],W=e8.normalize(Q);return X.filter((z)=>z.name===W).filter((z)=>N60(z.supportedVersions,Y,Z.includePrerelease)).reduce((z,G)=>{if(G.moduleExports=z,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs module file on require hook",{module:Z.name,version:Z.moduleVersion,fileName:G.name,baseDir:$}),G.patch(z,Z.moduleVersion);return z},J)}enable(){if(this._enabled)return;if(this._enabled=!0,this._hooks.length>0){for(let Z of this._modules){if(typeof Z.patch==="function"&&Z.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module on instrumentation enabled",{module:Z.name,version:Z.moduleVersion}),Z.patch(Z.moduleExports,Z.moduleVersion);for(let J of Z.files)if(J.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module file on instrumentation enabled",{module:Z.name,version:Z.moduleVersion,fileName:J.name}),J.patch(J.moduleExports,Z.moduleVersion)}return}this._warnOnPreloadedModules();for(let Z of this._modules){let J=(X,W,K)=>{if(!K&&e8.isAbsolute(W)){let z=e8.parse(W);W=z.name,K=z.dir}return this._onRequire(Z,X,W,K)},Q=(X,W,K)=>{return this._onRequire(Z,X,W,K)},$=e8.isAbsolute(Z.name)?new I60.Hook([Z.name],{internals:!0},Q):this._requireInTheMiddleSingleton.register(Z.name,Q);this._hooks.push($);let Y=new A60.Hook([Z.name],{internals:!1},J);this._hooks.push(Y)}}disable(){if(!this._enabled)return;this._enabled=!1;for(let Z of this._modules){if(typeof Z.unpatch==="function"&&Z.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module on instrumentation disabled",{module:Z.name,version:Z.moduleVersion}),Z.unpatch(Z.moduleExports,Z.moduleVersion);for(let J of Z.files)if(J.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module file on instrumentation disabled",{module:Z.name,version:Z.moduleVersion,fileName:J.name}),J.unpatch(J.moduleExports,Z.moduleVersion)}}isEnabled(){return this._enabled}}});var E60=q(()=>{T60()});var f60=q(()=>{E60()});class Sz{name;supportedVersions;patch;unpatch;files;constructor(Z,J,Q,$,Y){this.name=Z,this.supportedVersions=J,this.patch=Q,this.unpatch=$,this.files=Y||[]}}var y60=q(()=>{f60()});function cg0(){let Z=pJ[fD];if(Z?.helper)return Z.helper;return pJ[ED]?.helper}function mg0(Z){let J={helper:Z};pJ[fD]=J,pJ[ED]=J}function ug0(){delete pJ[fD],delete pJ[ED]}function ig0(Z){switch(Z){case"client":return H7.SpanKind.CLIENT;case"internal":default:return H7.SpanKind.INTERNAL}}function b60(Z,J,Q,$,Y){if(v60(J.name,Y))return;let X={attributes:J.attributes,kind:ig0(J.kind),startTime:J.startTime};Z.startActiveSpan(J.name,X,(W)=>{if($.set(J.id,W.spanContext().spanId),J.links)W.addLinks(J.links.flatMap((z)=>{let G=$.get(z);if(!G)return[];return{context:{spanId:G,traceId:W.spanContext().traceId,traceFlags:W.spanContext().traceFlags}}}));let K=Q.filter((z)=>z.parentId===J.id);for(let z of K)b60(Z,z,Q,$,Y);W.end(J.endTime)})}function S60(Z,J){if(ng0(J))return J.then((Q)=>{return Z.end(),Q},(Q)=>{throw Z.end(),Q});return Z.end(),J}function ng0(Z){return Z!=null&&typeof Z.then==="function"}function v60(Z,J){return J.some((Q)=>typeof Q==="string"?Q===Z:Q.test(Z))}var h60,H7,gg0,dg0,ED="PRISMA_INSTRUMENTATION",fD,pJ,lg0,pg0="00-10-10-00",og0=class{tracerProvider;ignoreSpanTypes;constructor({tracerProvider:Z,ignoreSpanTypes:J}){this.tracerProvider=Z,this.ignoreSpanTypes=J}isEnabled(){return!0}getTraceParent(Z){let J=H7.trace.getSpanContext(Z??H7.context.active());if(J)return`00-${J.traceId}-${J.spanId}-0${J.traceFlags}`;return pg0}dispatchEngineSpans(Z){let J=this.tracerProvider.getTracer("prisma"),Q=new Map,$=Z.filter((Y)=>Y.parentId===null);for(let Y of $)b60(J,Y,Z,Q,this.ignoreSpanTypes)}getActiveContext(){return H7.context.active()}runInChildSpan(Z,J){if(typeof Z==="string")Z={name:Z};if(Z.internal&&!lg0)return J();let Q=this.tracerProvider.getTracer("prisma"),$=Z.context??this.getActiveContext(),Y=`prisma:client:${Z.name}`;if(v60(Y,this.ignoreSpanTypes))return J();if(Z.active===!1){let X=Q.startSpan(Y,Z,$);return S60(X,J(X,$))}return Q.startActiveSpan(Y,Z,(X)=>S60(X,J(X,$)))}},x60,_60,ag0,sg0="@prisma/client",g60;var d60=q(()=>{y60();h60=A(I(),1),H7=A(I(),1),gg0={name:"@prisma/instrumentation-contract",version:"7.4.2",description:"Shared types and utilities for Prisma instrumentation",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.mts",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-contract"},bugs:"https://github.com/prisma/prisma/issues",scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",prepublishOnly:"pnpm run build",test:"vitest run"},files:["dist"],sideEffects:!1,devDependencies:{"@opentelemetry/api":"1.9.0"},peerDependencies:{"@opentelemetry/api":"^1.8"}},dg0=gg0.version.split(".")[0],fD=`V${dg0}_PRISMA_INSTRUMENTATION`,pJ=globalThis;lg0=process.env.PRISMA_SHOW_ALL_TRACES==="true";x60={name:"@prisma/instrumentation",version:"7.4.2",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:{"@opentelemetry/api":"1.9.0","@prisma/instrumentation-contract":"workspace:*","@types/node":"~20.19.24",typescript:"5.4.5"},dependencies:{"@opentelemetry/instrumentation":"^0.207.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:"vitest run"},sideEffects:!1},_60=x60.version,ag0=x60.name,g60=class extends lJ{tracerProvider;constructor(Z={}){super(ag0,_60,Z)}setTracerProvider(Z){this.tracerProvider=Z}init(){return[new Sz(sg0,[_60])]}enable(){let Z=this._config;mg0(new og0({tracerProvider:this.tracerProvider??h60.trace.getTracerProvider(),ignoreSpanTypes:Z.ignoreSpanTypes??[]}))}disable(){ug0()}isEnabled(){return cg0()!==void 0}}});function rg0(Z){return!!Z&&typeof Z==="object"&&"dispatchEngineSpans"in Z}function m60(){let Z=globalThis.PRISMA_INSTRUMENTATION;return Z&&typeof Z==="object"&&"helper"in Z?Z.helper:void 0}function tg0(Z){switch(Z){case"client":return z9.SpanKind.CLIENT;case"internal":default:return z9.SpanKind.INTERNAL}}var z9,c60="Prisma",u60,eg0,zY;var yD=q(()=>{d60();N();X0();z9=A(I(),1);u60=class u60 extends g60{constructor(Z){super(Z?.instrumentationConfig)}enable(){super.enable();let Z=m60();if(rg0(Z))Z.createEngineSpan=(J)=>{let Q=z9.trace.getTracer("prismaV5Compatibility"),$=Q._idGenerator;if(!$){G0(()=>{console.warn("[Sentry] Could not find _idGenerator on tracer, skipping Prisma v5 compatibility - some Prisma spans may be missing!")});return}try{J.spans.forEach((Y)=>{let X=tg0(Y.kind),W=Y.parent_span_id,K=Y.span_id,z=Y.trace_id,G=Y.links?.map((B)=>{return{context:{traceId:B.trace_id,spanId:B.span_id,traceFlags:z9.TraceFlags.SAMPLED}}}),H=z9.trace.setSpanContext(z9.context.active(),{traceId:z,spanId:W,traceFlags:z9.TraceFlags.SAMPLED});z9.context.with(H,()=>{let B={generateTraceId:()=>{return z},generateSpanId:()=>{return K}};Q._idGenerator=B,Q.startSpan(Y.name,{kind:X,links:G,startTime:Y.start_time,attributes:Y.attributes}).end(Y.end_time),Q._idGenerator=$})})}finally{Q._idGenerator=$}}}};eg0=S(c60,(Z)=>{return new u60(Z)}),zY=P((Z)=>{return{name:c60,setupOnce(){eg0(Z)},setup(J){if(!m60())return;J.on("spanStart",(Q)=>{let $=v(Q);if($.description?.startsWith("prisma:"))Q.setAttribute(f,"auto.db.otel.prisma");if($.description==="prisma:engine:db_query"&&$.data["db.query.text"])Q.updateName($.data["db.query.text"]);if($.description==="prisma:engine:db_query"&&!$.data["db.system"])Q.setAttribute("db.system","prisma")})}}})});var i60=j((l60)=>{Object.defineProperty(l60,"__esModule",{value:!0});l60.PACKAGE_NAME=l60.PACKAGE_VERSION=void 0;l60.PACKAGE_VERSION="0.59.0";l60.PACKAGE_NAME="@opentelemetry/instrumentation-hapi"});var SD=j((o60)=>{Object.defineProperty(o60,"__esModule",{value:!0});o60.HapiLifecycleMethodNames=o60.HapiLayerType=o60.handlerPatched=o60.HapiComponentName=void 0;o60.HapiComponentName="@hapi/hapi";o60.handlerPatched=Symbol("hapi-handler-patched");o60.HapiLayerType={ROUTER:"router",PLUGIN:"plugin",EXT:"server.ext"};o60.HapiLifecycleMethodNames=new Set(["onPreAuth","onCredentials","onPostAuth","onPreHandler","onPostHandler","onPreResponse","onRequest"])});var r60=j((a60)=>{Object.defineProperty(a60,"__esModule",{value:!0});a60.ATTR_HTTP_METHOD=void 0;a60.ATTR_HTTP_METHOD="http.method"});var hD=j((t60)=>{Object.defineProperty(t60,"__esModule",{value:!0});t60.AttributeNames=void 0;var Yd0;(function(Z){Z.HAPI_TYPE="hapi.type",Z.PLUGIN_NAME="hapi.plugin.name",Z.EXT_TYPE="server.ext.type"})(Yd0=t60.AttributeNames||(t60.AttributeNames={}))});var $90=j((J90)=>{Object.defineProperty(J90,"__esModule",{value:!0});J90.getPluginFromInput=J90.getExtMetadata=J90.getRouteMetadata=J90.isPatchableExtMethod=J90.isDirectExtInput=J90.isLifecycleExtEventObj=J90.isLifecycleExtType=J90.getPluginName=void 0;var e60=Y0(),Xd0=r60(),GY=SD(),B7=hD(),Z90=n();function Wd0(Z){if(Z.name)return Z.name;else return Z.pkg.name}J90.getPluginName=Wd0;var Kd0=(Z)=>{return typeof Z==="string"&&GY.HapiLifecycleMethodNames.has(Z)};J90.isLifecycleExtType=Kd0;var zd0=(Z)=>{let J=Z?.type;return J!==void 0&&J90.isLifecycleExtType(J)};J90.isLifecycleExtEventObj=zd0;var Gd0=(Z)=>{return Array.isArray(Z)&&Z.length<=3&&J90.isLifecycleExtType(Z[0])&&typeof Z[1]==="function"};J90.isDirectExtInput=Gd0;var Hd0=(Z)=>{return!Array.isArray(Z)};J90.isPatchableExtMethod=Hd0;var Bd0=(Z,J,Q)=>{let $={[e60.ATTR_HTTP_ROUTE]:Z.path};if(J&Z90.SemconvStability.OLD)$[Xd0.ATTR_HTTP_METHOD]=Z.method;if(J&Z90.SemconvStability.STABLE)$[e60.ATTR_HTTP_REQUEST_METHOD]=Z.method;let Y;if(Q)$[B7.AttributeNames.HAPI_TYPE]=GY.HapiLayerType.PLUGIN,$[B7.AttributeNames.PLUGIN_NAME]=Q,Y=`${Q}: route - ${Z.path}`;else $[B7.AttributeNames.HAPI_TYPE]=GY.HapiLayerType.ROUTER,Y=`route - ${Z.path}`;return{attributes:$,name:Y}};J90.getRouteMetadata=Bd0;var Vd0=(Z,J)=>{if(J)return{attributes:{[B7.AttributeNames.EXT_TYPE]:Z,[B7.AttributeNames.HAPI_TYPE]:GY.HapiLayerType.EXT,[B7.AttributeNames.PLUGIN_NAME]:J},name:`${J}: ext - ${Z}`};return{attributes:{[B7.AttributeNames.EXT_TYPE]:Z,[B7.AttributeNames.HAPI_TYPE]:GY.HapiLayerType.EXT},name:`ext - ${Z}`}};J90.getExtMetadata=Vd0;var Fd0=(Z)=>{if("plugin"in Z){if("plugin"in Z.plugin)return Z.plugin.plugin;return Z.plugin}return Z};J90.getPluginFromInput=Fd0});var G90=j((K90)=>{Object.defineProperty(K90,"__esModule",{value:!0});K90.HapiInstrumentation=void 0;var _6=I(),Y90=R0(),HY=n(),X90=i60(),BY=SD(),ZZ=$90();class W90 extends HY.InstrumentationBase{_semconvStability;constructor(Z={}){super(X90.PACKAGE_NAME,X90.PACKAGE_VERSION,Z);this._semconvStability=(0,HY.semconvStabilityFromStr)("http",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}init(){return new HY.InstrumentationNodeModuleDefinition(BY.HapiComponentName,[">=17.0.0 <22"],(Z)=>{let J=Z[Symbol.toStringTag]==="Module"?Z.default:Z;if(!(0,HY.isWrapped)(J.server))this._wrap(J,"server",this._getServerPatch.bind(this));if(!(0,HY.isWrapped)(J.Server))this._wrap(J,"Server",this._getServerPatch.bind(this));return J},(Z)=>{let J=Z[Symbol.toStringTag]==="Module"?Z.default:Z;this._massUnwrap([J],["server","Server"])})}_getServerPatch(Z){let J=this,Q=this;return function(Y){let X=Z.apply(this,[Y]);return Q._wrap(X,"route",(W)=>{return J._getServerRoutePatch.bind(J)(W)}),Q._wrap(X,"ext",(W)=>{return J._getServerExtPatch.bind(J)(W)}),Q._wrap(X,"register",J._getServerRegisterPatch.bind(J)),X}}_getServerRegisterPatch(Z){let J=this;return function($,Y){if(Array.isArray($))for(let X of $){let W=(0,ZZ.getPluginFromInput)(X);J._wrapRegisterHandler(W)}else{let X=(0,ZZ.getPluginFromInput)($);J._wrapRegisterHandler(X)}return Z.apply(this,[$,Y])}}_getServerExtPatch(Z,J){let Q=this;return function(...Y){if(Array.isArray(Y[0])){let X=Y[0];for(let W=0;W<X.length;W++){let K=X[W];if((0,ZZ.isLifecycleExtType)(K.type)){let z=K,G=Q._wrapExtMethods(z.method,K.type,J);z.method=G,X[W]=z}}return Z.apply(this,Y)}else if((0,ZZ.isDirectExtInput)(Y)){let X=Y,W=X[1],K=Q._wrapExtMethods(W,X[0],J);return Z.apply(this,[X[0],K,X[2]])}else if((0,ZZ.isLifecycleExtEventObj)(Y[0])){let X=Y[0],W=Q._wrapExtMethods(X.method,X.type,J);return X.method=W,Z.call(this,X)}return Z.apply(this,Y)}}_getServerRoutePatch(Z,J){let Q=this;return function($){if(Array.isArray($))for(let Y=0;Y<$.length;Y++){let X=Q._wrapRouteHandler.call(Q,$[Y],J);$[Y]=X}else $=Q._wrapRouteHandler.call(Q,$,J);return Z.apply(this,[$])}}_wrapRegisterHandler(Z){let J=this,Q=(0,ZZ.getPluginName)(Z),$=Z.register,Y=this,X=function(W,K){return Y._wrap(W,"route",(z)=>{return J._getServerRoutePatch.bind(J)(z,Q)}),Y._wrap(W,"ext",(z)=>{return J._getServerExtPatch.bind(J)(z,Q)}),$.call(this,W,K)};Z.register=X}_wrapExtMethods(Z,J,Q){let $=this;if(Z instanceof Array){for(let Y=0;Y<Z.length;Y++)Z[Y]=$._wrapExtMethods(Z[Y],J);return Z}else if((0,ZZ.isPatchableExtMethod)(Z)){if(Z[BY.handlerPatched]===!0)return Z;return Z[BY.handlerPatched]=!0,async function(...X){if(_6.trace.getSpan(_6.context.active())===void 0)return await Z.apply(this,X);let W=(0,ZZ.getExtMetadata)(J,Q),K=$.tracer.startSpan(W.name,{attributes:W.attributes});try{return await _6.context.with(_6.trace.setSpan(_6.context.active(),K),Z,void 0,...X)}catch(z){throw K.recordException(z),K.setStatus({code:_6.SpanStatusCode.ERROR,message:z.message}),z}finally{K.end()}}}return Z}_wrapRouteHandler(Z,J){let Q=this;if(Z[BY.handlerPatched]===!0)return Z;Z[BY.handlerPatched]=!0;let $=(Y)=>{return async function(...X){if(_6.trace.getSpan(_6.context.active())===void 0)return await Y.call(this,...X);let W=(0,Y90.getRPCMetadata)(_6.context.active());if(W?.type===Y90.RPCType.HTTP)W.route=Z.path;let K=(0,ZZ.getRouteMetadata)(Z,Q._semconvStability,J),z=Q.tracer.startSpan(K.name,{attributes:K.attributes});try{return await _6.context.with(_6.trace.setSpan(_6.context.active(),z),()=>Y.call(this,...X))}catch(G){throw z.recordException(G),z.setStatus({code:_6.SpanStatusCode.ERROR,message:G.message}),G}finally{z.end()}}};if(typeof Z.handler==="function")Z.handler=$(Z.handler);else if(typeof Z.options==="function"){let Y=Z.options;Z.options=function(X){let W=Y(X);if(typeof W.handler==="function")W.handler=$(W.handler);return W}}else if(typeof Z.options?.handler==="function")Z.options.handler=$(Z.options.handler);return Z}}K90.HapiInstrumentation=W90});var H90=j((_z)=>{Object.defineProperty(_z,"__esModule",{value:!0});_z.AttributeNames=_z.HapiInstrumentation=void 0;var Ld0=G90();Object.defineProperty(_z,"HapiInstrumentation",{enumerable:!0,get:function(){return Ld0.HapiInstrumentation}});var Cd0=hD();Object.defineProperty(_z,"AttributeNames",{enumerable:!0,get:function(){return Cd0.AttributeNames}})});function Rd0(Z){return!!(Z&&typeof Z==="object"&&("error"in Z)&&Z.error)}function kd0(Z){h(Z,{mechanism:{type:"auto.function.hapi",handled:!1}})}async function vD(Z){await Z.register(Nd0);let J=k();if(J)J.on("spanStart",(Q)=>{Ad0(Q)});E9(Z.register,"hapi")}function Ad0(Z){let J=v(Z).data,Q=J["hapi.type"];if(J[g]||!Q)return;Z.setAttributes({[f]:"auto.http.otel.hapi",[g]:`${Q}.hapi`})}var B90,V90="Hapi",F90,Md0=()=>{return{name:V90,setupOnce(){F90()}}},VY,Nd0;var xD=q(()=>{N();X0();Z7();B90=A(H90(),1),F90=S(V90,()=>new B90.HapiInstrumentation),VY=P(Md0);Nd0={name:"SentryHapiErrorPlugin",version:e,register:async function(Z){Z.events.on({name:"request",channels:["error"]},(Q,$)=>{if(x()!==X6()){let Y=Q.route;if(Y.path)x().setTransactionName(`${Y.method.toUpperCase()} ${Y.path}`)}else e0&&O.warn("Isolation scope is still the default isolation scope - skipping setting transactionName");if(Rd0($))kd0($.error)})}}});var V7,FY;var gD=q(()=>{V7={HONO_TYPE:"hono.type",HONO_NAME:"hono.name"},FY={MIDDLEWARE:"middleware",REQUEST_HANDLER:"request_handler"}});var _5,hz,Id0="@sentry/instrumentation-hono",Td0="0.0.1",dD;var U90=q(()=>{N();gD();_5=A(I(),1),hz=A(n(),1);dD=class dD extends hz.InstrumentationBase{constructor(Z={}){super(Id0,Td0,Z)}init(){return[new hz.InstrumentationNodeModuleDefinition("hono",[">=4.0.0 <5"],(Z)=>this._patch(Z))]}_patch(Z){let J=this;class Q extends Z.Hono{constructor(...$){super(...$);J._wrap(this,"get",J._patchHandler()),J._wrap(this,"post",J._patchHandler()),J._wrap(this,"put",J._patchHandler()),J._wrap(this,"delete",J._patchHandler()),J._wrap(this,"options",J._patchHandler()),J._wrap(this,"patch",J._patchHandler()),J._wrap(this,"all",J._patchHandler()),J._wrap(this,"on",J._patchOnHandler()),J._wrap(this,"use",J._patchMiddlewareHandler())}}try{Z.Hono=Q}catch{return{...Z,Hono:Q}}return Z}_patchHandler(){let Z=this;return function(J){return function(...$){if(typeof $[0]==="string"){let Y=$[0];if($.length===1)return J.apply(this,[Y]);let X=$.slice(1);return J.apply(this,[Y,...X.map((W)=>Z._wrapHandler(W))])}return J.apply(this,$.map((Y)=>Z._wrapHandler(Y)))}}}_patchOnHandler(){let Z=this;return function(J){return function(...$){let Y=$.slice(2);return J.apply(this,[...$.slice(0,2),...Y.map((X)=>Z._wrapHandler(X))])}}}_patchMiddlewareHandler(){let Z=this;return function(J){return function(...$){if(typeof $[0]==="string"){let Y=$[0];if($.length===1)return J.apply(this,[Y]);let X=$.slice(1);return J.apply(this,[Y,...X.map((W)=>Z._wrapHandler(W))])}return J.apply(this,$.map((Y)=>Z._wrapHandler(Y)))}}}_wrapHandler(Z){let J=this;return function(Q,$){if(!J.isEnabled())return Z.apply(this,[Q,$]);let Y=Q.req.path,X=J.tracer.startSpan(Y);return _5.context.with(_5.trace.setSpan(_5.context.active(),X),()=>{return J._safeExecute(()=>{let W=Z.apply(this,[Q,$]);if(X1(W))return W.then((K)=>{let z=J._determineHandlerType(K);return X.setAttributes({[V7.HONO_TYPE]:z,[V7.HONO_NAME]:z===FY.REQUEST_HANDLER?Y:Z.name||"anonymous"}),J.getConfig().responseHook?.(X),K});else{let K=J._determineHandlerType(W);return X.setAttributes({[V7.HONO_TYPE]:K,[V7.HONO_NAME]:K===FY.REQUEST_HANDLER?Y:Z.name||"anonymous"}),J.getConfig().responseHook?.(X),W}},()=>X.end(),(W)=>{J._handleError(X,W),X.end()})})}}_safeExecute(Z,J,Q){try{let $=Z();if(X1($))$.then(()=>J(),(Y)=>Q(Y));else J();return $}catch($){throw Q($),$}}_determineHandlerType(Z){return Z===void 0?FY.MIDDLEWARE:FY.REQUEST_HANDLER}_handleError(Z,J){if(J instanceof Error)Z.setStatus({code:_5.SpanStatusCode.ERROR,message:J.message}),Z.recordException(J)}}});function Ed0(Z){let J=v(Z).data,Q=J[V7.HONO_TYPE];if(J[g]||!Q)return;Z.setAttributes({[f]:"auto.http.otel.hono",[g]:`${Q}.hono`});let $=J[V7.HONO_NAME];if(typeof $==="string")Z.updateName($);if(x()===X6()){e0&&O.warn("Isolation scope is default isolation scope - skipping setting transactionName");return}let Y=J[bz.ATTR_HTTP_ROUTE],X=J[bz.ATTR_HTTP_REQUEST_METHOD];if(typeof Y==="string"&&typeof X==="string")x().setTransactionName(`${X} ${Y}`)}function yd0(){return async function(J,Q){let $=TZ(J.req);x().setSDKProcessingMetadata({normalizedRequest:$}),await Q()}}function Sd0(Z){return Z.res.status>=500}function _d0(Z){return async function(Q,$){if(await $(),(Z?.shouldHandleError||Sd0)(Q))Q.res.sentry=h(Q.error,{mechanism:{type:"auto.middleware.hono",handled:!1}})}}function cD(Z,J){Z.use(yd0()),Z.use(_d0(J)),E9(Z.use,"hono")}var bz,q90="Hono",w90,fd0=()=>{return{name:q90,setupOnce(){w90()}}},UY;var mD=q(()=>{N();X0();Z7();gD();U90();bz=A(Y0(),1);w90=S(q90,()=>new dD({responseHook:(Z)=>{Ed0(Z)}})),UY=P(fd0)});var vz=j((j90)=>{Object.defineProperty(j90,"__esModule",{value:!0});j90.KoaLayerType=void 0;var hd0;(function(Z){Z.ROUTER="router",Z.MIDDLEWARE="middleware"})(hd0=j90.KoaLayerType||(j90.KoaLayerType={}))});var L90=j((D90)=>{Object.defineProperty(D90,"__esModule",{value:!0});D90.PACKAGE_NAME=D90.PACKAGE_VERSION=void 0;D90.PACKAGE_VERSION="0.61.0";D90.PACKAGE_NAME="@opentelemetry/instrumentation-koa"});var pD=j((C90)=>{Object.defineProperty(C90,"__esModule",{value:!0});C90.AttributeNames=void 0;var vd0;(function(Z){Z.KOA_TYPE="koa.type",Z.KOA_NAME="koa.name"})(vd0=C90.AttributeNames||(C90.AttributeNames={}))});var k90=j((M90)=>{Object.defineProperty(M90,"__esModule",{value:!0});M90.isLayerIgnored=M90.getMiddlewareMetadata=void 0;var P90=vz(),xz=pD(),xd0=Y0(),gd0=(Z,J,Q,$)=>{if(Q)return{attributes:{[xz.AttributeNames.KOA_NAME]:$?.toString(),[xz.AttributeNames.KOA_TYPE]:P90.KoaLayerType.ROUTER,[xd0.ATTR_HTTP_ROUTE]:$?.toString()},name:Z._matchedRouteName||`router - ${$}`};else return{attributes:{[xz.AttributeNames.KOA_NAME]:J.name??"middleware",[xz.AttributeNames.KOA_TYPE]:P90.KoaLayerType.MIDDLEWARE},name:`middleware - ${J.name}`}};M90.getMiddlewareMetadata=gd0;var dd0=(Z,J)=>{return!!(Array.isArray(J?.ignoreLayersType)&&J?.ignoreLayersType?.includes(Z))};M90.isLayerIgnored=dd0});var I90=j((N90)=>{Object.defineProperty(N90,"__esModule",{value:!0});N90.kLayerPatched=void 0;N90.kLayerPatched=Symbol("koa-layer-patched")});var v90=j((h90)=>{Object.defineProperty(h90,"__esModule",{value:!0});h90.KoaInstrumentation=void 0;var Q8=I(),qY=n(),T90=vz(),E90=L90(),f90=k90(),y90=R0(),S90=I90();class _90 extends qY.InstrumentationBase{constructor(Z={}){super(E90.PACKAGE_NAME,E90.PACKAGE_VERSION,Z)}init(){return new qY.InstrumentationNodeModuleDefinition("koa",[">=2.0.0 <4"],(Z)=>{let J=Z[Symbol.toStringTag]==="Module"?Z.default:Z;if(J==null)return J;if((0,qY.isWrapped)(J.prototype.use))this._unwrap(J.prototype,"use");return this._wrap(J.prototype,"use",this._getKoaUsePatch.bind(this)),Z},(Z)=>{let J=Z[Symbol.toStringTag]==="Module"?Z.default:Z;if((0,qY.isWrapped)(J.prototype.use))this._unwrap(J.prototype,"use")})}_getKoaUsePatch(Z){let J=this;return function($){let Y;if($.router)Y=J._patchRouterDispatch($);else Y=J._patchLayer($,!1);return Z.apply(this,[Y])}}_patchRouterDispatch(Z){Q8.diag.debug("Patching @koa/router dispatch");let Q=Z.router?.stack??[];for(let $ of Q){let{path:Y,stack:X}=$;for(let W=0;W<X.length;W++){let K=X[W];X[W]=this._patchLayer(K,!0,Y)}}return Z}_patchLayer(Z,J,Q){let $=J?T90.KoaLayerType.ROUTER:T90.KoaLayerType.MIDDLEWARE;if(Z[S90.kLayerPatched]===!0||(0,f90.isLayerIgnored)($,this.getConfig()))return Z;if(Z.constructor.name==="GeneratorFunction"||Z.constructor.name==="AsyncGeneratorFunction")return Q8.diag.debug("ignoring generator-based Koa middleware layer"),Z;return Z[S90.kLayerPatched]=!0,Q8.diag.debug("patching Koa middleware layer"),async(Y,X)=>{if(Q8.trace.getSpan(Q8.context.active())===void 0)return Z(Y,X);let K=(0,f90.getMiddlewareMetadata)(Y,Z,J,Q),z=this.tracer.startSpan(K.name,{attributes:K.attributes}),G=(0,y90.getRPCMetadata)(Q8.context.active());if(G?.type===y90.RPCType.HTTP&&Y._matchedRoute)G.route=Y._matchedRoute.toString();let{requestHook:H}=this.getConfig();if(H)(0,qY.safeExecuteInTheMiddle)(()=>H(z,{context:Y,middlewareLayer:Z,layerType:$}),(V)=>{if(V)Q8.diag.error("koa instrumentation: request hook failed",V)},!0);let B=Q8.trace.setSpan(Q8.context.active(),z);return Q8.context.with(B,async()=>{try{return await Z(Y,X)}catch(V){throw z.recordException(V),V}finally{z.end()}})}}}h90.KoaInstrumentation=_90});var x90=j((wY)=>{Object.defineProperty(wY,"__esModule",{value:!0});wY.KoaLayerType=wY.AttributeNames=wY.KoaInstrumentation=void 0;var md0=v90();Object.defineProperty(wY,"KoaInstrumentation",{enumerable:!0,get:function(){return md0.KoaInstrumentation}});var ud0=pD();Object.defineProperty(wY,"AttributeNames",{enumerable:!0,get:function(){return ud0.AttributeNames}});var ld0=vz();Object.defineProperty(wY,"KoaLayerType",{enumerable:!0,get:function(){return ld0.KoaLayerType}})});var g90,d90,c90="Koa",m90,id0=(Z={})=>{return{name:c90,setupOnce(){m90(Z)}}},jY,iD=(Z)=>{Z.use(async(J,Q)=>{try{await Q()}catch($){throw h($,{mechanism:{handled:!1,type:"auto.middleware.koa"}}),$}}),E9(Z.use,"koa")};var oD=q(()=>{N();X0();Z7();g90=A(x90(),1),d90=A(Y0(),1),m90=S(c90,g90.KoaInstrumentation,(Z={})=>{return{ignoreLayersType:Z.ignoreLayersType,requestHook(J,Q){q0(J,"auto.http.otel.koa");let $=v(J).data,Y=$["koa.type"];if(Y)J.setAttribute(g,`${Y}.koa`);let X=$["koa.name"];if(typeof X==="string")J.updateName(X||"< unknown >");if(x()===X6()){e0&&O.warn("Isolation scope is default isolation scope - skipping setting transactionName");return}let W=$[d90.ATTR_HTTP_ROUTE],K=Q.context?.request?.method?.toUpperCase()||"GET";if(W)x().setTransactionName(`${K} ${W}`)}}}),jY=P(id0)});var aD=j((p90)=>{Object.defineProperty(p90,"__esModule",{value:!0});p90.ConnectNames=p90.ConnectTypes=p90.AttributeNames=void 0;var od0;(function(Z){Z.CONNECT_TYPE="connect.type",Z.CONNECT_NAME="connect.name"})(od0=p90.AttributeNames||(p90.AttributeNames={}));var nd0;(function(Z){Z.MIDDLEWARE="middleware",Z.REQUEST_HANDLER="request_handler"})(nd0=p90.ConnectTypes||(p90.ConnectTypes={}));var ad0;(function(Z){Z.MIDDLEWARE="middleware",Z.REQUEST_HANDLER="request handler"})(ad0=p90.ConnectNames||(p90.ConnectNames={}))});var n90=j((i90)=>{Object.defineProperty(i90,"__esModule",{value:!0});i90.PACKAGE_NAME=i90.PACKAGE_VERSION=void 0;i90.PACKAGE_VERSION="0.56.0";i90.PACKAGE_NAME="@opentelemetry/instrumentation-connect"});var r90=j((a90)=>{Object.defineProperty(a90,"__esModule",{value:!0});a90._LAYERS_STORE_PROPERTY=void 0;a90._LAYERS_STORE_PROPERTY=Symbol("opentelemetry.instrumentation-connect.request-route-stack")});var Z80=j((t90)=>{Object.defineProperty(t90,"__esModule",{value:!0});t90.generateRoute=t90.replaceCurrentStackRoute=t90.addNewStackLayer=void 0;var rd0=I(),F7=r90(),td0=(Z)=>{if(Array.isArray(Z[F7._LAYERS_STORE_PROPERTY])===!1)Object.defineProperty(Z,F7._LAYERS_STORE_PROPERTY,{enumerable:!1,value:[]});Z[F7._LAYERS_STORE_PROPERTY].push("/");let J=Z[F7._LAYERS_STORE_PROPERTY].length;return()=>{if(J===Z[F7._LAYERS_STORE_PROPERTY].length)Z[F7._LAYERS_STORE_PROPERTY].pop();else rd0.diag.warn("Connect: Trying to pop the stack multiple time")}};t90.addNewStackLayer=td0;var ed0=(Z,J)=>{if(J)Z[F7._LAYERS_STORE_PROPERTY].splice(-1,1,J)};t90.replaceCurrentStackRoute=ed0;var Zc0=(Z)=>{return Z[F7._LAYERS_STORE_PROPERTY].reduce((J,Q)=>J.replace(/\/+$/,"")+Q)};t90.generateRoute=Zc0});var W80=j((Y80)=>{Object.defineProperty(Y80,"__esModule",{value:!0});Y80.ConnectInstrumentation=Y80.ANONYMOUS_NAME=void 0;var $c0=I(),J80=R0(),iJ=aD(),Q80=n90(),gz=n(),Yc0=Y0(),sD=Z80();Y80.ANONYMOUS_NAME="anonymous";class $80 extends gz.InstrumentationBase{constructor(Z={}){super(Q80.PACKAGE_NAME,Q80.PACKAGE_VERSION,Z)}init(){return[new gz.InstrumentationNodeModuleDefinition("connect",[">=3.0.0 <4"],(Z)=>{return this._patchConstructor(Z)})]}_patchApp(Z){if(!(0,gz.isWrapped)(Z.use))this._wrap(Z,"use",this._patchUse.bind(this));if(!(0,gz.isWrapped)(Z.handle))this._wrap(Z,"handle",this._patchHandle.bind(this))}_patchConstructor(Z){let J=this;return function(...Q){let $=Z.apply(this,Q);return J._patchApp($),$}}_patchNext(Z,J){return function($){let Y=Z.apply(this,[$]);return J(),Y}}_startSpan(Z,J){let Q,$,Y;if(Z)Q=iJ.ConnectTypes.REQUEST_HANDLER,Y=iJ.ConnectNames.REQUEST_HANDLER,$=Z;else Q=iJ.ConnectTypes.MIDDLEWARE,Y=iJ.ConnectNames.MIDDLEWARE,$=J.name||Y80.ANONYMOUS_NAME;let X=`${Y} - ${$}`,W={attributes:{[Yc0.ATTR_HTTP_ROUTE]:Z.length>0?Z:"/",[iJ.AttributeNames.CONNECT_TYPE]:Q,[iJ.AttributeNames.CONNECT_NAME]:$}};return this.tracer.startSpan(X,W)}_patchMiddleware(Z,J){let Q=this,$=J.length===4;function Y(){if(!Q.isEnabled())return J.apply(this,arguments);let[X,W,K]=$?[1,2,3]:[0,1,2],z=arguments[X],G=arguments[W],H=arguments[K];(0,sD.replaceCurrentStackRoute)(z,Z);let B=(0,J80.getRPCMetadata)($c0.context.active());if(Z&&B?.type===J80.RPCType.HTTP)B.route=(0,sD.generateRoute)(z);let V="";if(Z)V=`request handler - ${Z}`;else V=`middleware - ${J.name||Y80.ANONYMOUS_NAME}`;let F=Q._startSpan(Z,J);Q._diag.debug("start span",V);let U=!1;function w(){if(!U)U=!0,Q._diag.debug(`finishing span ${F.name}`),F.end();else Q._diag.debug(`span ${F.name} - already finished`);G.removeListener("close",w)}return G.addListener("close",w),arguments[K]=Q._patchNext(H,w),J.apply(this,arguments)}return Object.defineProperty(Y,"length",{value:J.length,writable:!1,configurable:!0}),Y}_patchUse(Z){let J=this;return function(...Q){let $=Q[Q.length-1],Y=Q[Q.length-2]||"";return Q[Q.length-1]=J._patchMiddleware(Y,$),Z.apply(this,Q)}}_patchHandle(Z){let J=this;return function(){let[Q,$]=[0,2],Y=arguments[Q],X=arguments[$],W=(0,sD.addNewStackLayer)(Y);if(typeof X==="function")arguments[$]=J._patchOut(X,W);return Z.apply(this,arguments)}}_patchOut(Z,J){return function(...$){return J(),Reflect.apply(Z,this,$)}}}Y80.ConnectInstrumentation=$80});var z80=j((h5)=>{Object.defineProperty(h5,"__esModule",{value:!0});h5.ConnectTypes=h5.ConnectNames=h5.AttributeNames=h5.ANONYMOUS_NAME=h5.ConnectInstrumentation=void 0;var K80=W80();Object.defineProperty(h5,"ConnectInstrumentation",{enumerable:!0,get:function(){return K80.ConnectInstrumentation}});Object.defineProperty(h5,"ANONYMOUS_NAME",{enumerable:!0,get:function(){return K80.ANONYMOUS_NAME}});var tD=aD();Object.defineProperty(h5,"AttributeNames",{enumerable:!0,get:function(){return tD.AttributeNames}});Object.defineProperty(h5,"ConnectNames",{enumerable:!0,get:function(){return tD.ConnectNames}});Object.defineProperty(h5,"ConnectTypes",{enumerable:!0,get:function(){return tD.ConnectTypes}})});function Kc0(Z,J,Q,$){h(Z,{mechanism:{handled:!1,type:"auto.middleware.connect"}}),$(Z)}function zc0(Z){let J=v(Z).data,Q=J["connect.type"];if(J[g]||!Q)return;Z.setAttributes({[f]:"auto.http.otel.connect",[g]:`${Q}.connect`});let $=J["connect.name"];if(typeof $==="string")Z.updateName($)}var G80,H80="Connect",B80,Wc0=()=>{return{name:H80,setupOnce(){B80()}}},DY,eD=(Z)=>{Z.use(Kc0);let J=k();if(J)J.on("spanStart",(Q)=>{zc0(Q)});E9(Z.use,"connect")};var Z2=q(()=>{N();X0();G80=A(z80(),1),B80=S(H80,()=>new G80.ConnectInstrumentation),DY=P(Wc0)});var U80=j((V80)=>{Object.defineProperty(V80,"__esModule",{value:!0});V80.PACKAGE_NAME=V80.PACKAGE_VERSION=void 0;V80.PACKAGE_VERSION="0.57.0";V80.PACKAGE_NAME="@opentelemetry/instrumentation-knex"});var j80=j((q80)=>{Object.defineProperty(q80,"__esModule",{value:!0});q80.SUPPORTED_VERSIONS=q80.MODULE_NAME=void 0;q80.MODULE_NAME="knex";q80.SUPPORTED_VERSIONS=[">=0.22.0 <4",">=0.10.0 <0.18.0",">=0.19.0 <0.22.0",">=0.18.0 <0.19.0"]});var J2=j((D80)=>{Object.defineProperty(D80,"__esModule",{value:!0});D80.DB_SYSTEM_NAME_VALUE_SQLITE=D80.ATTR_NET_TRANSPORT=D80.ATTR_NET_PEER_PORT=D80.ATTR_NET_PEER_NAME=D80.ATTR_DB_USER=D80.ATTR_DB_SYSTEM=D80.ATTR_DB_STATEMENT=D80.ATTR_DB_SQL_TABLE=D80.ATTR_DB_OPERATION=D80.ATTR_DB_NAME=void 0;D80.ATTR_DB_NAME="db.name";D80.ATTR_DB_OPERATION="db.operation";D80.ATTR_DB_SQL_TABLE="db.sql.table";D80.ATTR_DB_STATEMENT="db.statement";D80.ATTR_DB_SYSTEM="db.system";D80.ATTR_DB_USER="db.user";D80.ATTR_NET_PEER_NAME="net.peer.name";D80.ATTR_NET_PEER_PORT="net.peer.port";D80.ATTR_NET_TRANSPORT="net.transport";D80.DB_SYSTEM_NAME_VALUE_SQLITE="sqlite"});var C80=j((L80)=>{Object.defineProperty(L80,"__esModule",{value:!0});L80.extractTableName=L80.limitLength=L80.getName=L80.mapSystem=L80.otelExceptionFromKnexError=L80.getFormatter=void 0;var Lc0=Y0(),Cc0=J2(),Pc0=(Z)=>{if(Z){if(Z.client){if(Z.client._formatQuery)return Z.client._formatQuery.bind(Z.client);else if(Z.client.SqlString)return Z.client.SqlString.format.bind(Z.client.SqlString)}if(Z.builder)return Z.builder.toString.bind(Z.builder)}return()=>"<noop formatter>"};L80.getFormatter=Pc0;function Mc0(Z,J){if(!(Z&&Z instanceof Error))return Z;return{message:J,code:Z.code,stack:Z.stack,name:Z.name}}L80.otelExceptionFromKnexError=Mc0;var Rc0=new Map([["sqlite3",Cc0.DB_SYSTEM_NAME_VALUE_SQLITE],["pg",Lc0.DB_SYSTEM_NAME_VALUE_POSTGRESQL]]),kc0=(Z)=>{return Rc0.get(Z)||Z};L80.mapSystem=kc0;var Nc0=(Z,J,Q)=>{if(J){if(Q)return`${J} ${Z}.${Q}`;return`${J} ${Z}`}return Z};L80.getName=Nc0;var Ac0=(Z,J)=>{if(typeof Z==="string"&&typeof J==="number"&&0<J&&J<Z.length)return Z.substring(0,J)+"..";return Z};L80.limitLength=Ac0;var Ic0=(Z)=>{let J=Z?._single?.table;if(typeof J==="object")return L80.extractTableName(J);return J};L80.extractTableName=Ic0});var I80=j((N80)=>{Object.defineProperty(N80,"__esModule",{value:!0});N80.KnexInstrumentation=void 0;var JZ=I(),P80=U80(),dz=j80(),$8=n(),b5=C80(),v5=Y0(),QZ=J2(),M80=Symbol("opentelemetry.instrumentation-knex.context"),R80={maxQueryLength:1022,requireParentSpan:!1};class k80 extends $8.InstrumentationBase{_semconvStability;constructor(Z={}){super(P80.PACKAGE_NAME,P80.PACKAGE_VERSION,{...R80,...Z});this._semconvStability=(0,$8.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}setConfig(Z={}){super.setConfig({...R80,...Z})}init(){let Z=new $8.InstrumentationNodeModuleDefinition(dz.MODULE_NAME,dz.SUPPORTED_VERSIONS);return Z.files.push(this.getClientNodeModuleFileInstrumentation("src"),this.getClientNodeModuleFileInstrumentation("lib"),this.getRunnerNodeModuleFileInstrumentation("src"),this.getRunnerNodeModuleFileInstrumentation("lib"),this.getRunnerNodeModuleFileInstrumentation("lib/execution")),Z}getRunnerNodeModuleFileInstrumentation(Z){return new $8.InstrumentationNodeModuleFile(`knex/${Z}/runner.js`,dz.SUPPORTED_VERSIONS,(J,Q)=>{return this.ensureWrapped(J.prototype,"query",this.createQueryWrapper(Q)),J},(J,Q)=>{return this._unwrap(J.prototype,"query"),J})}getClientNodeModuleFileInstrumentation(Z){return new $8.InstrumentationNodeModuleFile(`knex/${Z}/client.js`,dz.SUPPORTED_VERSIONS,(J)=>{return this.ensureWrapped(J.prototype,"queryBuilder",this.storeContext.bind(this)),this.ensureWrapped(J.prototype,"schemaBuilder",this.storeContext.bind(this)),this.ensureWrapped(J.prototype,"raw",this.storeContext.bind(this)),J},(J)=>{return this._unwrap(J.prototype,"queryBuilder"),this._unwrap(J.prototype,"schemaBuilder"),this._unwrap(J.prototype,"raw"),J})}createQueryWrapper(Z){let J=this;return function($){return function(X){let W=this.client.config,K=b5.extractTableName(this.builder),z=X?.method,G=W?.connection?.filename||W?.connection?.database,{maxQueryLength:H}=J.getConfig(),B={"knex.version":Z},V=W?.connection?.filename===":memory:"?"inproc":void 0;if(J._semconvStability&$8.SemconvStability.OLD)Object.assign(B,{[QZ.ATTR_DB_SYSTEM]:b5.mapSystem(this.client.driverName),[QZ.ATTR_DB_SQL_TABLE]:K,[QZ.ATTR_DB_OPERATION]:z,[QZ.ATTR_DB_USER]:W?.connection?.user,[QZ.ATTR_DB_NAME]:G,[QZ.ATTR_NET_PEER_NAME]:W?.connection?.host,[QZ.ATTR_NET_PEER_PORT]:W?.connection?.port,[QZ.ATTR_NET_TRANSPORT]:V});if(J._semconvStability&$8.SemconvStability.STABLE)Object.assign(B,{[v5.ATTR_DB_SYSTEM_NAME]:b5.mapSystem(this.client.driverName),[v5.ATTR_DB_COLLECTION_NAME]:K,[v5.ATTR_DB_OPERATION_NAME]:z,[v5.ATTR_DB_NAMESPACE]:G,[v5.ATTR_SERVER_ADDRESS]:W?.connection?.host,[v5.ATTR_SERVER_PORT]:W?.connection?.port});if(H){let C=b5.limitLength(X?.sql,H);if(J._semconvStability&$8.SemconvStability.STABLE)B[v5.ATTR_DB_QUERY_TEXT]=C;if(J._semconvStability&$8.SemconvStability.OLD)B[QZ.ATTR_DB_STATEMENT]=C}let F=this.builder[M80]||JZ.context.active(),U=JZ.trace.getSpan(F),w=U&&JZ.trace.isSpanContextValid(U.spanContext());if(J._config.requireParentSpan&&!w)return $.bind(this)(...arguments);let D=J.tracer.startSpan(b5.getName(G,z,K),{kind:JZ.SpanKind.CLIENT,attributes:B},F),L=JZ.trace.setSpan(JZ.context.active(),D);return JZ.context.with(L,$,this,...arguments).then((C)=>{return D.end(),C}).catch((C)=>{let T=b5.getFormatter(this)(X.sql,X.bindings||[]),_=C.message.replace(T+" - ",""),m=b5.otelExceptionFromKnexError(C,_);throw D.recordException(m),D.setStatus({code:JZ.SpanStatusCode.ERROR,message:_}),D.end(),C})}}}storeContext(Z){return function(){let Q=Z.apply(this,arguments);return Object.defineProperty(Q,M80,{value:JZ.context.active()}),Q}}ensureWrapped(Z,J,Q){if((0,$8.isWrapped)(Z[J]))this._unwrap(Z,J);this._wrap(Z,J,Q)}}N80.KnexInstrumentation=k80});var T80=j(($2)=>{Object.defineProperty($2,"__esModule",{value:!0});$2.KnexInstrumentation=void 0;var _c0=I80();Object.defineProperty($2,"KnexInstrumentation",{enumerable:!0,get:function(){return _c0.KnexInstrumentation}})});var E80,f80="Knex",bc0,vc0=()=>{let Z;return{name:f80,setupOnce(){let J=bc0();Z=u8(J)},setup(J){Z?.(()=>J.on("spanStart",(Q)=>{let{data:$}=v(Q);if("knex.version"in $)Q.setAttribute(f,"auto.db.otel.knex")}))}}},Y2;var y80=q(()=>{N();X0();E80=A(T80(),1),bc0=S(f80,()=>new E80.KnexInstrumentation({requireParentSpan:!0})),Y2=P(vc0)});var h80=j((S80)=>{Object.defineProperty(S80,"__esModule",{value:!0});S80.DB_SYSTEM_VALUE_MSSQL=S80.ATTR_NET_PEER_PORT=S80.ATTR_NET_PEER_NAME=S80.ATTR_DB_USER=S80.ATTR_DB_SYSTEM=S80.ATTR_DB_STATEMENT=S80.ATTR_DB_SQL_TABLE=S80.ATTR_DB_NAME=void 0;S80.ATTR_DB_NAME="db.name";S80.ATTR_DB_SQL_TABLE="db.sql.table";S80.ATTR_DB_STATEMENT="db.statement";S80.ATTR_DB_SYSTEM="db.system";S80.ATTR_DB_USER="db.user";S80.ATTR_NET_PEER_NAME="net.peer.name";S80.ATTR_NET_PEER_PORT="net.peer.port";S80.DB_SYSTEM_VALUE_MSSQL="mssql"});var x80=j((b80)=>{Object.defineProperty(b80,"__esModule",{value:!0});b80.once=b80.getSpanName=void 0;function pc0(Z,J,Q,$){if(Z==="execBulkLoad"&&$&&J)return`${Z} ${$} ${J}`;if(Z==="callProcedure"){if(J)return`${Z} ${Q} ${J}`;return`${Z} ${Q}`}if(J)return`${Z} ${J}`;return`${Z}`}b80.getSpanName=pc0;var ic0=(Z)=>{let J=!1;return(...Q)=>{if(J)return;return J=!0,Z(...Q)}};b80.once=ic0});var c80=j((g80)=>{Object.defineProperty(g80,"__esModule",{value:!0});g80.PACKAGE_NAME=g80.PACKAGE_VERSION=void 0;g80.PACKAGE_VERSION="0.32.0";g80.PACKAGE_NAME="@opentelemetry/instrumentation-tedious"});var n80=j((i80)=>{Object.defineProperty(i80,"__esModule",{value:!0});i80.TediousInstrumentation=i80.INJECTED_CTX=void 0;var oJ=I(),ac0=E("events"),Y8=n(),x5=Y0(),U7=h80(),m80=x80(),u80=c80(),p80=Symbol("opentelemetry.instrumentation-tedious.current-database");i80.INJECTED_CTX=Symbol("opentelemetry.instrumentation-tedious.context-info-injected");var l80=["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"];function cz(Z){Object.defineProperty(this,p80,{value:Z,writable:!0})}class W2 extends Y8.InstrumentationBase{static COMPONENT="tedious";_netSemconvStability;_dbSemconvStability;constructor(Z={}){super(u80.PACKAGE_NAME,u80.PACKAGE_VERSION,Z);this._setSemconvStabilityFromEnv()}_setSemconvStabilityFromEnv(){this._netSemconvStability=(0,Y8.semconvStabilityFromStr)("http",process.env.OTEL_SEMCONV_STABILITY_OPT_IN),this._dbSemconvStability=(0,Y8.semconvStabilityFromStr)("database",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}init(){return[new Y8.InstrumentationNodeModuleDefinition(W2.COMPONENT,[">=1.11.0 <20"],(Z)=>{let J=Z.Connection.prototype;for(let Q of l80){if((0,Y8.isWrapped)(J[Q]))this._unwrap(J,Q);this._wrap(J,Q,this._patchQuery(Q,Z))}if((0,Y8.isWrapped)(J.connect))this._unwrap(J,"connect");return this._wrap(J,"connect",this._patchConnect),Z},(Z)=>{if(Z===void 0)return;let J=Z.Connection.prototype;for(let Q of l80)this._unwrap(J,Q);this._unwrap(J,"connect")})]}_patchConnect(Z){return function(){return cz.call(this,this.config?.options?.database),this.removeListener("databaseChange",cz),this.on("databaseChange",cz),this.once("end",()=>{this.removeListener("databaseChange",cz)}),Z.apply(this,arguments)}}_buildTraceparent(Z){let J=Z.spanContext();return`00-${J.traceId}-${J.spanId}-0${Number(J.traceFlags||oJ.TraceFlags.NONE).toString(16)}`}_injectContextInfo(Z,J,Q){return new Promise(($)=>{try{let X=new J.Request("set context_info @opentelemetry_traceparent",(K)=>{$()});Object.defineProperty(X,i80.INJECTED_CTX,{value:!0});let W=Buffer.from(Q,"utf8");X.addParameter("opentelemetry_traceparent",J.TYPES.VarBinary,W,{length:W.length}),Z.execSql(X)}catch{$()}})}_shouldInjectFor(Z){return Z==="execSql"||Z==="execSqlBatch"||Z==="callProcedure"||Z==="execute"}_patchQuery(Z,J){return(Q)=>{let $=this;function Y(X){if(X?.[i80.INJECTED_CTX])return Q.apply(this,arguments);if(!(X instanceof ac0.EventEmitter))return $._diag.warn(`Unexpected invocation of patched ${Z} method. Span not recorded`),Q.apply(this,arguments);let W=0,K=0,z=()=>K++,G=()=>W++,H=this[p80],B=((R)=>{if(R.sqlTextOrProcedure==="sp_prepare"&&R.parametersByName?.stmt?.value)return R.parametersByName.stmt.value;return R.sqlTextOrProcedure})(X),V={};if($._dbSemconvStability&Y8.SemconvStability.OLD)V[U7.ATTR_DB_SYSTEM]=U7.DB_SYSTEM_VALUE_MSSQL,V[U7.ATTR_DB_NAME]=H,V[U7.ATTR_DB_USER]=this.config?.userName??this.config?.authentication?.options?.userName,V[U7.ATTR_DB_STATEMENT]=B,V[U7.ATTR_DB_SQL_TABLE]=X.table;if($._dbSemconvStability&Y8.SemconvStability.STABLE)V[x5.ATTR_DB_NAMESPACE]=H,V[x5.ATTR_DB_SYSTEM_NAME]=x5.DB_SYSTEM_NAME_VALUE_MICROSOFT_SQL_SERVER,V[x5.ATTR_DB_QUERY_TEXT]=B,V[x5.ATTR_DB_COLLECTION_NAME]=X.table;if($._netSemconvStability&Y8.SemconvStability.OLD)V[U7.ATTR_NET_PEER_NAME]=this.config?.server,V[U7.ATTR_NET_PEER_PORT]=this.config?.options?.port;if($._netSemconvStability&Y8.SemconvStability.STABLE)V[x5.ATTR_SERVER_ADDRESS]=this.config?.server,V[x5.ATTR_SERVER_PORT]=this.config?.options?.port;let F=$.tracer.startSpan((0,m80.getSpanName)(Z,H,B,X.table),{kind:oJ.SpanKind.CLIENT,attributes:V}),U=(0,m80.once)((R)=>{if(X.removeListener("done",z),X.removeListener("doneInProc",z),X.removeListener("doneProc",G),X.removeListener("error",U),this.removeListener("end",U),F.setAttribute("tedious.procedure_count",W),F.setAttribute("tedious.statement_count",K),R)F.setStatus({code:oJ.SpanStatusCode.ERROR,message:R.message});F.end()});if(X.on("done",z),X.on("doneInProc",z),X.on("doneProc",G),X.once("error",U),this.on("end",U),typeof X.callback==="function")$._wrap(X,"callback",$._patchCallbackQuery(U));else $._diag.error("Expected request.callback to be a function");let w=()=>{return oJ.context.with(oJ.trace.setSpan(oJ.context.active(),F),Q,this,...arguments)};if(!($.getConfig().enableTraceContextPropagation&&$._shouldInjectFor(Z)))return w();let C=$._buildTraceparent(F);$._injectContextInfo(this,J,C).finally(w)}return Object.defineProperty(Y,"length",{value:Q.length,writable:!1}),Y}}_patchCallbackQuery(Z){return(J)=>{return function(Q,$,Y){return Z(Q),J.apply(this,arguments)}}}}i80.TediousInstrumentation=W2});var a80=j((K2)=>{Object.defineProperty(K2,"__esModule",{value:!0});K2.TediousInstrumentation=void 0;var sc0=n80();Object.defineProperty(K2,"TediousInstrumentation",{enumerable:!0,get:function(){return sc0.TediousInstrumentation}})});var s80,tc0,r80="Tedious",t80,ec0=()=>{let Z;return{name:r80,setupOnce(){let J=t80();Z=u8(J)},setup(J){Z?.(()=>J.on("spanStart",(Q)=>{let{description:$,data:Y}=v(Q);if(!$||Y["db.system"]!=="mssql")return;let X=$.split(" ")[0]||"";if(tc0.has(X))Q.setAttribute(f,"auto.db.otel.tedious")}))}}},OY;var z2=q(()=>{N();X0();s80=A(a80(),1),tc0=new Set(["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"]),t80=S(r80,()=>new s80.TediousInstrumentation({})),OY=P(ec0)});var JZ0=j((e80)=>{Object.defineProperty(e80,"__esModule",{value:!0});e80.PACKAGE_NAME=e80.PACKAGE_VERSION=void 0;e80.PACKAGE_VERSION="0.56.0";e80.PACKAGE_NAME="@opentelemetry/instrumentation-generic-pool"});var WZ0=j((YZ0)=>{Object.defineProperty(YZ0,"__esModule",{value:!0});YZ0.GenericPoolInstrumentation=void 0;var nJ=I(),g5=n(),QZ0=JZ0(),G2="generic-pool";class $Z0 extends g5.InstrumentationBase{_isDisabled=!1;constructor(Z={}){super(QZ0.PACKAGE_NAME,QZ0.PACKAGE_VERSION,Z)}init(){return[new g5.InstrumentationNodeModuleDefinition(G2,[">=3.0.0 <4"],(Z)=>{let J=Z.Pool;if((0,g5.isWrapped)(J.prototype.acquire))this._unwrap(J.prototype,"acquire");return this._wrap(J.prototype,"acquire",this._acquirePatcher.bind(this)),Z},(Z)=>{let J=Z.Pool;return this._unwrap(J.prototype,"acquire"),Z}),new g5.InstrumentationNodeModuleDefinition(G2,[">=2.4.0 <3"],(Z)=>{let J=Z.Pool;if((0,g5.isWrapped)(J.prototype.acquire))this._unwrap(J.prototype,"acquire");return this._wrap(J.prototype,"acquire",this._acquireWithCallbacksPatcher.bind(this)),Z},(Z)=>{let J=Z.Pool;return this._unwrap(J.prototype,"acquire"),Z}),new g5.InstrumentationNodeModuleDefinition(G2,[">=2.0.0 <2.4"],(Z)=>{if(this._isDisabled=!1,(0,g5.isWrapped)(Z.Pool))this._unwrap(Z,"Pool");return this._wrap(Z,"Pool",this._poolWrapper.bind(this)),Z},(Z)=>{return this._isDisabled=!0,Z})]}_acquirePatcher(Z){let J=this;return function(...$){let Y=nJ.context.active(),X=J.tracer.startSpan("generic-pool.acquire",{},Y);return nJ.context.with(nJ.trace.setSpan(Y,X),()=>{return Z.call(this,...$).then((W)=>{return X.end(),W},(W)=>{throw X.recordException(W),X.end(),W})})}}_poolWrapper(Z){let J=this;return function(){let $=Z.apply(this,arguments);return J._wrap($,"acquire",J._acquireWithCallbacksPatcher.bind(J)),$}}_acquireWithCallbacksPatcher(Z){let J=this;return function($,Y){if(J._isDisabled)return Z.call(this,$,Y);let X=nJ.context.active(),W=J.tracer.startSpan("generic-pool.acquire",{},X);return nJ.context.with(nJ.trace.setSpan(X,W),()=>{Z.call(this,(K,z)=>{if(W.end(),$)return $(K,z)},Y)})}}}YZ0.GenericPoolInstrumentation=$Z0});var KZ0=j((H2)=>{Object.defineProperty(H2,"__esModule",{value:!0});H2.GenericPoolInstrumentation=void 0;var Jm0=WZ0();Object.defineProperty(H2,"GenericPoolInstrumentation",{enumerable:!0,get:function(){return Jm0.GenericPoolInstrumentation}})});var zZ0,GZ0="GenericPool",HZ0,$m0=()=>{let Z;return{name:GZ0,setupOnce(){let J=HZ0();Z=u8(J)},setup(J){Z?.(()=>J.on("spanStart",(Q)=>{let Y=v(Q).description;if(Y==="generic-pool.aquire"||Y==="generic-pool.acquire")Q.setAttribute(f,"auto.db.otel.generic_pool")}))}}},LY;var B2=q(()=>{N();X0();zZ0=A(KZ0(),1),HZ0=S(GZ0,()=>new zZ0.GenericPoolInstrumentation({})),LY=P($m0)});var FZ0=j((BZ0)=>{Object.defineProperty(BZ0,"__esModule",{value:!0});BZ0.PACKAGE_NAME=BZ0.PACKAGE_VERSION=void 0;BZ0.PACKAGE_VERSION="0.30.0";BZ0.PACKAGE_NAME="@opentelemetry/instrumentation-dataloader"});var OZ0=j((jZ0)=>{Object.defineProperty(jZ0,"__esModule",{value:!0});jZ0.DataloaderInstrumentation=void 0;var $Z=n(),O0=I(),UZ0=FZ0(),V2="dataloader";function qZ0(Z){return Z[Symbol.toStringTag]==="Module"?Z.default:Z}class wZ0 extends $Z.InstrumentationBase{constructor(Z={}){super(UZ0.PACKAGE_NAME,UZ0.PACKAGE_VERSION,Z)}init(){return[new $Z.InstrumentationNodeModuleDefinition(V2,[">=2.0.0 <3"],(Z)=>{let J=qZ0(Z);return this._patchLoad(J.prototype),this._patchLoadMany(J.prototype),this._patchPrime(J.prototype),this._patchClear(J.prototype),this._patchClearAll(J.prototype),this._getPatchedConstructor(J)},(Z)=>{let J=qZ0(Z);["load","loadMany","prime","clear","clearAll"].forEach((Q)=>{if((0,$Z.isWrapped)(J.prototype[Q]))this._unwrap(J.prototype,Q)})})]}shouldCreateSpans(){let Z=this.getConfig();return O0.trace.getSpan(O0.context.active())!==void 0||!Z.requireParentSpan}getSpanName(Z,J){let Q=Z.name;if(Q===void 0||Q===null)return`${V2}.${J}`;return`${V2}.${J} ${Q}`}_wrapBatchLoadFn(Z){let J=this;return function(...$){if(!J.isEnabled()||!J.shouldCreateSpans())return Z.call(this,...$);let Y=O0.context.active(),X=J.tracer.startSpan(J.getSpanName(this,"batch"),{links:this._batch?.spanLinks},Y);return O0.context.with(O0.trace.setSpan(Y,X),()=>{return Z.apply(this,$).then((W)=>{return X.end(),W}).catch((W)=>{throw X.recordException(W),X.setStatus({code:O0.SpanStatusCode.ERROR,message:W.message}),X.end(),W})})}}_getPatchedConstructor(Z){let J=this,Q=Z.prototype;if(!J.isEnabled())return Z;function $(...Y){if(typeof Y[0]==="function"){if((0,$Z.isWrapped)(Y[0]))J._unwrap(Y,0);Y[0]=J._wrapBatchLoadFn(Y[0])}return Z.apply(this,Y)}return $.prototype=Q,$}_patchLoad(Z){if((0,$Z.isWrapped)(Z.load))this._unwrap(Z,"load");this._wrap(Z,"load",this._getPatchedLoad.bind(this))}_getPatchedLoad(Z){let J=this;return function(...$){if(!J.shouldCreateSpans())return Z.call(this,...$);let Y=O0.context.active(),X=J.tracer.startSpan(J.getSpanName(this,"load"),{kind:O0.SpanKind.CLIENT},Y);return O0.context.with(O0.trace.setSpan(Y,X),()=>{let W=Z.call(this,...$).then((z)=>{return X.end(),z}).catch((z)=>{throw X.recordException(z),X.setStatus({code:O0.SpanStatusCode.ERROR,message:z.message}),X.end(),z}),K=this;if(K._batch){if(!K._batch.spanLinks)K._batch.spanLinks=[];K._batch.spanLinks.push({context:X.spanContext()})}return W})}}_patchLoadMany(Z){if((0,$Z.isWrapped)(Z.loadMany))this._unwrap(Z,"loadMany");this._wrap(Z,"loadMany",this._getPatchedLoadMany.bind(this))}_getPatchedLoadMany(Z){let J=this;return function(...$){if(!J.shouldCreateSpans())return Z.call(this,...$);let Y=O0.context.active(),X=J.tracer.startSpan(J.getSpanName(this,"loadMany"),{kind:O0.SpanKind.CLIENT},Y);return O0.context.with(O0.trace.setSpan(Y,X),()=>{return Z.call(this,...$).then((W)=>{return X.end(),W})})}}_patchPrime(Z){if((0,$Z.isWrapped)(Z.prime))this._unwrap(Z,"prime");this._wrap(Z,"prime",this._getPatchedPrime.bind(this))}_getPatchedPrime(Z){let J=this;return function(...$){if(!J.shouldCreateSpans())return Z.call(this,...$);let Y=O0.context.active(),X=J.tracer.startSpan(J.getSpanName(this,"prime"),{kind:O0.SpanKind.CLIENT},Y),W=O0.context.with(O0.trace.setSpan(Y,X),()=>{return Z.call(this,...$)});return X.end(),W}}_patchClear(Z){if((0,$Z.isWrapped)(Z.clear))this._unwrap(Z,"clear");this._wrap(Z,"clear",this._getPatchedClear.bind(this))}_getPatchedClear(Z){let J=this;return function(...$){if(!J.shouldCreateSpans())return Z.call(this,...$);let Y=O0.context.active(),X=J.tracer.startSpan(J.getSpanName(this,"clear"),{kind:O0.SpanKind.CLIENT},Y),W=O0.context.with(O0.trace.setSpan(Y,X),()=>{return Z.call(this,...$)});return X.end(),W}}_patchClearAll(Z){if((0,$Z.isWrapped)(Z.clearAll))this._unwrap(Z,"clearAll");this._wrap(Z,"clearAll",this._getPatchedClearAll.bind(this))}_getPatchedClearAll(Z){let J=this;return function(...$){if(!J.shouldCreateSpans())return Z.call(this,...$);let Y=O0.context.active(),X=J.tracer.startSpan(J.getSpanName(this,"clearAll"),{kind:O0.SpanKind.CLIENT},Y),W=O0.context.with(O0.trace.setSpan(Y,X),()=>{return Z.call(this,...$)});return X.end(),W}}}jZ0.DataloaderInstrumentation=wZ0});var LZ0=j((F2)=>{Object.defineProperty(F2,"__esModule",{value:!0});F2.DataloaderInstrumentation=void 0;var Xm0=OZ0();Object.defineProperty(F2,"DataloaderInstrumentation",{enumerable:!0,get:function(){return Xm0.DataloaderInstrumentation}})});var CZ0,PZ0="Dataloader",Km0,zm0=()=>{let Z;return{name:PZ0,setupOnce(){let J=Km0();Z=u8(J)},setup(J){Z?.(()=>{J.on("spanStart",(Q)=>{let $=v(Q);if($.description?.startsWith("dataloader"))Q.setAttribute(f,"auto.db.otel.dataloader");if($.description==="dataloader.load"||$.description==="dataloader.loadMany"||$.description==="dataloader.batch")Q.setAttribute(g,"cache.get")})})}}},U2;var MZ0=q(()=>{N();X0();CZ0=A(LZ0(),1),Km0=S(PZ0,()=>new CZ0.DataloaderInstrumentation({requireParentSpan:!0})),U2=P(zm0)});var q2=j((RZ0)=>{Object.defineProperty(RZ0,"__esModule",{value:!0});RZ0.ATTR_NET_PEER_PORT=RZ0.ATTR_NET_PEER_NAME=RZ0.ATTR_MESSAGING_SYSTEM=RZ0.ATTR_MESSAGING_OPERATION=void 0;RZ0.ATTR_MESSAGING_OPERATION="messaging.operation";RZ0.ATTR_MESSAGING_SYSTEM="messaging.system";RZ0.ATTR_NET_PEER_NAME="net.peer.name";RZ0.ATTR_NET_PEER_PORT="net.peer.port"});var w2=j((NZ0)=>{Object.defineProperty(NZ0,"__esModule",{value:!0});NZ0.ATTR_MESSAGING_CONVERSATION_ID=NZ0.OLD_ATTR_MESSAGING_MESSAGE_ID=NZ0.MESSAGING_DESTINATION_KIND_VALUE_TOPIC=NZ0.ATTR_MESSAGING_URL=NZ0.ATTR_MESSAGING_PROTOCOL_VERSION=NZ0.ATTR_MESSAGING_PROTOCOL=NZ0.MESSAGING_OPERATION_VALUE_PROCESS=NZ0.ATTR_MESSAGING_RABBITMQ_ROUTING_KEY=NZ0.ATTR_MESSAGING_DESTINATION_KIND=NZ0.ATTR_MESSAGING_DESTINATION=void 0;NZ0.ATTR_MESSAGING_DESTINATION="messaging.destination";NZ0.ATTR_MESSAGING_DESTINATION_KIND="messaging.destination_kind";NZ0.ATTR_MESSAGING_RABBITMQ_ROUTING_KEY="messaging.rabbitmq.routing_key";NZ0.MESSAGING_OPERATION_VALUE_PROCESS="process";NZ0.ATTR_MESSAGING_PROTOCOL="messaging.protocol";NZ0.ATTR_MESSAGING_PROTOCOL_VERSION="messaging.protocol_version";NZ0.ATTR_MESSAGING_URL="messaging.url";NZ0.MESSAGING_DESTINATION_KIND_VALUE_TOPIC="topic";NZ0.OLD_ATTR_MESSAGING_MESSAGE_ID="messaging.message_id";NZ0.ATTR_MESSAGING_CONVERSATION_ID="messaging.conversation_id"});var j2=j((TZ0)=>{Object.defineProperty(TZ0,"__esModule",{value:!0});TZ0.DEFAULT_CONFIG=TZ0.EndOperation=void 0;var Cm0;(function(Z){Z.AutoAck="auto ack",Z.Ack="ack",Z.AckAll="ackAll",Z.Reject="reject",Z.Nack="nack",Z.NackAll="nackAll",Z.ChannelClosed="channel closed",Z.ChannelError="channel error",Z.InstrumentationTimeout="instrumentation timeout"})(Cm0=TZ0.EndOperation||(TZ0.EndOperation={}));TZ0.DEFAULT_CONFIG={consumeTimeoutMs:60000,useLinksForConsume:!1}});var bZ0=j((_Z0)=>{Object.defineProperty(_Z0,"__esModule",{value:!0});_Z0.isConfirmChannelTracing=_Z0.unmarkConfirmChannelTracing=_Z0.markConfirmChannelTracing=_Z0.getConnectionAttributesFromUrl=_Z0.getConnectionAttributesFromServer=_Z0.normalizeExchange=_Z0.CONNECTION_ATTRIBUTES=_Z0.CHANNEL_CONSUME_TIMEOUT_TIMER=_Z0.CHANNEL_SPANS_NOT_ENDED=_Z0.MESSAGE_STORED_SPAN=void 0;var D2=I(),q7=n(),mz=Y0(),CY=q2(),uz=w2();_Z0.MESSAGE_STORED_SPAN=Symbol("opentelemetry.amqplib.message.stored-span");_Z0.CHANNEL_SPANS_NOT_ENDED=Symbol("opentelemetry.amqplib.channel.spans-not-ended");_Z0.CHANNEL_CONSUME_TIMEOUT_TIMER=Symbol("opentelemetry.amqplib.channel.consumer-timeout-timer");_Z0.CONNECTION_ATTRIBUTES=Symbol("opentelemetry.amqplib.connection.attributes");var O2=(0,D2.createContextKey)("opentelemetry.amqplib.channel.is-confirm-channel"),Pm0=(Z)=>Z!==""?Z:"<default>";_Z0.normalizeExchange=Pm0;var Mm0=(Z)=>{return Z.replace(/:[^:@/]*@/,":***@")},fZ0=(Z,J)=>{return Z||(J==="AMQP"?5672:5671)},yZ0=(Z)=>{let J=Z||"amqp";return(J.endsWith(":")?J.substring(0,J.length-1):J).toUpperCase()},SZ0=(Z)=>{return Z||"localhost"},X8=(Z,J,Q,$)=>{if(Q)return{[J]:Q};else return D2.diag.error(`amqplib instrumentation: could not extract connection attribute ${$} from user supplied url`,{url:Z}),{}},Rm0=(Z)=>{let J=Z.serverProperties.product?.toLowerCase?.();if(J)return{[CY.ATTR_MESSAGING_SYSTEM]:J};else return{}};_Z0.getConnectionAttributesFromServer=Rm0;var km0=(Z,J)=>{let Q={[uz.ATTR_MESSAGING_PROTOCOL_VERSION]:"0.9.1"};if(Z=Z||"amqp://localhost",typeof Z==="object"){let $=Z,Y=yZ0($?.protocol);Object.assign(Q,{...X8(Z,uz.ATTR_MESSAGING_PROTOCOL,Y,"protocol")});let X=SZ0($?.hostname);if(J&q7.SemconvStability.OLD)Object.assign(Q,{...X8(Z,CY.ATTR_NET_PEER_NAME,X,"hostname")});if(J&q7.SemconvStability.STABLE)Object.assign(Q,{...X8(Z,mz.ATTR_SERVER_ADDRESS,X,"hostname")});let W=fZ0($.port,Y);if(J&q7.SemconvStability.OLD)Object.assign(Q,X8(Z,CY.ATTR_NET_PEER_PORT,W,"port"));if(J&q7.SemconvStability.STABLE)Object.assign(Q,X8(Z,mz.ATTR_SERVER_PORT,W,"port"))}else{let $=Mm0(Z);Q[uz.ATTR_MESSAGING_URL]=$;try{let Y=new URL($),X=yZ0(Y.protocol);Object.assign(Q,{...X8($,uz.ATTR_MESSAGING_PROTOCOL,X,"protocol")});let W=SZ0(Y.hostname);if(J&q7.SemconvStability.OLD)Object.assign(Q,{...X8($,CY.ATTR_NET_PEER_NAME,W,"hostname")});if(J&q7.SemconvStability.STABLE)Object.assign(Q,{...X8($,mz.ATTR_SERVER_ADDRESS,W,"hostname")});let K=fZ0(Y.port?parseInt(Y.port):void 0,X);if(J&q7.SemconvStability.OLD)Object.assign(Q,X8($,CY.ATTR_NET_PEER_PORT,K,"port"));if(J&q7.SemconvStability.STABLE)Object.assign(Q,X8($,mz.ATTR_SERVER_PORT,K,"port"))}catch(Y){D2.diag.error("amqplib instrumentation: error while extracting connection details from connection url",{censoredUrl:$,err:Y})}}return Q};_Z0.getConnectionAttributesFromUrl=km0;var Nm0=(Z)=>{return Z.setValue(O2,!0)};_Z0.markConfirmChannelTracing=Nm0;var Am0=(Z)=>{return Z.deleteValue(O2)};_Z0.unmarkConfirmChannelTracing=Am0;var Im0=(Z)=>{return Z.getValue(O2)===!0};_Z0.isConfirmChannelTracing=Im0});var gZ0=j((vZ0)=>{Object.defineProperty(vZ0,"__esModule",{value:!0});vZ0.PACKAGE_NAME=vZ0.PACKAGE_VERSION=void 0;vZ0.PACKAGE_VERSION="0.60.0";vZ0.PACKAGE_NAME="@opentelemetry/instrumentation-amqplib"});var lZ0=j((mZ0)=>{Object.defineProperty(mZ0,"__esModule",{value:!0});mZ0.AmqplibInstrumentation=void 0;var g0=I(),lz=R0(),V0=n(),gm0=q2(),h6=w2(),J6=j2(),i0=bZ0(),dZ0=gZ0(),pz=[">=0.5.5 <1"];class cZ0 extends V0.InstrumentationBase{_netSemconvStability;constructor(Z={}){super(dZ0.PACKAGE_NAME,dZ0.PACKAGE_VERSION,{...J6.DEFAULT_CONFIG,...Z});this._setSemconvStabilityFromEnv()}_setSemconvStabilityFromEnv(){this._netSemconvStability=(0,V0.semconvStabilityFromStr)("http",process.env.OTEL_SEMCONV_STABILITY_OPT_IN)}setConfig(Z={}){super.setConfig({...J6.DEFAULT_CONFIG,...Z})}init(){let Z=new V0.InstrumentationNodeModuleFile("amqplib/lib/channel_model.js",pz,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),J=new V0.InstrumentationNodeModuleFile("amqplib/lib/callback_model.js",pz,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),Q=new V0.InstrumentationNodeModuleFile("amqplib/lib/connect.js",pz,this.patchConnect.bind(this),this.unpatchConnect.bind(this));return new V0.InstrumentationNodeModuleDefinition("amqplib",pz,void 0,void 0,[Z,Q,J])}patchConnect(Z){if(Z=this.unpatchConnect(Z),!(0,V0.isWrapped)(Z.connect))this._wrap(Z,"connect",this.getConnectPatch.bind(this));return Z}unpatchConnect(Z){if((0,V0.isWrapped)(Z.connect))this._unwrap(Z,"connect");return Z}patchChannelModel(Z,J){if(!(0,V0.isWrapped)(Z.Channel.prototype.publish))this._wrap(Z.Channel.prototype,"publish",this.getPublishPatch.bind(this,J));if(!(0,V0.isWrapped)(Z.Channel.prototype.consume))this._wrap(Z.Channel.prototype,"consume",this.getConsumePatch.bind(this,J));if(!(0,V0.isWrapped)(Z.Channel.prototype.ack))this._wrap(Z.Channel.prototype,"ack",this.getAckPatch.bind(this,!1,J6.EndOperation.Ack));if(!(0,V0.isWrapped)(Z.Channel.prototype.nack))this._wrap(Z.Channel.prototype,"nack",this.getAckPatch.bind(this,!0,J6.EndOperation.Nack));if(!(0,V0.isWrapped)(Z.Channel.prototype.reject))this._wrap(Z.Channel.prototype,"reject",this.getAckPatch.bind(this,!0,J6.EndOperation.Reject));if(!(0,V0.isWrapped)(Z.Channel.prototype.ackAll))this._wrap(Z.Channel.prototype,"ackAll",this.getAckAllPatch.bind(this,!1,J6.EndOperation.AckAll));if(!(0,V0.isWrapped)(Z.Channel.prototype.nackAll))this._wrap(Z.Channel.prototype,"nackAll",this.getAckAllPatch.bind(this,!0,J6.EndOperation.NackAll));if(!(0,V0.isWrapped)(Z.Channel.prototype.emit))this._wrap(Z.Channel.prototype,"emit",this.getChannelEmitPatch.bind(this));if(!(0,V0.isWrapped)(Z.ConfirmChannel.prototype.publish))this._wrap(Z.ConfirmChannel.prototype,"publish",this.getConfirmedPublishPatch.bind(this,J));return Z}unpatchChannelModel(Z){if((0,V0.isWrapped)(Z.Channel.prototype.publish))this._unwrap(Z.Channel.prototype,"publish");if((0,V0.isWrapped)(Z.Channel.prototype.consume))this._unwrap(Z.Channel.prototype,"consume");if((0,V0.isWrapped)(Z.Channel.prototype.ack))this._unwrap(Z.Channel.prototype,"ack");if((0,V0.isWrapped)(Z.Channel.prototype.nack))this._unwrap(Z.Channel.prototype,"nack");if((0,V0.isWrapped)(Z.Channel.prototype.reject))this._unwrap(Z.Channel.prototype,"reject");if((0,V0.isWrapped)(Z.Channel.prototype.ackAll))this._unwrap(Z.Channel.prototype,"ackAll");if((0,V0.isWrapped)(Z.Channel.prototype.nackAll))this._unwrap(Z.Channel.prototype,"nackAll");if((0,V0.isWrapped)(Z.Channel.prototype.emit))this._unwrap(Z.Channel.prototype,"emit");if((0,V0.isWrapped)(Z.ConfirmChannel.prototype.publish))this._unwrap(Z.ConfirmChannel.prototype,"publish");return Z}getConnectPatch(Z){let J=this;return function($,Y,X){return Z.call(this,$,Y,function(W,K){if(W==null){let z=(0,i0.getConnectionAttributesFromUrl)($,J._netSemconvStability),G=(0,i0.getConnectionAttributesFromServer)(K);K[i0.CONNECTION_ATTRIBUTES]={...z,...G}}X.apply(this,arguments)})}}getChannelEmitPatch(Z){let J=this;return function($){if($==="close"){J.endAllSpansOnChannel(this,!0,J6.EndOperation.ChannelClosed,void 0);let Y=this[i0.CHANNEL_CONSUME_TIMEOUT_TIMER];if(Y)clearInterval(Y);this[i0.CHANNEL_CONSUME_TIMEOUT_TIMER]=void 0}else if($==="error")J.endAllSpansOnChannel(this,!0,J6.EndOperation.ChannelError,void 0);return Z.apply(this,arguments)}}getAckAllPatch(Z,J,Q){let $=this;return function(X){return $.endAllSpansOnChannel(this,Z,J,X),Q.apply(this,arguments)}}getAckPatch(Z,J,Q){let $=this;return function(X,W,K){let z=this,G=J===J6.EndOperation.Reject?W:K,H=z[i0.CHANNEL_SPANS_NOT_ENDED]??[],B=H.findIndex((V)=>V.msg===X);if(B<0)$.endConsumerSpan(X,Z,J,G);else if(J!==J6.EndOperation.Reject&&W){for(let V=0;V<=B;V++)$.endConsumerSpan(H[V].msg,Z,J,G);H.splice(0,B+1)}else $.endConsumerSpan(X,Z,J,G),H.splice(B,1);return Q.apply(this,arguments)}}getConsumePatch(Z,J){let Q=this;return function(Y,X,W){let K=this;if(!Object.prototype.hasOwnProperty.call(K,i0.CHANNEL_SPANS_NOT_ENDED)){let{consumeTimeoutMs:G}=Q.getConfig();if(G){let H=setInterval(()=>{Q.checkConsumeTimeoutOnChannel(K)},G);H.unref(),K[i0.CHANNEL_CONSUME_TIMEOUT_TIMER]=H}K[i0.CHANNEL_SPANS_NOT_ENDED]=[]}let z=function(G){if(!G)return X.call(this,G);let H=G.properties.headers??{},B=g0.propagation.extract(g0.ROOT_CONTEXT,H),V=G.fields?.exchange,F;if(Q._config.useLinksForConsume){let L=B?g0.trace.getSpan(B)?.spanContext():void 0;if(B=void 0,L)F=[{context:L}]}let U=Q.tracer.startSpan(`${Y} process`,{kind:g0.SpanKind.CONSUMER,attributes:{...K?.connection?.[i0.CONNECTION_ATTRIBUTES],[h6.ATTR_MESSAGING_DESTINATION]:V,[h6.ATTR_MESSAGING_DESTINATION_KIND]:h6.MESSAGING_DESTINATION_KIND_VALUE_TOPIC,[h6.ATTR_MESSAGING_RABBITMQ_ROUTING_KEY]:G.fields?.routingKey,[gm0.ATTR_MESSAGING_OPERATION]:h6.MESSAGING_OPERATION_VALUE_PROCESS,[h6.OLD_ATTR_MESSAGING_MESSAGE_ID]:G?.properties.messageId,[h6.ATTR_MESSAGING_CONVERSATION_ID]:G?.properties.correlationId},links:F},B),{consumeHook:w}=Q.getConfig();if(w)(0,V0.safeExecuteInTheMiddle)(()=>w(U,{moduleVersion:Z,msg:G}),(L)=>{if(L)g0.diag.error("amqplib instrumentation: consumerHook error",L)},!0);if(!W?.noAck)K[i0.CHANNEL_SPANS_NOT_ENDED].push({msg:G,timeOfConsume:(0,lz.hrTime)()}),G[i0.MESSAGE_STORED_SPAN]=U;let D=B?B:g0.ROOT_CONTEXT;if(g0.context.with(g0.trace.setSpan(D,U),()=>{X.call(this,G)}),W?.noAck)Q.callConsumeEndHook(U,G,!1,J6.EndOperation.AutoAck),U.end()};return arguments[1]=z,J.apply(this,arguments)}}getConfirmedPublishPatch(Z,J){let Q=this;return function(Y,X,W,K,z){let G=this,{span:H,modifiedOptions:B}=Q.createPublishSpan(Q,Y,X,G,K),{publishHook:V}=Q.getConfig();if(V)(0,V0.safeExecuteInTheMiddle)(()=>V(H,{moduleVersion:Z,exchange:Y,routingKey:X,content:W,options:B,isConfirmChannel:!0}),(D)=>{if(D)g0.diag.error("amqplib instrumentation: publishHook error",D)},!0);let F=function(D,L){try{z?.call(this,D,L)}finally{let{publishConfirmHook:C}=Q.getConfig();if(C)(0,V0.safeExecuteInTheMiddle)(()=>C(H,{moduleVersion:Z,exchange:Y,routingKey:X,content:W,options:K,isConfirmChannel:!0,confirmError:D}),(R)=>{if(R)g0.diag.error("amqplib instrumentation: publishConfirmHook error",R)},!0);if(D)H.setStatus({code:g0.SpanStatusCode.ERROR,message:"message confirmation has been nack'ed"});H.end()}},U=(0,i0.markConfirmChannelTracing)(g0.context.active()),w=[...arguments];return w[3]=B,w[4]=g0.context.bind((0,i0.unmarkConfirmChannelTracing)(g0.trace.setSpan(U,H)),F),g0.context.with(U,J.bind(this,...w))}}getPublishPatch(Z,J){let Q=this;return function(Y,X,W,K){if((0,i0.isConfirmChannelTracing)(g0.context.active()))return J.apply(this,arguments);else{let z=this,{span:G,modifiedOptions:H}=Q.createPublishSpan(Q,Y,X,z,K),{publishHook:B}=Q.getConfig();if(B)(0,V0.safeExecuteInTheMiddle)(()=>B(G,{moduleVersion:Z,exchange:Y,routingKey:X,content:W,options:H,isConfirmChannel:!1}),(U)=>{if(U)g0.diag.error("amqplib instrumentation: publishHook error",U)},!0);let V=[...arguments];V[3]=H;let F=J.apply(this,V);return G.end(),F}}}createPublishSpan(Z,J,Q,$,Y){let X=(0,i0.normalizeExchange)(J),W=Z.tracer.startSpan(`publish ${X}`,{kind:g0.SpanKind.PRODUCER,attributes:{...$.connection[i0.CONNECTION_ATTRIBUTES],[h6.ATTR_MESSAGING_DESTINATION]:J,[h6.ATTR_MESSAGING_DESTINATION_KIND]:h6.MESSAGING_DESTINATION_KIND_VALUE_TOPIC,[h6.ATTR_MESSAGING_RABBITMQ_ROUTING_KEY]:Q,[h6.OLD_ATTR_MESSAGING_MESSAGE_ID]:Y?.messageId,[h6.ATTR_MESSAGING_CONVERSATION_ID]:Y?.correlationId}}),K=Y??{};return K.headers=K.headers??{},g0.propagation.inject(g0.trace.setSpan(g0.context.active(),W),K.headers),{span:W,modifiedOptions:K}}endConsumerSpan(Z,J,Q,$){let Y=Z[i0.MESSAGE_STORED_SPAN];if(!Y)return;if(J!==!1)Y.setStatus({code:g0.SpanStatusCode.ERROR,message:Q!==J6.EndOperation.ChannelClosed&&Q!==J6.EndOperation.ChannelError?`${Q} called on message${$===!0?" with requeue":$===!1?" without requeue":""}`:Q});this.callConsumeEndHook(Y,Z,J,Q),Y.end(),Z[i0.MESSAGE_STORED_SPAN]=void 0}endAllSpansOnChannel(Z,J,Q,$){(Z[i0.CHANNEL_SPANS_NOT_ENDED]??[]).forEach((X)=>{this.endConsumerSpan(X.msg,J,Q,$)}),Z[i0.CHANNEL_SPANS_NOT_ENDED]=[]}callConsumeEndHook(Z,J,Q,$){let{consumeEndHook:Y}=this.getConfig();if(!Y)return;(0,V0.safeExecuteInTheMiddle)(()=>Y(Z,{msg:J,rejected:Q,endOperation:$}),(X)=>{if(X)g0.diag.error("amqplib instrumentation: consumerEndHook error",X)},!0)}checkConsumeTimeoutOnChannel(Z){let J=(0,lz.hrTime)(),Q=Z[i0.CHANNEL_SPANS_NOT_ENDED]??[],$,{consumeTimeoutMs:Y}=this.getConfig();for($=0;$<Q.length;$++){let X=Q[$],W=(0,lz.hrTimeDuration)(X.timeOfConsume,J);if((0,lz.hrTimeToMilliseconds)(W)<Y)break;this.endConsumerSpan(X.msg,null,J6.EndOperation.InstrumentationTimeout,!0)}Q.splice(0,$)}}mZ0.AmqplibInstrumentation=cZ0});var iZ0=j((PY)=>{Object.defineProperty(PY,"__esModule",{value:!0});PY.EndOperation=PY.DEFAULT_CONFIG=PY.AmqplibInstrumentation=void 0;var dm0=lZ0();Object.defineProperty(PY,"AmqplibInstrumentation",{enumerable:!0,get:function(){return dm0.AmqplibInstrumentation}});var pZ0=j2();Object.defineProperty(PY,"DEFAULT_CONFIG",{enumerable:!0,get:function(){return pZ0.DEFAULT_CONFIG}});Object.defineProperty(PY,"EndOperation",{enumerable:!0,get:function(){return pZ0.EndOperation}})});var oZ0,nZ0="Amqplib",mm0,aZ0,um0=()=>{return{name:nZ0,setupOnce(){aZ0()}}},MY;var L2=q(()=>{N();X0();oZ0=A(iZ0(),1),mm0={consumeEndHook:(Z)=>{q0(Z,"auto.amqplib.otel.consumer")},publishHook:(Z)=>{q0(Z,"auto.amqplib.otel.publisher")}},aZ0=S(nZ0,()=>new oZ0.AmqplibInstrumentation(mm0)),MY=P(um0)});var RY="VercelAI";var C2=()=>{};function pm0(Z){if(typeof Z!=="object"||Z===null)return!1;let J=Z;return"type"in J&&"error"in J&&"toolName"in J&&"toolCallId"in J&&J.type==="tool-error"&&J.error instanceof Error}function im0(Z){if(typeof Z!=="object"||Z===null||!("content"in Z))return;let J=Z;if(!Array.isArray(J.content))return;om0(J.content),nm0(J.content)}function om0(Z){for(let J of Z){if(!pm0(J))continue;let Q=UU(J.toolCallId);if(Q)c0(($)=>{$.setContext("trace",{trace_id:Q.traceId,span_id:Q.spanId}),$.setTag("vercel.ai.tool.name",J.toolName),$.setTag("vercel.ai.tool.callId",J.toolCallId),$.setLevel("error"),h(J.error,{mechanism:{type:"auto.vercelai.otel",handled:!1}})});else c0(($)=>{$.setTag("vercel.ai.tool.name",J.toolName),$.setTag("vercel.ai.tool.callId",J.toolCallId),$.setLevel("error"),h(J.error,{mechanism:{type:"auto.vercelai.otel",handled:!1}})})}}function nm0(Z){for(let J of Z)if(typeof J==="object"&&J!==null&&"toolCallId"in J&&typeof J.toolCallId==="string")qU(J.toolCallId)}function am0(Z,J,Q,$){let Y=Z?.recordInputs!==void 0?Z.recordInputs:J.recordInputs!==void 0?J.recordInputs:Q===!0?!0:$,X=Z?.recordOutputs!==void 0?Z.recordOutputs:J.recordOutputs!==void 0?J.recordOutputs:Q===!0?!0:$;return{recordInputs:Y,recordOutputs:X}}var iz,lm0,sZ0,kY;var rZ0=q(()=>{N();C2();iz=A(n(),1),lm0=[">=3.0.0 <7"],sZ0=["generateText","streamText","generateObject","streamObject","embed","embedMany","rerank"];kY=class kY extends iz.InstrumentationBase{__init(){this._isPatched=!1}__init2(){this._callbacks=[]}constructor(Z={}){super("@sentry/instrumentation-vercel-ai",e,Z);kY.prototype.__init.call(this),kY.prototype.__init2.call(this)}init(){return new iz.InstrumentationNodeModuleDefinition("ai",lm0,this._patch.bind(this))}callWhenPatched(Z){if(this._isPatched)Z();else this._callbacks.push(Z)}_patch(Z){this._isPatched=!0,this._callbacks.forEach((Q)=>Q()),this._callbacks=[];let J=(Q)=>{return new Proxy(Q,{apply:($,Y,X)=>{let W=X[0].experimental_telemetry||{},K=W.isEnabled,z=k(),G=z?.getIntegrationByName(RY),H=G?.options,B=G?Boolean(z?.getOptions().sendDefaultPii):!1,{recordInputs:V,recordOutputs:F}=am0(H,W,K,B);return X[0].experimental_telemetry={...W,isEnabled:K!==void 0?K:!0,recordInputs:V,recordOutputs:F},L9(()=>Reflect.apply($,Y,X),(U)=>{if(U&&typeof U==="object")T0(U,"_sentry_active_span",s0())},()=>{},(U)=>{im0(U)})}})};if(Object.prototype.toString.call(Z)==="[object Module]"){for(let Q of sZ0)if(Z[Q]!=null)Z[Q]=J(Z[Q]);return Z}else{let Q=sZ0.reduce(($,Y)=>{if(Z[Y]!=null)$[Y]=J(Z[Y]);return $},{});return{...Z,...Q}}}}});function sm0(Z){return!!Z.getIntegrationByName("Modules")?.getModules?.()?.ai}var tZ0,rm0=(Z={})=>{let J;return{name:RY,options:Z,setupOnce(){J=tZ0()},afterAllSetup(Q){if(Z.force??sm0(Q))xW(Q);else J?.callWhenPatched(()=>xW(Q))}}},NY;var P2=q(()=>{N();X0();C2();rZ0();tZ0=S(RY,()=>new kY({}));NY=P(rm0)});var oz,tm0,M2;var eZ0=q(()=>{N();oz=A(n(),1),tm0=[">=4.0.0 <7"];M2=class M2 extends oz.InstrumentationBase{constructor(Z={}){super("@sentry/instrumentation-openai",e,Z)}init(){return new oz.InstrumentationNodeModuleDefinition("openai",tm0,this._patch.bind(this))}_patch(Z){let J=Z;return J=this._patchClient(J,"OpenAI"),J=this._patchClient(J,"AzureOpenAI"),J}_patchClient(Z,J){let Q=Z[J];if(!Q)return Z;let $=this.getConfig(),Y=function(...X){if(J5(gZ))return Reflect.construct(Q,X);let W=Reflect.construct(Q,X);return s4(W,$)};Object.setPrototypeOf(Y,Q),Object.setPrototypeOf(Y.prototype,Q.prototype);for(let X of Object.getOwnPropertyNames(Q))if(!["length","name","prototype"].includes(X)){let W=Object.getOwnPropertyDescriptor(Q,X);if(W)Object.defineProperty(Y,X,W)}try{Z[J]=Y}catch{Object.defineProperty(Z,J,{value:Y,writable:!0,configurable:!0,enumerable:!0})}if(Z.default===Q)try{Z.default=Y}catch{Object.defineProperty(Z,"default",{value:Y,writable:!0,configurable:!0,enumerable:!0})}return Z}}});var Z70,em0=(Z={})=>{return{name:gZ,setupOnce(){Z70(Z)}}},AY;var R2=q(()=>{N();X0();eZ0();Z70=S(gZ,(Z)=>new M2(Z)),AY=P(em0)});var nz,Zu0,k2;var J70=q(()=>{N();nz=A(n(),1),Zu0=[">=0.19.2 <1.0.0"];k2=class k2 extends nz.InstrumentationBase{constructor(Z={}){super("@sentry/instrumentation-anthropic-ai",e,Z)}init(){return new nz.InstrumentationNodeModuleDefinition("@anthropic-ai/sdk",Zu0,this._patch.bind(this))}_patch(Z){let J=Z.Anthropic,Q=this.getConfig(),$=function(...Y){if(J5(dZ))return Reflect.construct(J,Y);let X=Reflect.construct(J,Y);return r4(X,Q)};Object.setPrototypeOf($,J),Object.setPrototypeOf($.prototype,J.prototype);for(let Y of Object.getOwnPropertyNames(J))if(!["length","name","prototype"].includes(Y)){let X=Object.getOwnPropertyDescriptor(J,Y);if(X)Object.defineProperty($,Y,X)}try{Z.Anthropic=$}catch{Object.defineProperty(Z,"Anthropic",{value:$,writable:!0,configurable:!0,enumerable:!0})}if(Z.default===J)try{Z.default=$}catch{Object.defineProperty(Z,"default",{value:$,writable:!0,configurable:!0,enumerable:!0})}return Z}}});var Q70,Ju0=(Z={})=>{return{name:dZ,options:Z,setupOnce(){Q70(Z)}}},IY;var N2=q(()=>{N();X0();J70();Q70=S(dZ,(Z)=>new k2(Z)),IY=P(Ju0)});var aJ,$70,A2;var Y70=q(()=>{N();aJ=A(n(),1),$70=[">=0.10.0 <2"];A2=class A2 extends aJ.InstrumentationBase{constructor(Z={}){super("@sentry/instrumentation-google-genai",e,Z)}init(){return new aJ.InstrumentationNodeModuleDefinition("@google/genai",$70,(J)=>this._patch(J),(J)=>J,[new aJ.InstrumentationNodeModuleFile("@google/genai/dist/node/index.cjs",$70,(J)=>this._patch(J),(J)=>J)])}_patch(Z){let J=Z.GoogleGenAI,Q=this.getConfig();if(typeof J!=="function")return Z;let $=function(...Y){if(J5(cZ))return Reflect.construct(J,Y);let X=Reflect.construct(J,Y);return e4(X,Q)};Object.setPrototypeOf($,J),Object.setPrototypeOf($.prototype,J.prototype);for(let Y of Object.getOwnPropertyNames(J))if(!["length","name","prototype"].includes(Y)){let X=Object.getOwnPropertyDescriptor(J,Y);if(X)Object.defineProperty($,Y,X)}return o3(Z,"GoogleGenAI",$),Z}}});var X70,Qu0=(Z={})=>{return{name:cZ,setupOnce(){X70(Z)}}},TY;var I2=q(()=>{N();X0();Y70();X70=S(cZ,(Z)=>new A2(Z)),TY=P(Qu0)});function $u0(Z,J){if(!Z)return[J];if(Array.isArray(Z)){if(Z.includes(J))return Z;return[...Z,J]}if(typeof Z==="object")return[Z,J];return Z}function Yu0(Z,J,Q){return new Proxy(Z,{apply($,Y,X){let K=X[1];if(!K||typeof K!=="object"||Array.isArray(K))K={},X[1]=K;let z=K.callbacks,G=$u0(z,J);return K.callbacks=G,Reflect.apply($,Y,X)}})}var w7,az,T2;var W70=q(()=>{N();w7=A(n(),1),az=[">=0.1.0 <2.0.0"];T2=class T2 extends w7.InstrumentationBase{constructor(Z={}){super("@sentry/instrumentation-langchain",e,Z)}init(){let Z=[],J=["@langchain/anthropic","@langchain/openai","@langchain/google-genai","@langchain/mistralai","@langchain/google-vertexai","@langchain/groq"];for(let Q of J)Z.push(new w7.InstrumentationNodeModuleDefinition(Q,az,this._patch.bind(this),($)=>$,[new w7.InstrumentationNodeModuleFile(`${Q}/dist/index.cjs`,az,this._patch.bind(this),($)=>$)]));return Z.push(new w7.InstrumentationNodeModuleDefinition("langchain",az,this._patch.bind(this),(Q)=>Q,[new w7.InstrumentationNodeModuleFile("langchain/dist/chat_models/universal.cjs",az,this._patch.bind(this),(Q)=>Q)])),Z}_patch(Z){GF([gZ,dZ,cZ]);let J=JJ(this.getConfig());return this._patchRunnableMethods(Z,J),Z}_patchRunnableMethods(Z,J){let Q=["ChatAnthropic","ChatOpenAI","ChatGoogleGenerativeAI","ChatMistralAI","ChatVertexAI","ChatGroq","ConfigurableModel"],$=Z.universal_exports??Z,Y=Object.values($).find((K)=>{return typeof K==="function"&&Q.includes(K.name)});if(!Y)return;let X=Y.prototype;if(X.__sentry_patched__)return;X.__sentry_patched__=!0;let W=["invoke","stream","batch"];for(let K of W){let z=X[K];if(typeof z==="function")X[K]=Yu0(z,J)}}}});var K70,Xu0=(Z={})=>{return{name:uW,setupOnce(){K70(Z)}}},EY;var E2=q(()=>{N();X0();W70();K70=S(uW,(Z)=>new T2(Z)),EY=P(Xu0)});var sJ,z70,f2;var G70=q(()=>{N();sJ=A(n(),1),z70=[">=0.0.0 <2.0.0"];f2=class f2 extends sJ.InstrumentationBase{constructor(Z={}){super("@sentry/instrumentation-langgraph",e,Z)}init(){return new sJ.InstrumentationNodeModuleDefinition("@langchain/langgraph",z70,this._patch.bind(this),(J)=>J,[new sJ.InstrumentationNodeModuleFile("@langchain/langgraph/dist/index.cjs",z70,this._patch.bind(this),(J)=>J)])}_patch(Z){if(Z.StateGraph&&typeof Z.StateGraph==="function")QJ(Z.StateGraph.prototype,this.getConfig());return Z}}});var H70,Wu0=(Z={})=>{return{name:iW,setupOnce(){H70(Z)}}},fY;var y2=q(()=>{N();X0();G70();H70=S(iW,(Z)=>new f2(Z)),fY=P(Wu0)});function _2(){if(!I9())G0(()=>{console.warn("The buildLaunchDarklyFlagUsedHandler() can only be used in the browser.")});return{name:"sentry-flag-auditor",type:"flag-used",synchronous:!0,method:()=>null}}var S2;var B70=q(()=>{N();S2=P((Z)=>{if(!I9())G0(()=>{console.warn("The launchDarklyIntegration() can only be used in the browser.")});return{name:"LaunchDarkly"}})});class sz{constructor(){if(!I9())G0(()=>{console.warn("The OpenFeatureIntegrationHook can only be used in the browser.")})}after(){}error(){}}var h2;var V70=q(()=>{N();h2=P((Z)=>{if(!I9())G0(()=>{console.warn("The openFeatureIntegration() can only be used in the browser.")});return{name:"OpenFeature"}})});var b2;var F70=q(()=>{N();b2=P((Z)=>{if(!I9())G0(()=>{console.warn("The statsigIntegration() can only be used in the browser.")});return{name:"Statsig"}})});var v2;var U70=q(()=>{N();v2=P((Z)=>{if(!I9())G0(()=>{console.warn("The unleashIntegration() can only be used in the browser.")});return{name:"Unleash"}})});var x2;var q70=q(()=>{N();x2=AF});import*as j70 from"net";function D70(Z,J,Q,$,Y){let W=()=>{},K=Y.firestoreSpanCreationHook;if(typeof K==="function")W=(H)=>{XZ.safeExecuteInTheMiddle(()=>K(H),(B)=>{if(!B)return;YZ.diag.error(B?.message)},!0)};let z=new XZ.InstrumentationNodeModuleDefinition("@firebase/firestore",J,(H)=>w70(H,Q,$,Z,W)),G=["@firebase/firestore/dist/lite/index.node.cjs.js","@firebase/firestore/dist/lite/index.node.mjs.js","@firebase/firestore/dist/lite/index.rn.esm2017.js","@firebase/firestore/dist/lite/index.cjs.js"];for(let H of G)z.files.push(new XZ.InstrumentationNodeModuleFile(H,J,(B)=>w70(B,Q,$,Z,W),(B)=>O70(B,$)));return z}function w70(Z,J,Q,$,Y){return O70(Z,Q),J(Z,"addDoc",Ku0($,Y)),J(Z,"getDocs",Gu0($,Y)),J(Z,"setDoc",Hu0($,Y)),J(Z,"deleteDoc",zu0($,Y)),Z}function O70(Z,J){for(let Q of["addDoc","getDocs","setDoc","deleteDoc"])if(XZ.isWrapped(Z[Q]))J(Z,Q);return Z}function Ku0(Z,J){return function($){return function(Y,X){let W=tz(Z,"addDoc",Y);return J(W),rz(W,()=>{return $(Y,X)})}}}function zu0(Z,J){return function($){return function(Y){let X=tz(Z,"deleteDoc",Y.parent||Y);return J(X),rz(X,()=>{return $(Y)})}}}function Gu0(Z,J){return function($){return function(Y){let X=tz(Z,"getDocs",Y);return J(X),rz(X,()=>{return $(Y)})}}}function Hu0(Z,J){return function($){return function(Y,X,W){let K=tz(Z,"setDoc",Y.parent||Y);return J(K),rz(K,()=>{return typeof W<"u"?$(Y,X,W):$(Y,X)})}}}function rz(Z,J){return YZ.context.with(YZ.trace.setSpan(YZ.context.active(),Z),()=>{return XZ.safeExecuteInTheMiddle(()=>{return J()},(Q)=>{if(Q)Z.recordException(Q);Z.end()},!0)})}function tz(Z,J,Q){let $=Z.startSpan(`${J} ${Q.path}`,{kind:YZ.SpanKind.CLIENT});return Vu0($,Q),$.setAttribute(G9.ATTR_DB_OPERATION_NAME,J),$}function Bu0(Z){let J,Q;if(typeof Z.host==="string")if(Z.host.startsWith("[")){if(Z.host.endsWith("]"))J=Z.host.replace(/^\[|\]$/g,"");else if(Z.host.includes("]:")){let $=Z.host.lastIndexOf(":");if($!==-1)J=Z.host.slice(1,$).replace(/^\[|\]$/g,""),Q=Z.host.slice($+1)}}else if(j70.isIPv6(Z.host))J=Z.host;else{let $=Z.host.lastIndexOf(":");if($!==-1)J=Z.host.slice(0,$),Q=Z.host.slice($+1);else J=Z.host}return{address:J,port:Q?parseInt(Q,10):void 0}}function Vu0(Z,J){let Q=J.firestore.app,$=Q.options,X=(J.firestore.toJSON()||{}).settings||{},W={[G9.ATTR_DB_COLLECTION_NAME]:J.path,[G9.ATTR_DB_NAMESPACE]:Q.name,[G9.ATTR_DB_SYSTEM_NAME]:"firebase.firestore","firebase.firestore.type":J.type,"firebase.firestore.options.projectId":$.projectId,"firebase.firestore.options.appId":$.appId,"firebase.firestore.options.messagingSenderId":$.messagingSenderId,"firebase.firestore.options.storageBucket":$.storageBucket},{address:K,port:z}=Bu0(X);if(K)W[G9.ATTR_SERVER_ADDRESS]=K;if(z)W[G9.ATTR_SERVER_PORT]=z;Z.setAttributes(W)}var YZ,XZ,G9;var L70=q(()=>{YZ=A(I(),1),XZ=A(n(),1),G9=A(Y0(),1)});function C70(Z,J,Q,$,Y){let X=()=>{},W=()=>{},K=Y.functions?.errorHook,z=Y.functions?.requestHook,G=Y.functions?.responseHook;if(typeof G==="function")W=(V,F)=>{WZ.safeExecuteInTheMiddle(()=>G(V,F),(U)=>{if(!U)return;W8.diag.error(U?.message)},!0)};if(typeof z==="function")X=(V)=>{WZ.safeExecuteInTheMiddle(()=>z(V),(F)=>{if(!F)return;W8.diag.error(F?.message)},!0)};let H=new WZ.InstrumentationNodeModuleDefinition("firebase-functions",J);return[{name:"firebase-functions/lib/v2/providers/https.js",triggerType:"function"},{name:"firebase-functions/lib/v2/providers/firestore.js",triggerType:"firestore"},{name:"firebase-functions/lib/v2/providers/scheduler.js",triggerType:"scheduler"},{name:"firebase-functions/lib/v2/storage.js",triggerType:"storage"}].forEach(({name:V,triggerType:F})=>{H.files.push(new WZ.InstrumentationNodeModuleFile(V,J,(U)=>Fu0(U,Q,$,Z,{requestHook:X,responseHook:W,errorHook:K},F),(U)=>P70(U,$)))}),H}function Q6(Z,J,Q){return function(Y){return function(...X){let W=typeof X[0]==="function"?X[0]:X[1],K=typeof X[0]==="function"?void 0:X[0];if(!W)return Y.call(this,...X);let z=async function(...G){let H=process.env.FUNCTION_TARGET||process.env.K_SERVICE||"unknown",B=Z.startSpan(`firebase.function.${Q}`,{kind:W8.SpanKind.SERVER}),V={"faas.name":H,"faas.trigger":Q,"faas.provider":"firebase"};if(process.env.GCLOUD_PROJECT)V["cloud.project_id"]=process.env.GCLOUD_PROJECT;if(process.env.EVENTARC_CLOUD_EVENT_SOURCE)V["cloud.event_source"]=process.env.EVENTARC_CLOUD_EVENT_SOURCE;return B.setAttributes(V),J?.requestHook?.(B),W8.context.with(W8.trace.setSpan(W8.context.active(),B),async()=>{let F,U;try{U=await W.apply(this,G)}catch(w){F=w}if(J?.responseHook?.(B,F),F)B.recordException(F);if(B.end(),F)throw await J?.errorHook?.(B,F),F;return U})};if(K)return Y.call(this,K,z);else return Y.call(this,z)}}}function Fu0(Z,J,Q,$,Y,X){switch(P70(Z,Q),X){case"function":J(Z,"onRequest",Q6($,Y,"http.request")),J(Z,"onCall",Q6($,Y,"http.call"));break;case"firestore":J(Z,"onDocumentCreated",Q6($,Y,"firestore.document.created")),J(Z,"onDocumentUpdated",Q6($,Y,"firestore.document.updated")),J(Z,"onDocumentDeleted",Q6($,Y,"firestore.document.deleted")),J(Z,"onDocumentWritten",Q6($,Y,"firestore.document.written")),J(Z,"onDocumentCreatedWithAuthContext",Q6($,Y,"firestore.document.created")),J(Z,"onDocumentUpdatedWithAuthContext",Q6($,Y,"firestore.document.updated")),J(Z,"onDocumentDeletedWithAuthContext",Q6($,Y,"firestore.document.deleted")),J(Z,"onDocumentWrittenWithAuthContext",Q6($,Y,"firestore.document.written"));break;case"scheduler":J(Z,"onSchedule",Q6($,Y,"scheduler.scheduled"));break;case"storage":J(Z,"onObjectFinalized",Q6($,Y,"storage.object.finalized")),J(Z,"onObjectArchived",Q6($,Y,"storage.object.archived")),J(Z,"onObjectDeleted",Q6($,Y,"storage.object.deleted")),J(Z,"onObjectMetadataUpdated",Q6($,Y,"storage.object.metadataUpdated"));break}return Z}function P70(Z,J){let Q=["onSchedule","onRequest","onCall","onObjectFinalized","onObjectArchived","onObjectDeleted","onObjectMetadataUpdated","onDocumentCreated","onDocumentUpdated","onDocumentDeleted","onDocumentWritten","onDocumentCreatedWithAuthContext","onDocumentUpdatedWithAuthContext","onDocumentDeletedWithAuthContext","onDocumentWrittenWithAuthContext"];for(let $ of Q)if(WZ.isWrapped(Z[$]))J(Z,$);return Z}var W8,WZ;var M70=q(()=>{W8=A(I(),1),WZ=A(n(),1)});var k70,R70,Uu0,qu0,g2;var N70=q(()=>{N();L70();M70();k70=A(n(),1),R70={},Uu0=[">=3.0.0 <5"],qu0=[">=6.0.0 <7"];g2=class g2 extends k70.InstrumentationBase{constructor(Z=R70){super("@sentry/instrumentation-firebase",e,Z)}setConfig(Z={}){super.setConfig({...R70,...Z})}init(){let Z=[];return Z.push(D70(this.tracer,Uu0,this._wrap,this._unwrap,this.getConfig())),Z.push(C70(this.tracer,qu0,this._wrap,this._unwrap,this.getConfig())),Z}}});var A70="Firebase",wu0,I70,ju0=()=>{return{name:A70,setupOnce(){I70()}}},yY;var d2=q(()=>{N();X0();N70();wu0={firestoreSpanCreationHook:(Z)=>{q0(Z,"auto.firebase.otel.firestore"),Z.setAttribute(g,"db.query")},functions:{requestHook:(Z)=>{q0(Z,"auto.firebase.otel.functions"),Z.setAttribute(g,"http.request")},errorHook:async(Z,J)=>{if(J)h(J,{mechanism:{type:"auto.firebase.otel.functions",handled:!1}}),await t7(2000)}}},I70=S(A70,()=>new g2(wu0)),yY=P(ju0)});function d5(){return[U$(),y$(),_$(),UY(),v$(),c$(),m$(),l$(),t$(),ZY(),zY(),VY(),jY(),DY(),OY(),LY(),h$(),MY(),b$(),EY(),fY(),NY(),AY(),IY(),TY(),JY(),yY()]}var c2=q(()=>{L2();N2();Z2();Ow();Bj();d2();B2();I2();Oj();xD();mD();Cj();oD();E2();y2();Mj();Ij();_j();xj();oj();R2();zD();HD();yD();JD();z2();P2()});function SY(Z,J={}){if(Z.getOptions().debug)Tq();let[Q,$]=Du0(Z,J);Z.traceProvider=Q,Z.asyncLocalStorageLookup=$}function Du0(Z,J={}){let Q=new CK({sampler:new Iq(Z),resource:Z$().merge(qK({[tJ.ATTR_SERVICE_NAME]:"node",[tJ.SEMRESATTRS_SERVICE_NAMESPACE]:"sentry",[tJ.ATTR_SERVICE_VERSION]:e})),forceFlushTimeoutMillis:500,spanProcessors:[new Aq({timeout:Ou0(Z.getOptions().maxSpanWaitDuration)}),...J.spanProcessors||[]]});rJ.trace.setGlobalTracerProvider(Q),rJ.propagation.setGlobalPropagator(new Nq);let $=new MK;return rJ.context.setGlobalContextManager($),[Q,$.getAsyncLocalStorageLookup()]}function Ou0(Z){if(Z==null)return;if(Z>m2)return e0&&O.warn(`\`maxSpanWaitDuration\` is too high, using the maximum value of ${m2}`),m2;else if(Z<=0||Number.isNaN(Z)){e0&&O.warn("`maxSpanWaitDuration` must be a positive number, using default value instead.");return}return Z}var rJ,tJ,m2=1e6;var u2=q(()=>{Jq();Vq();N();X0();jJ();Z7();rJ=A(I(),1),tJ=A(Y0(),1)});function T70(){return EK().filter((J)=>J.name!=="Http"&&J.name!=="NodeFetch").concat(M5(),R5())}function E70(Z){return[...T70(),...P0(Z)?d5():[]]}function l2(Z={}){return Lu0(Z,E70)}function Lu0(Z={},J){k9(Z,"node");let Q=Qw({...Z,defaultIntegrations:Z.defaultIntegrations??J(Z)});if(Q&&!Z.skipOpenTelemetrySetup)SY(Q,{spanProcessors:Z.openTelemetrySpanProcessors}),fK();return Q}var f70=q(()=>{N();X0();Kw();Hw();c2();u2()});var p2=q(()=>{Kw();Hw();uo();Ow();Bj();Oj();Cj();Mj();Ij();_j();xj();oj();JD();zD();HD();yD();xD();mD();oD();Z2();y80();z2();B2();MZ0();L2();P2();R2();N2();I2();E2();y2();B70();V70();F70();U70();q70();d2();f70();u2();c2();N();X0()});import*as y70 from"os";var i2;var S70=q(()=>{N();i2=class i2 extends _4{constructor(Z){k9(Z,"bun");let J={...Z,platform:"javascript",runtime:{name:"bun",version:Bun.version},serverName:Z.serverName||global.process.env.SENTRY_NAME||y70.hostname()};super(J)}}});function Mu0(){if(_70)return;Bun.serve=new Proxy(Bun.serve,{apply(Z,J,Q){h70(Q[0]);let $=Z.apply(J,Q),Y=$.reload.bind($);return $.reload=(X)=>{return h70(X),Y(X)},$}}),_70=!0}function h70(Z){Ru0(Z),ku0(Z)}function Ru0(Z){if(typeof Z.fetch!=="function")return;Z.fetch=new Proxy(Z.fetch,{apply(J,Q,$){return o2(J,Q,$)}})}function ku0(Z){if(!Z.routes)return;if(typeof Z.routes!=="object")return;Object.keys(Z.routes).forEach((J)=>{let Q=Z.routes[J];if(typeof Q==="function")Z.routes[J]=new Proxy(Q,{apply:($,Y,X)=>{return o2($,Y,X,J)}});if(Q instanceof Response)return;if(typeof Q==="object")Object.entries(Q).forEach(([$,Y])=>{if(typeof Y==="function")Z.routes[J][$]=new Proxy(Y,{apply:(X,W,K)=>{return o2(X,W,K,J)}})})})}function o2(Z,J,Q,$){return l1((Y)=>{let X=Q[0],W=X.method.toUpperCase();if(W==="OPTIONS"||W==="HEAD")return Z.apply(J,Q);let K=A8(X.url),z=Nu0(K,X),G=K?.pathname||"/";if(X.params){if(Object.keys(X.params).forEach((B)=>{z[`url.path.parameter.${B}`]=X.params[B]}),$)z[H0]="route",z["url.template"]=$,G=$}if($?.endsWith("/*"))z[H0]="route",z["url.template"]=$,G=$;let H=k()?.getOptions().sendDefaultPii??!1;return Object.assign(z,T8(X.headers.toJSON(),H)),Y.setSDKProcessingMetadata({normalizedRequest:{url:X.url,method:X.method,headers:X.headers.toJSON(),query_string:K?.search}}),o7({sentryTrace:X.headers.get("sentry-trace")??"",baggage:X.headers.get("baggage")},()=>r0({attributes:z,op:"http.server",name:`${X.method} ${G}`},async(B)=>{try{let V=await Z.apply(J,Q);if(V?.status)l9(B,V.status),Y.setContext("response",{status_code:V.status}),B.setAttributes(T8(V.headers.toJSON(),H,"response"));return V}catch(V){throw h(V,{mechanism:{type:"auto.http.bun.serve",handled:!1}}),V}}))})}function Nu0(Z,J){let Q={[f]:"auto.http.bun.serve",[vQ]:J.method||"GET",[H0]:"url"};if(Z){if(Z.search)Q["url.query"]=Z.search;if(Z.hash)Q["url.fragment"]=Z.hash;if(Z.pathname)Q["url.path"]=Z.pathname;if(!$5(Z)){if(Q["url.full"]=Z.href,Z.port)Q["url.port"]=Z.port;if(Z.protocol)Q["url.scheme"]=Z.protocol;if(Z.hostname)Q["url.domain"]=Z.hostname}}return Q}var Cu0="BunServer",Pu0=()=>{return{name:Cu0,setupOnce(){Mu0()}}},ez,_70=!1;var n2=q(()=>{N();ez=P(Pu0)});function ZG(Z){function J(Q){let $={body:Q.body,method:"POST",headers:Z.headers};try{return P9(()=>{return fetch(Z.url,$).then((Y)=>{return{statusCode:Y.status,headers:{"x-sentry-rate-limits":Y.headers.get("X-Sentry-Rate-Limits"),"retry-after":Y.headers.get("Retry-After")}}})})}catch(Y){return Promise.reject(Y)}}return o9(Z,J)}var a2=q(()=>{N()});import*as b70 from"os";function s2(Z){return[f8(),E8(),y8(),S8(),_8(),M5(),R5(),sZ(),rZ(),nZ(),oZ(),aZ(),tZ(),ez(),...P0(Z)?d5():[]]}function v70(Z={}){k9(Z,"bun");let J={...Z,platform:"javascript",runtime:{name:"bun",version:typeof Bun<"u"?Bun.version:"unknown"},serverName:Z.serverName||global.process.env.SENTRY_NAME||b70.hostname()};if(J.transport=J.transport||ZG,J.defaultIntegrations===void 0)J.defaultIntegrations=s2(J);return l2(J)}var x70=q(()=>{N();p2();n2();a2()});var g70={};y1(g70,{zodErrorsIntegration:()=>N3,wrapMcpServerWithSentry:()=>y3,withScope:()=>c0,withMonitor:()=>a6,withIsolationScope:()=>l1,withActiveSpan:()=>n6,winterCGHeadersToDict:()=>zW,vercelAIIntegration:()=>NY,updateSpanName:()=>lQ,unleashIntegration:()=>v2,trpcMiddleware:()=>T3,tediousIntegration:()=>OY,suppressTracing:()=>P9,supabaseIntegration:()=>k3,statsigIntegration:()=>b2,startSpanManual:()=>h0,startSpan:()=>r0,startSession:()=>e7,startNewTrace:()=>kZ,startInactiveSpan:()=>P8,spotlightIntegration:()=>CJ,spanToTraceHeader:()=>c7,spanToJSON:()=>v,spanToBaggageHeader:()=>pQ,setupKoaErrorHandler:()=>iD,setupHonoErrorHandler:()=>cD,setupHapiErrorHandler:()=>vD,setupFastifyErrorHandler:()=>Hj,setupExpressErrorHandler:()=>Dw,setupConnectErrorHandler:()=>eD,setUser:()=>G3,setTags:()=>K3,setTag:()=>z3,setMeasurement:()=>tQ,setHttpStatus:()=>l9,setExtras:()=>X3,setExtra:()=>W3,setCurrentClient:()=>O3,setConversationId:()=>tX,setContext:()=>Y3,rewriteFramesIntegration:()=>R3,requestDataIntegration:()=>S8,redisIntegration:()=>t$,profiler:()=>I3,processSessionIntegration:()=>tZ,prismaIntegration:()=>zY,postgresJsIntegration:()=>JY,postgresIntegration:()=>ZY,pinoIntegration:()=>hK,parameterize:()=>b4,openFeatureIntegration:()=>h2,openAIIntegration:()=>AY,onUnhandledRejectionIntegration:()=>rZ,onUncaughtExceptionIntegration:()=>sZ,nodeContextIntegration:()=>oZ,nativeNodeFetchIntegration:()=>R5,mysqlIntegration:()=>m$,mysql2Integration:()=>l$,mongooseIntegration:()=>c$,mongoIntegration:()=>v$,modulesIntegration:()=>aZ,metrics:()=>m4,makeNodeTransport:()=>PJ,makeFetchTransport:()=>ZG,lruMemoizerIntegration:()=>b$,logger:()=>H$,localVariablesIntegration:()=>OJ,linkedErrorsIntegration:()=>y8,launchDarklyIntegration:()=>S2,lastEventId:()=>H3,langGraphIntegration:()=>fY,langChainIntegration:()=>EY,koaIntegration:()=>jY,knexIntegration:()=>Y2,kafkaIntegration:()=>h$,isInitialized:()=>V3,isEnabled:()=>R8,instrumentSupabaseClient:()=>g4,instrumentStateGraphCompile:()=>p3,instrumentOpenAiClient:()=>s4,instrumentLangGraph:()=>QJ,instrumentGoogleGenAIClient:()=>e4,instrumentAnthropicAiClient:()=>r4,initOpenTelemetry:()=>SY,init:()=>v70,inboundFiltersIntegration:()=>f8,httpServerSpansIntegration:()=>pZ,httpServerIntegration:()=>lZ,httpIntegration:()=>M5,httpHeadersToSpanAttributes:()=>T8,honoIntegration:()=>UY,hapiIntegration:()=>VY,growthbookIntegration:()=>x2,graphqlIntegration:()=>_$,googleGenAIIntegration:()=>TY,getTraceMetaTags:()=>L3,getTraceData:()=>N9,getSpanStatusFromHttpCode:()=>D6,getSpanDescendants:()=>l7,getSentryRelease:()=>RJ,getRootSpan:()=>D0,getIsolationScope:()=>x,getGlobalScope:()=>D8,getDefaultIntegrations:()=>s2,getCurrentScope:()=>i,getClient:()=>k,getAutoPerformanceIntegrations:()=>d5,getActiveSpan:()=>s0,genericPoolIntegration:()=>LY,generateInstrumentOnce:()=>S,functionToStringIntegration:()=>E8,fsIntegration:()=>Vw,flush:()=>t7,firebaseIntegration:()=>yY,featureFlagsIntegration:()=>A3,fastifyIntegration:()=>y$,extraErrorDataIntegration:()=>M3,expressIntegration:()=>U$,expressErrorHandler:()=>pK,eventFiltersIntegration:()=>v4,endSession:()=>k8,disableAnrDetectionForCallback:()=>SK,defaultStackParser:()=>kJ,dedupeIntegration:()=>P3,dataloaderIntegration:()=>U2,cron:()=>vK,createTransport:()=>o9,createSentryWinstonTransport:()=>_K,createLangChainCallbackHandler:()=>JJ,createGetModuleFromFilename:()=>MJ,createConsolaReporter:()=>h3,continueTrace:()=>o7,contextLinesIntegration:()=>nZ,consoleLoggingIntegration:()=>_3,consoleIntegration:()=>_8,connectIntegration:()=>DY,close:()=>B3,captureSession:()=>U3,captureMessage:()=>s7,captureFeedback:()=>S3,captureException:()=>h,captureEvent:()=>r7,captureConsoleIntegration:()=>C3,captureCheckIn:()=>a7,bunServerIntegration:()=>ez,buildLaunchDarklyFlagUsedHandler:()=>_2,anthropicAIIntegration:()=>IY,anrIntegration:()=>yK,amqplibIntegration:()=>MY,addIntegration:()=>q3,addEventProcessor:()=>F3,addBreadcrumb:()=>N1,Scope:()=>K1,SEMANTIC_ATTRIBUTE_SENTRY_SOURCE:()=>H0,SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE:()=>W6,SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN:()=>f,SEMANTIC_ATTRIBUTE_SENTRY_OP:()=>g,SDK_VERSION:()=>e,OpenFeatureIntegrationHook:()=>sz,NodeClient:()=>C5,BunClient:()=>i2});var d70=q(()=>{p2();N();S70();x70();n2();a2()});function Tu0(Z){let J={},Q=0;while(Q<Z.length){let $=Z[Q];switch($){case"-u":case"--users":J.users=Z[++Q];break;case"--shell":J.shell=Z[++Q];break;case"--cols":J.cols=parseInt(Z[++Q]||"",10);break;case"--rows":J.rows=parseInt(Z[++Q]||"",10);break;case"--debounce":J.debounce=parseInt(Z[++Q]||"",10);break;case"-d":case"--debug":J.debug=!0;break;case"--health-port":J.healthPort=parseInt(Z[++Q]||"",10);break;case"--home-dir":J.homeDir=Z[++Q];break;case"--download-dir":J.downloadDir=Z[++Q];break;case"--auto-download":J.autoDownload=!0;break;case"--help":J.help=!0;break;case"--version":J.version=!0;break;default:if($.startsWith("-"))console.error(`Unknown option: ${$}`),console.error("Use --help for usage information"),process.exit(1)}Q++}return J}function j7(Z,J,Q){if(Z!==void 0)return Z;return process.env[J]||Q}function Eu0(Z,J,Q){if(Z!==void 0)return Z;let $=process.env[J];if(!$)throw Error(`Missing required config: ${Q}
|
|
41
41
|
Provide via --${Q.toLowerCase().replace(/_/g,"-")} or ${J} environment variable`);return $}function c5(Z,J,Q){if(Z!==void 0&&!isNaN(Z))return Z;let $=process.env[J];if($){let Y=parseInt($,10);if(!isNaN(Y))return Y}return Q}function c70(Z,J,Q){if(Z!==void 0)return Z;let $=process.env[J];if($!==void 0)return $.toLowerCase()==="true";return Q}function JG(Z,J,Q,$){if(Z<J)return console.warn(`[Config] ${$}=${Z} is below minimum ${J}, using ${J}`),J;if(Z>Q)return console.warn(`[Config] ${$}=${Z} is above maximum ${Q}, using ${Q}`),Q;return Z}function m70(){let Z=Tu0(process.argv.slice(2));if(Z.help)console.log(Au0),process.exit(0);if(Z.version)console.log(`the-link version ${Iu0}`),process.exit(0);return{hub:{url:j7(void 0,"HUB_URL","ws://localhost:8080"),token:Eu0(void 0,"HUB_TOKEN","HUB_TOKEN"),agentName:j7(void 0,"AGENT_NAME",E("os").hostname()||"the-link"),role:j7(void 0,"AGENT_ROLE","worker")},terminal:{shell:j7(Z.shell,"TERMINAL_SHELL",process.env.SHELL||"/bin/bash"),cols:JG(c5(Z.cols,"TERMINAL_COLS",kG),NG,AG,"cols"),rows:JG(c5(Z.rows,"TERMINAL_ROWS",IG),TG,EG,"rows"),homeDir:j7(Z.homeDir,"TERMINAL_HOME_DIR",process.env.HOME||"/")},output:{debounceMs:JG(c5(Z.debounce,"OUTPUT_DEBOUNCE_MS",dG),fG,yG,"debounce"),idleTimeoutMs:c5(void 0,"IDLE_TIMEOUT_MS",iG),rawMode:!0},auth:{allowedUsers:j7(Z.users,"ALLOWED_USERS","").split(",").map((J)=>J.trim()).filter((J)=>J.length>0)},files:{downloadDir:j7(Z.downloadDir,"DOWNLOAD_DIR",""),autoDownload:c70(Z.autoDownload,"AUTO_DOWNLOAD",!0)},debug:c70(Z.debug,"DEBUG",!1),healthPort:JG(c5(Z.healthPort,"HEALTH_PORT",0),uG,lG,"healthPort"),logDir:j7(void 0,"LOG_DIR",""),gcIntervalMs:c5(void 0,"GC_INTERVAL_MS",oG),restartIntervalMs:c5(void 0,"RESTART_INTERVAL_MS",nG)}}var Au0=`
|
|
42
42
|
the-link: Hub 360 Terminal Agent
|
|
43
43
|
|
|
@@ -97,7 +97,7 @@ Environment variables can also be set in a .env file.
|
|
|
97
97
|
`).join(""),z=WO(W,"w");try{N50(z,Buffer.from(K,"utf-8")),XO(z)}finally{YO(z)}Zl0(W,this.path),this._fsyncDir(A50(this.path)),l5.debug(`FiredLog.trimOlderThan: kept ${X.length} of ${$.length} lines`)}catch(K){l5.error(`FiredLog.trimOlderThan: failed to rotate WAL: ${K}`);try{if(k50(W))Jl0(W)}catch{}}}async _readLines(){try{if(!k50(this.path))return[];return(await Bun.file(this.path).text()).split(`
|
|
98
98
|
`).map((J)=>J.trim()).filter((J)=>J.length>0)}catch(Z){return l5.error(`FiredLog._readLines: failed to read "${this.path}": ${Z}`),[]}}_appendDurable(Z){let J=WO(this.path,"a");try{N50(J,Buffer.from(Z,"utf-8")),XO(J)}finally{YO(J)}}_fsyncDir(Z){try{let J=WO(Z,"r");try{XO(J)}finally{YO(J)}}catch{}}}var l5;var I50=q(()=>{b6();l5=f0("fired-log")});function T50(Z){return Yl0[Z.toLowerCase()]??null}var Yl0;var E50=q(()=>{Yl0={"ctrl+c":"\x03","ctrl+d":"\x04","ctrl+z":"\x1A","ctrl+l":"\f","ctrl+a":"\x01","ctrl+e":"\x05","ctrl+u":"\x15","ctrl+k":"\v","ctrl+w":"\x17","ctrl+r":"\x12",enter:"\r",tab:"\t",space:" ",escape:"\x1B",esc:"\x1B",backspace:"\x7F",delete:"\x1B[3~",up:"\x1B[A",down:"\x1B[B",right:"\x1B[C",left:"\x1B[D",home:"\x1B[H",end:"\x1B[F",page_up:"\x1B[5~",pageup:"\x1B[5~",page_down:"\x1B[6~",pagedown:"\x1B[6~",f1:"\x1BOP",f2:"\x1BOQ",f3:"\x1BOR",f4:"\x1BOS",f5:"\x1B[15~",f6:"\x1B[17~",f7:"\x1B[18~",f8:"\x1B[19~",f9:"\x1B[20~",f10:"\x1B[21~",f11:"\x1B[23~",f12:"\x1B[24~","shift+tab":"\x1B[Z","shift+up":"\x1B[1;2A","shift+down":"\x1B[1;2B","shift+right":"\x1B[1;2C","shift+left":"\x1B[1;2D","shift+enter":"\x1BOM","shift+home":"\x1B[1;2H","shift+end":"\x1B[1;2F","alt+f":"\x1Bf","alt+b":"\x1Bb","alt+d":"\x1Bd","alt+enter":"\x1B\r",yes:`y
|
|
99
99
|
`,no:`n
|
|
100
|
-
`}});function Xl0(Z){return new Promise((J)=>setTimeout(J,Z))}function GO(Z=Date.now){let J=parseInt(process.env.FAKE_CLOCK_OFFSET_MS??process.env.DEBUG_CLOCK_SKEW_MS??"0",10);if(Number.isNaN(J)||J===0)return Z;return()=>Z()+J}class HO{state;firedLog;terminal;sendFrame;clock;timer=null;tickCount=0;earliestExecuteAt=new Map;handledRunNowIds=new Set;constructor(Z){this.state=Z.state,this.firedLog=Z.firedLog,this.terminal=Z.terminal,this.sendFrame=Z.sendFrame,this.clock=Z.clock??Wl0}start(){if(this.timer!==null)return;this.timer=setInterval(()=>{this.tick()},Gl0),K8.info("ClientDecisionLoop started")}stop(){if(this.timer===null)return;clearInterval(this.timer),this.timer=null,K8.info("ClientDecisionLoop stopped")}async handleRunNow(Z){let{scheduleId:J,executionId:Q}=Z;if(this.handledRunNowIds.has(Q)){K8.debug(`handleRunNow: dedupe executionId=${Q} \u2014 already handled`);return}this.handledRunNowIds.add(Q);let $=this.state.get(J);if(!$){K8.warn(`handleRunNow: unknown scheduleId=${J} executionId=${Q}`);return}await this.executeSchedule($,Q)}async executeSchedule(Z,J){await this._dispatchSteps(Z);try{this.terminal.invalidateReadCache?.()}catch{}let Q=new Date(this.clock()).toISOString(),$=`${Z.id}@${Z.nextRunAt}`,Y={type:"schedules:result",scheduleId:Z.id,key:$,result:"ok",executedAt:Q,...J!==void 0?{executionId:J}:{}};this.sendFrame(Y)}async tick(){let Z=++this.tickCount,J=this.clock(),Q=J+this.state.serverSkewMs,$=process.env.DEBUG_SCHEDULER==="1";for(let Y of this.state.schedules.values()){let X,W;if(Y.status!=="active"){if(X="skip_status",W=`status=${Y.status}`,$)this._traceDecision(Z,Y,Q,X,W);continue}if(Y.disabledUntil){let V=Date.parse(Y.disabledUntil);if(Number.isFinite(V)&&V>Q){if(X="skip_disabled",W=`disabledUntil=${Y.disabledUntil} > now`,$)this._traceDecision(Z,Y,Q,X,W);continue}}if(!Y.nextRunAt){if(X="skip_status",W="nextRunAt=null",$)this._traceDecision(Z,Y,Q,X,W);continue}let K=`${Y.id}@${Y.nextRunAt}`;if(this.state.firedSet.has(K)){if(X="skip_fired",W=`firedSet has key=${K}`,$)this._traceDecision(Z,Y,Q,X,W);continue}let z=Date.parse(Y.nextRunAt);if(!Number.isFinite(z)||z>Q){if(X="skip_not_due",W=`nextRunAt=${Y.nextRunAt} > now=${Q}`,$)this._traceDecision(Z,Y,Q,X,W);continue}if(Math.abs(this.state.serverSkewMs)>f50){if(X="refuse_skew_exceeded",W=`|serverSkewMs|=${Math.abs(this.state.serverSkewMs)} > ${f50}`,K8.warn(`ClientDecisionLoop: refuse_skew_exceeded scheduleId=${Y.id} skewMs=${this.state.serverSkewMs}`),this._emitSkewInvariant(Y.id,this.state.serverSkewMs),$)this._traceDecision(Z,Y,Q,X,W);continue}if(Q-z>Kl0){let V=this.earliestExecuteAt.get(K);if(V===void 0){let F=Math.floor(Math.random()*zl0);V=J+F,this.earliestExecuteAt.set(K,V)}if(J<V){if(X="skip_earliest_execute",W=`catch-up jitter: localNow=${J} < earliestExecuteAt=${V}`,$)this._traceDecision(Z,Y,Q,X,W);continue}}if(X="fire",W=`nextRunAt=${Y.nextRunAt} <= now=${Q}`,$)this._traceDecision(Z,Y,Q,X,W);if(!this.state.rememberFired(Y.id,Y.nextRunAt)&&Y.nextRunAt)this._emitDuplicateFiredSetInvariant(Y.id,Y.nextRunAt);let B=new Date(J).toISOString();await this.firedLog.append({scheduleId:Y.id,key:K,result:"pending",executedAt:B,ack:!1}),this.earliestExecuteAt.delete(K);try{await this._executeSteps(Y);let V={type:"schedules:result",scheduleId:Y.id,key:K,result:"ok",executedAt:B};this.sendFrame(V)}catch(V){let F=V instanceof Error?V.message:String(V),U={type:"schedules:result",scheduleId:Y.id,key:K,result:`error: ${F}`,executedAt:B};this.sendFrame(U),K8.error(`ClientDecisionLoop: execution error scheduleId=${Y.id}: ${F}`)}}}async _executeSteps(Z){let J=Z.windowIndex??0;if((Z.windowTarget??"main")!=="main")await this._assertWindowExists(J);await this._dispatchSteps(Z)}async _dispatchSteps(Z){let J=Z.windowTarget??"main",Q=Z.windowIndex??0;if(J!=="main")try{await this.terminal.selectWindow?.(Q)}catch{}let $=120;for(let Y=0;Y<Z.steps.length;Y++){let X=Z.steps[Y];if(Y>0)await Xl0($);if(X.type==="prompt")await this.terminal.writeRaw(X.value);else if(X.type==="key"){let W=T50(X.value);if(W!==null)await this.terminal.writeRaw(W);else K8.warn(`unknown key "${X.value}" \u2014 skipping`)}}try{this.terminal.invalidateReadCache?.()}catch{}}async _assertWindowExists(Z){let J=await this.terminal.listWindows();if(!Array.isArray(J)||J.length===0)throw Error(`window ${Z} does not exist (no active session or tmux unavailable)`);for(let Q of J){let $=Q.indexOf(":");if($===-1)continue;let Y=parseInt(Q.slice(0,$).trim(),10);if(Number.isFinite(Y)&&Y===Z)return}throw Error(`window ${Z} does not exist`)}_traceDecision(Z,J,Q,$,Y){K8.info("decision tick",{tick:Z,id:J.id,nextRunAt:J.nextRunAt,now:Q,skew:this.state.serverSkewMs,firedSet_has:J.nextRunAt?this.state.firedSet.has(`${J.id}@${J.nextRunAt}`):!1,decision:$,reason:Y})}_emitSkewInvariant(Z,J){try{K8.warn("invariant skew_exceeds_limit",{scheduleId:Z,skewMs:J,localNow:this.clock(),kind:"skew_exceeds_limit"})}catch{}try{let Q={type:"schedules:invariant",kind:"skew_exceeds_limit",scheduleId:Z,observedAt:new Date(this.clock()).toISOString(),details:{skewMs:J}};this.sendFrame(Q)}catch{}}_emitDuplicateFiredSetInvariant(Z,J){try{K8.warn("invariant duplicate_firedSet_insert",{scheduleId:Z,nextRunAt:J,kind:"duplicate_firedSet_insert"})}catch{}try{let Q={type:"schedules:invariant",kind:"duplicate_firedSet_insert",scheduleId:Z,observedAt:new Date(this.clock()).toISOString(),details:{nextRunAt:J}};this.sendFrame(Q)}catch{}}}var K8,Wl0,f50=300000,Kl0=60000,zl0=60000,Gl0=1000;var y50=q(()=>{E50();b6();K8=f0("client-decision-loop");Wl0=GO()});import*as P1 from"fs";import*as XG from"path";class BO{config;events;ws=null;_isConnected=!1;isShuttingDown=!1;reconnectAttempts=0;reconnectTimeout=null;seqCounter=1;pingInterval=null;pongTimeout=null;lastPongAt=0;authTimeout=null;statusInterval=null;sessionToken=null;_agentId=null;permanentAuthFailure=!1;scheduleState=new $O({clock:GO()});firedLog=new zO;decisionLoop;snapshotTimeoutTimer=null;__getPermanentAuthFailureForTests(){return this.permanentAuthFailure}__handleAuthResultForTests(Z){this.handleAuthResult(Z)}__getReconnectAttemptsForTests(){return this.reconnectAttempts}__setReconnectAttemptsForTests(Z){this.reconnectAttempts=Z}__setShuttingDownForTests(Z){this.isShuttingDown=Z}uploadChunks=new Map;constructor(Z,J){this.config=Z,this.events=J,this.decisionLoop=new HO({state:this.scheduleState,firedLog:this.firedLog,terminal:null,sendFrame:(Q)=>this.sendJson(Q)})}setTerminal(Z){this.decisionLoop.terminal=Z}get wsUrl(){return`${this.config.url.replace(/\/$/,"")}/ws/agent`}async connect(){Q0.info("Connecting to Hub 360..."),this.connectWebSocket()}async disconnect(){if(Q0.info("Disconnecting..."),this.isShuttingDown=!0,this.stopPingPong(),this.stopStatusHeartbeat(),this.decisionLoop.stop(),this.stopSnapshotTimeout(),this.authTimeout)clearTimeout(this.authTimeout),this.authTimeout=null;if(this.reconnectTimeout)clearTimeout(this.reconnectTimeout),this.reconnectTimeout=null;if(this.ws)this.ws.close(),this.ws=null;this._isConnected=!1}sendOutput(Z){if(!this.ws||this.ws.readyState!==WebSocket.OPEN)return;let J=JSON.stringify({type:"output",data:Z,seq:this.seqCounter++});this.ws.send(J)}sendCommandResult(Z,J){this.sendJson({type:"command_result",action:Z,data:J})}sendStatus(Z,J){if(!this.ws||this.ws.readyState!==WebSocket.OPEN)return;let Q=JSON.stringify({type:"status",memory:Z,idle:J});this.ws.send(Q)}get isConnected(){return this._isConnected}get agentId(){return this._agentId}getLastPongAt(){return this.lastPongAt}connectWebSocket(){if(this.isShuttingDown)return;if(this.ws){this.ws.onclose=null,this.ws.onerror=null,this.ws.onmessage=null;try{this.ws.close()}catch{}this.ws=null}Q0.info(`Connecting WebSocket to ${this.wsUrl}...`),this.ws=new WebSocket(this.wsUrl),this.ws.onopen=()=>{Q0.info("WebSocket connected"),this.authenticate(),this.authTimeout=setTimeout(()=>{if(!this._isConnected)Q0.error("Authentication timeout \u2014 no auth_result received"),this.forceReconnect()},xG)},this.ws.onmessage=(Z)=>{if(typeof Z.data==="string")this.handleWebSocketMessage(Z.data)},this.ws.onerror=(Z)=>{Q0.error("WebSocket error:",Z)},this.ws.onclose=(Z)=>{if(Q0.info(`WebSocket closed: code=${Z.code}, reason=${Z.reason}`),this.stopPingPong(),this.stopStatusHeartbeat(),this.decisionLoop.stop(),this.stopSnapshotTimeout(),this.authTimeout)clearTimeout(this.authTimeout),this.authTimeout=null;if(this._isConnected=!1,this.events.onDisconnected(),Z.code===4000)Q0.info("Connection replaced by new instance with same name \u2014 exiting"),process.exit(0);if(!this.isShuttingDown)this.scheduleReconnect()}}authenticate(){let Z=this.sessionToken||this.config.token,J=JSON.stringify({type:"auth",token:Z,name:this.config.agentName,role:this.config.role||"worker",version:H9});this.ws?.send(J),Q0.info(`Sent auth (using ${this.sessionToken?"session token":"registration token"})`)}handleWebSocketMessage(Z){try{let J=JSON.parse(Z);switch(J.type){case"auth_result":this.handleAuthResult(J);break;case"input":this.handleInput(J);break;case"command":this.handleCommand(J);break;case"file_upload":this.handleFileUpload(J);break;case"file_upload_chunk":this.handleFileUploadChunk(J);break;case"file_download_request":this.handleFileDownloadRequest(J);break;case"proxy_request":this.handleProxyRequest(J);break;case"error":Q0.error(`Server error: ${J.message} (code: ${J.code||"none"})`);break;case"schedules:snapshot":if(D50(J))this.handleScheduleSnapshot(J);break;case"schedules:update":if(O50(J))this.handleScheduleUpdate(J);break;case"schedules:run-now":if(L50(J))this.handleScheduleRunNow(J);break;case"schedules:result:ack":if(C50(J))this.handleScheduleResultAck(J);break;case"schedules:time":if(P50(J))this.handleScheduleTime(J);break;default:if(this.pongTimeout)clearTimeout(this.pongTimeout),this.pongTimeout=null;this.lastPongAt=Date.now();break}}catch(J){Q0.warn(`Failed to parse WebSocket message: ${J}`)}}handleAuthResult(Z){if(this.authTimeout)clearTimeout(this.authTimeout),this.authTimeout=null;if(Z.status==="ok"){if(Q0.info(`Authenticated successfully (agentId: ${Z.agentId||"unknown"})`),this._isConnected=!0,this.reconnectAttempts=0,Z.sessionToken)this.sessionToken=Z.sessionToken;if(Z.agentId)this._agentId=Z.agentId;this.events.onConnected(),this.startPingPong(),this.startStatusHeartbeat(),this.startSnapshotTimeout();return}let J=Z.code,Q=Z.error||"unknown error";if(J&&Hl0.has(J)){this.permanentAuthFailure=!0,Q0.error(`Permanent auth failure: ${J} \u2014 ${Q}. Stopping reconnect loop.`),Bl0(1);return}if(Q0.error(`Authentication failed: ${Q}${J?` (code: ${J})`:""}`),J==="rate_limited")this.reconnectAttempts=Math.max(this.reconnectAttempts,6);if(this.sessionToken)Q0.info("Session token expired, clearing and will retry with registration token"),this.sessionToken=null;this.forceReconnect()}handleInput(Z){this.events.onMessage(Z.data,this.config.agentName,Z.source,"",void 0)}handleCommand(Z){switch(Q0.info(`Received command: ${Z.action}`),Z.action){case"kill":if(this.events.onCommand)this.events.onCommand("kill");break;case"resize":{let J=Number(Z.params?.cols)||120,Q=Number(Z.params?.rows)||40;this.events.onResize(J,Q);break}case"restart":if(this.events.onCommand)this.events.onCommand("restart");break;case"self-update":if(this.events.onCommand)this.events.onCommand("self-update");break;case"pause":Q0.info("Pause command received (not implemented)");break;case"resume":Q0.info("Resume command received (not implemented)");break;case"session_info":case"capture_screen":case"send_to_window":case"send_keys_to_window":case"new_window":case"kill_window":case"git_scan":case"git_fetch":case"git_pull":case"git_reset":case"git_branches":case"git_checkout":case"git_diff":case"list_panes":case"select_pane":case"next_pane":case"prev_pane":case"list_windows":case"select_window":case"next_window":case"prev_window":case"list_instances":case"create_instance":case"start_instance":case"stop_instance":case"delete_instance":case"list_directory":case"read_file":case"write_file":case"delete_file":case"install_extension":if(this.events.onCommand)this.events.onCommand(Z.action,Z.params);break;default:Q0.warn(`Unknown command action: ${Z.action}`)}}async handleFileUpload(Z){Q0.info(`Received file upload: ${Z.filename} (${Z.size} bytes)`);try{let J=process.env.DOWNLOAD_DIR||"/tmp/downloads",{mkdir:Q}=await import("fs/promises"),{join:$}=await import("path");await Q(J,{recursive:!0});let Y=Z.filename.replace(/[/\\]/g,"_").replace(/\0/g,"").replace(/\.\./g,"_"),X=$(J,Y),W=Buffer.from(Z.data,"base64");await Bun.write(X,W),Q0.info(`File saved: ${X}`),this.sendJson({type:"file_upload_confirm",filename:Z.filename,path:X,success:!0})}catch(J){Q0.error(`Failed to save uploaded file: ${J.message}`),this.sendJson({type:"file_upload_confirm",filename:Z.filename,path:"",success:!1,error:J.message})}}resolveUploadDestination(Z){if(!Z)return{ok:!0,dir:process.env.DOWNLOAD_DIR||"/tmp/downloads"};if(Z.includes(".."))return{ok:!1,error:"destinationDir must not contain '..'"};if(Z.includes("\x00"))return{ok:!1,error:"destinationDir contains null bytes"};let J=Z;if(!XG.isAbsolute(Z)){let $=process.env.HOME||"/home";J=XG.join($,Z)}let Q;try{Q=P1.statSync(J)}catch($){if($?.code==="ENOENT")return{ok:!1,error:`destinationDir does not exist: ${J}`};if($?.code==="EACCES"||$?.code==="EPERM")return{ok:!1,error:`destinationDir is not accessible: ${J}`};return{ok:!1,error:`destinationDir stat failed: ${J}`}}if(!Q.isDirectory())return{ok:!1,error:`destinationDir is not a directory: ${J}`};try{P1.accessSync(J,P1.constants.W_OK)}catch{return{ok:!1,error:`destinationDir is not writable: ${J}`}}return{ok:!0,dir:J}}async handleFileUploadChunk(Z){let{transferId:J,filename:Q,chunkIndex:$,totalChunks:Y,size:X}=Z,W=this.uploadChunks.get(J);if(!W)Q0.info(`Receiving chunked upload: ${Q} (${Y} chunks, transferId: ${J})`),W={chunks:Array(Y),received:0,totalChunks:Y,filename:Q,size:X,timer:setTimeout(()=>{this.uploadChunks.delete(J),Q0.error(`Chunked upload timed out: ${Q} (received ${W.received}/${Y}, transferId: ${J})`),this.sendJson({type:"file_upload_confirm",transferId:J,filename:Q,path:"",success:!1,error:`Upload timed out (30s since last chunk, received ${W.received}/${Y})`})},30000)},this.uploadChunks.set(J,W);if(!Number.isInteger($)||$<0||$>=W.totalChunks){Q0.error(`Invalid chunk index for upload: ${Q} (chunkIndex: ${$}, totalChunks: ${W.totalChunks})`);return}if(W.chunks[$]===void 0)W.received++;if(W.chunks[$]=Z.data,clearTimeout(W.timer),W.timer=setTimeout(()=>{this.uploadChunks.delete(J),Q0.error(`Chunked upload timed out: ${Q} (received ${W.received}/${Y}, transferId: ${J})`),this.sendJson({type:"file_upload_confirm",transferId:J,filename:Q,path:"",success:!1,error:`Upload timed out (30s since last chunk, received ${W.received}/${Y})`})},30000),W.received===W.totalChunks){clearTimeout(W.timer),this.uploadChunks.delete(J);try{let K=Array.from(W.chunks,(D)=>D?Buffer.from(D,"base64"):Buffer.alloc(0)),z=Buffer.concat(K),G=this.resolveUploadDestination(Z.destinationDir);if(!G.ok){Q0.warn(`Chunked upload rejected \u2014 bad destinationDir: ${G.error}`),this.sendJson({type:"file_upload_confirm",transferId:J,filename:W.filename,path:"",success:!1,error:G.error,errorCode:"permission_denied"});return}let H=G.dir,{join:B}=await import("path");if(!Z.destinationDir){let{mkdir:D}=await import("fs/promises");await D(H,{recursive:!0})}let V=W.filename.replace(/[/\\]/g,"_").replace(/\0/g,"").replace(/\.\./g,"_"),F=B(H,V),{randomBytes:U}=await import("crypto"),w=`${F}.tmp-${process.pid}-${U(4).toString("hex")}`;if(await Bun.write(w,z),Z.overwrite)P1.renameSync(w,F);else try{P1.linkSync(w,F),P1.unlinkSync(w)}catch(D){if(D?.code==="EEXIST"){try{P1.unlinkSync(w)}catch{}Q0.warn(`Chunked upload rejected \u2014 file exists and overwrite not set: ${F}`),this.sendJson({type:"file_upload_confirm",transferId:J,filename:W.filename,path:F,success:!1,error:"File already exists",errorCode:"exists"});return}if(D?.code==="EXDEV"){if(P1.existsSync(F)){try{P1.unlinkSync(w)}catch{}Q0.warn(`Chunked upload rejected (EXDEV fallback) \u2014 file exists: ${F}`),this.sendJson({type:"file_upload_confirm",transferId:J,filename:W.filename,path:F,success:!1,error:"File already exists",errorCode:"exists"});return}P1.renameSync(w,F)}else{try{P1.unlinkSync(w)}catch{}throw D}}Q0.info(`File saved: ${F} (${Y} chunks reassembled)`),this.sendJson({type:"file_upload_confirm",transferId:J,filename:W.filename,path:F,success:!0})}catch(K){Q0.error(`Failed to save chunked upload: ${K.message}`),this.sendJson({type:"file_upload_confirm",transferId:J,filename:W.filename,path:"",success:!1,error:K.message})}}}async handleFileDownloadRequest(Z){Q0.info(`File download request: ${Z.path} (requestId: ${Z.requestId})`);try{if(Z.path.includes("..")||Z.path.includes("\x00"))throw Error("Invalid file path");let J=Z.path;if(J.startsWith("~")){let B=process.env.HOME||"/home";J=J.replace("~",B)}let Q=Bun.file(J);if(!await Q.exists())throw Error(`File not found: ${Z.path}`);let Y=await Q.stat(),X=838860800;if(Y.size>X)throw Error(`File too large: ${(Y.size/1024/1024).toFixed(1)}MB (max 800MB)`);let W=await Q.arrayBuffer(),K=Buffer.from(W),z=J.split("/").pop()||"file",G=524288,H=Math.ceil(K.length/G)||1;Q0.info(`Sending file: ${z} (${Y.size} bytes, ${H} chunk${H>1?"s":""})`);for(let B=0;B<H;B++){let V=B*G,F=Math.min(V+G,K.length),U=K.subarray(V,F);if(this.sendJson({type:"file_download_chunk",requestId:Z.requestId,chunkIndex:B,totalChunks:H,data:U.toString("base64"),filename:z,size:Y.size}),B%10===9)await new Promise((w)=>setTimeout(w,0))}}catch(J){Q0.error(`File download failed: ${J.message}`),this.sendJson({type:"file_download_response",requestId:Z.requestId,filename:"",data:"",size:0,error:J.message})}}handleProxyRequest(Z){if(this.events.onProxyRequest)this.events.onProxyRequest(Z);else this.sendJson({type:"proxy_response",requestId:Z.requestId,statusCode:502,headers:{"content-type":"application/json"},body:JSON.stringify({error:"Port forwarding not supported by this agent"}),bodyEncoding:"utf8"})}sendProxyResponse(Z){this.sendJson({type:"proxy_response",...Z})}async handleScheduleSnapshot(Z){this.scheduleState.applySnapshot(Z.serverNow,Z.schedules),this.stopSnapshotTimeout(),this.decisionLoop.start();let J=await this.firedLog.replayUnacked();if(J.length>0){let Q={type:"schedules:replay",entries:J.map(($)=>({scheduleId:$.scheduleId,key:$.key,result:$.result,executedAt:$.executedAt,...$.executionId!==void 0?{executionId:$.executionId}:{}}))};this.sendJson(Q),Q0.info(`Replayed ${J.length} unacked WAL entries`)}Q0.info(`Schedule snapshot applied: ${Z.schedules.length} schedules, serverSkewMs=${this.scheduleState.serverSkewMs}`),this.events.onSchedulerReady?.(this.scheduleState.schedules.size)}handleScheduleUpdate(Z){this.scheduleState.updateServerSkew(Z.serverNow),this.scheduleState.applyUpdate(Z.serverNow,Z.op,Z.schedule)}async handleScheduleRunNow(Z){this.scheduleState.updateServerSkew(Z.serverNow),await this.decisionLoop.handleRunNow(Z)}async handleScheduleResultAck(Z){let J=`${Z.scheduleId}@${Z.nextRunAt??"null"}`;await this.firedLog.markAcked(J),Q0.debug(`schedules:result:ack scheduleId=${Z.scheduleId} key=${J} persisted=${Z.persisted}`)}handleScheduleTime(Z){this.scheduleState.updateServerSkew(Z.serverNow)}startSnapshotTimeout(){this.stopSnapshotTimeout(),this.snapshotTimeoutTimer=setTimeout(()=>{this.snapshotTimeoutTimer=null,Q0.warn("scheduler.wait_for_snapshot_timeout: no schedules:snapshot received within 60s of auth"),this.sendJson({type:"schedules:diagnostic",kind:"wait_for_snapshot_timeout",observedAt:new Date().toISOString()})},60000)}stopSnapshotTimeout(){if(this.snapshotTimeoutTimer!==null)clearTimeout(this.snapshotTimeoutTimer),this.snapshotTimeoutTimer=null}sendJson(Z){if(!this.ws||this.ws.readyState!==WebSocket.OPEN)return;this.ws.send(JSON.stringify(Z))}scheduleReconnect(){if(this.reconnectTimeout)clearTimeout(this.reconnectTimeout),this.reconnectTimeout=null;let Z=Math.min(SG*Math.pow(2,Math.min(this.reconnectAttempts,10))+Math.random()*1000,_G);this.reconnectAttempts++;let J=`Reconnecting in ${Math.round(Z/1000)}s (attempt ${this.reconnectAttempts})...`;if(this.reconnectAttempts>hG)Q0.error(J);else Q0.info(J);this.reconnectTimeout=setTimeout(()=>{this.connectWebSocket()},Z)}startPingPong(){this.stopPingPong(),this.lastPongAt=Date.now(),this.pingInterval=setInterval(()=>{if(!this.ws||this.ws.readyState!==WebSocket.OPEN)return;if(this.ws.send(JSON.stringify({type:"ping"})),this.pongTimeout)clearTimeout(this.pongTimeout);this.pongTimeout=setTimeout(()=>{Q0.error("Pong timeout \u2014 forcing reconnect"),this.forceReconnect()},vG)},bG)}stopPingPong(){if(this.pingInterval)clearInterval(this.pingInterval),this.pingInterval=null;if(this.pongTimeout)clearTimeout(this.pongTimeout),this.pongTimeout=null}startStatusHeartbeat(){this.stopStatusHeartbeat(),this.statusInterval=setInterval(()=>{let Z=process.memoryUsage();this.sendStatus(Z.rss,!1)},gG)}stopStatusHeartbeat(){if(this.statusInterval)clearInterval(this.statusInterval),this.statusInterval=null}forceReconnect(){if(this.stopPingPong(),this.stopStatusHeartbeat(),this.authTimeout)clearTimeout(this.authTimeout),this.authTimeout=null;if(this.ws){try{this.ws.close()}catch{}this.ws=null}if(this._isConnected=!1,this.events.onDisconnected(),!this.isShuttingDown)this.scheduleReconnect()}}var Q0,Hl0,Bl0=(Z)=>{setTimeout(()=>{process.exit(Z)},100)};var S50=q(()=>{b6();M50();R50();I50();y50();Q0=f0("LinkServer"),Hl0=new Set(["invalid_token","token_expired","token_race","ip_not_whitelisted","org_suspended","plan_limit"])});class VO{client;constructor(Z,J){this.client=new BO({url:Z.hub.url,token:Z.hub.token,agentName:Z.hub.agentName,role:Z.hub.role||"worker",debug:Z.debug},{...J,onResize:J.onResize||(()=>{}),onCommand:J.onCommand,onProxyRequest:J.onProxyRequest})}async connect(){return this.client.connect()}async disconnect(){return this.client.disconnect()}isWebSocketConnected(){return this.client.isConnected}getLastPongAt(){return this.client.getLastPongAt()}sendCommandResult(Z,J){this.client.sendCommandResult(Z,J)}sendProxyResponse(Z){this.client.sendProxyResponse(Z)}}function _50(Z,J){return new VO(Z,J)}function YQ(Z){return Z instanceof VO}var h50=q(()=>{S50()});import*as F0 from"fs";import*as A0 from"path";import*as b50 from"crypto";function XQ(Z){if(!Z)return!0;let J=A0.resolve(Z);return J==="/"||J===""}function UO(Z){if(XQ(Z))return null;try{let J=F0.realpathSync(Z);return XQ(J)?null:J}catch{let J=A0.resolve(Z);return XQ(J)?null:J}}function Ul0(){let Z=[],J=UO(process.env.HOME);if(J)Z.push(J);let Q=UO("/tmp");if(Q)Z.push(Q);return Z}function WG(Z,J){let Q=A0.resolve(Z),$=[...Ul0()];if(J){let Y=UO(J);if(Y)$.push(Y)}return $.filter((Y)=>!XQ(Y)).some((Y)=>{let X=A0.relative(Y,Q);return X===""||!X.startsWith("..")&&!A0.isAbsolute(X)})}function x50(Z){let J=Math.min(Z.length,FO);if(J===0)return!1;let Q=J===Z.length?Z:Z.subarray(0,J);for(let X=0;X<J;X++)if(Q[X]===0)return!0;let $=J;if(J<Z.length){while($>0){if((Q[$-1]&192)!==128)break;$--}if($>0){if((Q[$-1]&128)!==0)$--}}if($>0)try{let X=$===Q.length?Q:Q.subarray(0,$);return new TextDecoder("utf-8",{fatal:!0}).decode(X),!1}catch{}let Y=0;for(let X=0;X<J;X++){let W=Q[X];if(W!==9&&W!==10&&W!==13&&(W<32||W>126))Y++}return Y/J>Fl0}function g50(Z,J=""){let Q=A0.resolve(Z),$;try{$=F0.realpathSync(Q)}catch{$=Q}let Y=$===A0.parse($).root?null:A0.dirname($);if(!WG($,J))return q6.warn(`listDirectory: ${Q} (canonical ${$}) is outside allowed roots`),{path:$,parent:Y,entries:[],error:"Path is outside allowed roots"};try{let X=F0.readdirSync($,{withFileTypes:!0});X.sort((z,G)=>{let H=z.isDirectory(),B=G.isDirectory();if(H!==B)return H?-1:1;return z.name.toLowerCase().localeCompare(G.name.toLowerCase())});let W=[],K=!1;for(let z=0;z<X.length;z++){if(W.length>=Vl0){K=!0;break}let G=X[z],H=A0.join($,G.name),B;try{B=F0.lstatSync(H)}catch{continue}let V=B.isSymbolicLink(),F;if(V)F="symlink";else if(B.isDirectory())F="directory";else if(B.isFile())F="file";else F="other";W.push({name:G.name,type:F,size:B.isFile()?B.size:0,mtime:B.mtimeMs,hidden:G.name.startsWith("."),isSymlink:V})}return W.sort((z,G)=>{let H=z.type==="directory",B=G.type==="directory";if(H!==B)return H?-1:1;return z.name.toLowerCase().localeCompare(G.name.toLowerCase())}),{path:$,parent:Y,entries:W,truncated:K}}catch(X){let W=X?.code??"";if(W==="EACCES"||W==="EPERM")return{path:$,parent:Y,entries:[],error:"Permission denied"};if(W==="ENOENT")return{path:$,parent:Y,entries:[],error:"Directory not found"};if(W==="ENOTDIR")return{path:$,parent:Y,entries:[],error:"Path is not a directory"};return q6.error(`listDirectory error at ${$}: ${X.message}`),{path:$,parent:Y,entries:[],error:X.message??"Unknown error"}}}function d50(Z,J=""){let Q=A0.resolve(Z),$;try{$=F0.realpathSync(Q)}catch(G){let H=G?.code??"";if(H==="ENOENT")return{path:Q,size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:"File not found",errorCode:"not_found"};if(H==="EACCES"||H==="EPERM")return{path:Q,size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:"Permission denied",errorCode:"permission_denied"};return{path:Q,size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:G.message??"IO error",errorCode:"io_error"}}if(!WG($,J))return q6.warn(`readFile: ${Q} (canonical ${$}) is outside allowed roots`),{path:Q,size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:"Path is outside allowed roots",errorCode:"permission_denied"};let Y;try{Y=F0.lstatSync($)}catch(G){let H=G?.code??"";if(H==="ENOENT")return{path:$,size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:"File not found",errorCode:"not_found"};if(H==="EACCES"||H==="EPERM")return{path:$,size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:"Permission denied",errorCode:"permission_denied"};return{path:$,size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:G.message??"IO error",errorCode:"io_error"}}let{size:X,mtimeMs:W}=Y;if(X>v50)return{path:$,size:X,mtime:W,encoding:"utf8",content:"",isBinary:!1,truncated:!0,error:"File exceeds 2 MB read limit",errorCode:"too_large"};let K;try{K=F0.readFileSync($)}catch(G){let H=G?.code??"";if(H==="EACCES"||H==="EPERM")return{path:$,size:X,mtime:W,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:"Permission denied",errorCode:"permission_denied"};if(H==="ENOENT")return{path:$,size:X,mtime:W,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:"File not found",errorCode:"not_found"};return q6.error(`readFile error at ${$}: ${G.message}`),{path:$,size:X,mtime:W,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:G.message??"IO error",errorCode:"io_error"}}let z=K.length>FO?K.slice(0,FO):K;if(x50(z))return{path:$,size:X,mtime:W,encoding:"base64",content:"",isBinary:!0,truncated:!1};return{path:$,size:X,mtime:W,encoding:"utf8",content:K.toString("utf8"),isBinary:!1,truncated:!1}}function c50(Z,J,Q,$=""){let Y=A0.resolve(Z);try{if(F0.lstatSync(Y).isSymbolicLink())return q6.warn(`writeFile: refusing to write through existing symlink ${Y}`),{path:Y,success:!1,error:"Refusing to write through a symlink",errorCode:"permission_denied"}}catch{}let X,W=null;try{X=F0.realpathSync(Y)}catch(U){let w=U?.code??"";if(w==="ENOENT"){let D=A0.dirname(Y);try{W=F0.realpathSync(D),X=A0.join(W,A0.basename(Y))}catch(L){let C=L?.code??"";if(C==="ENOENT")return{path:Y,success:!1,error:"Parent directory not found",errorCode:"not_found"};if(C==="EACCES"||C==="EPERM")return{path:Y,success:!1,error:"Permission denied",errorCode:"permission_denied"};return{path:Y,success:!1,error:L.message??"IO error",errorCode:"io_error"}}}else if(w==="EACCES"||w==="EPERM")return{path:Y,success:!1,error:"Permission denied",errorCode:"permission_denied"};else return{path:Y,success:!1,error:U.message??"IO error",errorCode:"io_error"}}let K=W??X;if(!WG(K,$))return q6.warn(`writeFile: ${Y} (canonical target ${K}) is outside allowed roots`),{path:Y,success:!1,error:"Path is outside allowed roots",errorCode:"permission_denied"};let z=Buffer.from(J,"utf8");if(z.length>v50)return{path:X,success:!1,error:"Content exceeds 2 MB write limit",errorCode:"too_large"};if(x50(z))return{path:X,success:!1,error:"Binary content refused",errorCode:"binary_refused"};if(Q!==void 0)try{let U=F0.lstatSync(X);if(Math.round(U.mtimeMs)!==Math.round(Q))return q6.warn(`writeFile: mtime mismatch at ${X} (expected ${Q}, got ${U.mtimeMs})`),{path:X,success:!1,error:"File was modified since last read",errorCode:"mtime_mismatch"}}catch(U){if((U?.code??"")!=="ENOENT")return{path:X,success:!1,error:U.message??"IO error",errorCode:"io_error"}}if(W===null)try{F0.accessSync(X,F0.constants.W_OK)}catch(U){let w=U?.code??"";if(w==="EACCES"||w==="EPERM")return{path:X,success:!1,error:"Permission denied",errorCode:"permission_denied"}}let G=A0.dirname(X),H=A0.basename(X),B=b50.randomBytes(8).toString("hex"),V=`.${H}.tmp-${process.pid}-${B}`,F=A0.join(G,V);try{F0.writeFileSync(F,z),F0.renameSync(F,X);let U=F0.lstatSync(X);return q6.info(`writeFile: wrote ${U.size} bytes to ${X}`),{path:X,success:!0,mtime:U.mtimeMs,size:U.size}}catch(U){try{F0.unlinkSync(F)}catch{}let w=U?.code??"";if(w==="EACCES"||w==="EPERM")return{path:X,success:!1,error:"Permission denied",errorCode:"permission_denied"};if(w==="ENOENT")return{path:X,success:!1,error:"Parent directory not found",errorCode:"not_found"};return q6.error(`writeFile error at ${X}: ${U.message}`),{path:X,success:!1,error:U.message??"IO error",errorCode:"io_error"}}}function m50(Z,J=""){let Q=A0.resolve(Z);try{if(F0.lstatSync(Q).isSymbolicLink())return q6.warn(`deleteFile: refusing to delete through symlink ${Q}`),{path:Z,success:!1,error:"Refusing to delete through a symbolic link",errorCode:"permission_denied"}}catch(X){let W=X?.code??"";if(W==="ENOENT")return{path:Z,success:!1,error:"File not found",errorCode:"not_found"};if(W==="EACCES"||W==="EPERM")return{path:Z,success:!1,error:"Permission denied",errorCode:"permission_denied"};return{path:Z,success:!1,error:X.message??"IO error",errorCode:"io_error"}}let $;try{$=F0.realpathSync(Q)}catch(X){let W=X?.code??"";if(W==="ENOENT")return{path:Z,success:!1,error:"File not found",errorCode:"not_found"};if(W==="EACCES"||W==="EPERM")return{path:Z,success:!1,error:"Permission denied",errorCode:"permission_denied"};return{path:Z,success:!1,error:X.message??"IO error",errorCode:"io_error"}}if(!WG($,J))return q6.warn(`deleteFile: ${Z} (canonical ${$}) is outside allowed roots`),{path:Z,success:!1,error:"Path is outside allowed roots",errorCode:"permission_denied"};let Y;try{Y=F0.lstatSync($)}catch(X){if((X?.code??"")==="ENOENT")return{path:$,success:!1,error:"File not found",errorCode:"not_found"};return{path:$,success:!1,error:X.message??"IO error",errorCode:"io_error"}}if(Y.isSymbolicLink())return q6.warn(`deleteFile: refusing to delete symlink ${$}`),{path:$,success:!1,error:"Refusing to delete a symlink",errorCode:"permission_denied"};if(Y.isDirectory())return{path:$,success:!1,error:"Cannot delete a directory",errorCode:"is_directory"};try{return F0.unlinkSync($),q6.info(`deleteFile: deleted ${$}`),{path:$,success:!0}}catch(X){let W=X?.code??"";if(W==="EACCES"||W==="EPERM")return{path:$,success:!1,error:"Permission denied",errorCode:"permission_denied"};if(W==="ENOENT")return{path:$,success:!1,error:"File not found",errorCode:"not_found"};if(W==="EISDIR")return{path:$,success:!1,error:"Cannot delete a directory",errorCode:"is_directory"};return q6.error(`deleteFile error at ${$}: ${X.message}`),{path:$,success:!1,error:X.message??"IO error",errorCode:"io_error"}}}var q6,Vl0=5000,v50=2097152,FO=8192,Fl0=0.3;var u50=q(()=>{b6();q6=f0("explorer")});var wO={};y1(wO,{getRegistryPath:()=>KG,getLogsDir:()=>i50,getLogPath:()=>vY,getHomePathReadOnly:()=>ql0,getHomePath:()=>v6,_setHomePath:()=>jl0,_resetHomePath:()=>wl0});import{mkdirSync as qO}from"fs";import{join as bY}from"path";import{homedir as l50}from"os";function v6(){if(!O7)O7=bY(l50(),p50),qO(O7,{recursive:!0});return O7}function ql0(){return O7||bY(l50(),p50)}function KG(){return bY(v6(),"instances.json")}function i50(){let Z=bY(v6(),"logs");return qO(Z,{recursive:!0}),Z}function vY(Z){return bY(i50(),`${Z}.log`)}function wl0(){O7=null}function jl0(Z){O7=Z,qO(O7,{recursive:!0})}var p50=".the-link",O7=null;var L7=()=>{};var a50={};y1(a50,{resolveUpdatePaths:()=>Ll0,resolveBinaryPath:()=>WQ,performNpmUpdate:()=>Ml0,getInstallType:()=>Pl0,getCurrentSystem:()=>Dl0,detectDeploymentMode:()=>Ol0,applyPlatformFixes:()=>Cl0});import{existsSync as jO,readFileSync as o50}from"fs";import{join as n50}from"path";function Dl0(){let Z=process.platform==="win32"?"windows":process.platform,J=process.arch;return`${Z}-${J}`}function Ol0(){if(jO("/.dockerenv"))return"docker";let Z=process.execPath.split("/").pop()||"";if(Z==="bun"||Z==="bun.exe")return"dev";return"compiled"}function Ll0(){let Z=process.execPath;return{currentBinary:Z,backupBinary:`${Z}.backup`,downloadPath:`${Z}.new`}}async function Cl0(Z){if(process.platform!=="darwin")return;x9.info(`Applying macOS platform fixes to ${Z}`),await Bun.$`xattr -d com.apple.quarantine ${Z}`.quiet().nothrow(),await Bun.$`codesign --sign - --force ${Z}`.quiet().nothrow()}function Pl0(){if(process.env.INSTALL_TYPE==="npm")return"npm";if(process.env.INSTALL_TYPE==="binary")return"binary";try{let{getHomePathReadOnly:Z}=(L7(),oO(wO)),J=n50(Z(),".env");if(jO(J)){let Q=o50(J,"utf-8");for(let $ of Q.split(`
|
|
100
|
+
`}});function Xl0(Z){return new Promise((J)=>setTimeout(J,Z))}function GO(Z=Date.now){let J=parseInt(process.env.FAKE_CLOCK_OFFSET_MS??process.env.DEBUG_CLOCK_SKEW_MS??"0",10);if(Number.isNaN(J)||J===0)return Z;return()=>Z()+J}class HO{state;firedLog;terminal;sendFrame;clock;timer=null;tickCount=0;earliestExecuteAt=new Map;handledRunNowIds=new Set;constructor(Z){this.state=Z.state,this.firedLog=Z.firedLog,this.terminal=Z.terminal,this.sendFrame=Z.sendFrame,this.clock=Z.clock??Wl0}start(){if(this.timer!==null)return;this.timer=setInterval(()=>{this.tick()},Gl0),K8.info("ClientDecisionLoop started")}stop(){if(this.timer===null)return;clearInterval(this.timer),this.timer=null,K8.info("ClientDecisionLoop stopped")}async handleRunNow(Z){let{scheduleId:J,executionId:Q}=Z;if(this.handledRunNowIds.has(Q)){K8.debug(`handleRunNow: dedupe executionId=${Q} \u2014 already handled`);return}this.handledRunNowIds.add(Q);let $=this.state.get(J);if(!$){K8.warn(`handleRunNow: unknown scheduleId=${J} executionId=${Q}`);return}await this.executeSchedule($,Q)}async executeSchedule(Z,J){await this._dispatchSteps(Z);try{this.terminal.invalidateReadCache?.()}catch{}let Q=new Date(this.clock()).toISOString(),$=`${Z.id}@${Z.nextRunAt}`,Y={type:"schedules:result",scheduleId:Z.id,key:$,result:"ok",executedAt:Q,...J!==void 0?{executionId:J}:{}};this.sendFrame(Y)}async tick(){let Z=++this.tickCount,J=this.clock(),Q=J+this.state.serverSkewMs,$=process.env.DEBUG_SCHEDULER==="1";for(let Y of this.state.schedules.values()){let X,W;if(Y.status!=="active"){if(X="skip_status",W=`status=${Y.status}`,$)this._traceDecision(Z,Y,Q,X,W);continue}if(Y.disabledUntil){let V=Date.parse(Y.disabledUntil);if(Number.isFinite(V)&&V>Q){if(X="skip_disabled",W=`disabledUntil=${Y.disabledUntil} > now`,$)this._traceDecision(Z,Y,Q,X,W);continue}}if(!Y.nextRunAt){if(X="skip_status",W="nextRunAt=null",$)this._traceDecision(Z,Y,Q,X,W);continue}let K=`${Y.id}@${Y.nextRunAt}`;if(this.state.firedSet.has(K)){if(X="skip_fired",W=`firedSet has key=${K}`,$)this._traceDecision(Z,Y,Q,X,W);continue}let z=Date.parse(Y.nextRunAt);if(!Number.isFinite(z)||z>Q){if(X="skip_not_due",W=`nextRunAt=${Y.nextRunAt} > now=${Q}`,$)this._traceDecision(Z,Y,Q,X,W);continue}if(Math.abs(this.state.serverSkewMs)>f50){if(X="refuse_skew_exceeded",W=`|serverSkewMs|=${Math.abs(this.state.serverSkewMs)} > ${f50}`,K8.warn(`ClientDecisionLoop: refuse_skew_exceeded scheduleId=${Y.id} skewMs=${this.state.serverSkewMs}`),this._emitSkewInvariant(Y.id,this.state.serverSkewMs),$)this._traceDecision(Z,Y,Q,X,W);continue}if(Q-z>Kl0){let V=this.earliestExecuteAt.get(K);if(V===void 0){let F=Math.floor(Math.random()*zl0);V=J+F,this.earliestExecuteAt.set(K,V)}if(J<V){if(X="skip_earliest_execute",W=`catch-up jitter: localNow=${J} < earliestExecuteAt=${V}`,$)this._traceDecision(Z,Y,Q,X,W);continue}}if(X="fire",W=`nextRunAt=${Y.nextRunAt} <= now=${Q}`,$)this._traceDecision(Z,Y,Q,X,W);if(!this.state.rememberFired(Y.id,Y.nextRunAt)&&Y.nextRunAt)this._emitDuplicateFiredSetInvariant(Y.id,Y.nextRunAt);let B=new Date(J).toISOString();await this.firedLog.append({scheduleId:Y.id,key:K,result:"pending",executedAt:B,ack:!1}),this.earliestExecuteAt.delete(K);try{await this._executeSteps(Y);let V={type:"schedules:result",scheduleId:Y.id,key:K,result:"ok",executedAt:B};this.sendFrame(V)}catch(V){let F=V instanceof Error?V.message:String(V),U={type:"schedules:result",scheduleId:Y.id,key:K,result:`error: ${F}`,executedAt:B};this.sendFrame(U),K8.error(`ClientDecisionLoop: execution error scheduleId=${Y.id}: ${F}`)}}}async _executeSteps(Z){let J=Z.windowIndex??0;if((Z.windowTarget??"main")!=="main")await this._assertWindowExists(J);await this._dispatchSteps(Z)}async _dispatchSteps(Z){let J=Z.windowTarget??"main",Q=Z.windowIndex??0;if(J!=="main")try{await this.terminal.selectWindow?.(Q)}catch{}let $=120;for(let Y=0;Y<Z.steps.length;Y++){let X=Z.steps[Y];if(Y>0)await Xl0($);if(X.type==="prompt")await this.terminal.writeRaw(X.value);else if(X.type==="key"){let W=T50(X.value);if(W!==null)await this.terminal.writeRaw(W);else K8.warn(`unknown key "${X.value}" \u2014 skipping`)}}try{this.terminal.invalidateReadCache?.()}catch{}}async _assertWindowExists(Z){let J=await this.terminal.listWindows();if(!Array.isArray(J)||J.length===0)throw Error(`window ${Z} does not exist (no active session or tmux unavailable)`);for(let Q of J){let $=Q.indexOf(":");if($===-1)continue;let Y=parseInt(Q.slice(0,$).trim(),10);if(Number.isFinite(Y)&&Y===Z)return}throw Error(`window ${Z} does not exist`)}_traceDecision(Z,J,Q,$,Y){K8.info("decision tick",{tick:Z,id:J.id,nextRunAt:J.nextRunAt,now:Q,skew:this.state.serverSkewMs,firedSet_has:J.nextRunAt?this.state.firedSet.has(`${J.id}@${J.nextRunAt}`):!1,decision:$,reason:Y})}_emitSkewInvariant(Z,J){try{K8.warn("invariant skew_exceeds_limit",{scheduleId:Z,skewMs:J,localNow:this.clock(),kind:"skew_exceeds_limit"})}catch{}try{let Q={type:"schedules:invariant",kind:"skew_exceeds_limit",scheduleId:Z,observedAt:new Date(this.clock()).toISOString(),details:{skewMs:J}};this.sendFrame(Q)}catch{}}_emitDuplicateFiredSetInvariant(Z,J){try{K8.warn("invariant duplicate_firedSet_insert",{scheduleId:Z,nextRunAt:J,kind:"duplicate_firedSet_insert"})}catch{}try{let Q={type:"schedules:invariant",kind:"duplicate_firedSet_insert",scheduleId:Z,observedAt:new Date(this.clock()).toISOString(),details:{nextRunAt:J}};this.sendFrame(Q)}catch{}}}var K8,Wl0,f50=300000,Kl0=60000,zl0=60000,Gl0=1000;var y50=q(()=>{E50();b6();K8=f0("client-decision-loop");Wl0=GO()});import*as P1 from"fs";import*as XG from"path";class BO{config;events;ws=null;_isConnected=!1;isShuttingDown=!1;reconnectAttempts=0;reconnectTimeout=null;seqCounter=1;pingInterval=null;pongTimeout=null;lastPongAt=0;authTimeout=null;statusInterval=null;sessionToken=null;_agentId=null;permanentAuthFailure=!1;scheduleState=new $O({clock:GO()});firedLog=new zO;decisionLoop;snapshotTimeoutTimer=null;__getPermanentAuthFailureForTests(){return this.permanentAuthFailure}__handleAuthResultForTests(Z){this.handleAuthResult(Z)}__getReconnectAttemptsForTests(){return this.reconnectAttempts}__setReconnectAttemptsForTests(Z){this.reconnectAttempts=Z}__setShuttingDownForTests(Z){this.isShuttingDown=Z}uploadChunks=new Map;constructor(Z,J){this.config=Z,this.events=J,this.decisionLoop=new HO({state:this.scheduleState,firedLog:this.firedLog,terminal:null,sendFrame:(Q)=>this.sendJson(Q)})}setTerminal(Z){this.decisionLoop.terminal=Z}get wsUrl(){return`${this.config.url.replace(/\/$/,"")}/ws/agent`}async connect(){Q0.info("Connecting to Hub 360..."),this.connectWebSocket()}async disconnect(){if(Q0.info("Disconnecting..."),this.isShuttingDown=!0,this.stopPingPong(),this.stopStatusHeartbeat(),this.decisionLoop.stop(),this.stopSnapshotTimeout(),this.authTimeout)clearTimeout(this.authTimeout),this.authTimeout=null;if(this.reconnectTimeout)clearTimeout(this.reconnectTimeout),this.reconnectTimeout=null;if(this.ws)this.ws.close(),this.ws=null;this._isConnected=!1}sendOutput(Z){if(!this.ws||this.ws.readyState!==WebSocket.OPEN)return;let J=JSON.stringify({type:"output",data:Z,seq:this.seqCounter++});this.ws.send(J)}sendCommandResult(Z,J){this.sendJson({type:"command_result",action:Z,data:J})}sendStatus(Z,J){if(!this.ws||this.ws.readyState!==WebSocket.OPEN)return;let Q=JSON.stringify({type:"status",memory:Z,idle:J});this.ws.send(Q)}get isConnected(){return this._isConnected}get agentId(){return this._agentId}getLastPongAt(){return this.lastPongAt}connectWebSocket(){if(this.isShuttingDown)return;if(this.ws){this.ws.onclose=null,this.ws.onerror=null,this.ws.onmessage=null;try{this.ws.close()}catch{}this.ws=null}Q0.info(`Connecting WebSocket to ${this.wsUrl}...`),this.ws=new WebSocket(this.wsUrl),this.ws.onopen=()=>{Q0.info("WebSocket connected"),this.authenticate(),this.authTimeout=setTimeout(()=>{if(!this._isConnected)Q0.error("Authentication timeout \u2014 no auth_result received"),this.forceReconnect()},xG)},this.ws.onmessage=(Z)=>{if(typeof Z.data==="string")this.handleWebSocketMessage(Z.data)},this.ws.onerror=(Z)=>{Q0.error("WebSocket error:",Z)},this.ws.onclose=(Z)=>{if(Q0.info(`WebSocket closed: code=${Z.code}, reason=${Z.reason}`),this.stopPingPong(),this.stopStatusHeartbeat(),this.decisionLoop.stop(),this.stopSnapshotTimeout(),this.authTimeout)clearTimeout(this.authTimeout),this.authTimeout=null;if(this._isConnected=!1,this.events.onDisconnected(),Z.code===4000)Q0.info("Connection replaced by new instance with same name \u2014 exiting"),process.exit(0);if(!this.isShuttingDown)this.scheduleReconnect()}}authenticate(){let Z=this.sessionToken||this.config.token,J=JSON.stringify({type:"auth",token:Z,name:this.config.agentName,role:this.config.role||"worker",version:H9});this.ws?.send(J),Q0.info(`Sent auth (using ${this.sessionToken?"session token":"registration token"})`)}handleWebSocketMessage(Z){try{let J=JSON.parse(Z);switch(J.type){case"auth_result":this.handleAuthResult(J);break;case"input":this.handleInput(J);break;case"command":this.handleCommand(J);break;case"file_upload":this.handleFileUpload(J);break;case"file_upload_chunk":this.handleFileUploadChunk(J);break;case"file_download_request":this.handleFileDownloadRequest(J);break;case"proxy_request":this.handleProxyRequest(J);break;case"error":Q0.error(`Server error: ${J.message} (code: ${J.code||"none"})`);break;case"schedules:snapshot":if(D50(J))this.handleScheduleSnapshot(J);break;case"schedules:update":if(O50(J))this.handleScheduleUpdate(J);break;case"schedules:run-now":if(L50(J))this.handleScheduleRunNow(J);break;case"schedules:result:ack":if(C50(J))this.handleScheduleResultAck(J);break;case"schedules:time":if(P50(J))this.handleScheduleTime(J);break;default:if(this.pongTimeout)clearTimeout(this.pongTimeout),this.pongTimeout=null;this.lastPongAt=Date.now();break}}catch(J){Q0.warn(`Failed to parse WebSocket message: ${J}`)}}handleAuthResult(Z){if(this.authTimeout)clearTimeout(this.authTimeout),this.authTimeout=null;if(Z.status==="ok"){if(Q0.info(`Authenticated successfully (agentId: ${Z.agentId||"unknown"})`),this._isConnected=!0,this.reconnectAttempts=0,Z.sessionToken)this.sessionToken=Z.sessionToken;if(Z.agentId)this._agentId=Z.agentId;this.events.onConnected(),this.startPingPong(),this.startStatusHeartbeat(),this.startSnapshotTimeout();return}let J=Z.code,Q=Z.error||"unknown error";if(J&&Hl0.has(J)){this.permanentAuthFailure=!0,Q0.error(`Permanent auth failure: ${J} \u2014 ${Q}. Stopping reconnect loop.`),Bl0(1);return}if(Q0.error(`Authentication failed: ${Q}${J?` (code: ${J})`:""}`),J==="rate_limited")this.reconnectAttempts=Math.max(this.reconnectAttempts,6);if(this.sessionToken)Q0.info("Session token expired, clearing and will retry with registration token"),this.sessionToken=null;this.forceReconnect()}handleInput(Z){this.events.onMessage(Z.data,this.config.agentName,Z.source,"",void 0)}handleCommand(Z){switch(Q0.info(`Received command: ${Z.action}`),Z.action){case"kill":if(this.events.onCommand)this.events.onCommand("kill");break;case"resize":{let J=Number(Z.params?.cols)||120,Q=Number(Z.params?.rows)||40;this.events.onResize(J,Q);break}case"restart":if(this.events.onCommand)this.events.onCommand("restart");break;case"self-update":if(this.events.onCommand)this.events.onCommand("self-update");break;case"pause":Q0.info("Pause command received (not implemented)");break;case"resume":Q0.info("Resume command received (not implemented)");break;case"session_info":case"capture_screen":case"send_to_window":case"send_keys_to_window":case"new_window":case"kill_window":case"git_scan":case"git_fetch":case"git_pull":case"git_reset":case"git_branches":case"git_checkout":case"git_diff":case"list_panes":case"select_pane":case"next_pane":case"prev_pane":case"list_windows":case"select_window":case"next_window":case"prev_window":case"list_instances":case"create_instance":case"start_instance":case"stop_instance":case"delete_instance":case"list_directory":case"read_file":case"write_file":case"delete_file":case"install_extension":if(this.events.onCommand)this.events.onCommand(Z.action,Z.params);break;default:Q0.warn(`Unknown command action: ${Z.action}`)}}async handleFileUpload(Z){Q0.info(`Received file upload: ${Z.filename} (${Z.size} bytes)`);try{let J=process.env.DOWNLOAD_DIR||"/tmp/downloads",{mkdir:Q}=await import("fs/promises"),{join:$}=await import("path");await Q(J,{recursive:!0});let Y=Z.filename.replace(/[/\\]/g,"_").replace(/\0/g,"").replace(/\.\./g,"_"),X=$(J,Y),W=Buffer.from(Z.data,"base64");await Bun.write(X,W),Q0.info(`File saved: ${X}`),this.sendJson({type:"file_upload_confirm",filename:Z.filename,path:X,success:!0})}catch(J){Q0.error(`Failed to save uploaded file: ${J.message}`),this.sendJson({type:"file_upload_confirm",filename:Z.filename,path:"",success:!1,error:J.message})}}resolveUploadDestination(Z){if(!Z)return{ok:!0,dir:process.env.DOWNLOAD_DIR||"/tmp/downloads"};if(Z.includes(".."))return{ok:!1,error:"destinationDir must not contain '..'"};if(Z.includes("\x00"))return{ok:!1,error:"destinationDir contains null bytes"};let J=Z;if(!XG.isAbsolute(Z)){let $=process.env.HOME||"/home";J=XG.join($,Z)}let Q;try{Q=P1.statSync(J)}catch($){if($?.code==="ENOENT")return{ok:!1,error:`destinationDir does not exist: ${J}`};if($?.code==="EACCES"||$?.code==="EPERM")return{ok:!1,error:`destinationDir is not accessible: ${J}`};return{ok:!1,error:`destinationDir stat failed: ${J}`}}if(!Q.isDirectory())return{ok:!1,error:`destinationDir is not a directory: ${J}`};try{P1.accessSync(J,P1.constants.W_OK)}catch{return{ok:!1,error:`destinationDir is not writable: ${J}`}}return{ok:!0,dir:J}}async handleFileUploadChunk(Z){let{transferId:J,filename:Q,chunkIndex:$,totalChunks:Y,size:X,remotePath:W,overwrite:K}=Z,z=this.uploadChunks.get(J);if(!z)Q0.info(`Receiving chunked upload: ${Q} (${Y} chunks, transferId: ${J})${W?` \u2192 ${W}`:""}`),z={chunks:Array(Y),received:0,totalChunks:Y,filename:Q,size:X,remotePath:W,overwrite:K,timer:setTimeout(()=>{this.uploadChunks.delete(J),Q0.error(`Chunked upload timed out: ${Q} (received ${z.received}/${Y}, transferId: ${J})`),this.sendJson({type:"file_upload_confirm",transferId:J,filename:Q,path:"",success:!1,error:`Upload timed out (30s since last chunk, received ${z.received}/${Y})`})},30000)},this.uploadChunks.set(J,z);else{if(z.remotePath===void 0&&W!==void 0)z.remotePath=W;if(z.overwrite===void 0&&K!==void 0)z.overwrite=K}if(!Number.isInteger($)||$<0||$>=z.totalChunks){Q0.error(`Invalid chunk index for upload: ${Q} (chunkIndex: ${$}, totalChunks: ${z.totalChunks})`);return}if(z.chunks[$]===void 0)z.received++;if(z.chunks[$]=Z.data,clearTimeout(z.timer),z.timer=setTimeout(()=>{this.uploadChunks.delete(J),Q0.error(`Chunked upload timed out: ${Q} (received ${z.received}/${Y}, transferId: ${J})`),this.sendJson({type:"file_upload_confirm",transferId:J,filename:Q,path:"",success:!1,error:`Upload timed out (30s since last chunk, received ${z.received}/${Y})`})},30000),z.received===z.totalChunks){clearTimeout(z.timer),this.uploadChunks.delete(J);try{let G=Array.from(z.chunks,(L)=>L?Buffer.from(L,"base64"):Buffer.alloc(0)),H=Buffer.concat(G),{mkdir:B}=await import("fs/promises"),{join:V,dirname:F}=await import("path"),U;if(z.remotePath){if(!z.remotePath.startsWith("/")||z.remotePath.includes("..")||z.remotePath.includes("\x00"))throw Error(`Invalid remote_path: ${z.remotePath}`);U=z.remotePath,await B(F(U),{recursive:!0})}else{let L=this.resolveUploadDestination(Z.destinationDir);if(!L.ok){Q0.warn(`Chunked upload rejected \u2014 bad destinationDir: ${L.error}`),this.sendJson({type:"file_upload_confirm",transferId:J,filename:z.filename,path:"",success:!1,error:L.error,errorCode:"permission_denied"});return}let C=L.dir;if(!Z.destinationDir)await B(C,{recursive:!0});let R=z.filename.replace(/[/\\]/g,"_").replace(/\0/g,"").replace(/\.\./g,"_");U=V(C,R)}let{randomBytes:w}=await import("crypto"),D=`${U}.tmp-${process.pid}-${w(4).toString("hex")}`;if(await Bun.write(D,H),Z.overwrite)P1.renameSync(D,U);else try{P1.linkSync(D,U),P1.unlinkSync(D)}catch(L){if(L?.code==="EEXIST"){try{P1.unlinkSync(D)}catch{}Q0.warn(`Chunked upload rejected \u2014 file exists and overwrite not set: ${U}`),this.sendJson({type:"file_upload_confirm",transferId:J,filename:z.filename,path:U,success:!1,error:"File already exists",errorCode:"exists"});return}if(L?.code==="EXDEV"){if(P1.existsSync(U)){try{P1.unlinkSync(D)}catch{}Q0.warn(`Chunked upload rejected (EXDEV fallback) \u2014 file exists: ${U}`),this.sendJson({type:"file_upload_confirm",transferId:J,filename:z.filename,path:U,success:!1,error:"File already exists",errorCode:"exists"});return}P1.renameSync(D,U)}else{try{P1.unlinkSync(D)}catch{}throw L}}Q0.info(`File saved: ${U} (${Y} chunks reassembled, ${H.length} bytes)`),this.sendJson({type:"file_upload_confirm",transferId:J,filename:z.filename,path:U,success:!0})}catch(G){Q0.error(`Failed to save chunked upload: ${G.message}`),this.sendJson({type:"file_upload_confirm",transferId:J,filename:z.filename,path:"",success:!1,error:G.message})}}}async handleFileDownloadRequest(Z){Q0.info(`File download request: ${Z.path} (requestId: ${Z.requestId})`);try{if(Z.path.includes("..")||Z.path.includes("\x00"))throw Error("Invalid file path");let J=Z.path;if(J.startsWith("~")){let B=process.env.HOME||"/home";J=J.replace("~",B)}let Q=Bun.file(J);if(!await Q.exists())throw Error(`File not found: ${Z.path}`);let Y=await Q.stat(),X=838860800;if(Y.size>X)throw Error(`File too large: ${(Y.size/1024/1024).toFixed(1)}MB (max 800MB)`);let W=await Q.arrayBuffer(),K=Buffer.from(W),z=J.split("/").pop()||"file",G=524288,H=Math.ceil(K.length/G)||1;Q0.info(`Sending file: ${z} (${Y.size} bytes, ${H} chunk${H>1?"s":""})`);for(let B=0;B<H;B++){let V=B*G,F=Math.min(V+G,K.length),U=K.subarray(V,F);if(this.sendJson({type:"file_download_chunk",requestId:Z.requestId,chunkIndex:B,totalChunks:H,data:U.toString("base64"),filename:z,size:Y.size}),B%10===9)await new Promise((w)=>setTimeout(w,0))}}catch(J){Q0.error(`File download failed: ${J.message}`),this.sendJson({type:"file_download_response",requestId:Z.requestId,filename:"",data:"",size:0,error:J.message})}}handleProxyRequest(Z){if(this.events.onProxyRequest)this.events.onProxyRequest(Z);else this.sendJson({type:"proxy_response",requestId:Z.requestId,statusCode:502,headers:{"content-type":"application/json"},body:JSON.stringify({error:"Port forwarding not supported by this agent"}),bodyEncoding:"utf8"})}sendProxyResponse(Z){this.sendJson({type:"proxy_response",...Z})}async handleScheduleSnapshot(Z){this.scheduleState.applySnapshot(Z.serverNow,Z.schedules),this.stopSnapshotTimeout(),this.decisionLoop.start();let J=await this.firedLog.replayUnacked();if(J.length>0){let Q={type:"schedules:replay",entries:J.map(($)=>({scheduleId:$.scheduleId,key:$.key,result:$.result,executedAt:$.executedAt,...$.executionId!==void 0?{executionId:$.executionId}:{}}))};this.sendJson(Q),Q0.info(`Replayed ${J.length} unacked WAL entries`)}Q0.info(`Schedule snapshot applied: ${Z.schedules.length} schedules, serverSkewMs=${this.scheduleState.serverSkewMs}`),this.events.onSchedulerReady?.(this.scheduleState.schedules.size)}handleScheduleUpdate(Z){this.scheduleState.updateServerSkew(Z.serverNow),this.scheduleState.applyUpdate(Z.serverNow,Z.op,Z.schedule)}async handleScheduleRunNow(Z){this.scheduleState.updateServerSkew(Z.serverNow),await this.decisionLoop.handleRunNow(Z)}async handleScheduleResultAck(Z){let J=`${Z.scheduleId}@${Z.nextRunAt??"null"}`;await this.firedLog.markAcked(J),Q0.debug(`schedules:result:ack scheduleId=${Z.scheduleId} key=${J} persisted=${Z.persisted}`)}handleScheduleTime(Z){this.scheduleState.updateServerSkew(Z.serverNow)}startSnapshotTimeout(){this.stopSnapshotTimeout(),this.snapshotTimeoutTimer=setTimeout(()=>{this.snapshotTimeoutTimer=null,Q0.warn("scheduler.wait_for_snapshot_timeout: no schedules:snapshot received within 60s of auth"),this.sendJson({type:"schedules:diagnostic",kind:"wait_for_snapshot_timeout",observedAt:new Date().toISOString()})},60000)}stopSnapshotTimeout(){if(this.snapshotTimeoutTimer!==null)clearTimeout(this.snapshotTimeoutTimer),this.snapshotTimeoutTimer=null}sendJson(Z){if(!this.ws||this.ws.readyState!==WebSocket.OPEN)return;this.ws.send(JSON.stringify(Z))}scheduleReconnect(){if(this.reconnectTimeout)clearTimeout(this.reconnectTimeout),this.reconnectTimeout=null;let Z=Math.min(SG*Math.pow(2,Math.min(this.reconnectAttempts,10))+Math.random()*1000,_G);this.reconnectAttempts++;let J=`Reconnecting in ${Math.round(Z/1000)}s (attempt ${this.reconnectAttempts})...`;if(this.reconnectAttempts>hG)Q0.error(J);else Q0.info(J);this.reconnectTimeout=setTimeout(()=>{this.connectWebSocket()},Z)}startPingPong(){this.stopPingPong(),this.lastPongAt=Date.now(),this.pingInterval=setInterval(()=>{if(!this.ws||this.ws.readyState!==WebSocket.OPEN)return;if(this.ws.send(JSON.stringify({type:"ping"})),this.pongTimeout)clearTimeout(this.pongTimeout);this.pongTimeout=setTimeout(()=>{Q0.error("Pong timeout \u2014 forcing reconnect"),this.forceReconnect()},vG)},bG)}stopPingPong(){if(this.pingInterval)clearInterval(this.pingInterval),this.pingInterval=null;if(this.pongTimeout)clearTimeout(this.pongTimeout),this.pongTimeout=null}startStatusHeartbeat(){this.stopStatusHeartbeat(),this.statusInterval=setInterval(()=>{let Z=process.memoryUsage();this.sendStatus(Z.rss,!1)},gG)}stopStatusHeartbeat(){if(this.statusInterval)clearInterval(this.statusInterval),this.statusInterval=null}forceReconnect(){if(this.stopPingPong(),this.stopStatusHeartbeat(),this.authTimeout)clearTimeout(this.authTimeout),this.authTimeout=null;if(this.ws){try{this.ws.close()}catch{}this.ws=null}if(this._isConnected=!1,this.events.onDisconnected(),!this.isShuttingDown)this.scheduleReconnect()}}var Q0,Hl0,Bl0=(Z)=>{setTimeout(()=>{process.exit(Z)},100)};var S50=q(()=>{b6();M50();R50();I50();y50();Q0=f0("LinkServer"),Hl0=new Set(["invalid_token","token_expired","token_race","ip_not_whitelisted","org_suspended","plan_limit"])});class VO{client;constructor(Z,J){this.client=new BO({url:Z.hub.url,token:Z.hub.token,agentName:Z.hub.agentName,role:Z.hub.role||"worker",debug:Z.debug},{...J,onResize:J.onResize||(()=>{}),onCommand:J.onCommand,onProxyRequest:J.onProxyRequest})}async connect(){return this.client.connect()}async disconnect(){return this.client.disconnect()}isWebSocketConnected(){return this.client.isConnected}getLastPongAt(){return this.client.getLastPongAt()}sendCommandResult(Z,J){this.client.sendCommandResult(Z,J)}sendProxyResponse(Z){this.client.sendProxyResponse(Z)}}function _50(Z,J){return new VO(Z,J)}function YQ(Z){return Z instanceof VO}var h50=q(()=>{S50()});import*as F0 from"fs";import*as A0 from"path";import*as b50 from"crypto";function XQ(Z){if(!Z)return!0;let J=A0.resolve(Z);return J==="/"||J===""}function UO(Z){if(XQ(Z))return null;try{let J=F0.realpathSync(Z);return XQ(J)?null:J}catch{let J=A0.resolve(Z);return XQ(J)?null:J}}function Ul0(){let Z=[],J=UO(process.env.HOME);if(J)Z.push(J);let Q=UO("/tmp");if(Q)Z.push(Q);return Z}function WG(Z,J){let Q=A0.resolve(Z),$=[...Ul0()];if(J){let Y=UO(J);if(Y)$.push(Y)}return $.filter((Y)=>!XQ(Y)).some((Y)=>{let X=A0.relative(Y,Q);return X===""||!X.startsWith("..")&&!A0.isAbsolute(X)})}function x50(Z){let J=Math.min(Z.length,FO);if(J===0)return!1;let Q=J===Z.length?Z:Z.subarray(0,J);for(let X=0;X<J;X++)if(Q[X]===0)return!0;let $=J;if(J<Z.length){while($>0){if((Q[$-1]&192)!==128)break;$--}if($>0){if((Q[$-1]&128)!==0)$--}}if($>0)try{let X=$===Q.length?Q:Q.subarray(0,$);return new TextDecoder("utf-8",{fatal:!0}).decode(X),!1}catch{}let Y=0;for(let X=0;X<J;X++){let W=Q[X];if(W!==9&&W!==10&&W!==13&&(W<32||W>126))Y++}return Y/J>Fl0}function g50(Z,J=""){let Q=A0.resolve(Z),$;try{$=F0.realpathSync(Q)}catch{$=Q}let Y=$===A0.parse($).root?null:A0.dirname($);if(!WG($,J))return q6.warn(`listDirectory: ${Q} (canonical ${$}) is outside allowed roots`),{path:$,parent:Y,entries:[],error:"Path is outside allowed roots"};try{let X=F0.readdirSync($,{withFileTypes:!0});X.sort((z,G)=>{let H=z.isDirectory(),B=G.isDirectory();if(H!==B)return H?-1:1;return z.name.toLowerCase().localeCompare(G.name.toLowerCase())});let W=[],K=!1;for(let z=0;z<X.length;z++){if(W.length>=Vl0){K=!0;break}let G=X[z],H=A0.join($,G.name),B;try{B=F0.lstatSync(H)}catch{continue}let V=B.isSymbolicLink(),F;if(V)F="symlink";else if(B.isDirectory())F="directory";else if(B.isFile())F="file";else F="other";W.push({name:G.name,type:F,size:B.isFile()?B.size:0,mtime:B.mtimeMs,hidden:G.name.startsWith("."),isSymlink:V})}return W.sort((z,G)=>{let H=z.type==="directory",B=G.type==="directory";if(H!==B)return H?-1:1;return z.name.toLowerCase().localeCompare(G.name.toLowerCase())}),{path:$,parent:Y,entries:W,truncated:K}}catch(X){let W=X?.code??"";if(W==="EACCES"||W==="EPERM")return{path:$,parent:Y,entries:[],error:"Permission denied"};if(W==="ENOENT")return{path:$,parent:Y,entries:[],error:"Directory not found"};if(W==="ENOTDIR")return{path:$,parent:Y,entries:[],error:"Path is not a directory"};return q6.error(`listDirectory error at ${$}: ${X.message}`),{path:$,parent:Y,entries:[],error:X.message??"Unknown error"}}}function d50(Z,J=""){let Q=A0.resolve(Z),$;try{$=F0.realpathSync(Q)}catch(G){let H=G?.code??"";if(H==="ENOENT")return{path:Q,size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:"File not found",errorCode:"not_found"};if(H==="EACCES"||H==="EPERM")return{path:Q,size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:"Permission denied",errorCode:"permission_denied"};return{path:Q,size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:G.message??"IO error",errorCode:"io_error"}}if(!WG($,J))return q6.warn(`readFile: ${Q} (canonical ${$}) is outside allowed roots`),{path:Q,size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:"Path is outside allowed roots",errorCode:"permission_denied"};let Y;try{Y=F0.lstatSync($)}catch(G){let H=G?.code??"";if(H==="ENOENT")return{path:$,size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:"File not found",errorCode:"not_found"};if(H==="EACCES"||H==="EPERM")return{path:$,size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:"Permission denied",errorCode:"permission_denied"};return{path:$,size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:G.message??"IO error",errorCode:"io_error"}}let{size:X,mtimeMs:W}=Y;if(X>v50)return{path:$,size:X,mtime:W,encoding:"utf8",content:"",isBinary:!1,truncated:!0,error:"File exceeds 2 MB read limit",errorCode:"too_large"};let K;try{K=F0.readFileSync($)}catch(G){let H=G?.code??"";if(H==="EACCES"||H==="EPERM")return{path:$,size:X,mtime:W,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:"Permission denied",errorCode:"permission_denied"};if(H==="ENOENT")return{path:$,size:X,mtime:W,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:"File not found",errorCode:"not_found"};return q6.error(`readFile error at ${$}: ${G.message}`),{path:$,size:X,mtime:W,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:G.message??"IO error",errorCode:"io_error"}}let z=K.length>FO?K.slice(0,FO):K;if(x50(z))return{path:$,size:X,mtime:W,encoding:"base64",content:"",isBinary:!0,truncated:!1};return{path:$,size:X,mtime:W,encoding:"utf8",content:K.toString("utf8"),isBinary:!1,truncated:!1}}function c50(Z,J,Q,$=""){let Y=A0.resolve(Z);try{if(F0.lstatSync(Y).isSymbolicLink())return q6.warn(`writeFile: refusing to write through existing symlink ${Y}`),{path:Y,success:!1,error:"Refusing to write through a symlink",errorCode:"permission_denied"}}catch{}let X,W=null;try{X=F0.realpathSync(Y)}catch(U){let w=U?.code??"";if(w==="ENOENT"){let D=A0.dirname(Y);try{W=F0.realpathSync(D),X=A0.join(W,A0.basename(Y))}catch(L){let C=L?.code??"";if(C==="ENOENT")return{path:Y,success:!1,error:"Parent directory not found",errorCode:"not_found"};if(C==="EACCES"||C==="EPERM")return{path:Y,success:!1,error:"Permission denied",errorCode:"permission_denied"};return{path:Y,success:!1,error:L.message??"IO error",errorCode:"io_error"}}}else if(w==="EACCES"||w==="EPERM")return{path:Y,success:!1,error:"Permission denied",errorCode:"permission_denied"};else return{path:Y,success:!1,error:U.message??"IO error",errorCode:"io_error"}}let K=W??X;if(!WG(K,$))return q6.warn(`writeFile: ${Y} (canonical target ${K}) is outside allowed roots`),{path:Y,success:!1,error:"Path is outside allowed roots",errorCode:"permission_denied"};let z=Buffer.from(J,"utf8");if(z.length>v50)return{path:X,success:!1,error:"Content exceeds 2 MB write limit",errorCode:"too_large"};if(x50(z))return{path:X,success:!1,error:"Binary content refused",errorCode:"binary_refused"};if(Q!==void 0)try{let U=F0.lstatSync(X);if(Math.round(U.mtimeMs)!==Math.round(Q))return q6.warn(`writeFile: mtime mismatch at ${X} (expected ${Q}, got ${U.mtimeMs})`),{path:X,success:!1,error:"File was modified since last read",errorCode:"mtime_mismatch"}}catch(U){if((U?.code??"")!=="ENOENT")return{path:X,success:!1,error:U.message??"IO error",errorCode:"io_error"}}if(W===null)try{F0.accessSync(X,F0.constants.W_OK)}catch(U){let w=U?.code??"";if(w==="EACCES"||w==="EPERM")return{path:X,success:!1,error:"Permission denied",errorCode:"permission_denied"}}let G=A0.dirname(X),H=A0.basename(X),B=b50.randomBytes(8).toString("hex"),V=`.${H}.tmp-${process.pid}-${B}`,F=A0.join(G,V);try{F0.writeFileSync(F,z),F0.renameSync(F,X);let U=F0.lstatSync(X);return q6.info(`writeFile: wrote ${U.size} bytes to ${X}`),{path:X,success:!0,mtime:U.mtimeMs,size:U.size}}catch(U){try{F0.unlinkSync(F)}catch{}let w=U?.code??"";if(w==="EACCES"||w==="EPERM")return{path:X,success:!1,error:"Permission denied",errorCode:"permission_denied"};if(w==="ENOENT")return{path:X,success:!1,error:"Parent directory not found",errorCode:"not_found"};return q6.error(`writeFile error at ${X}: ${U.message}`),{path:X,success:!1,error:U.message??"IO error",errorCode:"io_error"}}}function m50(Z,J=""){let Q=A0.resolve(Z);try{if(F0.lstatSync(Q).isSymbolicLink())return q6.warn(`deleteFile: refusing to delete through symlink ${Q}`),{path:Z,success:!1,error:"Refusing to delete through a symbolic link",errorCode:"permission_denied"}}catch(X){let W=X?.code??"";if(W==="ENOENT")return{path:Z,success:!1,error:"File not found",errorCode:"not_found"};if(W==="EACCES"||W==="EPERM")return{path:Z,success:!1,error:"Permission denied",errorCode:"permission_denied"};return{path:Z,success:!1,error:X.message??"IO error",errorCode:"io_error"}}let $;try{$=F0.realpathSync(Q)}catch(X){let W=X?.code??"";if(W==="ENOENT")return{path:Z,success:!1,error:"File not found",errorCode:"not_found"};if(W==="EACCES"||W==="EPERM")return{path:Z,success:!1,error:"Permission denied",errorCode:"permission_denied"};return{path:Z,success:!1,error:X.message??"IO error",errorCode:"io_error"}}if(!WG($,J))return q6.warn(`deleteFile: ${Z} (canonical ${$}) is outside allowed roots`),{path:Z,success:!1,error:"Path is outside allowed roots",errorCode:"permission_denied"};let Y;try{Y=F0.lstatSync($)}catch(X){if((X?.code??"")==="ENOENT")return{path:$,success:!1,error:"File not found",errorCode:"not_found"};return{path:$,success:!1,error:X.message??"IO error",errorCode:"io_error"}}if(Y.isSymbolicLink())return q6.warn(`deleteFile: refusing to delete symlink ${$}`),{path:$,success:!1,error:"Refusing to delete a symlink",errorCode:"permission_denied"};if(Y.isDirectory())return{path:$,success:!1,error:"Cannot delete a directory",errorCode:"is_directory"};try{return F0.unlinkSync($),q6.info(`deleteFile: deleted ${$}`),{path:$,success:!0}}catch(X){let W=X?.code??"";if(W==="EACCES"||W==="EPERM")return{path:$,success:!1,error:"Permission denied",errorCode:"permission_denied"};if(W==="ENOENT")return{path:$,success:!1,error:"File not found",errorCode:"not_found"};if(W==="EISDIR")return{path:$,success:!1,error:"Cannot delete a directory",errorCode:"is_directory"};return q6.error(`deleteFile error at ${$}: ${X.message}`),{path:$,success:!1,error:X.message??"IO error",errorCode:"io_error"}}}var q6,Vl0=5000,v50=2097152,FO=8192,Fl0=0.3;var u50=q(()=>{b6();q6=f0("explorer")});var wO={};y1(wO,{getRegistryPath:()=>KG,getLogsDir:()=>i50,getLogPath:()=>vY,getHomePathReadOnly:()=>ql0,getHomePath:()=>v6,_setHomePath:()=>jl0,_resetHomePath:()=>wl0});import{mkdirSync as qO}from"fs";import{join as bY}from"path";import{homedir as l50}from"os";function v6(){if(!O7)O7=bY(l50(),p50),qO(O7,{recursive:!0});return O7}function ql0(){return O7||bY(l50(),p50)}function KG(){return bY(v6(),"instances.json")}function i50(){let Z=bY(v6(),"logs");return qO(Z,{recursive:!0}),Z}function vY(Z){return bY(i50(),`${Z}.log`)}function wl0(){O7=null}function jl0(Z){O7=Z,qO(O7,{recursive:!0})}var p50=".the-link",O7=null;var L7=()=>{};var a50={};y1(a50,{resolveUpdatePaths:()=>Ll0,resolveBinaryPath:()=>WQ,performNpmUpdate:()=>Ml0,getInstallType:()=>Pl0,getCurrentSystem:()=>Dl0,detectDeploymentMode:()=>Ol0,applyPlatformFixes:()=>Cl0});import{existsSync as jO,readFileSync as o50}from"fs";import{join as n50}from"path";function Dl0(){let Z=process.platform==="win32"?"windows":process.platform,J=process.arch;return`${Z}-${J}`}function Ol0(){if(jO("/.dockerenv"))return"docker";let Z=process.execPath.split("/").pop()||"";if(Z==="bun"||Z==="bun.exe")return"dev";return"compiled"}function Ll0(){let Z=process.execPath;return{currentBinary:Z,backupBinary:`${Z}.backup`,downloadPath:`${Z}.new`}}async function Cl0(Z){if(process.platform!=="darwin")return;x9.info(`Applying macOS platform fixes to ${Z}`),await Bun.$`xattr -d com.apple.quarantine ${Z}`.quiet().nothrow(),await Bun.$`codesign --sign - --force ${Z}`.quiet().nothrow()}function Pl0(){if(process.env.INSTALL_TYPE==="npm")return"npm";if(process.env.INSTALL_TYPE==="binary")return"binary";try{let{getHomePathReadOnly:Z}=(L7(),oO(wO)),J=n50(Z(),".env");if(jO(J)){let Q=o50(J,"utf-8");for(let $ of Q.split(`
|
|
101
101
|
`)){let Y=$.trim();if(!Y||Y.startsWith("#"))continue;let X=Y.match(/^INSTALL_TYPE=["']?(\w+)["']?$/);if(X)return X[1]==="npm"?"npm":"binary"}}}catch{}return"binary"}function WQ(){let Z=process.env.BINARY_PATH,J=process.env.INSTALL_TYPE;if(!Z||!J)try{let{getHomePath:Q}=(L7(),oO(wO)),$=n50(Q(),".env");if(jO($)){let Y=o50($,"utf-8");for(let X of Y.split(`
|
|
102
102
|
`)){let W=X.trim();if(!W||W.startsWith("#"))continue;let K=W.indexOf("=");if(K===-1)continue;let z=W.slice(0,K).trim(),G=W.slice(K+1).trim().replace(/^['"]|['"]$/g,"");if(z==="BINARY_PATH"&&!Z)Z=G;if(z==="INSTALL_TYPE"&&!J)J=G}}}catch{}if(Z&&Z.trim())return Z.trim();if(J==="npm"){try{let Q=Bun.spawnSync(["which","the-link"]),$=new TextDecoder().decode(Q.stdout).trim();if($)return $}catch{}x9.warn("npm install but could not resolve 'the-link' from PATH, falling back to process.execPath")}return process.execPath}async function Ml0(Z){let J={success:!1,previousVersion:Z,newVersion:Z},Q=60000,$=process.execPath.endsWith("/bun")||process.execPath.endsWith("/bun.exe")?process.execPath:"bun";try{x9.info(`Running: ${$} update -g @nimbus21.ai/the-link`);let Y=Bun.spawn([$,"update","-g","@nimbus21.ai/the-link"],{stdout:"ignore",stderr:"pipe"}),X=setTimeout(()=>Y.kill(),60000),W=await Y.exited;clearTimeout(X);let K=(await new Response(Y.stderr).text()).trim();if(W!==0){x9.warn(`bun update -g failed (exit ${W}): ${K}. Trying bun install -g`);let w=Bun.spawn([$,"install","-g","@nimbus21.ai/the-link"],{stdout:"ignore",stderr:"pipe"}),D=setTimeout(()=>w.kill(),60000),L=await w.exited;clearTimeout(D);let C=(await new Response(w.stderr).text()).trim();if(L!==0)return J.error=`bun update -g exit=${W} (${K||"no stderr"}); bun install -g exit=${L} (${C||"no stderr"})`,x9.error(J.error),J}let z=WQ(),G=z.split("/").pop()||"";if(G==="bun"||G==="bun.exe")return J.error=`Cannot verify npm update: resolveBinaryPath() returned Bun runtime (${z}). BINARY_PATH not set and 'which the-link' failed \u2014 the npm package may not be on PATH.`,x9.error(J.error),J;x9.info(`Verifying updated version via ${z}...`);let H=Bun.spawn([z,"--version"],{stdout:"pipe",stderr:"pipe"}),B=await H.exited,V=await new Response(H.stdout).text(),F=await new Response(H.stderr).text();if(B!==0)return J.error=`Verification failed: the-link --version exited ${B}${F.trim()?`: ${F.trim()}`:""}`,x9.error(J.error),J;let U=V.match(/(\d+\.\d+\.\d+)/);if(!U)return J.error=`Verification failed: unexpected version output: ${V.trim()}`,x9.error(J.error),J;return J.newVersion=U[1],J.success=!0,x9.info(`npm update complete: ${J.previousVersion} \u2192 ${J.newVersion}`),J}catch(Y){return J.error=String(Y),x9.error(`performNpmUpdate failed: ${Y}`),J}}var x9;var zG=q(()=>{b6();x9=f0("Update")});import{readFileSync as OO,writeFileSync as r50,renameSync as Rl0,existsSync as t50,unlinkSync as e50}from"fs";import{join as kl0}from"path";function DO(){return{version:1,instances:{}}}function Z1(){let Z=KG();if(!t50(Z))return DO();try{let J=OO(Z,"utf-8"),Q=JSON.parse(J);if(Q?.version===1&&typeof Q.instances==="object")return Q;return DO()}catch{return DO()}}function B1(Z){let J=KG(),Q=J+".tmp";r50(Q,JSON.stringify(Z,null,2),{encoding:"utf-8",mode:384}),Rl0(Q,J)}function Z40(){return kl0(v6(),Nl0)}function Il0(Z){try{let J=parseInt(OO(Z,"utf-8").trim(),10);if(isNaN(J))return!1;return process.kill(J,0),!0}catch{return!1}}async function V1(){let Z=Z40(),J=Date.now()+Al0;while(Date.now()<J){if(t50(Z))if(!Il0(Z))try{e50(Z)}catch{}else{await Bun.sleep(s50);continue}try{r50(Z,String(process.pid),{flag:"wx"});return}catch{await Bun.sleep(s50)}}throw Error("Failed to acquire registry lock \u2014 another CLI process may be stuck")}function F1(){let Z=Z40();try{if(OO(Z,"utf-8").trim()===String(process.pid))e50(Z)}catch{}}function GG(Z,J){let Q=Z.instances[J.name];if(Q&&Q.workDir!==J.workDir)throw Error(`Instance '${J.name}' already registered at ${Q.workDir}. Each AGENT_NAME must be unique across all instances.`);return Z.instances[J.name]=J,Z}function z8(Z,J,Q){let $=Z.instances[J];if(!$)throw Error(`Instance '${J}' not found in registry`);return Z.instances[J]={...$,...Q},Z}function HG(Z,J){return delete Z.instances[J],Z}function w6(Z,J){return Z.instances[J]??null}function BG(Z,J){for(let Q of Object.values(Z.instances))if(Q.workDir===J)return Q;return null}function g9(Z){return Object.values(Z.instances)}function J40(Z){return Object.values(Z.instances).filter((J)=>J.desiredState==="started")}function d0(Z){if(!Z||Z<=0)return!1;try{return process.kill(Z,0),!0}catch{return!1}}function VG(Z){for(let J of Object.values(Z.instances))if(J.pid&&!d0(J.pid))J.pid=null;return Z}function FG(Z){if(Z.desiredState==="stopped")return"stopped";if(Z.pid&&d0(Z.pid))return"running";if(Z.desiredState==="started")return"crashed";return"stopped"}var Nl0=".registry.lock",Al0=2000,s50=50;var p5=q(()=>{L7()});var Q40={};y1(Q40,{watchdogExitedCommand:()=>yl0,generateWatchdogScript:()=>xY});import{writeFileSync as Tl0,chmodSync as El0}from"fs";import{join as fl0}from"path";function xY(Z,J,Q,$,Y){let X=fl0(v6(),`watchdog-${Z}.sh`),W=["#!/bin/bash",'# Auto-generated watchdog for the-link instance "'+Z+'"',"# Do not edit \u2014 regenerated on each `the-link start`","","BINARY='"+J.replace(/'/g,"'\\''")+"'","WORK_DIR='"+Q.replace(/'/g,"'\\''")+"'","NAME='"+Z.replace(/'/g,"'\\''")+"'","LOG_FILE='"+$.replace(/'/g,"'\\''")+"'",""].join(`
|
|
103
103
|
`),K;if(Y){let V=Y.hubToken.replace(/'/g,"'\\''"),F=Y.hubUrl.replace(/'/g,"'\\''"),U=Y.agentName.replace(/'/g,"'\\''"),w=Y.role.replace(/'/g,"'\\''"),D=Q.replace(/'/g,"'\\''");K=["# Credentials embedded from instances.json (no .env file in project dir)","load_env() {",` export HUB_TOKEN='${V}'`,` export HUB_URL='${F}'`,` export AGENT_NAME='${U}'`,` export AGENT_ROLE='${w}'`,` export TERMINAL_HOME_DIR='${D}'`,"}"].join(`
|
|
@@ -461,12 +461,12 @@ ${W}`:X||W}function TO(Z,{maxDepth:J=1000,numbersAsFloat:Q=!1}={}){if(cY(Z)!=="o
|
|
|
461
461
|
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
462
462
|
*/});function EO(Z,J,Q){let $=O40(Z);return $.mcpServers=$.mcpServers||{},$.mcpServers[J]=Q,JSON.stringify($,null,2)}function fO(Z,J,Q){let $=O40(Z);return $.mcp=$.mcp||{},$.mcp[J]=Q,JSON.stringify($,null,2)}function yO(Z,J,Q){let $;try{$=Z.trim()?kO(Z):{}}catch{$={}}return $.mcp_servers=$.mcp_servers||{},$.mcp_servers[J]=Q,TO($)}function O40(Z){let J=Z.replace(/^\uFEFF/,"").trim();if(!J)return{};try{return JSON.parse(J)}catch{throw Error(`Invalid JSON: ${J.substring(0,100)}...`)}}async function SO(Z,J){let Q=Z+".tmp";await Bun.write(Q,J);let{rename:$,chmod:Y}=await import("fs/promises");await Y(Q,384).catch(()=>{}),await $(Q,Z)}async function L40(Z,J=3000){let Q=Z+".lock",{open:$,unlink:Y}=await import("fs/promises"),X=Date.now();while(!0)try{return await(await $(Q,"wx")).close(),async()=>{try{await Y(Q)}catch{}}}catch(W){if(W.code!=="EEXIST")throw W;if(Date.now()-X>J){try{let{stat:K}=await import("fs/promises"),z=await K(Q);if(Date.now()-z.mtimeMs>30000){await Y(Q);continue}}catch{}throw Error("Config file is locked by another operation")}await Bun.sleep(200)}}async function C40(Z){try{return await Bun.file(Z).text()}catch{return""}}var P40=q(()=>{D40()});var N40={};y1(N40,{installExtension:()=>Up0});import{join as d9,dirname as k40}from"path";import{mkdir as _O}from"fs/promises";function R40(Z){return Z.replace(/\{\{(\w+)\}\}/g,(J,Q)=>{let $=Xp0[Q];if($)return $();return process.env[Q]||J})}function Wp0(Z){let J=Z.trim().toLowerCase().replace(/\s+/g,"-").replace(/[^a-z0-9\-_]/g,"").replace(/-+/g,"-").replace(/^-|-$/g,"");if(!J)throw Error(`Invalid name "${Z}" \u2014 must contain at least one alphanumeric character`);return J}function Kp0(Z,J){switch(Z){case"claude":return d9(J,".mcp.json");case"opencode":return d9(J,"opencode.json");case"codex":return d9(J,".codex","config.toml");default:throw Error(`Unknown coding agent: ${Z}`)}}function zp0(Z,J){switch(Z){case"claude":return d9(J,".claude","skills");case"opencode":return d9(J,".opencode","skills");case"codex":return d9(J,".agents","skills");default:throw Error(`Unknown coding agent: ${Z}`)}}function Gp0(Z,J,Q){let $=Wp0(Q);switch(Z){case"claude":return d9(J,".claude","agents",`${$}.md`);case"opencode":return d9(J,".opencode","agents",`${$}.md`);case"codex":return d9(J,".codex","agents",`${$}.md`);default:throw Error(`Unknown coding agent: ${Z}`)}}function Hp0(Z,J){let Q=Array.isArray(Z)?Z.slice():[Z,...Array.isArray(J)?J:[]],$=[];for(let Y of Q){if(Y===null||Y===void 0)continue;let X=typeof Y==="string"?Y:String(Y);if(X.length>0)$.push(X)}if($.length===0)throw Error("OpenCode MCP `command` must be a non-empty string or non-empty array of strings");return $}async function Bp0(Z,J){let Q=Z.config;if(Z.hubUrl&&Z.hubToken&&Z.extensionId)try{let z=`${Z.hubUrl.replace(/^ws/,"http")}/api/extensions/${Z.extensionId}/config`;KZ.info(`Fetching decrypted config from ${z}`);let G=await fetch(z,{headers:{Authorization:`Bearer ${Z.hubToken}`}});if(G.ok){let H=await G.json();if(H.config)Q=H.config}else KZ.warn(`Failed to fetch config (HTTP ${G.status}), using command params`)}catch(z){KZ.warn(`Failed to fetch config: ${z.message}, using command params`)}if(!Q)return{success:!1,error:"Missing MCP config"};if("headers"in Q){let z=Q.headers;if(Array.isArray(z)){if(z.some((G)=>G.value==="***"))return{success:!1,error:"Cannot install: config contains masked header values (***). The hub server may be unreachable."}}else if(z&&typeof z==="object"){if(Object.values(z).some((G)=>G==="***"))return{success:!1,error:"Cannot install: config contains masked header values (***). The hub server may be unreachable."}}}let $,Y;if("url"in Q&&Q.url){if($={...Q},"headers"in $&&Array.isArray($.headers)){let z={};for(let G of $.headers){let H=typeof G.value==="string"?R40(G.value):String(G.value);if(G.key)z[G.key]=H}$.headers=z}}else if($={...Q},"env"in $&&$.env&&typeof $.env==="object"){let z={};for(let[G,H]of Object.entries($.env))z[G]=typeof H==="string"?R40(H):String(H);$.env=z}if(delete $.transport,"url"in $&&$.url){let z=$;switch(Z.codingAgent){case"claude":z.type="http";break;case"opencode":z.type="remote";break;case"codex":delete z.type;break}}else if("command"in $){let z=$;switch(Z.codingAgent){case"opencode":{let G;try{G=Hp0(z.command,z.args)}catch(H){return{success:!1,error:H.message}}if(Y={type:"local",command:G},z.env&&Object.keys(z.env).length>0)Y.environment=z.env;break}default:delete z.type;break}}let X=Kp0(Z.codingAgent,J);await _O(k40(X),{recursive:!0}).catch(()=>{});let W,K;try{W=await L40(X);let z=await C40(X),G;try{switch(Z.codingAgent){case"claude":G=EO(z,Z.name,$);break;case"opencode":G=fO(z,Z.name,Y??$);break;case"codex":G=yO(z,Z.name,$);break;default:return{success:!1,error:`Unknown coding agent: ${Z.codingAgent}`}}}catch(H){if(z.trim()){let B=X+".bak";switch(await Bun.write(B,z),K=`Original config backed up to ${B}`,Z.codingAgent){case"claude":G=EO("",Z.name,$);break;case"opencode":G=fO("",Z.name,Y??$);break;case"codex":G=yO("",Z.name,$);break;default:return{success:!1,error:`Unknown coding agent: ${Z.codingAgent}`}}}else return{success:!1,error:`Failed to merge config: ${H.message}`}}return await SO(X,G),KZ.info(`MCP server '${Z.name}' installed to ${X}`),{success:!0,warning:K,configsModified:[X],restartRecommended:!0}}catch(z){return{success:!1,error:z.message}}finally{await W?.()}}async function Vp0(Z,J){let{hubUrl:Q,hubToken:$,extensionId:Y,name:X,codingAgent:W}=Z;if(!Q||!$)return{success:!1,error:"Missing hubUrl or hubToken for file fetch"};let K=zp0(W,J),z=`/tmp/ext-skill-${Y}.zip`;try{let G=`${Q.replace(/^ws/,"http")}/api/extensions/${Y}/file`;KZ.info(`Fetching skill ZIP from ${G}`);let H=await fetch(G,{headers:{Authorization:`Bearer ${$}`}});if(!H.ok)return{success:!1,error:`Failed to download skill: HTTP ${H.status}`};let B=await H.arrayBuffer(),V=new Uint8Array(B.slice(0,4));if(V.length<4||V[0]!==80||V[1]!==75||V[2]!==3||V[3]!==4)return{success:!1,error:"Invalid ZIP file (bad magic bytes)"};await Bun.write(z,B);let F=await Bun.$`unzip -l ${z}`.quiet().nothrow();if(F.exitCode!==0)return{success:!1,error:`Failed to list ZIP contents: ${F.stderr.toString().trim()||"unzip exited with code "+F.exitCode}`};let U=F.stdout.toString().split(`
|
|
463
463
|
`),w=!1;for(let m of U){if(m.trim().startsWith("--------")){if(w)break;w=!0;continue}if(!w)continue;let l=m.trim().split(/\s+/).slice(3).join(" ");if(!l)continue;if(l.includes("../")||l.includes("..\\"))return{success:!1,error:`ZIP contains unsafe path (traversal): ${l}`};if(l.startsWith("/"))return{success:!1,error:`ZIP contains unsafe path (absolute): ${l}`};if(l.split(/[/\\]/).some(($6)=>$6===".."))return{success:!1,error:`ZIP contains unsafe path component (..): ${l}`}}await _O(K,{recursive:!0});let D=await Bun.$`unzip -o ${z} -d ${K} -x "__MACOSX/*"`.quiet().nothrow();if(D.exitCode!==0)return{success:!1,error:`ZIP extraction failed: ${D.stderr.toString()}`};let C=F.stdout.toString().split(`
|
|
464
|
-
`).map((m)=>m.trim().split(/\s+/).pop()||"").find((m)=>m.endsWith("/")&&!m.includes("__MACOSX")&&m.split("/").length===2),R=C?d9(K,C.replace(/\/$/,"")):K,T=await Bun.file(d9(R,"SKILL.md")).exists(),
|
|
464
|
+
`).map((m)=>m.trim().split(/\s+/).pop()||"").find((m)=>m.endsWith("/")&&!m.includes("__MACOSX")&&m.split("/").length===2),R=C?d9(K,C.replace(/\/$/,"")):K,T=await Bun.file(d9(R,"SKILL.md")).exists(),_=T?void 0:"No SKILL.md found in archive root. Skill may not be auto-detected by the coding agent.";return KZ.info(`Skill '${X}' extracted to ${K} (folder: ${C||"flat"}, SKILL.md: ${T})`),{success:!0,warning:_,filesWritten:[R||K]}}catch(G){return{success:!1,error:G.message}}finally{try{await Bun.$`rm -f ${z}`.quiet().nothrow()}catch{}}}async function Fp0(Z,J){let{hubUrl:Q,hubToken:$,extensionId:Y,name:X,codingAgent:W}=Z;if(!Q||!$)return{success:!1,error:"Missing hubUrl or hubToken for file fetch"};let K=Gp0(W,J,X);try{let z=`${Q.replace(/^ws/,"http")}/api/extensions/${Y}/file`;KZ.info(`Fetching agent template from ${z}`);let G=await fetch(z,{headers:{Authorization:`Bearer ${$}`}});if(!G.ok)return{success:!1,error:`Failed to download agent template: HTTP ${G.status}`};let H=await G.text();await _O(k40(K),{recursive:!0});let V=await Bun.file(K).exists()?`Overwriting existing agent '${X}'`:void 0;return await SO(K,H),KZ.info(`Agent template '${X}' installed to ${K}`),{success:!0,warning:V,filesWritten:[K]}}catch(z){return{success:!1,error:z.message}}}async function Up0(Z,J,Q){let $={extensionId:Z.extensionId,extensionType:Z.extensionType,name:Z.name,config:Z.config,codingAgent:Z.codingAgent,hubUrl:Q.hub.url,hubToken:Q.hub.token};if(!$.extensionId||!$.name||!$.extensionType||!$.codingAgent)return{success:!1,error:"Missing required params: extensionId, name, extensionType, codingAgent"};if(!M40.includes($.codingAgent))return{success:!1,error:`Unknown coding agent: ${$.codingAgent}. Supported: ${M40.join(", ")}`};let Y;try{Y=await J?.terminal.getCurrentDir?.()||process.cwd()}catch{Y=process.cwd()}switch(KZ.info(`Installing extension '${$.name}' (${$.extensionType}) for ${$.codingAgent} in ${Y}`),$.extensionType){case"mcp_server":return Bp0($,Y);case"skill":return Vp0($,Y);case"agent_template":return Fp0($,Y);default:return{success:!1,error:`Unknown extension type: ${$.extensionType}`}}}var KZ,M40,Xp0;var A40=q(()=>{b6();P40();KZ=f0("extension-installer"),M40=["claude","opencode","codex"],Xp0={AGENT_TOKEN:()=>process.env.HUB_TOKEN||"",THE_LINK_TOKEN:()=>process.env.HUB_TOKEN||"",HUB_TOKEN:()=>process.env.HUB_TOKEN||"",HUB_URL:()=>process.env.HUB_URL||"",AGENT_NAME:()=>process.env.AGENT_NAME||""}});var I40={};y1(I40,{Bridge:()=>hO});class hO{config;backend;isShuttingDown=!1;gcInterval=null;spawnTelemetryInterval=null;allowedUserIds=new Set;userCache=new Map;userSessions=new Map;currentUserId=null;lastMessageAt=0;startTime=Date.now();restoredUserDirs={};constructor(){if(this.config=m70(),e70(this.config.debug),this.config.logDir)s70(this.config.logDir);if(console.log("=".repeat(60)),console.log("the-link: Hub 360 Terminal Agent"),console.log("=".repeat(60)),y.info(`Working dir: ${process.cwd()}`),y.info(`Hub URL: ${this.config.hub.url}`),y.info(`Agent name: ${this.config.hub.agentName}`),y.info(`Shell: ${this.config.terminal.shell}`),y.info(`Session home dir: ${this.config.terminal.homeDir}`),this.config.output.rawMode)y.info("Output mode: raw (no ANSI stripping, no markdown)");if(this.config.debug)y.info("Debug mode: enabled");if(this.config.healthPort>0)y.info(`Health check port: ${this.config.healthPort}`);if(this.config.files.downloadDir)y.info(`File download dir: ${this.config.files.downloadDir}`),y.info(`Auto-download: ${this.config.files.autoDownload?"enabled":"disabled"}`);if(this.config.auth.allowedUsers.length>0)y.info(`Allowed users: ${this.config.auth.allowedUsers.join(", ")}`);else y.info("Allowed users: (all - no restrictions)");this.backend=_50(this.config,{onMessage:(Z,J,Q,$,Y)=>{this.handleIncomingMessage(Z,J,Q,$,Y).catch((X)=>{y.error(`Failed to handle message from ${Q}: ${X}`)})},onResize:(Z,J)=>{this.handleResize(Z,J).catch((Q)=>{y.error(`Failed to handle resize: ${Q}`)})},onCommand:(Z,J)=>{this.handleControlAction(Z,J).catch((Q)=>{y.error(`Failed to handle command ${Z}: ${Q}`)})},onProxyRequest:(Z)=>{this.handleProxyRequest(Z).catch((J)=>{y.error(`Failed to handle proxy request ${Z.requestId}: ${J}`)})},onConnected:()=>{y.info("Hub 360 connected"),this.initializeHub360Session().catch((Z)=>{y.error(`Failed to initialize Hub 360 session: ${Z}`)})},onDisconnected:()=>{y.info("Hub 360 disconnected")},onSchedulerReady:(Z)=>{y.info(`scheduler: state=${Z} schedules loaded, decision loop started`)}})}async initializeHub360Session(){let J=this.config.hub.agentName;y.info(`Hub 360: Creating default terminal session for agent "${J}"`);let Q=await this.getOrCreateSession("system",J);if(Q&&!Q.initialized){if(Q.terminal.setStreamMode(!0),Q.terminal.setEmitFirstCapture(!0),await Q.terminal.start(),Q.initialized=!0,y.info("Hub 360: Terminal session started, pipe-pane streaming active"),YQ(this.backend))this.backend.client.setTerminal(Q.terminal),y.info("scheduler: terminal wired to decision loop")}}async handleResize(Z,J){let Q=this.getSession("system");if(Q)y.info(`Resizing terminal to ${Z}x${J}`),await Q.terminal.resize(Z,J)}sendTerminalStatus(Z){if(YQ(this.backend))this.backend.client.sendOutput(`\r
|
|
465
465
|
\x1B[33m${Z}\x1B[0m\r
|
|
466
|
-
`)}async handleControlAction(Z,J){let Q=this.getSession("system");switch(Z){case"kill":if(
|
|
466
|
+
`)}async handleControlAction(Z,J){let Q=this.getSession("system");switch(Z){case"kill":if(y.info("Kill command received \u2014 killing terminal session"),Q)await Q.terminal.kill();break;case"restart":{if(y.info("Restart command received"),this.sendTerminalStatus("\u27F3 Restarting terminal..."),Q)await Q.terminal.kill(),this.userSessions.delete("system");await new Promise(($)=>setTimeout($,500)),await this.initializeHub360Session(),this.sendTerminalStatus("\u2713 Terminal restarted");break}case"self-update":{y.info("Self-update command received");let{detectDeploymentMode:$,resolveUpdatePaths:Y,getCurrentSystem:X,applyPlatformFixes:W,getInstallType:K,performNpmUpdate:z}=await Promise.resolve().then(() => (zG(),a50));if(K()==="npm"){y.info("Updating via npm (bun update -g)"),this.sendTerminalStatus("\u27F3 Updating via npm...");try{let{APP_VERSION:U}=await Promise.resolve().then(() => nO),w=await z(U);if(w.success)this.sendTerminalStatus(`\u2713 Updated: v${w.previousVersion} \u2192 v${w.newVersion}`),y.info(`npm update complete: ${w.previousVersion} \u2192 ${w.newVersion}`),await new Promise((D)=>setTimeout(D,200)),process.exit(0);else throw Error(w.error||"npm update failed")}catch(U){y.error(`npm self-update failed: ${U}`),this.sendTerminalStatus(`\u2717 Update failed: ${U}`)}break}let H=$(),B=X(),F=`${this.config.hub.url.replace("ws://","http://").replace("wss://","https://")}/download/${B}`;y.info(`Updating from ${F} (mode: ${H}, system: ${B})`),this.sendTerminalStatus(`\u27F3 Starting update (${B})...`);try{let U=Y(),w=`/tmp/the-link-update-${Date.now()}`;this.sendTerminalStatus("\u2B07 Downloading new version...");let D=await fetch(F);if(!D.ok)throw Error(`Download failed: ${D.status}`);let L=await D.arrayBuffer();if(L.byteLength<1048576)throw Error("Downloaded file too small \u2014 likely an error page");let C=(L.byteLength/1024/1024).toFixed(1);this.sendTerminalStatus(`\u2713 Downloaded ${C} MB, verifying...`);let{$:R}=awaitPromise.resolve(globalThis.Bun);await Bun.write(w,L),await R`chmod +x ${w}`.quiet().nothrow(),await R`cp ${U.currentBinary} /tmp/the-link.backup`.quiet().nothrow(),await W(w),this.sendTerminalStatus("\u27F3 Replacing binary and restarting...");let T=U.currentBinary,_=T.substring(0,T.lastIndexOf("/")),m=`${T}.new`,l=!1;try{if(await Bun.write(m,L),await R`chmod +x ${m}`.quiet().nothrow(),await W(m),(await R`mv ${m} ${T}`.quiet().nothrow()).exitCode===0)l=!0;else await R`rm -f ${m}`.quiet().nothrow()}catch{}if(!l&&process.platform==="darwin"){if((await R`cp ${w} ${T} && chmod +x ${T}`.quiet().nothrow()).exitCode===0)l=!0}if(!l){if(y.info("Direct replace failed, trying sudo..."),(await R`sudo rm -f ${T} && sudo cp ${w} ${T} && sudo chmod +x ${T}`.quiet().nothrow()).exitCode===0)l=!0}if(await R`rm -f ${w}`.quiet().nothrow(),!l)throw Error("Failed to replace binary \u2014 insufficient permissions");y.info(`Updated binary (${C} MB). Restarting...`),await new Promise((y0)=>setTimeout(y0,200)),process.exit(0)}catch(U){y.error(`Self-update failed: ${U}`),this.sendTerminalStatus(`\u2717 Update failed: ${U}`)}break}case"session_info":{if(!Q)break;let $=Q.terminal.getSocketName(),Y=Q.terminal.getSessionName(),X=process.cwd();try{X=await Q.terminal.getCurrentDir?.()||X}catch{X=process.cwd()}this.backend.sendCommandResult?.("session_info",{tmuxCommand:`tmux -u -L ${$} attach -t ${Y}`,socketName:$,sessionName:Y,version:H9,cwd:X});break}case"capture_screen":{if(process.env.MCP_PROBE_TRACE==="1")y.info(`[TRACE] capture_screen entered (session=${!!Q}, params=${JSON.stringify(J)})`);if(!Q){if(process.env.MCP_PROBE_TRACE==="1")y.warn("[TRACE] capture_screen \u2014 !session, bailing");break}try{let $=J?.scrollback===!0,Y=typeof J?.window==="number"?J.window:void 0,X;if(Y!==void 0)X=$?await Q.terminal.captureFullScrollbackWindow(Y):await Q.terminal.captureScreenWindow(Y);else X=$?await Q.terminal.captureFullScrollback():await Q.terminal.captureScreen();if(process.env.MCP_PROBE_TRACE==="1")y.info(`[TRACE] capture_screen \u2014 content.length=${X.length}, sendCommandResult=${typeof this.backend.sendCommandResult}`);this.backend.sendCommandResult?.("capture_screen",{content:X,scrollback:$,window:Y,timestamp:Date.now()})}catch($){if(process.env.MCP_PROBE_TRACE==="1")y.error(`[TRACE] capture_screen threw: ${$.message}`);this.backend.sendCommandResult?.("capture_screen",{content:"",error:$.message})}break}case"send_to_window":{if(!Q)break;try{let $=J?.window,Y=J?.command;if(typeof $!=="number"||typeof Y!=="string"){this.backend.sendCommandResult?.("send_to_window",{success:!1,error:"Missing required params: window (number) and command (string)"});break}let X=await Q.terminal.writeToWindow($,Y);this.backend.sendCommandResult?.("send_to_window",X?{success:X,window:$}:{success:X,window:$,error:`tmux send-keys to window ${$} failed (session: ${Q.terminal.getSessionName()}, socket: ${Q.terminal.getSocketName()})`})}catch($){this.backend.sendCommandResult?.("send_to_window",{success:!1,error:$.message})}break}case"send_keys_to_window":{if(!Q)break;try{let $=J?.window,Y=J?.key;if(typeof $!=="number"||typeof Y!=="string"){this.backend.sendCommandResult?.("send_keys_to_window",{success:!1,error:"Missing required params: window (number) and key (string)"});break}let X=await Q.terminal.sendKeysToWindow($,Y);this.backend.sendCommandResult?.("send_keys_to_window",X?{success:X,window:$}:{success:X,window:$,error:`tmux send-keys to window ${$} failed`})}catch($){this.backend.sendCommandResult?.("send_keys_to_window",{success:!1,error:$.message})}break}case"git_scan":{try{let $=J?.path||null;if(!$&&Q)$=await Q.terminal.getCurrentDir();$=$||this.config.terminal.homeDir||process.env.HOME||"/";let Y=await this.scanGitRepos($);this.backend.sendCommandResult?.("git_scan",{repos:Y,scanDir:$})}catch($){this.backend.sendCommandResult?.("git_scan",{repos:[],error:$.message})}break}case"git_fetch":{try{let $=J?.path?.trim();if(!$)break;y.info(`Git fetch: ${$}`);let Y=Bun.spawnSync(["git","-C",$,"fetch","--all"],{stdout:"pipe",stderr:"pipe"}),X=Y.stdout.toString()+Y.stderr.toString();this.backend.sendCommandResult?.("git_action",{action:"fetch",path:$,success:Y.exitCode===0,output:X.trim()})}catch($){this.backend.sendCommandResult?.("git_action",{action:"fetch",success:!1,output:$.message})}break}case"git_pull":{try{let $=J?.path?.trim();if(!$)break;y.info(`Git pull: ${$}`);let Y=Bun.spawnSync(["git","-C",$,"pull"],{stdout:"pipe",stderr:"pipe"}),X=Y.stdout.toString()+Y.stderr.toString();this.backend.sendCommandResult?.("git_action",{action:"pull",path:$,success:Y.exitCode===0,output:X.trim()})}catch($){this.backend.sendCommandResult?.("git_action",{action:"pull",success:!1,output:$.message})}break}case"git_reset":{try{let $=J?.path?.trim();if(!$)break;y.info(`Git reset HEAD: ${$}`);let Y=Bun.spawnSync(["git","-C",$,"reset","HEAD"],{stdout:"pipe",stderr:"pipe"}),X=Y.stdout.toString()+Y.stderr.toString();this.backend.sendCommandResult?.("git_action",{action:"reset",path:$,success:Y.exitCode===0,output:X.trim()})}catch($){this.backend.sendCommandResult?.("git_action",{action:"reset",success:!1,output:$.message})}break}case"git_branches":{try{let $=J?.path?.trim();if(!$)break;let Y=Bun.spawnSync(["git","-C",$,"remote"],{stdout:"pipe",stderr:"pipe"}),X=Y.exitCode===0?Y.stdout.toString().trim().split(`
|
|
467
467
|
`).filter(Boolean):["origin"],K=Bun.spawnSync(["git","-C",$,"branch","-a","--format=%(refname:short) %(HEAD)"],{stdout:"pipe",stderr:"pipe"}).stdout.toString().trim().split(`
|
|
468
468
|
`).filter(Boolean),z=new Map;for(let H of K){let B=H.endsWith(" *"),V=H.replace(/ \*$/,"").trim(),F=V,U=!1;for(let D of X)if(V.startsWith(`${D}/`)){F=V.slice(D.length+1),U=!0;break}if(F==="HEAD")continue;let w=z.get(F);if(w){if(!U)w.name=F;if(B)w.current=!0}else z.set(F,{name:F,current:B})}let G=Array.from(z.values());this.backend.sendCommandResult?.("git_branches",{path:$,branches:G})}catch($){this.backend.sendCommandResult?.("git_branches",{path:dir,branches:[],error:$.message})}break}case"git_checkout":{try{let $=J?.path?.trim(),Y=J?.branch?.trim();if(!$||!Y)break;let X=Y,W=Bun.spawnSync(["git","-C",$,"remote"],{stdout:"pipe",stderr:"pipe"});if(W.exitCode===0){for(let G of W.stdout.toString().trim().split(`
|
|
469
|
-
`).filter(Boolean))if(Y.startsWith(`${G}/`)){X=Y.slice(G.length+1);break}}
|
|
469
|
+
`).filter(Boolean))if(Y.startsWith(`${G}/`)){X=Y.slice(G.length+1);break}}y.info(`Git checkout: ${$} \u2192 ${X}`);let K=Bun.spawnSync(["git","-C",$,"checkout",X],{stdout:"pipe",stderr:"pipe"}),z=K.stdout.toString()+K.stderr.toString();this.backend.sendCommandResult?.("git_action",{action:"checkout",path:$,branch:Y,success:K.exitCode===0,output:z.trim()})}catch($){this.backend.sendCommandResult?.("git_action",{action:"checkout",success:!1,output:$.message})}break}case"git_diff":{try{let $=J?.path?.trim(),Y=J?.file?.trim(),X=J?.fileType?.trim();if(!$||!Y)break;let W;if(X==="staged"){W=Bun.spawnSync(["git","-C",$,"diff","--cached","--",Y],{stdout:"pipe",stderr:"pipe"});let K=W.stdout.toString().trim(),z="";if(!K&&W.exitCode===0){let H=Bun.spawnSync(["git","-C",$,"show",`:${Y}`],{stdout:"pipe",stderr:"pipe"}),B=H.stdout.toString();if(H.exitCode===0&&B.trim()){let V=B.endsWith(`\r
|
|
470
470
|
`)?B.slice(0,-2):B.endsWith(`
|
|
471
471
|
`)?B.slice(0,-1):B,F=V.length>0?V.split(`
|
|
472
472
|
`):[];K=`diff --git a/${Y} b/${Y}
|
|
@@ -475,10 +475,10 @@ new file
|
|
|
475
475
|
+++ b/${Y}
|
|
476
476
|
@@ -0,0 +1,${F.length} @@
|
|
477
477
|
`+F.map((U)=>"+"+U).join(`
|
|
478
|
-
`)}else z=H.stderr.toString().trim()}if(!K)K=z||W.stderr.toString().trim();let G=W.exitCode===0||!!K;this.backend.sendCommandResult?.("git_diff",{path:$,file:Y,fileType:X,success:G,diff:K,...G?{}:{error:K||"Failed to get staged diff"}})}else if(X==="untracked"){W=Bun.spawnSync(["git","-C",$,"diff","--no-index","--","/dev/null",Y],{stdout:"pipe",stderr:"pipe"});let K=W.stdout.toString()+W.stderr.toString(),z=W.exitCode===0||W.exitCode===1;this.backend.sendCommandResult?.("git_diff",{path:$,file:Y,fileType:X,success:z,diff:K.trim()})}else{W=Bun.spawnSync(["git","-C",$,"diff","--",Y],{stdout:"pipe",stderr:"pipe"});let K=W.stdout.toString()+W.stderr.toString();this.backend.sendCommandResult?.("git_diff",{path:$,file:Y,fileType:X,success:W.exitCode===0,diff:K.trim()})}}catch($){this.backend.sendCommandResult?.("git_diff",{path:J?.path,file:J?.file,fileType:J?.fileType,success:!1,diff:"",error:$.message})}break}case"list_directory":{try{let $=typeof J?.path==="string"?J.path.trim():"",Y=await this.resolveExplorerCwdRoot(Q);if(Y===null&&!$){this.backend.sendCommandResult?.("list_directory",{path:"/",parent:null,entries:[],error:"Explorer cwdRoot is not set (no session, no HOME, no homeDir) and no explicit path was provided."});break}let X=Y??"";$=$||X;let W=g50($,X);this.backend.sendCommandResult?.("list_directory",W)}catch($){this.backend.sendCommandResult?.("list_directory",{path:typeof J?.path==="string"?J.path:"",parent:null,entries:[],error:$.message??"Unknown error"})}break}case"read_file":{try{if(typeof J?.path!=="string"){this.backend.sendCommandResult?.("read_file",{path:"",size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:"path must be a string",errorCode:"io_error"});break}let $=J.path.trim();if(!$){this.backend.sendCommandResult?.("read_file",{path:"",size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:"No path provided",errorCode:"io_error"});break}let X=await this.resolveExplorerCwdRoot(Q)??"",W=d50($,X);this.backend.sendCommandResult?.("read_file",W)}catch($){this.backend.sendCommandResult?.("read_file",{path:typeof J?.path==="string"?J.path:"",size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:$.message??"Unknown error",errorCode:"io_error"})}break}case"write_file":{try{let $=typeof J?.path==="string"?J.path.trim():"";if(typeof J?.content!=="string"){this.backend.sendCommandResult?.("write_file",{path:$,success:!1,error:"content must be a string",errorCode:"io_error"});break}let Y=J.content,X=J?.expectedMtime,W;if(X===void 0||X===null)W=void 0;else{let H=Number(X);if(!Number.isFinite(H)){this.backend.sendCommandResult?.("write_file",{path:$,success:!1,error:"expectedMtime must be a finite number",errorCode:"io_error"});break}W=H}if(!$){this.backend.sendCommandResult?.("write_file",{path:"",success:!1,error:"No path provided",errorCode:"io_error"});break}let z=await this.resolveExplorerCwdRoot(Q)??"",G=c50($,Y,W,z);this.backend.sendCommandResult?.("write_file",G)}catch($){this.backend.sendCommandResult?.("write_file",{path:typeof J?.path==="string"?J.path:"",success:!1,error:$.message??"Unknown error",errorCode:"io_error"})}break}case"delete_file":{try{if(typeof J?.path!=="string"){this.backend.sendCommandResult?.("delete_file",{path:typeof J?.path==="string"?J.path:"",success:!1,error:"path parameter is required and must be a string",errorCode:"io_error"});break}let $=J.path.trim();if(!$){this.backend.sendCommandResult?.("delete_file",{path:"",success:!1,error:"No path provided",errorCode:"io_error"});break}let X=await this.resolveExplorerCwdRoot(Q)??"",W=m50($,X);this.backend.sendCommandResult?.("delete_file",W)}catch($){this.backend.sendCommandResult?.("delete_file",{path:typeof J?.path==="string"?J.path:"",success:!1,error:$.message??"Unknown error",errorCode:"io_error"})}break}case"list_panes":{if(!Q)break;let $=await Q.terminal.listPanes();this.backend.sendCommandResult?.("list_panes",{panes:$});break}case"select_pane":{if(!Q)break;let $=Number(J?.index??0);await Q.terminal.selectPane($),Q.terminal.invalidateReadCache();let Y=await Q.terminal.listPanes();this.backend.sendCommandResult?.("list_panes",{panes:Y});break}case"next_pane":{if(!Q)break;await Q.terminal.nextPane(),Q.terminal.invalidateReadCache();let $=await Q.terminal.listPanes();this.backend.sendCommandResult?.("list_panes",{panes:$});break}case"prev_pane":{if(!Q)break;await Q.terminal.previousPane(),Q.terminal.invalidateReadCache();let $=await Q.terminal.listPanes();this.backend.sendCommandResult?.("list_panes",{panes:$});break}case"new_window":{if(!Q)break;await Q.terminal.createWindow(),Q.terminal.invalidateReadCache();let $=await Q.terminal.listWindows();this.backend.sendCommandResult?.("list_windows",{windows:$});break}case"kill_window":{if(!Q)break;if((await Q.terminal.listWindows()).length<=1){this.backend.sendCommandResult?.("kill_window",{error:"Cannot close the last window"});break}let Y=Number(J?.index??0);await Q.terminal.killWindow(Y),Q.terminal.invalidateReadCache();let X=await Q.terminal.listWindows();this.backend.sendCommandResult?.("list_windows",{windows:X});break}case"list_windows":{if(!Q)break;let $=await Q.terminal.listWindows();this.backend.sendCommandResult?.("list_windows",{windows:$});break}case"select_window":{if(!Q)break;let $=Number(J?.index??0);await Q.terminal.selectWindow($),Q.terminal.invalidateReadCache();let Y=await Q.terminal.listWindows();this.backend.sendCommandResult?.("list_windows",{windows:Y});break}case"next_window":{if(!Q)break;await Q.terminal.nextWindow(),Q.terminal.invalidateReadCache();let $=await Q.terminal.listWindows();this.backend.sendCommandResult?.("list_windows",{windows:$});break}case"prev_window":{if(!Q)break;await Q.terminal.previousWindow(),Q.terminal.invalidateReadCache();let $=await Q.terminal.listWindows();this.backend.sendCommandResult?.("list_windows",{windows:$});break}case"list_instances":{
|
|
479
|
-
`).filter(Boolean);for(let W of X){let K=W.replace(/\/\.git$/,"");if(K===Z)continue;let z=K.split("/").pop()||K,G=await this.getGitRepoInfo(K,z);if(G)J.push(G)}}return
|
|
480
|
-
`).filter(Boolean),W=[],K=[],z=[];for(let G of X){let H=G[0],B=G[1],V=G.slice(3);if(H==="?"&&B==="?")z.push(V);else{if(H!==" "&&H!=="?")W.push(V);if(B!==" "&&B!=="?")K.push(V)}}return{path:Z,name:J,branch:$,staged:W,modified:K,untracked:z}}catch{return null}}getConfig(){return this.config}async getOrCreateSession(Z,J){let Q=this.userSessions.get(Z);if(Q)return Q.channelId=J,Q;let $=await this.resolveUsername(Z);
|
|
481
|
-
`)}catch(Z){throw h.error("Failed to start:",Z),Z}}getHealthStatus(){let Z=this.backend.isWebSocketConnected(),J=!1,Q=0,$=[];for(let W of this.userSessions.values())if(Q++,W.terminal.isSessionRunning())J=!0,$.push(W.terminal.getPid());let Y="healthy";if(!Z&&Q===0)Y="degraded";else if(!Z)Y="unhealthy";let X=process.memoryUsage();return{status:Y,uptime:W50(),backend:{connected:Z,lastPongAt:this.backend.getLastPongAt()>0?new Date(this.backend.getLastPongAt()).toISOString():null,lastMessageAt:this.lastMessageAt>0?new Date(this.lastMessageAt).toISOString():null},terminal:{running:J,pid:$.length>0?$[0]??null:null,sessions:Q},memory:{rss:X.rss,heapUsed:X.heapUsed,heapTotal:X.heapTotal,external:X.external},restartIn:this.config.restartIntervalMs>0?Math.max(0,Math.round((this.startTime+this.config.restartIntervalMs-Date.now())/1000)):void 0,timestamp:new Date().toISOString()}}async resolveUsername(Z){if(this.userCache.has(Z))return this.userCache.get(Z);return this.userCache.set(Z,Z),Z}async handleIncomingMessage(Z,J,Q,$,Y){if(h.info(`Received: "${Z}" from user ${Q}`),this.lastMessageAt=Date.now(),D7("Bridge",`postId=${$}, channelId=${J}, fileIds=${JSON.stringify(Y)}`),this.allowedUserIds.size>0&&!this.allowedUserIds.has(Q)){h.info(`Unauthorized user ${Q} - ignoring message`);return}try{this.currentUserId=Q;let X=await this.getOrCreateSession("system",J);if(!X.initialized)X.initialized=!0,h.info(`Starting terminal session for @${X.username}`),await X.terminal.start(),X.outputFormatter.clear();if(Z.length===0)return;D7("Bridge",`Raw input: ${JSON.stringify(Z)} (${Z.length} bytes)`),await X.terminal.writeRaw(Z)}catch(X){h.error(`Error processing message from ${Q}: ${X}`);try{await this.sendMessageToUser(Q,`\u26A0\uFE0F Error processing command: ${X}`)}catch{}}}handleTerminalOutputForUser(Z,J){let Q=this.getSession(Z);if(!Q){D7("Bridge",`No session for user ${Z}, ignoring output`);return}if(!Q.initialized){D7("Bridge",`Ignoring pre-init output for user ${Z}: ${J.length} bytes`);return}D7("Bridge",`Terminal output for ${Q.username}: ${J.length} bytes`),Q.outputFormatter.addOutput(J)}async sendMessageToUser(Z,J){try{if(YQ(this.backend))this.backend.client.sendOutput(J)}catch(Q){h.error(`Failed to send message to user ${Z}: ${Q}`)}}async handleTerminalExitForUser(Z,J,Q){let $=this.getSession(Z);if(!$)return;if(await $.outputFormatter.forceFlush(),$.terminal.isAutoRestartEnabled()&&!this.isShuttingDown){let Y=`Terminal exited (code: ${J}${Q?`, signal: ${Q}`:""}). Auto-restarting...`;try{await this.sendMessageToUser(Z,Y)}catch(X){h.error(`Failed to send exit message: ${X}`)}}else if(!this.isShuttingDown){let Y=`Terminal exited (code: ${J}${Q?`, signal: ${Q}`:""}). Session closed.`;try{await this.sendMessageToUser(Z,Y)}catch(X){h.error(`Failed to send exit message: ${X}`)}$.outputFormatter.destroy(),this.userSessions.delete(Z),h.info(`Session for ${$.username} cleaned up`)}}async shutdown(){if(h.info("Shutting down..."),this.isShuttingDown=!0,await this.saveState(),this.gcInterval)clearInterval(this.gcInterval),this.gcInterval=null;if(this.spawnTelemetryInterval)clearInterval(this.spawnTelemetryInterval),this.spawnTelemetryInterval=null;X50(),w50();for(let[Z,J]of this.userSessions)h.info(`Shutting down session for ${J.username}`),await J.outputFormatter.forceFlush(),await J.terminal.shutdown();await this.backend.disconnect(),await t70(),h.info("Shutdown complete")}async saveState(){try{let Z={};for(let[,$]of this.userSessions){let Y=await $.terminal.getCurrentDir()||$.terminal.getLastKnownDir();if(Y)Z[$.username]=Y}let J={workingDir:process.cwd(),userDirs:Z,timestamp:new Date().toISOString()};E("fs").writeFileSync(BQ,JSON.stringify(J,null,2)),h.info(`State saved: ${J.workingDir}, user dirs: ${Object.keys(Z).length}`)}catch(Z){h.warn(`Failed to save state: ${Z}`)}}restoreState(){try{let Z=E("fs");if(!Z.existsSync(BQ))return;let J=Z.readFileSync(BQ,"utf-8"),Q=JSON.parse(J);if(Q.workingDir&&Q.workingDir!==process.cwd())process.chdir(Q.workingDir),h.info(`Restored working directory: ${Q.workingDir}`);if(Q.userDirs)this.restoredUserDirs=Q.userDirs,h.info(`Restored user directories for: ${Object.keys(Q.userDirs).join(", ")}`)}catch{}}}var h;var T40=q(()=>{u70();i70();Q50();b6();K50();j50();h50();u50();h=f0("Bridge")});var vO={};y1(vO,{startSingleInstance:()=>PG,startCommand:()=>Op0,resolveInstanceFromCwd:()=>f40});import{resolve as bO}from"path";function f40(){let Z=process.cwd(),J=x6(Z);if(J?.HUB_TOKEN&&J?.AGENT_NAME)return{name:J.AGENT_NAME,workDir:Z};let Q=v6(),$=x6(Q);if($?.HUB_TOKEN&&$?.AGENT_NAME)return{name:$.AGENT_NAME,workDir:Q};return null}function E40(Z,J,Q){let $=vY(Z),Y=xY(Z,WQ(),J,$,Q),X=Bun.spawn(["bash",Y],{cwd:J,detached:!0,stdio:["ignore","ignore","ignore"]});return X.unref(),X.pid}function qp0(Z){if(Z.hubToken&&Z.hubUrl)return{hubToken:Z.hubToken,hubUrl:Z.hubUrl,agentName:Z.name,role:Z.role||"worker"};return}function PG(Z,J,Q,$){let Y=w6(Z,J);if(Y){if(Y.pid&&d0(Y.pid))return console.log(`Already running: "${J}" (PID ${Y.pid})`),Z;let H=qp0(Y),B=E40(J,Y.workDir,H),V=new Date().toISOString();return Z=z8(Z,J,{pid:B,desiredState:"started",lastStartedAt:V}),console.log(`Started "${J}" (PID ${B}) from ${Y.workDir}`),Z}let X=BG(Z,bO(Q));if(X)return console.error(`Another instance '${X.name}' already uses ${bO(Q)}`),Z;let W=$?.hubToken||x6(Q)?.HUB_TOKEN;if(W){let H=g9(Z).find((B)=>{if(B.hubToken&&B.hubToken===W)return!0;if(!B.hubToken)return x6(B.workDir)?.HUB_TOKEN===W;return!1});if(H)return console.error(`Another instance '${H.name}' already uses the same credentials (HUB_TOKEN)`),Z}let K=E40(J,Q,$),z=new Date().toISOString(),G={name:J,workDir:bO(Q),desiredState:"started",pid:K,registeredAt:z,lastStartedAt:z,lastStoppedAt:null};return Z=GG(Z,G),console.log(`Started "${J}" (PID ${K}) from ${Q}`),Z}async function wp0(){let Z=f40();if(!Z)console.error("No .env found in current directory or ~/.the-link/"),console.error("Create a .env with HUB_TOKEN, HUB_URL, and AGENT_NAME"),process.exit(1);let J=x6(Z.workDir);if(!J?.HUB_TOKEN)console.error(`HUB_TOKEN is required in ${Z.workDir}/.env`),process.exit(1);if(!J?.AGENT_NAME)console.error("AGENT_NAME is required in .env for multi-instance management"),process.exit(1);await V1();try{let Q=Z1();Q=PG(Q,Z.name,Z.workDir),B1(Q)}finally{F1()}}async function jp0(Z){await V1();try{let J=Z1(),Q=w6(J,Z);if(!Q)console.error(`Instance '${Z}' not registered. Run \`the-link start\` from its directory first.`),process.exit(1);if(!(Q.hubToken&&Q.hubUrl)){if(!x6(Q.workDir)?.HUB_TOKEN)console.error(`Cannot start '${Z}': no credentials in registry or .env at ${Q.workDir}`),process.exit(1)}J=PG(J,Z,Q.workDir),B1(J)}finally{F1()}}async function Dp0(){await V1();try{let Z=Z1(),J=J40(Z);if(J.length===0){console.log("No instances with desiredState=started.");return}let Q=0,$=0,Y=0;for(let K of J){if(K.pid&&d0(K.pid)){Q++;continue}if(!(K.hubToken&&K.hubUrl)){if(!x6(K.workDir)?.HUB_TOKEN){console.error(`Skipping '${K.name}': no credentials in registry or .env at ${K.workDir}`),Y++;continue}}try{Z=PG(Z,K.name,K.workDir),$++}catch(G){console.error(`Failed to start '${K.name}': ${G}`),Y++}}B1(Z);let X=J.length,W=[];if($>0)W.push(`${$} started`);if(Q>0)W.push(`${Q} already running`);if(Y>0)W.push(`${Y} failed`);console.log(`Recovery: ${W.join(", ")} (${X} total)`)}finally{F1()}}async function Op0(Z){if(Z.includes("--all"))return Dp0();let J=Z.find((Q)=>!Q.startsWith("-"));if(J)return jp0(J);return wp0()}var xO=q(()=>{L7();qG();UG();zG();p5()});var S40={};y1(S40,{stopCommand:()=>kp0});async function Cp0(Z){if(!d0(Z))return;process.kill(Z,"SIGTERM");let J=Math.ceil(Lp0/y40);for(let Q=0;Q<J;Q++)if(await Bun.sleep(y40),!d0(Z))return;if(d0(Z))process.kill(Z,"SIGKILL")}async function gO(Z,J){if(J.pid&&d0(J.pid))await Cp0(J.pid),console.log(`Stopped "${J.name}" (was PID ${J.pid})`);else console.log(`"${J.name}" was not running`);let Q=new Date().toISOString();return z8(Z,J.name,{pid:null,desiredState:"stopped",lastStoppedAt:Q})}async function Pp0(){let Z=process.cwd();await V1();try{let J=Z1(),Q=BG(J,Z);if(!Q)console.error("No instance registered for this directory. Use `the-link stop <name>`."),process.exit(1);J=await gO(J,Q),B1(J)}finally{F1()}}async function Mp0(Z){await V1();try{let J=Z1(),Q=w6(J,Z);if(!Q)console.error(`Instance '${Z}' not found in registry.`),process.exit(1);J=await gO(J,Q),B1(J)}finally{F1()}}async function Rp0(){await V1();try{let Z=Z1(),J=g9(Z);if(J.length===0){console.log("No instances registered.");return}let Q=0;for(let $ of J)if($.pid&&d0($.pid))Z=await gO(Z,$),Q++;else{let Y=new Date().toISOString();Z=z8(Z,$.name,{pid:null,desiredState:"stopped",lastStoppedAt:Y})}B1(Z),console.log(`Stopped ${Q}/${J.length} instances.`)}finally{F1()}}async function kp0(Z){if(Z.includes("--all"))return Rp0();let J=Z.find((Q)=>!Q.startsWith("-"));if(J)return Mp0(J);return Pp0()}var Lp0=5000,y40=200;var _40=q(()=>{p5()});var h40={};y1(h40,{listCommand:()=>Np0});async function Np0(){let Z=Z1();VG(Z);let J=g9(Z);if(J.length===0){console.log("No instances registered.");return}let Q=Math.max(4,...J.map((K)=>K.name.length)),$=Math.max(5,...J.map((K)=>K.desiredState.length)),Y=7,X=Math.max(3,...J.map((K)=>K.pid?String(K.pid).length:1)),W=(K,z)=>K.padEnd(z);console.log(`${W("NAME",Q)} ${W("STATE",$)} ${W("STATUS",Y)} ${W("PID",X)} WORK DIR`);for(let K of J){let z=FG(K),G=K.pid&&z==="running"?String(K.pid):"-";console.log(`${W(K.name,Q)} ${W(K.desiredState,$)} ${W(z,Y)} ${W(G,X)} ${K.workDir}`)}}var b40=q(()=>{p5()});var u40={};y1(u40,{removeCommand:()=>yp0});import{unlinkSync as v40,existsSync as x40}from"fs";import{join as g40}from"path";async function Ip0(Z){if(!d0(Z))return;process.kill(Z,"SIGTERM");let J=Math.ceil(Ap0/d40);for(let Q=0;Q<J;Q++)if(await Bun.sleep(d40),!d0(Z))return;if(d0(Z))process.kill(Z,"SIGKILL")}function Tp0(Z,J){let Q=g40(Z,".the-link-state.json");if(!J){let $=g40(Z,".env");if(x40($))v40($)}if(x40(Q))v40(Q)}function c40(Z){return Z===v6()}async function m40(Z,J){if(c40(J.workDir))console.error(`Cannot remove the default instance. Use 'the-link stop ${J.name}' instead.`),process.exit(1);if(J.pid&&d0(J.pid))await Ip0(J.pid);let Q=!!(J.hubToken&&J.hubUrl);return Tp0(J.workDir,Q),Z=HG(Z,J.name),console.log(`Removed "${J.name}" \u2014 stopped process and deleted .env from ${J.workDir}`),Z}async function Ep0(Z){await V1();try{let J=Z1(),Q=w6(J,Z);if(!Q)console.error(`Instance '${Z}' not found in registry.`),process.exit(1);J=await m40(J,Q),B1(J)}finally{F1()}}async function fp0(){await V1();try{let Z=Z1(),J=g9(Z);if(J.length===0){console.log("No instances registered.");return}let Q=0,$=0;for(let Y of J){if(c40(Y.workDir)){console.log(`Skipping default instance "${Y.name}" \u2014 cannot be removed.`),$++;continue}try{Z=await m40(Z,Y),Q++}catch(X){console.error(`Failed to remove '${Y.name}': ${X}`)}}B1(Z),console.log(`Removed ${Q} instance(s)${$>0?`, skipped ${$} (default)`:""}.`)}finally{F1()}}async function yp0(Z){if(Z.includes("--all"))return fp0();let J=Z.find((Q)=>!Q.startsWith("-"));if(!J)console.error("Usage: the-link remove <name> | --all"),process.exit(1);return Ep0(J)}var Ap0=5000,d40=200;var l40=q(()=>{L7();p5()});var e40={};y1(e40,{debugStateCommand:()=>t40,debugScheduleCommand:()=>r40,debugCommand:()=>xp0});import{existsSync as Sp0,readFileSync as _p0}from"fs";import{join as i40}from"path";import{homedir as hp0}from"os";function vp0(){let Z=process.env.HEALTH_PORT;if(Z&&parseInt(Z,10)>0)return`http://127.0.0.1:${Z}`;if(Sp0(p40))try{let J=_p0(p40,"utf8").trim(),Q=parseInt(J,10);if(Q>0)return`http://127.0.0.1:${Q}`}catch{}return null}async function o40(Z){let J=vp0();if(!J)throw Error("Debug endpoint not found. Start the-link with DEBUG_SCHEDULER=1 to enable it.");let Q=`${J}${Z}`,$=await fetch(Q);if(!$.ok){let Y=await $.text().catch(()=>"(unreadable)");throw Error(`Debug endpoint returned ${$.status}: ${Y}`)}return $.json()}function n40(Z,J){let Q=" ".repeat(J);return Z.split(`
|
|
478
|
+
`)}else z=H.stderr.toString().trim()}if(!K)K=z||W.stderr.toString().trim();let G=W.exitCode===0||!!K;this.backend.sendCommandResult?.("git_diff",{path:$,file:Y,fileType:X,success:G,diff:K,...G?{}:{error:K||"Failed to get staged diff"}})}else if(X==="untracked"){W=Bun.spawnSync(["git","-C",$,"diff","--no-index","--","/dev/null",Y],{stdout:"pipe",stderr:"pipe"});let K=W.stdout.toString()+W.stderr.toString(),z=W.exitCode===0||W.exitCode===1;this.backend.sendCommandResult?.("git_diff",{path:$,file:Y,fileType:X,success:z,diff:K.trim()})}else{W=Bun.spawnSync(["git","-C",$,"diff","--",Y],{stdout:"pipe",stderr:"pipe"});let K=W.stdout.toString()+W.stderr.toString();this.backend.sendCommandResult?.("git_diff",{path:$,file:Y,fileType:X,success:W.exitCode===0,diff:K.trim()})}}catch($){this.backend.sendCommandResult?.("git_diff",{path:J?.path,file:J?.file,fileType:J?.fileType,success:!1,diff:"",error:$.message})}break}case"list_directory":{try{let $=typeof J?.path==="string"?J.path.trim():"",Y=await this.resolveExplorerCwdRoot(Q);if(Y===null&&!$){this.backend.sendCommandResult?.("list_directory",{path:"/",parent:null,entries:[],error:"Explorer cwdRoot is not set (no session, no HOME, no homeDir) and no explicit path was provided."});break}let X=Y??"";$=$||X;let W=g50($,X);this.backend.sendCommandResult?.("list_directory",W)}catch($){this.backend.sendCommandResult?.("list_directory",{path:typeof J?.path==="string"?J.path:"",parent:null,entries:[],error:$.message??"Unknown error"})}break}case"read_file":{try{if(typeof J?.path!=="string"){this.backend.sendCommandResult?.("read_file",{path:"",size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:"path must be a string",errorCode:"io_error"});break}let $=J.path.trim();if(!$){this.backend.sendCommandResult?.("read_file",{path:"",size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:"No path provided",errorCode:"io_error"});break}let X=await this.resolveExplorerCwdRoot(Q)??"",W=d50($,X);this.backend.sendCommandResult?.("read_file",W)}catch($){this.backend.sendCommandResult?.("read_file",{path:typeof J?.path==="string"?J.path:"",size:0,mtime:0,encoding:"utf8",content:"",isBinary:!1,truncated:!1,error:$.message??"Unknown error",errorCode:"io_error"})}break}case"write_file":{try{let $=typeof J?.path==="string"?J.path.trim():"";if(typeof J?.content!=="string"){this.backend.sendCommandResult?.("write_file",{path:$,success:!1,error:"content must be a string",errorCode:"io_error"});break}let Y=J.content,X=J?.expectedMtime,W;if(X===void 0||X===null)W=void 0;else{let H=Number(X);if(!Number.isFinite(H)){this.backend.sendCommandResult?.("write_file",{path:$,success:!1,error:"expectedMtime must be a finite number",errorCode:"io_error"});break}W=H}if(!$){this.backend.sendCommandResult?.("write_file",{path:"",success:!1,error:"No path provided",errorCode:"io_error"});break}let z=await this.resolveExplorerCwdRoot(Q)??"",G=c50($,Y,W,z);this.backend.sendCommandResult?.("write_file",G)}catch($){this.backend.sendCommandResult?.("write_file",{path:typeof J?.path==="string"?J.path:"",success:!1,error:$.message??"Unknown error",errorCode:"io_error"})}break}case"delete_file":{try{if(typeof J?.path!=="string"){this.backend.sendCommandResult?.("delete_file",{path:typeof J?.path==="string"?J.path:"",success:!1,error:"path parameter is required and must be a string",errorCode:"io_error"});break}let $=J.path.trim();if(!$){this.backend.sendCommandResult?.("delete_file",{path:"",success:!1,error:"No path provided",errorCode:"io_error"});break}let X=await this.resolveExplorerCwdRoot(Q)??"",W=m50($,X);this.backend.sendCommandResult?.("delete_file",W)}catch($){this.backend.sendCommandResult?.("delete_file",{path:typeof J?.path==="string"?J.path:"",success:!1,error:$.message??"Unknown error",errorCode:"io_error"})}break}case"list_panes":{if(!Q)break;let $=await Q.terminal.listPanes();this.backend.sendCommandResult?.("list_panes",{panes:$});break}case"select_pane":{if(!Q)break;let $=Number(J?.index??0);await Q.terminal.selectPane($),Q.terminal.invalidateReadCache();let Y=await Q.terminal.listPanes();this.backend.sendCommandResult?.("list_panes",{panes:Y});break}case"next_pane":{if(!Q)break;await Q.terminal.nextPane(),Q.terminal.invalidateReadCache();let $=await Q.terminal.listPanes();this.backend.sendCommandResult?.("list_panes",{panes:$});break}case"prev_pane":{if(!Q)break;await Q.terminal.previousPane(),Q.terminal.invalidateReadCache();let $=await Q.terminal.listPanes();this.backend.sendCommandResult?.("list_panes",{panes:$});break}case"new_window":{if(!Q)break;await Q.terminal.createWindow(),Q.terminal.invalidateReadCache();let $=await Q.terminal.listWindows();this.backend.sendCommandResult?.("list_windows",{windows:$});break}case"kill_window":{if(!Q)break;if((await Q.terminal.listWindows()).length<=1){this.backend.sendCommandResult?.("kill_window",{error:"Cannot close the last window"});break}let Y=Number(J?.index??0);await Q.terminal.killWindow(Y),Q.terminal.invalidateReadCache();let X=await Q.terminal.listWindows();this.backend.sendCommandResult?.("list_windows",{windows:X});break}case"list_windows":{if(!Q)break;let $=await Q.terminal.listWindows();this.backend.sendCommandResult?.("list_windows",{windows:$});break}case"select_window":{if(!Q)break;let $=Number(J?.index??0);await Q.terminal.selectWindow($),Q.terminal.invalidateReadCache();let Y=await Q.terminal.listWindows();this.backend.sendCommandResult?.("list_windows",{windows:Y});break}case"next_window":{if(!Q)break;await Q.terminal.nextWindow(),Q.terminal.invalidateReadCache();let $=await Q.terminal.listWindows();this.backend.sendCommandResult?.("list_windows",{windows:$});break}case"prev_window":{if(!Q)break;await Q.terminal.previousWindow(),Q.terminal.invalidateReadCache();let $=await Q.terminal.listWindows();this.backend.sendCommandResult?.("list_windows",{windows:$});break}case"list_instances":{y.info("list_instances command received");try{let{listAllInstances:$}=await Promise.resolve().then(() => (zQ(),KQ));y.info("instance-operations module loaded");let Y=await $();y.info(`list_instances: returning ${Y.length} instances`);let X=Y.find((W)=>W.isDefault)?.name||this.config.hub.agentName;this.backend.sendCommandResult?.("list_instances",{instances:Y,defaultName:X})}catch($){y.error(`list_instances failed: ${$}`),this.backend.sendCommandResult?.("list_instances",{success:!1,message:String($),instances:[]})}break}case"create_instance":{try{let $=["name","workDir","token","hubUrl","role","tokenId"];for(let W of $)if(typeof J?.[W]!=="string"||!J[W]){this.backend.sendCommandResult?.("create_instance",{success:!1,message:`Missing or invalid param: '${W}'`});break}if($.some((W)=>typeof J?.[W]!=="string"||!J[W]))break;let{createInstance:Y}=await Promise.resolve().then(() => (zQ(),KQ)),X=await Y(J);this.backend.sendCommandResult?.("create_instance",X)}catch($){this.backend.sendCommandResult?.("create_instance",{success:!1,message:String($)})}break}case"start_instance":{if(typeof J?.name!=="string"||!J.name){this.backend.sendCommandResult?.("start_instance",{success:!1,message:"Missing or invalid param: 'name'"});break}try{let{startInstanceByName:$}=await Promise.resolve().then(() => (zQ(),KQ)),Y=await $(J.name);this.backend.sendCommandResult?.("start_instance",Y)}catch($){this.backend.sendCommandResult?.("start_instance",{success:!1,message:String($)})}break}case"stop_instance":{if(typeof J?.name!=="string"||!J.name){this.backend.sendCommandResult?.("stop_instance",{success:!1,message:"Missing or invalid param: 'name'"});break}try{let{stopInstanceByName:$}=await Promise.resolve().then(() => (zQ(),KQ)),Y=await $(J.name);this.backend.sendCommandResult?.("stop_instance",Y)}catch($){this.backend.sendCommandResult?.("stop_instance",{success:!1,message:String($)})}break}case"delete_instance":{if(typeof J?.name!=="string"||!J.name){this.backend.sendCommandResult?.("delete_instance",{success:!1,message:"Missing or invalid param: 'name'"});break}try{let{deleteInstance:$}=await Promise.resolve().then(() => (zQ(),KQ)),Y=await $(J.name);this.backend.sendCommandResult?.("delete_instance",Y)}catch($){this.backend.sendCommandResult?.("delete_instance",{success:!1,message:String($)})}break}case"install_extension":{try{let{installExtension:$}=await Promise.resolve().then(() => (A40(),N40)),Y=await $(J||{},Q,this.config);this.backend.sendCommandResult?.("install_extension",Y)}catch($){y.error(`install_extension failed: ${$}`),this.backend.sendCommandResult?.("install_extension",{success:!1,error:String($)})}break}default:y.warn(`Unknown control action: ${Z}`)}}async scanGitRepos(Z){Z=Z.trim(),y.info(`Git scan: scanning ${Z}`);let J=[];if(Bun.spawnSync(["git","-C",Z,"rev-parse","--git-dir"],{stdout:"pipe",stderr:"pipe"}).exitCode===0){y.info(`Git scan: ${Z} is a git repo`);let X=Z,W=X.split("/").pop()||X,K=await this.getGitRepoInfo(X,W);if(K)J.push(K)}let Y=Bun.spawnSync(["find",Z,"-mindepth","1","-maxdepth","3","-name",".git","-type","d"],{stdout:"pipe",stderr:"pipe"}).stdout.toString().trim();if(y.info(`Git scan: find children result="${Y}"`),Y){let X=Y.split(`
|
|
479
|
+
`).filter(Boolean);for(let W of X){let K=W.replace(/\/\.git$/,"");if(K===Z)continue;let z=K.split("/").pop()||K,G=await this.getGitRepoInfo(K,z);if(G)J.push(G)}}return y.info(`Git scan: found ${J.length} repos`),J}async getGitRepoInfo(Z,J){try{let $=Bun.spawnSync(["git","-C",Z,"branch","--show-current"],{stdout:"pipe",stderr:"pipe"}).stdout.toString().trim();if(!$)$=Bun.spawnSync(["git","-C",Z,"rev-parse","--short","HEAD"],{stdout:"pipe",stderr:"pipe"}).stdout.toString().trim()||"(detached)";let X=Bun.spawnSync(["git","-C",Z,"status","--porcelain"],{stdout:"pipe",stderr:"pipe"}).stdout.toString().trim().split(`
|
|
480
|
+
`).filter(Boolean),W=[],K=[],z=[];for(let G of X){let H=G[0],B=G[1],V=G.slice(3);if(H==="?"&&B==="?")z.push(V);else{if(H!==" "&&H!=="?")W.push(V);if(B!==" "&&B!=="?")K.push(V)}}return{path:Z,name:J,branch:$,staged:W,modified:K,untracked:z}}catch{return null}}getConfig(){return this.config}async getOrCreateSession(Z,J){let Q=this.userSessions.get(Z);if(Q)return Q.channelId=J,Q;let $=await this.resolveUsername(Z);y.info(`Creating new session for @${$} (${Z})`);let Y=this.createOutputFormatter(Z,J),X=new QG(this.config,{onData:(z)=>{this.handleTerminalOutputForUser(Z,z)},onExit:(z,G)=>{this.handleTerminalExitForUser(Z,z,G)}}),W=this.getSocketName();X.setSocketName(W),X.setSessionName($);let K=this.restoredUserDirs[$];if(K)X.setHomeDir(K),D7(`Restored working directory for @${$}: ${K}`);return Q={terminal:X,outputFormatter:Y,channelId:J,username:$,initialized:!1},this.userSessions.set(Z,Q),Q}getSession(Z){return this.userSessions.get(Z)||null}async resolveExplorerCwdRoot(Z){let J="";if(Z)J=await Z.terminal.getCurrentDir()??"";if(J=J||this.config.terminal.homeDir||process.env.HOME||"",XQ(J))return null;return J}createOutputFormatter(Z,J){if(!YQ(this.backend))throw Error("Unknown backend type");let Q=this.backend.client;return new ZO(this.config,{userId:Z},{onSendMessage:async($)=>{return Q.sendOutput($),{postId:`hub360-${Date.now()}`}},onEditMessage:async($,Y)=>{return Q.sendOutput(Y),{postId:`hub360-${Date.now()}`}}})}static MAX_PROXY_RESPONSE_SIZE=921600;async handleProxyRequest(Z){let{requestId:J,tunnelId:Q,method:$,path:Y,headers:X,body:W,bodyEncoding:K}=Z,z=this.extractPortFromTunnel(Q,X);if(!z){this.sendProxyError(J,502,"Missing local port in proxy request");return}y.info(`Proxy ${$} localhost:${z}${Y} (tunnel=${Q.slice(0,8)}...)`);try{let G=`http://localhost:${z}${Y}`,H=null;if(W!==null)if(K==="base64")H=Buffer.from(W,"base64");else H=W;let B={...X};B.host=`localhost:${z}`,delete B["x-tunnel-local-port"];let V=await fetch(G,{method:$,headers:B,body:H,redirect:"manual",signal:AbortSignal.timeout(25000)}),F=await V.arrayBuffer();if(F.byteLength>hO.MAX_PROXY_RESPONSE_SIZE){this.sendProxyError(J,502,"Response body too large for tunnel proxy");return}let U=null,w="utf8";if(F.byteLength>0){let L=V.headers.get("content-type")||"";if(this.isTextContent(L))U=new TextDecoder().decode(F),w="utf8";else U=Buffer.from(F).toString("base64"),w="base64"}let D={};V.headers.forEach((L,C)=>{D[C]=L}),this.backend.sendProxyResponse?.({requestId:J,statusCode:V.status,headers:D,body:U,bodyEncoding:w})}catch(G){let H=G.message||String(G);if(H.includes("ECONNREFUSED")||H.includes("ConnectionRefused")||H.includes("fetch failed"))y.warn(`Proxy: port ${z} not listening (${H})`),this.sendProxyError(J,502,`Connection refused \u2014 nothing is listening on port ${z}`);else if(H.includes("timed out")||H.includes("AbortError")||H.includes("TimeoutError"))y.warn(`Proxy: request to localhost:${z} timed out`),this.sendProxyError(J,504,"Local service did not respond in time");else y.error(`Proxy: unexpected error \u2014 ${H}`),this.sendProxyError(J,502,`Proxy error: ${H}`)}}sendProxyError(Z,J,Q){this.backend.sendProxyResponse?.({requestId:Z,statusCode:J,headers:{"content-type":"application/json"},body:JSON.stringify({error:Q}),bodyEncoding:"utf8"})}extractPortFromTunnel(Z,J){let Q=J["x-tunnel-local-port"];if(Q){let $=parseInt(Q,10);if(!isNaN($)&&$>0&&$<=65535)return $}return y.warn("proxy_request missing x-tunnel-local-port header"),0}isTextContent(Z){let J=Z.toLowerCase();return J.includes("text/")||J.includes("application/json")||J.includes("application/xml")||J.includes("application/x-www-form-urlencoded")}getSocketName(){return this.config.hub.agentName||"link"}async start(){try{if(this.restoreState(),await this.backend.connect(),this.config.healthPort>0)Y50(this.config.healthPort,()=>this.getHealthStatus());if(process.env.DEBUG_SCHEDULER==="1"&&YQ(this.backend)){let{scheduleState:Z,firedLog:J}=this.backend.client;q50({state:Z,firedLog:J,port:this.config.healthPort>0?Math.min(this.config.healthPort+1,65535):0}),y.info("DEBUG_SCHEDULER=1 \u2014 debug endpoint started on http://127.0.0.1 (see debug-port file)")}if(this.config.gcIntervalMs>0)this.gcInterval=setInterval(()=>{Bun.gc(!1)},this.config.gcIntervalMs),y.info(`Periodic GC: every ${this.config.gcIntervalMs/1000}s`);this.spawnTelemetryInterval=setInterval(()=>{let Z=0,J=0;for(let Q of this.userSessions.values())Z+=Q.terminal.getTmuxSpawnCount(),J++;y.debug(`[perf] tmuxSpawnCount total=${Z} sessions=${J}`)},30000),y.info(`Ready! Waiting for messages...
|
|
481
|
+
`)}catch(Z){throw y.error("Failed to start:",Z),Z}}getHealthStatus(){let Z=this.backend.isWebSocketConnected(),J=!1,Q=0,$=[];for(let W of this.userSessions.values())if(Q++,W.terminal.isSessionRunning())J=!0,$.push(W.terminal.getPid());let Y="healthy";if(!Z&&Q===0)Y="degraded";else if(!Z)Y="unhealthy";let X=process.memoryUsage();return{status:Y,uptime:W50(),backend:{connected:Z,lastPongAt:this.backend.getLastPongAt()>0?new Date(this.backend.getLastPongAt()).toISOString():null,lastMessageAt:this.lastMessageAt>0?new Date(this.lastMessageAt).toISOString():null},terminal:{running:J,pid:$.length>0?$[0]??null:null,sessions:Q},memory:{rss:X.rss,heapUsed:X.heapUsed,heapTotal:X.heapTotal,external:X.external},restartIn:this.config.restartIntervalMs>0?Math.max(0,Math.round((this.startTime+this.config.restartIntervalMs-Date.now())/1000)):void 0,timestamp:new Date().toISOString()}}async resolveUsername(Z){if(this.userCache.has(Z))return this.userCache.get(Z);return this.userCache.set(Z,Z),Z}async handleIncomingMessage(Z,J,Q,$,Y){if(y.info(`Received: "${Z}" from user ${Q}`),this.lastMessageAt=Date.now(),D7("Bridge",`postId=${$}, channelId=${J}, fileIds=${JSON.stringify(Y)}`),this.allowedUserIds.size>0&&!this.allowedUserIds.has(Q)){y.info(`Unauthorized user ${Q} - ignoring message`);return}try{this.currentUserId=Q;let X=await this.getOrCreateSession("system",J);if(!X.initialized)X.initialized=!0,y.info(`Starting terminal session for @${X.username}`),await X.terminal.start(),X.outputFormatter.clear();if(Z.length===0)return;D7("Bridge",`Raw input: ${JSON.stringify(Z)} (${Z.length} bytes)`),await X.terminal.writeRaw(Z)}catch(X){y.error(`Error processing message from ${Q}: ${X}`);try{await this.sendMessageToUser(Q,`\u26A0\uFE0F Error processing command: ${X}`)}catch{}}}handleTerminalOutputForUser(Z,J){let Q=this.getSession(Z);if(!Q){D7("Bridge",`No session for user ${Z}, ignoring output`);return}if(!Q.initialized){D7("Bridge",`Ignoring pre-init output for user ${Z}: ${J.length} bytes`);return}D7("Bridge",`Terminal output for ${Q.username}: ${J.length} bytes`),Q.outputFormatter.addOutput(J)}async sendMessageToUser(Z,J){try{if(YQ(this.backend))this.backend.client.sendOutput(J)}catch(Q){y.error(`Failed to send message to user ${Z}: ${Q}`)}}async handleTerminalExitForUser(Z,J,Q){let $=this.getSession(Z);if(!$)return;if(await $.outputFormatter.forceFlush(),$.terminal.isAutoRestartEnabled()&&!this.isShuttingDown){let Y=`Terminal exited (code: ${J}${Q?`, signal: ${Q}`:""}). Auto-restarting...`;try{await this.sendMessageToUser(Z,Y)}catch(X){y.error(`Failed to send exit message: ${X}`)}}else if(!this.isShuttingDown){let Y=`Terminal exited (code: ${J}${Q?`, signal: ${Q}`:""}). Session closed.`;try{await this.sendMessageToUser(Z,Y)}catch(X){y.error(`Failed to send exit message: ${X}`)}$.outputFormatter.destroy(),this.userSessions.delete(Z),y.info(`Session for ${$.username} cleaned up`)}}async shutdown(){if(y.info("Shutting down..."),this.isShuttingDown=!0,await this.saveState(),this.gcInterval)clearInterval(this.gcInterval),this.gcInterval=null;if(this.spawnTelemetryInterval)clearInterval(this.spawnTelemetryInterval),this.spawnTelemetryInterval=null;X50(),w50();for(let[Z,J]of this.userSessions)y.info(`Shutting down session for ${J.username}`),await J.outputFormatter.forceFlush(),await J.terminal.shutdown();await this.backend.disconnect(),await t70(),y.info("Shutdown complete")}async saveState(){try{let Z={};for(let[,$]of this.userSessions){let Y=await $.terminal.getCurrentDir()||$.terminal.getLastKnownDir();if(Y)Z[$.username]=Y}let J={workingDir:process.cwd(),userDirs:Z,timestamp:new Date().toISOString()};E("fs").writeFileSync(BQ,JSON.stringify(J,null,2)),y.info(`State saved: ${J.workingDir}, user dirs: ${Object.keys(Z).length}`)}catch(Z){y.warn(`Failed to save state: ${Z}`)}}restoreState(){try{let Z=E("fs");if(!Z.existsSync(BQ))return;let J=Z.readFileSync(BQ,"utf-8"),Q=JSON.parse(J);if(Q.workingDir&&Q.workingDir!==process.cwd())process.chdir(Q.workingDir),y.info(`Restored working directory: ${Q.workingDir}`);if(Q.userDirs)this.restoredUserDirs=Q.userDirs,y.info(`Restored user directories for: ${Object.keys(Q.userDirs).join(", ")}`)}catch{}}}var y;var T40=q(()=>{u70();i70();Q50();b6();K50();j50();h50();u50();y=f0("Bridge")});var vO={};y1(vO,{startSingleInstance:()=>PG,startCommand:()=>Op0,resolveInstanceFromCwd:()=>f40});import{resolve as bO}from"path";function f40(){let Z=process.cwd(),J=x6(Z);if(J?.HUB_TOKEN&&J?.AGENT_NAME)return{name:J.AGENT_NAME,workDir:Z};let Q=v6(),$=x6(Q);if($?.HUB_TOKEN&&$?.AGENT_NAME)return{name:$.AGENT_NAME,workDir:Q};return null}function E40(Z,J,Q){let $=vY(Z),Y=xY(Z,WQ(),J,$,Q),X=Bun.spawn(["bash",Y],{cwd:J,detached:!0,stdio:["ignore","ignore","ignore"]});return X.unref(),X.pid}function qp0(Z){if(Z.hubToken&&Z.hubUrl)return{hubToken:Z.hubToken,hubUrl:Z.hubUrl,agentName:Z.name,role:Z.role||"worker"};return}function PG(Z,J,Q,$){let Y=w6(Z,J);if(Y){if(Y.pid&&d0(Y.pid))return console.log(`Already running: "${J}" (PID ${Y.pid})`),Z;let H=qp0(Y),B=E40(J,Y.workDir,H),V=new Date().toISOString();return Z=z8(Z,J,{pid:B,desiredState:"started",lastStartedAt:V}),console.log(`Started "${J}" (PID ${B}) from ${Y.workDir}`),Z}let X=BG(Z,bO(Q));if(X)return console.error(`Another instance '${X.name}' already uses ${bO(Q)}`),Z;let W=$?.hubToken||x6(Q)?.HUB_TOKEN;if(W){let H=g9(Z).find((B)=>{if(B.hubToken&&B.hubToken===W)return!0;if(!B.hubToken)return x6(B.workDir)?.HUB_TOKEN===W;return!1});if(H)return console.error(`Another instance '${H.name}' already uses the same credentials (HUB_TOKEN)`),Z}let K=E40(J,Q,$),z=new Date().toISOString(),G={name:J,workDir:bO(Q),desiredState:"started",pid:K,registeredAt:z,lastStartedAt:z,lastStoppedAt:null};return Z=GG(Z,G),console.log(`Started "${J}" (PID ${K}) from ${Q}`),Z}async function wp0(){let Z=f40();if(!Z)console.error("No .env found in current directory or ~/.the-link/"),console.error("Create a .env with HUB_TOKEN, HUB_URL, and AGENT_NAME"),process.exit(1);let J=x6(Z.workDir);if(!J?.HUB_TOKEN)console.error(`HUB_TOKEN is required in ${Z.workDir}/.env`),process.exit(1);if(!J?.AGENT_NAME)console.error("AGENT_NAME is required in .env for multi-instance management"),process.exit(1);await V1();try{let Q=Z1();Q=PG(Q,Z.name,Z.workDir),B1(Q)}finally{F1()}}async function jp0(Z){await V1();try{let J=Z1(),Q=w6(J,Z);if(!Q)console.error(`Instance '${Z}' not registered. Run \`the-link start\` from its directory first.`),process.exit(1);if(!(Q.hubToken&&Q.hubUrl)){if(!x6(Q.workDir)?.HUB_TOKEN)console.error(`Cannot start '${Z}': no credentials in registry or .env at ${Q.workDir}`),process.exit(1)}J=PG(J,Z,Q.workDir),B1(J)}finally{F1()}}async function Dp0(){await V1();try{let Z=Z1(),J=J40(Z);if(J.length===0){console.log("No instances with desiredState=started.");return}let Q=0,$=0,Y=0;for(let K of J){if(K.pid&&d0(K.pid)){Q++;continue}if(!(K.hubToken&&K.hubUrl)){if(!x6(K.workDir)?.HUB_TOKEN){console.error(`Skipping '${K.name}': no credentials in registry or .env at ${K.workDir}`),Y++;continue}}try{Z=PG(Z,K.name,K.workDir),$++}catch(G){console.error(`Failed to start '${K.name}': ${G}`),Y++}}B1(Z);let X=J.length,W=[];if($>0)W.push(`${$} started`);if(Q>0)W.push(`${Q} already running`);if(Y>0)W.push(`${Y} failed`);console.log(`Recovery: ${W.join(", ")} (${X} total)`)}finally{F1()}}async function Op0(Z){if(Z.includes("--all"))return Dp0();let J=Z.find((Q)=>!Q.startsWith("-"));if(J)return jp0(J);return wp0()}var xO=q(()=>{L7();qG();UG();zG();p5()});var S40={};y1(S40,{stopCommand:()=>kp0});async function Cp0(Z){if(!d0(Z))return;process.kill(Z,"SIGTERM");let J=Math.ceil(Lp0/y40);for(let Q=0;Q<J;Q++)if(await Bun.sleep(y40),!d0(Z))return;if(d0(Z))process.kill(Z,"SIGKILL")}async function gO(Z,J){if(J.pid&&d0(J.pid))await Cp0(J.pid),console.log(`Stopped "${J.name}" (was PID ${J.pid})`);else console.log(`"${J.name}" was not running`);let Q=new Date().toISOString();return z8(Z,J.name,{pid:null,desiredState:"stopped",lastStoppedAt:Q})}async function Pp0(){let Z=process.cwd();await V1();try{let J=Z1(),Q=BG(J,Z);if(!Q)console.error("No instance registered for this directory. Use `the-link stop <name>`."),process.exit(1);J=await gO(J,Q),B1(J)}finally{F1()}}async function Mp0(Z){await V1();try{let J=Z1(),Q=w6(J,Z);if(!Q)console.error(`Instance '${Z}' not found in registry.`),process.exit(1);J=await gO(J,Q),B1(J)}finally{F1()}}async function Rp0(){await V1();try{let Z=Z1(),J=g9(Z);if(J.length===0){console.log("No instances registered.");return}let Q=0;for(let $ of J)if($.pid&&d0($.pid))Z=await gO(Z,$),Q++;else{let Y=new Date().toISOString();Z=z8(Z,$.name,{pid:null,desiredState:"stopped",lastStoppedAt:Y})}B1(Z),console.log(`Stopped ${Q}/${J.length} instances.`)}finally{F1()}}async function kp0(Z){if(Z.includes("--all"))return Rp0();let J=Z.find((Q)=>!Q.startsWith("-"));if(J)return Mp0(J);return Pp0()}var Lp0=5000,y40=200;var _40=q(()=>{p5()});var h40={};y1(h40,{listCommand:()=>Np0});async function Np0(){let Z=Z1();VG(Z);let J=g9(Z);if(J.length===0){console.log("No instances registered.");return}let Q=Math.max(4,...J.map((K)=>K.name.length)),$=Math.max(5,...J.map((K)=>K.desiredState.length)),Y=7,X=Math.max(3,...J.map((K)=>K.pid?String(K.pid).length:1)),W=(K,z)=>K.padEnd(z);console.log(`${W("NAME",Q)} ${W("STATE",$)} ${W("STATUS",Y)} ${W("PID",X)} WORK DIR`);for(let K of J){let z=FG(K),G=K.pid&&z==="running"?String(K.pid):"-";console.log(`${W(K.name,Q)} ${W(K.desiredState,$)} ${W(z,Y)} ${W(G,X)} ${K.workDir}`)}}var b40=q(()=>{p5()});var u40={};y1(u40,{removeCommand:()=>yp0});import{unlinkSync as v40,existsSync as x40}from"fs";import{join as g40}from"path";async function Ip0(Z){if(!d0(Z))return;process.kill(Z,"SIGTERM");let J=Math.ceil(Ap0/d40);for(let Q=0;Q<J;Q++)if(await Bun.sleep(d40),!d0(Z))return;if(d0(Z))process.kill(Z,"SIGKILL")}function Tp0(Z,J){let Q=g40(Z,".the-link-state.json");if(!J){let $=g40(Z,".env");if(x40($))v40($)}if(x40(Q))v40(Q)}function c40(Z){return Z===v6()}async function m40(Z,J){if(c40(J.workDir))console.error(`Cannot remove the default instance. Use 'the-link stop ${J.name}' instead.`),process.exit(1);if(J.pid&&d0(J.pid))await Ip0(J.pid);let Q=!!(J.hubToken&&J.hubUrl);return Tp0(J.workDir,Q),Z=HG(Z,J.name),console.log(`Removed "${J.name}" \u2014 stopped process and deleted .env from ${J.workDir}`),Z}async function Ep0(Z){await V1();try{let J=Z1(),Q=w6(J,Z);if(!Q)console.error(`Instance '${Z}' not found in registry.`),process.exit(1);J=await m40(J,Q),B1(J)}finally{F1()}}async function fp0(){await V1();try{let Z=Z1(),J=g9(Z);if(J.length===0){console.log("No instances registered.");return}let Q=0,$=0;for(let Y of J){if(c40(Y.workDir)){console.log(`Skipping default instance "${Y.name}" \u2014 cannot be removed.`),$++;continue}try{Z=await m40(Z,Y),Q++}catch(X){console.error(`Failed to remove '${Y.name}': ${X}`)}}B1(Z),console.log(`Removed ${Q} instance(s)${$>0?`, skipped ${$} (default)`:""}.`)}finally{F1()}}async function yp0(Z){if(Z.includes("--all"))return fp0();let J=Z.find((Q)=>!Q.startsWith("-"));if(!J)console.error("Usage: the-link remove <name> | --all"),process.exit(1);return Ep0(J)}var Ap0=5000,d40=200;var l40=q(()=>{L7();p5()});var e40={};y1(e40,{debugStateCommand:()=>t40,debugScheduleCommand:()=>r40,debugCommand:()=>xp0});import{existsSync as Sp0,readFileSync as _p0}from"fs";import{join as i40}from"path";import{homedir as hp0}from"os";function vp0(){let Z=process.env.HEALTH_PORT;if(Z&&parseInt(Z,10)>0)return`http://127.0.0.1:${Z}`;if(Sp0(p40))try{let J=_p0(p40,"utf8").trim(),Q=parseInt(J,10);if(Q>0)return`http://127.0.0.1:${Q}`}catch{}return null}async function o40(Z){let J=vp0();if(!J)throw Error("Debug endpoint not found. Start the-link with DEBUG_SCHEDULER=1 to enable it.");let Q=`${J}${Z}`,$=await fetch(Q);if(!$.ok){let Y=await $.text().catch(()=>"(unreadable)");throw Error(`Debug endpoint returned ${$.status}: ${Y}`)}return $.json()}function n40(Z,J){let Q=" ".repeat(J);return Z.split(`
|
|
482
482
|
`).map(($)=>Q+$).join(`
|
|
483
483
|
`)}function a40(Z){let J=[];return J.push(`id: ${Z.id}`),J.push(`label: ${Z.label??"(none)"}`),J.push(`status: ${Z.status}`),J.push(`nextRunAt: ${Z.nextRunAt??"null"}`),J.push(`lastRunAt: ${Z.lastRunAt??"null"}`),J.push(`lastRunResult: ${Z.lastRunResult??"null"}`),J.push(`cronExpr: ${Z.cronExpression??"null"}`),J.push(`runOnce: ${Z.runOnce}`),J.push(`windowTarget: ${Z.windowTarget}`),J.push(`windowIndex: ${Z.windowIndex??"null"}`),J.push(`disabledUntil: ${Z.disabledUntil??"null"}`),J.push(`tokenId: ${Z.tokenId??"null"}`),J.join(`
|
|
484
484
|
`)}function s40(Z){if(Z.length===0)return" (none)";return Z.map((J)=>` key=${J.key} ack=${J.ack} result=${J.result} executedAt=${J.executedAt}${J.executionId?` executionId=${J.executionId}`:""}`).join(`
|