eve 0.17.0 → 0.17.2
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/CHANGELOG.md +22 -0
- package/dist/src/channel/types.d.ts +11 -0
- package/dist/src/chunks/{use-eve-agent-BEOUv37s.js → use-eve-agent-Bh1NmXO9.js} +8 -5
- package/dist/src/chunks/{use-eve-agent-C25KOe9i.js → use-eve-agent-Dvy_Wjvq.js} +8 -5
- package/dist/src/cli/dev/tui/status-line.d.ts +1 -1
- package/dist/src/cli/dev/tui/tui.d.ts +2 -0
- package/dist/src/cli/dev/tui/tui.js +1 -1
- package/dist/src/cli/dev/url-target.d.ts +14 -0
- package/dist/src/cli/dev/url-target.js +1 -0
- package/dist/src/cli/run.js +3 -3
- package/dist/src/client/client.js +1 -1
- package/dist/src/compiled/.vendor-stamp.json +4 -4
- package/dist/src/compiled/@chat-adapter/slack/api.d.ts +132 -0
- package/dist/src/compiled/@chat-adapter/slack/api.js +1 -0
- package/dist/src/compiled/@chat-adapter/slack/blocks.js +1 -1
- package/dist/src/compiled/@chat-adapter/slack/format.d.ts +33 -0
- package/dist/src/compiled/@chat-adapter/slack/format.js +1 -0
- package/dist/src/compiled/@chat-adapter/slack/index.js +28 -28
- package/dist/src/compiled/@chat-adapter/slack/types-AntsVifS.d.ts +187 -0
- package/dist/src/compiled/@chat-adapter/slack/webhook.d.ts +10 -0
- package/dist/src/compiled/@chat-adapter/slack/webhook.js +1 -0
- package/dist/src/compiled/@workflow/core/classify-error.d.ts +15 -0
- package/dist/src/compiled/@workflow/core/index.js +2 -2
- package/dist/src/compiled/@workflow/core/runtime.js +27 -27
- package/dist/src/compiled/@workflow/core/serialization.d.ts +12 -3
- package/dist/src/compiled/@workflow/core/step/context-storage.d.ts +10 -0
- package/dist/src/compiled/@workflow/core/version.d.ts +1 -1
- package/dist/src/compiled/@workflow/core/workflow.js +1 -1
- package/dist/src/compiled/_chunks/node/chunk-AYN7QRWH-B__hKQV7.js +1 -0
- package/dist/src/compiled/_chunks/node/chunk-HFKBBKCJ-CWaVIQuL.js +1 -0
- package/dist/src/compiled/_chunks/workflow/{attribute-changes-DUxG-Gic.js → attribute-changes-zAifvEhb.js} +1 -1
- package/dist/src/compiled/_chunks/workflow/{resume-hook-CUCPW67D.js → resume-hook-C15uJ2ik.js} +1 -1
- package/dist/src/compiled/_chunks/workflow/run-BJUPZ0Ni.js +1 -0
- package/dist/src/compiled/_chunks/workflow/{sleep-Dxuzj5to.js → sleep-C8B-TYir.js} +1 -1
- package/dist/src/compiler/manifest.d.ts +2 -2
- package/dist/src/compiler/manifest.js +1 -1
- package/dist/src/compiler/normalize-agent-config.js +1 -1
- package/dist/src/context/keys.d.ts +2 -0
- package/dist/src/context/keys.js +1 -1
- package/dist/src/evals/assertions/run.js +2 -2
- package/dist/src/execution/create-session-step.d.ts +2 -0
- package/dist/src/execution/create-session-step.js +1 -1
- package/dist/src/execution/dispatch-runtime-actions-step.js +1 -1
- package/dist/src/execution/durable-session-store.d.ts +3 -0
- package/dist/src/execution/remote-agent-dispatch.js +1 -1
- package/dist/src/execution/runtime-context.js +1 -1
- package/dist/src/execution/session.d.ts +6 -1
- package/dist/src/execution/session.js +3 -3
- package/dist/src/execution/subagent-invocation.d.ts +20 -5
- package/dist/src/execution/subagent-invocation.js +2 -2
- package/dist/src/execution/subagent-tool.d.ts +7 -0
- package/dist/src/execution/subagent-tool.js +1 -1
- package/dist/src/execution/workflow-entry.js +1 -1
- package/dist/src/harness/advertised-tools.d.ts +33 -0
- package/dist/src/harness/advertised-tools.js +1 -0
- package/dist/src/harness/subagent-depth.d.ts +17 -0
- package/dist/src/harness/subagent-depth.js +1 -0
- package/dist/src/harness/tool-loop.js +1 -1
- package/dist/src/harness/turn-tag-state.d.ts +30 -22
- package/dist/src/harness/turn-tag-state.js +1 -1
- package/dist/src/harness/types.d.ts +28 -0
- package/dist/src/harness/workflow-continuation-security.d.ts +1 -0
- package/dist/src/harness/workflow-continuation-security.js +1 -1
- package/dist/src/internal/application/package.js +1 -1
- package/dist/src/internal/authored-definition/core.js +1 -1
- package/dist/src/internal/http/basic-auth.d.ts +1 -0
- package/dist/src/internal/http/basic-auth.js +1 -0
- package/dist/src/internal/nitro/host/configure-nitro-routes.js +2 -2
- package/dist/src/internal/nitro/routes/channel-dispatch.js +1 -1
- package/dist/src/internal/nitro/routes/channel-route-context.d.ts +5 -0
- package/dist/src/internal/nitro/routes/channel-route-context.js +1 -0
- package/dist/src/internal/nitro/routes/info.d.ts +2 -6
- package/dist/src/internal/nitro/routes/info.js +1 -1
- package/dist/src/protocol/routes.d.ts +2 -4
- package/dist/src/public/channels/eve.d.ts +5 -4
- package/dist/src/public/channels/eve.js +1 -1
- package/dist/src/public/channels/slack/api.d.ts +3 -6
- package/dist/src/public/channels/slack/api.js +1 -1
- package/dist/src/public/channels/slack/inbound.d.ts +11 -9
- package/dist/src/public/channels/slack/inbound.js +1 -1
- package/dist/src/public/channels/slack/interactions.d.ts +2 -1
- package/dist/src/public/channels/slack/interactions.js +1 -1
- package/dist/src/public/channels/slack/mrkdwn.d.ts +3 -35
- package/dist/src/public/channels/slack/mrkdwn.js +1 -1
- package/dist/src/public/channels/slack/slackChannel.js +1 -1
- package/dist/src/public/channels/slack/verify.d.ts +4 -42
- package/dist/src/public/channels/slack/verify.js +1 -1
- package/dist/src/public/definitions/agent.d.ts +1 -1
- package/dist/src/public/index.d.ts +1 -1
- package/dist/src/runtime/resolve-agent.js +1 -1
- package/dist/src/services/dev-client/client-options.d.ts +5 -1
- package/dist/src/services/dev-client/client-options.js +1 -1
- package/dist/src/setup/boxes/preflight.js +1 -1
- package/dist/src/setup/boxes/select-model.js +1 -1
- package/dist/src/setup/flows/model.js +1 -1
- package/dist/src/setup/scaffold/create/project.d.ts +1 -1
- package/dist/src/setup/scaffold/create/project.js +1 -1
- package/dist/src/setup/scaffold/create/web-template.d.ts +3 -0
- package/dist/src/setup/scaffold/create/web-template.js +1 -1
- package/dist/src/shared/agent-definition.d.ts +37 -0
- package/dist/src/shared/default-agent-model.d.ts +1 -1
- package/dist/src/shared/default-agent-model.js +1 -1
- package/dist/src/svelte/index.js +1 -1
- package/dist/src/svelte/use-eve-agent.js +1 -1
- package/dist/src/vue/index.js +1 -1
- package/dist/src/vue/use-eve-agent.js +1 -1
- package/docs/agent-config.md +35 -8
- package/docs/channels/eve.mdx +3 -2
- package/docs/concepts/sessions-runs-and-streaming.md +2 -2
- package/docs/getting-started.mdx +5 -5
- package/docs/guides/dev-tui.md +7 -1
- package/docs/reference/cli.md +10 -1
- package/docs/reference/typescript-api.md +1 -1
- package/docs/subagents.mdx +19 -0
- package/package.json +5 -5
- package/dist/src/compiled/_chunks/node/chunk-AYN7QRWH-Csu8sG38.js +0 -1
- package/dist/src/compiled/_chunks/workflow/run-CVlF84yI.js +0 -1
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import{a as e,i as t,t as n}from"../../_chunks/workflow/chunk-BHKSVoKr.js";import{a as r,d as i,f as a,l as o,n as s,r as c,t as l,u}from"../../_chunks/workflow/dist-FLIfyJ4Y.js";import{C as d,E as f,T as p,a as m,c as h,
|
|
2
|
-
`).slice(1);for(let e of t){if(!e.trim())continue;let t=e.trim().split(/\s+/);if(t.length<10)continue;let n=t[1],i=t[3],o=t[9];if(!n||i!==`0A`||!o||!r.has(o))continue;let s=n.indexOf(`:`);if(s===-1)continue;let c=n.slice(s+1);if(!c)continue;let l=
|
|
3
|
-
`);for(let e of r)if(e.includes(`LISTEN`)){let t=e.trim().split(/\s+/)[8];if(t){let e=t.lastIndexOf(`:`);if(e!==-1){let r=
|
|
4
|
-
`);for(let t of e){let e=t.trim().match(/^\s*TCP\s+(?:\[[\da-f:]+\]|[\d.]+):(\d+)\s+/i);if(e){let t=Ir(e[1]);t!==void 0&&n.push(t)}}}return n}catch{return[]}}async function Vr(){let{pid:e,platform:t}=process;try{switch(t){case`linux`:return await Rr(e);case`darwin`:return await zr(e);case`win32`:return await Br(e);default:return[]}}catch(e){return process.env.NODE_ENV===`development`&&console.debug(`[getAllPorts] Detection failed:`,e),[]}}async function Hr(e,t={}){let{endpoint:n=`/.well-known/workflow/v1/flow?__health`,timeout:r=500}=t,i=new AbortController,a=setTimeout(()=>i.abort(),r);try{return(await fetch(`http://localhost:${e}${n}`,{method:`HEAD`,signal:i.signal})).status===200}catch{return!1}finally{clearTimeout(a)}}async function Ur(e){let t=await Vr();if(t.length===0)return;if(t.length===1)return t[0];let n=(await Promise.all(t.map(async t=>({port:t,isWorkflow:await Hr(t,e)})))).find(e=>e.isWorkflow);return n?n.port:(process.env.NODE_ENV===`development`&&console.debug(`[getWorkflowPort] Probing failed, falling back to first port:`,t[0]),t[0])}function Wr(e){let t={get value(){let n=e();return Object.defineProperty(t,"value",{value:n}),n}};return t}const Gr=()=>process.env.WORKFLOW_LOCAL_DATA_DIR||`.workflow-data`,Kr=()=>process.env.WORKFLOW_LOCAL_BASE_URL,qr=Wr(()=>({dataDir:Gr(),baseUrl:Kr()}));async function Jr(e){if(e.baseUrl)return e.baseUrl;if(process.env.WORKFLOW_LOCAL_BASE_URL)return process.env.WORKFLOW_LOCAL_BASE_URL;if(typeof e.port==`number`)return`http://localhost:${e.port}`;if(process.env.PORT)return`http://localhost:${process.env.PORT}`;let t=await Ur();if(t)return`http://localhost:${t}`;throw Error(`Unable to resolve base URL for workflow queue.`)}const Yr=re(()=>Math.random());function Xr(e){let t=typeof e==`string`?e:String(e);return t.length>48?`${t.slice(0,48)}…`:t}var Zr=class extends p{constructor(e,t){super(`Unsafe ${e} "${Xr(t)}": must not be empty, contain ".", "/", "\\", or null bytes`),this.name=`UnsafeEntityIdError`}static is(e){return e instanceof Error&&e.name===`UnsafeEntityIdError`}};function Qr(e,t){if(t.length===0||t.startsWith(`.`)||t.includes(`/`)||t.includes(`\\`)||t.includes(`\0`)||t.includes(`.`))throw new Zr(e,t)}function $r(e,...t){let n=G.resolve(e),r=G.resolve(e,...t);if(r!==n&&!r.startsWith(n+G.sep))throw new Zr(`path`,t.join(`/`));return r}const ei=process.platform===`win32`;async function ti(e,t=5){if(!ei)return e();let n=[`EPERM`,`EBUSY`,`EACCES`];for(let r=0;r<=t;r++)try{return await e()}catch(e){if(!(r<t&&n.includes(e.code)))throw e;let i=10*2**r+Math.random()*10;await new Promise(e=>setTimeout(e,i))}throw Error(`Retry loop exited unexpectedly`)}const ni=new Set;function ri(){ni.clear()}const ii=/\.[a-zA-Z][a-zA-Z0-9-]*$/;function ai(e){return e.replace(ii,``)}function oi(e,t){return e.endsWith(`.${t}`)}function si(e,t,n,r){return Qr(`fileId`,n),r!==void 0&&Qr(`tag`,r),$r(e,t,r?`${n}.${r}.json`:`${n}.json`)}async function ci(e,t,n,r,i){if(Qr(`fileId`,n),i!==void 0&&Qr(`tag`,i),i){let a=await gi($r(e,t,`${n}.${i}.json`),r);if(a!==null)return a}return gi($r(e,t,`${n}.json`),r)}async function li(e,t){let n=`.${t}.json`;try{return(await Yn.readdir(e)).filter(e=>e.endsWith(n))}catch(e){if(e.code===`ENOENT`)return[];throw e}}async function ui(e,t,n){let r=`.${t}${n}`;try{return(await Yn.readdir(e)).filter(e=>e.endsWith(r))}catch(e){if(e.code===`ENOENT`)return[];throw e}}async function di(e){try{await Yn.mkdir(e,{recursive:!0})}catch{}}function fi(e,t){return t instanceof Uint8Array?{__type:`Uint8Array`,data:Buffer.from(t).toString(`base64`)}:t}function pi(e,t){return typeof t==`object`&&t&&t.__type===`Uint8Array`&&typeof t.data==`string`?new Uint8Array(Buffer.from(t.data,`base64`)):t}async function mi(e,t,n){return hi(e,JSON.stringify(t,fi,2),n)}async function hi(e,t,n){if(!n?.overwrite){if(ni.has(e))throw new T(`File ${e} already exists and 'overwrite' is false`);try{throw await Yn.access(e),ni.add(e),new T(`File ${e} already exists and 'overwrite' is false`)}catch(e){if(e.code!==`ENOENT`)throw e}}let r=`${e}.tmp.${Yr()}`,i=!1;try{await di(G.dirname(e)),await Yn.writeFile(r,t),i=!0,await ti(()=>Yn.rename(r,e)),ni.add(e)}catch(e){throw i&&await ti(()=>Yn.unlink(r),3).catch(()=>{}),e}}async function gi(e,t){try{let n=await Yn.readFile(e,`utf-8`);return t.parse(JSON.parse(n,pi))}catch(e){if(e.code===`ENOENT`)return null;throw e}}async function _i(e){return await Yn.readFile(e)}async function vi(e){let t=await Yn.open(e,`r`);try{let e=Buffer.allocUnsafe(1),{bytesRead:n}=await t.read(e,0,1,0);return n===0?void 0:e[0]}finally{await t.close()}}async function yi(e){try{await Yn.unlink(e)}catch(e){if(e.code!==`ENOENT`)throw e}}async function bi(e,t){await di(G.dirname(e));let n=`${e}.tmp.${Yr()}`,r=!1;try{await Yn.writeFile(n,t,{flag:`wx`}),r=!0;try{return await ti(()=>Yn.link(n,e)),!0}catch(e){if(e.code===`EEXIST`)return!1;throw e}}finally{r&&await ti(()=>Yn.unlink(n),3).catch(()=>{})}}async function xi(e){return Si(e,`.json`)}async function Si(e,t){try{return(await Yn.readdir(e)).filter(e=>e.endsWith(t)).map(e=>e.slice(0,-t.length))}catch(e){if(e.code===`ENOENT`)return[];throw e}}function Ci(e){if(!e)return null;let t=e.split(`|`);return{timestamp:new Date(t[0]),id:t[1]||null}}function wi(e,t){return t?`${e.toISOString()}|${t}`:e.toISOString()}async function Ti(e){let{directory:t,schema:n,filePrefix:r,fileIdFilter:i,filter:a,sortOrder:o=`desc`,limit:s=20,cursor:c,getCreatedAt:l,getId:u}=e;r!==void 0&&Qr(`filePrefix`,r);let d=await xi(t),f=r?d.filter(e=>e.startsWith(r)):d,p=i?f.filter(i):f,m=Ci(c),h=p;m&&(h=p.filter(e=>{let t=l(`${e}.json`);if(t){let e=m.timestamp.getTime(),n=t.getTime();return m.id?o===`desc`?n<=e:n>=e:o===`desc`?n<e:n>e}return!0}));let g=[];for(let e of h){let r=G.join(t,`${e}.json`),i=null;try{i=await gi(r,n)}catch(t){if(t instanceof an){console.warn(`Skipping item ${e} due to malformed JSON: ${t.message}`);continue}throw t}if(i){if(a&&!a(i))continue;if(m){let e=i.createdAt.getTime(),t=m.timestamp.getTime();if(o===`desc`){if(e>t||e===t&&m.id&&u&&u(i)>=m.id)continue}else if(e<t||e===t&&m.id&&u&&u(i)<=m.id)continue}g.push(i)}}g.sort((e,t)=>{let n=e.createdAt.getTime(),r=t.createdAt.getTime(),i=o===`asc`?n-r:r-n;if(i===0&&u){let n=u(e),r=u(t);return o===`asc`?n.localeCompare(r):r.localeCompare(n)}return i});let _=g.length>s,v=_?g.slice(0,s):g;return{data:v,cursor:v.length>0?wi(v[v.length-1].createdAt,u?.(v[v.length-1])):null,hasMore:_}}let Ei=null;function Di(){return typeof import.meta.url==`string`&&import.meta.url?G.dirname(qn(import.meta.url)):null}async function Oi(){if(Ei)return Ei;let e=Di();if(e)try{let t=await er(G.join(e,`../package.json`),`utf-8`);return Ei=JSON.parse(t),Ei}catch{}return Ei={name:`@workflow/world-local`,version:`bundled`},Ei}const ki=`version.txt`;var Ai=class extends Error{dataDir;code;constructor(e,t,n){super(e),this.name=`DataDirAccessError`,this.dataDir=t,this.code=n}},ji=class extends Error{oldVersion;newVersion;suggestedVersion;constructor(e,t,n,r){super(e),this.name=`DataDirVersionError`,this.oldVersion=t,this.newVersion=n,this.suggestedVersion=r}};function Mi(e){let t=e.match(/^(\d+)\.(\d+)\.(\d+)(?:-(.+))?$/);if(!t)throw Error(`Invalid version string: "${e}"`);return{major:parseInt(t[1],10),minor:parseInt(t[2],10),patch:parseInt(t[3],10),prerelease:t[4],raw:e}}function Ni(e){let t=`${e.major}.${e.minor}.${e.patch}`;return e.prerelease?`${t}-${e.prerelease}`:t}function Pi(e){let t=e.trim(),n=t.lastIndexOf(`@`);if(n<=0)throw Error(`Invalid version file content: "${e}"`);return{packageName:t.substring(0,n),version:Mi(t.substring(n+1))}}function Fi(e,t){return`${e}@${Ni(t)}`}function Ii(e,t){console.log(`[world-local] Upgrading from version ${Ni(e)} to ${Ni(t)}`)}async function Li(e){let t=G.resolve(e);try{await $n(t,{recursive:!0})}catch(e){let n=e;if(n.code!==`EEXIST`)throw new Ai(`Failed to create data directory "${t}": ${n.message}`,t,n.code)}try{await Zn(t,Qn.R_OK)}catch(e){let n=e;throw new Ai(`Data directory "${t}" is not readable: ${n.message}`,t,n.code)}let n=G.join(t,`.workflow-write-test-${Date.now()}`);try{await ar(n,``),await ir(n).catch(e=>{if(e.code!==`ENOENT`)throw e})}catch(e){let n=e;throw new Ai(`Data directory "${t}" is not writable: ${n.message}`,t,n.code)}}async function Ri(e){let t=G.join(G.resolve(e),ki);try{return Pi(await er(t,`utf-8`))}catch(e){if(e.code===`ENOENT`)return null;throw e}}async function zi(e,t){await ar(G.join(G.resolve(e),ki),Fi((await Oi()).name,t))}function Bi(e,t){return t||Ni(e)}async function Vi(e){await Li(e);let t=await Oi(),n=Mi(t.version),r=await Ri(e);if(r===null){await zi(e,n);return}let{version:i}=r;if(Ni(i)!==Ni(n))try{Ii(i,n),await zi(e,n)}catch(e){let r=Bi(i,e instanceof ji?e.suggestedVersion:void 0);throw console.error(`[world-local] Failed to upgrade data directory from version ${Ni(i)} to ${Ni(n)}:`,e instanceof Error?e.message:e),console.error(`[world-local] Data is not compatible with the current version. Please downgrade to ${t.name}@${r}`),e}}let Hi=null;async function Ui(){return Hi||=import(`../../_chunks/workflow/src-CQuMexnO.js`).then(t=>e(t.t(),1)).catch(()=>null),Hi}let Wi=null;async function Gi(){return Wi||=Ui().then(e=>e?e.trace.getTracer(`workflow`):null),Wi}async function Ki(e,...t){let[n,r]=await Promise.all([Gi(),Ui()]),{fn:i,opts:a}=typeof t[0]==`function`?{fn:t[0],opts:{}}:{fn:t[1],opts:t[0]};if(!i)throw Error(`Function to trace must be provided`);return!n||!r?await i():n.startActiveSpan(e,a,async e=>{try{let t=await i(e);return e.setStatus({code:r.SpanStatusCode.OK}),t}catch(t){throw e.setStatus({code:r.SpanStatusCode.ERROR,message:t.message}),t}finally{e.end()}})}async function qi(e){let t=await Ui();if(t)return t.SpanKind[e]}function Ji(...e){return t=>Object.fromEntries(e.map(e=>[e,t]))}const Yi=Ji(`peer.service`),Xi=Ji(`rpc.system`),Zi=Ji(`rpc.service`),Qi=Ji(`rpc.method`),$i=Ji(`workflow.run.id`),ea=Ji(`step.id`),ta={peerService:`world-local`,rpcSystem:`local`,rpcService:`world-local`},na={"world.runs.get":0,"world.runs.experimentalSetAttributes":0,"world.steps.get":0,"world.events.create":0,"world.events.get":0},ra=new Set([`world.steps.list`,`world.events.list`,`world.hooks.list`]);function ia(e){if(e.length>=2&&typeof e[1]==`object`&&e[1]!==null){let t=e[1];if(typeof t.eventType==`string`)return t.eventType}}function aa(e,t){return typeof e[t]==`string`?e[t]:void 0}function oa(e){if(typeof e!=`object`||!e)return;let t=e.runId;return typeof t==`string`?t:void 0}function sa(e){if(typeof e!=`object`||!e)return;let t=e;if(typeof t.runId==`string`)return t.runId;for(let e of[`run`,`step`,`hook`,`wait`]){let n=t[e];if(typeof n==`object`&&n){let e=n.runId;if(typeof e==`string`)return e}}}function ca(e,t,n){let r=`${e}.${t}`,i={},a=na[r],o=a===void 0?ra.has(r)?oa(n[0]):void 0:aa(n,a);if(o&&Object.assign(i,$i(o)),r===`world.steps.get`){let e=aa(n,1);e&&Object.assign(i,ea(e))}return i}function la(e,t){let n={};for(let r of Object.keys(t))if(typeof t[r]!=`function`)n[r]=t[r];else{let i=t[r],a=String(r);n[r]=async(...t)=>{let n=`${e}.${a}`;if(e===`world.events`&&a===`create`){let r=ia(t);r&&(n=`${e}.${a} ${r}`)}return Ki(n,{kind:await qi(`INTERNAL`)},async r=>{r?.setAttributes({...Yi(ta.peerService),...Xi(ta.rpcSystem),...Zi(ta.rpcService),...Qi(n),...ca(e,a,t)});let o=await i(...t),s=sa(o);return s&&r?.setAttributes($i(s)),o})}}return n}var ua=n((e=>{var n=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,"__esModule",{value:!0}),e.RateLimit=e.Sema=void 0;let r=n(t(`events`));function i(e,t,n,r,i){for(let a=0;a<i;++a)n[a+r]=e[a+t],e[a+t]=void 0}function a(e){return e>>>=0,--e,e|=e>>1,e|=e>>2,e|=e>>4,e|=e>>8,e|=e>>16,e+1}function o(e){return a(Math.min(Math.max(16,e),1073741824))}var s=class{constructor(e){this._capacity=o(e),this._length=0,this._front=0,this.arr=[]}push(e){let t=this._length;this.checkCapacity(t+1);let n=this._front+t&this._capacity-1;return this.arr[n]=e,this._length=t+1,t+1}pop(){let e=this._length;if(e===0)return;let t=this._front+e-1&this._capacity-1,n=this.arr[t];return this.arr[t]=void 0,this._length=e-1,n}shift(){let e=this._length;if(e===0)return;let t=this._front,n=this.arr[t];return this.arr[t]=void 0,this._front=t+1&this._capacity-1,this._length=e-1,n}get length(){return this._length}checkCapacity(e){this._capacity<e&&this.resizeTo(o(this._capacity*1.5+16))}resizeTo(e){let t=this._capacity;this._capacity=e;let n=this._front,r=this._length;if(n+r>t){let e=n+r&t-1;i(this.arr,0,this.arr,t,e)}}},c=class extends r.default{};function l(e){return typeof e==`function`}function u(){return`1`}var d=class{constructor(e,{initFn:t=u,pauseFn:n,resumeFn:r,capacity:i=10}={}){if(l(n)!==l(r))throw Error(`pauseFn and resumeFn must be both set for pausing`);this.nrTokens=e,this.free=new s(e),this.waiting=new s(i),this.releaseEmitter=new c,this.noTokens=t===u,this.pauseFn=n,this.resumeFn=r,this.paused=!1,this.releaseEmitter.on(`release`,e=>{let t=this.waiting.shift();t?t.resolve(e):(this.resumeFn&&this.paused&&(this.paused=!1,this.resumeFn()),this.free.push(e))});for(let n=0;n<e;n++)this.free.push(t())}tryAcquire(){return this.free.pop()}async acquire(){let e=this.tryAcquire();return e===void 0?new Promise((e,t)=>{this.pauseFn&&!this.paused&&(this.paused=!0,this.pauseFn()),this.waiting.push({resolve:e,reject:t})}):e}release(e){this.releaseEmitter.emit(`release`,this.noTokens?`1`:e)}drain(){let e=Array(this.nrTokens);for(let t=0;t<this.nrTokens;t++)e[t]=this.acquire();return Promise.all(e)}nrWaiting(){return this.waiting.length}};e.Sema=d;function f(e,{timeUnit:t=1e3,uniformDistribution:n=!1}={}){let r=new d(n?1:e),i=n?t/e:t;return async function(){await r.acquire(),setTimeout(()=>r.release(),i)}}e.RateLimit=f})),da=n(((e,t)=>{t.exports={kClose:Symbol(`close`),kDestroy:Symbol(`destroy`),kDispatch:Symbol(`dispatch`),kUrl:Symbol(`url`),kWriting:Symbol(`writing`),kResuming:Symbol(`resuming`),kQueue:Symbol(`queue`),kConnect:Symbol(`connect`),kConnecting:Symbol(`connecting`),kKeepAliveDefaultTimeout:Symbol(`default keep alive timeout`),kKeepAliveMaxTimeout:Symbol(`max keep alive timeout`),kKeepAliveTimeoutThreshold:Symbol(`keep alive timeout threshold`),kKeepAliveTimeoutValue:Symbol(`keep alive timeout`),kKeepAlive:Symbol(`keep alive`),kHeadersTimeout:Symbol(`headers timeout`),kBodyTimeout:Symbol(`body timeout`),kServerName:Symbol(`server name`),kLocalAddress:Symbol(`local address`),kHost:Symbol(`host`),kNoRef:Symbol(`no ref`),kBodyUsed:Symbol(`used`),kBody:Symbol(`abstracted request body`),kRunning:Symbol(`running`),kBlocking:Symbol(`blocking`),kPending:Symbol(`pending`),kSize:Symbol(`size`),kBusy:Symbol(`busy`),kQueued:Symbol(`queued`),kFree:Symbol(`free`),kConnected:Symbol(`connected`),kClosed:Symbol(`closed`),kNeedDrain:Symbol(`need drain`),kReset:Symbol(`reset`),kDestroyed:Symbol.for(`nodejs.stream.destroyed`),kResume:Symbol(`resume`),kOnError:Symbol(`on error`),kMaxHeadersSize:Symbol(`max headers size`),kRunningIdx:Symbol(`running index`),kPendingIdx:Symbol(`pending index`),kError:Symbol(`error`),kClients:Symbol(`clients`),kClient:Symbol(`client`),kParser:Symbol(`parser`),kOnDestroyed:Symbol(`destroy callbacks`),kPipelining:Symbol(`pipelining`),kSocket:Symbol(`socket`),kHostHeader:Symbol(`host header`),kConnector:Symbol(`connector`),kStrictContentLength:Symbol(`strict content length`),kMaxRedirections:Symbol(`maxRedirections`),kMaxRequests:Symbol(`maxRequestsPerClient`),kProxy:Symbol(`proxy agent options`),kCounter:Symbol(`socket request counter`),kMaxResponseSize:Symbol(`max response size`),kHTTP2Session:Symbol(`http2Session`),kHTTP2SessionState:Symbol(`http2Session state`),kRetryHandlerDefaultRetry:Symbol(`retry agent default retry`),kConstruct:Symbol(`constructable`),kListeners:Symbol(`listeners`),kHTTPContext:Symbol(`http context`),kMaxConcurrentStreams:Symbol(`max concurrent streams`),kHTTP2InitialWindowSize:Symbol(`http2 initial window size`),kHTTP2ConnectionWindowSize:Symbol(`http2 connection window size`),kEnableConnectProtocol:Symbol(`http2session connect protocol`),kRemoteSettings:Symbol(`http2session remote settings`),kHTTP2Stream:Symbol(`http2session client stream`),kPingInterval:Symbol(`ping interval`),kNoProxyAgent:Symbol(`no proxy agent`),kHttpProxyAgent:Symbol(`http proxy agent`),kHttpsProxyAgent:Symbol(`https proxy agent`),kSocks5ProxyAgent:Symbol(`socks5 proxy agent`)}})),fa=n(((e,t)=>{let n=0,r=1e3,i,a=Symbol(`kFastTimer`),o=[];function s(){n+=499;let e=0,t=o.length;for(;e<t;){let r=o[e];r._state===0?(r._idleStart=n-499,r._state=1):r._state===1&&n>=r._idleStart+r._idleTimeout&&(r._state=-1,r._idleStart=-1,r._onTimeout(r._timerArg)),r._state===-1?(r._state=-2,--t!==0&&(o[e]=o[t])):++e}o.length=t,o.length!==0&&c()}function c(){i?.refresh?i.refresh():(clearTimeout(i),i=setTimeout(s,499),i?.unref())}var l=class{[a]=!0;_state=-2;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(e,t,n){this._onTimeout=e,this._idleTimeout=t,this._timerArg=n,this.refresh()}refresh(){this._state===-2&&o.push(this),(!i||o.length===1)&&c(),this._state=0}clear(){this._state=-1,this._idleStart=-1}};t.exports={setTimeout(e,t,n){return t<=r?setTimeout(e,t,n):new l(e,t,n)},clearTimeout(e){e[a]?e.clear():clearTimeout(e)},setFastTimeout(e,t,n){return new l(e,t,n)},clearFastTimeout(e){e.clear()},now(){return n},tick(e=0){n+=e-r+1,s(),s()},reset(){n=0,o.length=0,clearTimeout(i),i=null},kFastTimer:a}})),K=n(((e,t)=>{let n=Symbol.for(`undici.error.UND_ERR`);var r=class extends Error{constructor(e,t){super(e,t),this.name=`UndiciError`,this.code=`UND_ERR`}static[Symbol.hasInstance](e){return e&&e[n]===!0}get[n](){return!0}};let i=Symbol.for(`undici.error.UND_ERR_CONNECT_TIMEOUT`);var a=class extends r{constructor(e){super(e),this.name=`ConnectTimeoutError`,this.message=e||`Connect Timeout Error`,this.code=`UND_ERR_CONNECT_TIMEOUT`}static[Symbol.hasInstance](e){return e&&e[i]===!0}get[i](){return!0}};let o=Symbol.for(`undici.error.UND_ERR_HEADERS_TIMEOUT`);var s=class extends r{constructor(e){super(e),this.name=`HeadersTimeoutError`,this.message=e||`Headers Timeout Error`,this.code=`UND_ERR_HEADERS_TIMEOUT`}static[Symbol.hasInstance](e){return e&&e[o]===!0}get[o](){return!0}};let c=Symbol.for(`undici.error.UND_ERR_HEADERS_OVERFLOW`);var l=class extends r{constructor(e){super(e),this.name=`HeadersOverflowError`,this.message=e||`Headers Overflow Error`,this.code=`UND_ERR_HEADERS_OVERFLOW`}static[Symbol.hasInstance](e){return e&&e[c]===!0}get[c](){return!0}};let u=Symbol.for(`undici.error.UND_ERR_BODY_TIMEOUT`);var d=class extends r{constructor(e){super(e),this.name=`BodyTimeoutError`,this.message=e||`Body Timeout Error`,this.code=`UND_ERR_BODY_TIMEOUT`}static[Symbol.hasInstance](e){return e&&e[u]===!0}get[u](){return!0}};let f=Symbol.for(`undici.error.UND_ERR_INVALID_ARG`);var p=class extends r{constructor(e){super(e),this.name=`InvalidArgumentError`,this.message=e||`Invalid Argument Error`,this.code=`UND_ERR_INVALID_ARG`}static[Symbol.hasInstance](e){return e&&e[f]===!0}get[f](){return!0}};let m=Symbol.for(`undici.error.UND_ERR_INVALID_RETURN_VALUE`);var h=class extends r{constructor(e){super(e),this.name=`InvalidReturnValueError`,this.message=e||`Invalid Return Value Error`,this.code=`UND_ERR_INVALID_RETURN_VALUE`}static[Symbol.hasInstance](e){return e&&e[m]===!0}get[m](){return!0}};let g=Symbol.for(`undici.error.UND_ERR_ABORT`);var _=class extends r{constructor(e){super(e),this.name=`AbortError`,this.message=e||`The operation was aborted`,this.code=`UND_ERR_ABORT`}static[Symbol.hasInstance](e){return e&&e[g]===!0}get[g](){return!0}};let v=Symbol.for(`undici.error.UND_ERR_ABORTED`);var y=class extends _{constructor(e){super(e),this.name=`AbortError`,this.message=e||`Request aborted`,this.code=`UND_ERR_ABORTED`}static[Symbol.hasInstance](e){return e&&e[v]===!0}get[v](){return!0}};let b=Symbol.for(`undici.error.UND_ERR_INFO`);var x=class extends r{constructor(e){super(e),this.name=`InformationalError`,this.message=e||`Request information`,this.code=`UND_ERR_INFO`}static[Symbol.hasInstance](e){return e&&e[b]===!0}get[b](){return!0}};let S=Symbol.for(`undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH`);var C=class extends r{constructor(e){super(e),this.name=`RequestContentLengthMismatchError`,this.message=e||`Request body length does not match content-length header`,this.code=`UND_ERR_REQ_CONTENT_LENGTH_MISMATCH`}static[Symbol.hasInstance](e){return e&&e[S]===!0}get[S](){return!0}};let w=Symbol.for(`undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH`);var T=class extends r{constructor(e){super(e),this.name=`ResponseContentLengthMismatchError`,this.message=e||`Response body length does not match content-length header`,this.code=`UND_ERR_RES_CONTENT_LENGTH_MISMATCH`}static[Symbol.hasInstance](e){return e&&e[w]===!0}get[w](){return!0}};let E=Symbol.for(`undici.error.UND_ERR_DESTROYED`);var D=class extends r{constructor(e){super(e),this.name=`ClientDestroyedError`,this.message=e||`The client is destroyed`,this.code=`UND_ERR_DESTROYED`}static[Symbol.hasInstance](e){return e&&e[E]===!0}get[E](){return!0}};let O=Symbol.for(`undici.error.UND_ERR_CLOSED`);var k=class extends r{constructor(e){super(e),this.name=`ClientClosedError`,this.message=e||`The client is closed`,this.code=`UND_ERR_CLOSED`}static[Symbol.hasInstance](e){return e&&e[O]===!0}get[O](){return!0}};let A=Symbol.for(`undici.error.UND_ERR_SOCKET`);var j=class extends r{constructor(e,t){super(e),this.name=`SocketError`,this.message=e||`Socket error`,this.code=`UND_ERR_SOCKET`,this.socket=t}static[Symbol.hasInstance](e){return e&&e[A]===!0}get[A](){return!0}};let M=Symbol.for(`undici.error.UND_ERR_NOT_SUPPORTED`);var N=class extends r{constructor(e){super(e),this.name=`NotSupportedError`,this.message=e||`Not supported error`,this.code=`UND_ERR_NOT_SUPPORTED`}static[Symbol.hasInstance](e){return e&&e[M]===!0}get[M](){return!0}};let P=Symbol.for(`undici.error.UND_ERR_BPL_MISSING_UPSTREAM`);var F=class extends r{constructor(e){super(e),this.name=`MissingUpstreamError`,this.message=e||`No upstream has been added to the BalancedPool`,this.code=`UND_ERR_BPL_MISSING_UPSTREAM`}static[Symbol.hasInstance](e){return e&&e[P]===!0}get[P](){return!0}};let I=Symbol.for(`undici.error.UND_ERR_HTTP_PARSER`);var ee=class extends Error{constructor(e,t,n){super(e),this.name=`HTTPParserError`,this.code=t?`HPE_${t}`:void 0,this.data=n?n.toString():void 0}static[Symbol.hasInstance](e){return e&&e[I]===!0}get[I](){return!0}};let L=Symbol.for(`undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE`);var te=class extends r{constructor(e){super(e),this.name=`ResponseExceededMaxSizeError`,this.message=e||`Response content exceeded max size`,this.code=`UND_ERR_RES_EXCEEDED_MAX_SIZE`}static[Symbol.hasInstance](e){return e&&e[L]===!0}get[L](){return!0}};let R=Symbol.for(`undici.error.UND_ERR_REQ_RETRY`);var ne=class extends r{constructor(e,t,{headers:n,data:r}){super(e),this.name=`RequestRetryError`,this.message=e||`Request retry error`,this.code=`UND_ERR_REQ_RETRY`,this.statusCode=t,this.data=r,this.headers=n}static[Symbol.hasInstance](e){return e&&e[R]===!0}get[R](){return!0}};let re=Symbol.for(`undici.error.UND_ERR_RESPONSE`);var z=class extends r{constructor(e,t,{headers:n,body:r}){super(e),this.name=`ResponseError`,this.message=e||`Response error`,this.code=`UND_ERR_RESPONSE`,this.statusCode=t,this.body=r,this.headers=n}static[Symbol.hasInstance](e){return e&&e[re]===!0}get[re](){return!0}};let ie=Symbol.for(`undici.error.UND_ERR_PRX_TLS`);var ae=class extends r{constructor(e,t,n={}){super(t,{cause:e,...n}),this.name=`SecureProxyConnectionError`,this.message=t||`Secure Proxy Connection failed`,this.code=`UND_ERR_PRX_TLS`,this.cause=e}static[Symbol.hasInstance](e){return e&&e[ie]===!0}get[ie](){return!0}};let oe=Symbol.for(`undici.error.UND_ERR_MAX_ORIGINS_REACHED`);var se=class extends r{constructor(e){super(e),this.name=`MaxOriginsReachedError`,this.message=e||`Maximum allowed origins reached`,this.code=`UND_ERR_MAX_ORIGINS_REACHED`}static[Symbol.hasInstance](e){return e&&e[oe]===!0}get[oe](){return!0}},ce=class extends r{constructor(e,t){super(e),this.name=`Socks5ProxyError`,this.message=e||`SOCKS5 proxy error`,this.code=t||`UND_ERR_SOCKS5`}};let le=Symbol.for(`undici.error.UND_ERR_WS_MESSAGE_SIZE_EXCEEDED`);t.exports={AbortError:_,HTTPParserError:ee,UndiciError:r,HeadersTimeoutError:s,HeadersOverflowError:l,BodyTimeoutError:d,RequestContentLengthMismatchError:C,ConnectTimeoutError:a,InvalidArgumentError:p,InvalidReturnValueError:h,RequestAbortedError:y,ClientDestroyedError:D,ClientClosedError:k,InformationalError:x,SocketError:j,NotSupportedError:N,ResponseContentLengthMismatchError:T,BalancedPoolMissingUpstreamError:F,ResponseExceededMaxSizeError:te,RequestRetryError:ne,ResponseError:z,SecureProxyConnectionError:ae,MaxOriginsReachedError:se,Socks5ProxyError:ce,MessageSizeExceededError:class extends r{constructor(e){super(e),this.name=`MessageSizeExceededError`,this.message=e||`Max decompressed message size exceeded`,this.code=`UND_ERR_WS_MESSAGE_SIZE_EXCEEDED`}static[Symbol.hasInstance](e){return e&&e[le]===!0}get[le](){return!0}}}})),pa=n(((e,t)=>{let n=`Accept.Accept-Encoding.Accept-Language.Accept-Ranges.Access-Control-Allow-Credentials.Access-Control-Allow-Headers.Access-Control-Allow-Methods.Access-Control-Allow-Origin.Access-Control-Expose-Headers.Access-Control-Max-Age.Access-Control-Request-Headers.Access-Control-Request-Method.Age.Allow.Alt-Svc.Alt-Used.Authorization.Cache-Control.Clear-Site-Data.Connection.Content-Disposition.Content-Encoding.Content-Language.Content-Length.Content-Location.Content-Range.Content-Security-Policy.Content-Security-Policy-Report-Only.Content-Type.Cookie.Cross-Origin-Embedder-Policy.Cross-Origin-Opener-Policy.Cross-Origin-Resource-Policy.Date.Device-Memory.Downlink.ECT.ETag.Expect.Expect-CT.Expires.Forwarded.From.Host.If-Match.If-Modified-Since.If-None-Match.If-Range.If-Unmodified-Since.Keep-Alive.Last-Modified.Link.Location.Max-Forwards.Origin.Permissions-Policy.Pragma.Proxy-Authenticate.Proxy-Authorization.RTT.Range.Referer.Referrer-Policy.Refresh.Retry-After.Sec-WebSocket-Accept.Sec-WebSocket-Extensions.Sec-WebSocket-Key.Sec-WebSocket-Protocol.Sec-WebSocket-Version.Server.Server-Timing.Service-Worker-Allowed.Service-Worker-Navigation-Preload.Set-Cookie.SourceMap.Strict-Transport-Security.Supports-Loading-Mode.TE.Timing-Allow-Origin.Trailer.Transfer-Encoding.Upgrade.Upgrade-Insecure-Requests.User-Agent.Vary.Via.WWW-Authenticate.X-Content-Type-Options.X-DNS-Prefetch-Control.X-Frame-Options.X-Permitted-Cross-Domain-Policies.X-Powered-By.X-Requested-With.X-XSS-Protection`.split(`.`),r={};Object.setPrototypeOf(r,null);let i={};Object.setPrototypeOf(i,null);function a(e){let t=i[e];return t===void 0&&(t=Buffer.from(e)),t}for(let e=0;e<n.length;++e){let t=n[e],i=t.toLowerCase();r[t]=r[i]=i}t.exports={wellknownHeaderNames:n,headerNameLowerCasedRecord:r,getHeaderNameAsBuffer:a}})),ma=n(((e,t)=>{let{wellknownHeaderNames:n,headerNameLowerCasedRecord:r}=pa();var i=class e{value=null;left=null;middle=null;right=null;code;constructor(t,n,r){if(r===void 0||r>=t.length)throw TypeError(`Unreachable`);if((this.code=t.charCodeAt(r))>127)throw TypeError(`key must be ascii string`);t.length===++r?this.value=n:this.middle=new e(t,n,r)}add(t,n){let r=t.length;if(r===0)throw TypeError(`Unreachable`);let i=0,a=this;for(;;){let o=t.charCodeAt(i);if(o>127)throw TypeError(`key must be ascii string`);if(a.code===o)if(r===++i){a.value=n;break}else if(a.middle!==null)a=a.middle;else{a.middle=new e(t,n,i);break}else if(a.code<o)if(a.left!==null)a=a.left;else{a.left=new e(t,n,i);break}else if(a.right!==null)a=a.right;else{a.right=new e(t,n,i);break}}}search(e){let t=e.length,n=0,r=this;for(;r!==null&&n<t;){let i=e[n];for(i<=90&&i>=65&&(i|=32);r!==null;){if(i===r.code){if(t===++n)return r;r=r.middle;break}r=r.code<i?r.left:r.right}}return null}},a=class{node=null;insert(e,t){this.node===null?this.node=new i(e,t,0):this.node.add(e,t)}lookup(e){return this.node?.search(e)?.value??null}};let o=new a;for(let e=0;e<n.length;++e){let t=r[n[e]];o.insert(t,t)}t.exports={TernarySearchTree:a,tree:o}})),q=n(((e,n)=>{let r=t(`node:assert`),{kDestroyed:i,kBodyUsed:a,kListeners:o,kBody:s}=da(),{IncomingMessage:c}=t(`node:http`),l=t(`node:stream`),u=t(`node:net`),{stringify:d}=t(`node:querystring`),{EventEmitter:f}=t(`node:events`),p=fa(),{InvalidArgumentError:m,ConnectTimeoutError:h}=K(),{headerNameLowerCasedRecord:g}=pa(),{tree:_}=ma(),[v,y]=process.versions.node.split(`.`,2).map(e=>Number(e));var b=class{constructor(e){this[s]=e,this[a]=!1}async*[Symbol.asyncIterator](){r(!this[a],`disturbed`),this[a]=!0,yield*this[s]}};function x(){}function S(e){return C(e)?(ee(e)===0&&e.on(`data`,function(){r(!1)}),typeof e.readableDidRead!=`boolean`&&(e[a]=!1,f.prototype.on.call(e,`data`,function(){this[a]=!0})),e):e&&typeof e.pipeTo==`function`?new b(e):e&&de(e)?e:e&&typeof e!=`string`&&!ArrayBuffer.isView(e)&&F(e)?new b(e):e}function C(e){return e&&typeof e==`object`&&typeof e.pipe==`function`&&typeof e.on==`function`}function w(e){if(e===null)return!1;if(e instanceof Blob)return!0;if(typeof e!=`object`)return!1;{let t=e[Symbol.toStringTag];return(t===`Blob`||t===`File`)&&(`stream`in e&&typeof e.stream==`function`||`arrayBuffer`in e&&typeof e.arrayBuffer==`function`)}}function T(e){return e.includes(`?`)||e.includes(`#`)}function E(e,t){if(T(e))throw Error(`Query params cannot be passed when url already contains "?" or "#".`);let n=d(t);return n&&(e+=`?`+n),e}function D(e){let t=parseInt(e,10);return t===Number(e)&&t>=0&&t<=65535}function O(e){return e!=null&&e[0]===`h`&&e[1]===`t`&&e[2]===`t`&&e[3]===`p`&&(e[4]===`:`||e[4]===`s`&&e[5]===`:`)}function k(e){if(typeof e==`string`){if(e=new URL(e),!O(e.origin||e.protocol))throw new m("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!=`object`)throw new m(`Invalid URL: The URL argument must be a non-null object.`);if(!(e instanceof URL)){if(e.port!=null&&e.port!==``&&D(e.port)===!1)throw new m(`Invalid URL: port must be a valid integer or a string representation of an integer.`);if(e.path!=null&&typeof e.path!=`string`)throw new m(`Invalid URL path: the path must be a string or null/undefined.`);if(e.pathname!=null&&typeof e.pathname!=`string`)throw new m(`Invalid URL pathname: the pathname must be a string or null/undefined.`);if(e.hostname!=null&&typeof e.hostname!=`string`)throw new m(`Invalid URL hostname: the hostname must be a string or null/undefined.`);if(e.origin!=null&&typeof e.origin!=`string`)throw new m(`Invalid URL origin: the origin must be a string or null/undefined.`);if(!O(e.origin||e.protocol))throw new m("Invalid URL protocol: the URL must start with `http:` or `https:`.");let t=e.port==null?e.protocol===`https:`?443:80:e.port,n=e.origin==null?`${e.protocol||``}//${e.hostname||``}:${t}`:e.origin,r=e.path==null?`${e.pathname||``}${e.search||``}`:e.path;return n[n.length-1]===`/`&&(n=n.slice(0,n.length-1)),r&&r[0]!==`/`&&(r=`/${r}`),new URL(`${n}${r}`)}if(!O(e.origin||e.protocol))throw new m("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}function A(e){if(e=k(e),e.pathname!==`/`||e.search||e.hash)throw new m(`invalid url`);return e}function j(e){if(e[0]===`[`){let t=e.indexOf(`]`);return r(t!==-1),e.substring(1,t)}let t=e.indexOf(`:`);return t===-1?e:e.substring(0,t)}function M(e){if(!e)return null;r(typeof e==`string`);let t=j(e);return u.isIP(t)?``:t}function N(e){return JSON.parse(JSON.stringify(e))}function P(e){return e!=null&&typeof e[Symbol.asyncIterator]==`function`}function F(e){return e!=null&&(typeof e[Symbol.iterator]==`function`||typeof e[Symbol.asyncIterator]==`function`)}function I(e){let t=Object.getPrototypeOf(e);return Object.prototype.hasOwnProperty.call(e,Symbol.iterator)||t!=null&&t!==Object.prototype&&typeof e[Symbol.iterator]==`function`}function ee(e){if(e==null)return 0;if(C(e)){let t=e._readableState;return t&&t.objectMode===!1&&t.ended===!0&&Number.isFinite(t.length)?t.length:null}else if(w(e))return e.size==null?null:e.size;else if(se(e))return e.byteLength;return null}function L(e){return e&&!!(e.destroyed||e[i]||l.isDestroyed?.(e))}function te(e,t){e==null||!C(e)||L(e)||(typeof e.destroy==`function`?(Object.getPrototypeOf(e).constructor===c&&(e.socket=null),e.destroy(t)):t&&queueMicrotask(()=>{e.emit(`error`,t)}),e.destroyed!==!0&&(e[i]=!0))}let R=/timeout=(\d+)/;function ne(e){let t=e.match(R);return t?parseInt(t[1],10)*1e3:null}function re(e){return typeof e==`string`?g[e]??e.toLowerCase():_.lookup(e)??e.toString(`latin1`).toLowerCase()}function z(e){return _.lookup(e)??e.toString(`latin1`).toLowerCase()}function ie(e,t){t===void 0&&(t={});for(let n=0;n<e.length;n+=2){let r=re(e[n]),i=t[r];if(i!==void 0)if(Object.hasOwn(t,r))typeof i==`string`&&(i=[i],t[r]=i),i.push(e[n+1].toString(`latin1`));else{let i=typeof e[n+1]==`string`?e[n+1]:Array.isArray(e[n+1])?e[n+1].map(e=>e.toString(`latin1`)):e[n+1].toString(`latin1`);r===`__proto__`?Object.defineProperty(t,r,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[r]=i}else{let i=typeof e[n+1]==`string`?e[n+1]:Array.isArray(e[n+1])?e[n+1].map(e=>e.toString(`latin1`)):e[n+1].toString(`latin1`);t[r]=i}}return t}function ae(e){let t=e.length,n=Array(t),r,i;for(let a=0;a<t;a+=2)r=e[a],i=e[a+1],typeof r!=`string`&&(r=r.toString()),typeof i!=`string`&&(i=i.toString(`latin1`)),n[a]=r,n[a+1]=i;return n}function oe(e){if(!Array.isArray(e))throw TypeError(`expected headers to be an array`);return e.map(e=>Buffer.from(e))}function se(e){return e instanceof Uint8Array||Buffer.isBuffer(e)}function ce(e,t,n){if(!e||typeof e!=`object`)throw new m(`handler must be an object`);if(typeof e.onRequestStart!=`function`){if(typeof e.onConnect!=`function`)throw new m(`invalid onConnect method`);if(typeof e.onError!=`function`)throw new m(`invalid onError method`);if(typeof e.onBodySent!=`function`&&e.onBodySent!==void 0)throw new m(`invalid onBodySent method`);if(n||t===`CONNECT`){if(typeof e.onUpgrade!=`function`)throw new m(`invalid onUpgrade method`)}else{if(typeof e.onHeaders!=`function`)throw new m(`invalid onHeaders method`);if(typeof e.onData!=`function`)throw new m(`invalid onData method`);if(typeof e.onComplete!=`function`)throw new m(`invalid onComplete method`)}}}function le(e){return!!(e&&(l.isDisturbed(e)||e[a]))}function B(e){return{localAddress:e.localAddress,localPort:e.localPort,remoteAddress:e.remoteAddress,remotePort:e.remotePort,remoteFamily:e.remoteFamily,timeout:e.timeout,bytesWritten:e.bytesWritten,bytesRead:e.bytesRead}}function ue(e){let t;return new ReadableStream({start(){t=e[Symbol.asyncIterator]()},pull(e){return t.next().then(({done:t,value:n})=>{if(t)return queueMicrotask(()=>{e.close(),e.byobRequest?.respond(0)});{let t=Buffer.isBuffer(n)?n:Buffer.from(n);return t.byteLength?e.enqueue(new Uint8Array(t)):this.pull(e)}})},cancel(){return t.return()},type:`bytes`})}function de(e){return e&&typeof e==`object`&&typeof e.append==`function`&&typeof e.delete==`function`&&typeof e.get==`function`&&typeof e.getAll==`function`&&typeof e.has==`function`&&typeof e.set==`function`&&e[Symbol.toStringTag]===`FormData`}function fe(e,t){return`addEventListener`in e?(e.addEventListener(`abort`,t,{once:!0}),()=>e.removeEventListener(`abort`,t)):(e.once(`abort`,t),()=>e.removeListener(`abort`,t))}let V=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);function pe(e){return V[e]===1}let me=/^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/;function he(e){if(e.length>=12)return me.test(e);if(e.length===0)return!1;for(let t=0;t<e.length;t++)if(V[e.charCodeAt(t)]!==1)return!1;return!0}let ge=/[^\t\x20-\x7e\x80-\xff]/;function H(e){return!ge.test(e)}let _e=/^bytes (\d+)-(\d+)\/(\d+)?$/;function ve(e){if(e==null||e===``)return{start:0,end:null,size:null};let t=e?e.match(_e):null;return t?{start:parseInt(t[1]),end:t[2]?parseInt(t[2]):null,size:t[3]?parseInt(t[3]):null}:null}function ye(e,t,n){return(e[o]??=[]).push([t,n]),e.on(t,n),e}function be(e){if(e[o]!=null){for(let[t,n]of e[o])e.removeListener(t,n);e[o]=null}return e}function xe(e,t,n){try{t.onError(n),r(t.aborted)}catch(t){e.emit(`error`,t)}}let Se=process.platform===`win32`?(e,t)=>{if(!t.timeout)return x;let n=null,r=null,i=p.setFastTimeout(()=>{n=setImmediate(()=>{r=setImmediate(()=>Ce(e.deref(),t))})},t.timeout);return()=>{p.clearFastTimeout(i),clearImmediate(n),clearImmediate(r)}}:(e,t)=>{if(!t.timeout)return x;let n=null,r=p.setFastTimeout(()=>{n=setImmediate(()=>{Ce(e.deref(),t)})},t.timeout);return()=>{p.clearFastTimeout(r),clearImmediate(n)}};function Ce(e,t){if(e==null)return;let n=`Connect Timeout Error`;Array.isArray(e.autoSelectFamilyAttemptedAddresses)?n+=` (attempted addresses: ${e.autoSelectFamilyAttemptedAddresses.join(`, `)},`:n+=` (attempted address: ${t.hostname}:${t.port},`,n+=` timeout: ${t.timeout}ms)`,te(e,new h(n))}function we(e){if(e[0]===`h`&&e[1]===`t`&&e[2]===`t`&&e[3]===`p`)switch(e[4]){case`:`:return`http:`;case`s`:if(e[5]===`:`)return`https:`}return e.slice(0,e.indexOf(`:`)+1)}let Te=Object.create(null);Te.enumerable=!0;let Ee={delete:`DELETE`,DELETE:`DELETE`,get:`GET`,GET:`GET`,head:`HEAD`,HEAD:`HEAD`,options:`OPTIONS`,OPTIONS:`OPTIONS`,post:`POST`,POST:`POST`,put:`PUT`,PUT:`PUT`},U={...Ee,patch:`patch`,PATCH:`PATCH`};Object.setPrototypeOf(Ee,null),Object.setPrototypeOf(U,null),n.exports={kEnumerableProperty:Te,isDisturbed:le,isBlobLike:w,parseOrigin:A,parseURL:k,getServerName:M,isStream:C,isIterable:F,hasSafeIterator:I,isAsyncIterable:P,isDestroyed:L,headerNameToString:re,bufferToLowerCasedHeaderName:z,addListener:ye,removeAllListeners:be,errorRequest:xe,parseRawHeaders:ae,encodeRawHeaders:oe,parseHeaders:ie,parseKeepAliveTimeout:ne,destroy:te,bodyLength:ee,deepClone:N,ReadableStreamFrom:ue,isBuffer:se,assertRequestHandler:ce,getSocketInfo:B,isFormDataLike:de,pathHasQueryOrFragment:T,serializePathWithQuery:E,addAbortListener:fe,isValidHTTPToken:he,isValidHeaderValue:H,isTokenCharCode:pe,parseRangeHeader:ve,normalizedMethodRecordsBase:Ee,normalizedMethodRecords:U,isValidPort:D,isHttpOrHttpsPrefixed:O,nodeMajor:v,nodeMinor:y,safeHTTPMethods:Object.freeze([`GET`,`HEAD`,`OPTIONS`,`TRACE`]),wrapRequestBody:S,setupConnectTimeout:Se,getProtocolFromUrlString:we}})),ha=n(((e,t)=>{let{kConnected:n,kPending:r,kRunning:i,kSize:a,kFree:o,kQueued:s}=da();t.exports={ClientStats:class{constructor(e){this.connected=e[n],this.pending=e[r],this.running=e[i],this.size=e[a]}},PoolStats:class{constructor(e){this.connected=e[n],this.free=e[o],this.pending=e[r],this.queued=e[s],this.running=e[i],this.size=e[a]}}}})),ga=n(((e,n)=>{let r=t(`node:diagnostics_channel`),i=t(`node:util`),a=i.debuglog(`undici`),o=i.debuglog(`fetch`),s=i.debuglog(`websocket`),c={beforeConnect:r.channel(`undici:client:beforeConnect`),connected:r.channel(`undici:client:connected`),connectError:r.channel(`undici:client:connectError`),sendHeaders:r.channel(`undici:client:sendHeaders`),create:r.channel(`undici:request:create`),bodySent:r.channel(`undici:request:bodySent`),bodyChunkSent:r.channel(`undici:request:bodyChunkSent`),bodyChunkReceived:r.channel(`undici:request:bodyChunkReceived`),headers:r.channel(`undici:request:headers`),trailers:r.channel(`undici:request:trailers`),error:r.channel(`undici:request:error`),open:r.channel(`undici:websocket:open`),close:r.channel(`undici:websocket:close`),socketError:r.channel(`undici:websocket:socket_error`),ping:r.channel(`undici:websocket:ping`),pong:r.channel(`undici:websocket:pong`),proxyConnected:r.channel(`undici:proxy:connected`)},l=!1;function u(e=a){if(!l){if(c.beforeConnect.hasSubscribers||c.connected.hasSubscribers||c.connectError.hasSubscribers||c.sendHeaders.hasSubscribers){l=!0;return}l=!0,r.subscribe(`undici:client:beforeConnect`,t=>{let{connectParams:{version:n,protocol:r,port:i,host:a}}=t;e(`connecting to %s%s using %s%s`,a,i?`:${i}`:``,r,n)}),r.subscribe(`undici:client:connected`,t=>{let{connectParams:{version:n,protocol:r,port:i,host:a}}=t;e(`connected to %s%s using %s%s`,a,i?`:${i}`:``,r,n)}),r.subscribe(`undici:client:connectError`,t=>{let{connectParams:{version:n,protocol:r,port:i,host:a},error:o}=t;e(`connection to %s%s using %s%s errored - %s`,a,i?`:${i}`:``,r,n,o.message)}),r.subscribe(`undici:client:sendHeaders`,t=>{let{request:{method:n,path:r,origin:i}}=t;e(`sending request to %s %s%s`,n,i,r)})}}let d=!1;function f(e=a){if(!d){if(c.headers.hasSubscribers||c.trailers.hasSubscribers||c.error.hasSubscribers){d=!0;return}d=!0,r.subscribe(`undici:request:headers`,t=>{let{request:{method:n,path:r,origin:i},response:{statusCode:a}}=t;e(`received response to %s %s%s - HTTP %d`,n,i,r,a)}),r.subscribe(`undici:request:trailers`,t=>{let{request:{method:n,path:r,origin:i}}=t;e(`trailers received from %s %s%s`,n,i,r)}),r.subscribe(`undici:request:error`,t=>{let{request:{method:n,path:r,origin:i},error:a}=t;e(`request to %s %s%s errored - %s`,n,i,r,a.message)})}}let p=!1;function m(e=s){if(!p){if(c.open.hasSubscribers||c.close.hasSubscribers||c.socketError.hasSubscribers||c.ping.hasSubscribers||c.pong.hasSubscribers){p=!0;return}p=!0,r.subscribe(`undici:websocket:open`,t=>{if(t.address!=null){let{address:n,port:r}=t.address;e(`connection opened %s%s`,n,r?`:${r}`:``)}else e(`connection opened`)}),r.subscribe(`undici:websocket:close`,t=>{let{websocket:n,code:r,reason:i}=t;e(`closed connection to %s - %s %s`,n.url,r,i)}),r.subscribe(`undici:websocket:socket_error`,t=>{e(`connection errored - %s`,t.message)}),r.subscribe(`undici:websocket:ping`,t=>{e(`ping received`)}),r.subscribe(`undici:websocket:pong`,t=>{e(`pong received`)})}}(a.enabled||o.enabled)&&(u(o.enabled?o:a),f(o.enabled?o:a)),s.enabled&&(u(a.enabled?a:s),m(s)),n.exports={channels:c}})),_a=n(((e,n)=>{let{InvalidArgumentError:r,NotSupportedError:i}=K(),a=t(`node:assert`),{isValidHTTPToken:o,isValidHeaderValue:s,isStream:c,destroy:l,isBuffer:u,isFormDataLike:d,isIterable:f,hasSafeIterator:p,isBlobLike:m,serializePathWithQuery:h,assertRequestHandler:g,getServerName:_,normalizedMethodRecords:v,getProtocolFromUrlString:y}=q(),{channels:b}=ga(),{headerNameLowerCasedRecord:x}=pa(),S=/[^\u0021-\u00ff]/;function C(e){if(typeof e!=`string`||e.length===0)return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<48||n>57)return!1}return!0}let w=Symbol(`handler`);var T=class{constructor(e,{path:t,method:n,body:i,headers:a,query:x,idempotent:C,blocking:T,upgrade:D,headersTimeout:O,bodyTimeout:k,reset:A,expectContinue:j,servername:M,throwOnError:N,maxRedirections:P,typeOfService:F},I){if(typeof t!=`string`)throw new r(`path must be a string`);if(t[0]!==`/`&&!(t.startsWith(`http://`)||t.startsWith(`https://`))&&n!==`CONNECT`)throw new r(`path must be an absolute URL or start with a slash`);if(S.test(t))throw new r(`invalid request path`);if(typeof n!=`string`)throw new r(`method must be a string`);if(v[n]===void 0&&!o(n))throw new r(`invalid request method`);if(D&&typeof D!=`string`)throw new r(`upgrade must be a string`);if(D&&!s(D))throw new r(`invalid upgrade header`);if(O!=null&&(!Number.isFinite(O)||O<0))throw new r(`invalid headersTimeout`);if(k!=null&&(!Number.isFinite(k)||k<0))throw new r(`invalid bodyTimeout`);if(A!=null&&typeof A!=`boolean`)throw new r(`invalid reset`);if(j!=null&&typeof j!=`boolean`)throw new r(`invalid expectContinue`);if(N!=null)throw new r(`invalid throwOnError`);if(P!=null&&P!==0)throw new r(`maxRedirections is not supported, use the redirect interceptor`);if(F!=null&&(!Number.isInteger(F)||F<0||F>255))throw new r(`typeOfService must be an integer between 0 and 255`);if(this.headersTimeout=O,this.bodyTimeout=k,this.method=n,this.typeOfService=F??0,this.abort=null,i==null)this.body=null;else if(c(i)){this.body=i;let e=this.body._readableState;(!e||!e.autoDestroy)&&(this.endHandler=function(){l(this)},this.body.on(`end`,this.endHandler)),this.errorHandler=e=>{this.abort?this.abort(e):this.error=e},this.body.on(`error`,this.errorHandler)}else if(u(i))this.body=i.byteLength?i:null;else if(ArrayBuffer.isView(i))this.body=i.buffer.byteLength?Buffer.from(i.buffer,i.byteOffset,i.byteLength):null;else if(i instanceof ArrayBuffer)this.body=i.byteLength?Buffer.from(i):null;else if(typeof i==`string`)this.body=i.length?Buffer.from(i):null;else if(d(i)||f(i)||m(i))this.body=i;else throw new r(`body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable`);if(this.completed=!1,this.aborted=!1,this.upgrade=D||null,this.path=x?h(t,x):t,this.origin=e,this.protocol=y(e),this.idempotent=C??(n===`HEAD`||n===`GET`),this.blocking=T??this.method!==`HEAD`,this.reset=A??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=j??!1,Array.isArray(a)){if(a.length%2!=0)throw new r(`headers array must be even`);for(let e=0;e<a.length;e+=2)E(this,a[e],a[e+1])}else if(a&&typeof a==`object`)if(p(a))for(let e of a){if(!Array.isArray(e)||e.length!==2)throw new r(`headers must be in key-value pair format`);E(this,e[0],e[1])}else{let e=Object.keys(a);for(let t=0;t<e.length;++t)E(this,e[t],a[e[t]])}else if(a!=null)throw new r(`headers must be an object or an array`);g(I,n,D),this.servername=M||_(this.host)||null,this[w]=I,b.create.hasSubscribers&&b.create.publish({request:this})}onBodySent(e){if(b.bodyChunkSent.hasSubscribers&&b.bodyChunkSent.publish({request:this,chunk:e}),this[w].onBodySent)try{return this[w].onBodySent(e)}catch(e){this.abort(e)}}onRequestSent(){if(b.bodySent.hasSubscribers&&b.bodySent.publish({request:this}),this[w].onRequestSent)try{return this[w].onRequestSent()}catch(e){this.abort(e)}}onConnect(e){if(a(!this.aborted),a(!this.completed),this.error)e(this.error);else return this.abort=e,this[w].onConnect(e)}onResponseStarted(){return this[w].onResponseStarted?.()}onHeaders(e,t,n,r){a(!this.aborted),a(!this.completed),b.headers.hasSubscribers&&b.headers.publish({request:this,response:{statusCode:e,headers:t,statusText:r}});try{return this[w].onHeaders(e,t,n,r)}catch(e){this.abort(e)}}onData(e){a(!this.aborted),a(!this.completed),b.bodyChunkReceived.hasSubscribers&&b.bodyChunkReceived.publish({request:this,chunk:e});try{return this[w].onData(e)}catch(e){return this.abort(e),!1}}onUpgrade(e,t,n){return a(!this.aborted),a(!this.completed),this[w].onUpgrade(e,t,n)}onComplete(e){this.onFinally(),a(!this.aborted),a(!this.completed),this.completed=!0,b.trailers.hasSubscribers&&b.trailers.publish({request:this,trailers:e});try{return this[w].onComplete(e)}catch(e){this.onError(e)}}onError(e){if(this.onFinally(),b.error.hasSubscribers&&b.error.publish({request:this,error:e}),!this.aborted)return this.aborted=!0,this[w].onError(e)}onFinally(){this.errorHandler&&=(this.body.off(`error`,this.errorHandler),null),this.endHandler&&=(this.body.off(`end`,this.endHandler),null)}addHeader(e,t){return E(this,e,t),this}};function E(e,t,n){if(n&&typeof n==`object`&&!Array.isArray(n))throw new r(`invalid ${t} header`);if(n===void 0)return;let a=x[t];if(a===void 0&&(a=t.toLowerCase(),x[a]===void 0&&!o(a)))throw new r(`invalid header key`);if(Array.isArray(n)){let e=[];for(let i=0;i<n.length;i++)if(typeof n[i]==`string`){if(!s(n[i]))throw new r(`invalid ${t} header`);e.push(n[i])}else if(n[i]===null)e.push(``);else if(typeof n[i]==`object`)throw new r(`invalid ${t} header`);else e.push(`${n[i]}`);n=e}else if(typeof n==`string`){if(!s(n))throw new r(`invalid ${t} header`)}else n=n===null?``:`${n}`;if(a===`host`){if(e.host!==null)throw new r(`duplicate host header`);if(typeof n!=`string`)throw new r(`invalid host header`);e.host=n}else if(a===`content-length`){if(e.contentLength!==null)throw new r(`duplicate content-length header`);if(!C(n))throw new r(`invalid content-length header`);e.contentLength=parseInt(n,10)}else if(e.contentType===null&&a===`content-type`)e.contentType=n,e.headers.push(t,n);else if(a===`transfer-encoding`||a===`keep-alive`||a===`upgrade`)throw new r(`invalid ${a} header`);else if(a===`connection`){let t=typeof n==`string`?n:null;if(t===null)throw new r(`invalid connection header`);for(let n of t.toLowerCase().split(`,`)){let t=n.trim();if(!o(t))throw new r(`invalid connection header`);t===`close`&&(e.reset=!0)}}else if(a===`expect`)throw new i(`expect header not supported`);else e.headers.push(t,n)}n.exports=T})),va=n(((e,t)=>{let{InvalidArgumentError:n}=K();t.exports=class e{#e;constructor(e){this.#e=e}static wrap(t){return t.onRequestStart?t:new e(t)}onConnect(e,t){return this.#e.onConnect?.(e,t)}onResponseStarted(){return this.#e.onResponseStarted?.()}onHeaders(e,t,n,r){return this.#e.onHeaders?.(e,t,n,r)}onUpgrade(e,t,n){return this.#e.onUpgrade?.(e,t,n)}onData(e){return this.#e.onData?.(e)}onComplete(e){return this.#e.onComplete?.(e)}onError(e){if(!this.#e.onError)throw e;return this.#e.onError?.(e)}onRequestStart(e,t){this.#e.onConnect?.(t=>e.abort(t),t)}onRequestUpgrade(e,t,n,i){let a=[];for(let[e,t]of Object.entries(n))a.push(Buffer.from(e,`latin1`),r(t));this.#e.onUpgrade?.(t,a,i)}onResponseStart(e,t,n,i){let a=[];for(let[e,t]of Object.entries(n))a.push(Buffer.from(e,`latin1`),r(t));this.#e.onHeaders?.(t,a,()=>e.resume(),i)===!1&&e.pause()}onResponseData(e,t){this.#e.onData?.(t)===!1&&e.pause()}onResponseEnd(e,t){let n=[];for(let[e,i]of Object.entries(t))n.push(Buffer.from(e,`latin1`),r(i));this.#e.onComplete?.(n)}onResponseError(e,t){if(!this.#e.onError)throw new n(`invalid onError method`);this.#e.onError?.(t)}};function r(e){return Array.isArray(e)?e.map(e=>Buffer.from(e,`latin1`)):Buffer.from(e,`latin1`)}})),ya=n(((e,n)=>{let r=t(`node:events`),i=va(),a=e=>(t,n)=>e(t,i.wrap(n));n.exports=class extends r{dispatch(){throw Error(`not implemented`)}close(){throw Error(`not implemented`)}destroy(){throw Error(`not implemented`)}compose(...e){let t=Array.isArray(e[0])?e[0]:e,n=this.dispatch.bind(this);for(let e of t)if(e!=null){if(typeof e!=`function`)throw TypeError(`invalid interceptor, expected function received ${typeof e}`);if(n=e(n),n=a(n),n==null||typeof n!=`function`||n.length!==2)throw TypeError(`invalid interceptor`)}return new Proxy(this,{get:(e,t)=>t===`dispatch`?n:e[t]})}}})),ba=n(((e,t)=>{let{parseHeaders:n}=q(),{InvalidArgumentError:r}=K(),i=Symbol(`resume`);var a=class{#e=!1;#t=null;#n=!1;#r;[i]=null;rawHeaders=null;rawTrailers=null;constructor(e){this.#r=e}pause(){this.#e=!0}resume(){this.#e&&(this.#e=!1,this[i]?.())}abort(e){this.#n||(this.#n=!0,this.#t=e,this.#r(e))}get aborted(){return this.#n}get reason(){return this.#t}get paused(){return this.#e}};t.exports=class e{#e;#t;constructor(e){this.#e=e}static unwrap(t){return t.onRequestStart?new e(t):t}onConnect(e,t){this.#t=new a(e),this.#e.onRequestStart?.(this.#t,t)}onResponseStarted(){return this.#e.onResponseStarted?.()}onUpgrade(e,t,r){this.#t.rawHeaders=t,this.#e.onRequestUpgrade?.(this.#t,e,n(t),r)}onHeaders(e,t,r,a){return this.#t[i]=r,this.#t.rawHeaders=t,this.#e.onResponseStart?.(this.#t,e,n(t),a),!this.#t.paused}onData(e){return this.#e.onResponseData?.(this.#t,e),!this.#t.paused}onComplete(e){this.#t.rawTrailers=e,this.#e.onResponseEnd?.(this.#t,n(e))}onError(e){if(!this.#e.onResponseError)throw new r(`invalid onError method`);this.#e.onResponseError?.(this.#t,e)}}})),xa=n(((e,t)=>{let n=ya(),r=ba(),{ClientDestroyedError:i,ClientClosedError:a,InvalidArgumentError:o}=K(),{kDestroy:s,kClose:c,kClosed:l,kDestroyed:u,kDispatch:d}=da(),f=Symbol(`onDestroyed`),p=Symbol(`onClosed`),m=Symbol(`webSocketOptions`);t.exports=class extends n{[u]=!1;[f]=null;[l]=!1;[p]=null;constructor(e){super(),this[m]=e?.webSocket??{}}get webSocketOptions(){return{maxFragments:this[m].maxFragments??131072,maxPayloadSize:this[m].maxPayloadSize??128*1024*1024}}get destroyed(){return this[u]}get closed(){return this[l]}close(e){if(e===void 0)return new Promise((e,t)=>{this.close((n,r)=>n?t(n):e(r))});if(typeof e!=`function`)throw new o(`invalid callback`);if(this[u]){let t=new i;queueMicrotask(()=>e(t,null));return}if(this[l]){this[p]?this[p].push(e):queueMicrotask(()=>e(null,null));return}this[l]=!0,this[p]??=[],this[p].push(e);let t=()=>{let e=this[p];this[p]=null;for(let t=0;t<e.length;t++)e[t](null,null)};this[c]().then(()=>this.destroy()).then(()=>queueMicrotask(t))}destroy(e,t){if(typeof e==`function`&&(t=e,e=null),t===void 0)return new Promise((t,n)=>{this.destroy(e,(e,r)=>e?n(e):t(r))});if(typeof t!=`function`)throw new o(`invalid callback`);if(this[u]){this[f]?this[f].push(t):queueMicrotask(()=>t(null,null));return}e||=new i,this[u]=!0,this[f]??=[],this[f].push(t);let n=()=>{let e=this[f];this[f]=null;for(let t=0;t<e.length;t++)e[t](null,null)};this[s](e).then(()=>queueMicrotask(n))}dispatch(e,t){if(!t||typeof t!=`object`)throw new o(`handler must be an object`);t=r.unwrap(t);try{if(!e||typeof e!=`object`)throw new o(`opts must be an object.`);if(this[u]||this[f])throw new i;if(this[l])throw new a;return this[d](e,t)}catch(e){if(typeof t.onError!=`function`)throw e;return t.onError(e),!1}}}})),Sa=n(((e,n)=>{let r=t(`node:net`),i=t(`node:assert`),a=q(),{InvalidArgumentError:o}=K(),s,c=class{constructor(e){this._maxCachedSessions=e,this._sessionCache=new Map,this._sessionRegistry=new FinalizationRegistry(e=>{if(this._sessionCache.size<this._maxCachedSessions)return;let t=this._sessionCache.get(e);t!==void 0&&t.deref()===void 0&&this._sessionCache.delete(e)})}get(e){let t=this._sessionCache.get(e);return t?t.deref():null}set(e,t){if(this._maxCachedSessions!==0){if(this._sessionCache.has(e))this._sessionCache.delete(e);else if(this._sessionCache.size>=this._maxCachedSessions){for(let[e,t]of this._sessionCache)if(t.deref()===void 0){this._sessionCache.delete(e);return}let e=this._sessionCache.keys().next();e.done||this._sessionCache.delete(e.value)}this._sessionCache.set(e,new WeakRef(t)),this._sessionRegistry.register(t,e)}}};function l({allowH2:e,useH2c:n,maxCachedSessions:l,socketPath:u,timeout:d,session:f,...p}){if(l!=null&&(!Number.isInteger(l)||l<0))throw new o(`maxCachedSessions must be a positive integer or zero`);let m={path:u,...p},h=new c(l??100);return d??=1e4,e??=!1,function({hostname:o,host:c,protocol:l,port:u,servername:p,localAddress:g,httpSocket:_},v){let y;if(l===`https:`){s||=t(`node:tls`),p=p||m.servername||a.getServerName(c)||null;let n=p||o;i(n);let r=f||h.get(n)||null;u||=443,y=s.connect({highWaterMark:16384,...m,servername:p,session:r,localAddress:g,ALPNProtocols:e?[`http/1.1`,`h2`]:[`http/1.1`],socket:_,port:u,host:o}),y.on(`session`,function(e){h.set(n,e)})}else i(!_,`httpSocket can only be sent on TLS update`),u||=80,y=r.connect({highWaterMark:64*1024,...m,localAddress:g,port:u,host:o}),n===!0&&(y.alpnProtocol=`h2`);if(m.keepAlive==null||m.keepAlive){let e=m.keepAliveInitialDelay===void 0?6e4:m.keepAliveInitialDelay;y.setKeepAlive(!0,e)}let b=a.setupConnectTimeout(new WeakRef(y),{timeout:d,hostname:o,port:u});return y.setNoDelay(!0).once(l===`https:`?`secureConnect`:`connect`,function(){if(queueMicrotask(b),v){let e=v;v=null,e(null,this)}}).on(`error`,function(e){if(queueMicrotask(b),v){let t=v;v=null,t(e)}}),y}}n.exports=l})),Ca=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.enumToMap=t;function t(e,t=[],n=[]){let r=(t?.length??0)===0,i=(n?.length??0)===0;return Object.fromEntries(Object.entries(e).filter(([,e])=>typeof e==`number`&&(r||t.includes(e))&&(i||!n.includes(e))))}})),wa=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.SPECIAL_HEADERS=e.MINOR=e.MAJOR=e.HTAB_SP_VCHAR_OBS_TEXT=e.QUOTED_STRING=e.CONNECTION_TOKEN_CHARS=e.HEADER_CHARS=e.TOKEN=e.HEX=e.URL_CHAR=e.USERINFO_CHARS=e.MARK=e.ALPHANUM=e.NUM=e.HEX_MAP=e.NUM_MAP=e.ALPHA=e.STATUSES_HTTP=e.H_METHOD_MAP=e.METHOD_MAP=e.METHODS_RTSP=e.METHODS_ICE=e.METHODS_HTTP=e.HEADER_STATE=e.FINISH=e.STATUSES=e.METHODS=e.LENIENT_FLAGS=e.FLAGS=e.TYPE=e.ERROR=void 0;let t=Ca();e.ERROR={OK:0,INTERNAL:1,STRICT:2,CR_EXPECTED:25,LF_EXPECTED:3,UNEXPECTED_CONTENT_LENGTH:4,UNEXPECTED_SPACE:30,CLOSED_CONNECTION:5,INVALID_METHOD:6,INVALID_URL:7,INVALID_CONSTANT:8,INVALID_VERSION:9,INVALID_HEADER_TOKEN:10,INVALID_CONTENT_LENGTH:11,INVALID_CHUNK_SIZE:12,INVALID_STATUS:13,INVALID_EOF_STATE:14,INVALID_TRANSFER_ENCODING:15,CB_MESSAGE_BEGIN:16,CB_HEADERS_COMPLETE:17,CB_MESSAGE_COMPLETE:18,CB_CHUNK_HEADER:19,CB_CHUNK_COMPLETE:20,PAUSED:21,PAUSED_UPGRADE:22,PAUSED_H2_UPGRADE:23,USER:24,CB_URL_COMPLETE:26,CB_STATUS_COMPLETE:27,CB_METHOD_COMPLETE:32,CB_VERSION_COMPLETE:33,CB_HEADER_FIELD_COMPLETE:28,CB_HEADER_VALUE_COMPLETE:29,CB_CHUNK_EXTENSION_NAME_COMPLETE:34,CB_CHUNK_EXTENSION_VALUE_COMPLETE:35,CB_RESET:31,CB_PROTOCOL_COMPLETE:38},e.TYPE={BOTH:0,REQUEST:1,RESPONSE:2},e.FLAGS={CONNECTION_KEEP_ALIVE:1,CONNECTION_CLOSE:2,CONNECTION_UPGRADE:4,CHUNKED:8,UPGRADE:16,CONTENT_LENGTH:32,SKIPBODY:64,TRAILING:128,TRANSFER_ENCODING:512},e.LENIENT_FLAGS={HEADERS:1,CHUNKED_LENGTH:2,KEEP_ALIVE:4,TRANSFER_ENCODING:8,VERSION:16,DATA_AFTER_CLOSE:32,OPTIONAL_LF_AFTER_CR:64,OPTIONAL_CRLF_AFTER_CHUNK:128,OPTIONAL_CR_BEFORE_LF:256,SPACES_AFTER_CHUNK_SIZE:512},e.METHODS={DELETE:0,GET:1,HEAD:2,POST:3,PUT:4,CONNECT:5,OPTIONS:6,TRACE:7,COPY:8,LOCK:9,MKCOL:10,MOVE:11,PROPFIND:12,PROPPATCH:13,SEARCH:14,UNLOCK:15,BIND:16,REBIND:17,UNBIND:18,ACL:19,REPORT:20,MKACTIVITY:21,CHECKOUT:22,MERGE:23,"M-SEARCH":24,NOTIFY:25,SUBSCRIBE:26,UNSUBSCRIBE:27,PATCH:28,PURGE:29,MKCALENDAR:30,LINK:31,UNLINK:32,SOURCE:33,PRI:34,DESCRIBE:35,ANNOUNCE:36,SETUP:37,PLAY:38,PAUSE:39,TEARDOWN:40,GET_PARAMETER:41,SET_PARAMETER:42,REDIRECT:43,RECORD:44,FLUSH:45,QUERY:46},e.STATUSES={CONTINUE:100,SWITCHING_PROTOCOLS:101,PROCESSING:102,EARLY_HINTS:103,RESPONSE_IS_STALE:110,REVALIDATION_FAILED:111,DISCONNECTED_OPERATION:112,HEURISTIC_EXPIRATION:113,MISCELLANEOUS_WARNING:199,OK:200,CREATED:201,ACCEPTED:202,NON_AUTHORITATIVE_INFORMATION:203,NO_CONTENT:204,RESET_CONTENT:205,PARTIAL_CONTENT:206,MULTI_STATUS:207,ALREADY_REPORTED:208,TRANSFORMATION_APPLIED:214,IM_USED:226,MISCELLANEOUS_PERSISTENT_WARNING:299,MULTIPLE_CHOICES:300,MOVED_PERMANENTLY:301,FOUND:302,SEE_OTHER:303,NOT_MODIFIED:304,USE_PROXY:305,SWITCH_PROXY:306,TEMPORARY_REDIRECT:307,PERMANENT_REDIRECT:308,BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,METHOD_NOT_ALLOWED:405,NOT_ACCEPTABLE:406,PROXY_AUTHENTICATION_REQUIRED:407,REQUEST_TIMEOUT:408,CONFLICT:409,GONE:410,LENGTH_REQUIRED:411,PRECONDITION_FAILED:412,PAYLOAD_TOO_LARGE:413,URI_TOO_LONG:414,UNSUPPORTED_MEDIA_TYPE:415,RANGE_NOT_SATISFIABLE:416,EXPECTATION_FAILED:417,IM_A_TEAPOT:418,PAGE_EXPIRED:419,ENHANCE_YOUR_CALM:420,MISDIRECTED_REQUEST:421,UNPROCESSABLE_ENTITY:422,LOCKED:423,FAILED_DEPENDENCY:424,TOO_EARLY:425,UPGRADE_REQUIRED:426,PRECONDITION_REQUIRED:428,TOO_MANY_REQUESTS:429,REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL:430,REQUEST_HEADER_FIELDS_TOO_LARGE:431,LOGIN_TIMEOUT:440,NO_RESPONSE:444,RETRY_WITH:449,BLOCKED_BY_PARENTAL_CONTROL:450,UNAVAILABLE_FOR_LEGAL_REASONS:451,CLIENT_CLOSED_LOAD_BALANCED_REQUEST:460,INVALID_X_FORWARDED_FOR:463,REQUEST_HEADER_TOO_LARGE:494,SSL_CERTIFICATE_ERROR:495,SSL_CERTIFICATE_REQUIRED:496,HTTP_REQUEST_SENT_TO_HTTPS_PORT:497,INVALID_TOKEN:498,CLIENT_CLOSED_REQUEST:499,INTERNAL_SERVER_ERROR:500,NOT_IMPLEMENTED:501,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504,HTTP_VERSION_NOT_SUPPORTED:505,VARIANT_ALSO_NEGOTIATES:506,INSUFFICIENT_STORAGE:507,LOOP_DETECTED:508,BANDWIDTH_LIMIT_EXCEEDED:509,NOT_EXTENDED:510,NETWORK_AUTHENTICATION_REQUIRED:511,WEB_SERVER_UNKNOWN_ERROR:520,WEB_SERVER_IS_DOWN:521,CONNECTION_TIMEOUT:522,ORIGIN_IS_UNREACHABLE:523,TIMEOUT_OCCURED:524,SSL_HANDSHAKE_FAILED:525,INVALID_SSL_CERTIFICATE:526,RAILGUN_ERROR:527,SITE_IS_OVERLOADED:529,SITE_IS_FROZEN:530,IDENTITY_PROVIDER_AUTHENTICATION_ERROR:561,NETWORK_READ_TIMEOUT:598,NETWORK_CONNECT_TIMEOUT:599},e.FINISH={SAFE:0,SAFE_WITH_CB:1,UNSAFE:2},e.HEADER_STATE={GENERAL:0,CONNECTION:1,CONTENT_LENGTH:2,TRANSFER_ENCODING:3,UPGRADE:4,CONNECTION_KEEP_ALIVE:5,CONNECTION_CLOSE:6,CONNECTION_UPGRADE:7,TRANSFER_ENCODING_CHUNKED:8},e.METHODS_HTTP=[e.METHODS.DELETE,e.METHODS.GET,e.METHODS.HEAD,e.METHODS.POST,e.METHODS.PUT,e.METHODS.CONNECT,e.METHODS.OPTIONS,e.METHODS.TRACE,e.METHODS.COPY,e.METHODS.LOCK,e.METHODS.MKCOL,e.METHODS.MOVE,e.METHODS.PROPFIND,e.METHODS.PROPPATCH,e.METHODS.SEARCH,e.METHODS.UNLOCK,e.METHODS.BIND,e.METHODS.REBIND,e.METHODS.UNBIND,e.METHODS.ACL,e.METHODS.REPORT,e.METHODS.MKACTIVITY,e.METHODS.CHECKOUT,e.METHODS.MERGE,e.METHODS[`M-SEARCH`],e.METHODS.NOTIFY,e.METHODS.SUBSCRIBE,e.METHODS.UNSUBSCRIBE,e.METHODS.PATCH,e.METHODS.PURGE,e.METHODS.MKCALENDAR,e.METHODS.LINK,e.METHODS.UNLINK,e.METHODS.PRI,e.METHODS.SOURCE,e.METHODS.QUERY],e.METHODS_ICE=[e.METHODS.SOURCE],e.METHODS_RTSP=[e.METHODS.OPTIONS,e.METHODS.DESCRIBE,e.METHODS.ANNOUNCE,e.METHODS.SETUP,e.METHODS.PLAY,e.METHODS.PAUSE,e.METHODS.TEARDOWN,e.METHODS.GET_PARAMETER,e.METHODS.SET_PARAMETER,e.METHODS.REDIRECT,e.METHODS.RECORD,e.METHODS.FLUSH,e.METHODS.GET,e.METHODS.POST],e.METHOD_MAP=(0,t.enumToMap)(e.METHODS),e.H_METHOD_MAP=Object.fromEntries(Object.entries(e.METHODS).filter(([e])=>e.startsWith(`H`))),e.STATUSES_HTTP=[e.STATUSES.CONTINUE,e.STATUSES.SWITCHING_PROTOCOLS,e.STATUSES.PROCESSING,e.STATUSES.EARLY_HINTS,e.STATUSES.RESPONSE_IS_STALE,e.STATUSES.REVALIDATION_FAILED,e.STATUSES.DISCONNECTED_OPERATION,e.STATUSES.HEURISTIC_EXPIRATION,e.STATUSES.MISCELLANEOUS_WARNING,e.STATUSES.OK,e.STATUSES.CREATED,e.STATUSES.ACCEPTED,e.STATUSES.NON_AUTHORITATIVE_INFORMATION,e.STATUSES.NO_CONTENT,e.STATUSES.RESET_CONTENT,e.STATUSES.PARTIAL_CONTENT,e.STATUSES.MULTI_STATUS,e.STATUSES.ALREADY_REPORTED,e.STATUSES.TRANSFORMATION_APPLIED,e.STATUSES.IM_USED,e.STATUSES.MISCELLANEOUS_PERSISTENT_WARNING,e.STATUSES.MULTIPLE_CHOICES,e.STATUSES.MOVED_PERMANENTLY,e.STATUSES.FOUND,e.STATUSES.SEE_OTHER,e.STATUSES.NOT_MODIFIED,e.STATUSES.USE_PROXY,e.STATUSES.SWITCH_PROXY,e.STATUSES.TEMPORARY_REDIRECT,e.STATUSES.PERMANENT_REDIRECT,e.STATUSES.BAD_REQUEST,e.STATUSES.UNAUTHORIZED,e.STATUSES.PAYMENT_REQUIRED,e.STATUSES.FORBIDDEN,e.STATUSES.NOT_FOUND,e.STATUSES.METHOD_NOT_ALLOWED,e.STATUSES.NOT_ACCEPTABLE,e.STATUSES.PROXY_AUTHENTICATION_REQUIRED,e.STATUSES.REQUEST_TIMEOUT,e.STATUSES.CONFLICT,e.STATUSES.GONE,e.STATUSES.LENGTH_REQUIRED,e.STATUSES.PRECONDITION_FAILED,e.STATUSES.PAYLOAD_TOO_LARGE,e.STATUSES.URI_TOO_LONG,e.STATUSES.UNSUPPORTED_MEDIA_TYPE,e.STATUSES.RANGE_NOT_SATISFIABLE,e.STATUSES.EXPECTATION_FAILED,e.STATUSES.IM_A_TEAPOT,e.STATUSES.PAGE_EXPIRED,e.STATUSES.ENHANCE_YOUR_CALM,e.STATUSES.MISDIRECTED_REQUEST,e.STATUSES.UNPROCESSABLE_ENTITY,e.STATUSES.LOCKED,e.STATUSES.FAILED_DEPENDENCY,e.STATUSES.TOO_EARLY,e.STATUSES.UPGRADE_REQUIRED,e.STATUSES.PRECONDITION_REQUIRED,e.STATUSES.TOO_MANY_REQUESTS,e.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL,e.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE,e.STATUSES.LOGIN_TIMEOUT,e.STATUSES.NO_RESPONSE,e.STATUSES.RETRY_WITH,e.STATUSES.BLOCKED_BY_PARENTAL_CONTROL,e.STATUSES.UNAVAILABLE_FOR_LEGAL_REASONS,e.STATUSES.CLIENT_CLOSED_LOAD_BALANCED_REQUEST,e.STATUSES.INVALID_X_FORWARDED_FOR,e.STATUSES.REQUEST_HEADER_TOO_LARGE,e.STATUSES.SSL_CERTIFICATE_ERROR,e.STATUSES.SSL_CERTIFICATE_REQUIRED,e.STATUSES.HTTP_REQUEST_SENT_TO_HTTPS_PORT,e.STATUSES.INVALID_TOKEN,e.STATUSES.CLIENT_CLOSED_REQUEST,e.STATUSES.INTERNAL_SERVER_ERROR,e.STATUSES.NOT_IMPLEMENTED,e.STATUSES.BAD_GATEWAY,e.STATUSES.SERVICE_UNAVAILABLE,e.STATUSES.GATEWAY_TIMEOUT,e.STATUSES.HTTP_VERSION_NOT_SUPPORTED,e.STATUSES.VARIANT_ALSO_NEGOTIATES,e.STATUSES.INSUFFICIENT_STORAGE,e.STATUSES.LOOP_DETECTED,e.STATUSES.BANDWIDTH_LIMIT_EXCEEDED,e.STATUSES.NOT_EXTENDED,e.STATUSES.NETWORK_AUTHENTICATION_REQUIRED,e.STATUSES.WEB_SERVER_UNKNOWN_ERROR,e.STATUSES.WEB_SERVER_IS_DOWN,e.STATUSES.CONNECTION_TIMEOUT,e.STATUSES.ORIGIN_IS_UNREACHABLE,e.STATUSES.TIMEOUT_OCCURED,e.STATUSES.SSL_HANDSHAKE_FAILED,e.STATUSES.INVALID_SSL_CERTIFICATE,e.STATUSES.RAILGUN_ERROR,e.STATUSES.SITE_IS_OVERLOADED,e.STATUSES.SITE_IS_FROZEN,e.STATUSES.IDENTITY_PROVIDER_AUTHENTICATION_ERROR,e.STATUSES.NETWORK_READ_TIMEOUT,e.STATUSES.NETWORK_CONNECT_TIMEOUT],e.ALPHA=[];for(let t=65;t<=90;t++)e.ALPHA.push(String.fromCharCode(t)),e.ALPHA.push(String.fromCharCode(t+32));e.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9},e.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},e.NUM=[`0`,`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`],e.ALPHANUM=e.ALPHA.concat(e.NUM),e.MARK=[`-`,`_`,`.`,`!`,`~`,`*`,`'`,`(`,`)`],e.USERINFO_CHARS=e.ALPHANUM.concat(e.MARK).concat([`%`,`;`,`:`,`&`,`=`,`+`,`$`,`,`]),e.URL_CHAR=`!"$%&'()*+,-./:;<=>@[\\]^_\`{|}~`.split(``).concat(e.ALPHANUM),e.HEX=e.NUM.concat([`a`,`b`,`c`,`d`,`e`,`f`,`A`,`B`,`C`,`D`,`E`,`F`]),e.TOKEN=[`!`,`#`,`$`,`%`,`&`,`'`,`*`,`+`,`-`,`.`,`^`,`_`,"`",`|`,`~`].concat(e.ALPHANUM),e.HEADER_CHARS=[` `];for(let t=32;t<=255;t++)t!==127&&e.HEADER_CHARS.push(t);e.CONNECTION_TOKEN_CHARS=e.HEADER_CHARS.filter(e=>e!==44),e.QUOTED_STRING=[` `,` `];for(let t=33;t<=255;t++)t!==34&&t!==92&&e.QUOTED_STRING.push(t);e.HTAB_SP_VCHAR_OBS_TEXT=[` `,` `];for(let t=33;t<=126;t++)e.HTAB_SP_VCHAR_OBS_TEXT.push(t);for(let t=128;t<=255;t++)e.HTAB_SP_VCHAR_OBS_TEXT.push(t);e.MAJOR=e.NUM_MAP,e.MINOR=e.MAJOR,e.SPECIAL_HEADERS={connection:e.HEADER_STATE.CONNECTION,"content-length":e.HEADER_STATE.CONTENT_LENGTH,"proxy-connection":e.HEADER_STATE.CONNECTION,"transfer-encoding":e.HEADER_STATE.TRANSFER_ENCODING,upgrade:e.HEADER_STATE.UPGRADE},e.default={ERROR:e.ERROR,TYPE:e.TYPE,FLAGS:e.FLAGS,LENIENT_FLAGS:e.LENIENT_FLAGS,METHODS:e.METHODS,STATUSES:e.STATUSES,FINISH:e.FINISH,HEADER_STATE:e.HEADER_STATE,ALPHA:e.ALPHA,NUM_MAP:e.NUM_MAP,HEX_MAP:e.HEX_MAP,NUM:e.NUM,ALPHANUM:e.ALPHANUM,MARK:e.MARK,USERINFO_CHARS:e.USERINFO_CHARS,URL_CHAR:e.URL_CHAR,HEX:e.HEX,TOKEN:e.TOKEN,HEADER_CHARS:e.HEADER_CHARS,CONNECTION_TOKEN_CHARS:e.CONNECTION_TOKEN_CHARS,QUOTED_STRING:e.QUOTED_STRING,HTAB_SP_VCHAR_OBS_TEXT:e.HTAB_SP_VCHAR_OBS_TEXT,MAJOR:e.MAJOR,MINOR:e.MINOR,SPECIAL_HEADERS:e.SPECIAL_HEADERS,METHODS_HTTP:e.METHODS_HTTP,METHODS_ICE:e.METHODS_ICE,METHODS_RTSP:e.METHODS_RTSP,METHOD_MAP:e.METHOD_MAP,H_METHOD_MAP:e.H_METHOD_MAP,STATUSES_HTTP:e.STATUSES_HTTP}})),Ta=n(((e,n)=>{let{Buffer:r}=t(`node:buffer`),i;Object.defineProperty(n,"exports",{get:()=>i||=r.from(`AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgL5YUCAgd/A34gASACaiEEAkAgACIDKAIMIgANACADKAIEBEAgAyABNgIECyMAQRBrIgkkAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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C0HjAQwHC0HXAQwGC0HYAQwFC0HZAQwEC0HaAQwDC0HbAQwCC0HdAQwBC0HcAQshAgNAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCADAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJ/AkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAg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ogKiAqICogKiAqICogKiAqICogKiAqICogIAogILIAQgAUEBaiIBRw0AC0HJACECDOwCCyABQQFqIQEgA0Evai0AAEEBcQ2lAiADQQA2AhwgAyABNgIUIANBlxA2AhAgA0EKNgIMQQAhAgzrAgsgASAERwRAA0AgAS0AAEEgRw0VIAQgAUEBaiIBRw0AC0H4ACECDOsCC0H4ACECDOoCCyADQQI6ACgMOAtBACECIANBADYCHCADQb8LNgIQIANBAjYCDCADIAFBAWo2AhQM6AILQQAhAgzOAgtBDSECDM0CC0ETIQIMzAILQRUhAgzLAgtBFiECDMoCC0EYIQIMyQILQRkhAgzIAgtBGiECDMcCC0EbIQIMxgILQRwhAgzFAgtBHSECDMQCC0EeIQIMwwILQR8hAgzCAgtBICECDMECC0EiIQIMwAILQSMhAgy/AgtBJSECDL4CC0HlACECDL0CCyADQT02AhwgAyABNgIUIAMgADYCDEEAIQIM1QILIANBGzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDNQCCyADQSA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzTAgsgA0ETNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0gILIANBCzYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNECCyADQRA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzQAgsgA0EgNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzwILIANBCzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM4CCyADQQw2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzNAgtBACECIANBADYCHCADIAE2AhQgA0HdDjYCECADQRI2AgwMzAILAkADQAJAIAEtAABBCmsOBAACAgACCyAEIAFBAWoiAUcNAAtB/QEhAgzMAgsCQAJAIAMtADZBAUcNAEEAIQACQCADKAI4IgJFDQAgAigCYCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUcNASADQfwBNgIcIAMgATYCFCADQdwZNgIQIANBFTYCDEEAIQIMzQILQdwBIQIMswILIANBADYCHCADIAE2AhQgA0H5CzYCECADQR82AgxBACECDMsCCwJAAkAgAy0AKEEBaw4CBAEAC0HbASECDLICC0HUASECDLECCyADQQI6ADFBACEAAkAgAygCOCICRQ0AIAIoAgAiAkUNACADIAIRAAAhAAsgAEUEQEHdASECDLECCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQbQMNgIQIANBEDYCDEEAIQIMygILIANB+wE2AhwgAyABNgIUIANBgRo2AhAgA0EVNgIMQQAhAgzJAgsgASAERgRAQfoBIQIMyQILIAEtAABByABGDQEgA0EBOgAoC0HAASECDK4CC0HaASECDK0CCyABIARHBEAgA0EMNgIIIAMgATYCBEHZASECDK0CC0H5ASECDMUCCyABIARGBEBB+AEhAgzFAgsgAS0AAEHIAEcNBCABQQFqIQFB2AEhAgyrAgsgASAERgRAQfcBIQIMxAILAkACQCABLQAAQcUAaw4QAAUFBQUFBQUFBQUFBQUFAQULIAFBAWohAUHWASECDKsCCyABQQFqIQFB1wEhAgyqAgtB9gEhAiABIARGDcICIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbrVAGotAABHDQMgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMMCCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIARQRAQeMBIQIMqgILIANB9QE2AhwgAyABNgIUIAMgADYCDEEAIQIMwgILQfQBIQIgASAERg3BAiADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEG41QBqLQAARw0CIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzCAgsgA0GBBDsBKCADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIADQMMAgsgA0EANgIAC0EAIQIgA0EANgIcIAMgATYCFCADQeUfNgIQIANBCDYCDAy/AgtB1QEhAgylAgsgA0HzATYCHCADIAE2AhQgAyAANgIMQQAhAgy9AgtBACEAAkAgAygCOCICRQ0AIAIoAkAiAkUNACADIAIRAAAhAAsgAEUNbiAAQRVHBEAgA0EANgIcIAMgATYCFCADQYIPNgIQIANBIDYCDEEAIQIMvQILIANBjwE2AhwgAyABNgIUIANB7Bs2AhAgA0EVNgIMQQAhAgy8AgsgASAERwRAIANBDTYCCCADIAE2AgRB0wEhAgyjAgtB8gEhAgy7AgsgASAERgRAQfEBIQIMuwILAkACQAJAIAEtAABByABrDgsAAQgICAgICAgIAggLIAFBAWohAUHQASECDKMCCyABQQFqIQFB0QEhAgyiAgsgAUEBaiEBQdIBIQIMoQILQfABIQIgASAERg25AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBtdUAai0AAEcNBCAAQQJGDQMgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuQILQe8BIQIgASAERg24AiADKAIAIgAgBCABa2ohBiABIABrQQFqIQUDQCABLQAAIABBs9UAai0AAEcNAyAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuAILQe4BIQIgASAERg23AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMtwILIAMoAgQhACADQgA3AwAgAyAAIAVBAWoiARArIgBFDQIgA0HsATYCHCADIAE2AhQgAyAANgIMQQAhAgy2AgsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNnAIgA0HtATYCHCADIAE2AhQgAyAANgIMQQAhAgy0AgtBzwEhAgyaAgtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDLQCC0HOASECDJoCCyADQesBNgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMsgILIAEgBEYEQEHrASECDLICCyABLQAAQS9GBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GyODYCECADQQg2AgxBACECDLECC0HNASECDJcCCyABIARHBEAgA0EONgIIIAMgATYCBEHMASECDJcCC0HqASECDK8CCyABIARGBEBB6QEhAgyvAgsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFBywEhAgyWAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZcCIANB6AE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAEgBEYEQEHnASECDK4CCwJAIAEtAABBLkYEQCABQQFqIQEMAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5gE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILQcoBIQIMlAILIAEgBEYEQEHlASECDK0CC0EAIQBBASEFQQEhB0EAIQICQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQCABLQAAQTBrDgoKCQABAgMEBQYICwtBAgwGC0EDDAULQQQMBAtBBQwDC0EGDAILQQcMAQtBCAshAkEAIQVBACEHDAILQQkhAkEBIQBBACEFQQAhBwwBC0EAIQVBASECCyADIAI6ACsgAUEBaiEBAkACQCADLQAuQRBxDQACQAJAAkAgAy0AKg4DAQACBAsgB0UNAwwCCyAADQEMAgsgBUUNAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDQIgA0HiATYCHCADIAE2AhQgAyAANgIMQQAhAgyvAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZoCIANB4wE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ2YAiADQeQBNgIcIAMgATYCFCADIAA2AgwMrQILQckBIQIMkwILQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANBpA02AhAgA0EhNgIMQQAhAgytAgtByAEhAgyTAgsgA0HhATYCHCADIAE2AhQgA0HQGjYCECADQRU2AgxBACECDKsCCyABIARGBEBB4QEhAgyrAgsCQCABLQAAQSBGBEAgA0EAOwE0IAFBAWohAQwBCyADQQA2AhwgAyABNgIUIANBmRE2AhAgA0EJNgIMQQAhAgyrAgtBxwEhAgyRAgsgASAERgRAQeABIQIMqgILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyrAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqgILQcYBIQIMkAILIAEgBEYEQEHfASECDKkCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqgILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKkCC0HFASECDI8CCyABIARGBEBB3gEhAgyoAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKkCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyoAgtBxAEhAgyOAgsgASAERgRAQd0BIQIMpwILAkACQAJAAkAgAS0AAEEKaw4XAgMDAAMDAwMDAwMDAwMDAwMDAwMDAwEDCyABQQFqDAULIAFBAWohAUHDASECDI8CCyABQQFqIQEgA0Evai0AAEEBcQ0IIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKcCCyADQQA2AhwgAyABNgIUIANBjQs2AhAgA0ENNgIMQQAhAgymAgsgASAERwRAIANBDzYCCCADIAE2AgRBASECDI0CC0HcASECDKUCCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtB2wEhAgymAgsgAygCBCEAIANBADYCBCADIAAgARAtIgBFBEAgAUEBaiEBDAQLIANB2gE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMpQILIAMoAgQhACADQQA2AgQgAyAAIAEQLSIADQEgAUEBagshAUHBASECDIoCCyADQdkBNgIcIAMgADYCDCADIAFBAWo2AhRBACECDKICC0HCASECDIgCCyADQS9qLQAAQQFxDQEgA0EANgIcIAMgATYCFCADQeQcNgIQIANBGTYCDEEAIQIMoAILIAEgBEYEQEHZASEC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IAFBAWohAUGeASECDOQBCyABQQFqIQFBnwEhAgzjAQtBtwEhAiABIARGDfsBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQezUAGotAABHDSggAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPwBCyADQQA2AgAgBkEBaiEBQQ0MKAtBtgEhAiABIARGDfoBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDScgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPsBCyADQQA2AgAgBkEBaiEBQQwMJwtBtQEhAiABIARGDfkBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQerUAGotAABHDSYgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPoBCyADQQA2AgAgBkEBaiEBQQMMJgtBtAEhAiABIARGDfgBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQejUAGotAABHDSUgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPkBCyADQQA2AgAgBkEBaiEBQSYMJQsgASAERgRAQbMBIQIM+AELAkACQCABLQAAQdQAaw4CAAEnCyABQQFqIQFBmQEhAgzfAQsgAUEBaiEBQZoBIQIM3gELQbIBIQIgASAERg32ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHm1ABqLQAARw0jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz3AQsgA0EANgIAIAZBAWohAUEnDCMLQbEBIQIgASAERg31ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHk1ABqLQAARw0iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz2AQsgA0EANgIAIAZBAWohAUEcDCILQbABIQIgASAERg30ASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHe1ABqLQAARw0hIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz1AQsgA0EANgIAIAZBAWohAUEGDCELQa8BIQIgASAERg3zASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEHZ1ABqLQAARw0gIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz0AQsgA0EANgIAIAZBAWohAUEZDCALIAEgBEYEQEGuASECDPMBCwJAAkACQAJAIAEtAABBLWsOIwAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAEkJCQkJAIkJCQDJAsgAUEBaiEBQY4BIQIM3AELIAFBAWohAUGPASECDNsBCyABQQFqIQFBlAEhAgzaAQsgAUEBaiEBQZUBIQIM2QELQa0BIQIgASAERg3xASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHX1ABqLQAARw0eIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzyAQsgA0EANgIAIAZBAWohAUELDB4LIAEgBEYEQEGsASECDPEBCwJAAkAgAS0AAEHBAGsOAwAgASALIAFBAWohAUGQASECDNgBCyABQQFqIQFBkwEhAgzXAQsgASAERgRAQasBIQIM8AELAkACQCABLQAAQcEAaw4PAB8fHx8fHx8fHx8fHx8BHwsgAUEBaiEBQZEBIQIM1wELIAFBAWohAUGSASECDNYBCyABIARGBEBBqgEhAgzvAQsgAS0AAEHMAEcNHCABQQFqIQFBCgwbC0GpASECIAEgBEYN7QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABB0dQAai0AAEcNGiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7gELIANBADYCACAGQQFqIQFBHgwaC0GoASECIAEgBEYN7AEgAygCACIAIAQgAWtqIQUgASAAa0EGaiEGAkADQCABLQAAIABBytQAai0AAEcNGSAAQQZGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7QELIANBADYCACAGQQFqIQFBFQwZC0GnASECIAEgBEYN6wEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBx9QAai0AAEcNGCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7AELIANBADYCACAGQQFqIQFBFwwYC0GmASECIAEgBEYN6gEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBwdQAai0AAEcNFyAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6wELIANBADYCACAGQQFqIQFBGAwXCyABIARGBEBBpQEhAgzqAQsCQAJAIAEtAABByQBrDgcAGRkZGRkBGQsgAUEBaiEBQYsBIQIM0QELIAFBAWohAUGMASECDNABC0GkASECIAEgBEYN6AEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBptUAai0AAEcNFSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6QELIANBADYCACAGQQFqIQFBCQwVC0GjASECIAEgBEYN5wEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBpNUAai0AAEcNFCAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6AELIANBADYCACAGQQFqIQFBHwwUC0GiASECIAEgBEYN5gEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBvtQAai0AAEcNEyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5wELIANBADYCACAGQQFqIQFBAgwTC0GhASECIAEgBEYN5QEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGA0AgAS0AACAAQbzUAGotAABHDREgAEEBRg0CIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADOUBCyABIARGBEBBoAEhAgzlAQtBASABLQAAQd8ARw0RGiABQQFqIQFBhwEhAgzLAQsgA0EANgIAIAZBAWohAUGIASECDMoBC0GfASECIAEgBEYN4gEgAygCACIAIAQgAWtqIQUgASAAa0EIaiEGAkADQCABLQAAIABBhNUAai0AAEcNDyAAQQhGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4wELIANBADYCACAGQQFqIQFBKQwPC0GeASECIAEgBEYN4QEgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBuNQAai0AAEcNDiAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4gELIANBADYCACAGQQFqIQFBLQwOCyABIARGBEBBnQEhAgzhAQsgAS0AAEHFAEcNDiABQQFqIQFBhAEhAgzHAQsgASAERgRAQZwBIQIM4AELAkACQCABLQAAQcwAaw4IAA8PDw8PDwEPCyABQQFqIQFBggEhAgzHAQsgAUEBaiEBQYMBIQIMxgELQZsBIQIgASAERg3eASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEGz1ABqLQAARw0LIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzfAQsgA0EANgIAIAZBAWohAUEjDAsLQZoBIQIgASAERg3dASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGw1ABqLQAARw0KIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzeAQsgA0EANgIAIAZBAWohAUEADAoLIAEgBEYEQEGZASECDN0BCwJAAkAgAS0AAEHIAGsOCAAMDAwMDAwBDAsgAUEBaiEBQf0AIQIMxAELIAFBAWohAUGAASECDMMBCyABIARGBEBBmAEhAgzcAQsCQAJAIAEtAABBzgBrDgMACwELCyABQQFqIQFB/gAhAgzDAQsgAUEBaiEBQf8AIQIMwgELIAEgBEYEQEGXASECDNsBCyABLQAAQdkARw0IIAFBAWohAUEIDAcLQZYBIQIgASAERg3ZASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEGs1ABqLQAARw0GIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzaAQsgA0EANgIAIAZBAWohAUEFDAYLQZUBIQIgASAERg3YASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGm1ABqLQAARw0FIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzZAQsgA0EANgIAIAZBAWohAUEWDAULQZQBIQIgASAERg3XASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGh1QBqLQAARw0EIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzYAQsgA0EANgIAIAZBAWohAUEQDAQLIAEgBEYEQEGTASECDNcBCwJAAkAgAS0AAEHDAGsODAAGBgYGBgYGBgYGAQYLIAFBAWohAUH5ACECDL4BCyABQQFqIQFB+gAhAgy9AQtBkgEhAiABIARGDdUBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQaDUAGotAABHDQIgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNYBCyADQQA2AgAgBkEBaiEBQSQMAgsgA0EANgIADAILIAEgBEYEQEGRASECDNQBCyABLQAAQcwARw0BIAFBAWohAUETCzoAKSADKAIEIQAgA0EANgIEIAMgACABEC4iAA0CDAELQQAhAiADQQA2AhwgAyABNgIUIANB/h82AhAgA0EGNgIMDNEBC0H4ACECDLcBCyADQZABNgIcIAMgATYCFCADIAA2AgxBACECDM8BC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUYNASADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgzOAQtB9wAhAgy0AQsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDMwBCyABIARGBEBBjwEhAgzMAQsCQCABLQAAQSBGBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GbHzYCECADQQY2AgxBACECDMwBC0ECIQIMsgELA0AgAS0AAEEgRw0CIAQgAUEBaiIBRw0AC0GOASECDMoBCyABIARGBEBBjQEhAgzKAQsCQCABLQAAQQlrDgRKAABKAAtB9QAhAgywAQsgAy0AKUEFRgRAQfYAIQIMsAELQfQAIQIMrwELIAEgBEYEQEGMASECDMgBCyADQRA2AgggAyABNgIEDAoLIAEgBEYEQEGLASECDMcBCwJAIAEtAABBCWsOBEcAAEcAC0HzACECDK0BCyABIARHBEAgA0EQNgIIIAMgATYCBEHxACECDK0BC0GKASECDMUBCwJAIAEgBEcEQANAIAEtAABBoNAAai0AACIAQQNHBEACQCAAQQFrDgJJAAQLQfAAIQIMrwELIAQgAUEBaiIBRw0AC0GIASEC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BCABQQFqIgFHDQALQfsAIQIMpwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMpgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMpQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMpAELIANBADYCHCADIAE2AhQgA0G8CjYCECADQQc2AgxBACECDKMBC0HPACECDIkBC0HRACECDIgBC0HnACECDIcBCyABIARGBEBB+gAhAgygAQsCQCABLQAAQQlrDgQgAAAgAAsgAUEBaiEBQeYAIQIMhgELIAEgBEYEQEH5ACECDJ8BCwJAIAEtAABBCWsOBB8AAB8AC0EAIQACQCADKAI4IgJFDQAgAigCOCICRQ0AIAMgAhEAACEACyAARQRAQeIBIQIMhgELIABBFUcEQCADQQA2AhwgAyABNgIUIANByQ02AhAgA0EaNgIMQQAhAgyfAQsgA0H4ADYCHCADIAE2AhQgA0HqGjYCECADQRU2AgxBACECDJ4BCyABIARHBEAgA0ENNgIIIAMgATYCBEHkACECDIUBC0H3ACECDJ0BCyABIARGBEBB9gAhAgydAQsCQAJAAkAgAS0AAEHIAGsOCwABCwsLCwsLCwsCCwsgAUEBaiEBQd0AIQIMhQELIAFBAWohAUHgACECDIQBCyABQQFqIQFB4wAhAgyDAQtB9QAhAiABIARGDZsBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbXVAGotAABHDQggAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJwBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIABEAgA0H0ADYCHCADIAE2AhQgAyAANgIMQQAhAgycAQtB4gAhAgyCAQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJwBC0HhACECDIIBCyADQfMANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMmgELIAMtACkiAEEja0ELSQ0JAkAgAEEGSw0AQQEgAHRBygBxRQ0ADAoLQQAhAiADQQA2AhwgAyABNgIUIANB7Qk2AhAgA0EINgIMDJkBC0HyACECIAEgBEYNmAEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBs9UAai0AAEcNBSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMmQELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfEANgIcIAMgATYCFCADIAA2AgxBACECDJkBC0HfACECDH8LQQAhAAJAIAMoAjgiAkUNACACKAI0IgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANB6g02AhAgA0EmNgIMQQAhAgyZAQtB3gAhAgx/CyADQfAANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMlwELIAMtAClBIUYNBiADQQA2AhwgAyABNgIUIANBkQo2AhAgA0EINgIMQQAhAgyWAQtB7wAhAiABIARGDZUBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDVAGotAABHDQIgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJYBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIARQ0CIANB7QA2AhwgAyABNgIUIAMgADYCDEEAIQIMlQELIANBADYCAAsgAygCBCEAIANBADYCBCADIAAgARArIgBFDYABIANB7gA2AhwgAyABNgIUIAMgADYCDEEAIQIMkwELQdwAIQIMeQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJMBC0HbACECDHkLIANB7AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyRAQsgAy0AKSIAQSNJDQAgAEEuRg0AIANBADYCHCADIAE2AhQgA0HJCTYCECADQQg2AgxBACECDJABC0HaACECDHYLIAEgBEYEQEHrACECDI8BCwJAIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMjwELQdkAIQIMdQsgASAERwRAIANBDjYCCCADIAE2AgRB2AAhAgx1C0HqACECDI0BCyABIARGBEBB6QAhAgyNAQsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFB1wAhAgx0CyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeiADQegANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyABIARGBEBB5wAhAgyMAQsCQCABLQAAQS5GBEAgAUEBaiEBDAELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ17IANB5gA2AhwgAyABNgIUIAMgADYCDEEAIQIMjAELQdYAIQIMcgsgASAERgRAQeUAIQIMiwELQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIANgIcIAMgATYCFCADIAA2AgxBACECDI0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNfSADQeMANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeyADQeQANgIcIAMgATYCFCADIAA2AgwMiwELQdQAIQIMcQsgAy0AKUEiRg2GAUHTACECDHALQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALIABFBEBB1QAhAgxwCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQaQNNgIQIANBITYCDEEAIQIMiQELIANB4QA2AhwgAyABNgIUIANB0Bo2AhAgA0EVNgIMQQAhAgyIAQsgASAERgRAQeAAIQIMiAELAkACQAJAAkACQCABLQAAQQprDgQBBAQABAsgAUEBaiEBDAELIAFBAWohASADQS9qLQAAQQFxRQ0BC0HSACECDHALIANBADYCHCADIAE2AhQgA0G2ETYCECADQQk2AgxBACECDIgBCyADQQA2AhwgAyABNgIUIANBthE2AhAgA0EJNgIMQQAhAgyHAQsgASAERgRAQd8AIQIMhwELIAEtAABBCkYEQCABQQFqIQEMCQsgAy0ALkHAAHENCCADQQA2AhwgAyABNgIUIANBthE2AhAgA0ECNgIMQQAhAgyGAQsgASAERgRAQd0AIQIMhgELIAEtAAAiAkENRgRAIAFBAWohAUHQACECDG0LIAEhACACQQlrDgQFAQEFAQsgBCABIgBGBEBB3AAhAgyFAQsgAC0AAEEKRw0AIABBAWoMAgtBACECIANBADYCHCADIAA2AhQgA0HKLTYCECADQQc2AgwMgwELIAEgBEYEQEHbACECDIMBCwJAIAEtAABBCWsOBAMAAAMACyABQQFqCyEBQc4AIQIMaAsgASAERgRAQdoAIQIMgQELIAEtAABBCWsOBAABAQABC0EAIQIgA0EANgIcIANBmhI2AhAgA0EHNgIMIAMgAUEBajYCFAx/CyADQYASOwEqQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB2QA2AhwgAyABNgIUIANB6ho2AhAgA0EVNgIMQQAhAgx+C0HNACECDGQLIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDHwLIAEgBEYEQEHZACECDHwLIAEtAABBIEcNPSABQQFqIQEgAy0ALkEBcQ09IANBADYCHCADIAE2AhQgA0HCHDYCECADQR42AgxBACECDHsLIAEgBEYEQEHYACECDHsLAkACQAJAAkACQCABLQAAIgBBCmsOBAIDAwABCyABQQFqIQFBLCECDGULIABBOkcNASADQQA2AhwgAyABNgIUIANB5xE2AhAgA0EKNgIMQQAhAgx9CyABQQFqIQEgA0Evai0AAEEBcUUNcyADLQAyQYABcUUEQCADQTJqIQIgAxA1QQAhAAJAIAMoAjgiBkUNACAGKAIoIgZFDQAgAyAGEQAAIQALAkACQCAADhZNTEsBAQEBAQEBAQEBAQEBAQEBAQEAAQsgA0EpNgIcIAMgATYCFCADQawZNgIQIANBFTYCDEEAIQIMfgsg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c3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==`,`base64`)})})),Ea=n(((e,n)=>{let{Buffer:r}=t(`node:buffer`),i;Object.defineProperty(n,"exports",{get:()=>i||=r.from(`AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgLhocCAwd/A34BeyABIAJqIQQCQCAAIgMoAgwiAA0AIAMoAgQEQCADIAE2AgQLIwBBEGsiCSQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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DAgLQeMBDAcLQdcBDAYLQdgBDAULQdkBDAQLQdoBDAMLQdsBDAILQd0BDAELQdwBCyECA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAn8CQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAwJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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A0EXNgIcIAMgADYCDCADIAFBAWo2AhQM+AILIABBFUYNI0EAIQIgA0EANgIcIAMgATYCFCADQdYMNgIQIANBIzYCDAz3AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQwdCyADQRk2AhwgAyAANgIMIAMgAUEBajYCFAz2AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQzvAgsgA0EaNgIcIAMgADYCDCADIAFBAWo2AhQM9QILIABBFUYNH0EAIQIgA0EANgIcIAMgATYCFCADQdAPNgIQIANBIjYCDAz0AgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDBsLIANBHDYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgzzAgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDOsCCyADQR02AhwgAyAANgIMIAMgAUEBajYCFEEAIQIM8gILIABBO0cNASABQQFqIQELQSYhAgzXAgtBACECIANBADYCHCADIAE2AhQgA0GfFTYCECADQQw2AgwM7wILIAEgBEcEQANAIAEtAABBIEcNhAIgBCABQQFqIgFHDQALQSwhAgzvAgtBLCECDO4CCyABIARGBEBBNCECDO4CCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtBNCECDO8CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUNnwIgA0EyNgIcIAMgATYCFCADIAA2AgxBACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUEQCABQQFqIQEMnwILIANBMjYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgztAgsgASAERwRAAkADQCABLQAAQTBrIgBB/wFxQQpPBEBBOiECDNcCCyADKQMgIgtCmbPmzJmz5swZVg0BIAMgC0IKfiIKNwMgIAogAK1C/wGDIgtCf4VWDQEgAyAKIAt8NwMgIAQgAUEBaiIBRw0AC0HAACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABQQFqIgEQMSIADRcM4gILQcAAIQIM7AILIAEgBEYEQEHJACECDOwCCwJAA0ACQCABLQAAQQlrDhgAAqICogKpAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAgCiAgsgBCABQQFqIgFHDQALQckAIQIM7AILIAFBAWohASADQS9qLQAAQQFxDaUCIANBADYCHCADIAE2AhQgA0GXEDYCECADQQo2AgxBACECDOsCCyABIARHBEADQCABLQAAQSBHDRUgBCABQQFqIgFHDQALQfgAIQIM6wILQfgAIQIM6gILIANBAjoAKAw4C0EAIQIgA0EANgIcIANBvws2AhAgA0ECNgIMIAMgAUEBajYCFAzoAgtBACECDM4CC0ENIQIMzQILQRMhAgzMAgtBFSECDMsCC0EWIQIMygILQRghAgzJAgtBGSECDMgCC0EaIQIMxwILQRshAgzGAgtBHCECDMUCC0EdIQIMxAILQR4hAgzDAgtBHyECDMICC0EgIQIMwQILQSIhAgzAAgtBIyECDL8CC0ElIQIMvgILQeUAIQIMvQILIANBPTYCHCADIAE2AhQgAyAANgIMQQAhAgzVAgsgA0EbNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIM1AILIANBIDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNMCCyADQRM2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzSAgsgA0ELNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0QILIANBEDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNACCyADQSA2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzPAgsgA0ELNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzgILIANBDDYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM0CC0EAIQIgA0EANgIcIAMgATYCFCADQd0ONgIQIANBEjYCDAzMAgsCQANAAkAgAS0AAEEKaw4EAAICAAILIAQgAUEBaiIBRw0AC0H9ASECDMwCCwJAAkAgAy0ANkEBRw0AQQAhAAJAIAMoAjgiAkUNACACKAJgIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB/AE2AhwgAyABNgIUIANB3Bk2AhAgA0EVNgIMQQAhAgzNAgtB3AEhAgyzAgsgA0EANgIcIAMgATYCFCADQfkLNgIQIANBHzYCDEEAIQIMywILAkACQCADLQAoQQFrDgIEAQALQdsBIQIMsgILQdQBIQIMsQILIANBAjoAMUEAIQACQCADKAI4IgJFDQAgAigCACICRQ0AIAMgAhEAACEACyAARQRAQd0BIQIMsQILIABBFUcEQCADQQA2AhwgAyABNgIUIANBtAw2AhAgA0EQNgIMQQAhAgzKAgsgA0H7ATYCHCADIAE2AhQgA0GBGjYCECADQRU2AgxBACECDMkCCyABIARGBEBB+gEhAgzJAgsgAS0AAEHIAEYNASADQQE6ACgLQcABIQIMrgILQdoBIQIMrQILIAEgBEcEQCADQQw2AgggAyABNgIEQdkBIQIMrQILQfkBIQIMxQILIAEgBEYEQEH4ASECDMUCCyABLQAAQcgARw0EIAFBAWohAUHYASECDKsCCyABIARGBEBB9wEhAgzEAgsCQAJAIAEtAABBxQBrDhAABQUFBQUFBQUFBQUFBQUBBQsgAUEBaiEBQdYBIQIMqwILIAFBAWohAUHXASECDKoCC0H2ASECIAEgBEYNwgIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABButUAai0AAEcNAyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMwwILIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgBFBEBB4wEhAgyqAgsgA0H1ATYCHCADIAE2AhQgAyAANgIMQQAhAgzCAgtB9AEhAiABIARGDcECIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQbjVAGotAABHDQIgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMICCyADQYEEOwEoIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgANAwwCCyADQQA2AgALQQAhAiADQQA2AhwgAyABNgIUIANB5R82AhAgA0EINgIMDL8CC0HVASECDKUCCyADQfMBNgIcIAMgATYCFCADIAA2AgxBACECDL0CC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ1uIABBFUcEQCADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgy9AgsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDLwCCyABIARHBEAgA0ENNgIIIAMgATYCBEHTASECDKMCC0HyASECDLsCCyABIARGBEBB8QEhAgy7AgsCQAJAAkAgAS0AAEHIAGsOCwABCAgICAgICAgCCAsgAUEBaiEBQdABIQIMowILIAFBAWohAUHRASECDKICCyABQQFqIQFB0gEhAgyhAgtB8AEhAiABIARGDbkCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEG11QBqLQAARw0EIABBAkYNAyAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy5AgtB7wEhAiABIARGDbgCIAMoAgAiACAEIAFraiEGIAEgAGtBAWohBQNAIAEtAAAgAEGz1QBqLQAARw0DIABBAUYNAiAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy4AgtB7gEhAiABIARGDbcCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEGw1QBqLQAARw0CIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy3AgsgAygCBCEAIANCADcDACADIAAgBUEBaiIBECsiAEUNAiADQewBNgIcIAMgATYCFCADIAA2AgxBACECDLYCCyADQQA2AgALIAMoAgQhACADQQA2AgQgAyAAIAEQKyIARQ2cAiADQe0BNgIcIAMgATYCFCADIAA2AgxBACECDLQCC0HPASECDJoCC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMtAILQc4BIQIMmgILIANB6wE2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyyAgsgASAERgRAQesBIQIMsgILIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMsQILQc0BIQIMlwILIAEgBEcEQCADQQ42AgggAyABNgIEQcwBIQIMlwILQeoBIQIMrwILIAEgBEYEQEHpASECDK8CCyABLQAAQTBrIgBB/wFxQQpJBEAgAyAAOgAqIAFBAWohAUHLASECDJYCCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNlwIgA0HoATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgASAERgRAQecBIQIMrgILAkAgAS0AAEEuRgRAIAFBAWohAQwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmAIgA0HmATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgtBygEhAgyUAgsgASAERgRAQeUBIQIMrQILQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIBNgIcIAMgATYCFCADIAA2AgxBACECDK8CCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmgIgA0HjATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5AE2AhwgAyABNgIUIAMgADYCDAytAgtByQEhAgyTAgtBACEAAkAgAygCOCICRQ0AIAIoAkQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GkDTYCECADQSE2AgxBACECDK0CC0HIASECDJMCCyADQeEBNgIcIAMgATYCFCADQdAaNgIQIANBFTYCDEEAIQIMqwILIAEgBEYEQEHhASECDKsCCwJAIAEtAABBIEYEQCADQQA7ATQgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GZETYCECADQQk2AgxBACECDKsCC0HHASECDJECCyABIARGBEBB4AEhAgyqAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKsCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyqAgtBxgEhAgyQAgsgASAERgRAQd8BIQIMqQILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyqAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqQILQcUBIQIMjwILIAEgBEYEQEHeASECDKgCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqQILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKgCC0HEASECDI4CCyABIARGBEBB3QEhAgynAgsCQAJAAkACQCABLQAAQQprDhcCAwMAAwMDAwMDAwMDAwMDAwMDAwMDAQMLIAFBAWoMBQsgAUEBaiEBQcMBIQIMjwILIAFBAWohASADQS9qLQAAQQFxDQggA0EANgIcIAMgATYCFCADQY0LNgIQIANBDTYCDEEAIQIMpwILIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKYCCyABIARHBEAgA0EPNgIIIAMgATYCBEEBIQIMjQILQdwBIQIMpQILAkACQANAAkAgAS0AAEEKaw4EAgAAAwALIAQgAUEBaiIBRw0AC0HbASECDKYCCyADKAIEIQAgA0EANgIEIAMgACABEC0iAEUEQCABQQFqIQEMBAsgA0HaATYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgylAgsgAygCBCEAIANBADYCBCADIAAgARAtIgANASABQQFqCyEBQcEBIQIMigILIANB2QE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMogILQcIBIQIMiAILIANBL2otAABBAXENASADQQA2AhwgAyABNgIUIANB5Bw2AhAgA0EZNgIMQQAhAgygAgsgASAERgRAQdkB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CyADIAU2AgAMkAILIANBADYCACAGQQFqIQFBGgw8C0HKASECIAEgBEYNjgIgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBjdUAai0AAEcNOyAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMjwILIANBADYCACAGQQFqIQFBIQw7CyABIARGBEBByQEhAgyOAgsCQAJAIAEtAABBwQBrDhQAPT09PT09PT09PT09PT09PT09AT0LIAFBAWohAUGtASECDPUBCyABQQFqIQFBsAEhAgz0AQsgASAERgRAQcgBIQIMjQILAkACQCABLQAAQdUAaw4LADw8PDw8PDw8PAE8CyABQQFqIQFBrgEhAgz0AQsgAUEBaiEBQa8BIQIM8wELQccBIQIgASAERg2LAiADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw04IABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyMAgsgA0EANgIAIAZBAWohAUEqDDgLIAEgBEYEQEHGASECDIsCCyABLQAAQdAARw04IAFBAWohAUElDDcLQcUBIQIgASAERg2JAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGB1QBqLQAARw02IABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyKAgsgA0EANgIAIAZBAWohAUEODDYLIAEgBEYEQEHEASECDIkCCyABLQAAQcUARw02IAFBAWohAUGrASECDO8BCyABIARGBEBBwwEhAgyIAgsCQAJAAkACQCABLQAAQcIAaw4PAAECOTk5OTk5OTk5OTkDOQsgAUEBaiEBQacBIQIM8QELIAFBAWohAUGoASECDPABCyABQQFqIQFBqQEhAgzvAQsgAUEBaiEBQaoBIQIM7gELQcIBIQIgASAERg2GAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEH+1ABqLQAARw0zIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyHAgsgA0EANgIAIAZBAWohAUEUDDMLQcEBIQIgASAERg2FAiADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANA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BTYCAAzsAQsgA0EANgIAIAZBAWohAUEXDBgLQaYBIQIgASAERg3qASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHB1ABqLQAARw0XIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzrAQsgA0EANgIAIAZBAWohAUEYDBcLIAEgBEYEQEGlASECDOoBCwJAAkAgAS0AAEHJAGsOBwAZGRkZGQEZCyABQQFqIQFBiwEhAgzRAQsgAUEBaiEBQYwBIQIM0AELQaQBIQIgASAERg3oASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGm1QBqLQAARw0VIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzpAQsgA0EANgIAIAZBAWohAUEJDBULQaMBIQIgASAERg3nASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGk1QBqLQAARw0UIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzoAQsgA0EANgIAIAZBAWohAUEfDBQLQaIBIQIgASAERg3mASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEG+1ABqLQAARw0TIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAznAQsgA0EANgIAIAZBAWohAUECDBMLQaEBIQIgASAERg3lASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYDQCABLQAAIABBvNQAai0AAEcNESAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5QELIAEgBEYEQEGgASECDOUBC0EBIAEtAABB3wBHDREaIAFBAWohAUGHASECDMsBCyADQQA2AgAgBkEBaiEBQYgBIQIMygELQZ8BIQIgASAERg3iASADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw0PIABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzjAQsgA0EANgIAIAZBAWohAUEpDA8LQZ4BIQIgASAERg3hASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEG41ABqLQAARw0OIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAziAQsgA0EANgIAIAZBAWohAUEtDA4LIAEgBEYEQEGdASECDOEBCyABLQAAQcUARw0OIAFBAWohAUGEASECDMcBCyABIARGBEBBnAEhAgzgAQsCQAJAIAEtAABBzABrDggADw8PDw8PAQ8LIAFBAWohAUGCASECDMcBCyABQQFqIQFBgwEhAgzGAQtBmwEhAiABIARGDd4BIAMoAgAiACAEIAFraiEFIAEgAGtBBGohBgJAA0AgAS0AACAAQbPUAGotAABHDQsgAEEERg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN8BCyADQQA2AgAgBkEBaiEBQSMMCwtBmgEhAiABIARGDd0BIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDUAGotAABHDQogAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN4BCyADQQA2AgAgBkEBaiEBQQAMCgsgASAERgRAQZkBIQIM3QELAkACQCABLQAAQcgAaw4IAAwMDAwMDAEMCyABQQFqIQFB/QAhAgzEAQsgAUEBaiEBQYABIQIMwwELIAEgBEYEQEGYASECDNwBCwJAAkAgAS0AAEHOAGsOAwALAQsLIAFBAWohAUH+ACECDMMBCyABQQFqIQFB/wAhAgzCAQsgASAERgRAQZcBIQIM2wELIAEtAABB2QBHDQggAUEBaiEBQQgMBwtBlgEhAiABIARGDdkBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQazUAGotAABHDQYgAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNoBCyADQQA2AgAgBkEBaiEBQQUMBgtBlQEhAiABIARGDdgBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQabUAGotAABHDQUgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNkBCyADQQA2AgAgBkEBaiEBQRYMBQtBlAEhAiABIARGDdcBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDQQgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNgBCyADQQA2AgAgBkEBaiEBQRAMBAsgASAERgRAQZMBIQIM1wELAkACQCABLQAAQcMAaw4MAAYGBgYGBgYGBgYBBgsgAUEBaiEBQfkAIQIMvgELIAFBAWohAUH6ACECDL0BC0GSASECIAEgBEYN1QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBoNQAai0AAEcNAiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM1gELIANBADYCACAGQQFqIQFBJAwCCyADQQA2AgAMAgsgASAERgRAQZEBIQIM1AELIAEtAABBzABHDQEgAUEBaiEBQRMLOgApIAMoAgQhACADQQA2AgQgAyAAIAEQLiIADQIMAQtBACECIANBADYCHCADIAE2AhQgA0H+HzYCECADQQY2AgwM0QELQfgAIQIMtwELIANBkAE2AhwgAyABNgIUIAMgADYCDEEAIQIMzwELQQAhAAJAIAMoAjgiAkUNACACKAJAIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GCDzYCECADQSA2AgxBACECDM4BC0H3ACECDLQBCyADQY8BNgIcIAMgATYCFCADQewbNgIQIANBFTYCDEEAIQIMzAELIAEgBEYEQEGPASECDMwBCwJAIAEtAABBIEYEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQZsfNgIQIANBBjYCDEEAIQIMzAELQQIhAgyyAQsDQCABLQAAQSBHDQIgBCABQQFqIgFHDQALQY4BIQIMygELIAEgBEYEQEGNASECDMoBCwJAIAEtAABBCWsOBEoAAEoAC0H1ACECDLABCyADLQApQQVGBEBB9gAhAgywAQtB9AAhAgyvAQsgASAERgRAQYwBIQIMyAELIANBEDYCCCADIAE2AgQMCgsgASAERgRAQYsBIQIMxwELAkAgAS0AAEEJaw4ERwAARwALQfMAIQIMrQELIAEgBEcEQCADQRA2AgggAyABNgIEQfEAIQIMrQELQYoBIQIMxQELAkAgASAERwRAA0AgAS0AAEGg0ABqLQAAIgBBA0cEQAJAIABBAWsOAkkABAtB8AAhAgyvAQsgBCABQQFqIgFHDQALQYgBIQIMxgELQYgBIQIMxQELIANBADYCHCADIAE2AhQgA0HbIDYCECADQQc2AgxBACECDMQBCyABIARGBEBBiQEhAgzEAQsCQAJAAkAgAS0AAEGg0gBqLQAAQQFrDgNGAgABC0HyACECDKwBCyADQQA2AhwgAyABNgIUIANBtBI2AhAgA0EHNgIMQQAhAgzEAQtB6gAhAgyqAQsgASAERwRAIAFBAWohAUHvACECDKoBC0GHASECDMIBCyAEIAEiAEYEQEGGASECDMIBCyAALQAAIgFBL0YEQCAAQQFqIQFB7gAhAgypAQsgAUEJayICQRdLDQEgACEBQQEgAnRBm4CABHENQQwBCyAEIAEiAEYEQEGFASECDMEBCyAALQAAQS9HDQAgAEEBaiEBDAMLQQAhAiADQQA2AhwgAyAANgIUIANB2yA2AhAgA0EHNgIMDL8BCwJAAkACQAJAAkADQCABLQAAQaDOAGotAAAiAEEFRwRAAkACQCAAQQFrDghHBQYHCAAEAQgLQesAIQIMrQELIAFBAWohAUHtACECDKwBCyAEIAFBAWoiAUcNAAtBhAEhAgzDAQsgAUEBagwUCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDMEBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDMABCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDL8BCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy+AQsgASAERgRAQYMBIQIMvgELAkAgAS0AAEGgzgBqLQAAQQFrDgg+BAUGAAgCAwcLIAFBAWohAQtBAyECDKMBCyABQQFqDA0LQQAhAiADQQA2AhwgA0HREjYCECADQQc2AgwgAyABQQFqNgIUDLoBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDLkBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDLgBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDLcBCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy2AQtB7AAhAgycAQsgASAERgRAQYIBIQIMtQELIAFBAWoMAgsgASAERgRAQYEBIQIMtAELIAFBAWoMAQsgASAERg0BIAFBAWoLIQFBBCECDJgBC0GAASECDLABCwNAIAEtAABBoMwAai0AACIAQQJHBEAgAEEBRwRAQekAIQIMmQELDDELIAQgAUEBaiIBRw0AC0H/ACECDK8BCyABIARGBEBB/gAhAgyvAQsCQCABLQAAQQlrDjcvAwYvBAYGBgYGBgYGBgYGBgYGBgYGBgUGBgIGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYABgsgAUEBagshAUEFIQIMlAELIAFBAWoMBgsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgyrAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgyqAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgypAQsgA0EANgIcIAMgATYCFCADQY0UNgIQIANBBzYCDEEAIQIMqAELAkACQAJAAkADQCABLQAAQaDKAGotAAAiAEEFRwRAAkAgAEEBaw4GLgMEBQYABgtB6AAhAgyUAQsgBCABQQFqIgFHDQALQf0AIQIMqwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMqgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMqQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMqAELIANBADYCHCADIAE2AhQgA0HkCDYCECADQQc2AgxBACECDKcBCyABIARGDQEgAUEBagshAUEGIQIMjAELQfwAIQIMpAELAkACQAJAAkADQCABLQAAQaDIAGotAAAiAEEFRwRAIABBAWsOBCkCAwQFCyAEIAFBAWoiAUcNAAtB+wAhAgynAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgymAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgylAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgykAQsgA0EANgIcIAMgATYCFCADQbwKNgIQIANBBzYCDEEAIQIMowELQc8AIQIMiQELQdEAIQIMiAELQecAIQIMhwELIAEgBEYEQEH6ACECDKABCwJAIAEtAABBCWsOBCAAACAACyABQQFqIQFB5gAhAgyGAQsgASAERgRAQfkAIQIMnwELAkAgAS0AAEEJaw4EHwAAHwALQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFBEBB4gEhAgyGAQsgAEEVRwRAIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDJ8BCyADQfgANgIcIAMgATYCFCADQeoaNgIQIANBFTYCDEEAIQIMngELIAEgBEcEQCADQQ02AgggAyABNgIEQeQAIQIMhQELQfcAIQIMnQELIAEgBEYEQEH2ACECDJ0BCwJAAkACQCABLQAAQcgAaw4LAAELCwsLCwsLCwILCyABQQFqIQFB3QAhAgyFAQsgAUEBaiEBQeAAIQIMhAELIAFBAWohAUHjACECDIMBC0H1ACECIAEgBEYNmwEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBtdUAai0AAEcNCCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMnAELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfQANgIcIAMgATYCFCADIAA2AgxBACECDJwBC0HiACECDIIBC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMnAELQeEAIQIMggELIANB8wA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyaAQsgAy0AKSIAQSNrQQtJDQkCQCAAQQZLDQBBASAAdEHKAHFFDQAMCgtBACECIANBADYCHCADIAE2AhQgA0HtCTYCECADQQg2AgwMmQELQfIAIQIgASAERg2YASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGz1QBqLQAARw0FIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyZAQsgAygCBCEAIANCADcDACADIAAgBkEBaiIBECsiAARAIANB8QA2AhwgAyABNgIUIAMgADYCDEEAIQIMmQELQd8AIQIMfwtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJkBC0HeACECDH8LIANB8AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyXAQsgAy0AKUEhRg0GIANBADYCHCADIAE2AhQgA0GRCjYCECADQQg2AgxBACECDJYBC0HvACECIAEgBEYNlQEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMlgELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgBFDQIgA0HtADYCHCADIAE2AhQgAyAANgIMQQAhAgyVAQsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNgAEgA0HuADYCHCADIAE2AhQgAyAANgIMQQAhAgyTAQtB3AAhAgx5C0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMkwELQdsAIQIMeQsgA0HsADYCHCADIAE2AhQgA0GAGzYCECADQRU2AgxBACECDJEBCyADLQApIgBBI0kNACAAQS5GDQAgA0EANgIcIAMgATYCFCADQckJNgIQIANBCDYCDEEAIQIMkAELQdoAIQIMdgsgASAERgRAQesAIQIMjwELAkAgAS0AAEEvRgRAIAFBAWohAQwBCyADQQA2AhwgAyABNgIUIANBsjg2AhAgA0EINgIMQQAhAgyPAQtB2QAhAgx1CyABIARHBEAgA0EONgIIIAMgATYCBEHYACECDHULQeoAIQIMjQELIAEgBEYEQEHpACECDI0BCyABLQAAQTBrIgBB/wFxQQpJBEAgAyAAOgAqIAFBAWohAUHXACECDHQLIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ16IANB6AA2AhwgAyABNgIUIAMgADYCDEEAIQIMjAELIAEgBEYEQEHnACECDIwBCwJAIAEtAABBLkYEQCABQQFqIQEMAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDXsgA0HmADYCHCADIAE2AhQgAyAANgIMQQAhAgyMAQtB1gAhAgxyCyABIARGBEBB5QAhAgyLAQtBACEAQQEhBUEBIQdBACECAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkAgAS0AAEEwaw4KCgkAAQIDBAUGCAsLQQIMBgtBAwwFC0EEDAQLQQUMAwtBBgwCC0EHDAELQQgLIQJBACEFQQAhBwwCC0EJIQJBASEAQQAhBUEAIQcMAQtBACEFQQEhAgsgAyACOgArIAFBAWohAQJAAkAgAy0ALkEQcQ0AAkACQAJAIAMtACoOAwEAAgQLIAdFDQMMAgsgAA0BDAILIAVFDQELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ0CIANB4gA2AhwgAyABNgIUIAMgADYCDEEAIQIMjQELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ19IANB4wA2AhwgAyABNgIUIAMgADYCDEEAIQIMjAELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ17IANB5AA2AhwgAyABNgIUIAMgADYCDAyLAQtB1AAhAgxxCyADLQApQSJGDYYBQdMAIQIMcAtBACEAAkAgAygCOCICRQ0AIAIoAkQiAkUNACADIAIRAAAhAAsgAEUEQEHVACECDHALIABBFUcEQCADQQA2AhwgAyABNgIUIANBpA02AhAgA0EhNgIMQQAhAgyJAQsgA0HhADYCHCADIAE2AhQgA0HQGjYCECADQRU2AgxBACECDIgBCyABIARGBEBB4AAhAgyIAQsCQAJAAkACQAJAIAEtAABBCmsOBAEEBAAECyABQQFqIQEMAQsgAUEBaiEBIANBL2otAABBAXFFDQELQdIAIQIMcAsgA0EANgIcIAMgATYCFCADQbYRNgIQIANBCTYCDEEAIQIMiAELIANBADYCHCADIAE2AhQgA0G2ETYCECADQQk2AgxBACECDIcBCyABIARGBEBB3wAhAgyHAQsgAS0AAEEKRgRAIAFBAWohAQwJCyADLQAuQcAAcQ0IIANBADYCHCADIAE2AhQgA0G2ETYCECADQQI2AgxBACECDIYBCyABIARGBEBB3QAhAgyGAQsgAS0AACICQQ1GBEAgAUEBaiEBQdAAIQIMbQsgASEAIAJBCWsOBAUBAQUBCyAEIAEiAEYEQEHcACECDIUBCyAALQAAQQpHDQAgAEEBagwCC0EAIQIgA0EANgIcIAMgADYCFCADQcotNgIQIANBBzYCDAyDAQsgASAERgRAQdsAIQIMgwELAkAgAS0AAEEJaw4EAwAAAwALIAFBAWoLIQFBzgAhAgxoCyABIARGBEBB2gAhAgyBAQsgAS0AAEEJaw4EAAEBAAELQQAhAiADQQA2AhwgA0GaEjYCECADQQc2AgwgAyABQQFqNgIUDH8LIANBgBI7ASpBACEAAkAgAygCOCICRQ0AIAIoAjgiAkUNACADIAIRAAAhAAsgAEUNACAAQRVHDQEgA0HZADYCHCADIAE2AhQgA0HqGjYCECADQRU2AgxBACECDH4LQc0AIQIMZAsgA0EANgIcIAMgATYCFCADQckNNgIQIANBGjYCDEEAIQIMfAsgASAERgRAQdkAIQIMfAsgAS0AAEEgRw09IAFBAWohASADLQAuQQFxDT0gA0EANgIcIAMgATYCFCADQcIcNgIQIANBHjYCDEEAIQIMewsgASAERgRAQdgAIQIMewsCQAJAAkACQAJAIAEtAAAiAEEKaw4EAgMDAAELIAFBAWohAUEsIQIMZQsgAEE6Rw0BIANBADYCHCADIAE2AhQgA0HnETYCECADQQo2AgxBACECDH0LIAFBAWohASADQS9qLQAAQQFxRQ1zIAMtADJBgAFxRQRAIANBMmohAiADEDVBACEAAkAgAygCOCIGRQ0AIAYoAigiBkUNACADIAYRAAAhAAsCQAJAIAAOFk1MSwEBAQEBAQEBAQEBAQEBAQEBAQABCyADQSk2AhwgAyABNgIUIANBrBk2AhAgA0EVNgIMQQAhAgx+CyADQQA2AhwgAyABNgIUIANB5Qs2AhAgA0ERNgIMQQAhAgx9C0EAIQACQCADKAI4IgJFDQAgAigCXCICRQ0AIAMgAhEAACEACyAARQ1ZIABBFUcNASADQQU2AhwgAyABNgIUIANBmxs2AhAgA0EVNgIMQQAhAgx8C0HLACECDGILQQAhAiADQQA2AhwgAyABNgIUIANBkA42AhAgA0EUNgIMDHoLIAMgAy8BMkGAAXI7ATIMOwsgASAERwRAIANBETYCCCADIAE2AgRBygAhAgxgC0HXACECDHgLIAEgBEYEQEHWACECDHgLAkACQAJAAkAgAS0AACIAQSByIAAgAEHBAGtB/wFxQRpJG0H/AXFB4wBrDhMAQEBAQEBAQEBAQEBAAUBAQAIDQAsgAUEBaiEBQcYAIQIMYQsgAUEBaiEBQccAIQIMYAsgAUEBaiEBQcgAIQIMXwsgAUEBaiEBQckAIQIMXgtB1QAhAiAEIAEiAEYNdiAEIAFrIAMoAgAiAWohBiAAIAFrQQVqIQcDQCABQZDIAGotAAAgAC0AACIFQSByIAUgBUHBAGtB/wFxQRpJG0H/AXFHDQhBBCABQQVGDQoaIAFBAWohASAEIABBAWoiAEcNAAsgAyAGNgIADHYLQdQAIQIgBCABIgBGDXUgBCABayADKAIAIgFqIQYgACABa0EPaiEHA0AgAUGAyABqLQAAIAAtAAAiBUEgciAFIAVBwQBrQf8BcUEaSRtB/wFxRw0HQQMgAUEPRg0JGiABQQFqIQEgBCAAQQFqIgBHDQALIAMgBjYCAAx1C0HTACECIAQgASIARg10IAQgAWsgAygCACIBaiEGIAAgAWtBDmohBwNAIAFB4scAai0AACAALQAAIgVBIHIgBSAFQcEAa0H/AXFBGkkbQf8BcUcNBiABQQ5GDQcgAUEBaiEBIAQgAEEBaiIARw0ACyADIAY2AgAMdAtB0gAhAiAEIAEiAEYNcyAEIAFrIAMoAgAiAWohBSAAIAFrQQFqIQYDQCABQeDHAGotAAAgAC0AACIHQSByIAcgB0HBAGtB/wFxQRpJG0H/AXFHDQUgAUEBRg0CIAFBAWohASAEIABBAWoiAEcNAAsgAyAFNgIADHMLIAEgBEYEQEHRACECDHMLAkACQCABLQAAIgBBIHIgACAAQcEAa0H/AXFBGkkbQf8BcUHuAGsOBwA5OTk5OQE5CyABQQFqIQFBwwAhAgxaCyABQQFqIQFBxAAhAgxZCyADQQA2AgAgBkEBaiEBQcUAIQIMWAtB0AAhAiAEIAEiAEYNcCAEIAFrIAMoAgAiAWohBiAAIAFrQQlqIQcDQCABQdbHAGotAAAgAC0AACIFQSByIAUgBUHBAGtB/wFxQRpJG0H/AXFHDQJBAiABQQlGDQQaIAFBAWohASAEIABBAWoiAEcNAAsgAyAGNgIADHALQc8AIQIgBCABIgBGDW8gBCABayADKAIAIgFqIQYgACABa0EFaiEHA0AgAUHQxwBqLQAAIAAtAAAiBUEgciAFIAVBwQBrQf8BcUEaSRtB/wFxRw0BIAFBBUYNAiABQQFqIQEgBCAAQQFqIgBHDQALIAMgBjYCAAxvCyAAIQEgA0EANgIADDMLQQELOgAsIANBADYCACAHQQFqIQELQS0hAgxSCwJAA0AgAS0AAEHQxQBqLQAAQQFHDQEgBCABQQFqIgFHDQALQc0AIQIMawtBwgAhAgxRCyABIARGBEBBzAAhAgxqCyABLQAAQTpGBEAgAygCBCEAIANBADYCBCADIAAgARAwIgBFDTMgA0HLADYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgxqCyADQQA2AhwgAyABNgIUIANB5xE2AhAgA0EKNgIMQQAhAgxpCwJAAkAgAy0ALEECaw4CAAEnCyADQTNqLQAAQQJxRQ0mIAMtAC5BAnENJiADQQA2AhwgAyABNgIUIANBphQ2AhAgA0ELNgIMQQAhAgxpCyADLQAyQSBxRQ0lIAMtAC5BAnENJSADQQA2AhwgAyABNgIUIANBvRM2AhAgA0EPNgIMQQAhAgxoC0EAIQACQCADKAI4IgJFDQAgAigCSCICRQ0AIAMgAhEAACEACyAARQRAQcEAIQIMTwsgAEEVRwRAIANBADYCHCADIAE2AhQgA0GmDzYCECADQRw2AgxBACECDGgLIANBygA2AhwgAyABNgIUIANBhRw2AhAgA0EVNgIMQQAhAgxnCyABIARHBEAgASECA0AgBCACIgFrQRBOBEAgAUEQaiEC/Qz/////////////////////IAH9AAAAIg1BB/1sIA39DODg4ODg4ODg4ODg4ODg4OD9bv0MX19fX19fX19fX19fX19fX/0mIA39DAkJCQkJCQkJCQkJCQkJCQn9I/1Q/VL9ZEF/c2giAEEQRg0BIAAgAWohAQwYCyABIARGBEBBxAAhAgxpCyABLQAAQcDBAGotAABBAUcNFyAEIAFBAWoiAkcNAAtBxAAhAgxnC0HEACECDGYLIAEgBEcEQANAAkAgAS0AACIAQSByIAAgAEHBAGtB/wFxQRpJG0H/AXEiAEEJRg0AIABBIEYNAAJAAkACQAJAIABB4wBrDhMAAwMDAwMDAwEDAwMDAwMDAwMCAwsgAUEBaiEBQTYhAgxSCyABQQFqIQFBNyECDFELIAFBAWohAUE4IQIMUAsMFQsgBCABQQFqIgFHDQALQTwhAgxmC0E8IQIMZQsgASAERgRAQcgAIQIMZQsgA0ESNgIIIAMgATYCBAJAAkACQAJAAkAgAy0ALEEBaw4EFAABAgkLIAMtADJBIHENA0HgASECDE8LAkAgAy8BMiIAQQhxRQ0AIAMtAChBAUcNACADLQAuQQhxRQ0CCyADIABB9/sDcUGABHI7ATIMCwsgAyADLwEyQRByOwEyDAQLIANBADYCBCADIAEgARAxIgAEQCADQcEANgIcIAMgADYCDCADIAFBAWo2AhRBACECDGYLIAFBAWohAQxYCyADQQA2AhwgAyABNgIUIANB9BM2AhAgA0EENgIMQQAhAgxkC0HHACECIAEgBEYNYyADKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIABBwMUAai0AACABLQAAQSByRw0BIABBBkYNSiAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAxkCyADQQA2AgAMBQsCQCABIARHBEADQCABLQAAQcDDAGotAAAiAEEBRwRAIABBAkcNAyABQQFqIQEMBQsgBCABQQFqIgFHDQALQcUAIQIMZAtBxQAhAgxjCwsgA0EAOgAsDAELQQshAgxHC0E/IQIMRgsCQAJAA0AgAS0AACIAQSBHBEACQCAAQQprDgQDBQUDAAsgAEEsRg0DDAQLIAQgAUEBaiIBRw0AC0HGACECDGALIANBCDoALAwOCyADLQAoQQFHDQIgAy0ALkEIcQ0CIAMoAgQhACADQQA2AgQgAyAAIAEQMSIABEAgA0HCADYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgxfCyABQQFqIQEMUAtBOyECDEQLAkADQCABLQAAIgBBIEcgAEEJR3ENASAEIAFBAWoiAUcNAAtBwwAhAgxdCwtBPCECDEILAkACQCABIARHBEADQCABLQAAIgBBIEcEQCAAQQprDgQDBAQDBAsgBCABQQFqIgFHDQALQT8hAgxdC0E/IQIMXAsgAyADLwEyQSByOwEyDAoLIAMoAgQhACADQQA2AgQgAyAAIAEQMSIARQ1OIANBPjYCHCADIAE2AhQgAyAANgIMQQAhAgxaCwJAIAEgBEcEQANAIAEtAABBwMMAai0AACIAQQFHBEAgAEECRg0DDAwLIAQgAUEBaiIBRw0AC0E3IQIMWwtBNyECDFoLIAFBAWohAQwEC0E7IQIgBCABIgBGDVggBCABayADKAIAIgFqIQYgACABa0EFaiEHAkADQCABQZDIAGotAAAgAC0AACIFQSByIAUgBUHBAGtB/wFxQRpJG0H/AXFHDQEgAUEFRgRAQQchAQw/CyABQQFqIQEgBCAAQQFqIgBHDQALIAMgBjYCAAxZCyADQQA2AgAgACEBDAULQTohAiAEIAEiAEYNVyAEIAFrIAMoAgAiAWohBiAAIAFrQQhqIQcCQANAIAFBtMEAai0AACAALQAAIgVBIHIgBSAFQcEAa0H/AXFBGkkbQf8BcUcNASABQQhGBEBBBSEBDD4LIAFBAWohASAEIABBAWoiAEcNAAsgAyAGNgIADFgLIANBADYCACAAIQEMBAtBOSECIAQgASIARg1WIAQgAWsgAygCACIBaiEGIAAgAWtBA2ohBwJAA0AgAUGwwQBqLQAAIAAtAAAiBUEgciAFIAVBwQBrQf8BcUEaSRtB/wFxRw0BIAFBA0YEQEEGIQEMPQsgAUEBaiEBIAQgAEEBaiIARw0ACyADIAY2AgAMVwsgA0EANgIAIAAhAQwDCwJAA0AgAS0AACIAQSBHBEAgAEEKaw4EBwQEBwILIAQgAUEBaiIBRw0AC0E4IQIMVgsgAEEsRw0BIAFBAWohAEEBIQECQAJAAkACQAJAIAMtACxBBWsOBAMBAgQACyAAIQEMBAtBAiEBDAELQQQhAQsgA0EBOgAsIAMgAy8BMiABcjsBMiAAIQEMAQsgAyADLwEyQQhyOwEyIAAhAQtBPiECDDsLIANBADoALAtBOSECDDkLIAEgBEYEQEE2IQIMUgsCQAJAAkACQAJAIAEtAABBCmsOBAACAgECCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUNAiADQTM2AhwgAyABNgIUIAMgADYCDEEAIQIMVQsgAygCBCEAIANBADYCBCADIAAgARAxIgBFBEAgAUEBaiEBDAYLIANBMjYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgxUCyADLQAuQQFxBEBB3wEhAgw7CyADKAIEIQAgA0EANgIEIAMgACABEDEiAA0BDEkLQTQhAgw5CyADQTU2AhwgAyABNgIUIAMgADYCDEEAIQIMUQtBNSECDDcLIANBL2otAABBAXENACADQQA2AhwgAyABNgIUIANB6xY2AhAgA0EZNgIMQQAhAgxPC0EzIQIMNQsgASAERgRAQTIhAgxOCwJAIAEtAABBCkYEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQZIXNgIQIANBAzYCDEEAIQIMTgtBMiECDDQLIAEgBEYEQEExIQIMTQsCQCABLQAAIgBBCUYNACAAQSBGDQBBASECAkAgAy0ALEEFaw4EBgQFAA0LIAMgAy8BMkEIcjsBMgwMCyADLQAuQQFxRQ0BIAMtACxBCEcNACADQQA6ACwLQT0hAgwyCyADQQA2AhwgAyABNgIUIANBwhY2AhAgA0EKNgIMQQAhAgxKC0ECIQIMAQtBBCECCyADQQE6ACwgAyADLwEyIAJyOwEyDAYLIAEgBEYEQEEwIQIMRwsgAS0AAEEKRgRAIAFBAWohAQwBCyADLQAuQQFxDQAgA0EANgIcIAMgATYCFCADQdwoNgIQIANBAjYCDEEAIQIMRgtBMCECDCwLIAFBAWohAUExIQIMKwsgASAERgRAQS8hAgxECyABLQAAIgBBCUcgAEEgR3FFBEAgAUEBaiEBIAMtAC5BAXENASADQQA2AhwgAyABNgIUIANBlxA2AhAgA0EKNgIMQQAhAgxEC0EBIQICQAJAAkACQAJAAkAgAy0ALEECaw4HBQQEAwECAAQLIAMgAy8BMkEIcjsBMgwDC0ECIQIMAQtBBCECCyADQQE6ACwgAyADLwEyIAJyOwEyC0EvIQIMKwsgA0EANgIcIAMgATYCFCADQYQTNgIQIANBCzYCDEEAIQIMQwtB4QEhAgwpCyABIARGBEBBLiECDEILIANBADYCBCADQRI2AgggAyABIAEQMSIADQELQS4hAgwnCyADQS02AhwgAyABNgIUIAMgADYCDEEAIQIMPwtBACEAAkAgAygCOCICRQ0AIAIoAkwiAkUNACADIAIRAAAhAAsgAEUNACAAQRVHDQEgA0HYADYCHCADIAE2AhQgA0GzGzYCECADQRU2AgxBACECDD4LQcwAIQIMJAsgA0EANgIcIAMgATYCFCADQbMONgIQIANBHTYCDEEAIQIMPAsgASAERgRAQc4AIQIMPAsgAS0AACIAQSBGDQIgAEE6Rg0BCyADQQA6ACxBCSECDCELIAMoAgQhACADQQA2AgQgAyAAIAEQMCIADQEMAgsgAy0ALkEBcQRAQd4BIQIMIAsgAygCBCEAIANBADYCBCADIAAgARAwIgBFDQIgA0EqNgIcIAMgADYCDCADIAFBAWo2AhRBACECDDgLIANBywA2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMNwsgAUEBaiEBQcAAIQIMHQsgAUEBaiEBDCwLIAEgBEYEQEErIQIMNQsCQCABLQAAQQpGBEAgAUEBaiEBDAELIAMtAC5BwABxRQ0GCyADLQAyQYABcQRAQQAhAAJAIAMoAjgiAkUNACACKAJcIgJFDQAgAyACEQAAIQALIABFDRIgAEEVRgRAIANBBTYCHCADIAE2AhQgA0GbGzYCECADQRU2AgxBACECDDYLIANBADYCHCADIAE2AhQgA0GQDjYCECADQRQ2AgxBACECDDULIANBMmohAiADEDVBACEAAkAgAygCOCIGRQ0AIAYoAigiBkUNACADIAYRAAAhAAsgAA4WAgEABAQEBAQEBAQEBAQEBAQEBAQEAwQLIANBAToAMAsgAiACLwEAQcAAcjsBAAtBKyECDBgLIANBKTYCHCADIAE2AhQgA0GsGTYCECADQRU2AgxBACECDDALIANBADYCHCADIAE2AhQgA0HlCzYCECADQRE2AgxBACECDC8LIANBADYCHCADIAE2AhQgA0GlCzYCECADQQI2AgxBACECDC4LQQEhByADLwEyIgVBCHFFBEAgAykDIEIAUiEHCwJAIAMtADAEQEEBIQAgAy0AKUEFRg0BIAVBwABxRSAHcUUNAQsCQCADLQAoIgJBAkYEQEEBIQAgAy8BNCIGQeUARg0CQQAhACAFQcAAcQ0CIAZB5ABGDQIgBkHmAGtBAkkNAiAGQcwBRg0CIAZBsAJGDQIMAQtBACEAIAVBwABxDQELQQIhACAFQQhxDQAgBUGABHEEQAJAIAJBAUcNACADLQAuQQpxDQBBBSEADAILQQQhAAwBCyAFQSBxRQRAIAMQNkEAR0ECdCEADAELQQBBAyADKQMgUBshAAsgAEEBaw4FAgAHAQMEC0ERIQIMEwsgA0EBOgAxDCkLQQAhAgJAIAMoAjgiAEUNACAAKAIwIgBFDQAgAyAAEQAAIQILIAJFDSYgAkEVRgRAIANBAzYCHCADIAE2AhQgA0HSGzYCECADQRU2AgxBACECDCsLQQAhAiADQQA2AhwgAyABNgIUIANB3Q42AhAgA0ESNgIMDCoLIANBADYCHCADIAE2AhQgA0H5IDYCECADQQ82AgxBACECDCkLQQAhAAJAIAMoAjgiAkUNACACKAIwIgJFDQAgAyACEQAAIQALIAANAQtBDiECDA4LIABBFUYEQCADQQI2AhwgAyABNgIUIANB0hs2AhAgA0EVNgIMQQAhAgwnCyADQQA2AhwgAyABNgIUIANB3Q42AhAgA0ESNgIMQQAhAgwmC0EqIQIMDAsgASAERwRAIANBCTYCCCADIAE2AgRBKSECDAwLQSYhAgwkCyADIAMpAyAiDCAEIAFrrSIKfSILQgAgCyAMWBs3AyAgCiAMVARAQSUhAgwkCyADKAIEIQAgA0EANgIEIAMgACABIAynaiIBEDIiAEUNACADQQU2AhwgAyABNgIUIAMgADYCDEEAIQIMIwtBDyECDAkLQgAhCgJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABLQAAQTBrDjcXFgABAgMEBQYHFBQUFBQUFAgJCgsMDRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUDg8QERITFAtCAiEKDBYLQgMhCgwVC0IEIQoMFAtCBSEKDBMLQgYhCgwSC0IHIQoMEQtCCCEKDBALQgkhCgwPC0IKIQoMDgtCCyEKDA0LQgwhCgwMC0INIQoMCwtCDiEKDAoLQg8hCgwJC0IKIQoMCAtCCyEKDAcLQgwhCgwGC0INIQoMBQtCDiEKDAQLQg8hCgwDCyADQQA2AhwgAyABNgIUIANBnxU2AhAgA0EMNgIMQQAhAgwhCyABIARGBEBBIiECDCELQgAhCgJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAS0AAEEwaw43FRQAAQIDBAUGBxYWFhYWFhYICQoLDA0WFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFg4PEBESExYLQgIhCgwUC0IDIQoMEwtCBCEKDBILQgUhCgwRC0IGIQoMEAtCByEKDA8LQgghCgwOC0IJIQoMDQtCCiEKDAwLQgshCgwLC0IMIQoMCgtCDSEKDAkLQg4hCgwIC0IPIQoMBwtCCiEKDAYLQgshCgwFC0IMIQoMBAtCDSEKDAMLQg4hCgwCC0IPIQoMAQtCASEKCyABQQFqIQEgAykDICILQv//////////D1gEQCADIAtCBIYgCoQ3AyAMAgsgA0EANgIcIAMgATYCFCADQbUJNgIQIANBDDYCDEEAIQIMHgtBJyECDAQLQSghAgwDCyADIAE6ACwgA0EANgIAIAdBAWohAUEMIQIMAgsgA0EANgIAIAZBAWohAUEKIQIMAQsgAUEBaiEBQQghAgwACwALQQAhAiADQQA2AhwgAyABNgIUIANBsjg2AhAgA0EINgIMDBcLQQAhAiADQQA2AhwgAyABNgIUIANBgxE2AhAgA0EJNgIMDBYLQQAhAiADQQA2AhwgAyABNgIUIANB3wo2AhAgA0EJNgIMDBULQQAhAiADQQA2AhwgAyABNgIUIANB7RA2AhAgA0EJNgIMDBQLQQAhAiADQQA2AhwgAyABNgIUIANB0hE2AhAgA0EJNgIMDBMLQQAhAiADQQA2AhwgAyABNgIUIANBsjg2AhAgA0EINgIMDBILQQAhAiADQQA2AhwgAyABNgIUIANBgxE2AhAgA0EJNgIMDBELQQAhAiADQQA2AhwgAyABNgIUIANB3wo2AhAgA0EJNgIMDBALQQAhAiADQQA2AhwgAyABNgIUIANB7RA2AhAgA0EJNgIMDA8LQQAhAiADQQA2AhwgAyABNgIUIANB0hE2AhAgA0EJNgIMDA4LQQAhAiADQQA2AhwgAyABNgIUIANBuRc2AhAgA0EPNgIMDA0LQQAhAiADQQA2AhwgAyABNgIUIANBuRc2AhAgA0EPNgIMDAwLQQAhAiADQQA2AhwgAyABNgIUIANBmRM2AhAgA0ELNgIMDAsLQQAhAiADQQA2AhwgAyABNgIUIANBnQk2AhAgA0ELNgIMDAoLQQAhAiADQQA2AhwgAyABNgIUIANBlxA2AhAgA0EKNgIMDAkLQQAhAiADQQA2AhwgAyABNgIUIANBsRA2AhAgA0EKNgIMDAgLQQAhAiADQQA2AhwgAyABNgIUIANBux02AhAgA0ECNgIMDAcLQQAhAiADQQA2AhwgAyABNgIUIANBlhY2AhAgA0ECNgIMDAYLQQAhAiADQQA2AhwgAyABNgIUIANB+Rg2AhAgA0ECNgIMDAULQQAhAiADQQA2AhwgAyABNgIUIANBxBg2AhAgA0ECNgIMDAQLIANBAjYCHCADIAE2AhQgA0GpHjYCECADQRY2AgxBACECDAMLQd4AIQIgASAERg0CIAlBCGohByADKAIAIQUCQAJAIAEgBEcEQCAFQZbIAGohCCAEIAVqIAFrIQYgBUF/c0EKaiIFIAFqIQADQCABLQAAIAgtAABHBEBBAiEIDAMLIAVFBEBBACEIIAAhAQwDCyAFQQFrIQUgCEEBaiEIIAQgAUEBaiIBRw0ACyAGIQUgBCEBCyAHQQE2AgAgAyAFNgIADAELIANBADYCACAHIAg2AgALIAcgATYCBCAJKAIMIQACQAJAIAkoAghBAWsOAgQBAAsgA0EANgIcIANBwh42AhAgA0EXNgIMIAMgAEEBajYCFEEAIQIMAwsgA0EANgIcIAMgADYCFCADQdceNgIQIANBCTYCDEEAIQIMAgsgASAERgRAQSghAgwCCyADQQk2AgggAyABNgIEQSchAgwBCyABIARGBEBBASECDAELA0ACQAJAAkAgAS0AAEEKaw4EAAEBAAELIAFBAWohAQwBCyABQQFqIQEgAy0ALkEgcQ0AQQAhAiADQQA2AhwgAyABNgIUIANBoSE2AhAgA0EFNgIMDAILQQEhAiABIARHDQALCyAJQRBqJAAgAkUEQCADKAIMIQAMAQsgAyACNgIcQQAhACADKAIEIgFFDQAgAyABIAQgAygCCBEBACIBRQ0AIAMgBDYCFCADIAE2AgwgASEACyAAC74CAQJ/IABBADoAACAAQeQAaiIBQQFrQQA6AAAgAEEAOgACIABBADoAASABQQNrQQA6AAAgAUECa0EAOgAAIABBADoAAyABQQRrQQA6AABBACAAa0EDcSIBIABqIgBBADYCAEHkACABa0F8cSICIABqIgFBBGtBADYCAAJAIAJBCUkNACAAQQA2AgggAEEANgIEIAFBCGtBADYCACABQQxrQQA2AgAgAkEZSQ0AIABBADYCGCAAQQA2AhQgAEEANgIQIABBADYCDCABQRBrQQA2AgAgAUEUa0EANgIAIAFBGGtBADYCACABQRxrQQA2AgAgAiAAQQRxQRhyIgJrIgFBIEkNACAAIAJqIQADQCAAQgA3AxggAEIANwMQIABCADcDCCAAQgA3AwAgAEEgaiEAIAFBIGsiAUEfSw0ACwsLVgEBfwJAIAAoAgwNAAJAAkACQAJAIAAtADEOAwEAAwILIAAoAjgiAUUNACABKAIwIgFFDQAgACABEQAAIgENAwtBAA8LAAsgAEHKGTYCEEEOIQELIAELGgAgACgCDEUEQCAAQd4fNgIQIABBFTYCDAsLFAAgACgCDEEVRgRAIABBADYCDAsLFAAgACgCDEEWRgRAIABBADYCDAsLBwAgACgCDAsHACAAKAIQCwkAIAAgATYCEAsHACAAKAIUCysAAkAgAEEnTw0AQv//////CSAArYhCAYNQDQAgAEECdEHQOGooAgAPCwALFwAgAEEvTwRAAAsgAEECdEHsOWooAgALvwkBAX9B9C0hAQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HqLA8LQZgmDwtB7TEPC0GgNw8LQckpDwtBtCkPC0GWLQ8LQesrDwtBojUPC0HbNA8LQeApDwtB4yQPC0HVJA8LQe4kDwtB5iUPC0HKNA8LQdA3DwtBqjUPC0H1LA8LQfYmDwtBgiIPC0HyMw8LQb4oDwtB5zcPC0HNIQ8LQcAhDwtBuCUPC0HLJQ8LQZYkDwtBjzQPC0HNNQ8LQd0qDwtB7jMPC0GcNA8LQZ4xDwtB9DUPC0HlIg8LQa8lDwtBmTEPC0GyNg8LQfk2DwtBxDIPC0HdLA8LQYIxDwtBwTEPC0GNNw8LQckkDwtB7DYPC0HnKg8LQcgjDwtB4iEPC0HJNw8LQaUiDwtBlCIPC0HbNg8LQd41DwtBhiYPC0G8Kw8LQYsyDwtBoCMPC0H2MA8LQYAsDwtBiSsPC0GkJg8LQfIjDwtBgSgPC0GrMg8LQesnDwtBwjYPC0GiJA8LQc8qDwtB3CMPC0GHJw8LQeQ0DwtBtyIPC0GtMQ8LQdUiDwtBrzQPC0HeJg8LQdYyDwtB9DQPC0GBOA8LQfQ3DwtBkjYPC0GdJw8LQYIpDwtBjSMPC0HXMQ8LQb01DwtBtDcPC0HYMA8LQbYnDwtBmjgPC0GnKg8LQcQnDwtBriMPC0H1Ig8LAAtByiYhAQsgAQsXACAAIAAvAS5B/v8DcSABQQBHcjsBLgsaACAAIAAvAS5B/f8DcSABQQBHQQF0cjsBLgsaACAAIAAvAS5B+/8DcSABQQBHQQJ0cjsBLgsaACAAIAAvAS5B9/8DcSABQQBHQQN0cjsBLgsaACAAIAAvAS5B7/8DcSABQQBHQQR0cjsBLgsaACAAIAAvAS5B3/8DcSABQQBHQQV0cjsBLgsaACAAIAAvAS5Bv/8DcSABQQBHQQZ0cjsBLgsaACAAIAAvAS5B//4DcSABQQBHQQd0cjsBLgsaACAAIAAvAS5B//0DcSABQQBHQQh0cjsBLgsaACAAIAAvAS5B//sDcSABQQBHQQl0cjsBLgs+AQJ/AkAgACgCOCIDRQ0AIAMoAgQiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQeESNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAggiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQfwRNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAgwiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQewKNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAhAiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQfoeNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAhQiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQcsQNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAhgiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQbcfNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAhwiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQb8VNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAiwiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQf4INgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAiAiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQYwdNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAiQiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQeYVNgIQQRghBAsgBAs4ACAAAn8gAC8BMkEUcUEURgRAQQEgAC0AKEEBRg0BGiAALwE0QeUARgwBCyAALQApQQVGCzoAMAtZAQJ/AkAgAC0AKEEBRg0AIAAvATQiAUHkAGtB5ABJDQAgAUHMAUYNACABQbACRg0AIAAvATIiAEHAAHENAEEBIQIgAEGIBHFBgARGDQAgAEEocUUhAgsgAguMAQECfwJAAkACQCAALQAqRQ0AIAAtACtFDQAgAC8BMiIBQQJxRQ0BDAILIAAvATIiAUEBcUUNAQtBASECIAAtAChBAUYNACAALwE0IgBB5ABrQeQASQ0AIABBzAFGDQAgAEGwAkYNACABQcAAcQ0AQQAhAiABQYgEcUGABEYNACABQShxQQBHIQILIAILcwAgAEEQav0MAAAAAAAAAAAAAAAAAAAAAP0LAwAgAP0MAAAAAAAAAAAAAAAAAAAAAP0LAwAgAEEwav0MAAAAAAAAAAAAAAAAAAAAAP0LAwAgAEEgav0MAAAAAAAAAAAAAAAAAAAAAP0LAwAgAEH9ATYCHAsGACAAEDoLmi0BC38jAEEQayIKJABB3NUAKAIAIglFBEBBnNkAKAIAIgVFBEBBqNkAQn83AgBBoNkAQoCAhICAgMAANwIAQZzZACAKQQhqQXBxQdiq1aoFcyIFNgIAQbDZAEEANgIAQYDZAEEANgIAC0GE2QBBwNkENgIAQdTVAEHA2QQ2AgBB6NUAIAU2AgBB5NUAQX82AgBBiNkAQcCmAzYCAANAIAFBgNYAaiABQfTVAGoiAjYCACACIAFB7NUAaiIDNgIAIAFB+NUAaiADNgIAIAFBiNYAaiABQfzVAGoiAzYCACADIAI2AgAgAUGQ1gBqIAFBhNYAaiICNgIAIAIgAzYCACABQYzWAGogAjYCACABQSBqIgFBgAJHDQALQczZBEGBpgM2AgBB4NUAQazZACgCADYCAEHQ1QBBgKYDNgIAQdzVAEHI2QQ2AgBBzP8HQTg2AgBByNkEIQkLAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAEHsAU0EQEHE1QAoAgAiBkEQIABBE2pBcHEgAEELSRsiBEEDdiIAdiIBQQNxBEACQCABQQFxIAByQQFzIgJBA3QiAEHs1QBqIgEgAEH01QBqKAIAIgAoAggiA0YEQEHE1QAgBkF+IAJ3cTYCAAwBCyABIAM2AgggAyABNgIMCyAAQQhqIQEgACACQQN0IgJBA3I2AgQgACACaiIAIAAoAgRBAXI2AgQMEQtBzNUAKAIAIgggBE8NASABBEACQEECIAB0IgJBACACa3IgASAAdHFoIgBBA3QiAkHs1QBqIgEgAkH01QBqKAIAIgIoAggiA0YEQEHE1QAgBkF+IAB3cSIGNgIADAELIAEgAzYCCCADIAE2AgwLIAIgBEEDcjYCBCAAQQN0IgAgBGshBSAAIAJqIAU2AgAgAiAEaiIEIAVBAXI2AgQgCARAIAhBeHFB7NUAaiEAQdjVACgCACEDAn9BASAIQQN2dCIBIAZxRQRAQcTVACABIAZyNgIAIAAMAQsgACgCCAsiASADNgIMIAAgAzYCCCADIAA2AgwgAyABNgIICyACQQhqIQFB2NUAIAQ2AgBBzNUAIAU2AgAMEQtByNUAKAIAIgtFDQEgC2hBAnRB9NcAaigCACIAKAIEQXhxIARrIQUgACECA0ACQCACKAIQIgFFBEAgAkEUaigCACIBRQ0BCyABKAIEQXhxIARrIgMgBUkhAiADIAUgAhshBSABIAAgAhshACABIQIMAQsLIAAoAhghCSAAKAIMIgMgAEcEQEHU1QAoAgAaIAMgACgCCCIBNgIIIAEgAzYCDAwQCyAAQRRqIgIoAgAiAUUEQCAAKAIQIgFFDQMgAEEQaiECCwNAIAIhByABIgNBFGoiAigCACIBDQAgA0EQaiECIAMoAhAiAQ0ACyAHQQA2AgAMDwtBfyEEIABBv39LDQAgAEETaiIBQXBxIQRByNUAKAIAIghFDQBBACAEayEFAkACQAJAAn9BACAEQYACSQ0AGkEfIARB////B0sNABogBEEmIAFBCHZnIgBrdkEBcSAAQQF0a0E+agsiBkECdEH01wBqKAIAIgJFBEBBACEBQQAhAwwBC0EAIQEgBEEZIAZBAXZrQQAgBkEfRxt0IQBBACEDA0ACQCACKAIEQXhxIARrIgcgBU8NACACIQMgByIFDQBBACEFIAIhAQwDCyABIAJBFGooAgAiByAHIAIgAEEddkEEcWpBEGooAgAiAkYbIAEgBxshASAAQQF0IQAgAg0ACwsgASADckUEQEEAIQNBAiAGdCIAQQAgAGtyIAhxIgBFDQMgAGhBAnRB9NcAaigCACEBCyABRQ0BCwNAIAEoAgRBeHEgBGsiAiAFSSEAIAIgBSAAGyEFIAEgAyAAGyEDIAEoAhAiAAR/IAAFIAFBFGooAgALIgENAAsLIANFDQAgBUHM1QAoAgAgBGtPDQAgAygCGCEHIAMgAygCDCIARwRAQdTVACgCABogACADKAIIIgE2AgggASAANgIMDA4LIANBFGoiAigCACIBRQRAIAMoAhAiAUUNAyADQRBqIQILA0AgAiEGIAEiAEEUaiICKAIAIgENACAAQRBqIQIgACgCECIBDQALIAZBADYCAAwNC0HM1QAoAgAiAyAETwRAQdjVACgCACEBAkAgAyAEayICQRBPBEAgASAEaiIAIAJBAXI2AgQgASADaiACNgIAIAEgBEEDcjYCBAwBCyABIANBA3I2AgQgASADaiIAIAAoAgRBAXI2AgRBACEAQQAhAgtBzNUAIAI2AgBB2NUAIAA2AgAgAUEIaiEBDA8LQdDVACgCACIDIARLBEAgBCAJaiIAIAMgBGsiAUEBcjYCBEHc1QAgADYCAEHQ1QAgATYCACAJIARBA3I2AgQgCUEIaiEBDA8LQQAhASAEAn9BnNkAKAIABEBBpNkAKAIADAELQajZAEJ/NwIAQaDZAEKAgISAgIDAADcCAEGc2QAgCkEMakFwcUHYqtWqBXM2AgBBsNkAQQA2AgBBgNkAQQA2AgBBgIAECyIAIARBxwBqIgVqIgZBACAAayIHcSICTwRAQbTZAEEwNgIADA8LAkBB/NgAKAIAIgFFDQBB9NgAKAIAIgggAmohACAAIAFNIAAgCEtxDQBBACEBQbTZAEEwNgIADA8LQYDZAC0AAEEEcQ0EAkACQCAJBEBBhNkAIQEDQCABKAIAIgAgCU0EQCAAIAEoAgRqIAlLDQMLIAEoAggiAQ0ACwtBABA7IgBBf0YNBSACIQZBoNkAKAIAIgFBAWsiAyAAcQRAIAIgAGsgACADakEAIAFrcWohBgsgBCAGTw0FIAZB/v///wdLDQVB/NgAKAIAIgMEQEH02AAoAgAiByAGaiEBIAEgB00NBiABIANLDQYLIAYQOyIBIABHDQEMBwsgBiADayAHcSIGQf7///8HSw0EIAYQOyEAIAAgASgCACABKAIEakYNAyAAIQELAkAgBiAEQcgAak8NACABQX9GDQBBpNkAKAIAIgAgBSAGa2pBACAAa3EiAEH+////B0sEQCABIQAMBwsgABA7QX9HBEAgACAGaiEGIAEhAAwHC0EAIAZrEDsaDAQLIAEiAEF/Rw0FDAMLQQAhAwwMC0EAIQAMCgsgAEF/Rw0CC0GA2QBBgNkAKAIAQQRyNgIACyACQf7///8HSw0BIAIQOyEAQQAQOyEBIABBf0YNASABQX9GDQEgACABTw0BIAEgAGsiBiAEQThqTQ0BC0H02ABB9NgAKAIAIAZqIgE2AgBB+NgAKAIAIAFJBEBB+NgAIAE2AgALAkACQAJAQdzVACgCACICBEBBhNkAIQEDQCAAIAEoAgAiAyABKAIEIgVqRg0CIAEoAggiAQ0ACwwCC0HU1QAoAgAiAUEARyAAIAFPcUUEQEHU1QAgADYCAAtBACEBQYjZACAGNgIAQYTZACAANgIAQeTVAEF/NgIAQejVAEGc2QAoAgA2AgBBkNkAQQA2AgADQCABQYDWAGogAUH01QBqIgI2AgAgAiABQezVAGoiAzYCACABQfjVAGogAzYCACABQYjWAGogAUH81QBqIgM2AgAgAyACNgIAIAFBkNYAaiABQYTWAGoiAjYCACACIAM2AgAgAUGM1gBqIAI2AgAgAUEgaiIBQYACRw0AC0F4IABrQQ9xIgEgAGoiAiAGQThrIgMgAWsiAUEBcjYCBEHg1QBBrNkAKAIANgIAQdDVACABNgIAQdzVACACNgIAIAAgA2pBODYCBAwCCyAAIAJNDQAgAiADSQ0AIAEoAgxBCHENAEF4IAJrQQ9xIgAgAmoiA0HQ1QAoAgAgBmoiByAAayIAQQFyNgIEIAEgBSAGajYCBEHg1QBBrNkAKAIANgIAQdDVACAANgIAQdzVACADNgIAIAIgB2pBODYCBAwBCyAAQdTVACgCAEkEQEHU1QAgADYCAAsgACAGaiEDQYTZACEBAkACQAJAA0AgAyABKAIARwRAIAEoAggiAQ0BDAILCyABLQAMQQhxRQ0BC0GE2QAhAQNAIAEoAgAiAyACTQRAIAMgASgCBGoiBSACSw0DCyABKAIIIQEMAAsACyABIAA2AgAgASABKAIEIAZqNgIEIABBeCAAa0EPcWoiCSAEQQNyNgIEIANBeCADa0EPcWoiBiAEIAlqIgRrIQEgAiAGRgRAQdzVACAENgIAQdDVAEHQ1QAoAgAgAWoiADYCACAEIABBAXI2AgQMCAtB2NUAKAIAIAZGBEBB2NUAIAQ2AgBBzNUAQczVACgCACABaiIANgIAIAQgAEEBcjYCBCAAIARqIAA2AgAMCAsgBigCBCIFQQNxQQFHDQYgBUF4cSEIIAVB/wFNBEAgBUEDdiEDIAYoAggiACAGKAIMIgJGBEBBxNUAQcTVACgCAEF+IAN3cTYCAAwHCyACIAA2AgggACACNgIMDAYLIAYoAhghByAGIAYoAgwiAEcEQCAAIAYoAggiAjYCCCACIAA2AgwMBQsgBkEUaiICKAIAIgVFBEAgBigCECIFRQ0EIAZBEGohAgsDQCACIQMgBSIAQRRqIgIoAgAiBQ0AIABBEGohAiAAKAIQIgUNAAsgA0EANgIADAQLQXggAGtBD3EiASAAaiIHIAZBOGsiAyABayIBQQFyNgIEIAAgA2pBODYCBCACIAVBNyAFa0EPcWpBP2siAyADIAJBEGpJGyIDQSM2AgRB4NUAQazZACgCADYCAEHQ1QAgATYCAEHc1QAgBzYCACADQRBqQYzZACkCADcCACADQYTZACkCADcCCEGM2QAgA0EIajYCAEGI2QAgBjYCAEGE2QAgADYCAEGQ2QBBADYCACADQSRqIQEDQCABQQc2AgAgBSABQQRqIgFLDQALIAIgA0YNACADIAMoAgRBfnE2AgQgAyADIAJrIgU2AgAgAiAFQQFyNgIEIAVB/wFNBEAgBUF4cUHs1QBqIQACf0HE1QAoAgAiAUEBIAVBA3Z0IgNxRQRAQcTVACABIANyNgIAIAAMAQsgACgCCAsiASACNgIMIAAgAjYCCCACIAA2AgwgAiABNgIIDAELQR8hASAFQf///wdNBEAgBUEmIAVBCHZnIgBrdkEBcSAAQQF0a0E+aiEBCyACIAE2AhwgAkIANwIQIAFBAnRB9NcAaiEAQcjVACgCACIDQQEgAXQiBnFFBEAgACACNgIAQcjVACADIAZyNgIAIAIgADYCGCACIAI2AgggAiACNgIMDAELIAVBGSABQQF2a0EAIAFBH0cbdCEBIAAoAgAhAwJAA0AgAyIAKAIEQXhxIAVGDQEgAUEddiEDIAFBAXQhASAAIANBBHFqQRBqIgYoAgAiAw0ACyAGIAI2AgAgAiAANgIYIAIgAjYCDCACIAI2AggMAQsgACgCCCIBIAI2AgwgACACNgIIIAJBADYCGCACIAA2AgwgAiABNgIIC0HQ1QAoAgAiASAETQ0AQdzVACgCACIAIARqIgIgASAEayIBQQFyNgIEQdDVACABNgIAQdzVACACNgIAIAAgBEEDcjYCBCAAQQhqIQEMCAtBACEBQbTZAEEwNgIADAcLQQAhAAsgB0UNAAJAIAYoAhwiAkECdEH01wBqIgMoAgAgBkYEQCADIAA2AgAgAA0BQcjVAEHI1QAoAgBBfiACd3E2AgAMAgsgB0EQQRQgBygCECAGRhtqIAA2AgAgAEUNAQsgACAHNgIYIAYoAhAiAgRAIAAgAjYCECACIAA2AhgLIAZBFGooAgAiAkUNACAAQRRqIAI2AgAgAiAANgIYCyABIAhqIQEgBiAIaiIGKAIEIQULIAYgBUF+cTYCBCABIARqIAE2AgAgBCABQQFyNgIEIAFB/wFNBEAgAUF4cUHs1QBqIQACf0HE1QAoAgAiAkEBIAFBA3Z0IgFxRQRAQcTVACABIAJyNgIAIAAMAQsgACgCCAsiASAENgIMIAAgBDYCCCAEIAA2AgwgBCABNgIIDAELQR8hBSABQf///wdNBEAgAUEmIAFBCHZnIgBrdkEBcSAAQQF0a0E+aiEFCyAEIAU2AhwgBEIANwIQIAVBAnRB9NcAaiEAQcjVACgCACICQQEgBXQiA3FFBEAgACAENgIAQcjVACACIANyNgIAIAQgADYCGCAEIAQ2AgggBCAENgIMDAELIAFBGSAFQQF2a0EAIAVBH0cbdCEFIAAoAgAhAAJAA0AgACICKAIEQXhxIAFGDQEgBUEddiEAIAVBAXQhBSACIABBBHFqQRBqIgMoAgAiAA0ACyADIAQ2AgAgBCACNgIYIAQgBDYCDCAEIAQ2AggMAQsgAigCCCIAIAQ2AgwgAiAENgIIIARBADYCGCAEIAI2AgwgBCAANgIICyAJQQhqIQEMAgsCQCAHRQ0AAkAgAygCHCIBQQJ0QfTXAGoiAigCACADRgRAIAIgADYCACAADQFByNUAIAhBfiABd3EiCDYCAAwCCyAHQRBBFCAHKAIQIANGG2ogADYCACAARQ0BCyAAIAc2AhggAygCECIBBEAgACABNgIQIAEgADYCGAsgA0EUaigCACIBRQ0AIABBFGogATYCACABIAA2AhgLAkAgBUEPTQRAIAMgBCAFaiIAQQNyNgIEIAAgA2oiACAAKAIEQQFyNgIEDAELIAMgBGoiAiAFQQFyNgIEIAMgBEEDcjYCBCACIAVqIAU2AgAgBUH/AU0EQCAFQXhxQezVAGohAAJ/QcTVACgCACIBQQEgBUEDdnQiBXFFBEBBxNUAIAEgBXI2AgAgAAwBCyAAKAIICyIBIAI2AgwgACACNgIIIAIgADYCDCACIAE2AggMAQtBHyEBIAVB////B00EQCAFQSYgBUEIdmciAGt2QQFxIABBAXRrQT5qIQELIAIgATYCHCACQgA3AhAgAUECdEH01wBqIQBBASABdCIEIAhxRQRAIAAgAjYCAEHI1QAgBCAIcjYCACACIAA2AhggAiACNgIIIAIgAjYCDAwBCyAFQRkgAUEBdmtBACABQR9HG3QhASAAKAIAIQQCQANAIAQiACgCBEF4cSAFRg0BIAFBHXYhBCABQQF0IQEgACAEQQRxakEQaiIGKAIAIgQNAAsgBiACNgIAIAIgADYCGCACIAI2AgwgAiACNgIIDAELIAAoAggiASACNgIMIAAgAjYCCCACQQA2AhggAiAANgIMIAIgATYCCAsgA0EIaiEBDAELAkAgCUUNAAJAIAAoAhwiAUECdEH01wBqIgIoAgAgAEYEQCACIAM2AgAgAw0BQcjVACALQX4gAXdxNgIADAILIAlBEEEUIAkoAhAgAEYbaiADNgIAIANFDQELIAMgCTYCGCAAKAIQIgEEQCADIAE2AhAgASADNgIYCyAAQRRqKAIAIgFFDQAgA0EUaiABNgIAIAEgAzYCGAsCQCAFQQ9NBEAgACAEIAVqIgFBA3I2AgQgACABaiIBIAEoAgRBAXI2AgQMAQsgACAEaiIHIAVBAXI2AgQgACAEQQNyNgIEIAUgB2ogBTYCACAIBEAgCEF4cUHs1QBqIQFB2NUAKAIAIQMCf0EBIAhBA3Z0IgIgBnFFBEBBxNUAIAIgBnI2AgAgAQwBCyABKAIICyICIAM2AgwgASADNgIIIAMgATYCDCADIAI2AggLQdjVACAHNgIAQczVACAFNgIACyAAQQhqIQELIApBEGokACABC0MAIABFBEA/AEEQdA8LAkAgAEH//wNxDQAgAEEASA0AIABBEHZAACIAQX9GBEBBtNkAQTA2AgBBfw8LIABBEHQPCwALC5lCIgBBgAgLDQEAAAAAAAAAAgAAAAMAQZgICwUEAAAABQBBqAgLCQYAAAAHAAAACABB5AgLwjJJbnZhbGlkIGNoYXIgaW4gdXJsIHF1ZXJ5AFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fYm9keQBDb250ZW50LUxlbmd0aCBvdmVyZmxvdwBDaHVuayBzaXplIG92ZXJmbG93AEludmFsaWQgbWV0aG9kIGZvciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==`,`base64`)})})),Da=n(((e,t)=>{let n=[`GET`,`HEAD`,`POST`],r=new Set(n),i=[101,204,205,304],a=[301,302,303,307,308],o=new Set(a),s=`1.7.9.11.13.15.17.19.20.21.22.23.25.37.42.43.53.69.77.79.87.95.101.102.103.104.109.110.111.113.115.117.119.123.135.137.139.143.161.179.389.427.465.512.513.514.515.526.530.531.532.540.548.554.556.563.587.601.636.989.990.993.995.1719.1720.1723.2049.3659.4045.4190.5060.5061.6000.6566.6665.6666.6667.6668.6669.6679.6697.10080`.split(`.`),c=new Set(s),l=[`no-referrer`,`no-referrer-when-downgrade`,`same-origin`,`origin`,`strict-origin`,`origin-when-cross-origin`,`strict-origin-when-cross-origin`,`unsafe-url`],u=[``,...l],d=new Set(l),f=[`follow`,`manual`,`error`],p=[`GET`,`HEAD`,`OPTIONS`,`TRACE`],m=new Set(p),h=[`navigate`,`same-origin`,`no-cors`,`cors`],g=[`omit`,`same-origin`,`include`],_=[`default`,`no-store`,`reload`,`no-cache`,`force-cache`,`only-if-cached`],v=[`content-encoding`,`content-language`,`content-location`,`content-type`,`content-length`],y=[`half`],b=[`CONNECT`,`TRACE`,`TRACK`],x=new Set(b),S=[`audio`,`audioworklet`,`font`,`image`,`manifest`,`paintworklet`,`script`,`style`,`track`,`video`,`xslt`,``];t.exports={subresource:S,forbiddenMethods:b,requestBodyHeader:v,referrerPolicy:u,requestRedirect:f,requestMode:h,requestCredentials:g,requestCache:_,redirectStatus:a,corsSafeListedMethods:n,nullBodyStatus:i,safeMethods:p,badPorts:s,requestDuplex:y,subresourceSet:new Set(S),badPortsSet:c,redirectStatusSet:o,corsSafeListedMethodsSet:r,safeMethodsSet:m,forbiddenMethodsSet:x,referrerPolicyTokens:d}})),Oa=n(((e,t)=>{let n=Symbol.for(`undici.globalOrigin.1`);function r(){return globalThis[n]}function i(e){if(e===void 0){Object.defineProperty(globalThis,n,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let t=new URL(e);if(t.protocol!==`http:`&&t.protocol!==`https:`)throw TypeError(`Only http & https urls are allowed, received ${t.protocol}`);Object.defineProperty(globalThis,n,{value:t,writable:!0,enumerable:!1,configurable:!1})}t.exports={getGlobalOrigin:r,setGlobalOrigin:i}})),ka=n(((e,t)=>{let n=new TextDecoder;function r(e){return e.length===0?``:(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),n.decode(e))}t.exports={utf8DecodeBytes:r}})),Aa=n(((e,n)=>{let r=t(`node:assert`),{utf8DecodeBytes:i}=ka();function a(e,t,n){let r=``;for(;n.position<t.length&&e(t[n.position]);)r+=t[n.position],n.position++;return r}function o(e,t,n){let r=t.indexOf(e,n.position),i=n.position;return r===-1?(n.position=t.length,t.slice(i)):(n.position=r,t.slice(i,n.position))}let s=/[\u0009\u000A\u000C\u000D\u0020]/g;function c(e){e=e.replace(s,``);let t=e.length;if(t%4==0&&e.charCodeAt(t-1)===61&&(--t,e.charCodeAt(t-1)===61&&--t),t%4==1||/[^+/0-9A-Za-z]/.test(e.length===t?e:e.substring(0,t)))return`failure`;let n=Buffer.from(e,`base64`);return new Uint8Array(n.buffer,n.byteOffset,n.byteLength)}function l(e){return e===9||e===10||e===12||e===13||e===32}function u(e){let t=e.length;if(65535>t)return String.fromCharCode.apply(null,e);let n=``,r=0,i=65535;for(;r<t;)r+i>t&&(i=t-r),n+=String.fromCharCode.apply(null,e.subarray(r,r+=i));return n}let d=/[^\x00-\xFF]/;function f(e){return r(!d.test(e)),e}function p(e){return JSON.parse(i(e))}function m(e,t=!0,n=!0){return h(e,t,n,l)}function h(e,t,n,r){let i=0,a=e.length-1;if(t)for(;i<e.length&&r(e.charCodeAt(i));)i++;if(n)for(;a>0&&r(e.charCodeAt(a));)a--;return i===0&&a===e.length-1?e:e.slice(i,a+1)}function g(e){let t=JSON.stringify(e);if(t===void 0)throw TypeError(`Value is not JSON serializable`);return r(typeof t==`string`),t}n.exports={collectASequenceOfCodePoints:a,collectASequenceOfCodePointsFast:o,forgivingBase64:c,isASCIIWhitespace:l,isomorphicDecode:u,isomorphicEncode:f,parseJSONFromBytes:p,removeASCIIWhitespace:m,removeChars:h,serializeJavascriptValueToJSONString:g}})),ja=n(((e,n)=>{let r=t(`node:assert`),{forgivingBase64:i,collectASequenceOfCodePoints:a,collectASequenceOfCodePointsFast:o,isomorphicDecode:s,removeASCIIWhitespace:c,removeChars:l}=Aa(),u=new TextEncoder,d=/^[-!#$%&'*+.^_|~A-Za-z0-9]+$/u,f=/[\u000A\u000D\u0009\u0020]/u,p=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/u;function m(e){r(e.protocol===`data:`);let t=h(e,!0);t=t.slice(5);let n={position:0},a=o(`,`,t,n),l=a.length;if(a=c(a,!0,!0),n.position>=t.length)return`failure`;n.position++;let u=g(t.slice(l+1));if(/;(?:\u0020*)base64$/iu.test(a)){if(u=i(s(u)),u===`failure`)return`failure`;a=a.slice(0,-6),a=a.replace(/(\u0020+)$/u,``),a=a.slice(0,-1)}a.startsWith(`;`)&&(a=`text/plain`+a);let d=b(a);return d===`failure`&&(d=b(`text/plain;charset=US-ASCII`)),{mimeType:d,body:u}}function h(e,t=!1){if(!t)return e.href;let n=e.href,r=e.hash.length,i=r===0?n:n.substring(0,n.length-r);return!r&&n.endsWith(`#`)?i.slice(0,-1):i}function g(e){return y(u.encode(e))}function _(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function v(e){return e>=48&&e<=57?e-48:(e&223)-55}function y(e){let t=e.length,n=new Uint8Array(t),r=0,i=0;for(;i<t;){let t=e[i];t===37?t===37&&!(_(e[i+1])&&_(e[i+2]))?n[r++]=37:(n[r++]=v(e[i+1])<<4|v(e[i+2]),i+=2):n[r++]=t,++i}return t===r?n:n.subarray(0,r)}function b(e){e=w(e,!0,!0);let t={position:0},n=o(`/`,e,t);if(n.length===0||!d.test(n)||t.position>=e.length)return`failure`;t.position++;let r=o(`;`,e,t);if(r=w(r,!1,!0),r.length===0||!d.test(r))return`failure`;let i=n.toLowerCase(),s=r.toLowerCase(),c={type:i,subtype:s,parameters:new Map,essence:`${i}/${s}`};for(;t.position<e.length;){t.position++,a(e=>f.test(e),e,t);let n=a(e=>e!==`;`&&e!==`=`,e,t);if(n=n.toLowerCase(),t.position<e.length){if(e[t.position]===`;`)continue;t.position++}if(t.position>=e.length)break;let r=null;if(e[t.position]===`"`)r=x(e,t,!0),o(`;`,e,t);else if(r=o(`;`,e,t),r=w(r,!1,!0),r.length===0)continue;n.length!==0&&d.test(n)&&(r.length===0||p.test(r))&&!c.parameters.has(n)&&c.parameters.set(n,r)}return c}function x(e,t,n=!1){let i=t.position,o=``;for(r(e[t.position]===`"`),t.position++;o+=a(e=>e!==`"`&&e!==`\\`,e,t),!(t.position>=e.length);){let n=e[t.position];if(t.position++,n===`\\`){if(t.position>=e.length){o+=`\\`;break}o+=e[t.position],t.position++}else{r(n===`"`);break}}return n?o:e.slice(i,t.position)}function S(e){r(e!==`failure`);let{parameters:t,essence:n}=e,i=n;for(let[e,n]of t.entries())i+=`;`,i+=e,i+=`=`,d.test(n)||(n=n.replace(/[\\"]/gu,`\\$&`),n=`"`+n,n+=`"`),i+=n;return i}function C(e){return e===13||e===10||e===9||e===32}function w(e,t=!0,n=!0){return l(e,t,n,C)}function T(e){switch(e.essence){case`application/ecmascript`:case`application/javascript`:case`application/x-ecmascript`:case`application/x-javascript`:case`text/ecmascript`:case`text/javascript`:case`text/javascript1.0`:case`text/javascript1.1`:case`text/javascript1.2`:case`text/javascript1.3`:case`text/javascript1.4`:case`text/javascript1.5`:case`text/jscript`:case`text/livescript`:case`text/x-ecmascript`:case`text/x-javascript`:return`text/javascript`;case`application/json`:case`text/json`:return`application/json`;case`image/svg+xml`:return`image/svg+xml`;case`text/xml`:case`application/xml`:return`application/xml`}return e.subtype.endsWith(`+json`)?`application/json`:e.subtype.endsWith(`+xml`)?`application/xml`:``}n.exports={dataURLProcessor:m,URLSerializer:h,stringPercentDecode:g,parseMIMEType:b,collectAnHTTPQuotedString:x,serializeAMimeType:S,removeHTTPWhitespace:w,minimizeSupportedMimeType:T,HTTP_TOKEN_CODEPOINTS:d}})),Ma=n(((e,n)=>{let r={__proto__:null,"node:crypto":()=>t(`node:crypto`),"node:sqlite":()=>t(`node:sqlite`),"node:worker_threads":()=>t(`node:worker_threads`),"node:zlib":()=>t(`node:zlib`)};function i(e){try{return r[e](),!0}catch(e){if(e.code!==`ERR_UNKNOWN_BUILTIN_MODULE`&&e.code!==`ERR_NO_CRYPTO`)throw e;return!1}}function a(e,t){return r[e]()[t]!==void 0}let o=[`markAsUncloneable`,`zstd`],s={markAsUncloneable:[`node:worker_threads`,`markAsUncloneable`],zstd:[`node:zlib`,`createZstdDecompress`]},c=[`crypto`,`sqlite`],l=[...c,...o];function u(e){if(c.includes(e))return i(`node:${e}`);if(o.includes(e)){let[t,n]=s[e];return a(t,n)}throw TypeError(`unknown feature: ${e}`)}let d=new class{#e=new Map;clear(){this.#e.clear()}has(e){return this.#e.get(e)??this.#t(e)}set(e,t){if(l.includes(e)===!1)throw TypeError(`unknown feature: ${e}`);this.#e.set(e,t)}#t(e){let t=u(e);return this.#e.set(e,t),t}};n.exports.runtimeFeatures=d,n.exports.default=d})),Na=n(((e,n)=>{let r=t(`node:assert`),{types:i,inspect:a}=t(`node:util`),{runtimeFeatures:o}=Ma(),s=Function.call.bind(Function.prototype[Symbol.hasInstance]),c={converters:{},util:{},errors:{},is:{}};c.errors.exception=function(e){return TypeError(`${e.header}: ${e.message}`)},c.errors.conversionFailed=function(e){let t=e.types.length===1?``:` one of`,n=`${e.argument} could not be converted to${t}: ${e.types.join(`, `)}.`;return c.errors.exception({header:e.prefix,message:n})},c.errors.invalidArgument=function(e){return c.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})},c.brandCheck=function(e,t){if(!s(t,e)){let e=TypeError(`Illegal invocation`);throw e.code=`ERR_INVALID_THIS`,e}},c.brandCheckMultiple=function(e){let t=e.map(e=>c.util.MakeTypeAssertion(e));return e=>{if(t.every(t=>!t(e))){let e=TypeError(`Illegal invocation`);throw e.code=`ERR_INVALID_THIS`,e}}},c.argumentLengthCheck=function({length:e},t,n){if(e<t)throw c.errors.exception({message:`${t} argument${t===1?``:`s`} required, but${e?` only`:``} ${e} found.`,header:n})},c.illegalConstructor=function(){throw c.errors.exception({header:`TypeError`,message:`Illegal constructor`})},c.util.MakeTypeAssertion=function(e){return t=>s(e,t)},c.util.Type=function(e){switch(typeof e){case`undefined`:return 1;case`boolean`:return 2;case`string`:return 3;case`symbol`:return 4;case`number`:return 5;case`bigint`:return 6;case`function`:case`object`:return e===null?7:8}},c.util.Types={UNDEFINED:1,BOOLEAN:2,STRING:3,SYMBOL:4,NUMBER:5,BIGINT:6,NULL:7,OBJECT:8},c.util.TypeValueToString=function(e){switch(c.util.Type(e)){case 1:return`Undefined`;case 2:return`Boolean`;case 3:return`String`;case 4:return`Symbol`;case 5:return`Number`;case 6:return`BigInt`;case 7:return`Null`;case 8:return`Object`}},c.util.markAsUncloneable=o.has(`markAsUncloneable`)?t(`node:worker_threads`).markAsUncloneable:()=>{},c.util.ConvertToInt=function(e,t,n,r){let i,a;t===64?(i=2**53-1,a=n===`unsigned`?0:-9007199254740991):n===`unsigned`?(a=0,i=2**t-1):(a=-(2**(t-1)),i=2**(t-1)-1);let o=Number(e);if(o===0&&(o=0),c.util.HasFlag(r,c.attributes.EnforceRange)){if(Number.isNaN(o)||o===1/0||o===-1/0)throw c.errors.exception({header:`Integer conversion`,message:`Could not convert ${c.util.Stringify(e)} to an integer.`});if(o=c.util.IntegerPart(o),o<a||o>i)throw c.errors.exception({header:`Integer conversion`,message:`Value must be between ${a}-${i}, got ${o}.`});return o}return!Number.isNaN(o)&&c.util.HasFlag(r,c.attributes.Clamp)?(o=Math.min(Math.max(o,a),i),o=Math.floor(o)%2==0?Math.floor(o):Math.ceil(o),o):Number.isNaN(o)||o===0&&Object.is(0,o)||o===1/0||o===-1/0?0:(o=c.util.IntegerPart(o),o%=2**t,n===`signed`&&o>=2**(t-1)?o-2**t:o)},c.util.IntegerPart=function(e){let t=Math.floor(Math.abs(e));return e<0?-1*t:t},c.util.Stringify=function(e){switch(c.util.Type(e)){case 4:return`Symbol(${e.description})`;case 8:return a(e);case 3:return`"${e}"`;case 6:return`${e}n`;default:return`${e}`}},c.util.IsResizableArrayBuffer=function(e){if(i.isArrayBuffer(e))return e.resizable;if(i.isSharedArrayBuffer(e))return e.growable;throw c.errors.exception({header:`IsResizableArrayBuffer`,message:`"${c.util.Stringify(e)}" is not an array buffer.`})},c.util.HasFlag=function(e,t){return typeof e==`number`&&(e&t)===t},c.sequenceConverter=function(e){return(t,n,r,i)=>{if(c.util.Type(t)!==8)throw c.errors.exception({header:n,message:`${r} (${c.util.Stringify(t)}) is not iterable.`});let a=typeof i==`function`?i():t?.[Symbol.iterator]?.(),o=[],s=0;if(a===void 0||typeof a.next!=`function`)throw c.errors.exception({header:n,message:`${r} is not iterable.`});for(;;){let{done:t,value:i}=a.next();if(t)break;o.push(e(i,n,`${r}[${s++}]`))}return o}},c.recordConverter=function(e,t){return(n,r,a)=>{if(c.util.Type(n)!==8)throw c.errors.exception({header:r,message:`${a} ("${c.util.TypeValueToString(n)}") is not an Object.`});let o={};if(!i.isProxy(n)){let i=[...Object.getOwnPropertyNames(n),...Object.getOwnPropertySymbols(n)];for(let s of i){let i=c.util.Stringify(s),l=e(s,r,`Key ${i} in ${a}`);o[l]=t(n[s],r,`${a}[${i}]`)}return o}let s=Reflect.ownKeys(n);for(let i of s)if(Reflect.getOwnPropertyDescriptor(n,i)?.enumerable){let s=e(i,r,a);o[s]=t(n[i],r,a)}return o}},c.interfaceConverter=function(e,t){return(n,r,i)=>{if(!e(n))throw c.errors.exception({header:r,message:`Expected ${i} ("${c.util.Stringify(n)}") to be an instance of ${t}.`});return n}},c.dictionaryConverter=function(e){return e.sort((e,t)=>(e.key>t.key)-(e.key<t.key)),(t,n,r)=>{let i={};if(t!=null&&c.util.Type(t)!==8)throw c.errors.exception({header:n,message:`Expected ${t} to be one of: Null, Undefined, Object.`});for(let a of e){let{key:e,defaultValue:o,required:s,converter:l}=a;if(s===!0&&(t==null||!Object.hasOwn(t,e)))throw c.errors.exception({header:n,message:`Missing required key "${e}".`});let u=t?.[e],d=o!==void 0;if(d&&u===void 0&&(u=o()),s||d||u!==void 0){if(u=l(u,n,`${r}.${e}`),a.allowedValues&&!a.allowedValues.includes(u))throw c.errors.exception({header:n,message:`${u} is not an accepted type. Expected one of ${a.allowedValues.join(`, `)}.`});i[e]=u}}return i}},c.nullableConverter=function(e){return(t,n,r)=>t===null?t:e(t,n,r)},c.is.USVString=function(e){return typeof e==`string`&&e.isWellFormed()},c.is.ReadableStream=c.util.MakeTypeAssertion(ReadableStream),c.is.Blob=c.util.MakeTypeAssertion(Blob),c.is.URLSearchParams=c.util.MakeTypeAssertion(URLSearchParams),c.is.File=c.util.MakeTypeAssertion(File),c.is.URL=c.util.MakeTypeAssertion(URL),c.is.AbortSignal=c.util.MakeTypeAssertion(AbortSignal),c.is.MessagePort=c.util.MakeTypeAssertion(MessagePort),c.is.BufferSource=function(e){return i.isArrayBuffer(e)||ArrayBuffer.isView(e)&&i.isArrayBuffer(e.buffer)},c.util.getCopyOfBytesHeldByBufferSource=function(e){let t=e,n=t,a=0,o=0;if(i.isTypedArray(t)||i.isDataView(t)?(n=t.buffer,a=t.byteOffset,o=t.byteLength):(r(i.isAnyArrayBuffer(t)),o=t.byteLength),n.detached)return new Uint8Array;let s=new Uint8Array(o),c=new Uint8Array(n,a,o);return s.set(c),s},c.converters.DOMString=function(e,t,n,r){if(e===null&&c.util.HasFlag(r,c.attributes.LegacyNullToEmptyString))return``;if(typeof e==`symbol`)throw c.errors.exception({header:t,message:`${n} is a symbol, which cannot be converted to a DOMString.`});return String(e)},c.converters.ByteString=function(e,t,n){if(typeof e==`symbol`)throw c.errors.exception({header:t,message:`${n} is a symbol, which cannot be converted to a ByteString.`});let r=String(e);for(let e=0;e<r.length;e++)if(r.charCodeAt(e)>255)throw TypeError(`Cannot convert argument to a ByteString because the character at index ${e} has a value of ${r.charCodeAt(e)} which is greater than 255.`);return r},c.converters.USVString=function(e){return typeof e==`string`?e.toWellFormed():`${e}`.toWellFormed()},c.converters.boolean=function(e){return!!e},c.converters.any=function(e){return e},c.converters[`long long`]=function(e,t,n){return c.util.ConvertToInt(e,64,`signed`,0,t,n)},c.converters[`unsigned long long`]=function(e,t,n){return c.util.ConvertToInt(e,64,`unsigned`,0,t,n)},c.converters[`unsigned long`]=function(e,t,n){return c.util.ConvertToInt(e,32,`unsigned`,0,t,n)},c.converters[`unsigned short`]=function(e,t,n,r){return c.util.ConvertToInt(e,16,`unsigned`,r,t,n)},c.converters.ArrayBuffer=function(e,t,n,r){if(c.util.Type(e)!==8||!i.isArrayBuffer(e))throw c.errors.conversionFailed({prefix:t,argument:`${n} ("${c.util.Stringify(e)}")`,types:[`ArrayBuffer`]});if(!c.util.HasFlag(r,c.attributes.AllowResizable)&&c.util.IsResizableArrayBuffer(e))throw c.errors.exception({header:t,message:`${n} cannot be a resizable ArrayBuffer.`});return e},c.converters.SharedArrayBuffer=function(e,t,n,r){if(c.util.Type(e)!==8||!i.isSharedArrayBuffer(e))throw c.errors.conversionFailed({prefix:t,argument:`${n} ("${c.util.Stringify(e)}")`,types:[`SharedArrayBuffer`]});if(!c.util.HasFlag(r,c.attributes.AllowResizable)&&c.util.IsResizableArrayBuffer(e))throw c.errors.exception({header:t,message:`${n} cannot be a resizable SharedArrayBuffer.`});return e},c.converters.TypedArray=function(e,t,n,r,a){if(c.util.Type(e)!==8||!i.isTypedArray(e)||e.constructor.name!==t.name)throw c.errors.conversionFailed({prefix:n,argument:`${r} ("${c.util.Stringify(e)}")`,types:[t.name]});if(!c.util.HasFlag(a,c.attributes.AllowShared)&&i.isSharedArrayBuffer(e.buffer))throw c.errors.exception({header:n,message:`${r} cannot be a view on a shared array buffer.`});if(!c.util.HasFlag(a,c.attributes.AllowResizable)&&c.util.IsResizableArrayBuffer(e.buffer))throw c.errors.exception({header:n,message:`${r} cannot be a view on a resizable array buffer.`});return e},c.converters.DataView=function(e,t,n,r){if(c.util.Type(e)!==8||!i.isDataView(e))throw c.errors.conversionFailed({prefix:t,argument:`${n} ("${c.util.Stringify(e)}")`,types:[`DataView`]});if(!c.util.HasFlag(r,c.attributes.AllowShared)&&i.isSharedArrayBuffer(e.buffer))throw c.errors.exception({header:t,message:`${n} cannot be a view on a shared array buffer.`});if(!c.util.HasFlag(r,c.attributes.AllowResizable)&&c.util.IsResizableArrayBuffer(e.buffer))throw c.errors.exception({header:t,message:`${n} cannot be a view on a resizable array buffer.`});return e},c.converters.ArrayBufferView=function(e,t,n,r){if(c.util.Type(e)!==8||!i.isArrayBufferView(e))throw c.errors.conversionFailed({prefix:t,argument:`${n} ("${c.util.Stringify(e)}")`,types:[`ArrayBufferView`]});if(!c.util.HasFlag(r,c.attributes.AllowShared)&&i.isSharedArrayBuffer(e.buffer))throw c.errors.exception({header:t,message:`${n} cannot be a view on a shared array buffer.`});if(!c.util.HasFlag(r,c.attributes.AllowResizable)&&c.util.IsResizableArrayBuffer(e.buffer))throw c.errors.exception({header:t,message:`${n} cannot be a view on a resizable array buffer.`});return e},c.converters.BufferSource=function(e,t,n,r){if(i.isArrayBuffer(e))return c.converters.ArrayBuffer(e,t,n,r);if(i.isArrayBufferView(e))return r&=~c.attributes.AllowShared,c.converters.ArrayBufferView(e,t,n,r);throw i.isSharedArrayBuffer(e)?c.errors.exception({header:t,message:`${n} cannot be a SharedArrayBuffer.`}):c.errors.conversionFailed({prefix:t,argument:`${n} ("${c.util.Stringify(e)}")`,types:[`ArrayBuffer`,`ArrayBufferView`]})},c.converters.AllowSharedBufferSource=function(e,t,n,r){if(i.isArrayBuffer(e))return c.converters.ArrayBuffer(e,t,n,r);if(i.isSharedArrayBuffer(e))return c.converters.SharedArrayBuffer(e,t,n,r);if(i.isArrayBufferView(e))return r|=c.attributes.AllowShared,c.converters.ArrayBufferView(e,t,n,r);throw c.errors.conversionFailed({prefix:t,argument:`${n} ("${c.util.Stringify(e)}")`,types:[`ArrayBuffer`,`SharedArrayBuffer`,`ArrayBufferView`]})},c.converters[`sequence<ByteString>`]=c.sequenceConverter(c.converters.ByteString),c.converters[`sequence<sequence<ByteString>>`]=c.sequenceConverter(c.converters[`sequence<ByteString>`]),c.converters[`record<ByteString, ByteString>`]=c.recordConverter(c.converters.ByteString,c.converters.ByteString),c.converters.Blob=c.interfaceConverter(c.is.Blob,`Blob`),c.converters.AbortSignal=c.interfaceConverter(c.is.AbortSignal,`AbortSignal`),c.converters.EventHandlerNonNull=function(e){return c.util.Type(e)===8?typeof e==`function`?e:()=>{}:null},c.attributes={Clamp:1,EnforceRange:2,AllowShared:4,AllowResizable:8,LegacyNullToEmptyString:16},n.exports={webidl:c}})),Pa=n(((e,n)=>{let{Transform:r}=t(`node:stream`),i=t(`node:zlib`),{redirectStatusSet:a,referrerPolicyTokens:o,badPortsSet:s}=Da(),{getGlobalOrigin:c}=Oa(),{collectAnHTTPQuotedString:l,parseMIMEType:u}=ja(),{performance:d}=t(`node:perf_hooks`),{ReadableStreamFrom:f,isValidHTTPToken:p,normalizedMethodRecordsBase:m}=q(),h=t(`node:assert`),{isUint8Array:g}=t(`node:util/types`),{webidl:_}=Na(),{isomorphicEncode:v,collectASequenceOfCodePoints:y,removeChars:b}=Aa();function x(e){let t=e.urlList,n=t.length;return n===0?null:t[n-1].toString()}function S(e,t){if(!a.has(e.status))return null;let n=e.headersList.get(`location`,!0);return n!==null&&A(n)&&(C(n)||(n=w(n)),n=new URL(n,x(e))),n&&!n.hash&&(n.hash=t),n}function C(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n>126||n<32)return!1}return!0}function w(e){return Buffer.from(e,`binary`).toString(`utf8`)}function T(e){return e.urlList[e.urlList.length-1]}function E(e){let t=T(e);return xe(t)&&s.has(t.port)?`blocked`:`allowed`}function D(e){return e instanceof Error||e?.constructor?.name===`Error`||e?.constructor?.name===`DOMException`}function O(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(!(n===9||n>=32&&n<=126||n>=128&&n<=255))return!1}return!0}let k=p;function A(e){return(e[0]===` `||e[0]===` `||e[e.length-1]===` `||e[e.length-1]===` `||e.includes(`
|
|
5
|
-
`)||e.includes(`\r`)||e.includes(`\0`))===!1}function j(e){let t=(e.headersList.get(`referrer-policy`,!0)??``).split(`,`),n=``;if(t.length)for(let e=t.length;e!==0;e--){let r=t[e-1].trim();if(o.has(r)){n=r;break}}return n}function M(e,t){let n=j(t);n!==``&&(e.referrerPolicy=n)}function N(){return`allowed`}function P(){return`success`}function F(){return`success`}function I(e){let t=null;t=e.mode,e.headersList.set(`sec-fetch-mode`,t,!0)}function ee(e){let t=e.origin;if(!(t===`client`||t===void 0)){if(e.responseTainting===`cors`||e.mode===`websocket`)e.headersList.append(`origin`,t,!0);else if(e.method!==`GET`&&e.method!==`HEAD`){switch(e.referrerPolicy){case`no-referrer`:t=null;break;case`no-referrer-when-downgrade`:case`strict-origin`:case`strict-origin-when-cross-origin`:e.origin&&be(e.origin)&&!be(T(e))&&(t=null);break;case`same-origin`:de(e,T(e))||(t=null);break;default:}e.headersList.append(`origin`,t,!0)}}}function L(e,t){return e}function te(e,t,n){return!e?.startTime||e.startTime<t?{domainLookupStartTime:t,domainLookupEndTime:t,connectionStartTime:t,connectionEndTime:t,secureConnectionStartTime:t,ALPNNegotiatedProtocol:e?.ALPNNegotiatedProtocol}:{domainLookupStartTime:L(e.domainLookupStartTime,n),domainLookupEndTime:L(e.domainLookupEndTime,n),connectionStartTime:L(e.connectionStartTime,n),connectionEndTime:L(e.connectionEndTime,n),secureConnectionStartTime:L(e.secureConnectionStartTime,n),ALPNNegotiatedProtocol:e.ALPNNegotiatedProtocol}}function R(e){return L(d.now(),e)}function ne(e){return{startTime:e.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:e.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}}function re(){return{referrerPolicy:`strict-origin-when-cross-origin`}}function z(e){return{referrerPolicy:e.referrerPolicy}}function ie(e){let t=e.referrerPolicy;h(t);let n=null;if(e.referrer===`client`){let e=c();if(!e||e.origin===`null`)return`no-referrer`;n=new URL(e)}else _.is.URL(e.referrer)&&(n=e.referrer);let r=ae(n),i=ae(n,!0);switch(r.toString().length>4096&&(r=i),t){case`no-referrer`:return`no-referrer`;case`origin`:return i??ae(n,!0);case`unsafe-url`:return r;case`strict-origin`:{let t=T(e);return B(r)&&!B(t)?`no-referrer`:i}case`strict-origin-when-cross-origin`:{let t=T(e);return de(r,t)?r:B(r)&&!B(t)?`no-referrer`:i}case`same-origin`:return de(e,r)?r:`no-referrer`;case`origin-when-cross-origin`:return de(e,r)?r:i;case`no-referrer-when-downgrade`:{let t=T(e);return B(r)&&!B(t)?`no-referrer`:r}}}function ae(e,t=!1){return h(_.is.URL(e)),e=new URL(e),ye(e)?`no-referrer`:(e.username=``,e.password=``,e.hash=``,t===!0&&(e.pathname=``,e.search=``),e)}let oe=RegExp.prototype.test.bind(/^127\.(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.){2}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)$/),se=RegExp.prototype.test.bind(/^(?:(?:0{1,4}:){7}|(?:0{1,4}:){1,6}:|::)0{0,3}1$/);function ce(e){return e.includes(`:`)?(e[0]===`[`&&e[e.length-1]===`]`&&(e=e.slice(1,-1)),se(e)):oe(e)}function le(e){return e==null||e===`null`?!1:(e=new URL(e),!!(e.protocol===`https:`||e.protocol===`wss:`||ce(e.hostname)||e.hostname===`localhost`||e.hostname===`localhost.`||e.hostname.endsWith(`.localhost`)||e.hostname.endsWith(`.localhost.`)||e.protocol===`file:`))}function B(e){return _.is.URL(e)?e.href===`about:blank`||e.href===`about:srcdoc`||e.protocol===`data:`||e.protocol===`blob:`?!0:le(e.origin):!1}function ue(e){}function de(e,t){return e.origin===t.origin&&e.origin===`null`||e.protocol===t.protocol&&e.hostname===t.hostname&&e.port===t.port}function fe(e){return e.controller.state===`aborted`}function V(e){return e.controller.state===`aborted`||e.controller.state===`terminated`}function pe(e){return m[e.toLowerCase()]??e}let me=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function he(e,t,n=0,r=1){class i{#e;#t;#n;constructor(e,t){this.#e=e,this.#t=t,this.#n=0}next(){if(typeof this!=`object`||this===null||!(#e in this))throw TypeError(`'next' called on an object that does not implement interface ${e} Iterator.`);let i=this.#n,a=t(this.#e);if(i>=a.length)return{value:void 0,done:!0};let{[n]:o,[r]:s}=a[i];this.#n=i+1;let c;switch(this.#t){case`key`:c=o;break;case`value`:c=s;break;case`key+value`:c=[o,s];break}return{value:c,done:!1}}}return delete i.prototype.constructor,Object.setPrototypeOf(i.prototype,me),Object.defineProperties(i.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${e} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(e,t){return new i(e,t)}}function ge(e,t,n,r=0,i=1){let a=he(e,n,r,i),o={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return _.brandCheck(this,t),a(this,`key`)}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return _.brandCheck(this,t),a(this,`value`)}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return _.brandCheck(this,t),a(this,`key+value`)}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(n,r=globalThis){if(_.brandCheck(this,t),_.argumentLengthCheck(arguments,1,`${e}.forEach`),typeof n!=`function`)throw TypeError(`Failed to execute 'forEach' on '${e}': parameter 1 is not of type 'Function'.`);for(let{0:e,1:t}of a(this,`key+value`))n.call(r,t,e,this)}}};return Object.defineProperties(t.prototype,{...o,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:o.entries.value}})}function H(e,t,n){let r=t,i=n;try{ve(e.stream.getReader(),r,i)}catch(e){i(e)}}function _e(e){try{e.close(),e.byobRequest?.respond(0)}catch(e){if(!e.message.includes(`Controller is already closed`)&&!e.message.includes(`ReadableStream is already closed`))throw e}}async function ve(e,t,n){try{let r=[],i=0;do{let{done:a,value:o}=await e.read();if(a){t(Buffer.concat(r,i));return}if(!g(o)){n(TypeError(`Received non-Uint8Array chunk`));return}r.push(o),i+=o.length}while(!0)}catch(e){n(e)}}function ye(e){h(`protocol`in e);let t=e.protocol;return t===`about:`||t===`blob:`||t===`data:`}function be(e){return typeof e==`string`&&e[5]===`:`&&e[0]===`h`&&e[1]===`t`&&e[2]===`t`&&e[3]===`p`&&e[4]===`s`||e.protocol===`https:`}function xe(e){h(`protocol`in e);let t=e.protocol;return t===`http:`||t===`https:`}function Se(e,t){let n=e;if(!n.startsWith(`bytes`))return`failure`;let r={position:5};if(t&&y(e=>e===` `||e===` `,n,r),n.charCodeAt(r.position)!==61)return`failure`;r.position++,t&&y(e=>e===` `||e===` `,n,r);let i=y(e=>{let t=e.charCodeAt(0);return t>=48&&t<=57},n,r),a=i.length?Number(i):null;if(t&&y(e=>e===` `||e===` `,n,r),n.charCodeAt(r.position)!==45)return`failure`;r.position++,t&&y(e=>e===` `||e===` `,n,r);let o=y(e=>{let t=e.charCodeAt(0);return t>=48&&t<=57},n,r),s=o.length?Number(o):null;return r.position<n.length||s===null&&a===null||a>s?`failure`:{rangeStartValue:a,rangeEndValue:s}}function Ce(e,t,n){let r=`bytes `;return r+=v(`${e}`),r+=`-`,r+=v(`${t}`),r+=`/`,r+=v(`${n}`),r}var we=class extends r{#e;constructor(e){super(),this.#e=e}_transform(e,t,n){if(!this._inflateStream){if(e.length===0){n();return}this._inflateStream=(e[0]&15)==8?i.createInflate(this.#e):i.createInflateRaw(this.#e),this._inflateStream.on(`data`,this.push.bind(this)),this._inflateStream.on(`end`,()=>this.push(null)),this._inflateStream.on(`error`,e=>this.destroy(e))}this._inflateStream.write(e,t,n)}_final(e){this._inflateStream&&=(this._inflateStream.end(),null),e()}};function Te(e){return new we(e)}function Ee(e){let t=null,n=null,r=null,i=De(`content-type`,e);if(i===null)return`failure`;for(let e of i){let i=u(e);i===`failure`||i.essence===`*/*`||(r=i,r.essence===n?!r.parameters.has(`charset`)&&t!==null&&r.parameters.set(`charset`,t):(t=null,r.parameters.has(`charset`)&&(t=r.parameters.get(`charset`)),n=r.essence))}return r??`failure`}function U(e){let t=e,n={position:0},r=[],i=``;for(;n.position<t.length;){if(i+=y(e=>e!==`"`&&e!==`,`,t,n),n.position<t.length)if(t.charCodeAt(n.position)===34){if(i+=l(t,n),n.position<t.length)continue}else h(t.charCodeAt(n.position)===44),n.position++;i=b(i,!0,!0,e=>e===9||e===32),r.push(i),i=``}return r}function De(e,t){let n=t.get(e,!0);return n===null?null:U(n)}function Oe(e){return!1}function ke(e){return!!(e.username||e.password)}function Ae(e){return e!=null&&e!==`client`&&e!==`no-traversable`}var je=class{get baseUrl(){return c()}get origin(){return this.baseUrl?.origin}policyContainer=re()};n.exports={isAborted:fe,isCancelled:V,isValidEncodedURL:C,ReadableStreamFrom:f,tryUpgradeRequestToAPotentiallyTrustworthyURL:ue,clampAndCoarsenConnectionTimingInfo:te,coarsenedSharedCurrentTime:R,determineRequestsReferrer:ie,makePolicyContainer:re,clonePolicyContainer:z,appendFetchMetadata:I,appendRequestOriginHeader:ee,TAOCheck:F,corsCheck:P,crossOriginResourcePolicyCheck:N,createOpaqueTimingInfo:ne,setRequestReferrerPolicyOnRedirect:M,isValidHTTPToken:p,requestBadPort:E,requestCurrentURL:T,responseURL:x,responseLocationURL:S,isURLPotentiallyTrustworthy:B,isValidReasonPhrase:O,sameOrigin:de,normalizeMethod:pe,iteratorMixin:ge,createIterator:he,isValidHeaderName:k,isValidHeaderValue:A,isErrorLike:D,fullyReadBody:H,readableStreamClose:_e,urlIsLocal:ye,urlHasHttpsScheme:be,urlIsHttpHttpsScheme:xe,readAllBytes:ve,simpleRangeHeaderValue:Se,buildContentRange:Ce,createInflate:Te,extractMimeType:Ee,getDecodeSplit:De,environmentSettingsObject:new class{settingsObject=new je},isOriginIPPotentiallyTrustworthy:ce,hasAuthenticationEntry:Oe,includesCredentials:ke,isTraversableNavigable:Ae}})),Fa=n(((e,n)=>{let{iteratorMixin:r}=Pa(),{kEnumerableProperty:i}=q(),{webidl:a}=Na(),o=t(`node:util`);var s=class e{#e=[];constructor(e=void 0){if(a.util.markAsUncloneable(this),e!==void 0)throw a.errors.conversionFailed({prefix:`FormData constructor`,argument:`Argument 1`,types:[`undefined`]})}append(t,n,r=void 0){a.brandCheck(this,e);let i=`FormData.append`;a.argumentLengthCheck(arguments,2,i),t=a.converters.USVString(t),arguments.length===3||a.is.Blob(n)?(n=a.converters.Blob(n,i,`value`),r!==void 0&&(r=a.converters.USVString(r))):n=a.converters.USVString(n);let o=u(t,n,r);this.#e.push(o)}delete(t){a.brandCheck(this,e),a.argumentLengthCheck(arguments,1,`FormData.delete`),t=a.converters.USVString(t),this.#e=this.#e.filter(e=>e.name!==t)}get(t){a.brandCheck(this,e),a.argumentLengthCheck(arguments,1,`FormData.get`),t=a.converters.USVString(t);let n=this.#e.findIndex(e=>e.name===t);return n===-1?null:this.#e[n].value}getAll(t){return a.brandCheck(this,e),a.argumentLengthCheck(arguments,1,`FormData.getAll`),t=a.converters.USVString(t),this.#e.filter(e=>e.name===t).map(e=>e.value)}has(t){return a.brandCheck(this,e),a.argumentLengthCheck(arguments,1,`FormData.has`),t=a.converters.USVString(t),this.#e.findIndex(e=>e.name===t)!==-1}set(t,n,r=void 0){a.brandCheck(this,e);let i=`FormData.set`;a.argumentLengthCheck(arguments,2,i),t=a.converters.USVString(t),arguments.length===3||a.is.Blob(n)?(n=a.converters.Blob(n,i,`value`),r!==void 0&&(r=a.converters.USVString(r))):n=a.converters.USVString(n);let o=u(t,n,r),s=this.#e.findIndex(e=>e.name===t);s===-1?this.#e.push(o):this.#e=[...this.#e.slice(0,s),o,...this.#e.slice(s+1).filter(e=>e.name!==t)]}[o.inspect.custom](e,t){let n=this.#e.reduce((e,t)=>(e[t.name]?Array.isArray(e[t.name])?e[t.name].push(t.value):e[t.name]=[e[t.name],t.value]:e[t.name]=t.value,e),{__proto__:null});t.depth??=e,t.colors??=!0;let r=o.formatWithOptions(t,n);return`FormData ${r.slice(r.indexOf(`]`)+2)}`}static getFormDataState(e){return e.#e}static setFormDataState(e,t){e.#e=t}};let{getFormDataState:c,setFormDataState:l}=s;Reflect.deleteProperty(s,`getFormDataState`),Reflect.deleteProperty(s,`setFormDataState`),r(`FormData`,s,c,`name`,`value`),Object.defineProperties(s.prototype,{append:i,delete:i,get:i,getAll:i,has:i,set:i,[Symbol.toStringTag]:{value:`FormData`,configurable:!0}});function u(e,t,n){if(typeof t!=`string`&&(a.is.File(t)||(t=new File([t],`blob`,{type:t.type})),n!==void 0)){let e={type:t.type,lastModified:t.lastModified};t=new File([t],n,e)}return{name:e,value:t}}a.is.FormData=a.util.MakeTypeAssertion(s),n.exports={FormData:s,makeEntry:u,setFormDataState:l}})),Ia=n(((e,n)=>{let{bufferToLowerCasedHeaderName:r}=q(),{HTTP_TOKEN_CODEPOINTS:i}=ja(),{makeEntry:a}=Fa(),{webidl:o}=Na(),s=t(`node:assert`),{isomorphicDecode:c}=Aa(),l=Buffer.from(`--`),u=new TextDecoder,d=new TextDecoder(`utf-8`,{ignoreBOM:!0});function f(e){for(let t=0;t<e.length;++t)if(e.charCodeAt(t)&-128)return!1;return!0}function p(e){let t=e.length;if(t<27||t>70)return!1;for(let n=0;n<t;++n){let t=e.charCodeAt(n);if(!(t>=48&&t<=57||t>=65&&t<=90||t>=97&&t<=122||t===39||t===45||t===95))return!1}return!0}function m(e,t){s(t!==`failure`&&t.essence===`multipart/form-data`);let n=t.parameters.get(`boundary`);if(n===void 0)throw b(`missing boundary in content-type header`);let r=Buffer.from(`--${n}`,`utf8`),i=[],c={position:0},u=e.indexOf(r);if(u===-1)throw b(`no boundary found in multipart body`);for(c.position=u;;){if(e.subarray(c.position,c.position+r.length).equals(r))c.position+=r.length;else throw b(`expected a value starting with -- and the boundary`);if(y(e,l,c))return i;if(e[c.position]!==13||e[c.position+1]!==10)throw b(`expected CRLF`);c.position+=2;let{name:t,filename:n,contentType:u,encoding:p}=g(e,c);c.position+=2;let m;{let t=e.indexOf(r.subarray(2),c.position);if(t===-1)throw b(`expected boundary after body`);m=e.subarray(c.position,t-4),c.position+=m.length,p===`base64`&&(m=Buffer.from(m.toString(),`base64`))}if(e[c.position]!==13||e[c.position+1]!==10)throw b(`expected CRLF`);c.position+=2;let h;n===null?h=d.decode(Buffer.from(m)):(u??=`text/plain`,f(u)||(u=``),h=new File([m],n,{type:u})),s(o.is.USVString(t)),s(typeof h==`string`&&o.is.USVString(h)||o.is.File(h)),i.push(a(t,h,n))}}function h(e,t){e[t.position]===59&&t.position++,_(e=>e===32||e===9,e,t);let n=_(e=>C(e)&&e!==61&&e!==42,e,t);if(n.length===0)return null;let r=n.toString(`ascii`).toLowerCase(),i=e[t.position]===42;if(i&&t.position++,e[t.position]!==61)return null;t.position++,_(e=>e===32||e===9,e,t);let a;if(i){let n=_(e=>e!==32&&e!==13&&e!==10&&e!==59,e,t);if(n[0]!==117&&n[0]!==85||n[1]!==116&&n[1]!==84||n[2]!==102&&n[2]!==70||n[3]!==45||n[4]!==56)throw b(`unknown encoding, expected utf-8''`);a=decodeURIComponent(u.decode(n.subarray(7)))}else if(e[t.position]===34){t.position++;let n=_(e=>e!==10&&e!==13&&e!==34,e,t);if(e[t.position]!==34)throw b(`Closing quote not found`);t.position++,a=u.decode(n).replace(/%0A/gi,`
|
|
6
|
-
`).replace(/%0D/gi,`\r`).replace(/%22/g,`"`)}else{let n=_(e=>C(e)&&e!==59,e,t);a=u.decode(n)}return{name:r,value:a,extended:i}}function g(e,t){let n=null,a=null,o=null,s=null;for(;;){if(e[t.position]===13&&e[t.position+1]===10){if(n===null)throw b(`header name is null`);return{name:n,filename:a,contentType:o,encoding:s}}let l=_(e=>e!==10&&e!==13&&e!==58,e,t);if(l=v(l,!0,!0,e=>e===9||e===32),!i.test(l.toString()))throw b(`header name does not match the field-name token production`);if(e[t.position]!==58)throw b(`expected :`);switch(t.position++,_(e=>e===32||e===9,e,t),r(l)){case`content-disposition`:{n=a=null;let r=!1;if(_(e=>C(e),e,t).toString(`ascii`).toLowerCase()!==`form-data`)throw b(`expected form-data for content-disposition header`);for(;t.position<e.length&&(e[t.position]!==13||e[t.position+1]!==10);){let i=h(e,t);if(!i)break;i.name===`name`?n=i.value:i.name===`filename`&&(i.extended?(a=i.value,r=!0):r||(a=i.value))}if(n===null)throw b(`name attribute is required in content-disposition header`);break}case`content-type`:{let n=_(e=>e!==10&&e!==13,e,t);n=v(n,!1,!0,e=>e===9||e===32),o=c(n);break}case`content-transfer-encoding`:{let n=_(e=>e!==10&&e!==13,e,t);n=v(n,!1,!0,e=>e===9||e===32),s=c(n);break}default:_(e=>e!==10&&e!==13,e,t)}if(e[t.position]!==13||e[t.position+1]!==10)throw b(`expected CRLF`);t.position+=2}}function _(e,t,n){let r=n.position;for(;r<t.length&&e(t[r]);)++r;return t.subarray(n.position,n.position=r)}function v(e,t,n,r){let i=0,a=e.length-1;if(t)for(;i<e.length&&r(e[i]);)i++;if(n)for(;a>0&&r(e[a]);)a--;return i===0&&a===e.length-1?e:e.subarray(i,a+1)}function y(e,t,n){if(e.length<t.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==e[n.position+r])return!1;return!0}function b(e){return TypeError(`Failed to parse body as FormData.`,{cause:TypeError(e)})}function x(e){return e<=31||e===127}function S(e){return e===40||e===41||e===60||e===62||e===64||e===44||e===59||e===58||e===92||e===34||e===47||e===91||e===93||e===63||e===61}function C(e){return e<=127&&e!==32&&e!==9&&!x(e)&&!S(e)}n.exports={multipartFormDataParser:m,validateBoundary:p}})),
|
|
1
|
+
import{a as e,i as t,t as n}from"../../_chunks/workflow/chunk-BHKSVoKr.js";import{a as r,d as i,f as a,l as o,n as s,r as c,t as l,u}from"../../_chunks/workflow/dist-FLIfyJ4Y.js";import{C as d,E as f,T as p,a as m,c as h,f as g,h as _,i as v,l as y,m as b,n as x,o as S,r as C,s as w,t as T,u as E,w as D,y as O}from"../../_chunks/workflow/dist-Dxrjttr2.js";import{$ as k,$n as A,$t as j,An as M,At as N,B as P,Bn as F,Bt as I,Cn as ee,Ct as L,D as te,Dn as R,Dt as ne,E as re,En as z,Et as ie,F as ae,Fn as oe,Ft as se,G as ce,Gn as B,Gt as V,H as le,Hn as ue,Ht as de,I as fe,In as pe,It as me,Jn as he,Jt as ge,K as H,Kn as _e,Kt as ve,L as ye,Ln as be,Lt as xe,M as Se,Mn as Ce,Mt as we,N as U,Nn as Te,Nt as Ee,O as De,On as Oe,Ot as ke,P as Ae,Pn as je,Pt as Me,Qn as Ne,Qt as Pe,R as Fe,Rn as Ie,Rt as Le,St as Re,Tn as ze,Tt as Be,U as Ve,Un as He,Ut as Ue,V as We,Vn as Ge,Vt as Ke,W as qe,Wn as Je,Wt as Ye,X as Xe,Xn as Ze,Xt as Qe,Y as $e,Yn as et,Yt as tt,Z as nt,Zn as rt,Zt as it,_ as at,_r as ot,_t as st,a as ct,an as lt,ar as ut,at as dt,bt as ft,c as pt,cr as mt,ct as ht,d as gt,dn as _t,dt as vt,er as yt,et as bt,f as xt,fn as St,ft as Ct,g as wt,gr as Tt,gt as Et,hn as Dt,hr as Ot,ht as kt,i as At,in as jt,ir as Mt,j as Nt,jn as Pt,jt as Ft,k as It,kn as Lt,kt as Rt,l as zt,lt as Bt,mn as Vt,mt as Ht,n as Ut,nr as Wt,o as Gt,or as Kt,ot as qt,pn as Jt,pr as Yt,pt as Xt,qn as Zt,qt as Qt,rn as $t,rr as en,s as tn,sr as nn,st as rn,tn as an,tr as on,tt as sn,u as cn,un as ln,ut as un,v as dn,vt as fn,wn as pn,wt as mn,x as hn,xn as gn,xt as _n,y as vn,yt as yn,z as W,zn as bn,zt as xn}from"../../_chunks/workflow/attribute-changes-zAifvEhb.js";import{awaitEarlierDeliveries as Sn,getStepFunction as Cn,registerDeliveryBarrier as wn,scheduleWhenIdle as Tn}from"./private.js";import{n as En,r as Dn,t as On}from"../../_chunks/workflow/resume-hook-C15uJ2ik.js";import{a as kn,c as An,d as jn,f as Mn,i as Nn,l as Pn,n as Fn,o as In,r as Ln,s as Rn,t as zn,u as Bn}from"../../_chunks/workflow/run-BJUPZ0Ni.js";import{createRequire as Vn}from"node:module";import{createHash as Hn,webcrypto as Un}from"node:crypto";import{inspect as Wn,promisify as Gn,types as Kn}from"node:util";import{AsyncLocalStorage as qn}from"node:async_hooks";import{fileURLToPath as Jn,pathToFileURL as Yn}from"node:url";import{promises as Xn}from"node:fs";import Zn,{access as Qn,constants as $n,mkdir as er,readFile as tr,readdir as nr,readlink as rr,rm as ir,unlink as ar,writeFile as or}from"node:fs/promises";import G from"node:path";import{execFile as sr}from"node:child_process";import{setTimeout as cr}from"node:timers/promises";import{EventEmitter as lr}from"node:events";import*as ur from"path";import*as dr from"fs";import*as fr from"net";import{createRequire as pr}from"module";import mr from"node:os";import{Script as hr,createContext as gr,runInContext as _r}from"node:vm";function vr(e){return e instanceof Tt||e instanceof Ot||e instanceof ot||e instanceof mt}const yr=`The workflow event log contains orphaned or mismatched events and cannot be replayed. This is an internal workflow SDK error; please report it with the runId.`;function br(e,t){let n=t??Bn(e);return g.is(e)?{attribution:`user`,errorCode:n,hint:`A value passed across a workflow/step boundary could not be serialized. See the error message for the offending path and the Learn More link for details.`}:vr(e)?{attribution:`user`,errorCode:n,hint:`A workflow-only or step-only API was called from the wrong context. The error message includes the exact API and how to move the call.`}:T.is(e)?{attribution:`sdk`,errorCode:n,hint:yr}:e instanceof D?{attribution:`sdk`,errorCode:n,hint:`This is an internal workflow SDK error, not a bug in your code. If it keeps happening, please report it with the stack trace and the runId.`}:n===f.REPLAY_TIMEOUT?{attribution:`sdk`,errorCode:n,hint:'The workflow replay between step boundaries took too long. This bounds workflow-VM and event-log replay time only — step bodies (`"use step"` functions) are excluded. This usually means the event log is unusually large or the workflow function is doing heavy synchronous work in workflow code outside of step bodies. Override the default budget via the WORKFLOW_REPLAY_TIMEOUT_MS env var if needed.'}:n===f.MAX_DELIVERIES_EXCEEDED?{attribution:`sdk`,errorCode:n,hint:`The workflow queue exceeded its max-delivery budget. This usually indicates a persistent runtime failure — check the most recent stack traces for the underlying cause.`}:n===f.CORRUPTED_EVENT_LOG?{attribution:`sdk`,errorCode:n,hint:yr}:n===f.WORLD_CONTRACT_ERROR?{attribution:`sdk`,errorCode:n,hint:`The workflow backend returned data that violated the SDK contract. This is not retryable; please report it with the stack trace and runId.`}:{attribution:`user`,errorCode:n}}const xr=24e4,Sr=3e4,Cr=78e4,wr=new Set;function Tr(e,t,n){wr.has(e)||(wr.add(e),W.warn(t,n))}function Er(){let e=process.env.WORKFLOW_REPLAY_TIMEOUT_MS;if(!e)return xr;let t=Number(e);return!Number.isFinite(t)||t<=0?(Tr(e,`Ignoring WORKFLOW_REPLAY_TIMEOUT_MS: not a positive finite number; using default`,{raw:e,defaultMs:xr}),xr):t<3e4?(Tr(e,`WORKFLOW_REPLAY_TIMEOUT_MS below minimum; clamped`,{raw:e,clampedMs:Sr,minMs:Sr}),Sr):t>78e4?(Tr(e,`WORKFLOW_REPLAY_TIMEOUT_MS above maximum; clamped`,{raw:e,clampedMs:Cr,maxMs:Cr}),Cr):t}const Dr=new Set;function Or(){let e=process.env.WORKFLOW_MAX_INLINE_STEPS;if(!e)return 3;let t=Number(e);return!Number.isInteger(t)||t<=0?(Dr.has(e)||(Dr.add(e),W.warn(`Ignoring WORKFLOW_MAX_INLINE_STEPS: not a positive integer; using default`,{raw:e,defaultValue:3})),3):t<1?1:t>16?(Dr.has(e)||(Dr.add(e),W.warn(`WORKFLOW_MAX_INLINE_STEPS above maximum; clamped`,{raw:e,clampedValue:16,maxValue:16})),16):t}function kr(){let e=process.env.WORKFLOW_OPTIMISTIC_INLINE_START;return e===void 0||e===``?!1:e===`1`||e.toLowerCase()===`true`}function Ar(){let e=process.env.WORKFLOW_OPTIMISTIC_INLINE_START;return e===void 0||e===``?!1:e===`0`||e.toLowerCase()===`false`}function jr(){let e=process.env.WORKFLOW_TURBO;return e===void 0||e===``?!0:!(e===`0`||e.toLowerCase()===`false`)}const Mr=Gn(sr);function Nr(e,t=10){let n=parseInt(e,t);if(!Number.isNaN(n)&&n>=0&&n<=65535)return n}const Pr=((e,t)=>e.join(t))([``,`proc`],`/`);async function Fr(e){let t=[`${Pr}/net/tcp`,`${Pr}/net/tcp6`],n=[],r=new Set,i=`${Pr}/${e}/fd`;try{let e=(await nr(i)).sort((e,t)=>Number.parseInt(e,10)-Number.parseInt(t,10)),t=await Promise.allSettled(e.map(async e=>(await rr(`${i}/${e}`)).match(/^socket:\[(\d+)\]$/)?.[1]??null));for(let e of t)e.status===`fulfilled`&&e.value&&(n.push(e.value),r.add(e.value))}catch{return[]}if(n.length===0)return[];let a=new Map;for(let e of t)try{let t=(await tr(e,`utf8`)).split(`
|
|
2
|
+
`).slice(1);for(let e of t){if(!e.trim())continue;let t=e.trim().split(/\s+/);if(t.length<10)continue;let n=t[1],i=t[3],o=t[9];if(!n||i!==`0A`||!o||!r.has(o))continue;let s=n.indexOf(`:`);if(s===-1)continue;let c=n.slice(s+1);if(!c)continue;let l=Nr(c,16);l!==void 0&&a.set(o,l)}}catch{}let o=[];for(let e of n){let t=a.get(e);t!==void 0&&o.push(t)}return o}async function Ir(e){try{let{stdout:t}=await Mr(`lsof`,[`-a`,`-i`,`-P`,`-n`,`-p`,e.toString()]),n=[],r=t.split(`
|
|
3
|
+
`);for(let e of r)if(e.includes(`LISTEN`)){let t=e.trim().split(/\s+/)[8];if(t){let e=t.lastIndexOf(`:`);if(e!==-1){let r=Nr(t.slice(e+1));r!==void 0&&n.push(r)}}}return n}catch{return[]}}async function Lr(e){try{let{stdout:t}=await Mr(`cmd`,[`/c`,`netstat -ano | findstr ${e} | findstr LISTENING`]),n=[],r=t.trim();if(r){let e=r.split(`
|
|
4
|
+
`);for(let t of e){let e=t.trim().match(/^\s*TCP\s+(?:\[[\da-f:]+\]|[\d.]+):(\d+)\s+/i);if(e){let t=Nr(e[1]);t!==void 0&&n.push(t)}}}return n}catch{return[]}}async function Rr(){let{pid:e,platform:t}=process;try{switch(t){case`linux`:return await Fr(e);case`darwin`:return await Ir(e);case`win32`:return await Lr(e);default:return[]}}catch(e){return process.env.NODE_ENV===`development`&&console.debug(`[getAllPorts] Detection failed:`,e),[]}}async function zr(e,t={}){let{endpoint:n=`/.well-known/workflow/v1/flow?__health`,timeout:r=500}=t,i=new AbortController,a=setTimeout(()=>i.abort(),r);try{return(await fetch(`http://localhost:${e}${n}`,{method:`HEAD`,signal:i.signal})).status===200}catch{return!1}finally{clearTimeout(a)}}async function Br(e){let t=await Rr();if(t.length===0)return;if(t.length===1)return t[0];let n=(await Promise.all(t.map(async t=>({port:t,isWorkflow:await zr(t,e)})))).find(e=>e.isWorkflow);return n?n.port:(process.env.NODE_ENV===`development`&&console.debug(`[getWorkflowPort] Probing failed, falling back to first port:`,t[0]),t[0])}function Vr(e){let t={get value(){let n=e();return Object.defineProperty(t,"value",{value:n}),n}};return t}const Hr=()=>process.env.WORKFLOW_LOCAL_DATA_DIR||`.workflow-data`,Ur=()=>process.env.WORKFLOW_LOCAL_BASE_URL,Wr=Vr(()=>({dataDir:Hr(),baseUrl:Ur()}));async function Gr(e){if(e.baseUrl)return e.baseUrl;if(process.env.WORKFLOW_LOCAL_BASE_URL)return process.env.WORKFLOW_LOCAL_BASE_URL;if(typeof e.port==`number`)return`http://localhost:${e.port}`;if(process.env.PORT)return`http://localhost:${process.env.PORT}`;let t=await Br();if(t)return`http://localhost:${t}`;throw Error(`Unable to resolve base URL for workflow queue.`)}const Kr=R(()=>Math.random());function qr(e){let t=typeof e==`string`?e:String(e);return t.length>48?`${t.slice(0,48)}…`:t}var Jr=class extends p{constructor(e,t){super(`Unsafe ${e} "${qr(t)}": must not be empty, contain ".", "/", "\\", or null bytes`),this.name=`UnsafeEntityIdError`}static is(e){return e instanceof Error&&e.name===`UnsafeEntityIdError`}};function Yr(e,t){if(t.length===0||t.startsWith(`.`)||t.includes(`/`)||t.includes(`\\`)||t.includes(`\0`)||t.includes(`.`))throw new Jr(e,t)}function Xr(e,...t){let n=G.resolve(e),r=G.resolve(e,...t);if(r!==n&&!r.startsWith(n+G.sep))throw new Jr(`path`,t.join(`/`));return r}const Zr=process.platform===`win32`;async function Qr(e,t=5){if(!Zr)return e();let n=[`EPERM`,`EBUSY`,`EACCES`];for(let r=0;r<=t;r++)try{return await e()}catch(e){if(!(r<t&&n.includes(e.code)))throw e;let i=10*2**r+Math.random()*10;await new Promise(e=>setTimeout(e,i))}throw Error(`Retry loop exited unexpectedly`)}const $r=new Set;function ei(){$r.clear()}const ti=/\.[a-zA-Z][a-zA-Z0-9-]*$/;function ni(e){return e.replace(ti,``)}function ri(e,t){return e.endsWith(`.${t}`)}function ii(e){return!ti.test(e)}function ai(e,t,n,r){return Yr(`fileId`,n),r!==void 0&&Yr(`tag`,r),Xr(e,t,r?`${n}.${r}.json`:`${n}.json`)}async function oi(e,t,n,r,i){if(Yr(`fileId`,n),i!==void 0&&Yr(`tag`,i),i){let a=await mi(Xr(e,t,`${n}.${i}.json`),r);if(a!==null)return a}return mi(Xr(e,t,`${n}.json`),r)}async function si(e,t){let n=`.${t}.json`;try{return(await Xn.readdir(e)).filter(e=>e.endsWith(n))}catch(e){if(e.code===`ENOENT`)return[];throw e}}async function ci(e,t,n){let r=`.${t}${n}`;try{return(await Xn.readdir(e)).filter(e=>e.endsWith(r))}catch(e){if(e.code===`ENOENT`)return[];throw e}}async function li(e){try{await Xn.mkdir(e,{recursive:!0})}catch{}}function ui(e,t){return t instanceof Uint8Array?{__type:`Uint8Array`,data:Buffer.from(t).toString(`base64`)}:t}function di(e,t){return typeof t==`object`&&t&&t.__type===`Uint8Array`&&typeof t.data==`string`?new Uint8Array(Buffer.from(t.data,`base64`)):t}async function fi(e,t,n){return pi(e,JSON.stringify(t,ui,2),n)}async function pi(e,t,n){if(!n?.overwrite){if($r.has(e))throw new C(`File ${e} already exists and 'overwrite' is false`);try{throw await Xn.access(e),$r.add(e),new C(`File ${e} already exists and 'overwrite' is false`)}catch(e){if(e.code!==`ENOENT`)throw e}}let r=`${e}.tmp.${Kr()}`,i=!1;try{await li(G.dirname(e)),await Xn.writeFile(r,t),i=!0,await Qr(()=>Xn.rename(r,e)),$r.add(e)}catch(e){throw i&&await Qr(()=>Xn.unlink(r),3).catch(()=>{}),e}}async function mi(e,t){try{let n=await Xn.readFile(e,`utf-8`);return t.parse(JSON.parse(n,di))}catch(e){if(e.code===`ENOENT`)return null;throw e}}async function hi(e){return await Xn.readFile(e)}async function gi(e){let t=await Xn.open(e,`r`);try{let e=Buffer.allocUnsafe(1),{bytesRead:n}=await t.read(e,0,1,0);return n===0?void 0:e[0]}finally{await t.close()}}async function _i(e){try{await Xn.unlink(e)}catch(e){if(e.code!==`ENOENT`)throw e}}async function vi(e,t){await li(G.dirname(e));let n=`${e}.tmp.${Kr()}`,r=!1;try{await Xn.writeFile(n,t,{flag:`wx`}),r=!0;try{return await Qr(()=>Xn.link(n,e)),!0}catch(e){if(e.code===`EEXIST`)return!1;throw e}}finally{r&&await Qr(()=>Xn.unlink(n),3).catch(()=>{})}}async function yi(e){return bi(e,`.json`)}async function bi(e,t){try{return(await Xn.readdir(e)).filter(e=>e.endsWith(t)).map(e=>e.slice(0,-t.length))}catch(e){if(e.code===`ENOENT`)return[];throw e}}function xi(e){if(!e)return null;let t=e.split(`|`);return{timestamp:new Date(t[0]),id:t[1]||null}}function Si(e,t){return t?`${e.toISOString()}|${t}`:e.toISOString()}async function Ci(e){let{directory:t,schema:n,filePrefix:r,fileIdFilter:i,filter:a,sortOrder:o=`desc`,limit:s=20,cursor:c,getCreatedAt:l,getId:u}=e;r!==void 0&&Yr(`filePrefix`,r);let d=await yi(t),f=r?d.filter(e=>e.startsWith(r)):d,p=i?f.filter(i):f,m=xi(c),h=p;m&&(h=p.filter(e=>{let t=l(`${e}.json`);if(t){let e=m.timestamp.getTime(),n=t.getTime();return m.id?o===`desc`?n<=e:n>=e:o===`desc`?n<e:n>e}return!0}));let g=[];for(let e of h){let r=G.join(t,`${e}.json`),i=null;try{i=await mi(r,n)}catch(t){if(t instanceof nn){console.warn(`Skipping item ${e} due to malformed JSON: ${t.message}`);continue}throw t}if(i){if(a&&!a(i))continue;if(m){let e=i.createdAt.getTime(),t=m.timestamp.getTime();if(o===`desc`){if(e>t||e===t&&m.id&&u&&u(i)>=m.id)continue}else if(e<t||e===t&&m.id&&u&&u(i)<=m.id)continue}g.push(i)}}g.sort((e,t)=>{let n=e.createdAt.getTime(),r=t.createdAt.getTime(),i=o===`asc`?n-r:r-n;if(i===0&&u){let n=u(e),r=u(t);return o===`asc`?n.localeCompare(r):r.localeCompare(n)}return i});let _=g.length>s,v=_?g.slice(0,s):g;return{data:v,cursor:v.length>0?Si(v[v.length-1].createdAt,u?.(v[v.length-1])):null,hasMore:_}}let wi=null;function Ti(){return typeof import.meta.url==`string`&&import.meta.url?G.dirname(Jn(import.meta.url)):null}async function Ei(){if(wi)return wi;let e=Ti();if(e)try{let t=await tr(G.join(e,`../package.json`),`utf-8`);return wi=JSON.parse(t),wi}catch{}return wi={name:`@workflow/world-local`,version:`bundled`},wi}const Di=`version.txt`;var Oi=class extends Error{dataDir;code;constructor(e,t,n){super(e),this.name=`DataDirAccessError`,this.dataDir=t,this.code=n}},ki=class extends Error{oldVersion;newVersion;suggestedVersion;constructor(e,t,n,r){super(e),this.name=`DataDirVersionError`,this.oldVersion=t,this.newVersion=n,this.suggestedVersion=r}};function Ai(e){let t=e.match(/^(\d+)\.(\d+)\.(\d+)(?:-(.+))?$/);if(!t)throw Error(`Invalid version string: "${e}"`);return{major:parseInt(t[1],10),minor:parseInt(t[2],10),patch:parseInt(t[3],10),prerelease:t[4],raw:e}}function ji(e){let t=`${e.major}.${e.minor}.${e.patch}`;return e.prerelease?`${t}-${e.prerelease}`:t}function Mi(e){let t=e.trim(),n=t.lastIndexOf(`@`);if(n<=0)throw Error(`Invalid version file content: "${e}"`);return{packageName:t.substring(0,n),version:Ai(t.substring(n+1))}}function Ni(e,t){return`${e}@${ji(t)}`}function Pi(e,t){console.log(`[world-local] Upgrading from version ${ji(e)} to ${ji(t)}`)}async function Fi(e){let t=G.resolve(e);try{await er(t,{recursive:!0})}catch(e){let n=e;if(n.code!==`EEXIST`)throw new Oi(`Failed to create data directory "${t}": ${n.message}`,t,n.code)}try{await Qn(t,$n.R_OK)}catch(e){let n=e;throw new Oi(`Data directory "${t}" is not readable: ${n.message}`,t,n.code)}let n=G.join(t,`.workflow-write-test-${Date.now()}`);try{await or(n,``),await ar(n).catch(e=>{if(e.code!==`ENOENT`)throw e})}catch(e){let n=e;throw new Oi(`Data directory "${t}" is not writable: ${n.message}`,t,n.code)}}async function Ii(e){let t=G.join(G.resolve(e),Di);try{return Mi(await tr(t,`utf-8`))}catch(e){if(e.code===`ENOENT`)return null;throw e}}async function Li(e,t){await or(G.join(G.resolve(e),Di),Ni((await Ei()).name,t))}function Ri(e,t){return t||ji(e)}async function zi(e){await Fi(e);let t=await Ei(),n=Ai(t.version),r=await Ii(e);if(r===null){await Li(e,n);return}let{version:i}=r;if(ji(i)!==ji(n))try{Pi(i,n),await Li(e,n)}catch(e){let r=Ri(i,e instanceof ki?e.suggestedVersion:void 0);throw console.error(`[world-local] Failed to upgrade data directory from version ${ji(i)} to ${ji(n)}:`,e instanceof Error?e.message:e),console.error(`[world-local] Data is not compatible with the current version. Please downgrade to ${t.name}@${r}`),e}}let Bi=null;async function Vi(){return Bi||=import(`../../_chunks/workflow/src-CQuMexnO.js`).then(t=>e(t.t(),1)).catch(()=>null),Bi}let Hi=null;async function Ui(){return Hi||=Vi().then(e=>e?e.trace.getTracer(`workflow`):null),Hi}async function Wi(e,...t){let[n,r]=await Promise.all([Ui(),Vi()]),{fn:i,opts:a}=typeof t[0]==`function`?{fn:t[0],opts:{}}:{fn:t[1],opts:t[0]};if(!i)throw Error(`Function to trace must be provided`);return!n||!r?await i():n.startActiveSpan(e,a,async e=>{try{let t=await i(e);return e.setStatus({code:r.SpanStatusCode.OK}),t}catch(t){throw e.setStatus({code:r.SpanStatusCode.ERROR,message:t.message}),t}finally{e.end()}})}async function Gi(e){let t=await Vi();if(t)return t.SpanKind[e]}function Ki(...e){return t=>Object.fromEntries(e.map(e=>[e,t]))}const qi=Ki(`peer.service`),Ji=Ki(`rpc.system`),Yi=Ki(`rpc.service`),Xi=Ki(`rpc.method`),Zi=Ki(`workflow.run.id`),Qi=Ki(`step.id`),$i={peerService:`world-local`,rpcSystem:`local`,rpcService:`world-local`},ea={"world.runs.get":0,"world.runs.experimentalSetAttributes":0,"world.steps.get":0,"world.events.create":0,"world.events.get":0},ta=new Set([`world.steps.list`,`world.events.list`,`world.hooks.list`]);function na(e){if(e.length>=2&&typeof e[1]==`object`&&e[1]!==null){let t=e[1];if(typeof t.eventType==`string`)return t.eventType}}function ra(e,t){return typeof e[t]==`string`?e[t]:void 0}function ia(e){if(typeof e!=`object`||!e)return;let t=e.runId;return typeof t==`string`?t:void 0}function aa(e){if(typeof e!=`object`||!e)return;let t=e;if(typeof t.runId==`string`)return t.runId;for(let e of[`run`,`step`,`hook`,`wait`]){let n=t[e];if(typeof n==`object`&&n){let e=n.runId;if(typeof e==`string`)return e}}}function oa(e,t,n){let r=`${e}.${t}`,i={},a=ea[r],o=a===void 0?ta.has(r)?ia(n[0]):void 0:ra(n,a);if(o&&Object.assign(i,Zi(o)),r===`world.steps.get`){let e=ra(n,1);e&&Object.assign(i,Qi(e))}return i}function sa(e,t){let n={};for(let r of Object.keys(t))if(typeof t[r]!=`function`)n[r]=t[r];else{let i=t[r],a=String(r);n[r]=async(...t)=>{let n=`${e}.${a}`;if(e===`world.events`&&a===`create`){let r=na(t);r&&(n=`${e}.${a} ${r}`)}return Wi(n,{kind:await Gi(`INTERNAL`)},async r=>{r?.setAttributes({...qi($i.peerService),...Ji($i.rpcSystem),...Yi($i.rpcService),...Xi(n),...oa(e,a,t)});let o=await i(...t),s=aa(o);return s&&r?.setAttributes(Zi(s)),o})}}return n}var ca=n((e=>{var n=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,"__esModule",{value:!0}),e.RateLimit=e.Sema=void 0;let r=n(t(`events`));function i(e,t,n,r,i){for(let a=0;a<i;++a)n[a+r]=e[a+t],e[a+t]=void 0}function a(e){return e>>>=0,--e,e|=e>>1,e|=e>>2,e|=e>>4,e|=e>>8,e|=e>>16,e+1}function o(e){return a(Math.min(Math.max(16,e),1073741824))}var s=class{constructor(e){this._capacity=o(e),this._length=0,this._front=0,this.arr=[]}push(e){let t=this._length;this.checkCapacity(t+1);let n=this._front+t&this._capacity-1;return this.arr[n]=e,this._length=t+1,t+1}pop(){let e=this._length;if(e===0)return;let t=this._front+e-1&this._capacity-1,n=this.arr[t];return this.arr[t]=void 0,this._length=e-1,n}shift(){let e=this._length;if(e===0)return;let t=this._front,n=this.arr[t];return this.arr[t]=void 0,this._front=t+1&this._capacity-1,this._length=e-1,n}get length(){return this._length}checkCapacity(e){this._capacity<e&&this.resizeTo(o(this._capacity*1.5+16))}resizeTo(e){let t=this._capacity;this._capacity=e;let n=this._front,r=this._length;if(n+r>t){let e=n+r&t-1;i(this.arr,0,this.arr,t,e)}}},c=class extends r.default{};function l(e){return typeof e==`function`}function u(){return`1`}var d=class{constructor(e,{initFn:t=u,pauseFn:n,resumeFn:r,capacity:i=10}={}){if(l(n)!==l(r))throw Error(`pauseFn and resumeFn must be both set for pausing`);this.nrTokens=e,this.free=new s(e),this.waiting=new s(i),this.releaseEmitter=new c,this.noTokens=t===u,this.pauseFn=n,this.resumeFn=r,this.paused=!1,this.releaseEmitter.on(`release`,e=>{let t=this.waiting.shift();t?t.resolve(e):(this.resumeFn&&this.paused&&(this.paused=!1,this.resumeFn()),this.free.push(e))});for(let n=0;n<e;n++)this.free.push(t())}tryAcquire(){return this.free.pop()}async acquire(){let e=this.tryAcquire();return e===void 0?new Promise((e,t)=>{this.pauseFn&&!this.paused&&(this.paused=!0,this.pauseFn()),this.waiting.push({resolve:e,reject:t})}):e}release(e){this.releaseEmitter.emit(`release`,this.noTokens?`1`:e)}drain(){let e=Array(this.nrTokens);for(let t=0;t<this.nrTokens;t++)e[t]=this.acquire();return Promise.all(e)}nrWaiting(){return this.waiting.length}};e.Sema=d;function f(e,{timeUnit:t=1e3,uniformDistribution:n=!1}={}){let r=new d(n?1:e),i=n?t/e:t;return async function(){await r.acquire(),setTimeout(()=>r.release(),i)}}e.RateLimit=f})),la=n(((e,t)=>{t.exports={kClose:Symbol(`close`),kDestroy:Symbol(`destroy`),kDispatch:Symbol(`dispatch`),kUrl:Symbol(`url`),kWriting:Symbol(`writing`),kResuming:Symbol(`resuming`),kQueue:Symbol(`queue`),kConnect:Symbol(`connect`),kConnecting:Symbol(`connecting`),kKeepAliveDefaultTimeout:Symbol(`default keep alive timeout`),kKeepAliveMaxTimeout:Symbol(`max keep alive timeout`),kKeepAliveTimeoutThreshold:Symbol(`keep alive timeout threshold`),kKeepAliveTimeoutValue:Symbol(`keep alive timeout`),kKeepAlive:Symbol(`keep alive`),kHeadersTimeout:Symbol(`headers timeout`),kBodyTimeout:Symbol(`body timeout`),kServerName:Symbol(`server name`),kLocalAddress:Symbol(`local address`),kHost:Symbol(`host`),kNoRef:Symbol(`no ref`),kBodyUsed:Symbol(`used`),kBody:Symbol(`abstracted request body`),kRunning:Symbol(`running`),kBlocking:Symbol(`blocking`),kPending:Symbol(`pending`),kSize:Symbol(`size`),kBusy:Symbol(`busy`),kQueued:Symbol(`queued`),kFree:Symbol(`free`),kConnected:Symbol(`connected`),kClosed:Symbol(`closed`),kNeedDrain:Symbol(`need drain`),kReset:Symbol(`reset`),kDestroyed:Symbol.for(`nodejs.stream.destroyed`),kResume:Symbol(`resume`),kOnError:Symbol(`on error`),kMaxHeadersSize:Symbol(`max headers size`),kRunningIdx:Symbol(`running index`),kPendingIdx:Symbol(`pending index`),kError:Symbol(`error`),kClients:Symbol(`clients`),kClient:Symbol(`client`),kParser:Symbol(`parser`),kOnDestroyed:Symbol(`destroy callbacks`),kPipelining:Symbol(`pipelining`),kSocket:Symbol(`socket`),kHostHeader:Symbol(`host header`),kConnector:Symbol(`connector`),kStrictContentLength:Symbol(`strict content length`),kMaxRedirections:Symbol(`maxRedirections`),kMaxRequests:Symbol(`maxRequestsPerClient`),kProxy:Symbol(`proxy agent options`),kCounter:Symbol(`socket request counter`),kMaxResponseSize:Symbol(`max response size`),kHTTP2Session:Symbol(`http2Session`),kHTTP2SessionState:Symbol(`http2Session state`),kRetryHandlerDefaultRetry:Symbol(`retry agent default retry`),kConstruct:Symbol(`constructable`),kListeners:Symbol(`listeners`),kHTTPContext:Symbol(`http context`),kMaxConcurrentStreams:Symbol(`max concurrent streams`),kHTTP2InitialWindowSize:Symbol(`http2 initial window size`),kHTTP2ConnectionWindowSize:Symbol(`http2 connection window size`),kEnableConnectProtocol:Symbol(`http2session connect protocol`),kRemoteSettings:Symbol(`http2session remote settings`),kHTTP2Stream:Symbol(`http2session client stream`),kPingInterval:Symbol(`ping interval`),kNoProxyAgent:Symbol(`no proxy agent`),kHttpProxyAgent:Symbol(`http proxy agent`),kHttpsProxyAgent:Symbol(`https proxy agent`),kSocks5ProxyAgent:Symbol(`socks5 proxy agent`)}})),ua=n(((e,t)=>{let n=0,r=1e3,i,a=Symbol(`kFastTimer`),o=[];function s(){n+=499;let e=0,t=o.length;for(;e<t;){let r=o[e];r._state===0?(r._idleStart=n-499,r._state=1):r._state===1&&n>=r._idleStart+r._idleTimeout&&(r._state=-1,r._idleStart=-1,r._onTimeout(r._timerArg)),r._state===-1?(r._state=-2,--t!==0&&(o[e]=o[t])):++e}o.length=t,o.length!==0&&c()}function c(){i?.refresh?i.refresh():(clearTimeout(i),i=setTimeout(s,499),i?.unref())}var l=class{[a]=!0;_state=-2;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(e,t,n){this._onTimeout=e,this._idleTimeout=t,this._timerArg=n,this.refresh()}refresh(){this._state===-2&&o.push(this),(!i||o.length===1)&&c(),this._state=0}clear(){this._state=-1,this._idleStart=-1}};t.exports={setTimeout(e,t,n){return t<=r?setTimeout(e,t,n):new l(e,t,n)},clearTimeout(e){e[a]?e.clear():clearTimeout(e)},setFastTimeout(e,t,n){return new l(e,t,n)},clearFastTimeout(e){e.clear()},now(){return n},tick(e=0){n+=e-r+1,s(),s()},reset(){n=0,o.length=0,clearTimeout(i),i=null},kFastTimer:a}})),K=n(((e,t)=>{let n=Symbol.for(`undici.error.UND_ERR`);var r=class extends Error{constructor(e,t){super(e,t),this.name=`UndiciError`,this.code=`UND_ERR`}static[Symbol.hasInstance](e){return e&&e[n]===!0}get[n](){return!0}};let i=Symbol.for(`undici.error.UND_ERR_CONNECT_TIMEOUT`);var a=class extends r{constructor(e){super(e),this.name=`ConnectTimeoutError`,this.message=e||`Connect Timeout Error`,this.code=`UND_ERR_CONNECT_TIMEOUT`}static[Symbol.hasInstance](e){return e&&e[i]===!0}get[i](){return!0}};let o=Symbol.for(`undici.error.UND_ERR_HEADERS_TIMEOUT`);var s=class extends r{constructor(e){super(e),this.name=`HeadersTimeoutError`,this.message=e||`Headers Timeout Error`,this.code=`UND_ERR_HEADERS_TIMEOUT`}static[Symbol.hasInstance](e){return e&&e[o]===!0}get[o](){return!0}};let c=Symbol.for(`undici.error.UND_ERR_HEADERS_OVERFLOW`);var l=class extends r{constructor(e){super(e),this.name=`HeadersOverflowError`,this.message=e||`Headers Overflow Error`,this.code=`UND_ERR_HEADERS_OVERFLOW`}static[Symbol.hasInstance](e){return e&&e[c]===!0}get[c](){return!0}};let u=Symbol.for(`undici.error.UND_ERR_BODY_TIMEOUT`);var d=class extends r{constructor(e){super(e),this.name=`BodyTimeoutError`,this.message=e||`Body Timeout Error`,this.code=`UND_ERR_BODY_TIMEOUT`}static[Symbol.hasInstance](e){return e&&e[u]===!0}get[u](){return!0}};let f=Symbol.for(`undici.error.UND_ERR_INVALID_ARG`);var p=class extends r{constructor(e){super(e),this.name=`InvalidArgumentError`,this.message=e||`Invalid Argument Error`,this.code=`UND_ERR_INVALID_ARG`}static[Symbol.hasInstance](e){return e&&e[f]===!0}get[f](){return!0}};let m=Symbol.for(`undici.error.UND_ERR_INVALID_RETURN_VALUE`);var h=class extends r{constructor(e){super(e),this.name=`InvalidReturnValueError`,this.message=e||`Invalid Return Value Error`,this.code=`UND_ERR_INVALID_RETURN_VALUE`}static[Symbol.hasInstance](e){return e&&e[m]===!0}get[m](){return!0}};let g=Symbol.for(`undici.error.UND_ERR_ABORT`);var _=class extends r{constructor(e){super(e),this.name=`AbortError`,this.message=e||`The operation was aborted`,this.code=`UND_ERR_ABORT`}static[Symbol.hasInstance](e){return e&&e[g]===!0}get[g](){return!0}};let v=Symbol.for(`undici.error.UND_ERR_ABORTED`);var y=class extends _{constructor(e){super(e),this.name=`AbortError`,this.message=e||`Request aborted`,this.code=`UND_ERR_ABORTED`}static[Symbol.hasInstance](e){return e&&e[v]===!0}get[v](){return!0}};let b=Symbol.for(`undici.error.UND_ERR_INFO`);var x=class extends r{constructor(e){super(e),this.name=`InformationalError`,this.message=e||`Request information`,this.code=`UND_ERR_INFO`}static[Symbol.hasInstance](e){return e&&e[b]===!0}get[b](){return!0}};let S=Symbol.for(`undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH`);var C=class extends r{constructor(e){super(e),this.name=`RequestContentLengthMismatchError`,this.message=e||`Request body length does not match content-length header`,this.code=`UND_ERR_REQ_CONTENT_LENGTH_MISMATCH`}static[Symbol.hasInstance](e){return e&&e[S]===!0}get[S](){return!0}};let w=Symbol.for(`undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH`);var T=class extends r{constructor(e){super(e),this.name=`ResponseContentLengthMismatchError`,this.message=e||`Response body length does not match content-length header`,this.code=`UND_ERR_RES_CONTENT_LENGTH_MISMATCH`}static[Symbol.hasInstance](e){return e&&e[w]===!0}get[w](){return!0}};let E=Symbol.for(`undici.error.UND_ERR_DESTROYED`);var D=class extends r{constructor(e){super(e),this.name=`ClientDestroyedError`,this.message=e||`The client is destroyed`,this.code=`UND_ERR_DESTROYED`}static[Symbol.hasInstance](e){return e&&e[E]===!0}get[E](){return!0}};let O=Symbol.for(`undici.error.UND_ERR_CLOSED`);var k=class extends r{constructor(e){super(e),this.name=`ClientClosedError`,this.message=e||`The client is closed`,this.code=`UND_ERR_CLOSED`}static[Symbol.hasInstance](e){return e&&e[O]===!0}get[O](){return!0}};let A=Symbol.for(`undici.error.UND_ERR_SOCKET`);var j=class extends r{constructor(e,t){super(e),this.name=`SocketError`,this.message=e||`Socket error`,this.code=`UND_ERR_SOCKET`,this.socket=t}static[Symbol.hasInstance](e){return e&&e[A]===!0}get[A](){return!0}};let M=Symbol.for(`undici.error.UND_ERR_NOT_SUPPORTED`);var N=class extends r{constructor(e){super(e),this.name=`NotSupportedError`,this.message=e||`Not supported error`,this.code=`UND_ERR_NOT_SUPPORTED`}static[Symbol.hasInstance](e){return e&&e[M]===!0}get[M](){return!0}};let P=Symbol.for(`undici.error.UND_ERR_BPL_MISSING_UPSTREAM`);var F=class extends r{constructor(e){super(e),this.name=`MissingUpstreamError`,this.message=e||`No upstream has been added to the BalancedPool`,this.code=`UND_ERR_BPL_MISSING_UPSTREAM`}static[Symbol.hasInstance](e){return e&&e[P]===!0}get[P](){return!0}};let I=Symbol.for(`undici.error.UND_ERR_HTTP_PARSER`);var ee=class extends Error{constructor(e,t,n){super(e),this.name=`HTTPParserError`,this.code=t?`HPE_${t}`:void 0,this.data=n?n.toString():void 0}static[Symbol.hasInstance](e){return e&&e[I]===!0}get[I](){return!0}};let L=Symbol.for(`undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE`);var te=class extends r{constructor(e){super(e),this.name=`ResponseExceededMaxSizeError`,this.message=e||`Response content exceeded max size`,this.code=`UND_ERR_RES_EXCEEDED_MAX_SIZE`}static[Symbol.hasInstance](e){return e&&e[L]===!0}get[L](){return!0}};let R=Symbol.for(`undici.error.UND_ERR_REQ_RETRY`);var ne=class extends r{constructor(e,t,{headers:n,data:r}){super(e),this.name=`RequestRetryError`,this.message=e||`Request retry error`,this.code=`UND_ERR_REQ_RETRY`,this.statusCode=t,this.data=r,this.headers=n}static[Symbol.hasInstance](e){return e&&e[R]===!0}get[R](){return!0}};let re=Symbol.for(`undici.error.UND_ERR_RESPONSE`);var z=class extends r{constructor(e,t,{headers:n,body:r}){super(e),this.name=`ResponseError`,this.message=e||`Response error`,this.code=`UND_ERR_RESPONSE`,this.statusCode=t,this.body=r,this.headers=n}static[Symbol.hasInstance](e){return e&&e[re]===!0}get[re](){return!0}};let ie=Symbol.for(`undici.error.UND_ERR_PRX_TLS`);var ae=class extends r{constructor(e,t,n={}){super(t,{cause:e,...n}),this.name=`SecureProxyConnectionError`,this.message=t||`Secure Proxy Connection failed`,this.code=`UND_ERR_PRX_TLS`,this.cause=e}static[Symbol.hasInstance](e){return e&&e[ie]===!0}get[ie](){return!0}};let oe=Symbol.for(`undici.error.UND_ERR_MAX_ORIGINS_REACHED`);var se=class extends r{constructor(e){super(e),this.name=`MaxOriginsReachedError`,this.message=e||`Maximum allowed origins reached`,this.code=`UND_ERR_MAX_ORIGINS_REACHED`}static[Symbol.hasInstance](e){return e&&e[oe]===!0}get[oe](){return!0}},ce=class extends r{constructor(e,t){super(e),this.name=`Socks5ProxyError`,this.message=e||`SOCKS5 proxy error`,this.code=t||`UND_ERR_SOCKS5`}};let B=Symbol.for(`undici.error.UND_ERR_WS_MESSAGE_SIZE_EXCEEDED`);t.exports={AbortError:_,HTTPParserError:ee,UndiciError:r,HeadersTimeoutError:s,HeadersOverflowError:l,BodyTimeoutError:d,RequestContentLengthMismatchError:C,ConnectTimeoutError:a,InvalidArgumentError:p,InvalidReturnValueError:h,RequestAbortedError:y,ClientDestroyedError:D,ClientClosedError:k,InformationalError:x,SocketError:j,NotSupportedError:N,ResponseContentLengthMismatchError:T,BalancedPoolMissingUpstreamError:F,ResponseExceededMaxSizeError:te,RequestRetryError:ne,ResponseError:z,SecureProxyConnectionError:ae,MaxOriginsReachedError:se,Socks5ProxyError:ce,MessageSizeExceededError:class extends r{constructor(e){super(e),this.name=`MessageSizeExceededError`,this.message=e||`Max decompressed message size exceeded`,this.code=`UND_ERR_WS_MESSAGE_SIZE_EXCEEDED`}static[Symbol.hasInstance](e){return e&&e[B]===!0}get[B](){return!0}}}})),da=n(((e,t)=>{let n=`Accept.Accept-Encoding.Accept-Language.Accept-Ranges.Access-Control-Allow-Credentials.Access-Control-Allow-Headers.Access-Control-Allow-Methods.Access-Control-Allow-Origin.Access-Control-Expose-Headers.Access-Control-Max-Age.Access-Control-Request-Headers.Access-Control-Request-Method.Age.Allow.Alt-Svc.Alt-Used.Authorization.Cache-Control.Clear-Site-Data.Connection.Content-Disposition.Content-Encoding.Content-Language.Content-Length.Content-Location.Content-Range.Content-Security-Policy.Content-Security-Policy-Report-Only.Content-Type.Cookie.Cross-Origin-Embedder-Policy.Cross-Origin-Opener-Policy.Cross-Origin-Resource-Policy.Date.Device-Memory.Downlink.ECT.ETag.Expect.Expect-CT.Expires.Forwarded.From.Host.If-Match.If-Modified-Since.If-None-Match.If-Range.If-Unmodified-Since.Keep-Alive.Last-Modified.Link.Location.Max-Forwards.Origin.Permissions-Policy.Pragma.Proxy-Authenticate.Proxy-Authorization.RTT.Range.Referer.Referrer-Policy.Refresh.Retry-After.Sec-WebSocket-Accept.Sec-WebSocket-Extensions.Sec-WebSocket-Key.Sec-WebSocket-Protocol.Sec-WebSocket-Version.Server.Server-Timing.Service-Worker-Allowed.Service-Worker-Navigation-Preload.Set-Cookie.SourceMap.Strict-Transport-Security.Supports-Loading-Mode.TE.Timing-Allow-Origin.Trailer.Transfer-Encoding.Upgrade.Upgrade-Insecure-Requests.User-Agent.Vary.Via.WWW-Authenticate.X-Content-Type-Options.X-DNS-Prefetch-Control.X-Frame-Options.X-Permitted-Cross-Domain-Policies.X-Powered-By.X-Requested-With.X-XSS-Protection`.split(`.`),r={};Object.setPrototypeOf(r,null);let i={};Object.setPrototypeOf(i,null);function a(e){let t=i[e];return t===void 0&&(t=Buffer.from(e)),t}for(let e=0;e<n.length;++e){let t=n[e],i=t.toLowerCase();r[t]=r[i]=i}t.exports={wellknownHeaderNames:n,headerNameLowerCasedRecord:r,getHeaderNameAsBuffer:a}})),fa=n(((e,t)=>{let{wellknownHeaderNames:n,headerNameLowerCasedRecord:r}=da();var i=class e{value=null;left=null;middle=null;right=null;code;constructor(t,n,r){if(r===void 0||r>=t.length)throw TypeError(`Unreachable`);if((this.code=t.charCodeAt(r))>127)throw TypeError(`key must be ascii string`);t.length===++r?this.value=n:this.middle=new e(t,n,r)}add(t,n){let r=t.length;if(r===0)throw TypeError(`Unreachable`);let i=0,a=this;for(;;){let o=t.charCodeAt(i);if(o>127)throw TypeError(`key must be ascii string`);if(a.code===o)if(r===++i){a.value=n;break}else if(a.middle!==null)a=a.middle;else{a.middle=new e(t,n,i);break}else if(a.code<o)if(a.left!==null)a=a.left;else{a.left=new e(t,n,i);break}else if(a.right!==null)a=a.right;else{a.right=new e(t,n,i);break}}}search(e){let t=e.length,n=0,r=this;for(;r!==null&&n<t;){let i=e[n];for(i<=90&&i>=65&&(i|=32);r!==null;){if(i===r.code){if(t===++n)return r;r=r.middle;break}r=r.code<i?r.left:r.right}}return null}},a=class{node=null;insert(e,t){this.node===null?this.node=new i(e,t,0):this.node.add(e,t)}lookup(e){return this.node?.search(e)?.value??null}};let o=new a;for(let e=0;e<n.length;++e){let t=r[n[e]];o.insert(t,t)}t.exports={TernarySearchTree:a,tree:o}})),q=n(((e,n)=>{let r=t(`node:assert`),{kDestroyed:i,kBodyUsed:a,kListeners:o,kBody:s}=la(),{IncomingMessage:c}=t(`node:http`),l=t(`node:stream`),u=t(`node:net`),{stringify:d}=t(`node:querystring`),{EventEmitter:f}=t(`node:events`),p=ua(),{InvalidArgumentError:m,ConnectTimeoutError:h}=K(),{headerNameLowerCasedRecord:g}=da(),{tree:_}=fa(),[v,y]=process.versions.node.split(`.`,2).map(e=>Number(e));var b=class{constructor(e){this[s]=e,this[a]=!1}async*[Symbol.asyncIterator](){r(!this[a],`disturbed`),this[a]=!0,yield*this[s]}};function x(){}function S(e){return C(e)?(ee(e)===0&&e.on(`data`,function(){r(!1)}),typeof e.readableDidRead!=`boolean`&&(e[a]=!1,f.prototype.on.call(e,`data`,function(){this[a]=!0})),e):e&&typeof e.pipeTo==`function`?new b(e):e&&ue(e)?e:e&&typeof e!=`string`&&!ArrayBuffer.isView(e)&&F(e)?new b(e):e}function C(e){return e&&typeof e==`object`&&typeof e.pipe==`function`&&typeof e.on==`function`}function w(e){if(e===null)return!1;if(e instanceof Blob)return!0;if(typeof e!=`object`)return!1;{let t=e[Symbol.toStringTag];return(t===`Blob`||t===`File`)&&(`stream`in e&&typeof e.stream==`function`||`arrayBuffer`in e&&typeof e.arrayBuffer==`function`)}}function T(e){return e.includes(`?`)||e.includes(`#`)}function E(e,t){if(T(e))throw Error(`Query params cannot be passed when url already contains "?" or "#".`);let n=d(t);return n&&(e+=`?`+n),e}function D(e){let t=parseInt(e,10);return t===Number(e)&&t>=0&&t<=65535}function O(e){return e!=null&&e[0]===`h`&&e[1]===`t`&&e[2]===`t`&&e[3]===`p`&&(e[4]===`:`||e[4]===`s`&&e[5]===`:`)}function k(e){if(typeof e==`string`){if(e=new URL(e),!O(e.origin||e.protocol))throw new m("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!=`object`)throw new m(`Invalid URL: The URL argument must be a non-null object.`);if(!(e instanceof URL)){if(e.port!=null&&e.port!==``&&D(e.port)===!1)throw new m(`Invalid URL: port must be a valid integer or a string representation of an integer.`);if(e.path!=null&&typeof e.path!=`string`)throw new m(`Invalid URL path: the path must be a string or null/undefined.`);if(e.pathname!=null&&typeof e.pathname!=`string`)throw new m(`Invalid URL pathname: the pathname must be a string or null/undefined.`);if(e.hostname!=null&&typeof e.hostname!=`string`)throw new m(`Invalid URL hostname: the hostname must be a string or null/undefined.`);if(e.origin!=null&&typeof e.origin!=`string`)throw new m(`Invalid URL origin: the origin must be a string or null/undefined.`);if(!O(e.origin||e.protocol))throw new m("Invalid URL protocol: the URL must start with `http:` or `https:`.");let t=e.port==null?e.protocol===`https:`?443:80:e.port,n=e.origin==null?`${e.protocol||``}//${e.hostname||``}:${t}`:e.origin,r=e.path==null?`${e.pathname||``}${e.search||``}`:e.path;return n[n.length-1]===`/`&&(n=n.slice(0,n.length-1)),r&&r[0]!==`/`&&(r=`/${r}`),new URL(`${n}${r}`)}if(!O(e.origin||e.protocol))throw new m("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}function A(e){if(e=k(e),e.pathname!==`/`||e.search||e.hash)throw new m(`invalid url`);return e}function j(e){if(e[0]===`[`){let t=e.indexOf(`]`);return r(t!==-1),e.substring(1,t)}let t=e.indexOf(`:`);return t===-1?e:e.substring(0,t)}function M(e){if(!e)return null;r(typeof e==`string`);let t=j(e);return u.isIP(t)?``:t}function N(e){return JSON.parse(JSON.stringify(e))}function P(e){return e!=null&&typeof e[Symbol.asyncIterator]==`function`}function F(e){return e!=null&&(typeof e[Symbol.iterator]==`function`||typeof e[Symbol.asyncIterator]==`function`)}function I(e){let t=Object.getPrototypeOf(e);return Object.prototype.hasOwnProperty.call(e,Symbol.iterator)||t!=null&&t!==Object.prototype&&typeof e[Symbol.iterator]==`function`}function ee(e){if(e==null)return 0;if(C(e)){let t=e._readableState;return t&&t.objectMode===!1&&t.ended===!0&&Number.isFinite(t.length)?t.length:null}else if(w(e))return e.size==null?null:e.size;else if(se(e))return e.byteLength;return null}function L(e){return e&&!!(e.destroyed||e[i]||l.isDestroyed?.(e))}function te(e,t){e==null||!C(e)||L(e)||(typeof e.destroy==`function`?(Object.getPrototypeOf(e).constructor===c&&(e.socket=null),e.destroy(t)):t&&queueMicrotask(()=>{e.emit(`error`,t)}),e.destroyed!==!0&&(e[i]=!0))}let R=/timeout=(\d+)/;function ne(e){let t=e.match(R);return t?parseInt(t[1],10)*1e3:null}function re(e){return typeof e==`string`?g[e]??e.toLowerCase():_.lookup(e)??e.toString(`latin1`).toLowerCase()}function z(e){return _.lookup(e)??e.toString(`latin1`).toLowerCase()}function ie(e,t){t===void 0&&(t={});for(let n=0;n<e.length;n+=2){let r=re(e[n]),i=t[r];if(i!==void 0)if(Object.hasOwn(t,r))typeof i==`string`&&(i=[i],t[r]=i),i.push(e[n+1].toString(`latin1`));else{let i=typeof e[n+1]==`string`?e[n+1]:Array.isArray(e[n+1])?e[n+1].map(e=>e.toString(`latin1`)):e[n+1].toString(`latin1`);r===`__proto__`?Object.defineProperty(t,r,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[r]=i}else{let i=typeof e[n+1]==`string`?e[n+1]:Array.isArray(e[n+1])?e[n+1].map(e=>e.toString(`latin1`)):e[n+1].toString(`latin1`);t[r]=i}}return t}function ae(e){let t=e.length,n=Array(t),r,i;for(let a=0;a<t;a+=2)r=e[a],i=e[a+1],typeof r!=`string`&&(r=r.toString()),typeof i!=`string`&&(i=i.toString(`latin1`)),n[a]=r,n[a+1]=i;return n}function oe(e){if(!Array.isArray(e))throw TypeError(`expected headers to be an array`);return e.map(e=>Buffer.from(e))}function se(e){return e instanceof Uint8Array||Buffer.isBuffer(e)}function ce(e,t,n){if(!e||typeof e!=`object`)throw new m(`handler must be an object`);if(typeof e.onRequestStart!=`function`){if(typeof e.onConnect!=`function`)throw new m(`invalid onConnect method`);if(typeof e.onError!=`function`)throw new m(`invalid onError method`);if(typeof e.onBodySent!=`function`&&e.onBodySent!==void 0)throw new m(`invalid onBodySent method`);if(n||t===`CONNECT`){if(typeof e.onUpgrade!=`function`)throw new m(`invalid onUpgrade method`)}else{if(typeof e.onHeaders!=`function`)throw new m(`invalid onHeaders method`);if(typeof e.onData!=`function`)throw new m(`invalid onData method`);if(typeof e.onComplete!=`function`)throw new m(`invalid onComplete method`)}}}function B(e){return!!(e&&(l.isDisturbed(e)||e[a]))}function V(e){return{localAddress:e.localAddress,localPort:e.localPort,remoteAddress:e.remoteAddress,remotePort:e.remotePort,remoteFamily:e.remoteFamily,timeout:e.timeout,bytesWritten:e.bytesWritten,bytesRead:e.bytesRead}}function le(e){let t;return new ReadableStream({start(){t=e[Symbol.asyncIterator]()},pull(e){return t.next().then(({done:t,value:n})=>{if(t)return queueMicrotask(()=>{e.close(),e.byobRequest?.respond(0)});{let t=Buffer.isBuffer(n)?n:Buffer.from(n);return t.byteLength?e.enqueue(new Uint8Array(t)):this.pull(e)}})},cancel(){return t.return()},type:`bytes`})}function ue(e){return e&&typeof e==`object`&&typeof e.append==`function`&&typeof e.delete==`function`&&typeof e.get==`function`&&typeof e.getAll==`function`&&typeof e.has==`function`&&typeof e.set==`function`&&e[Symbol.toStringTag]===`FormData`}function de(e,t){return`addEventListener`in e?(e.addEventListener(`abort`,t,{once:!0}),()=>e.removeEventListener(`abort`,t)):(e.once(`abort`,t),()=>e.removeListener(`abort`,t))}let fe=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);function pe(e){return fe[e]===1}let me=/^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/;function he(e){if(e.length>=12)return me.test(e);if(e.length===0)return!1;for(let t=0;t<e.length;t++)if(fe[e.charCodeAt(t)]!==1)return!1;return!0}let ge=/[^\t\x20-\x7e\x80-\xff]/;function H(e){return!ge.test(e)}let _e=/^bytes (\d+)-(\d+)\/(\d+)?$/;function ve(e){if(e==null||e===``)return{start:0,end:null,size:null};let t=e?e.match(_e):null;return t?{start:parseInt(t[1]),end:t[2]?parseInt(t[2]):null,size:t[3]?parseInt(t[3]):null}:null}function ye(e,t,n){return(e[o]??=[]).push([t,n]),e.on(t,n),e}function be(e){if(e[o]!=null){for(let[t,n]of e[o])e.removeListener(t,n);e[o]=null}return e}function xe(e,t,n){try{t.onError(n),r(t.aborted)}catch(t){e.emit(`error`,t)}}let Se=process.platform===`win32`?(e,t)=>{if(!t.timeout)return x;let n=null,r=null,i=p.setFastTimeout(()=>{n=setImmediate(()=>{r=setImmediate(()=>Ce(e.deref(),t))})},t.timeout);return()=>{p.clearFastTimeout(i),clearImmediate(n),clearImmediate(r)}}:(e,t)=>{if(!t.timeout)return x;let n=null,r=p.setFastTimeout(()=>{n=setImmediate(()=>{Ce(e.deref(),t)})},t.timeout);return()=>{p.clearFastTimeout(r),clearImmediate(n)}};function Ce(e,t){if(e==null)return;let n=`Connect Timeout Error`;Array.isArray(e.autoSelectFamilyAttemptedAddresses)?n+=` (attempted addresses: ${e.autoSelectFamilyAttemptedAddresses.join(`, `)},`:n+=` (attempted address: ${t.hostname}:${t.port},`,n+=` timeout: ${t.timeout}ms)`,te(e,new h(n))}function we(e){if(e[0]===`h`&&e[1]===`t`&&e[2]===`t`&&e[3]===`p`)switch(e[4]){case`:`:return`http:`;case`s`:if(e[5]===`:`)return`https:`}return e.slice(0,e.indexOf(`:`)+1)}let U=Object.create(null);U.enumerable=!0;let Te={delete:`DELETE`,DELETE:`DELETE`,get:`GET`,GET:`GET`,head:`HEAD`,HEAD:`HEAD`,options:`OPTIONS`,OPTIONS:`OPTIONS`,post:`POST`,POST:`POST`,put:`PUT`,PUT:`PUT`},Ee={...Te,patch:`patch`,PATCH:`PATCH`};Object.setPrototypeOf(Te,null),Object.setPrototypeOf(Ee,null),n.exports={kEnumerableProperty:U,isDisturbed:B,isBlobLike:w,parseOrigin:A,parseURL:k,getServerName:M,isStream:C,isIterable:F,hasSafeIterator:I,isAsyncIterable:P,isDestroyed:L,headerNameToString:re,bufferToLowerCasedHeaderName:z,addListener:ye,removeAllListeners:be,errorRequest:xe,parseRawHeaders:ae,encodeRawHeaders:oe,parseHeaders:ie,parseKeepAliveTimeout:ne,destroy:te,bodyLength:ee,deepClone:N,ReadableStreamFrom:le,isBuffer:se,assertRequestHandler:ce,getSocketInfo:V,isFormDataLike:ue,pathHasQueryOrFragment:T,serializePathWithQuery:E,addAbortListener:de,isValidHTTPToken:he,isValidHeaderValue:H,isTokenCharCode:pe,parseRangeHeader:ve,normalizedMethodRecordsBase:Te,normalizedMethodRecords:Ee,isValidPort:D,isHttpOrHttpsPrefixed:O,nodeMajor:v,nodeMinor:y,safeHTTPMethods:Object.freeze([`GET`,`HEAD`,`OPTIONS`,`TRACE`]),wrapRequestBody:S,setupConnectTimeout:Se,getProtocolFromUrlString:we}})),pa=n(((e,t)=>{let{kConnected:n,kPending:r,kRunning:i,kSize:a,kFree:o,kQueued:s}=la();t.exports={ClientStats:class{constructor(e){this.connected=e[n],this.pending=e[r],this.running=e[i],this.size=e[a]}},PoolStats:class{constructor(e){this.connected=e[n],this.free=e[o],this.pending=e[r],this.queued=e[s],this.running=e[i],this.size=e[a]}}}})),ma=n(((e,n)=>{let r=t(`node:diagnostics_channel`),i=t(`node:util`),a=i.debuglog(`undici`),o=i.debuglog(`fetch`),s=i.debuglog(`websocket`),c={beforeConnect:r.channel(`undici:client:beforeConnect`),connected:r.channel(`undici:client:connected`),connectError:r.channel(`undici:client:connectError`),sendHeaders:r.channel(`undici:client:sendHeaders`),create:r.channel(`undici:request:create`),bodySent:r.channel(`undici:request:bodySent`),bodyChunkSent:r.channel(`undici:request:bodyChunkSent`),bodyChunkReceived:r.channel(`undici:request:bodyChunkReceived`),headers:r.channel(`undici:request:headers`),trailers:r.channel(`undici:request:trailers`),error:r.channel(`undici:request:error`),open:r.channel(`undici:websocket:open`),close:r.channel(`undici:websocket:close`),socketError:r.channel(`undici:websocket:socket_error`),ping:r.channel(`undici:websocket:ping`),pong:r.channel(`undici:websocket:pong`),proxyConnected:r.channel(`undici:proxy:connected`)},l=!1;function u(e=a){if(!l){if(c.beforeConnect.hasSubscribers||c.connected.hasSubscribers||c.connectError.hasSubscribers||c.sendHeaders.hasSubscribers){l=!0;return}l=!0,r.subscribe(`undici:client:beforeConnect`,t=>{let{connectParams:{version:n,protocol:r,port:i,host:a}}=t;e(`connecting to %s%s using %s%s`,a,i?`:${i}`:``,r,n)}),r.subscribe(`undici:client:connected`,t=>{let{connectParams:{version:n,protocol:r,port:i,host:a}}=t;e(`connected to %s%s using %s%s`,a,i?`:${i}`:``,r,n)}),r.subscribe(`undici:client:connectError`,t=>{let{connectParams:{version:n,protocol:r,port:i,host:a},error:o}=t;e(`connection to %s%s using %s%s errored - %s`,a,i?`:${i}`:``,r,n,o.message)}),r.subscribe(`undici:client:sendHeaders`,t=>{let{request:{method:n,path:r,origin:i}}=t;e(`sending request to %s %s%s`,n,i,r)})}}let d=!1;function f(e=a){if(!d){if(c.headers.hasSubscribers||c.trailers.hasSubscribers||c.error.hasSubscribers){d=!0;return}d=!0,r.subscribe(`undici:request:headers`,t=>{let{request:{method:n,path:r,origin:i},response:{statusCode:a}}=t;e(`received response to %s %s%s - HTTP %d`,n,i,r,a)}),r.subscribe(`undici:request:trailers`,t=>{let{request:{method:n,path:r,origin:i}}=t;e(`trailers received from %s %s%s`,n,i,r)}),r.subscribe(`undici:request:error`,t=>{let{request:{method:n,path:r,origin:i},error:a}=t;e(`request to %s %s%s errored - %s`,n,i,r,a.message)})}}let p=!1;function m(e=s){if(!p){if(c.open.hasSubscribers||c.close.hasSubscribers||c.socketError.hasSubscribers||c.ping.hasSubscribers||c.pong.hasSubscribers){p=!0;return}p=!0,r.subscribe(`undici:websocket:open`,t=>{if(t.address!=null){let{address:n,port:r}=t.address;e(`connection opened %s%s`,n,r?`:${r}`:``)}else e(`connection opened`)}),r.subscribe(`undici:websocket:close`,t=>{let{websocket:n,code:r,reason:i}=t;e(`closed connection to %s - %s %s`,n.url,r,i)}),r.subscribe(`undici:websocket:socket_error`,t=>{e(`connection errored - %s`,t.message)}),r.subscribe(`undici:websocket:ping`,t=>{e(`ping received`)}),r.subscribe(`undici:websocket:pong`,t=>{e(`pong received`)})}}(a.enabled||o.enabled)&&(u(o.enabled?o:a),f(o.enabled?o:a)),s.enabled&&(u(a.enabled?a:s),m(s)),n.exports={channels:c}})),ha=n(((e,n)=>{let{InvalidArgumentError:r,NotSupportedError:i}=K(),a=t(`node:assert`),{isValidHTTPToken:o,isValidHeaderValue:s,isStream:c,destroy:l,isBuffer:u,isFormDataLike:d,isIterable:f,hasSafeIterator:p,isBlobLike:m,serializePathWithQuery:h,assertRequestHandler:g,getServerName:_,normalizedMethodRecords:v,getProtocolFromUrlString:y}=q(),{channels:b}=ma(),{headerNameLowerCasedRecord:x}=da(),S=/[^\u0021-\u00ff]/;function C(e){if(typeof e!=`string`||e.length===0)return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<48||n>57)return!1}return!0}let w=Symbol(`handler`);var T=class{constructor(e,{path:t,method:n,body:i,headers:a,query:x,idempotent:C,blocking:T,upgrade:D,headersTimeout:O,bodyTimeout:k,reset:A,expectContinue:j,servername:M,throwOnError:N,maxRedirections:P,typeOfService:F},I){if(typeof t!=`string`)throw new r(`path must be a string`);if(t[0]!==`/`&&!(t.startsWith(`http://`)||t.startsWith(`https://`))&&n!==`CONNECT`)throw new r(`path must be an absolute URL or start with a slash`);if(S.test(t))throw new r(`invalid request path`);if(typeof n!=`string`)throw new r(`method must be a string`);if(v[n]===void 0&&!o(n))throw new r(`invalid request method`);if(D&&typeof D!=`string`)throw new r(`upgrade must be a string`);if(D&&!s(D))throw new r(`invalid upgrade header`);if(O!=null&&(!Number.isFinite(O)||O<0))throw new r(`invalid headersTimeout`);if(k!=null&&(!Number.isFinite(k)||k<0))throw new r(`invalid bodyTimeout`);if(A!=null&&typeof A!=`boolean`)throw new r(`invalid reset`);if(j!=null&&typeof j!=`boolean`)throw new r(`invalid expectContinue`);if(N!=null)throw new r(`invalid throwOnError`);if(P!=null&&P!==0)throw new r(`maxRedirections is not supported, use the redirect interceptor`);if(F!=null&&(!Number.isInteger(F)||F<0||F>255))throw new r(`typeOfService must be an integer between 0 and 255`);if(this.headersTimeout=O,this.bodyTimeout=k,this.method=n,this.typeOfService=F??0,this.abort=null,i==null)this.body=null;else if(c(i)){this.body=i;let e=this.body._readableState;(!e||!e.autoDestroy)&&(this.endHandler=function(){l(this)},this.body.on(`end`,this.endHandler)),this.errorHandler=e=>{this.abort?this.abort(e):this.error=e},this.body.on(`error`,this.errorHandler)}else if(u(i))this.body=i.byteLength?i:null;else if(ArrayBuffer.isView(i))this.body=i.buffer.byteLength?Buffer.from(i.buffer,i.byteOffset,i.byteLength):null;else if(i instanceof ArrayBuffer)this.body=i.byteLength?Buffer.from(i):null;else if(typeof i==`string`)this.body=i.length?Buffer.from(i):null;else if(d(i)||f(i)||m(i))this.body=i;else throw new r(`body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable`);if(this.completed=!1,this.aborted=!1,this.upgrade=D||null,this.path=x?h(t,x):t,this.origin=e,this.protocol=y(e),this.idempotent=C??(n===`HEAD`||n===`GET`),this.blocking=T??this.method!==`HEAD`,this.reset=A??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=j??!1,Array.isArray(a)){if(a.length%2!=0)throw new r(`headers array must be even`);for(let e=0;e<a.length;e+=2)E(this,a[e],a[e+1])}else if(a&&typeof a==`object`)if(p(a))for(let e of a){if(!Array.isArray(e)||e.length!==2)throw new r(`headers must be in key-value pair format`);E(this,e[0],e[1])}else{let e=Object.keys(a);for(let t=0;t<e.length;++t)E(this,e[t],a[e[t]])}else if(a!=null)throw new r(`headers must be an object or an array`);g(I,n,D),this.servername=M||_(this.host)||null,this[w]=I,b.create.hasSubscribers&&b.create.publish({request:this})}onBodySent(e){if(b.bodyChunkSent.hasSubscribers&&b.bodyChunkSent.publish({request:this,chunk:e}),this[w].onBodySent)try{return this[w].onBodySent(e)}catch(e){this.abort(e)}}onRequestSent(){if(b.bodySent.hasSubscribers&&b.bodySent.publish({request:this}),this[w].onRequestSent)try{return this[w].onRequestSent()}catch(e){this.abort(e)}}onConnect(e){if(a(!this.aborted),a(!this.completed),this.error)e(this.error);else return this.abort=e,this[w].onConnect(e)}onResponseStarted(){return this[w].onResponseStarted?.()}onHeaders(e,t,n,r){a(!this.aborted),a(!this.completed),b.headers.hasSubscribers&&b.headers.publish({request:this,response:{statusCode:e,headers:t,statusText:r}});try{return this[w].onHeaders(e,t,n,r)}catch(e){this.abort(e)}}onData(e){a(!this.aborted),a(!this.completed),b.bodyChunkReceived.hasSubscribers&&b.bodyChunkReceived.publish({request:this,chunk:e});try{return this[w].onData(e)}catch(e){return this.abort(e),!1}}onUpgrade(e,t,n){return a(!this.aborted),a(!this.completed),this[w].onUpgrade(e,t,n)}onComplete(e){this.onFinally(),a(!this.aborted),a(!this.completed),this.completed=!0,b.trailers.hasSubscribers&&b.trailers.publish({request:this,trailers:e});try{return this[w].onComplete(e)}catch(e){this.onError(e)}}onError(e){if(this.onFinally(),b.error.hasSubscribers&&b.error.publish({request:this,error:e}),!this.aborted)return this.aborted=!0,this[w].onError(e)}onFinally(){this.errorHandler&&=(this.body.off(`error`,this.errorHandler),null),this.endHandler&&=(this.body.off(`end`,this.endHandler),null)}addHeader(e,t){return E(this,e,t),this}};function E(e,t,n){if(n&&typeof n==`object`&&!Array.isArray(n))throw new r(`invalid ${t} header`);if(n===void 0)return;let a=x[t];if(a===void 0&&(a=t.toLowerCase(),x[a]===void 0&&!o(a)))throw new r(`invalid header key`);if(Array.isArray(n)){let e=[];for(let i=0;i<n.length;i++)if(typeof n[i]==`string`){if(!s(n[i]))throw new r(`invalid ${t} header`);e.push(n[i])}else if(n[i]===null)e.push(``);else if(typeof n[i]==`object`)throw new r(`invalid ${t} header`);else e.push(`${n[i]}`);n=e}else if(typeof n==`string`){if(!s(n))throw new r(`invalid ${t} header`)}else n=n===null?``:`${n}`;if(a===`host`){if(e.host!==null)throw new r(`duplicate host header`);if(typeof n!=`string`)throw new r(`invalid host header`);e.host=n}else if(a===`content-length`){if(e.contentLength!==null)throw new r(`duplicate content-length header`);if(!C(n))throw new r(`invalid content-length header`);e.contentLength=parseInt(n,10)}else if(e.contentType===null&&a===`content-type`)e.contentType=n,e.headers.push(t,n);else if(a===`transfer-encoding`||a===`keep-alive`||a===`upgrade`)throw new r(`invalid ${a} header`);else if(a===`connection`){let t=typeof n==`string`?n:null;if(t===null)throw new r(`invalid connection header`);for(let n of t.toLowerCase().split(`,`)){let t=n.trim();if(!o(t))throw new r(`invalid connection header`);t===`close`&&(e.reset=!0)}}else if(a===`expect`)throw new i(`expect header not supported`);else e.headers.push(t,n)}n.exports=T})),ga=n(((e,t)=>{let{InvalidArgumentError:n}=K();t.exports=class e{#e;constructor(e){this.#e=e}static wrap(t){return t.onRequestStart?t:new e(t)}onConnect(e,t){return this.#e.onConnect?.(e,t)}onResponseStarted(){return this.#e.onResponseStarted?.()}onHeaders(e,t,n,r){return this.#e.onHeaders?.(e,t,n,r)}onUpgrade(e,t,n){return this.#e.onUpgrade?.(e,t,n)}onData(e){return this.#e.onData?.(e)}onComplete(e){return this.#e.onComplete?.(e)}onError(e){if(!this.#e.onError)throw e;return this.#e.onError?.(e)}onRequestStart(e,t){this.#e.onConnect?.(t=>e.abort(t),t)}onRequestUpgrade(e,t,n,i){let a=[];for(let[e,t]of Object.entries(n))a.push(Buffer.from(e,`latin1`),r(t));this.#e.onUpgrade?.(t,a,i)}onResponseStart(e,t,n,i){let a=[];for(let[e,t]of Object.entries(n))a.push(Buffer.from(e,`latin1`),r(t));this.#e.onHeaders?.(t,a,()=>e.resume(),i)===!1&&e.pause()}onResponseData(e,t){this.#e.onData?.(t)===!1&&e.pause()}onResponseEnd(e,t){let n=[];for(let[e,i]of Object.entries(t))n.push(Buffer.from(e,`latin1`),r(i));this.#e.onComplete?.(n)}onResponseError(e,t){if(!this.#e.onError)throw new n(`invalid onError method`);this.#e.onError?.(t)}};function r(e){return Array.isArray(e)?e.map(e=>Buffer.from(e,`latin1`)):Buffer.from(e,`latin1`)}})),_a=n(((e,n)=>{let r=t(`node:events`),i=ga(),a=e=>(t,n)=>e(t,i.wrap(n));n.exports=class extends r{dispatch(){throw Error(`not implemented`)}close(){throw Error(`not implemented`)}destroy(){throw Error(`not implemented`)}compose(...e){let t=Array.isArray(e[0])?e[0]:e,n=this.dispatch.bind(this);for(let e of t)if(e!=null){if(typeof e!=`function`)throw TypeError(`invalid interceptor, expected function received ${typeof e}`);if(n=e(n),n=a(n),n==null||typeof n!=`function`||n.length!==2)throw TypeError(`invalid interceptor`)}return new Proxy(this,{get:(e,t)=>t===`dispatch`?n:e[t]})}}})),va=n(((e,t)=>{let{parseHeaders:n}=q(),{InvalidArgumentError:r}=K(),i=Symbol(`resume`);var a=class{#e=!1;#t=null;#n=!1;#r;[i]=null;rawHeaders=null;rawTrailers=null;constructor(e){this.#r=e}pause(){this.#e=!0}resume(){this.#e&&(this.#e=!1,this[i]?.())}abort(e){this.#n||(this.#n=!0,this.#t=e,this.#r(e))}get aborted(){return this.#n}get reason(){return this.#t}get paused(){return this.#e}};t.exports=class e{#e;#t;constructor(e){this.#e=e}static unwrap(t){return t.onRequestStart?new e(t):t}onConnect(e,t){this.#t=new a(e),this.#e.onRequestStart?.(this.#t,t)}onResponseStarted(){return this.#e.onResponseStarted?.()}onUpgrade(e,t,r){this.#t.rawHeaders=t,this.#e.onRequestUpgrade?.(this.#t,e,n(t),r)}onHeaders(e,t,r,a){return this.#t[i]=r,this.#t.rawHeaders=t,this.#e.onResponseStart?.(this.#t,e,n(t),a),!this.#t.paused}onData(e){return this.#e.onResponseData?.(this.#t,e),!this.#t.paused}onComplete(e){this.#t.rawTrailers=e,this.#e.onResponseEnd?.(this.#t,n(e))}onError(e){if(!this.#e.onResponseError)throw new r(`invalid onError method`);this.#e.onResponseError?.(this.#t,e)}}})),ya=n(((e,t)=>{let n=_a(),r=va(),{ClientDestroyedError:i,ClientClosedError:a,InvalidArgumentError:o}=K(),{kDestroy:s,kClose:c,kClosed:l,kDestroyed:u,kDispatch:d}=la(),f=Symbol(`onDestroyed`),p=Symbol(`onClosed`),m=Symbol(`webSocketOptions`);t.exports=class extends n{[u]=!1;[f]=null;[l]=!1;[p]=null;constructor(e){super(),this[m]=e?.webSocket??{}}get webSocketOptions(){return{maxFragments:this[m].maxFragments??131072,maxPayloadSize:this[m].maxPayloadSize??128*1024*1024}}get destroyed(){return this[u]}get closed(){return this[l]}close(e){if(e===void 0)return new Promise((e,t)=>{this.close((n,r)=>n?t(n):e(r))});if(typeof e!=`function`)throw new o(`invalid callback`);if(this[u]){let t=new i;queueMicrotask(()=>e(t,null));return}if(this[l]){this[p]?this[p].push(e):queueMicrotask(()=>e(null,null));return}this[l]=!0,this[p]??=[],this[p].push(e);let t=()=>{let e=this[p];this[p]=null;for(let t=0;t<e.length;t++)e[t](null,null)};this[c]().then(()=>this.destroy()).then(()=>queueMicrotask(t))}destroy(e,t){if(typeof e==`function`&&(t=e,e=null),t===void 0)return new Promise((t,n)=>{this.destroy(e,(e,r)=>e?n(e):t(r))});if(typeof t!=`function`)throw new o(`invalid callback`);if(this[u]){this[f]?this[f].push(t):queueMicrotask(()=>t(null,null));return}e||=new i,this[u]=!0,this[f]??=[],this[f].push(t);let n=()=>{let e=this[f];this[f]=null;for(let t=0;t<e.length;t++)e[t](null,null)};this[s](e).then(()=>queueMicrotask(n))}dispatch(e,t){if(!t||typeof t!=`object`)throw new o(`handler must be an object`);t=r.unwrap(t);try{if(!e||typeof e!=`object`)throw new o(`opts must be an object.`);if(this[u]||this[f])throw new i;if(this[l])throw new a;return this[d](e,t)}catch(e){if(typeof t.onError!=`function`)throw e;return t.onError(e),!1}}}})),ba=n(((e,n)=>{let r=t(`node:net`),i=t(`node:assert`),a=q(),{InvalidArgumentError:o}=K(),s,c=class{constructor(e){this._maxCachedSessions=e,this._sessionCache=new Map,this._sessionRegistry=new FinalizationRegistry(e=>{if(this._sessionCache.size<this._maxCachedSessions)return;let t=this._sessionCache.get(e);t!==void 0&&t.deref()===void 0&&this._sessionCache.delete(e)})}get(e){let t=this._sessionCache.get(e);return t?t.deref():null}set(e,t){if(this._maxCachedSessions!==0){if(this._sessionCache.has(e))this._sessionCache.delete(e);else if(this._sessionCache.size>=this._maxCachedSessions){for(let[e,t]of this._sessionCache)if(t.deref()===void 0){this._sessionCache.delete(e);return}let e=this._sessionCache.keys().next();e.done||this._sessionCache.delete(e.value)}this._sessionCache.set(e,new WeakRef(t)),this._sessionRegistry.register(t,e)}}};function l({allowH2:e,useH2c:n,maxCachedSessions:l,socketPath:u,timeout:d,session:f,...p}){if(l!=null&&(!Number.isInteger(l)||l<0))throw new o(`maxCachedSessions must be a positive integer or zero`);let m={path:u,...p},h=new c(l??100);return d??=1e4,e??=!1,function({hostname:o,host:c,protocol:l,port:u,servername:p,localAddress:g,httpSocket:_},v){let y;if(l===`https:`){s||=t(`node:tls`),p=p||m.servername||a.getServerName(c)||null;let n=p||o;i(n);let r=f||h.get(n)||null;u||=443,y=s.connect({highWaterMark:16384,...m,servername:p,session:r,localAddress:g,ALPNProtocols:e?[`http/1.1`,`h2`]:[`http/1.1`],socket:_,port:u,host:o}),y.on(`session`,function(e){h.set(n,e)})}else i(!_,`httpSocket can only be sent on TLS update`),u||=80,y=r.connect({highWaterMark:64*1024,...m,localAddress:g,port:u,host:o}),n===!0&&(y.alpnProtocol=`h2`);if(m.keepAlive==null||m.keepAlive){let e=m.keepAliveInitialDelay===void 0?6e4:m.keepAliveInitialDelay;y.setKeepAlive(!0,e)}let b=a.setupConnectTimeout(new WeakRef(y),{timeout:d,hostname:o,port:u});return y.setNoDelay(!0).once(l===`https:`?`secureConnect`:`connect`,function(){if(queueMicrotask(b),v){let e=v;v=null,e(null,this)}}).on(`error`,function(e){if(queueMicrotask(b),v){let t=v;v=null,t(e)}}),y}}n.exports=l})),xa=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.enumToMap=t;function t(e,t=[],n=[]){let r=(t?.length??0)===0,i=(n?.length??0)===0;return Object.fromEntries(Object.entries(e).filter(([,e])=>typeof e==`number`&&(r||t.includes(e))&&(i||!n.includes(e))))}})),Sa=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.SPECIAL_HEADERS=e.MINOR=e.MAJOR=e.HTAB_SP_VCHAR_OBS_TEXT=e.QUOTED_STRING=e.CONNECTION_TOKEN_CHARS=e.HEADER_CHARS=e.TOKEN=e.HEX=e.URL_CHAR=e.USERINFO_CHARS=e.MARK=e.ALPHANUM=e.NUM=e.HEX_MAP=e.NUM_MAP=e.ALPHA=e.STATUSES_HTTP=e.H_METHOD_MAP=e.METHOD_MAP=e.METHODS_RTSP=e.METHODS_ICE=e.METHODS_HTTP=e.HEADER_STATE=e.FINISH=e.STATUSES=e.METHODS=e.LENIENT_FLAGS=e.FLAGS=e.TYPE=e.ERROR=void 0;let t=xa();e.ERROR={OK:0,INTERNAL:1,STRICT:2,CR_EXPECTED:25,LF_EXPECTED:3,UNEXPECTED_CONTENT_LENGTH:4,UNEXPECTED_SPACE:30,CLOSED_CONNECTION:5,INVALID_METHOD:6,INVALID_URL:7,INVALID_CONSTANT:8,INVALID_VERSION:9,INVALID_HEADER_TOKEN:10,INVALID_CONTENT_LENGTH:11,INVALID_CHUNK_SIZE:12,INVALID_STATUS:13,INVALID_EOF_STATE:14,INVALID_TRANSFER_ENCODING:15,CB_MESSAGE_BEGIN:16,CB_HEADERS_COMPLETE:17,CB_MESSAGE_COMPLETE:18,CB_CHUNK_HEADER:19,CB_CHUNK_COMPLETE:20,PAUSED:21,PAUSED_UPGRADE:22,PAUSED_H2_UPGRADE:23,USER:24,CB_URL_COMPLETE:26,CB_STATUS_COMPLETE:27,CB_METHOD_COMPLETE:32,CB_VERSION_COMPLETE:33,CB_HEADER_FIELD_COMPLETE:28,CB_HEADER_VALUE_COMPLETE:29,CB_CHUNK_EXTENSION_NAME_COMPLETE:34,CB_CHUNK_EXTENSION_VALUE_COMPLETE:35,CB_RESET:31,CB_PROTOCOL_COMPLETE:38},e.TYPE={BOTH:0,REQUEST:1,RESPONSE:2},e.FLAGS={CONNECTION_KEEP_ALIVE:1,CONNECTION_CLOSE:2,CONNECTION_UPGRADE:4,CHUNKED:8,UPGRADE:16,CONTENT_LENGTH:32,SKIPBODY:64,TRAILING:128,TRANSFER_ENCODING:512},e.LENIENT_FLAGS={HEADERS:1,CHUNKED_LENGTH:2,KEEP_ALIVE:4,TRANSFER_ENCODING:8,VERSION:16,DATA_AFTER_CLOSE:32,OPTIONAL_LF_AFTER_CR:64,OPTIONAL_CRLF_AFTER_CHUNK:128,OPTIONAL_CR_BEFORE_LF:256,SPACES_AFTER_CHUNK_SIZE:512},e.METHODS={DELETE:0,GET:1,HEAD:2,POST:3,PUT:4,CONNECT:5,OPTIONS:6,TRACE:7,COPY:8,LOCK:9,MKCOL:10,MOVE:11,PROPFIND:12,PROPPATCH:13,SEARCH:14,UNLOCK:15,BIND:16,REBIND:17,UNBIND:18,ACL:19,REPORT:20,MKACTIVITY:21,CHECKOUT:22,MERGE:23,"M-SEARCH":24,NOTIFY:25,SUBSCRIBE:26,UNSUBSCRIBE:27,PATCH:28,PURGE:29,MKCALENDAR:30,LINK:31,UNLINK:32,SOURCE:33,PRI:34,DESCRIBE:35,ANNOUNCE:36,SETUP:37,PLAY:38,PAUSE:39,TEARDOWN:40,GET_PARAMETER:41,SET_PARAMETER:42,REDIRECT:43,RECORD:44,FLUSH:45,QUERY:46},e.STATUSES={CONTINUE:100,SWITCHING_PROTOCOLS:101,PROCESSING:102,EARLY_HINTS:103,RESPONSE_IS_STALE:110,REVALIDATION_FAILED:111,DISCONNECTED_OPERATION:112,HEURISTIC_EXPIRATION:113,MISCELLANEOUS_WARNING:199,OK:200,CREATED:201,ACCEPTED:202,NON_AUTHORITATIVE_INFORMATION:203,NO_CONTENT:204,RESET_CONTENT:205,PARTIAL_CONTENT:206,MULTI_STATUS:207,ALREADY_REPORTED:208,TRANSFORMATION_APPLIED:214,IM_USED:226,MISCELLANEOUS_PERSISTENT_WARNING:299,MULTIPLE_CHOICES:300,MOVED_PERMANENTLY:301,FOUND:302,SEE_OTHER:303,NOT_MODIFIED:304,USE_PROXY:305,SWITCH_PROXY:306,TEMPORARY_REDIRECT:307,PERMANENT_REDIRECT:308,BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,METHOD_NOT_ALLOWED:405,NOT_ACCEPTABLE:406,PROXY_AUTHENTICATION_REQUIRED:407,REQUEST_TIMEOUT:408,CONFLICT:409,GONE:410,LENGTH_REQUIRED:411,PRECONDITION_FAILED:412,PAYLOAD_TOO_LARGE:413,URI_TOO_LONG:414,UNSUPPORTED_MEDIA_TYPE:415,RANGE_NOT_SATISFIABLE:416,EXPECTATION_FAILED:417,IM_A_TEAPOT:418,PAGE_EXPIRED:419,ENHANCE_YOUR_CALM:420,MISDIRECTED_REQUEST:421,UNPROCESSABLE_ENTITY:422,LOCKED:423,FAILED_DEPENDENCY:424,TOO_EARLY:425,UPGRADE_REQUIRED:426,PRECONDITION_REQUIRED:428,TOO_MANY_REQUESTS:429,REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL:430,REQUEST_HEADER_FIELDS_TOO_LARGE:431,LOGIN_TIMEOUT:440,NO_RESPONSE:444,RETRY_WITH:449,BLOCKED_BY_PARENTAL_CONTROL:450,UNAVAILABLE_FOR_LEGAL_REASONS:451,CLIENT_CLOSED_LOAD_BALANCED_REQUEST:460,INVALID_X_FORWARDED_FOR:463,REQUEST_HEADER_TOO_LARGE:494,SSL_CERTIFICATE_ERROR:495,SSL_CERTIFICATE_REQUIRED:496,HTTP_REQUEST_SENT_TO_HTTPS_PORT:497,INVALID_TOKEN:498,CLIENT_CLOSED_REQUEST:499,INTERNAL_SERVER_ERROR:500,NOT_IMPLEMENTED:501,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504,HTTP_VERSION_NOT_SUPPORTED:505,VARIANT_ALSO_NEGOTIATES:506,INSUFFICIENT_STORAGE:507,LOOP_DETECTED:508,BANDWIDTH_LIMIT_EXCEEDED:509,NOT_EXTENDED:510,NETWORK_AUTHENTICATION_REQUIRED:511,WEB_SERVER_UNKNOWN_ERROR:520,WEB_SERVER_IS_DOWN:521,CONNECTION_TIMEOUT:522,ORIGIN_IS_UNREACHABLE:523,TIMEOUT_OCCURED:524,SSL_HANDSHAKE_FAILED:525,INVALID_SSL_CERTIFICATE:526,RAILGUN_ERROR:527,SITE_IS_OVERLOADED:529,SITE_IS_FROZEN:530,IDENTITY_PROVIDER_AUTHENTICATION_ERROR:561,NETWORK_READ_TIMEOUT:598,NETWORK_CONNECT_TIMEOUT:599},e.FINISH={SAFE:0,SAFE_WITH_CB:1,UNSAFE:2},e.HEADER_STATE={GENERAL:0,CONNECTION:1,CONTENT_LENGTH:2,TRANSFER_ENCODING:3,UPGRADE:4,CONNECTION_KEEP_ALIVE:5,CONNECTION_CLOSE:6,CONNECTION_UPGRADE:7,TRANSFER_ENCODING_CHUNKED:8},e.METHODS_HTTP=[e.METHODS.DELETE,e.METHODS.GET,e.METHODS.HEAD,e.METHODS.POST,e.METHODS.PUT,e.METHODS.CONNECT,e.METHODS.OPTIONS,e.METHODS.TRACE,e.METHODS.COPY,e.METHODS.LOCK,e.METHODS.MKCOL,e.METHODS.MOVE,e.METHODS.PROPFIND,e.METHODS.PROPPATCH,e.METHODS.SEARCH,e.METHODS.UNLOCK,e.METHODS.BIND,e.METHODS.REBIND,e.METHODS.UNBIND,e.METHODS.ACL,e.METHODS.REPORT,e.METHODS.MKACTIVITY,e.METHODS.CHECKOUT,e.METHODS.MERGE,e.METHODS[`M-SEARCH`],e.METHODS.NOTIFY,e.METHODS.SUBSCRIBE,e.METHODS.UNSUBSCRIBE,e.METHODS.PATCH,e.METHODS.PURGE,e.METHODS.MKCALENDAR,e.METHODS.LINK,e.METHODS.UNLINK,e.METHODS.PRI,e.METHODS.SOURCE,e.METHODS.QUERY],e.METHODS_ICE=[e.METHODS.SOURCE],e.METHODS_RTSP=[e.METHODS.OPTIONS,e.METHODS.DESCRIBE,e.METHODS.ANNOUNCE,e.METHODS.SETUP,e.METHODS.PLAY,e.METHODS.PAUSE,e.METHODS.TEARDOWN,e.METHODS.GET_PARAMETER,e.METHODS.SET_PARAMETER,e.METHODS.REDIRECT,e.METHODS.RECORD,e.METHODS.FLUSH,e.METHODS.GET,e.METHODS.POST],e.METHOD_MAP=(0,t.enumToMap)(e.METHODS),e.H_METHOD_MAP=Object.fromEntries(Object.entries(e.METHODS).filter(([e])=>e.startsWith(`H`))),e.STATUSES_HTTP=[e.STATUSES.CONTINUE,e.STATUSES.SWITCHING_PROTOCOLS,e.STATUSES.PROCESSING,e.STATUSES.EARLY_HINTS,e.STATUSES.RESPONSE_IS_STALE,e.STATUSES.REVALIDATION_FAILED,e.STATUSES.DISCONNECTED_OPERATION,e.STATUSES.HEURISTIC_EXPIRATION,e.STATUSES.MISCELLANEOUS_WARNING,e.STATUSES.OK,e.STATUSES.CREATED,e.STATUSES.ACCEPTED,e.STATUSES.NON_AUTHORITATIVE_INFORMATION,e.STATUSES.NO_CONTENT,e.STATUSES.RESET_CONTENT,e.STATUSES.PARTIAL_CONTENT,e.STATUSES.MULTI_STATUS,e.STATUSES.ALREADY_REPORTED,e.STATUSES.TRANSFORMATION_APPLIED,e.STATUSES.IM_USED,e.STATUSES.MISCELLANEOUS_PERSISTENT_WARNING,e.STATUSES.MULTIPLE_CHOICES,e.STATUSES.MOVED_PERMANENTLY,e.STATUSES.FOUND,e.STATUSES.SEE_OTHER,e.STATUSES.NOT_MODIFIED,e.STATUSES.USE_PROXY,e.STATUSES.SWITCH_PROXY,e.STATUSES.TEMPORARY_REDIRECT,e.STATUSES.PERMANENT_REDIRECT,e.STATUSES.BAD_REQUEST,e.STATUSES.UNAUTHORIZED,e.STATUSES.PAYMENT_REQUIRED,e.STATUSES.FORBIDDEN,e.STATUSES.NOT_FOUND,e.STATUSES.METHOD_NOT_ALLOWED,e.STATUSES.NOT_ACCEPTABLE,e.STATUSES.PROXY_AUTHENTICATION_REQUIRED,e.STATUSES.REQUEST_TIMEOUT,e.STATUSES.CONFLICT,e.STATUSES.GONE,e.STATUSES.LENGTH_REQUIRED,e.STATUSES.PRECONDITION_FAILED,e.STATUSES.PAYLOAD_TOO_LARGE,e.STATUSES.URI_TOO_LONG,e.STATUSES.UNSUPPORTED_MEDIA_TYPE,e.STATUSES.RANGE_NOT_SATISFIABLE,e.STATUSES.EXPECTATION_FAILED,e.STATUSES.IM_A_TEAPOT,e.STATUSES.PAGE_EXPIRED,e.STATUSES.ENHANCE_YOUR_CALM,e.STATUSES.MISDIRECTED_REQUEST,e.STATUSES.UNPROCESSABLE_ENTITY,e.STATUSES.LOCKED,e.STATUSES.FAILED_DEPENDENCY,e.STATUSES.TOO_EARLY,e.STATUSES.UPGRADE_REQUIRED,e.STATUSES.PRECONDITION_REQUIRED,e.STATUSES.TOO_MANY_REQUESTS,e.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL,e.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE,e.STATUSES.LOGIN_TIMEOUT,e.STATUSES.NO_RESPONSE,e.STATUSES.RETRY_WITH,e.STATUSES.BLOCKED_BY_PARENTAL_CONTROL,e.STATUSES.UNAVAILABLE_FOR_LEGAL_REASONS,e.STATUSES.CLIENT_CLOSED_LOAD_BALANCED_REQUEST,e.STATUSES.INVALID_X_FORWARDED_FOR,e.STATUSES.REQUEST_HEADER_TOO_LARGE,e.STATUSES.SSL_CERTIFICATE_ERROR,e.STATUSES.SSL_CERTIFICATE_REQUIRED,e.STATUSES.HTTP_REQUEST_SENT_TO_HTTPS_PORT,e.STATUSES.INVALID_TOKEN,e.STATUSES.CLIENT_CLOSED_REQUEST,e.STATUSES.INTERNAL_SERVER_ERROR,e.STATUSES.NOT_IMPLEMENTED,e.STATUSES.BAD_GATEWAY,e.STATUSES.SERVICE_UNAVAILABLE,e.STATUSES.GATEWAY_TIMEOUT,e.STATUSES.HTTP_VERSION_NOT_SUPPORTED,e.STATUSES.VARIANT_ALSO_NEGOTIATES,e.STATUSES.INSUFFICIENT_STORAGE,e.STATUSES.LOOP_DETECTED,e.STATUSES.BANDWIDTH_LIMIT_EXCEEDED,e.STATUSES.NOT_EXTENDED,e.STATUSES.NETWORK_AUTHENTICATION_REQUIRED,e.STATUSES.WEB_SERVER_UNKNOWN_ERROR,e.STATUSES.WEB_SERVER_IS_DOWN,e.STATUSES.CONNECTION_TIMEOUT,e.STATUSES.ORIGIN_IS_UNREACHABLE,e.STATUSES.TIMEOUT_OCCURED,e.STATUSES.SSL_HANDSHAKE_FAILED,e.STATUSES.INVALID_SSL_CERTIFICATE,e.STATUSES.RAILGUN_ERROR,e.STATUSES.SITE_IS_OVERLOADED,e.STATUSES.SITE_IS_FROZEN,e.STATUSES.IDENTITY_PROVIDER_AUTHENTICATION_ERROR,e.STATUSES.NETWORK_READ_TIMEOUT,e.STATUSES.NETWORK_CONNECT_TIMEOUT],e.ALPHA=[];for(let t=65;t<=90;t++)e.ALPHA.push(String.fromCharCode(t)),e.ALPHA.push(String.fromCharCode(t+32));e.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9},e.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},e.NUM=[`0`,`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`],e.ALPHANUM=e.ALPHA.concat(e.NUM),e.MARK=[`-`,`_`,`.`,`!`,`~`,`*`,`'`,`(`,`)`],e.USERINFO_CHARS=e.ALPHANUM.concat(e.MARK).concat([`%`,`;`,`:`,`&`,`=`,`+`,`$`,`,`]),e.URL_CHAR=`!"$%&'()*+,-./:;<=>@[\\]^_\`{|}~`.split(``).concat(e.ALPHANUM),e.HEX=e.NUM.concat([`a`,`b`,`c`,`d`,`e`,`f`,`A`,`B`,`C`,`D`,`E`,`F`]),e.TOKEN=[`!`,`#`,`$`,`%`,`&`,`'`,`*`,`+`,`-`,`.`,`^`,`_`,"`",`|`,`~`].concat(e.ALPHANUM),e.HEADER_CHARS=[` `];for(let t=32;t<=255;t++)t!==127&&e.HEADER_CHARS.push(t);e.CONNECTION_TOKEN_CHARS=e.HEADER_CHARS.filter(e=>e!==44),e.QUOTED_STRING=[` `,` `];for(let t=33;t<=255;t++)t!==34&&t!==92&&e.QUOTED_STRING.push(t);e.HTAB_SP_VCHAR_OBS_TEXT=[` `,` `];for(let t=33;t<=126;t++)e.HTAB_SP_VCHAR_OBS_TEXT.push(t);for(let t=128;t<=255;t++)e.HTAB_SP_VCHAR_OBS_TEXT.push(t);e.MAJOR=e.NUM_MAP,e.MINOR=e.MAJOR,e.SPECIAL_HEADERS={connection:e.HEADER_STATE.CONNECTION,"content-length":e.HEADER_STATE.CONTENT_LENGTH,"proxy-connection":e.HEADER_STATE.CONNECTION,"transfer-encoding":e.HEADER_STATE.TRANSFER_ENCODING,upgrade:e.HEADER_STATE.UPGRADE},e.default={ERROR:e.ERROR,TYPE:e.TYPE,FLAGS:e.FLAGS,LENIENT_FLAGS:e.LENIENT_FLAGS,METHODS:e.METHODS,STATUSES:e.STATUSES,FINISH:e.FINISH,HEADER_STATE:e.HEADER_STATE,ALPHA:e.ALPHA,NUM_MAP:e.NUM_MAP,HEX_MAP:e.HEX_MAP,NUM:e.NUM,ALPHANUM:e.ALPHANUM,MARK:e.MARK,USERINFO_CHARS:e.USERINFO_CHARS,URL_CHAR:e.URL_CHAR,HEX:e.HEX,TOKEN:e.TOKEN,HEADER_CHARS:e.HEADER_CHARS,CONNECTION_TOKEN_CHARS:e.CONNECTION_TOKEN_CHARS,QUOTED_STRING:e.QUOTED_STRING,HTAB_SP_VCHAR_OBS_TEXT:e.HTAB_SP_VCHAR_OBS_TEXT,MAJOR:e.MAJOR,MINOR:e.MINOR,SPECIAL_HEADERS:e.SPECIAL_HEADERS,METHODS_HTTP:e.METHODS_HTTP,METHODS_ICE:e.METHODS_ICE,METHODS_RTSP:e.METHODS_RTSP,METHOD_MAP:e.METHOD_MAP,H_METHOD_MAP:e.H_METHOD_MAP,STATUSES_HTTP:e.STATUSES_HTTP}})),Ca=n(((e,n)=>{let{Buffer:r}=t(`node:buffer`),i;Object.defineProperty(n,"exports",{get:()=>i||=r.from(`AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgL5YUCAgd/A34gASACaiEEAkAgACIDKAIMIgANACADKAIEBEAgAyABNgIECyMAQRBrIgkkAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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C0HjAQwHC0HXAQwGC0HYAQwFC0HZAQwEC0HaAQwDC0HbAQwCC0HdAQwBC0HcAQshAgNAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCADAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJ/AkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAg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ogKiAqICogKiAqICogKiAqICogKiAqICogIAogILIAQgAUEBaiIBRw0AC0HJACECDOwCCyABQQFqIQEgA0Evai0AAEEBcQ2lAiADQQA2AhwgAyABNgIUIANBlxA2AhAgA0EKNgIMQQAhAgzrAgsgASAERwRAA0AgAS0AAEEgRw0VIAQgAUEBaiIBRw0AC0H4ACECDOsCC0H4ACECDOoCCyADQQI6ACgMOAtBACECIANBADYCHCADQb8LNgIQIANBAjYCDCADIAFBAWo2AhQM6AILQQAhAgzOAgtBDSECDM0CC0ETIQIMzAILQRUhAgzLAgtBFiECDMoCC0EYIQIMyQILQRkhAgzIAgtBGiECDMcCC0EbIQIMxgILQRwhAgzFAgtBHSECDMQCC0EeIQIMwwILQR8hAgzCAgtBICECDMECC0EiIQIMwAILQSMhAgy/AgtBJSECDL4CC0HlACECDL0CCyADQT02AhwgAyABNgIUIAMgADYCDEEAIQIM1QILIANBGzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDNQCCyADQSA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzTAgsgA0ETNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0gILIANBCzYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNECCyADQRA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzQAgsgA0EgNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzwILIANBCzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM4CCyADQQw2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzNAgtBACECIANBADYCHCADIAE2AhQgA0HdDjYCECADQRI2AgwMzAILAkADQAJAIAEtAABBCmsOBAACAgACCyAEIAFBAWoiAUcNAAtB/QEhAgzMAgsCQAJAIAMtADZBAUcNAEEAIQACQCADKAI4IgJFDQAgAigCYCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUcNASADQfwBNgIcIAMgATYCFCADQdwZNgIQIANBFTYCDEEAIQIMzQILQdwBIQIMswILIANBADYCHCADIAE2AhQgA0H5CzYCECADQR82AgxBACECDMsCCwJAAkAgAy0AKEEBaw4CBAEAC0HbASECDLICC0HUASECDLECCyADQQI6ADFBACEAAkAgAygCOCICRQ0AIAIoAgAiAkUNACADIAIRAAAhAAsgAEUEQEHdASECDLECCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQbQMNgIQIANBEDYCDEEAIQIMygILIANB+wE2AhwgAyABNgIUIANBgRo2AhAgA0EVNgIMQQAhAgzJAgsgASAERgRAQfoBIQIMyQILIAEtAABByABGDQEgA0EBOgAoC0HAASECDK4CC0HaASECDK0CCyABIARHBEAgA0EMNgIIIAMgATYCBEHZASECDK0CC0H5ASECDMUCCyABIARGBEBB+AEhAgzFAgsgAS0AAEHIAEcNBCABQQFqIQFB2AEhAgyrAgsgASAERgRAQfcBIQIMxAILAkACQCABLQAAQcUAaw4QAAUFBQUFBQUFBQUFBQUFAQULIAFBAWohAUHWASECDKsCCyABQQFqIQFB1wEhAgyqAgtB9gEhAiABIARGDcICIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbrVAGotAABHDQMgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMMCCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIARQRAQeMBIQIMqgILIANB9QE2AhwgAyABNgIUIAMgADYCDEEAIQIMwgILQfQBIQIgASAERg3BAiADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEG41QBqLQAARw0CIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzCAgsgA0GBBDsBKCADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIADQMMAgsgA0EANgIAC0EAIQIgA0EANgIcIAMgATYCFCADQeUfNgIQIANBCDYCDAy/AgtB1QEhAgylAgsgA0HzATYCHCADIAE2AhQgAyAANgIMQQAhAgy9AgtBACEAAkAgAygCOCICRQ0AIAIoAkAiAkUNACADIAIRAAAhAAsgAEUNbiAAQRVHBEAgA0EANgIcIAMgATYCFCADQYIPNgIQIANBIDYCDEEAIQIMvQILIANBjwE2AhwgAyABNgIUIANB7Bs2AhAgA0EVNgIMQQAhAgy8AgsgASAERwRAIANBDTYCCCADIAE2AgRB0wEhAgyjAgtB8gEhAgy7AgsgASAERgRAQfEBIQIMuwILAkACQAJAIAEtAABByABrDgsAAQgICAgICAgIAggLIAFBAWohAUHQASECDKMCCyABQQFqIQFB0QEhAgyiAgsgAUEBaiEBQdIBIQIMoQILQfABIQIgASAERg25AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBtdUAai0AAEcNBCAAQQJGDQMgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuQILQe8BIQIgASAERg24AiADKAIAIgAgBCABa2ohBiABIABrQQFqIQUDQCABLQAAIABBs9UAai0AAEcNAyAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuAILQe4BIQIgASAERg23AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMtwILIAMoAgQhACADQgA3AwAgAyAAIAVBAWoiARArIgBFDQIgA0HsATYCHCADIAE2AhQgAyAANgIMQQAhAgy2AgsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNnAIgA0HtATYCHCADIAE2AhQgAyAANgIMQQAhAgy0AgtBzwEhAgyaAgtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDLQCC0HOASECDJoCCyADQesBNgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMsgILIAEgBEYEQEHrASECDLICCyABLQAAQS9GBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GyODYCECADQQg2AgxBACECDLECC0HNASECDJcCCyABIARHBEAgA0EONgIIIAMgATYCBEHMASECDJcCC0HqASECDK8CCyABIARGBEBB6QEhAgyvAgsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFBywEhAgyWAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZcCIANB6AE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAEgBEYEQEHnASECDK4CCwJAIAEtAABBLkYEQCABQQFqIQEMAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5gE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILQcoBIQIMlAILIAEgBEYEQEHlASECDK0CC0EAIQBBASEFQQEhB0EAIQICQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQCABLQAAQTBrDgoKCQABAgMEBQYICwtBAgwGC0EDDAULQQQMBAtBBQwDC0EGDAILQQcMAQtBCAshAkEAIQVBACEHDAILQQkhAkEBIQBBACEFQQAhBwwBC0EAIQVBASECCyADIAI6ACsgAUEBaiEBAkACQCADLQAuQRBxDQACQAJAAkAgAy0AKg4DAQACBAsgB0UNAwwCCyAADQEMAgsgBUUNAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDQIgA0HiATYCHCADIAE2AhQgAyAANgIMQQAhAgyvAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZoCIANB4wE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ2YAiADQeQBNgIcIAMgATYCFCADIAA2AgwMrQILQckBIQIMkwILQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANBpA02AhAgA0EhNgIMQQAhAgytAgtByAEhAgyTAgsgA0HhATYCHCADIAE2AhQgA0HQGjYCECADQRU2AgxBACECDKsCCyABIARGBEBB4QEhAgyrAgsCQCABLQAAQSBGBEAgA0EAOwE0IAFBAWohAQwBCyADQQA2AhwgAyABNgIUIANBmRE2AhAgA0EJNgIMQQAhAgyrAgtBxwEhAgyRAgsgASAERgRAQeABIQIMqgILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyrAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqgILQcYBIQIMkAILIAEgBEYEQEHfASECDKkCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqgILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKkCC0HFASECDI8CCyABIARGBEBB3gEhAgyoAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKkCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyoAgtBxAEhAgyOAgsgASAERgRAQd0BIQIMpwILAkACQAJAAkAgAS0AAEEKaw4XAgMDAAMDAwMDAwMDAwMDAwMDAwMDAwEDCyABQQFqDAULIAFBAWohAUHDASECDI8CCyABQQFqIQEgA0Evai0AAEEBcQ0IIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKcCCyADQQA2AhwgAyABNgIUIANBjQs2AhAgA0ENNgIMQQAhAgymAgsgASAERwRAIANBDzYCCCADIAE2AgRBASECDI0CC0HcASECDKUCCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtB2wEhAgymAgsgAygCBCEAIANBADYCBCADIAAgARAtIgBFBEAgAUEBaiEBDAQLIANB2gE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMpQILIAMoAgQhACADQQA2AgQgAyAAIAEQLSIADQEgAUEBagshAUHBASECDIoCCyADQdkBNgIcIAMgADYCDCADIAFBAWo2AhRBACECDKICC0HCASECDIgCCyADQS9qLQAAQQFxDQEgA0EANgIcIAMgATYCFCADQeQcNgIQIANBGTYCDEEAIQIMoAILIAEgBEYEQEHZASEC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IAFBAWohAUGeASECDOQBCyABQQFqIQFBnwEhAgzjAQtBtwEhAiABIARGDfsBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQezUAGotAABHDSggAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPwBCyADQQA2AgAgBkEBaiEBQQ0MKAtBtgEhAiABIARGDfoBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDScgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPsBCyADQQA2AgAgBkEBaiEBQQwMJwtBtQEhAiABIARGDfkBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQerUAGotAABHDSYgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPoBCyADQQA2AgAgBkEBaiEBQQMMJgtBtAEhAiABIARGDfgBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQejUAGotAABHDSUgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPkBCyADQQA2AgAgBkEBaiEBQSYMJQsgASAERgRAQbMBIQIM+AELAkACQCABLQAAQdQAaw4CAAEnCyABQQFqIQFBmQEhAgzfAQsgAUEBaiEBQZoBIQIM3gELQbIBIQIgASAERg32ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHm1ABqLQAARw0jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz3AQsgA0EANgIAIAZBAWohAUEnDCMLQbEBIQIgASAERg31ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHk1ABqLQAARw0iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz2AQsgA0EANgIAIAZBAWohAUEcDCILQbABIQIgASAERg30ASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHe1ABqLQAARw0hIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz1AQsgA0EANgIAIAZBAWohAUEGDCELQa8BIQIgASAERg3zASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEHZ1ABqLQAARw0gIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz0AQsgA0EANgIAIAZBAWohAUEZDCALIAEgBEYEQEGuASECDPMBCwJAAkACQAJAIAEtAABBLWsOIwAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAEkJCQkJAIkJCQDJAsgAUEBaiEBQY4BIQIM3AELIAFBAWohAUGPASECDNsBCyABQQFqIQFBlAEhAgzaAQsgAUEBaiEBQZUBIQIM2QELQa0BIQIgASAERg3xASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHX1ABqLQAARw0eIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzyAQsgA0EANgIAIAZBAWohAUELDB4LIAEgBEYEQEGsASECDPEBCwJAAkAgAS0AAEHBAGsOAwAgASALIAFBAWohAUGQASECDNgBCyABQQFqIQFBkwEhAgzXAQsgASAERgRAQasBIQIM8AELAkACQCABLQAAQcEAaw4PAB8fHx8fHx8fHx8fHx8BHwsgAUEBaiEBQZEBIQIM1wELIAFBAWohAUGSASECDNYBCyABIARGBEBBqgEhAgzvAQsgAS0AAEHMAEcNHCABQQFqIQFBCgwbC0GpASECIAEgBEYN7QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABB0dQAai0AAEcNGiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7gELIANBADYCACAGQQFqIQFBHgwaC0GoASECIAEgBEYN7AEgAygCACIAIAQgAWtqIQUgASAAa0EGaiEGAkADQCABLQAAIABBytQAai0AAEcNGSAAQQZGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7QELIANBADYCACAGQQFqIQFBFQwZC0GnASECIAEgBEYN6wEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBx9QAai0AAEcNGCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7AELIANBADYCACAGQQFqIQFBFwwYC0GmASECIAEgBEYN6gEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBwdQAai0AAEcNFyAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6wELIANBADYCACAGQQFqIQFBGAwXCyABIARGBEBBpQEhAgzqAQsCQAJAIAEtAABByQBrDgcAGRkZGRkBGQsgAUEBaiEBQYsBIQIM0QELIAFBAWohAUGMASECDNABC0GkASECIAEgBEYN6AEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBptUAai0AAEcNFSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6QELIANBADYCACAGQQFqIQFBCQwVC0GjASECIAEgBEYN5wEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBpNUAai0AAEcNFCAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6AELIANBADYCACAGQQFqIQFBHwwUC0GiASECIAEgBEYN5gEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBvtQAai0AAEcNEyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5wELIANBADYCACAGQQFqIQFBAgwTC0GhASECIAEgBEYN5QEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGA0AgAS0AACAAQbzUAGotAABHDREgAEEBRg0CIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADOUBCyABIARGBEBBoAEhAgzlAQtBASABLQAAQd8ARw0RGiABQQFqIQFBhwEhAgzLAQsgA0EANgIAIAZBAWohAUGIASECDMoBC0GfASECIAEgBEYN4gEgAygCACIAIAQgAWtqIQUgASAAa0EIaiEGAkADQCABLQAAIABBhNUAai0AAEcNDyAAQQhGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4wELIANBADYCACAGQQFqIQFBKQwPC0GeASECIAEgBEYN4QEgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBuNQAai0AAEcNDiAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4gELIANBADYCACAGQQFqIQFBLQwOCyABIARGBEBBnQEhAgzhAQsgAS0AAEHFAEcNDiABQQFqIQFBhAEhAgzHAQsgASAERgRAQZwBIQIM4AELAkACQCABLQAAQcwAaw4IAA8PDw8PDwEPCyABQQFqIQFBggEhAgzHAQsgAUEBaiEBQYMBIQIMxgELQZsBIQIgASAERg3eASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEGz1ABqLQAARw0LIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzfAQsgA0EANgIAIAZBAWohAUEjDAsLQZoBIQIgASAERg3dASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGw1ABqLQAARw0KIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzeAQsgA0EANgIAIAZBAWohAUEADAoLIAEgBEYEQEGZASECDN0BCwJAAkAgAS0AAEHIAGsOCAAMDAwMDAwBDAsgAUEBaiEBQf0AIQIMxAELIAFBAWohAUGAASECDMMBCyABIARGBEBBmAEhAgzcAQsCQAJAIAEtAABBzgBrDgMACwELCyABQQFqIQFB/gAhAgzDAQsgAUEBaiEBQf8AIQIMwgELIAEgBEYEQEGXASECDNsBCyABLQAAQdkARw0IIAFBAWohAUEIDAcLQZYBIQIgASAERg3ZASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEGs1ABqLQAARw0GIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzaAQsgA0EANgIAIAZBAWohAUEFDAYLQZUBIQIgASAERg3YASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGm1ABqLQAARw0FIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzZAQsgA0EANgIAIAZBAWohAUEWDAULQZQBIQIgASAERg3XASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGh1QBqLQAARw0EIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzYAQsgA0EANgIAIAZBAWohAUEQDAQLIAEgBEYEQEGTASECDNcBCwJAAkAgAS0AAEHDAGsODAAGBgYGBgYGBgYGAQYLIAFBAWohAUH5ACECDL4BCyABQQFqIQFB+gAhAgy9AQtBkgEhAiABIARGDdUBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQaDUAGotAABHDQIgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNYBCyADQQA2AgAgBkEBaiEBQSQMAgsgA0EANgIADAILIAEgBEYEQEGRASECDNQBCyABLQAAQcwARw0BIAFBAWohAUETCzoAKSADKAIEIQAgA0EANgIEIAMgACABEC4iAA0CDAELQQAhAiADQQA2AhwgAyABNgIUIANB/h82AhAgA0EGNgIMDNEBC0H4ACECDLcBCyADQZABNgIcIAMgATYCFCADIAA2AgxBACECDM8BC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUYNASADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgzOAQtB9wAhAgy0AQsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDMwBCyABIARGBEBBjwEhAgzMAQsCQCABLQAAQSBGBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GbHzYCECADQQY2AgxBACECDMwBC0ECIQIMsgELA0AgAS0AAEEgRw0CIAQgAUEBaiIBRw0AC0GOASECDMoBCyABIARGBEBBjQEhAgzKAQsCQCABLQAAQQlrDgRKAABKAAtB9QAhAgywAQsgAy0AKUEFRgRAQfYAIQIMsAELQfQAIQIMrwELIAEgBEYEQEGMASECDMgBCyADQRA2AgggAyABNgIEDAoLIAEgBEYEQEGLASECDMcBCwJAIAEtAABBCWsOBEcAAEcAC0HzACECDK0BCyABIARHBEAgA0EQNgIIIAMgATYCBEHxACECDK0BC0GKASECDMUBCwJAIAEgBEcEQANAIAEtAABBoNAAai0AACIAQQNHBEACQCAAQQFrDgJJAAQLQfAAIQIMrwELIAQgAUEBaiIBRw0AC0GIASEC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BCABQQFqIgFHDQALQfsAIQIMpwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMpgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMpQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMpAELIANBADYCHCADIAE2AhQgA0G8CjYCECADQQc2AgxBACECDKMBC0HPACECDIkBC0HRACECDIgBC0HnACECDIcBCyABIARGBEBB+gAhAgygAQsCQCABLQAAQQlrDgQgAAAgAAsgAUEBaiEBQeYAIQIMhgELIAEgBEYEQEH5ACECDJ8BCwJAIAEtAABBCWsOBB8AAB8AC0EAIQACQCADKAI4IgJFDQAgAigCOCICRQ0AIAMgAhEAACEACyAARQRAQeIBIQIMhgELIABBFUcEQCADQQA2AhwgAyABNgIUIANByQ02AhAgA0EaNgIMQQAhAgyfAQsgA0H4ADYCHCADIAE2AhQgA0HqGjYCECADQRU2AgxBACECDJ4BCyABIARHBEAgA0ENNgIIIAMgATYCBEHkACECDIUBC0H3ACECDJ0BCyABIARGBEBB9gAhAgydAQsCQAJAAkAgAS0AAEHIAGsOCwABCwsLCwsLCwsCCwsgAUEBaiEBQd0AIQIMhQELIAFBAWohAUHgACECDIQBCyABQQFqIQFB4wAhAgyDAQtB9QAhAiABIARGDZsBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbXVAGotAABHDQggAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJwBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIABEAgA0H0ADYCHCADIAE2AhQgAyAANgIMQQAhAgycAQtB4gAhAgyCAQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJwBC0HhACECDIIBCyADQfMANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMmgELIAMtACkiAEEja0ELSQ0JAkAgAEEGSw0AQQEgAHRBygBxRQ0ADAoLQQAhAiADQQA2AhwgAyABNgIUIANB7Qk2AhAgA0EINgIMDJkBC0HyACECIAEgBEYNmAEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBs9UAai0AAEcNBSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMmQELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfEANgIcIAMgATYCFCADIAA2AgxBACECDJkBC0HfACECDH8LQQAhAAJAIAMoAjgiAkUNACACKAI0IgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANB6g02AhAgA0EmNgIMQQAhAgyZAQtB3gAhAgx/CyADQfAANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMlwELIAMtAClBIUYNBiADQQA2AhwgAyABNgIUIANBkQo2AhAgA0EINgIMQQAhAgyWAQtB7wAhAiABIARGDZUBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDVAGotAABHDQIgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJYBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIARQ0CIANB7QA2AhwgAyABNgIUIAMgADYCDEEAIQIMlQELIANBADYCAAsgAygCBCEAIANBADYCBCADIAAgARArIgBFDYABIANB7gA2AhwgAyABNgIUIAMgADYCDEEAIQIMkwELQdwAIQIMeQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJMBC0HbACECDHkLIANB7AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyRAQsgAy0AKSIAQSNJDQAgAEEuRg0AIANBADYCHCADIAE2AhQgA0HJCTYCECADQQg2AgxBACECDJABC0HaACECDHYLIAEgBEYEQEHrACECDI8BCwJAIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMjwELQdkAIQIMdQsgASAERwRAIANBDjYCCCADIAE2AgRB2AAhAgx1C0HqACECDI0BCyABIARGBEBB6QAhAgyNAQsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFB1wAhAgx0CyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeiADQegANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyABIARGBEBB5wAhAgyMAQsCQCABLQAAQS5GBEAgAUEBaiEBDAELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ17IANB5gA2AhwgAyABNgIUIAMgADYCDEEAIQIMjAELQdYAIQIMcgsgASAERgRAQeUAIQIMiwELQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIANgIcIAMgATYCFCADIAA2AgxBACECDI0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNfSADQeMANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeyADQeQANgIcIAMgATYCFCADIAA2AgwMiwELQdQAIQIMcQsgAy0AKUEiRg2GAUHTACECDHALQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALIABFBEBB1QAhAgxwCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQaQNNgIQIANBITYCDEEAIQIMiQELIANB4QA2AhwgAyABNgIUIANB0Bo2AhAgA0EVNgIMQQAhAgyIAQsgASAERgRAQeAAIQIMiAELAkACQAJAAkACQCABLQAAQQprDgQBBAQABAsgAUEBaiEBDAELIAFBAWohASADQS9qLQAAQQFxRQ0BC0HSACECDHALIANBADYCHCADIAE2AhQgA0G2ETYCECADQQk2AgxBACECDIgBCyADQQA2AhwgAyABNgIUIANBthE2AhAgA0EJNgIMQQAhAgyHAQsgASAERgRAQd8AIQIMhwELIAEtAABBCkYEQCABQQFqIQEMCQsgAy0ALkHAAHENCCADQQA2AhwgAyABNgIUIANBthE2AhAgA0ECNgIMQQAhAgyGAQsgASAERgRAQd0AIQIMhgELIAEtAAAiAkENRgRAIAFBAWohAUHQACECDG0LIAEhACACQQlrDgQFAQEFAQsgBCABIgBGBEBB3AAhAgyFAQsgAC0AAEEKRw0AIABBAWoMAgtBACECIANBADYCHCADIAA2AhQgA0HKLTYCECADQQc2AgwMgwELIAEgBEYEQEHbACECDIMBCwJAIAEtAABBCWsOBAMAAAMACyABQQFqCyEBQc4AIQIMaAsgASAERgRAQdoAIQIMgQELIAEtAABBCWsOBAABAQABC0EAIQIgA0EANgIcIANBmhI2AhAgA0EHNgIMIAMgAUEBajYCFAx/CyADQYASOwEqQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB2QA2AhwgAyABNgIUIANB6ho2AhAgA0EVNgIMQQAhAgx+C0HNACECDGQLIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDHwLIAEgBEYEQEHZACECDHwLIAEtAABBIEcNPSABQQFqIQEgAy0ALkEBcQ09IANBADYCHCADIAE2AhQgA0HCHDYCECADQR42AgxBACECDHsLIAEgBEYEQEHYACECDHsLAkACQAJAAkACQCABLQAAIgBBCmsOBAIDAwABCyABQQFqIQFBLCECDGULIABBOkcNASADQQA2AhwgAyABNgIUIANB5xE2AhAgA0EKNgIMQQAhAgx9CyABQQFqIQEgA0Evai0AAEEBcUUNcyADLQAyQYABcUUEQCADQTJqIQIgAxA1QQAhAAJAIAMoAjgiBkUNACAGKAIoIgZFDQAgAyAGEQAAIQALAkACQCAADhZNTEsBAQEBAQEBAQEBAQEBAQEBAQEAAQsgA0EpNgIcIAMgATYCFCADQawZNgIQIANBFTYCDEEAIQIMfgsg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c3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==`,`base64`)})})),wa=n(((e,n)=>{let{Buffer:r}=t(`node:buffer`),i;Object.defineProperty(n,"exports",{get:()=>i||=r.from(`AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgLhocCAwd/A34BeyABIAJqIQQCQCAAIgMoAgwiAA0AIAMoAgQEQCADIAE2AgQLIwBBEGsiCSQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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DAgLQeMBDAcLQdcBDAYLQdgBDAULQdkBDAQLQdoBDAMLQdsBDAILQd0BDAELQdwBCyECA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAn8CQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAwJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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A0EXNgIcIAMgADYCDCADIAFBAWo2AhQM+AILIABBFUYNI0EAIQIgA0EANgIcIAMgATYCFCADQdYMNgIQIANBIzYCDAz3AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQwdCyADQRk2AhwgAyAANgIMIAMgAUEBajYCFAz2AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQzvAgsgA0EaNgIcIAMgADYCDCADIAFBAWo2AhQM9QILIABBFUYNH0EAIQIgA0EANgIcIAMgATYCFCADQdAPNgIQIANBIjYCDAz0AgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDBsLIANBHDYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgzzAgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDOsCCyADQR02AhwgAyAANgIMIAMgAUEBajYCFEEAIQIM8gILIABBO0cNASABQQFqIQELQSYhAgzXAgtBACECIANBADYCHCADIAE2AhQgA0GfFTYCECADQQw2AgwM7wILIAEgBEcEQANAIAEtAABBIEcNhAIgBCABQQFqIgFHDQALQSwhAgzvAgtBLCECDO4CCyABIARGBEBBNCECDO4CCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtBNCECDO8CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUNnwIgA0EyNgIcIAMgATYCFCADIAA2AgxBACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUEQCABQQFqIQEMnwILIANBMjYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgztAgsgASAERwRAAkADQCABLQAAQTBrIgBB/wFxQQpPBEBBOiECDNcCCyADKQMgIgtCmbPmzJmz5swZVg0BIAMgC0IKfiIKNwMgIAogAK1C/wGDIgtCf4VWDQEgAyAKIAt8NwMgIAQgAUEBaiIBRw0AC0HAACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABQQFqIgEQMSIADRcM4gILQcAAIQIM7AILIAEgBEYEQEHJACECDOwCCwJAA0ACQCABLQAAQQlrDhgAAqICogKpAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAgCiAgsgBCABQQFqIgFHDQALQckAIQIM7AILIAFBAWohASADQS9qLQAAQQFxDaUCIANBADYCHCADIAE2AhQgA0GXEDYCECADQQo2AgxBACECDOsCCyABIARHBEADQCABLQAAQSBHDRUgBCABQQFqIgFHDQALQfgAIQIM6wILQfgAIQIM6gILIANBAjoAKAw4C0EAIQIgA0EANgIcIANBvws2AhAgA0ECNgIMIAMgAUEBajYCFAzoAgtBACECDM4CC0ENIQIMzQILQRMhAgzMAgtBFSECDMsCC0EWIQIMygILQRghAgzJAgtBGSECDMgCC0EaIQIMxwILQRshAgzGAgtBHCECDMUCC0EdIQIMxAILQR4hAgzDAgtBHyECDMICC0EgIQIMwQILQSIhAgzAAgtBIyECDL8CC0ElIQIMvgILQeUAIQIMvQILIANBPTYCHCADIAE2AhQgAyAANgIMQQAhAgzVAgsgA0EbNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIM1AILIANBIDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNMCCyADQRM2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzSAgsgA0ELNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0QILIANBEDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNACCyADQSA2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzPAgsgA0ELNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzgILIANBDDYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM0CC0EAIQIgA0EANgIcIAMgATYCFCADQd0ONgIQIANBEjYCDAzMAgsCQANAAkAgAS0AAEEKaw4EAAICAAILIAQgAUEBaiIBRw0AC0H9ASECDMwCCwJAAkAgAy0ANkEBRw0AQQAhAAJAIAMoAjgiAkUNACACKAJgIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB/AE2AhwgAyABNgIUIANB3Bk2AhAgA0EVNgIMQQAhAgzNAgtB3AEhAgyzAgsgA0EANgIcIAMgATYCFCADQfkLNgIQIANBHzYCDEEAIQIMywILAkACQCADLQAoQQFrDgIEAQALQdsBIQIMsgILQdQBIQIMsQILIANBAjoAMUEAIQACQCADKAI4IgJFDQAgAigCACICRQ0AIAMgAhEAACEACyAARQRAQd0BIQIMsQILIABBFUcEQCADQQA2AhwgAyABNgIUIANBtAw2AhAgA0EQNgIMQQAhAgzKAgsgA0H7ATYCHCADIAE2AhQgA0GBGjYCECADQRU2AgxBACECDMkCCyABIARGBEBB+gEhAgzJAgsgAS0AAEHIAEYNASADQQE6ACgLQcABIQIMrgILQdoBIQIMrQILIAEgBEcEQCADQQw2AgggAyABNgIEQdkBIQIMrQILQfkBIQIMxQILIAEgBEYEQEH4ASECDMUCCyABLQAAQcgARw0EIAFBAWohAUHYASECDKsCCyABIARGBEBB9wEhAgzEAgsCQAJAIAEtAABBxQBrDhAABQUFBQUFBQUFBQUFBQUBBQsgAUEBaiEBQdYBIQIMqwILIAFBAWohAUHXASECDKoCC0H2ASECIAEgBEYNwgIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABButUAai0AAEcNAyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMwwILIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgBFBEBB4wEhAgyqAgsgA0H1ATYCHCADIAE2AhQgAyAANgIMQQAhAgzCAgtB9AEhAiABIARGDcECIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQbjVAGotAABHDQIgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMICCyADQYEEOwEoIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgANAwwCCyADQQA2AgALQQAhAiADQQA2AhwgAyABNgIUIANB5R82AhAgA0EINgIMDL8CC0HVASECDKUCCyADQfMBNgIcIAMgATYCFCADIAA2AgxBACECDL0CC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ1uIABBFUcEQCADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgy9AgsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDLwCCyABIARHBEAgA0ENNgIIIAMgATYCBEHTASECDKMCC0HyASECDLsCCyABIARGBEBB8QEhAgy7AgsCQAJAAkAgAS0AAEHIAGsOCwABCAgICAgICAgCCAsgAUEBaiEBQdABIQIMowILIAFBAWohAUHRASECDKICCyABQQFqIQFB0gEhAgyhAgtB8AEhAiABIARGDbkCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEG11QBqLQAARw0EIABBAkYNAyAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy5AgtB7wEhAiABIARGDbgCIAMoAgAiACAEIAFraiEGIAEgAGtBAWohBQNAIAEtAAAgAEGz1QBqLQAARw0DIABBAUYNAiAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy4AgtB7gEhAiABIARGDbcCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEGw1QBqLQAARw0CIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy3AgsgAygCBCEAIANCADcDACADIAAgBUEBaiIBECsiAEUNAiADQewBNgIcIAMgATYCFCADIAA2AgxBACECDLYCCyADQQA2AgALIAMoAgQhACADQQA2AgQgAyAAIAEQKyIARQ2cAiADQe0BNgIcIAMgATYCFCADIAA2AgxBACECDLQCC0HPASECDJoCC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMtAILQc4BIQIMmgILIANB6wE2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyyAgsgASAERgRAQesBIQIMsgILIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMsQILQc0BIQIMlwILIAEgBEcEQCADQQ42AgggAyABNgIEQcwBIQIMlwILQeoBIQIMrwILIAEgBEYEQEHpASECDK8CCyABLQAAQTBrIgBB/wFxQQpJBEAgAyAAOgAqIAFBAWohAUHLASECDJYCCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNlwIgA0HoATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgASAERgRAQecBIQIMrgILAkAgAS0AAEEuRgRAIAFBAWohAQwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmAIgA0HmATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgtBygEhAgyUAgsgASAERgRAQeUBIQIMrQILQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIBNgIcIAMgATYCFCADIAA2AgxBACECDK8CCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmgIgA0HjATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5AE2AhwgAyABNgIUIAMgADYCDAytAgtByQEhAgyTAgtBACEAAkAgAygCOCICRQ0AIAIoAkQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GkDTYCECADQSE2AgxBACECDK0CC0HIASECDJMCCyADQeEBNgIcIAMgATYCFCADQdAaNgIQIANBFTYCDEEAIQIMqwILIAEgBEYEQEHhASECDKsCCwJAIAEtAABBIEYEQCADQQA7ATQgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GZETYCECADQQk2AgxBACECDKsCC0HHASECDJECCyABIARGBEBB4AEhAgyqAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKsCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyqAgtBxgEhAgyQAgsgASAERgRAQd8BIQIMqQILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyqAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqQILQcUBIQIMjwILIAEgBEYEQEHeASECDKgCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqQILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKgCC0HEASECDI4CCyABIARGBEBB3QEhAgynAgsCQAJAAkACQCABLQAAQQprDhcCAwMAAwMDAwMDAwMDAwMDAwMDAwMDAQMLIAFBAWoMBQsgAUEBaiEBQcMBIQIMjwILIAFBAWohASADQS9qLQAAQQFxDQggA0EANgIcIAMgATYCFCADQY0LNgIQIANBDTYCDEEAIQIMpwILIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKYCCyABIARHBEAgA0EPNgIIIAMgATYCBEEBIQIMjQILQdwBIQIMpQILAkACQANAAkAgAS0AAEEKaw4EAgAAAwALIAQgAUEBaiIBRw0AC0HbASECDKYCCyADKAIEIQAgA0EANgIEIAMgACABEC0iAEUEQCABQQFqIQEMBAsgA0HaATYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgylAgsgAygCBCEAIANBADYCBCADIAAgARAtIgANASABQQFqCyEBQcEBIQIMigILIANB2QE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMogILQcIBIQIMiAILIANBL2otAABBAXENASADQQA2AhwgAyABNgIUIANB5Bw2AhAgA0EZNgIMQQAhAgygAgsgASAERgRAQdkBIQIMoAILAkACQAJAIAEtAABBCmsOBAECAgACCyABQQFqIQEMAgsgAUEBaiEBDAELIAMtAC5BwABxRQ0BC0EAIQACQCADKAI4IgJFDQAgAigCPCICRQ0AIAMgAhEAACEACyAARQ2gASAAQRVGBEAgA0HZADYCHCADIAE2AhQgA0G3GjYCECADQRU2AgxBACECDJ8CCyADQQA2AhwgAyABNgIUIANBgA02AhAgA0EbNgIMQQAhAgyeAgsgA0EANgIcIAMgATYCFCADQdwoNgIQIANBAjYCDEEAIQIMnQILIAEgBEcEQCADQQw2AgggAyABNgIEQb8BIQIMhAILQdgBIQIMnAILIAEgBEYEQEHXASECDJwCCwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAS0AAEHBAGsOFQABAgNaBAUGWlpaBwgJCgsMDQ4PEFoLIAFBAWohAUH7ACECDJICCyABQQFqIQFB/AAhAgyRAgsgAUEBaiEBQYEBIQIMkAILIAFBAWohAUGFASECDI8CCyABQQFqIQFBhgEhAgyOAgsgAUEBaiEBQYkBIQIMjQILIAFBAWohAUGKASECDIwCCyABQQFqIQFBjQEhAgyLAgsgAUEBaiEBQZYBIQIMigILIAFBAWohAUGXASECDIkCCyABQQFqIQFBmAEhAgyIAgsgAUEBaiEBQaUBIQIMhwILIAFBAWohAUGmASECDIYCCyABQQFqIQFBrAEhAgyFAgsgAUEBaiEBQbQBIQIMhAILIAFBAWohAUG3ASECDIMCCyABQQFqIQFBvgEhAgyCAgsgASAERgRAQdYBIQIMmwILIAEtAABBzgBHDUggAUEBaiEBQb0BIQIMgQILIAEgBEYEQEHVASECDJoCCwJAAkACQCABLQAAQcIAaw4SAEpKSkpKSkpKSgFKSkpKSkoCSgsgAUEBaiEBQbgBIQIMggILIAFBAWohAUG7ASECDIECCyABQQFqIQFBvAEhAgyAAgtB1AEhAiABIARGDZgCIAMoAgAiACAEIAFraiEFIAEgAGtBB2ohBgJAA0AgAS0AACAAQajVAGotAABHDUUgAEEHRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJkCCyADQQA2AgAgBkEBaiEBQRsMRQsgASAERgRAQdMBIQIMmAILAkACQCABLQAAQckAaw4HAEdHR0dHAUcLIAFBAWohAUG5ASECDP8BCyABQQFqIQFBugEhAgz+AQtB0gEhAiABIARGDZYCIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQabVAGotAABHDUMgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJcCCyADQQA2AgAgBkEBaiEBQQ8MQwtB0QEhAiABIARGDZUCIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQaTVAGotAABHDUIgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJYCCyADQQA2AgAgBkEBaiEBQSAMQgtB0AEhAiABIARGDZQCIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDUEgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJUCCyADQQA2AgAgBkEBaiEBQRIMQQsgASAERgRAQc8BIQIMlAILAkACQCABLQAAQcUAaw4OAENDQ0NDQ0NDQ0NDQwFDCyABQQFqIQFBtQEhAgz7AQsgAUEBaiEBQbYBIQIM+gELQc4BIQIgASAERg2SAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGe1QBqLQAARw0/IABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyTAgsgA0EANgIAIAZBAWohAUEHDD8LQc0BIQIgASAERg2RAiADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGY1QBqLQAARw0+IABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAySAgsgA0EANgIAIAZBAWohAUEoDD4LIAEgBEYEQEHMASECDJECCwJAAkACQCABLQAAQcUAaw4RAEFBQUFBQUFBQQFBQUFBQQJBCyABQQFqIQFBsQEhAgz5AQsgAUEBaiEBQbIBIQIM+AELIAFBAWohAUGzASECDPcBC0HLASECIAEgBEYNjwIgAygCACIAIAQgAWtqIQUgASAAa0EGaiEGAkADQCABLQAAIABBkdUAai0AAEcNPCAAQQZGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMkAILIANBADYCACAGQQFqIQFBGgw8C0HKASECIAEgBEYNjgIgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBjdUAai0AAEcNOyAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMjwILIANBADYCACAGQQFqIQFBIQw7CyABIARGBEBByQEhAgyOAgsCQAJAIAEtAABBwQBrDhQAPT09PT09PT09PT09PT09PT09AT0LIAFBAWohAUGtASECDPUBCyABQQFqIQFBsAEhAgz0AQsgASAERgRAQcgBIQIMjQILAkACQCABLQAAQdUAaw4LADw8PDw8PDw8PAE8CyABQQFqIQFBrgEhAgz0AQsgAUEBaiEBQa8BIQIM8wELQccBIQIgASAERg2LAiADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw04IABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyMAgsgA0EANgIAIAZBAWohAUEqDDgLIAEgBEYEQEHGASECDIsCCyABLQAAQdAARw04IAFBAWohAUElDDcLQcUBIQIgASAERg2JAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGB1QBqLQAARw02IABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyKAgsgA0EANgIAIAZBAWohAUEODDYLIAEgBEYEQEHEASECDIkCCyABLQAAQcUARw02IAFBAWohAUGrASECDO8BCyABIARGBEBBwwEhAgyIAgsCQAJAAkACQCABLQAAQcIAaw4PAAECOTk5OTk5OTk5OTkDOQsgAUEBaiEBQacBIQIM8QELIAFBAWohAUGoASECDPABCyABQQFqIQFBqQEhAgzvAQsgAUEBaiEBQaoBIQIM7gELQcIBIQIgASAERg2GAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEH+1ABqLQAARw0zIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyHAgsgA0EANgIAIAZBAWohAUEUDDMLQcEBIQIgASAERg2FAiADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANA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BTYCAAzsAQsgA0EANgIAIAZBAWohAUEXDBgLQaYBIQIgASAERg3qASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHB1ABqLQAARw0XIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzrAQsgA0EANgIAIAZBAWohAUEYDBcLIAEgBEYEQEGlASECDOoBCwJAAkAgAS0AAEHJAGsOBwAZGRkZGQEZCyABQQFqIQFBiwEhAgzRAQsgAUEBaiEBQYwBIQIM0AELQaQBIQIgASAERg3oASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGm1QBqLQAARw0VIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzpAQsgA0EANgIAIAZBAWohAUEJDBULQaMBIQIgASAERg3nASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGk1QBqLQAARw0UIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzoAQsgA0EANgIAIAZBAWohAUEfDBQLQaIBIQIgASAERg3mASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEG+1ABqLQAARw0TIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAznAQsgA0EANgIAIAZBAWohAUECDBMLQaEBIQIgASAERg3lASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYDQCABLQAAIABBvNQAai0AAEcNESAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5QELIAEgBEYEQEGgASECDOUBC0EBIAEtAABB3wBHDREaIAFBAWohAUGHASECDMsBCyADQQA2AgAgBkEBaiEBQYgBIQIMygELQZ8BIQIgASAERg3iASADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw0PIABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzjAQsgA0EANgIAIAZBAWohAUEpDA8LQZ4BIQIgASAERg3hASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEG41ABqLQAARw0OIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAziAQsgA0EANgIAIAZBAWohAUEtDA4LIAEgBEYEQEGdASECDOEBCyABLQAAQcUARw0OIAFBAWohAUGEASECDMcBCyABIARGBEBBnAEhAgzgAQsCQAJAIAEtAABBzABrDggADw8PDw8PAQ8LIAFBAWohAUGCASECDMcBCyABQQFqIQFBgwEhAgzGAQtBmwEhAiABIARGDd4BIAMoAgAiACAEIAFraiEFIAEgAGtBBGohBgJAA0AgAS0AACAAQbPUAGotAABHDQsgAEEERg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN8BCyADQQA2AgAgBkEBaiEBQSMMCwtBmgEhAiABIARGDd0BIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDUAGotAABHDQogAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN4BCyADQQA2AgAgBkEBaiEBQQAMCgsgASAERgRAQZkBIQIM3QELAkACQCABLQAAQcgAaw4IAAwMDAwMDAEMCyABQQFqIQFB/QAhAgzEAQsgAUEBaiEBQYABIQIMwwELIAEgBEYEQEGYASECDNwBCwJAAkAgAS0AAEHOAGsOAwALAQsLIAFBAWohAUH+ACECDMMBCyABQQFqIQFB/wAhAgzCAQsgASAERgRAQZcBIQIM2wELIAEtAABB2QBHDQggAUEBaiEBQQgMBwtBlgEhAiABIARGDdkBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQazUAGotAABHDQYgAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNoBCyADQQA2AgAgBkEBaiEBQQUMBgtBlQEhAiABIARGDdgBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQabUAGotAABHDQUgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNkBCyADQQA2AgAgBkEBaiEBQRYMBQtBlAEhAiABIARGDdcBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDQQgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNgBCyADQQA2AgAgBkEBaiEBQRAMBAsgASAERgRAQZMBIQIM1wELAkACQCABLQAAQcMAaw4MAAYGBgYGBgYGBgYBBgsgAUEBaiEBQfkAIQIMvgELIAFBAWohAUH6ACECDL0BC0GSASECIAEgBEYN1QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBoNQAai0AAEcNAiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM1gELIANBADYCACAGQQFqIQFBJAwCCyADQQA2AgAMAgsgASAERgRAQZEBIQIM1AELIAEtAABBzABHDQEgAUEBaiEBQRMLOgApIAMoAgQhACADQQA2AgQgAyAAIAEQLiIADQIMAQtBACECIANBADYCHCADIAE2AhQgA0H+HzYCECADQQY2AgwM0QELQfgAIQIMtwELIANBkAE2AhwgAyABNgIUIAMgADYCDEEAIQIMzwELQQAhAAJAIAMoAjgiAkUNACACKAJAIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GCDzYCECADQSA2AgxBACECDM4BC0H3ACECDLQBCyADQY8BNgIcIAMgATYCFCADQewbNgIQIANBFTYCDEEAIQIMzAELIAEgBEYEQEGPASECDMwBCwJAIAEtAABBIEYEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQZsfNgIQIANBBjYCDEEAIQIMzAELQQIhAgyyAQsDQCABLQAAQSBHDQIgBCABQQFqIgFHDQALQY4BIQIMygELIAEgBEYEQEGNASECDMoBCwJAIAEtAABBCWsOBEoAAEoAC0H1ACECDLABCyADLQApQQVGBEBB9gAhAgywAQtB9AAhAgyvAQsgASAERgRAQYwBIQIMyAELIANBEDYCCCADIAE2AgQMCgsgASAERgRAQYsBIQIMxwELAkAgAS0AAEEJaw4ERwAARwALQfMAIQIMrQELIAEgBEcEQCADQRA2AgggAyABNgIEQfEAIQIMrQELQYoBIQIMxQELAkAgASAERwRAA0AgAS0AAEGg0ABqLQAAIgBBA0cEQAJAIABBAWsOAkkABAtB8AAhAgyvAQsgBCABQQFqIgFHDQALQYgBIQIMxgELQYgBIQIMxQELIANBADYCHCADIAE2AhQgA0HbIDYCECADQQc2AgxBACECDMQBCyABIARGBEBBiQEhAgzEAQsCQAJAAkAgAS0AAEGg0gBqLQAAQQFrDgNGAgABC0HyACECDKwBCyADQQA2AhwgAyABNgIUIANBtBI2AhAgA0EHNgIMQQAhAgzEAQtB6gAhAgyqAQsgASAERwRAIAFBAWohAUHvACECDKoBC0GHASECDMIBCyAEIAEiAEYEQEGGASECDMIBCyAALQAAIgFBL0YEQCAAQQFqIQFB7gAhAgypAQsgAUEJayICQRdLDQEgACEBQQEgAnRBm4CABHENQQwBCyAEIAEiAEYEQEGFASECDMEBCyAALQAAQS9HDQAgAEEBaiEBDAMLQQAhAiADQQA2AhwgAyAANgIUIANB2yA2AhAgA0EHNgIMDL8BCwJAAkACQAJAAkADQCABLQAAQaDOAGotAAAiAEEFRwRAAkACQCAAQQFrDghHBQYHCAAEAQgLQesAIQIMrQELIAFBAWohAUHtACECDKwBCyAEIAFBAWoiAUcNAAtBhAEhAgzDAQsgAUEBagwUCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDMEBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDMABCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDL8BCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy+AQsgASAERgRAQYMBIQIMvgELAkAgAS0AAEGgzgBqLQAAQQFrDgg+BAUGAAgCAwcLIAFBAWohAQtBAyECDKMBCyABQQFqDA0LQQAhAiADQQA2AhwgA0HREjYCECADQQc2AgwgAyABQQFqNgIUDLoBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDLkBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDLgBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDLcBCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy2AQtB7AAhAgycAQsgASAERgRAQYIBIQIMtQELIAFBAWoMAgsgASAERgRAQYEBIQIMtAELIAFBAWoMAQsgASAERg0BIAFBAWoLIQFBBCECDJgBC0GAASECDLABCwNAIAEtAABBoMwAai0AACIAQQJHBEAgAEEBRwRAQekAIQIMmQELDDELIAQgAUEBaiIBRw0AC0H/ACECDK8BCyABIARGBEBB/gAhAgyvAQsCQCABLQAAQQlrDjcvAwYvBAYGBgYGBgYGBgYGBgYGBgYGBgUGBgIGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYABgsgAUEBagshAUEFIQIMlAELIAFBAWoMBgsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgyrAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgyqAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgypAQsgA0EANgIcIAMgATYCFCADQY0UNgIQIANBBzYCDEEAIQIMqAELAkACQAJAAkADQCABLQAAQaDKAGotAAAiAEEFRwRAAkAgAEEBaw4GLgMEBQYABgtB6AAhAgyUAQsgBCABQQFqIgFHDQALQf0AIQIMqwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMqgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMqQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMqAELIANBADYCHCADIAE2AhQgA0HkCDYCECADQQc2AgxBACECDKcBCyABIARGDQEgAUEBagshAUEGIQIMjAELQfwAIQIMpAELAkACQAJAAkADQCABLQAAQaDIAGotAAAiAEEFRwRAIABBAWsOBCkCAwQFCyAEIAFBAWoiAUcNAAtB+wAhAgynAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgymAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgylAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgykAQsgA0EANgIcIAMgATYCFCADQbwKNgIQIANBBzYCDEEAIQIMowELQc8AIQIMiQELQdEAIQIMiAELQecAIQIMhwELIAEgBEYEQEH6ACECDKABCwJAIAEtAABBCWsOBCAAACAACyABQQFqIQFB5gAhAgyGAQsgASAERgRAQfkAIQIMnwELAkAgAS0AAEEJaw4EHwAAHwALQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFBEBB4gEhAgyGAQsgAEEVRwRAIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDJ8BCyADQfgANgIcIAMgATYCFCADQeoaNgIQIANBFTYCDEEAIQIMngELIAEgBEcEQCADQQ02AgggAyABNgIEQeQAIQIMhQELQfcAIQIMnQELIAEgBEYEQEH2ACECDJ0BCwJAAkACQCABLQAAQcgAaw4LAAELCwsLCwsLCwILCyABQQFqIQFB3QAhAgyFAQsgAUEBaiEBQeAAIQIMhAELIAFBAWohAUHjACECDIMBC0H1ACECIAEgBEYNmwEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBtdUAai0AAEcNCCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMnAELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfQANgIcIAMgATYCFCADIAA2AgxBACECDJwBC0HiACECDIIBC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMnAELQeEAIQIMggELIANB8wA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyaAQsgAy0AKSIAQSNrQQtJDQkCQCAAQQZLDQBBASAAdEHKAHFFDQAMCgtBACECIANBADYCHCADIAE2AhQgA0HtCTYCECADQQg2AgwMmQELQfIAIQIgASAERg2YASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGz1QBqLQAARw0FIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyZAQsgAygCBCEAIANCADcDACADIAAgBkEBaiIBECsiAARAIANB8QA2AhwgAyABNgIUIAMgADYCDEEAIQIMmQELQd8AIQIMfwtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJkBC0HeACECDH8LIANB8AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyXAQsgAy0AKUEhRg0GIANBADYCHCADIAE2AhQgA0GRCjYCECADQQg2AgxBACECDJYBC0HvACECIAEgBEYNlQEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMlgELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgBFDQIgA0HtADYCHCADIAE2AhQgAyAANgIMQQAhAgyVAQsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNgAEgA0HuADYCHCADIAE2AhQgAyAANgIMQQAhAgyTAQtB3AAhAgx5C0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMkwELQdsAIQIMeQsgA0HsADYCHCADIAE2AhQgA0GAGzYCECADQRU2AgxBACECDJEBCyADLQApIgBBI0kNACAAQS5GDQAgA0EANgIcIAMgATYCFCADQckJNgIQIANBCDYCDEEAIQIMkAELQdoAIQIMdgsgASAERgRAQesAIQIMjwELAkAgAS0AAEEvRgRAIAFBAWohAQwBCyAD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ciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==`,`base64`)})})),Ta=n(((e,t)=>{let n=[`GET`,`HEAD`,`POST`],r=new Set(n),i=[101,204,205,304],a=[301,302,303,307,308],o=new Set(a),s=`1.7.9.11.13.15.17.19.20.21.22.23.25.37.42.43.53.69.77.79.87.95.101.102.103.104.109.110.111.113.115.117.119.123.135.137.139.143.161.179.389.427.465.512.513.514.515.526.530.531.532.540.548.554.556.563.587.601.636.989.990.993.995.1719.1720.1723.2049.3659.4045.4190.5060.5061.6000.6566.6665.6666.6667.6668.6669.6679.6697.10080`.split(`.`),c=new Set(s),l=[`no-referrer`,`no-referrer-when-downgrade`,`same-origin`,`origin`,`strict-origin`,`origin-when-cross-origin`,`strict-origin-when-cross-origin`,`unsafe-url`],u=[``,...l],d=new Set(l),f=[`follow`,`manual`,`error`],p=[`GET`,`HEAD`,`OPTIONS`,`TRACE`],m=new Set(p),h=[`navigate`,`same-origin`,`no-cors`,`cors`],g=[`omit`,`same-origin`,`include`],_=[`default`,`no-store`,`reload`,`no-cache`,`force-cache`,`only-if-cached`],v=[`content-encoding`,`content-language`,`content-location`,`content-type`,`content-length`],y=[`half`],b=[`CONNECT`,`TRACE`,`TRACK`],x=new Set(b),S=[`audio`,`audioworklet`,`font`,`image`,`manifest`,`paintworklet`,`script`,`style`,`track`,`video`,`xslt`,``];t.exports={subresource:S,forbiddenMethods:b,requestBodyHeader:v,referrerPolicy:u,requestRedirect:f,requestMode:h,requestCredentials:g,requestCache:_,redirectStatus:a,corsSafeListedMethods:n,nullBodyStatus:i,safeMethods:p,badPorts:s,requestDuplex:y,subresourceSet:new Set(S),badPortsSet:c,redirectStatusSet:o,corsSafeListedMethodsSet:r,safeMethodsSet:m,forbiddenMethodsSet:x,referrerPolicyTokens:d}})),Ea=n(((e,t)=>{let n=Symbol.for(`undici.globalOrigin.1`);function r(){return globalThis[n]}function i(e){if(e===void 0){Object.defineProperty(globalThis,n,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let t=new URL(e);if(t.protocol!==`http:`&&t.protocol!==`https:`)throw TypeError(`Only http & https urls are allowed, received ${t.protocol}`);Object.defineProperty(globalThis,n,{value:t,writable:!0,enumerable:!1,configurable:!1})}t.exports={getGlobalOrigin:r,setGlobalOrigin:i}})),Da=n(((e,t)=>{let n=new TextDecoder;function r(e){return e.length===0?``:(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),n.decode(e))}t.exports={utf8DecodeBytes:r}})),Oa=n(((e,n)=>{let r=t(`node:assert`),{utf8DecodeBytes:i}=Da();function a(e,t,n){let r=``;for(;n.position<t.length&&e(t[n.position]);)r+=t[n.position],n.position++;return r}function o(e,t,n){let r=t.indexOf(e,n.position),i=n.position;return r===-1?(n.position=t.length,t.slice(i)):(n.position=r,t.slice(i,n.position))}let s=/[\u0009\u000A\u000C\u000D\u0020]/g;function c(e){e=e.replace(s,``);let t=e.length;if(t%4==0&&e.charCodeAt(t-1)===61&&(--t,e.charCodeAt(t-1)===61&&--t),t%4==1||/[^+/0-9A-Za-z]/.test(e.length===t?e:e.substring(0,t)))return`failure`;let n=Buffer.from(e,`base64`);return new Uint8Array(n.buffer,n.byteOffset,n.byteLength)}function l(e){return e===9||e===10||e===12||e===13||e===32}function u(e){let t=e.length;if(65535>t)return String.fromCharCode.apply(null,e);let n=``,r=0,i=65535;for(;r<t;)r+i>t&&(i=t-r),n+=String.fromCharCode.apply(null,e.subarray(r,r+=i));return n}let d=/[^\x00-\xFF]/;function f(e){return r(!d.test(e)),e}function p(e){return JSON.parse(i(e))}function m(e,t=!0,n=!0){return h(e,t,n,l)}function h(e,t,n,r){let i=0,a=e.length-1;if(t)for(;i<e.length&&r(e.charCodeAt(i));)i++;if(n)for(;a>0&&r(e.charCodeAt(a));)a--;return i===0&&a===e.length-1?e:e.slice(i,a+1)}function g(e){let t=JSON.stringify(e);if(t===void 0)throw TypeError(`Value is not JSON serializable`);return r(typeof t==`string`),t}n.exports={collectASequenceOfCodePoints:a,collectASequenceOfCodePointsFast:o,forgivingBase64:c,isASCIIWhitespace:l,isomorphicDecode:u,isomorphicEncode:f,parseJSONFromBytes:p,removeASCIIWhitespace:m,removeChars:h,serializeJavascriptValueToJSONString:g}})),ka=n(((e,n)=>{let r=t(`node:assert`),{forgivingBase64:i,collectASequenceOfCodePoints:a,collectASequenceOfCodePointsFast:o,isomorphicDecode:s,removeASCIIWhitespace:c,removeChars:l}=Oa(),u=new TextEncoder,d=/^[-!#$%&'*+.^_|~A-Za-z0-9]+$/u,f=/[\u000A\u000D\u0009\u0020]/u,p=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/u;function m(e){r(e.protocol===`data:`);let t=h(e,!0);t=t.slice(5);let n={position:0},a=o(`,`,t,n),l=a.length;if(a=c(a,!0,!0),n.position>=t.length)return`failure`;n.position++;let u=g(t.slice(l+1));if(/;(?:\u0020*)base64$/iu.test(a)){if(u=i(s(u)),u===`failure`)return`failure`;a=a.slice(0,-6),a=a.replace(/(\u0020+)$/u,``),a=a.slice(0,-1)}a.startsWith(`;`)&&(a=`text/plain`+a);let d=b(a);return d===`failure`&&(d=b(`text/plain;charset=US-ASCII`)),{mimeType:d,body:u}}function h(e,t=!1){if(!t)return e.href;let n=e.href,r=e.hash.length,i=r===0?n:n.substring(0,n.length-r);return!r&&n.endsWith(`#`)?i.slice(0,-1):i}function g(e){return y(u.encode(e))}function _(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function v(e){return e>=48&&e<=57?e-48:(e&223)-55}function y(e){let t=e.length,n=new Uint8Array(t),r=0,i=0;for(;i<t;){let t=e[i];t===37?t===37&&!(_(e[i+1])&&_(e[i+2]))?n[r++]=37:(n[r++]=v(e[i+1])<<4|v(e[i+2]),i+=2):n[r++]=t,++i}return t===r?n:n.subarray(0,r)}function b(e){e=w(e,!0,!0);let t={position:0},n=o(`/`,e,t);if(n.length===0||!d.test(n)||t.position>=e.length)return`failure`;t.position++;let r=o(`;`,e,t);if(r=w(r,!1,!0),r.length===0||!d.test(r))return`failure`;let i=n.toLowerCase(),s=r.toLowerCase(),c={type:i,subtype:s,parameters:new Map,essence:`${i}/${s}`};for(;t.position<e.length;){t.position++,a(e=>f.test(e),e,t);let n=a(e=>e!==`;`&&e!==`=`,e,t);if(n=n.toLowerCase(),t.position<e.length){if(e[t.position]===`;`)continue;t.position++}if(t.position>=e.length)break;let r=null;if(e[t.position]===`"`)r=x(e,t,!0),o(`;`,e,t);else if(r=o(`;`,e,t),r=w(r,!1,!0),r.length===0)continue;n.length!==0&&d.test(n)&&(r.length===0||p.test(r))&&!c.parameters.has(n)&&c.parameters.set(n,r)}return c}function x(e,t,n=!1){let i=t.position,o=``;for(r(e[t.position]===`"`),t.position++;o+=a(e=>e!==`"`&&e!==`\\`,e,t),!(t.position>=e.length);){let n=e[t.position];if(t.position++,n===`\\`){if(t.position>=e.length){o+=`\\`;break}o+=e[t.position],t.position++}else{r(n===`"`);break}}return n?o:e.slice(i,t.position)}function S(e){r(e!==`failure`);let{parameters:t,essence:n}=e,i=n;for(let[e,n]of t.entries())i+=`;`,i+=e,i+=`=`,d.test(n)||(n=n.replace(/[\\"]/gu,`\\$&`),n=`"`+n,n+=`"`),i+=n;return i}function C(e){return e===13||e===10||e===9||e===32}function w(e,t=!0,n=!0){return l(e,t,n,C)}function T(e){switch(e.essence){case`application/ecmascript`:case`application/javascript`:case`application/x-ecmascript`:case`application/x-javascript`:case`text/ecmascript`:case`text/javascript`:case`text/javascript1.0`:case`text/javascript1.1`:case`text/javascript1.2`:case`text/javascript1.3`:case`text/javascript1.4`:case`text/javascript1.5`:case`text/jscript`:case`text/livescript`:case`text/x-ecmascript`:case`text/x-javascript`:return`text/javascript`;case`application/json`:case`text/json`:return`application/json`;case`image/svg+xml`:return`image/svg+xml`;case`text/xml`:case`application/xml`:return`application/xml`}return e.subtype.endsWith(`+json`)?`application/json`:e.subtype.endsWith(`+xml`)?`application/xml`:``}n.exports={dataURLProcessor:m,URLSerializer:h,stringPercentDecode:g,parseMIMEType:b,collectAnHTTPQuotedString:x,serializeAMimeType:S,removeHTTPWhitespace:w,minimizeSupportedMimeType:T,HTTP_TOKEN_CODEPOINTS:d}})),Aa=n(((e,n)=>{let r={__proto__:null,"node:crypto":()=>t(`node:crypto`),"node:sqlite":()=>t(`node:sqlite`),"node:worker_threads":()=>t(`node:worker_threads`),"node:zlib":()=>t(`node:zlib`)};function i(e){try{return r[e](),!0}catch(e){if(e.code!==`ERR_UNKNOWN_BUILTIN_MODULE`&&e.code!==`ERR_NO_CRYPTO`)throw e;return!1}}function a(e,t){return r[e]()[t]!==void 0}let o=[`markAsUncloneable`,`zstd`],s={markAsUncloneable:[`node:worker_threads`,`markAsUncloneable`],zstd:[`node:zlib`,`createZstdDecompress`]},c=[`crypto`,`sqlite`],l=[...c,...o];function u(e){if(c.includes(e))return i(`node:${e}`);if(o.includes(e)){let[t,n]=s[e];return a(t,n)}throw TypeError(`unknown feature: ${e}`)}let d=new class{#e=new Map;clear(){this.#e.clear()}has(e){return this.#e.get(e)??this.#t(e)}set(e,t){if(l.includes(e)===!1)throw TypeError(`unknown feature: ${e}`);this.#e.set(e,t)}#t(e){let t=u(e);return this.#e.set(e,t),t}};n.exports.runtimeFeatures=d,n.exports.default=d})),ja=n(((e,n)=>{let r=t(`node:assert`),{types:i,inspect:a}=t(`node:util`),{runtimeFeatures:o}=Aa(),s=Function.call.bind(Function.prototype[Symbol.hasInstance]),c={converters:{},util:{},errors:{},is:{}};c.errors.exception=function(e){return TypeError(`${e.header}: ${e.message}`)},c.errors.conversionFailed=function(e){let t=e.types.length===1?``:` one of`,n=`${e.argument} could not be converted to${t}: ${e.types.join(`, `)}.`;return c.errors.exception({header:e.prefix,message:n})},c.errors.invalidArgument=function(e){return c.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})},c.brandCheck=function(e,t){if(!s(t,e)){let e=TypeError(`Illegal invocation`);throw e.code=`ERR_INVALID_THIS`,e}},c.brandCheckMultiple=function(e){let t=e.map(e=>c.util.MakeTypeAssertion(e));return e=>{if(t.every(t=>!t(e))){let e=TypeError(`Illegal invocation`);throw e.code=`ERR_INVALID_THIS`,e}}},c.argumentLengthCheck=function({length:e},t,n){if(e<t)throw c.errors.exception({message:`${t} argument${t===1?``:`s`} required, but${e?` only`:``} ${e} found.`,header:n})},c.illegalConstructor=function(){throw c.errors.exception({header:`TypeError`,message:`Illegal constructor`})},c.util.MakeTypeAssertion=function(e){return t=>s(e,t)},c.util.Type=function(e){switch(typeof e){case`undefined`:return 1;case`boolean`:return 2;case`string`:return 3;case`symbol`:return 4;case`number`:return 5;case`bigint`:return 6;case`function`:case`object`:return e===null?7:8}},c.util.Types={UNDEFINED:1,BOOLEAN:2,STRING:3,SYMBOL:4,NUMBER:5,BIGINT:6,NULL:7,OBJECT:8},c.util.TypeValueToString=function(e){switch(c.util.Type(e)){case 1:return`Undefined`;case 2:return`Boolean`;case 3:return`String`;case 4:return`Symbol`;case 5:return`Number`;case 6:return`BigInt`;case 7:return`Null`;case 8:return`Object`}},c.util.markAsUncloneable=o.has(`markAsUncloneable`)?t(`node:worker_threads`).markAsUncloneable:()=>{},c.util.ConvertToInt=function(e,t,n,r){let i,a;t===64?(i=2**53-1,a=n===`unsigned`?0:-9007199254740991):n===`unsigned`?(a=0,i=2**t-1):(a=-(2**(t-1)),i=2**(t-1)-1);let o=Number(e);if(o===0&&(o=0),c.util.HasFlag(r,c.attributes.EnforceRange)){if(Number.isNaN(o)||o===1/0||o===-1/0)throw c.errors.exception({header:`Integer conversion`,message:`Could not convert ${c.util.Stringify(e)} to an integer.`});if(o=c.util.IntegerPart(o),o<a||o>i)throw c.errors.exception({header:`Integer conversion`,message:`Value must be between ${a}-${i}, got ${o}.`});return o}return!Number.isNaN(o)&&c.util.HasFlag(r,c.attributes.Clamp)?(o=Math.min(Math.max(o,a),i),o=Math.floor(o)%2==0?Math.floor(o):Math.ceil(o),o):Number.isNaN(o)||o===0&&Object.is(0,o)||o===1/0||o===-1/0?0:(o=c.util.IntegerPart(o),o%=2**t,n===`signed`&&o>=2**(t-1)?o-2**t:o)},c.util.IntegerPart=function(e){let t=Math.floor(Math.abs(e));return e<0?-1*t:t},c.util.Stringify=function(e){switch(c.util.Type(e)){case 4:return`Symbol(${e.description})`;case 8:return a(e);case 3:return`"${e}"`;case 6:return`${e}n`;default:return`${e}`}},c.util.IsResizableArrayBuffer=function(e){if(i.isArrayBuffer(e))return e.resizable;if(i.isSharedArrayBuffer(e))return e.growable;throw c.errors.exception({header:`IsResizableArrayBuffer`,message:`"${c.util.Stringify(e)}" is not an array buffer.`})},c.util.HasFlag=function(e,t){return typeof e==`number`&&(e&t)===t},c.sequenceConverter=function(e){return(t,n,r,i)=>{if(c.util.Type(t)!==8)throw c.errors.exception({header:n,message:`${r} (${c.util.Stringify(t)}) is not iterable.`});let a=typeof i==`function`?i():t?.[Symbol.iterator]?.(),o=[],s=0;if(a===void 0||typeof a.next!=`function`)throw c.errors.exception({header:n,message:`${r} is not iterable.`});for(;;){let{done:t,value:i}=a.next();if(t)break;o.push(e(i,n,`${r}[${s++}]`))}return o}},c.recordConverter=function(e,t){return(n,r,a)=>{if(c.util.Type(n)!==8)throw c.errors.exception({header:r,message:`${a} ("${c.util.TypeValueToString(n)}") is not an Object.`});let o={};if(!i.isProxy(n)){let i=[...Object.getOwnPropertyNames(n),...Object.getOwnPropertySymbols(n)];for(let s of i){let i=c.util.Stringify(s),l=e(s,r,`Key ${i} in ${a}`);o[l]=t(n[s],r,`${a}[${i}]`)}return o}let s=Reflect.ownKeys(n);for(let i of s)if(Reflect.getOwnPropertyDescriptor(n,i)?.enumerable){let s=e(i,r,a);o[s]=t(n[i],r,a)}return o}},c.interfaceConverter=function(e,t){return(n,r,i)=>{if(!e(n))throw c.errors.exception({header:r,message:`Expected ${i} ("${c.util.Stringify(n)}") to be an instance of ${t}.`});return n}},c.dictionaryConverter=function(e){return e.sort((e,t)=>(e.key>t.key)-(e.key<t.key)),(t,n,r)=>{let i={};if(t!=null&&c.util.Type(t)!==8)throw c.errors.exception({header:n,message:`Expected ${t} to be one of: Null, Undefined, Object.`});for(let a of e){let{key:e,defaultValue:o,required:s,converter:l}=a;if(s===!0&&(t==null||!Object.hasOwn(t,e)))throw c.errors.exception({header:n,message:`Missing required key "${e}".`});let u=t?.[e],d=o!==void 0;if(d&&u===void 0&&(u=o()),s||d||u!==void 0){if(u=l(u,n,`${r}.${e}`),a.allowedValues&&!a.allowedValues.includes(u))throw c.errors.exception({header:n,message:`${u} is not an accepted type. Expected one of ${a.allowedValues.join(`, `)}.`});i[e]=u}}return i}},c.nullableConverter=function(e){return(t,n,r)=>t===null?t:e(t,n,r)},c.is.USVString=function(e){return typeof e==`string`&&e.isWellFormed()},c.is.ReadableStream=c.util.MakeTypeAssertion(ReadableStream),c.is.Blob=c.util.MakeTypeAssertion(Blob),c.is.URLSearchParams=c.util.MakeTypeAssertion(URLSearchParams),c.is.File=c.util.MakeTypeAssertion(File),c.is.URL=c.util.MakeTypeAssertion(URL),c.is.AbortSignal=c.util.MakeTypeAssertion(AbortSignal),c.is.MessagePort=c.util.MakeTypeAssertion(MessagePort),c.is.BufferSource=function(e){return i.isArrayBuffer(e)||ArrayBuffer.isView(e)&&i.isArrayBuffer(e.buffer)},c.util.getCopyOfBytesHeldByBufferSource=function(e){let t=e,n=t,a=0,o=0;if(i.isTypedArray(t)||i.isDataView(t)?(n=t.buffer,a=t.byteOffset,o=t.byteLength):(r(i.isAnyArrayBuffer(t)),o=t.byteLength),n.detached)return new Uint8Array;let s=new Uint8Array(o),c=new Uint8Array(n,a,o);return s.set(c),s},c.converters.DOMString=function(e,t,n,r){if(e===null&&c.util.HasFlag(r,c.attributes.LegacyNullToEmptyString))return``;if(typeof e==`symbol`)throw c.errors.exception({header:t,message:`${n} is a symbol, which cannot be converted to a DOMString.`});return String(e)},c.converters.ByteString=function(e,t,n){if(typeof e==`symbol`)throw c.errors.exception({header:t,message:`${n} is a symbol, which cannot be converted to a ByteString.`});let r=String(e);for(let e=0;e<r.length;e++)if(r.charCodeAt(e)>255)throw TypeError(`Cannot convert argument to a ByteString because the character at index ${e} has a value of ${r.charCodeAt(e)} which is greater than 255.`);return r},c.converters.USVString=function(e){return typeof e==`string`?e.toWellFormed():`${e}`.toWellFormed()},c.converters.boolean=function(e){return!!e},c.converters.any=function(e){return e},c.converters[`long long`]=function(e,t,n){return c.util.ConvertToInt(e,64,`signed`,0,t,n)},c.converters[`unsigned long long`]=function(e,t,n){return c.util.ConvertToInt(e,64,`unsigned`,0,t,n)},c.converters[`unsigned long`]=function(e,t,n){return c.util.ConvertToInt(e,32,`unsigned`,0,t,n)},c.converters[`unsigned short`]=function(e,t,n,r){return c.util.ConvertToInt(e,16,`unsigned`,r,t,n)},c.converters.ArrayBuffer=function(e,t,n,r){if(c.util.Type(e)!==8||!i.isArrayBuffer(e))throw c.errors.conversionFailed({prefix:t,argument:`${n} ("${c.util.Stringify(e)}")`,types:[`ArrayBuffer`]});if(!c.util.HasFlag(r,c.attributes.AllowResizable)&&c.util.IsResizableArrayBuffer(e))throw c.errors.exception({header:t,message:`${n} cannot be a resizable ArrayBuffer.`});return e},c.converters.SharedArrayBuffer=function(e,t,n,r){if(c.util.Type(e)!==8||!i.isSharedArrayBuffer(e))throw c.errors.conversionFailed({prefix:t,argument:`${n} ("${c.util.Stringify(e)}")`,types:[`SharedArrayBuffer`]});if(!c.util.HasFlag(r,c.attributes.AllowResizable)&&c.util.IsResizableArrayBuffer(e))throw c.errors.exception({header:t,message:`${n} cannot be a resizable SharedArrayBuffer.`});return e},c.converters.TypedArray=function(e,t,n,r,a){if(c.util.Type(e)!==8||!i.isTypedArray(e)||e.constructor.name!==t.name)throw c.errors.conversionFailed({prefix:n,argument:`${r} ("${c.util.Stringify(e)}")`,types:[t.name]});if(!c.util.HasFlag(a,c.attributes.AllowShared)&&i.isSharedArrayBuffer(e.buffer))throw c.errors.exception({header:n,message:`${r} cannot be a view on a shared array buffer.`});if(!c.util.HasFlag(a,c.attributes.AllowResizable)&&c.util.IsResizableArrayBuffer(e.buffer))throw c.errors.exception({header:n,message:`${r} cannot be a view on a resizable array buffer.`});return e},c.converters.DataView=function(e,t,n,r){if(c.util.Type(e)!==8||!i.isDataView(e))throw c.errors.conversionFailed({prefix:t,argument:`${n} ("${c.util.Stringify(e)}")`,types:[`DataView`]});if(!c.util.HasFlag(r,c.attributes.AllowShared)&&i.isSharedArrayBuffer(e.buffer))throw c.errors.exception({header:t,message:`${n} cannot be a view on a shared array buffer.`});if(!c.util.HasFlag(r,c.attributes.AllowResizable)&&c.util.IsResizableArrayBuffer(e.buffer))throw c.errors.exception({header:t,message:`${n} cannot be a view on a resizable array buffer.`});return e},c.converters.ArrayBufferView=function(e,t,n,r){if(c.util.Type(e)!==8||!i.isArrayBufferView(e))throw c.errors.conversionFailed({prefix:t,argument:`${n} ("${c.util.Stringify(e)}")`,types:[`ArrayBufferView`]});if(!c.util.HasFlag(r,c.attributes.AllowShared)&&i.isSharedArrayBuffer(e.buffer))throw c.errors.exception({header:t,message:`${n} cannot be a view on a shared array buffer.`});if(!c.util.HasFlag(r,c.attributes.AllowResizable)&&c.util.IsResizableArrayBuffer(e.buffer))throw c.errors.exception({header:t,message:`${n} cannot be a view on a resizable array buffer.`});return e},c.converters.BufferSource=function(e,t,n,r){if(i.isArrayBuffer(e))return c.converters.ArrayBuffer(e,t,n,r);if(i.isArrayBufferView(e))return r&=~c.attributes.AllowShared,c.converters.ArrayBufferView(e,t,n,r);throw i.isSharedArrayBuffer(e)?c.errors.exception({header:t,message:`${n} cannot be a SharedArrayBuffer.`}):c.errors.conversionFailed({prefix:t,argument:`${n} ("${c.util.Stringify(e)}")`,types:[`ArrayBuffer`,`ArrayBufferView`]})},c.converters.AllowSharedBufferSource=function(e,t,n,r){if(i.isArrayBuffer(e))return c.converters.ArrayBuffer(e,t,n,r);if(i.isSharedArrayBuffer(e))return c.converters.SharedArrayBuffer(e,t,n,r);if(i.isArrayBufferView(e))return r|=c.attributes.AllowShared,c.converters.ArrayBufferView(e,t,n,r);throw c.errors.conversionFailed({prefix:t,argument:`${n} ("${c.util.Stringify(e)}")`,types:[`ArrayBuffer`,`SharedArrayBuffer`,`ArrayBufferView`]})},c.converters[`sequence<ByteString>`]=c.sequenceConverter(c.converters.ByteString),c.converters[`sequence<sequence<ByteString>>`]=c.sequenceConverter(c.converters[`sequence<ByteString>`]),c.converters[`record<ByteString, ByteString>`]=c.recordConverter(c.converters.ByteString,c.converters.ByteString),c.converters.Blob=c.interfaceConverter(c.is.Blob,`Blob`),c.converters.AbortSignal=c.interfaceConverter(c.is.AbortSignal,`AbortSignal`),c.converters.EventHandlerNonNull=function(e){return c.util.Type(e)===8?typeof e==`function`?e:()=>{}:null},c.attributes={Clamp:1,EnforceRange:2,AllowShared:4,AllowResizable:8,LegacyNullToEmptyString:16},n.exports={webidl:c}})),Ma=n(((e,n)=>{let{Transform:r}=t(`node:stream`),i=t(`node:zlib`),{redirectStatusSet:a,referrerPolicyTokens:o,badPortsSet:s}=Ta(),{getGlobalOrigin:c}=Ea(),{collectAnHTTPQuotedString:l,parseMIMEType:u}=ka(),{performance:d}=t(`node:perf_hooks`),{ReadableStreamFrom:f,isValidHTTPToken:p,normalizedMethodRecordsBase:m}=q(),h=t(`node:assert`),{isUint8Array:g}=t(`node:util/types`),{webidl:_}=ja(),{isomorphicEncode:v,collectASequenceOfCodePoints:y,removeChars:b}=Oa();function x(e){let t=e.urlList,n=t.length;return n===0?null:t[n-1].toString()}function S(e,t){if(!a.has(e.status))return null;let n=e.headersList.get(`location`,!0);return n!==null&&A(n)&&(C(n)||(n=w(n)),n=new URL(n,x(e))),n&&!n.hash&&(n.hash=t),n}function C(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n>126||n<32)return!1}return!0}function w(e){return Buffer.from(e,`binary`).toString(`utf8`)}function T(e){return e.urlList[e.urlList.length-1]}function E(e){let t=T(e);return xe(t)&&s.has(t.port)?`blocked`:`allowed`}function D(e){return e instanceof Error||e?.constructor?.name===`Error`||e?.constructor?.name===`DOMException`}function O(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(!(n===9||n>=32&&n<=126||n>=128&&n<=255))return!1}return!0}let k=p;function A(e){return(e[0]===` `||e[0]===` `||e[e.length-1]===` `||e[e.length-1]===` `||e.includes(`
|
|
5
|
+
`)||e.includes(`\r`)||e.includes(`\0`))===!1}function j(e){let t=(e.headersList.get(`referrer-policy`,!0)??``).split(`,`),n=``;if(t.length)for(let e=t.length;e!==0;e--){let r=t[e-1].trim();if(o.has(r)){n=r;break}}return n}function M(e,t){let n=j(t);n!==``&&(e.referrerPolicy=n)}function N(){return`allowed`}function P(){return`success`}function F(){return`success`}function I(e){let t=null;t=e.mode,e.headersList.set(`sec-fetch-mode`,t,!0)}function ee(e){let t=e.origin;if(!(t===`client`||t===void 0)){if(e.responseTainting===`cors`||e.mode===`websocket`)e.headersList.append(`origin`,t,!0);else if(e.method!==`GET`&&e.method!==`HEAD`){switch(e.referrerPolicy){case`no-referrer`:t=null;break;case`no-referrer-when-downgrade`:case`strict-origin`:case`strict-origin-when-cross-origin`:e.origin&&be(e.origin)&&!be(T(e))&&(t=null);break;case`same-origin`:ue(e,T(e))||(t=null);break;default:}e.headersList.append(`origin`,t,!0)}}}function L(e,t){return e}function te(e,t,n){return!e?.startTime||e.startTime<t?{domainLookupStartTime:t,domainLookupEndTime:t,connectionStartTime:t,connectionEndTime:t,secureConnectionStartTime:t,ALPNNegotiatedProtocol:e?.ALPNNegotiatedProtocol}:{domainLookupStartTime:L(e.domainLookupStartTime,n),domainLookupEndTime:L(e.domainLookupEndTime,n),connectionStartTime:L(e.connectionStartTime,n),connectionEndTime:L(e.connectionEndTime,n),secureConnectionStartTime:L(e.secureConnectionStartTime,n),ALPNNegotiatedProtocol:e.ALPNNegotiatedProtocol}}function R(e){return L(d.now(),e)}function ne(e){return{startTime:e.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:e.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}}function re(){return{referrerPolicy:`strict-origin-when-cross-origin`}}function z(e){return{referrerPolicy:e.referrerPolicy}}function ie(e){let t=e.referrerPolicy;h(t);let n=null;if(e.referrer===`client`){let e=c();if(!e||e.origin===`null`)return`no-referrer`;n=new URL(e)}else _.is.URL(e.referrer)&&(n=e.referrer);let r=ae(n),i=ae(n,!0);switch(r.toString().length>4096&&(r=i),t){case`no-referrer`:return`no-referrer`;case`origin`:return i??ae(n,!0);case`unsafe-url`:return r;case`strict-origin`:{let t=T(e);return V(r)&&!V(t)?`no-referrer`:i}case`strict-origin-when-cross-origin`:{let t=T(e);return ue(r,t)?r:V(r)&&!V(t)?`no-referrer`:i}case`same-origin`:return ue(e,r)?r:`no-referrer`;case`origin-when-cross-origin`:return ue(e,r)?r:i;case`no-referrer-when-downgrade`:{let t=T(e);return V(r)&&!V(t)?`no-referrer`:r}}}function ae(e,t=!1){return h(_.is.URL(e)),e=new URL(e),ye(e)?`no-referrer`:(e.username=``,e.password=``,e.hash=``,t===!0&&(e.pathname=``,e.search=``),e)}let oe=RegExp.prototype.test.bind(/^127\.(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.){2}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)$/),se=RegExp.prototype.test.bind(/^(?:(?:0{1,4}:){7}|(?:0{1,4}:){1,6}:|::)0{0,3}1$/);function ce(e){return e.includes(`:`)?(e[0]===`[`&&e[e.length-1]===`]`&&(e=e.slice(1,-1)),se(e)):oe(e)}function B(e){return e==null||e===`null`?!1:(e=new URL(e),!!(e.protocol===`https:`||e.protocol===`wss:`||ce(e.hostname)||e.hostname===`localhost`||e.hostname===`localhost.`||e.hostname.endsWith(`.localhost`)||e.hostname.endsWith(`.localhost.`)||e.protocol===`file:`))}function V(e){return _.is.URL(e)?e.href===`about:blank`||e.href===`about:srcdoc`||e.protocol===`data:`||e.protocol===`blob:`?!0:B(e.origin):!1}function le(e){}function ue(e,t){return e.origin===t.origin&&e.origin===`null`||e.protocol===t.protocol&&e.hostname===t.hostname&&e.port===t.port}function de(e){return e.controller.state===`aborted`}function fe(e){return e.controller.state===`aborted`||e.controller.state===`terminated`}function pe(e){return m[e.toLowerCase()]??e}let me=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function he(e,t,n=0,r=1){class i{#e;#t;#n;constructor(e,t){this.#e=e,this.#t=t,this.#n=0}next(){if(typeof this!=`object`||this===null||!(#e in this))throw TypeError(`'next' called on an object that does not implement interface ${e} Iterator.`);let i=this.#n,a=t(this.#e);if(i>=a.length)return{value:void 0,done:!0};let{[n]:o,[r]:s}=a[i];this.#n=i+1;let c;switch(this.#t){case`key`:c=o;break;case`value`:c=s;break;case`key+value`:c=[o,s];break}return{value:c,done:!1}}}return delete i.prototype.constructor,Object.setPrototypeOf(i.prototype,me),Object.defineProperties(i.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${e} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(e,t){return new i(e,t)}}function ge(e,t,n,r=0,i=1){let a=he(e,n,r,i),o={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return _.brandCheck(this,t),a(this,`key`)}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return _.brandCheck(this,t),a(this,`value`)}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return _.brandCheck(this,t),a(this,`key+value`)}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(n,r=globalThis){if(_.brandCheck(this,t),_.argumentLengthCheck(arguments,1,`${e}.forEach`),typeof n!=`function`)throw TypeError(`Failed to execute 'forEach' on '${e}': parameter 1 is not of type 'Function'.`);for(let{0:e,1:t}of a(this,`key+value`))n.call(r,t,e,this)}}};return Object.defineProperties(t.prototype,{...o,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:o.entries.value}})}function H(e,t,n){let r=t,i=n;try{ve(e.stream.getReader(),r,i)}catch(e){i(e)}}function _e(e){try{e.close(),e.byobRequest?.respond(0)}catch(e){if(!e.message.includes(`Controller is already closed`)&&!e.message.includes(`ReadableStream is already closed`))throw e}}async function ve(e,t,n){try{let r=[],i=0;do{let{done:a,value:o}=await e.read();if(a){t(Buffer.concat(r,i));return}if(!g(o)){n(TypeError(`Received non-Uint8Array chunk`));return}r.push(o),i+=o.length}while(!0)}catch(e){n(e)}}function ye(e){h(`protocol`in e);let t=e.protocol;return t===`about:`||t===`blob:`||t===`data:`}function be(e){return typeof e==`string`&&e[5]===`:`&&e[0]===`h`&&e[1]===`t`&&e[2]===`t`&&e[3]===`p`&&e[4]===`s`||e.protocol===`https:`}function xe(e){h(`protocol`in e);let t=e.protocol;return t===`http:`||t===`https:`}function Se(e,t){let n=e;if(!n.startsWith(`bytes`))return`failure`;let r={position:5};if(t&&y(e=>e===` `||e===` `,n,r),n.charCodeAt(r.position)!==61)return`failure`;r.position++,t&&y(e=>e===` `||e===` `,n,r);let i=y(e=>{let t=e.charCodeAt(0);return t>=48&&t<=57},n,r),a=i.length?Number(i):null;if(t&&y(e=>e===` `||e===` `,n,r),n.charCodeAt(r.position)!==45)return`failure`;r.position++,t&&y(e=>e===` `||e===` `,n,r);let o=y(e=>{let t=e.charCodeAt(0);return t>=48&&t<=57},n,r),s=o.length?Number(o):null;return r.position<n.length||s===null&&a===null||a>s?`failure`:{rangeStartValue:a,rangeEndValue:s}}function Ce(e,t,n){let r=`bytes `;return r+=v(`${e}`),r+=`-`,r+=v(`${t}`),r+=`/`,r+=v(`${n}`),r}var we=class extends r{#e;constructor(e){super(),this.#e=e}_transform(e,t,n){if(!this._inflateStream){if(e.length===0){n();return}this._inflateStream=(e[0]&15)==8?i.createInflate(this.#e):i.createInflateRaw(this.#e),this._inflateStream.on(`data`,this.push.bind(this)),this._inflateStream.on(`end`,()=>this.push(null)),this._inflateStream.on(`error`,e=>this.destroy(e))}this._inflateStream.write(e,t,n)}_final(e){this._inflateStream&&=(this._inflateStream.end(),null),e()}};function U(e){return new we(e)}function Te(e){let t=null,n=null,r=null,i=De(`content-type`,e);if(i===null)return`failure`;for(let e of i){let i=u(e);i===`failure`||i.essence===`*/*`||(r=i,r.essence===n?!r.parameters.has(`charset`)&&t!==null&&r.parameters.set(`charset`,t):(t=null,r.parameters.has(`charset`)&&(t=r.parameters.get(`charset`)),n=r.essence))}return r??`failure`}function Ee(e){let t=e,n={position:0},r=[],i=``;for(;n.position<t.length;){if(i+=y(e=>e!==`"`&&e!==`,`,t,n),n.position<t.length)if(t.charCodeAt(n.position)===34){if(i+=l(t,n),n.position<t.length)continue}else h(t.charCodeAt(n.position)===44),n.position++;i=b(i,!0,!0,e=>e===9||e===32),r.push(i),i=``}return r}function De(e,t){let n=t.get(e,!0);return n===null?null:Ee(n)}function Oe(e){return!1}function ke(e){return!!(e.username||e.password)}function Ae(e){return e!=null&&e!==`client`&&e!==`no-traversable`}var je=class{get baseUrl(){return c()}get origin(){return this.baseUrl?.origin}policyContainer=re()};n.exports={isAborted:de,isCancelled:fe,isValidEncodedURL:C,ReadableStreamFrom:f,tryUpgradeRequestToAPotentiallyTrustworthyURL:le,clampAndCoarsenConnectionTimingInfo:te,coarsenedSharedCurrentTime:R,determineRequestsReferrer:ie,makePolicyContainer:re,clonePolicyContainer:z,appendFetchMetadata:I,appendRequestOriginHeader:ee,TAOCheck:F,corsCheck:P,crossOriginResourcePolicyCheck:N,createOpaqueTimingInfo:ne,setRequestReferrerPolicyOnRedirect:M,isValidHTTPToken:p,requestBadPort:E,requestCurrentURL:T,responseURL:x,responseLocationURL:S,isURLPotentiallyTrustworthy:V,isValidReasonPhrase:O,sameOrigin:ue,normalizeMethod:pe,iteratorMixin:ge,createIterator:he,isValidHeaderName:k,isValidHeaderValue:A,isErrorLike:D,fullyReadBody:H,readableStreamClose:_e,urlIsLocal:ye,urlHasHttpsScheme:be,urlIsHttpHttpsScheme:xe,readAllBytes:ve,simpleRangeHeaderValue:Se,buildContentRange:Ce,createInflate:U,extractMimeType:Te,getDecodeSplit:De,environmentSettingsObject:new class{settingsObject=new je},isOriginIPPotentiallyTrustworthy:ce,hasAuthenticationEntry:Oe,includesCredentials:ke,isTraversableNavigable:Ae}})),Na=n(((e,n)=>{let{iteratorMixin:r}=Ma(),{kEnumerableProperty:i}=q(),{webidl:a}=ja(),o=t(`node:util`);var s=class e{#e=[];constructor(e=void 0){if(a.util.markAsUncloneable(this),e!==void 0)throw a.errors.conversionFailed({prefix:`FormData constructor`,argument:`Argument 1`,types:[`undefined`]})}append(t,n,r=void 0){a.brandCheck(this,e);let i=`FormData.append`;a.argumentLengthCheck(arguments,2,i),t=a.converters.USVString(t),arguments.length===3||a.is.Blob(n)?(n=a.converters.Blob(n,i,`value`),r!==void 0&&(r=a.converters.USVString(r))):n=a.converters.USVString(n);let o=u(t,n,r);this.#e.push(o)}delete(t){a.brandCheck(this,e),a.argumentLengthCheck(arguments,1,`FormData.delete`),t=a.converters.USVString(t),this.#e=this.#e.filter(e=>e.name!==t)}get(t){a.brandCheck(this,e),a.argumentLengthCheck(arguments,1,`FormData.get`),t=a.converters.USVString(t);let n=this.#e.findIndex(e=>e.name===t);return n===-1?null:this.#e[n].value}getAll(t){return a.brandCheck(this,e),a.argumentLengthCheck(arguments,1,`FormData.getAll`),t=a.converters.USVString(t),this.#e.filter(e=>e.name===t).map(e=>e.value)}has(t){return a.brandCheck(this,e),a.argumentLengthCheck(arguments,1,`FormData.has`),t=a.converters.USVString(t),this.#e.findIndex(e=>e.name===t)!==-1}set(t,n,r=void 0){a.brandCheck(this,e);let i=`FormData.set`;a.argumentLengthCheck(arguments,2,i),t=a.converters.USVString(t),arguments.length===3||a.is.Blob(n)?(n=a.converters.Blob(n,i,`value`),r!==void 0&&(r=a.converters.USVString(r))):n=a.converters.USVString(n);let o=u(t,n,r),s=this.#e.findIndex(e=>e.name===t);s===-1?this.#e.push(o):this.#e=[...this.#e.slice(0,s),o,...this.#e.slice(s+1).filter(e=>e.name!==t)]}[o.inspect.custom](e,t){let n=this.#e.reduce((e,t)=>(e[t.name]?Array.isArray(e[t.name])?e[t.name].push(t.value):e[t.name]=[e[t.name],t.value]:e[t.name]=t.value,e),{__proto__:null});t.depth??=e,t.colors??=!0;let r=o.formatWithOptions(t,n);return`FormData ${r.slice(r.indexOf(`]`)+2)}`}static getFormDataState(e){return e.#e}static setFormDataState(e,t){e.#e=t}};let{getFormDataState:c,setFormDataState:l}=s;Reflect.deleteProperty(s,`getFormDataState`),Reflect.deleteProperty(s,`setFormDataState`),r(`FormData`,s,c,`name`,`value`),Object.defineProperties(s.prototype,{append:i,delete:i,get:i,getAll:i,has:i,set:i,[Symbol.toStringTag]:{value:`FormData`,configurable:!0}});function u(e,t,n){if(typeof t!=`string`&&(a.is.File(t)||(t=new File([t],`blob`,{type:t.type})),n!==void 0)){let e={type:t.type,lastModified:t.lastModified};t=new File([t],n,e)}return{name:e,value:t}}a.is.FormData=a.util.MakeTypeAssertion(s),n.exports={FormData:s,makeEntry:u,setFormDataState:l}})),Pa=n(((e,n)=>{let{bufferToLowerCasedHeaderName:r}=q(),{HTTP_TOKEN_CODEPOINTS:i}=ka(),{makeEntry:a}=Na(),{webidl:o}=ja(),s=t(`node:assert`),{isomorphicDecode:c}=Oa(),l=Buffer.from(`--`),u=new TextDecoder,d=new TextDecoder(`utf-8`,{ignoreBOM:!0});function f(e){for(let t=0;t<e.length;++t)if(e.charCodeAt(t)&-128)return!1;return!0}function p(e){let t=e.length;if(t<27||t>70)return!1;for(let n=0;n<t;++n){let t=e.charCodeAt(n);if(!(t>=48&&t<=57||t>=65&&t<=90||t>=97&&t<=122||t===39||t===45||t===95))return!1}return!0}function m(e,t){s(t!==`failure`&&t.essence===`multipart/form-data`);let n=t.parameters.get(`boundary`);if(n===void 0)throw b(`missing boundary in content-type header`);let r=Buffer.from(`--${n}`,`utf8`),i=[],c={position:0},u=e.indexOf(r);if(u===-1)throw b(`no boundary found in multipart body`);for(c.position=u;;){if(e.subarray(c.position,c.position+r.length).equals(r))c.position+=r.length;else throw b(`expected a value starting with -- and the boundary`);if(y(e,l,c))return i;if(e[c.position]!==13||e[c.position+1]!==10)throw b(`expected CRLF`);c.position+=2;let{name:t,filename:n,contentType:u,encoding:p}=g(e,c);c.position+=2;let m;{let t=e.indexOf(r.subarray(2),c.position);if(t===-1)throw b(`expected boundary after body`);m=e.subarray(c.position,t-4),c.position+=m.length,p===`base64`&&(m=Buffer.from(m.toString(),`base64`))}if(e[c.position]!==13||e[c.position+1]!==10)throw b(`expected CRLF`);c.position+=2;let h;n===null?h=d.decode(Buffer.from(m)):(u??=`text/plain`,f(u)||(u=``),h=new File([m],n,{type:u})),s(o.is.USVString(t)),s(typeof h==`string`&&o.is.USVString(h)||o.is.File(h)),i.push(a(t,h,n))}}function h(e,t){e[t.position]===59&&t.position++,_(e=>e===32||e===9,e,t);let n=_(e=>C(e)&&e!==61&&e!==42,e,t);if(n.length===0)return null;let r=n.toString(`ascii`).toLowerCase(),i=e[t.position]===42;if(i&&t.position++,e[t.position]!==61)return null;t.position++,_(e=>e===32||e===9,e,t);let a;if(i){let n=_(e=>e!==32&&e!==13&&e!==10&&e!==59,e,t);if(n[0]!==117&&n[0]!==85||n[1]!==116&&n[1]!==84||n[2]!==102&&n[2]!==70||n[3]!==45||n[4]!==56)throw b(`unknown encoding, expected utf-8''`);a=decodeURIComponent(u.decode(n.subarray(7)))}else if(e[t.position]===34){t.position++;let n=_(e=>e!==10&&e!==13&&e!==34,e,t);if(e[t.position]!==34)throw b(`Closing quote not found`);t.position++,a=u.decode(n).replace(/%0A/gi,`
|
|
6
|
+
`).replace(/%0D/gi,`\r`).replace(/%22/g,`"`)}else{let n=_(e=>C(e)&&e!==59,e,t);a=u.decode(n)}return{name:r,value:a,extended:i}}function g(e,t){let n=null,a=null,o=null,s=null;for(;;){if(e[t.position]===13&&e[t.position+1]===10){if(n===null)throw b(`header name is null`);return{name:n,filename:a,contentType:o,encoding:s}}let l=_(e=>e!==10&&e!==13&&e!==58,e,t);if(l=v(l,!0,!0,e=>e===9||e===32),!i.test(l.toString()))throw b(`header name does not match the field-name token production`);if(e[t.position]!==58)throw b(`expected :`);switch(t.position++,_(e=>e===32||e===9,e,t),r(l)){case`content-disposition`:{n=a=null;let r=!1;if(_(e=>C(e),e,t).toString(`ascii`).toLowerCase()!==`form-data`)throw b(`expected form-data for content-disposition header`);for(;t.position<e.length&&(e[t.position]!==13||e[t.position+1]!==10);){let i=h(e,t);if(!i)break;i.name===`name`?n=i.value:i.name===`filename`&&(i.extended?(a=i.value,r=!0):r||(a=i.value))}if(n===null)throw b(`name attribute is required in content-disposition header`);break}case`content-type`:{let n=_(e=>e!==10&&e!==13,e,t);n=v(n,!1,!0,e=>e===9||e===32),o=c(n);break}case`content-transfer-encoding`:{let n=_(e=>e!==10&&e!==13,e,t);n=v(n,!1,!0,e=>e===9||e===32),s=c(n);break}default:_(e=>e!==10&&e!==13,e,t)}if(e[t.position]!==13||e[t.position+1]!==10)throw b(`expected CRLF`);t.position+=2}}function _(e,t,n){let r=n.position;for(;r<t.length&&e(t[r]);)++r;return t.subarray(n.position,n.position=r)}function v(e,t,n,r){let i=0,a=e.length-1;if(t)for(;i<e.length&&r(e[i]);)i++;if(n)for(;a>0&&r(e[a]);)a--;return i===0&&a===e.length-1?e:e.subarray(i,a+1)}function y(e,t,n){if(e.length<t.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==e[n.position+r])return!1;return!0}function b(e){return TypeError(`Failed to parse body as FormData.`,{cause:TypeError(e)})}function x(e){return e<=31||e===127}function S(e){return e===40||e===41||e===60||e===62||e===64||e===44||e===59||e===58||e===92||e===34||e===47||e===91||e===93||e===63||e===61}function C(e){return e<=127&&e!==32&&e!==9&&!x(e)&&!S(e)}n.exports={multipartFormDataParser:m,validateBoundary:p}})),Fa=n(((e,t)=>{function n(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}t.exports={createDeferredPromise:n}})),Ia=n(((e,n)=>{let r=q(),{ReadableStreamFrom:i,readableStreamClose:a,fullyReadBody:o,extractMimeType:s}=Ma(),{FormData:c,setFormDataState:l}=Na(),{webidl:u}=ja(),d=t(`node:assert`),{isErrored:f,isDisturbed:p}=t(`node:stream`),{isUint8Array:m}=t(`node:util/types`),{serializeAMimeType:h}=ka(),{multipartFormDataParser:g}=Pa(),{createDeferredPromise:_}=Fa(),{parseJSONFromBytes:v}=Oa(),{utf8DecodeBytes:y}=Da(),{runtimeFeatures:b}=Aa(),x=b.has(`crypto`)?t(`node:crypto`).randomInt:e=>Math.floor(Math.random()*e),S=new TextEncoder;function C(){}let w=new FinalizationRegistry(e=>{let t=e.deref();t&&!t.locked&&!p(t)&&!f(t)&&t.cancel(`Response object has been garbage collected`).catch(C)});function T(e,t=!1){let n=null,o=null;n=u.is.ReadableStream(e)?e:u.is.Blob(e)?e.stream():new ReadableStream({pull(){},start(e){o=e},cancel(){},type:`bytes`}),d(u.is.ReadableStream(n));let s=null,c=null,l=null,p=null;if(typeof e==`string`)c=e,p=`text/plain;charset=UTF-8`;else if(u.is.URLSearchParams(e))c=e.toString(),p=`application/x-www-form-urlencoded;charset=UTF-8`;else if(u.is.BufferSource(e))c=u.util.getCopyOfBytesHeldByBufferSource(e);else if(u.is.FormData(e)){let t=`----formdata-undici-0${`${x(1e11)}`.padStart(11,`0`)}`,n=`--${t}\r\nContent-Disposition: form-data`,r=e=>e.replace(/\n/g,`%0A`).replace(/\r/g,`%0D`).replace(/"/g,`%22`),i=e=>e.replace(/\r?\n|\r/g,`\r
|
|
7
7
|
`),a=[],o=new Uint8Array([13,10]);l=0;let u=!1;for(let[t,s]of e)if(typeof s==`string`){let e=S.encode(n+`; name="${r(i(t))}"\r\n\r\n${i(s)}\r\n`);a.push(e),l+=e.byteLength}else{let e=S.encode(`${n}; name="${r(i(t))}"`+(s.name?`; filename="${r(s.name)}"`:``)+`\r
|
|
8
|
-
Content-Type: ${s.type||`application/octet-stream`}\r\n\r\n`);a.push(e,s,o),typeof s.size==`number`?l+=e.byteLength+s.size+o.byteLength:u=!0}let d=S.encode(`--${t}--\r\n`);a.push(d),l+=d.byteLength,u&&(l=null),c=e,s=async function*(){for(let e of a)e.stream?yield*e.stream():yield e},p=`multipart/form-data; boundary=${t}`}else if(u.is.Blob(e))c=e,l=e.size,e.type&&(p=e.type);else if(typeof e[Symbol.asyncIterator]==`function`){if(t)throw TypeError(`keepalive`);if(r.isDisturbed(e)||e.locked)throw TypeError(`Response body object should not be disturbed or locked`);n=u.is.ReadableStream(e)?e:i(e)}return(typeof c==`string`||m(c))&&(s=()=>(l=typeof c==`string`?Buffer.byteLength(c):c.length,c)),s!=null&&(async()=>{let e=s(),t=e?.[Symbol.asyncIterator]?.();if(t)for await(let e of t){if(f(n))break;e.length&&o.enqueue(new Uint8Array(e))}else e?.length&&!f(n)&&o.enqueue(typeof e==`string`?S.encode(e):new Uint8Array(e));queueMicrotask(()=>a(o))})(),[{stream:n,source:c,length:l},p]}function E(e,t=!1){return u.is.ReadableStream(e)&&(d(!r.isDisturbed(e),`The body has already been consumed.`),d(!e.locked,`The stream is locked.`)),T(e,t)}function D(e){let{0:t,1:n}=e.stream.tee();return e.stream=t,{stream:n,length:e.length,source:e.source}}function O(e,t){return{blob(){return A(this,e=>{let n=M(t(this));return n===null?n=``:n&&=h(n),new Blob([e],{type:n})},e,t)},arrayBuffer(){return A(this,e=>new Uint8Array(e).buffer,e,t)},text(){return A(this,y,e,t)},json(){return A(this,v,e,t)},formData(){return A(this,e=>{let n=M(t(this));if(n!==null)switch(n.essence){case`multipart/form-data`:{let t=g(e,n),r=new c;return l(r,t),r}case`application/x-www-form-urlencoded`:{let t=new URLSearchParams(e.toString()),n=new c;for(let[e,r]of t)n.append(e,r);return n}}throw TypeError(`Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".`)},e,t)},bytes(){return A(this,e=>new Uint8Array(e),e,t)}}}function k(e,t){Object.assign(e.prototype,O(e,t))}function A(e,t,n,r){try{u.brandCheck(e,n)}catch(e){return Promise.reject(e)}if(e=r(e),j(e))return Promise.reject(TypeError(`Body is unusable: Body has already been read`));let i=_(),a=i.reject,s=e=>{try{i.resolve(t(e))}catch(e){a(e)}};return e.body==null?(s(Buffer.allocUnsafe(0)),i.promise):(o(e.body,s,a),i.promise)}function j(e){let t=e.body;return t!=null&&(t.stream.locked||r.isDisturbed(t.stream))}function M(e){let t=e.headersList,n=s(t);return n===`failure`?null:n}n.exports={extractBody:T,safelyExtractBody:E,cloneBody:D,mixinBody:k,streamRegistry:w,bodyUnusable:j}})),za=n(((e,n)=>{let r=t(`node:assert`),i=q(),{channels:a}=ga(),o=fa(),{RequestContentLengthMismatchError:s,ResponseContentLengthMismatchError:c,RequestAbortedError:l,HeadersTimeoutError:u,HeadersOverflowError:d,SocketError:f,InformationalError:p,BodyTimeoutError:m,HTTPParserError:h,ResponseExceededMaxSizeError:g}=K(),{kUrl:_,kReset:v,kClient:y,kParser:b,kBlocking:x,kRunning:S,kPending:C,kSize:w,kWriting:T,kQueue:E,kNoRef:D,kKeepAliveDefaultTimeout:O,kHostHeader:k,kPendingIdx:A,kRunningIdx:j,kError:M,kPipelining:N,kSocket:P,kKeepAliveTimeoutValue:F,kMaxHeadersSize:I,kKeepAliveMaxTimeout:ee,kKeepAliveTimeoutThreshold:L,kHeadersTimeout:te,kBodyTimeout:R,kStrictContentLength:ne,kMaxRequests:re,kCounter:z,kMaxResponseSize:ie,kOnError:ae,kResume:oe,kHTTPContext:se,kClosed:ce}=da(),le=wa(),B=Buffer.alloc(0),ue=Buffer[Symbol.species],de=i.removeAllListeners,fe=Symbol(`kIdleSocketValidation`),V=Symbol(`kIdleSocketValidationTimeout`),pe=Symbol(`kSocketUsed`),me;function he(){let e=process.env.JEST_WORKER_ID?Ta():void 0,t,n=process.arch!==`ppc64`;if(process.env.UNDICI_NO_WASM_SIMD===`1`?n=!1:process.env.UNDICI_NO_WASM_SIMD===`0`&&(n=!0),n)try{t=new WebAssembly.Module(Ea())}catch{}return t||=new WebAssembly.Module(e||Ta()),new WebAssembly.Instance(t,{env:{wasm_on_url:(e,t,n)=>0,wasm_on_status:(e,t,n)=>{r(H.ptr===e);let i=t-ye+_e.byteOffset;return H.onStatus(new ue(_e.buffer,i,n))},wasm_on_message_begin:e=>(r(H.ptr===e),H.onMessageBegin()),wasm_on_header_field:(e,t,n)=>{r(H.ptr===e);let i=t-ye+_e.byteOffset;return H.onHeaderField(new ue(_e.buffer,i,n))},wasm_on_header_value:(e,t,n)=>{r(H.ptr===e);let i=t-ye+_e.byteOffset;return H.onHeaderValue(new ue(_e.buffer,i,n))},wasm_on_headers_complete:(e,t,n,i)=>(r(H.ptr===e),H.onHeadersComplete(t,n===1,i===1)),wasm_on_body:(e,t,n)=>{r(H.ptr===e);let i=t-ye+_e.byteOffset;return H.onBody(new ue(_e.buffer,i,n))},wasm_on_message_complete:e=>(r(H.ptr===e),H.onMessageComplete())}})}let ge=null,H=null,_e=null,ve=0,ye=null;var be=class{constructor(e,t,{exports:n}){this.llhttp=n,this.ptr=this.llhttp.llhttp_alloc(le.TYPE.RESPONSE),this.client=e,this.socket=t,this.timeout=null,this.timeoutWeakRef=new WeakRef(this),this.timeoutValue=null,this.timeoutType=null,this.statusCode=0,this.statusText=``,this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=e[I],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive=``,this.contentLength=``,this.connection=``,this.maxResponseSize=e[ie]}setTimeout(e,t){e!==this.timeoutValue||t&1^this.timeoutType&1?(this.timeout&&=(o.clearTimeout(this.timeout),null),e&&(t&1?this.timeout=o.setFastTimeout(xe,e,this.timeoutWeakRef):(this.timeout=setTimeout(xe,e,this.timeoutWeakRef),this.timeout?.unref())),this.timeoutValue=e):this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.timeoutType=t}resume(){this.socket.destroyed||!this.paused||(r(this.ptr!=null),r(H===null),this.llhttp.llhttp_resume(this.ptr),r(this.timeoutType===5),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||B),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let e=this.socket.read();if(e===null)break;this.execute(e)}}execute(e){r(H===null),r(this.ptr!=null),r(!this.paused);let{socket:t,llhttp:n}=this;e.length>ve&&(ye&&n.free(ye),ve=Math.ceil(e.length/4096)*4096,ye=n.malloc(ve)),new Uint8Array(n.memory.buffer,ye,ve).set(e);try{let r;try{_e=e,H=this,r=n.llhttp_execute(this.ptr,ye,e.length)}finally{H=null,_e=null}if(r!==le.ERROR.OK){let i=e.subarray(n.llhttp_get_error_pos(this.ptr)-ye);if(r===le.ERROR.PAUSED_UPGRADE)this.onUpgrade(i);else if(r===le.ERROR.PAUSED)this.paused=!0,t.unshift(i);else throw this.createError(r,i)}}catch(e){i.destroy(t,e)}}finish(){r(H===null),r(this.ptr!=null),r(!this.paused);let{llhttp:e}=this,t;try{H=this,t=e.llhttp_finish(this.ptr)}finally{H=null}return t===le.ERROR.OK?null:t===le.ERROR.PAUSED||t===le.ERROR.PAUSED_UPGRADE?(this.paused=!0,null):this.createError(t,B)}createError(e,t){let{llhttp:n,contentLength:r,bytesRead:i}=this;if(r&&i!==parseInt(r,10))return new c;let a=n.llhttp_get_error_reason(this.ptr),o=``;if(a){let e=new Uint8Array(n.memory.buffer,a).indexOf(0);o=`Response does not match the HTTP/1.1 protocol (`+Buffer.from(n.memory.buffer,a,e).toString()+`)`}return new h(o,le.ERROR[e],t)}destroy(){r(H===null),r(this.ptr!=null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&o.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(e){return this.statusText=e.toString(),0}onMessageBegin(){let{socket:e,client:t}=this;if(e.destroyed)return-1;if(t[S]===0)return i.destroy(e,new f(`bad response`,i.getSocketInfo(e))),-1;let n=t[E][t[j]];return n?(n.onResponseStarted(),0):-1}onHeaderField(e){let t=this.headers.length;return t&1?this.headers[t-1]=Buffer.concat([this.headers[t-1],e]):this.headers.push(e),this.trackHeader(e.length),0}onHeaderValue(e){let t=this.headers.length;(t&1)==1?(this.headers.push(e),t+=1):this.headers[t-1]=Buffer.concat([this.headers[t-1],e]);let n=this.headers[t-2];if(n.length===10){let t=i.bufferToLowerCasedHeaderName(n);t===`keep-alive`?this.keepAlive+=e.toString():t===`connection`&&(this.connection+=e.toString())}else n.length===14&&i.bufferToLowerCasedHeaderName(n)===`content-length`&&(this.contentLength+=e.toString());return this.trackHeader(e.length),0}trackHeader(e){this.headersSize+=e,this.headersSize>=this.headersMaxSize&&i.destroy(this.socket,new d)}onUpgrade(e){let{upgrade:t,client:n,socket:a,headers:o,statusCode:s}=this;r(t),r(n[P]===a),r(!a.destroyed),r(!this.paused),r((o.length&1)==0);let c=n[E][n[j]];r(c),r(c.upgrade||c.method===`CONNECT`),this.statusCode=0,this.statusText=``,this.shouldKeepAlive=!1,this.headers=[],this.headersSize=0,a.unshift(e),a[b].destroy(),a[b]=null,a[y]=null,a[M]=null,de(a),n[P]=null,n[se]=null,n[E][n[j]++]=null,n.emit(`disconnect`,n[_],[n],new p(`upgrade`));try{c.onUpgrade(s,o,a)}catch(e){i.destroy(a,e)}n[oe]()}onHeadersComplete(e,t,n){let{client:a,socket:o,headers:s,statusText:c}=this;if(o.destroyed)return-1;if(a[S]===0)return i.destroy(o,new f(`bad response`,i.getSocketInfo(o))),-1;let l=a[E][a[j]];if(!l)return-1;if(r(!this.upgrade),r(this.statusCode<200),e===100)return i.destroy(o,new f(`bad response`,i.getSocketInfo(o))),-1;if(t&&!l.upgrade)return i.destroy(o,new f(`bad upgrade`,i.getSocketInfo(o))),-1;if(r(this.timeoutType===3),this.statusCode=e,this.shouldKeepAlive=n||l.method===`HEAD`&&!o[v]&&this.connection.toLowerCase()===`keep-alive`,this.statusCode>=200){let e=l.bodyTimeout==null?a[R]:l.bodyTimeout;this.setTimeout(e,5)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(l.method===`CONNECT`||t)return r(a[S]===1),this.upgrade=!0,2;if(r((this.headers.length&1)==0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&a[N]){let e=this.keepAlive?i.parseKeepAliveTimeout(this.keepAlive):null;if(e!=null){let t=Math.min(e-a[L],a[ee]);t<=0?o[v]=!0:a[F]=t}else a[F]=a[O]}else o[v]=!0;let u=l.onHeaders(e,s,this.resume,c)===!1;return l.aborted?-1:l.method===`HEAD`||e<200?1:(o[x]&&(o[x]=!1,a[oe]()),u?le.ERROR.PAUSED:0)}onBody(e){let{client:t,socket:n,statusCode:a,maxResponseSize:o}=this;if(n.destroyed)return-1;let s=t[E][t[j]];return r(s),r(this.timeoutType===5),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),r(a>=200),o>-1&&this.bytesRead+e.length>o?(i.destroy(n,new g),-1):(this.bytesRead+=e.length,s.onData(e)===!1?le.ERROR.PAUSED:0)}onMessageComplete(){let{client:e,socket:t,statusCode:n,upgrade:a,headers:o,contentLength:s,bytesRead:l,shouldKeepAlive:u}=this;if(t.destroyed&&(!n||u))return-1;if(a)return 0;r(n>=100),r((this.headers.length&1)==0);let d=e[E][e[j]];return r(d),this.statusCode=0,this.statusText=``,this.bytesRead=0,this.contentLength=``,this.keepAlive=``,this.connection=``,this.headers=[],this.headersSize=0,n<200?0:d.method!==`HEAD`&&s&&l!==parseInt(s,10)?(i.destroy(t,new c),-1):(d.onComplete(o),e[E][e[j]++]=null,t[pe]=e[C]===0,t[T]?(r(e[S]===0),i.destroy(t,new p(`reset`)),le.ERROR.PAUSED):u?t[v]&&e[S]===0?(i.destroy(t,new p(`reset`)),le.ERROR.PAUSED):(e[N]==null||e[N]===1?setImmediate(e[oe]):e[oe](),0):(i.destroy(t,new p(`reset`)),le.ERROR.PAUSED))}};function xe(e){let t=e.deref();if(!t)return;let{socket:n,timeoutType:a,client:o,paused:s}=t;a===3?(!n[T]||n.writableNeedDrain||o[S]>1)&&(r(!s,`cannot be paused while waiting for headers`),i.destroy(n,new u)):a===5?s||i.destroy(n,new m):a===8&&(r(o[S]===0&&o[F]),i.destroy(n,new p(`socket idle timeout`)))}function Se(e,t){if(e[P]=t,ge||=he(),t.errored)throw t.errored;if(t.destroyed)throw new f(`destroyed`);return t[D]=!1,t[T]=!1,t[v]=!1,t[x]=!1,t[fe]=0,t[V]=null,t[pe]=!1,t[b]=new be(e,t,ge),i.addListener(t,`error`,Ce),i.addListener(t,`readable`,we),i.addListener(t,`end`,Te),i.addListener(t,`close`,Ee),t[ce]=!1,t.on(`close`,U),{version:`h1`,defaultPipelining:1,write(t){return je(e,t)},resume(){ke(e)},destroy(e,n){t[ce]?queueMicrotask(n):(t.on(`close`,n),t.destroy(e))},get destroyed(){return t.destroyed},busy(n){return!!(t[T]||t[v]||t[x]||t[fe]===1||n&&(e[S]>0&&!n.idempotent||e[S]>0&&(n.upgrade||n.method===`CONNECT`)||e[S]>0&&i.bodyLength(n.body)!==0&&(i.isStream(n.body)||i.isAsyncIterable(n.body)||i.isFormDataLike(n.body))))}}}function Ce(e){r(e.code!==`ERR_TLS_CERT_ALTNAME_INVALID`);let t=this[b];if(e.code===`ECONNRESET`&&t.statusCode&&!t.shouldKeepAlive){let e=t.finish();e&&(this[M]=e,this[y][ae](e));return}this[M]=e,this[y][ae](e)}function we(){this[b]?.readMore()}function Te(){let e=this[b];if(e.statusCode&&!e.shouldKeepAlive){let t=e.finish();t&&i.destroy(this,t);return}i.destroy(this,new f(`other side closed`,i.getSocketInfo(this)))}function Ee(){let e=this[b];De(this),e&&(!this[M]&&e.statusCode&&!e.shouldKeepAlive&&(this[M]=e.finish()||this[M]),this[b].destroy(),this[b]=null);let t=this[M]||new f(`closed`,i.getSocketInfo(this)),n=this[y];if(n[P]=null,n[se]=null,n.destroyed){r(n[C]===0);let e=n[E].splice(n[j]);for(let r=0;r<e.length;r++){let a=e[r];i.errorRequest(n,a,t)}}else if(n[S]>0&&t.code!==`UND_ERR_INFO`){let e=n[E][n[j]];n[E][n[j]++]=null,i.errorRequest(n,e,t)}n[A]=n[j],r(n[S]===0),n.emit(`disconnect`,n[_],[n],t),n[oe]()}function U(){this[ce]=!0}function De(e){e[V]&&(clearTimeout(e[V]),e[V]=null),e[fe]=0}function Oe(e,t){t[fe]=1,t[V]=setTimeout(()=>{t[V]=null,t[fe]=2,e[P]===t&&!t.destroyed&&e[oe]()},0),t[V].unref?.()}function ke(e){let t=e[P];if(t&&!t.destroyed){if(e[w]===0?!t[D]&&t.unref&&(t.unref(),t[D]=!0):t[D]&&t.ref&&(t.ref(),t[D]=!1),e[S]===0&&e[C]>0&&t[pe]){if(t[fe]===0)return Oe(e,t),t[b].readMore(),t.destroyed,void 0;if(t[fe]===1)return t[b].readMore(),t.destroyed,void 0}if(e[S]===0&&(t[b].readMore(),t.destroyed))return;if(e[w]===0)t[b].timeoutType!==8&&t[b].setTimeout(e[F],8);else if(e[S]>0&&t[b].statusCode<200&&t[b].timeoutType!==3){let n=e[E][e[j]],r=n.headersTimeout==null?e[te]:n.headersTimeout;t[b].setTimeout(r,3)}}}function Ae(e){return e!==`GET`&&e!==`HEAD`&&e!==`OPTIONS`&&e!==`TRACE`&&e!==`CONNECT`}function je(e,t){let{method:n,path:o,host:c,upgrade:u,blocking:d,reset:f}=t,{body:m,headers:h,contentLength:g}=t,_=n===`PUT`||n===`POST`||n===`PATCH`||n===`QUERY`||n===`PROPFIND`||n===`PROPPATCH`;if(i.isFormDataLike(m)){me||=Ra().extractBody;let[e,n]=me(m);t.contentType??h.push(`content-type`,n),m=e.stream,g=e.length}else i.isBlobLike(m)&&t.contentType==null&&m.type&&h.push(`content-type`,m.type);m&&typeof m.read==`function`&&m.read(0);let y=i.bodyLength(m);if(g=y??g,g===null&&(g=t.contentLength),g===0&&!_&&(g=null),Ae(n)&&g>0&&t.contentLength!==null&&t.contentLength!==g){if(e[ne])return i.errorRequest(e,t,new s),!1;process.emitWarning(new s)}let b=e[P];De(b);let S=n=>{t.aborted||t.completed||(i.errorRequest(e,t,n||new l),i.destroy(m),i.destroy(b,new p(`aborted`)))};try{t.onConnect(S)}catch(n){i.errorRequest(e,t,n)}if(t.aborted)return!1;n===`HEAD`&&(b[v]=!0),(u||n===`CONNECT`)&&(b[v]=!0),f!=null&&(b[v]=f),e[re]&&b[z]++>=e[re]&&(b[v]=!0),d&&(b[x]=!0),b.setTypeOfService&&b.setTypeOfService(t.typeOfService);let C=`${n} ${o} HTTP/1.1\r\n`;if(typeof c==`string`?C+=`host: ${c}\r\n`:C+=e[k],u?C+=`connection: upgrade\r\nupgrade: ${u}\r\n`:e[N]&&!b[v]?C+=`connection: keep-alive\r
|
|
8
|
+
Content-Type: ${s.type||`application/octet-stream`}\r\n\r\n`);a.push(e,s,o),typeof s.size==`number`?l+=e.byteLength+s.size+o.byteLength:u=!0}let d=S.encode(`--${t}--\r\n`);a.push(d),l+=d.byteLength,u&&(l=null),c=e,s=async function*(){for(let e of a)e.stream?yield*e.stream():yield e},p=`multipart/form-data; boundary=${t}`}else if(u.is.Blob(e))c=e,l=e.size,e.type&&(p=e.type);else if(typeof e[Symbol.asyncIterator]==`function`){if(t)throw TypeError(`keepalive`);if(r.isDisturbed(e)||e.locked)throw TypeError(`Response body object should not be disturbed or locked`);n=u.is.ReadableStream(e)?e:i(e)}return(typeof c==`string`||m(c))&&(s=()=>(l=typeof c==`string`?Buffer.byteLength(c):c.length,c)),s!=null&&(async()=>{let e=s(),t=e?.[Symbol.asyncIterator]?.();if(t)for await(let e of t){if(f(n))break;e.length&&o.enqueue(new Uint8Array(e))}else e?.length&&!f(n)&&o.enqueue(typeof e==`string`?S.encode(e):new Uint8Array(e));queueMicrotask(()=>a(o))})(),[{stream:n,source:c,length:l},p]}function E(e,t=!1){return u.is.ReadableStream(e)&&(d(!r.isDisturbed(e),`The body has already been consumed.`),d(!e.locked,`The stream is locked.`)),T(e,t)}function D(e){let{0:t,1:n}=e.stream.tee();return e.stream=t,{stream:n,length:e.length,source:e.source}}function O(e,t){return{blob(){return A(this,e=>{let n=M(t(this));return n===null?n=``:n&&=h(n),new Blob([e],{type:n})},e,t)},arrayBuffer(){return A(this,e=>new Uint8Array(e).buffer,e,t)},text(){return A(this,y,e,t)},json(){return A(this,v,e,t)},formData(){return A(this,e=>{let n=M(t(this));if(n!==null)switch(n.essence){case`multipart/form-data`:{let t=g(e,n),r=new c;return l(r,t),r}case`application/x-www-form-urlencoded`:{let t=new URLSearchParams(e.toString()),n=new c;for(let[e,r]of t)n.append(e,r);return n}}throw TypeError(`Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".`)},e,t)},bytes(){return A(this,e=>new Uint8Array(e),e,t)}}}function k(e,t){Object.assign(e.prototype,O(e,t))}function A(e,t,n,r){try{u.brandCheck(e,n)}catch(e){return Promise.reject(e)}if(e=r(e),j(e))return Promise.reject(TypeError(`Body is unusable: Body has already been read`));let i=_(),a=i.reject,s=e=>{try{i.resolve(t(e))}catch(e){a(e)}};return e.body==null?(s(Buffer.allocUnsafe(0)),i.promise):(o(e.body,s,a),i.promise)}function j(e){let t=e.body;return t!=null&&(t.stream.locked||r.isDisturbed(t.stream))}function M(e){let t=e.headersList,n=s(t);return n===`failure`?null:n}n.exports={extractBody:T,safelyExtractBody:E,cloneBody:D,mixinBody:k,streamRegistry:w,bodyUnusable:j}})),La=n(((e,n)=>{let r=t(`node:assert`),i=q(),{channels:a}=ma(),o=ua(),{RequestContentLengthMismatchError:s,ResponseContentLengthMismatchError:c,RequestAbortedError:l,HeadersTimeoutError:u,HeadersOverflowError:d,SocketError:f,InformationalError:p,BodyTimeoutError:m,HTTPParserError:h,ResponseExceededMaxSizeError:g}=K(),{kUrl:_,kReset:v,kClient:y,kParser:b,kBlocking:x,kRunning:S,kPending:C,kSize:w,kWriting:T,kQueue:E,kNoRef:D,kKeepAliveDefaultTimeout:O,kHostHeader:k,kPendingIdx:A,kRunningIdx:j,kError:M,kPipelining:N,kSocket:P,kKeepAliveTimeoutValue:F,kMaxHeadersSize:I,kKeepAliveMaxTimeout:ee,kKeepAliveTimeoutThreshold:L,kHeadersTimeout:te,kBodyTimeout:R,kStrictContentLength:ne,kMaxRequests:re,kCounter:z,kMaxResponseSize:ie,kOnError:ae,kResume:oe,kHTTPContext:se,kClosed:ce}=la(),B=Sa(),V=Buffer.alloc(0),le=Buffer[Symbol.species],ue=i.removeAllListeners,de=Symbol(`kIdleSocketValidation`),fe=Symbol(`kIdleSocketValidationTimeout`),pe=Symbol(`kSocketUsed`),me;function he(){let e=process.env.JEST_WORKER_ID?Ca():void 0,t,n=process.arch!==`ppc64`;if(process.env.UNDICI_NO_WASM_SIMD===`1`?n=!1:process.env.UNDICI_NO_WASM_SIMD===`0`&&(n=!0),n)try{t=new WebAssembly.Module(wa())}catch{}return t||=new WebAssembly.Module(e||Ca()),new WebAssembly.Instance(t,{env:{wasm_on_url:(e,t,n)=>0,wasm_on_status:(e,t,n)=>{r(H.ptr===e);let i=t-ye+_e.byteOffset;return H.onStatus(new le(_e.buffer,i,n))},wasm_on_message_begin:e=>(r(H.ptr===e),H.onMessageBegin()),wasm_on_header_field:(e,t,n)=>{r(H.ptr===e);let i=t-ye+_e.byteOffset;return H.onHeaderField(new le(_e.buffer,i,n))},wasm_on_header_value:(e,t,n)=>{r(H.ptr===e);let i=t-ye+_e.byteOffset;return H.onHeaderValue(new le(_e.buffer,i,n))},wasm_on_headers_complete:(e,t,n,i)=>(r(H.ptr===e),H.onHeadersComplete(t,n===1,i===1)),wasm_on_body:(e,t,n)=>{r(H.ptr===e);let i=t-ye+_e.byteOffset;return H.onBody(new le(_e.buffer,i,n))},wasm_on_message_complete:e=>(r(H.ptr===e),H.onMessageComplete())}})}let ge=null,H=null,_e=null,ve=0,ye=null;var be=class{constructor(e,t,{exports:n}){this.llhttp=n,this.ptr=this.llhttp.llhttp_alloc(B.TYPE.RESPONSE),this.client=e,this.socket=t,this.timeout=null,this.timeoutWeakRef=new WeakRef(this),this.timeoutValue=null,this.timeoutType=null,this.statusCode=0,this.statusText=``,this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=e[I],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive=``,this.contentLength=``,this.connection=``,this.maxResponseSize=e[ie]}setTimeout(e,t){e!==this.timeoutValue||t&1^this.timeoutType&1?(this.timeout&&=(o.clearTimeout(this.timeout),null),e&&(t&1?this.timeout=o.setFastTimeout(xe,e,this.timeoutWeakRef):(this.timeout=setTimeout(xe,e,this.timeoutWeakRef),this.timeout?.unref())),this.timeoutValue=e):this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.timeoutType=t}resume(){this.socket.destroyed||!this.paused||(r(this.ptr!=null),r(H===null),this.llhttp.llhttp_resume(this.ptr),r(this.timeoutType===5),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||V),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let e=this.socket.read();if(e===null)break;this.execute(e)}}execute(e){r(H===null),r(this.ptr!=null),r(!this.paused);let{socket:t,llhttp:n}=this;e.length>ve&&(ye&&n.free(ye),ve=Math.ceil(e.length/4096)*4096,ye=n.malloc(ve)),new Uint8Array(n.memory.buffer,ye,ve).set(e);try{let r;try{_e=e,H=this,r=n.llhttp_execute(this.ptr,ye,e.length)}finally{H=null,_e=null}if(r!==B.ERROR.OK){let i=e.subarray(n.llhttp_get_error_pos(this.ptr)-ye);if(r===B.ERROR.PAUSED_UPGRADE)this.onUpgrade(i);else if(r===B.ERROR.PAUSED)this.paused=!0,t.unshift(i);else throw this.createError(r,i)}}catch(e){i.destroy(t,e)}}finish(){r(H===null),r(this.ptr!=null),r(!this.paused);let{llhttp:e}=this,t;try{H=this,t=e.llhttp_finish(this.ptr)}finally{H=null}return t===B.ERROR.OK?null:t===B.ERROR.PAUSED||t===B.ERROR.PAUSED_UPGRADE?(this.paused=!0,null):this.createError(t,V)}createError(e,t){let{llhttp:n,contentLength:r,bytesRead:i}=this;if(r&&i!==parseInt(r,10))return new c;let a=n.llhttp_get_error_reason(this.ptr),o=``;if(a){let e=new Uint8Array(n.memory.buffer,a).indexOf(0);o=`Response does not match the HTTP/1.1 protocol (`+Buffer.from(n.memory.buffer,a,e).toString()+`)`}return new h(o,B.ERROR[e],t)}destroy(){r(H===null),r(this.ptr!=null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&o.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(e){return this.statusText=e.toString(),0}onMessageBegin(){let{socket:e,client:t}=this;if(e.destroyed)return-1;if(t[S]===0)return i.destroy(e,new f(`bad response`,i.getSocketInfo(e))),-1;let n=t[E][t[j]];return n?(n.onResponseStarted(),0):-1}onHeaderField(e){let t=this.headers.length;return t&1?this.headers[t-1]=Buffer.concat([this.headers[t-1],e]):this.headers.push(e),this.trackHeader(e.length),0}onHeaderValue(e){let t=this.headers.length;(t&1)==1?(this.headers.push(e),t+=1):this.headers[t-1]=Buffer.concat([this.headers[t-1],e]);let n=this.headers[t-2];if(n.length===10){let t=i.bufferToLowerCasedHeaderName(n);t===`keep-alive`?this.keepAlive+=e.toString():t===`connection`&&(this.connection+=e.toString())}else n.length===14&&i.bufferToLowerCasedHeaderName(n)===`content-length`&&(this.contentLength+=e.toString());return this.trackHeader(e.length),0}trackHeader(e){this.headersSize+=e,this.headersSize>=this.headersMaxSize&&i.destroy(this.socket,new d)}onUpgrade(e){let{upgrade:t,client:n,socket:a,headers:o,statusCode:s}=this;r(t),r(n[P]===a),r(!a.destroyed),r(!this.paused),r((o.length&1)==0);let c=n[E][n[j]];r(c),r(c.upgrade||c.method===`CONNECT`),this.statusCode=0,this.statusText=``,this.shouldKeepAlive=!1,this.headers=[],this.headersSize=0,a.unshift(e),a[b].destroy(),a[b]=null,a[y]=null,a[M]=null,ue(a),n[P]=null,n[se]=null,n[E][n[j]++]=null,n.emit(`disconnect`,n[_],[n],new p(`upgrade`));try{c.onUpgrade(s,o,a)}catch(e){i.destroy(a,e)}n[oe]()}onHeadersComplete(e,t,n){let{client:a,socket:o,headers:s,statusText:c}=this;if(o.destroyed)return-1;if(a[S]===0)return i.destroy(o,new f(`bad response`,i.getSocketInfo(o))),-1;let l=a[E][a[j]];if(!l)return-1;if(r(!this.upgrade),r(this.statusCode<200),e===100)return i.destroy(o,new f(`bad response`,i.getSocketInfo(o))),-1;if(t&&!l.upgrade)return i.destroy(o,new f(`bad upgrade`,i.getSocketInfo(o))),-1;if(r(this.timeoutType===3),this.statusCode=e,this.shouldKeepAlive=n||l.method===`HEAD`&&!o[v]&&this.connection.toLowerCase()===`keep-alive`,this.statusCode>=200){let e=l.bodyTimeout==null?a[R]:l.bodyTimeout;this.setTimeout(e,5)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(l.method===`CONNECT`||t)return r(a[S]===1),this.upgrade=!0,2;if(r((this.headers.length&1)==0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&a[N]){let e=this.keepAlive?i.parseKeepAliveTimeout(this.keepAlive):null;if(e!=null){let t=Math.min(e-a[L],a[ee]);t<=0?o[v]=!0:a[F]=t}else a[F]=a[O]}else o[v]=!0;let u=l.onHeaders(e,s,this.resume,c)===!1;return l.aborted?-1:l.method===`HEAD`||e<200?1:(o[x]&&(o[x]=!1,a[oe]()),u?B.ERROR.PAUSED:0)}onBody(e){let{client:t,socket:n,statusCode:a,maxResponseSize:o}=this;if(n.destroyed)return-1;let s=t[E][t[j]];return r(s),r(this.timeoutType===5),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),r(a>=200),o>-1&&this.bytesRead+e.length>o?(i.destroy(n,new g),-1):(this.bytesRead+=e.length,s.onData(e)===!1?B.ERROR.PAUSED:0)}onMessageComplete(){let{client:e,socket:t,statusCode:n,upgrade:a,headers:o,contentLength:s,bytesRead:l,shouldKeepAlive:u}=this;if(t.destroyed&&(!n||u))return-1;if(a)return 0;r(n>=100),r((this.headers.length&1)==0);let d=e[E][e[j]];return r(d),this.statusCode=0,this.statusText=``,this.bytesRead=0,this.contentLength=``,this.keepAlive=``,this.connection=``,this.headers=[],this.headersSize=0,n<200?0:d.method!==`HEAD`&&s&&l!==parseInt(s,10)?(i.destroy(t,new c),-1):(d.onComplete(o),e[E][e[j]++]=null,t[pe]=e[C]===0,t[T]?(r(e[S]===0),i.destroy(t,new p(`reset`)),B.ERROR.PAUSED):u?t[v]&&e[S]===0?(i.destroy(t,new p(`reset`)),B.ERROR.PAUSED):(e[N]==null||e[N]===1?setImmediate(e[oe]):e[oe](),0):(i.destroy(t,new p(`reset`)),B.ERROR.PAUSED))}};function xe(e){let t=e.deref();if(!t)return;let{socket:n,timeoutType:a,client:o,paused:s}=t;a===3?(!n[T]||n.writableNeedDrain||o[S]>1)&&(r(!s,`cannot be paused while waiting for headers`),i.destroy(n,new u)):a===5?s||i.destroy(n,new m):a===8&&(r(o[S]===0&&o[F]),i.destroy(n,new p(`socket idle timeout`)))}function Se(e,t){if(e[P]=t,ge||=he(),t.errored)throw t.errored;if(t.destroyed)throw new f(`destroyed`);return t[D]=!1,t[T]=!1,t[v]=!1,t[x]=!1,t[de]=0,t[fe]=null,t[pe]=!1,t[b]=new be(e,t,ge),i.addListener(t,`error`,Ce),i.addListener(t,`readable`,we),i.addListener(t,`end`,U),i.addListener(t,`close`,Te),t[ce]=!1,t.on(`close`,Ee),{version:`h1`,defaultPipelining:1,write(t){return je(e,t)},resume(){ke(e)},destroy(e,n){t[ce]?queueMicrotask(n):(t.on(`close`,n),t.destroy(e))},get destroyed(){return t.destroyed},busy(n){return!!(t[T]||t[v]||t[x]||t[de]===1||n&&(e[S]>0&&!n.idempotent||e[S]>0&&(n.upgrade||n.method===`CONNECT`)||e[S]>0&&i.bodyLength(n.body)!==0&&(i.isStream(n.body)||i.isAsyncIterable(n.body)||i.isFormDataLike(n.body))))}}}function Ce(e){r(e.code!==`ERR_TLS_CERT_ALTNAME_INVALID`);let t=this[b];if(e.code===`ECONNRESET`&&t.statusCode&&!t.shouldKeepAlive){let e=t.finish();e&&(this[M]=e,this[y][ae](e));return}this[M]=e,this[y][ae](e)}function we(){this[b]?.readMore()}function U(){let e=this[b];if(e.statusCode&&!e.shouldKeepAlive){let t=e.finish();t&&i.destroy(this,t);return}i.destroy(this,new f(`other side closed`,i.getSocketInfo(this)))}function Te(){let e=this[b];De(this),e&&(!this[M]&&e.statusCode&&!e.shouldKeepAlive&&(this[M]=e.finish()||this[M]),this[b].destroy(),this[b]=null);let t=this[M]||new f(`closed`,i.getSocketInfo(this)),n=this[y];if(n[P]=null,n[se]=null,n.destroyed){r(n[C]===0);let e=n[E].splice(n[j]);for(let r=0;r<e.length;r++){let a=e[r];i.errorRequest(n,a,t)}}else if(n[S]>0&&t.code!==`UND_ERR_INFO`){let e=n[E][n[j]];n[E][n[j]++]=null,i.errorRequest(n,e,t)}n[A]=n[j],r(n[S]===0),n.emit(`disconnect`,n[_],[n],t),n[oe]()}function Ee(){this[ce]=!0}function De(e){e[fe]&&(clearTimeout(e[fe]),e[fe]=null),e[de]=0}function Oe(e,t){t[de]=1,t[fe]=setTimeout(()=>{t[fe]=null,t[de]=2,e[P]===t&&!t.destroyed&&e[oe]()},0),t[fe].unref?.()}function ke(e){let t=e[P];if(t&&!t.destroyed){if(e[w]===0?!t[D]&&t.unref&&(t.unref(),t[D]=!0):t[D]&&t.ref&&(t.ref(),t[D]=!1),e[S]===0&&e[C]>0&&t[pe]){if(t[de]===0)return Oe(e,t),t[b].readMore(),t.destroyed,void 0;if(t[de]===1)return t[b].readMore(),t.destroyed,void 0}if(e[S]===0&&(t[b].readMore(),t.destroyed))return;if(e[w]===0)t[b].timeoutType!==8&&t[b].setTimeout(e[F],8);else if(e[S]>0&&t[b].statusCode<200&&t[b].timeoutType!==3){let n=e[E][e[j]],r=n.headersTimeout==null?e[te]:n.headersTimeout;t[b].setTimeout(r,3)}}}function Ae(e){return e!==`GET`&&e!==`HEAD`&&e!==`OPTIONS`&&e!==`TRACE`&&e!==`CONNECT`}function je(e,t){let{method:n,path:o,host:c,upgrade:u,blocking:d,reset:f}=t,{body:m,headers:h,contentLength:g}=t,_=n===`PUT`||n===`POST`||n===`PATCH`||n===`QUERY`||n===`PROPFIND`||n===`PROPPATCH`;if(i.isFormDataLike(m)){me||=Ia().extractBody;let[e,n]=me(m);t.contentType??h.push(`content-type`,n),m=e.stream,g=e.length}else i.isBlobLike(m)&&t.contentType==null&&m.type&&h.push(`content-type`,m.type);m&&typeof m.read==`function`&&m.read(0);let y=i.bodyLength(m);if(g=y??g,g===null&&(g=t.contentLength),g===0&&!_&&(g=null),Ae(n)&&g>0&&t.contentLength!==null&&t.contentLength!==g){if(e[ne])return i.errorRequest(e,t,new s),!1;process.emitWarning(new s)}let b=e[P];De(b);let S=n=>{t.aborted||t.completed||(i.errorRequest(e,t,n||new l),i.destroy(m),i.destroy(b,new p(`aborted`)))};try{t.onConnect(S)}catch(n){i.errorRequest(e,t,n)}if(t.aborted)return!1;n===`HEAD`&&(b[v]=!0),(u||n===`CONNECT`)&&(b[v]=!0),f!=null&&(b[v]=f),e[re]&&b[z]++>=e[re]&&(b[v]=!0),d&&(b[x]=!0),b.setTypeOfService&&b.setTypeOfService(t.typeOfService);let C=`${n} ${o} HTTP/1.1\r\n`;if(typeof c==`string`?C+=`host: ${c}\r\n`:C+=e[k],u?C+=`connection: upgrade\r\nupgrade: ${u}\r\n`:e[N]&&!b[v]?C+=`connection: keep-alive\r
|
|
9
9
|
`:C+=`connection: close\r
|
|
10
10
|
`,Array.isArray(h))for(let e=0;e<h.length;e+=2){let t=h[e+0],n=h[e+1];if(Array.isArray(n))for(let e=0;e<n.length;e++)C+=`${t}: ${n[e]}\r\n`;else C+=`${t}: ${n}\r\n`}return a.sendHeaders.hasSubscribers&&a.sendHeaders.publish({request:t,headers:C,socket:b}),!m||y===0?Ne(S,null,e,t,b,g,C,_):i.isBuffer(m)?Ne(S,m,e,t,b,g,C,_):i.isBlobLike(m)?typeof m.stream==`function`?Fe(S,m.stream(),e,t,b,g,C,_):Pe(S,m,e,t,b,g,C,_):i.isStream(m)?Me(S,m,e,t,b,g,C,_):i.isIterable(m)?Fe(S,m,e,t,b,g,C,_):r(!1),!0}function Me(e,t,n,a,o,s,c,u){r(s!==0||n[S]===0,`stream body cannot be pipelined`);let d=!1,f=new Ie({abort:e,socket:o,request:a,contentLength:s,client:n,expectsPayload:u,header:c}),p=function(e){if(!d)try{!f.write(e)&&this.pause&&this.pause()}catch(e){i.destroy(this,e)}},m=function(){d||t.resume&&t.resume()},h=function(){if(queueMicrotask(()=>{t.removeListener(`error`,g)}),!d){let e=new l;queueMicrotask(()=>g(e))}},g=function(e){if(!d){if(d=!0,r(o.destroyed||o[T]&&n[S]<=1),o.off(`drain`,m).off(`error`,g),t.removeListener(`data`,p).removeListener(`end`,g).removeListener(`close`,h),!e)try{f.end()}catch(t){e=t}f.destroy(e),e&&(e.code!==`UND_ERR_INFO`||e.message!==`reset`)?i.destroy(t,e):i.destroy(t)}};t.on(`data`,p).on(`end`,g).on(`error`,g).on(`close`,h),t.resume&&t.resume(),o.on(`drain`,m).on(`error`,g),t.errorEmitted??t.errored?setImmediate(g,t.errored):(t.endEmitted??t.readableEnded)&&setImmediate(g,null),(t.closeEmitted??t.closed)&&setImmediate(h)}function Ne(e,t,n,a,o,s,c,l){try{t?i.isBuffer(t)&&(r(s===t.byteLength,`buffer body must have content length`),o.cork(),o.write(`${c}content-length: ${s}\r\n\r\n`,`latin1`),o.write(t),o.uncork(),a.onBodySent(t),!l&&a.reset!==!1&&(o[v]=!0)):s===0?o.write(`${c}content-length: 0\r\n\r\n`,`latin1`):(r(s===null,`no body must not have content length`),o.write(`${c}\r\n`,`latin1`)),a.onRequestSent(),n[oe]()}catch(t){e(t)}}async function Pe(e,t,n,i,a,o,c,l){r(o===t.size,`blob body must have content length`);try{if(o!=null&&o!==t.size)throw new s;let e=Buffer.from(await t.arrayBuffer());a.cork(),a.write(`${c}content-length: ${o}\r\n\r\n`,`latin1`),a.write(e),a.uncork(),i.onBodySent(e),i.onRequestSent(),!l&&i.reset!==!1&&(a[v]=!0),n[oe]()}catch(t){e(t)}}async function Fe(e,t,n,i,a,o,s,c){r(o!==0||n[S]===0,`iterator body cannot be pipelined`);let l=null;function u(){if(l){let e=l;l=null,e()}}let d=()=>new Promise((e,t)=>{r(l===null),a[M]?t(a[M]):l=e});a.on(`close`,u).on(`drain`,u);let f=new Ie({abort:e,socket:a,request:i,contentLength:o,client:n,expectsPayload:c,header:s});try{for await(let e of t){if(a[M])throw a[M];f.write(e)||await d()}f.end()}catch(e){f.destroy(e)}finally{a.off(`close`,u).off(`drain`,u)}}var Ie=class{constructor({abort:e,socket:t,request:n,contentLength:r,client:i,expectsPayload:a,header:o}){this.socket=t,this.request=n,this.contentLength=r,this.client=i,this.bytesWritten=0,this.expectsPayload=a,this.header=o,this.abort=e,t[T]=!0}write(e){let{socket:t,request:n,contentLength:r,client:i,bytesWritten:a,expectsPayload:o,header:c}=this;if(t[M])throw t[M];if(t.destroyed)return!1;let l=Buffer.byteLength(e);if(!l)return!0;if(r!==null&&a+l>r){if(i[ne])throw new s;process.emitWarning(new s)}t.cork(),a===0&&(!o&&n.reset!==!1&&(t[v]=!0),r===null?t.write(`${c}transfer-encoding: chunked\r\n`,`latin1`):t.write(`${c}content-length: ${r}\r\n\r\n`,`latin1`)),r===null&&t.write(`\r\n${l.toString(16)}\r\n`,`latin1`),this.bytesWritten+=l;let u=t.write(e);return t.uncork(),n.onBodySent(e),u||t[b].timeout&&t[b].timeoutType===3&&t[b].timeout.refresh&&t[b].timeout.refresh(),u}end(){let{socket:e,contentLength:t,client:n,bytesWritten:r,expectsPayload:i,header:a,request:o}=this;if(o.onRequestSent(),e[T]=!1,e[M])throw e[M];if(!e.destroyed){if(r===0?i?e.write(`${a}content-length: 0\r\n\r\n`,`latin1`):e.write(`${a}\r\n`,`latin1`):t===null&&e.write(`\r
|
|
11
11
|
0\r
|
|
12
12
|
\r
|
|
13
|
-
`,`latin1`),t!==null&&r!==t){if(n[ne])throw new s;process.emitWarning(new s)}e[b].timeout&&e[b].timeoutType===3&&e[b].timeout.refresh&&e[b].timeout.refresh(),n[oe]()}}destroy(e){let{socket:t,client:n,abort:i}=this;t[T]=!1,e&&(r(n[S]<=1,`pipeline should only contain this request`),i(e))}};n.exports=Se})),Ba=n(((e,n)=>{let r=t(`node:assert`),{pipeline:i}=t(`node:stream`),a=q(),{RequestContentLengthMismatchError:o,RequestAbortedError:s,SocketError:c,InformationalError:l,InvalidArgumentError:u}=K(),{kUrl:d,kReset:f,kClient:p,kRunning:m,kPending:h,kQueue:g,kPendingIdx:_,kRunningIdx:v,kError:y,kSocket:b,kStrictContentLength:x,kOnError:S,kMaxConcurrentStreams:C,kPingInterval:w,kHTTP2Session:T,kHTTP2InitialWindowSize:E,kHTTP2ConnectionWindowSize:D,kResume:O,kSize:k,kHTTPContext:A,kClosed:j,kBodyTimeout:M,kEnableConnectProtocol:N,kRemoteSettings:P,kHTTP2Stream:F,kHTTP2SessionState:I}=da(),{channels:ee}=ga(),L=Symbol(`open streams`),te,R;try{R=t(`node:http2`)}catch{R={constants:{}}}let{constants:{HTTP2_HEADER_AUTHORITY:ne,HTTP2_HEADER_METHOD:re,HTTP2_HEADER_PATH:z,HTTP2_HEADER_SCHEME:ie,HTTP2_HEADER_CONTENT_LENGTH:ae,HTTP2_HEADER_EXPECT:oe,HTTP2_HEADER_STATUS:se,HTTP2_HEADER_PROTOCOL:ce,NGHTTP2_REFUSED_STREAM:le,NGHTTP2_CANCEL:B}}=R;function ue(e){let t=[];for(let[n,r]of Object.entries(e))if(Array.isArray(r))for(let e of r)t.push(Buffer.from(n),Buffer.from(e));else t.push(Buffer.from(n),Buffer.from(r));return t}function de(e,t){e[b]=t;let n=e[E],r=e[D],i=R.connect(e[d],{createConnection:()=>t,peerMaxConcurrentStreams:e[C],settings:{enablePush:!1,...n==null?null:{initialWindowSize:n}}});return e[b]=t,i[L]=0,i[p]=e,i[b]=t,i[I]={ping:{interval:e[w]===0?null:setInterval(me,e[w],i).unref()}},i[N]=!1,i[P]=!1,r&&a.addListener(i,`connect`,V.bind(i,r)),a.addListener(i,`error`,he),a.addListener(i,`frameError`,ge),a.addListener(i,`end`,H),a.addListener(i,`goaway`,_e),a.addListener(i,`close`,ve),a.addListener(i,`remoteSettings`,pe),i.unref(),e[T]=i,t[T]=i,a.addListener(t,`error`,be),a.addListener(t,`end`,xe),a.addListener(t,`close`,ye),t[j]=!1,t.on(`close`,Se),{version:`h2`,defaultPipelining:1/0,write(t){return we(e,t)},resume(){fe(e)},destroy(e,n){t[j]?queueMicrotask(n):t.destroy(e).on(`close`,n)},get destroyed(){return t.destroyed},busy(t){if(t!=null)if(e[m]>0){if(t.idempotent===!1||(t.upgrade===`websocket`||t.method===`CONNECT`)&&i[P]===!1||a.bodyLength(t.body)!==0&&(a.isStream(t.body)||a.isAsyncIterable(t.body)||a.isFormDataLike(t.body)))return!0}else return(t.upgrade===`websocket`||t.method===`CONNECT`)&&i[P]===!1;return!1}}}function fe(e){let t=e[b];t?.destroyed===!1&&(e[k]===0||e[C]===0?(t.unref(),e[T].unref()):(t.ref(),e[T].ref()))}function V(e){try{typeof this.setLocalWindowSize==`function`&&this.setLocalWindowSize(e)}catch{}}function pe(e){if(this[p][C]=e.maxConcurrentStreams??this[p][C],this[P]===!0&&this[N]===!0&&e.enableConnectProtocol===!1){let e=new l(`HTTP/2: Server disabled extended CONNECT protocol against RFC-8441`);this[b][y]=e,this[p][S](e);return}this[N]=e.enableConnectProtocol??this[N],this[P]=!0,this[p][O]()}function me(e){let t=e[I];if((e.closed||e.destroyed)&&t.ping.interval!=null){clearInterval(t.ping.interval),t.ping.interval=null;return}e.ping(n.bind(e));function n(e,t){let n=this[p],r=this[p];if(e!=null){let t=new l(`HTTP/2: "PING" errored - type ${e.message}`);r[y]=t,n[S](t)}else n.emit(`ping`,t)}}function he(e){r(e.code!==`ERR_TLS_CERT_ALTNAME_INVALID`),this[b][y]=e,this[p][S](e)}function ge(e,t,n){if(n===0){let n=new l(`HTTP/2: "frameError" received - type ${e}, code ${t}`);this[b][y]=n,this[p][S](n)}}function H(){let e=new c(`other side closed`,a.getSocketInfo(this[b]));this.destroy(e),a.destroy(this[b],e)}function _e(e){let t=this[y]||new c(`HTTP/2: "GOAWAY" frame received with code ${e}`,a.getSocketInfo(this[b])),n=this[p];if(n[b]=null,n[A]=null,this.close(),this[T]=null,a.destroy(this[b],t),n[v]<n[g].length){let e=n[g][n[v]];n[g][n[v]++]=null,a.errorRequest(n,e,t),n[_]=n[v]}r(n[m]===0),n.emit(`disconnect`,n[d],[n],t),n.emit(`connectionError`,n[d],[n],t),n[O]()}function ve(){let{[p]:e,[I]:t}=this,{[b]:n}=e,i=this[b][y]||this[y]||new c(`closed`,a.getSocketInfo(n));if(e[b]=null,e[A]=null,t.ping.interval!=null&&(clearInterval(t.ping.interval),t.ping.interval=null),e.destroyed){r(e[h]===0);let t=e[g].splice(e[v]);for(let n=0;n<t.length;n++){let r=t[n];a.errorRequest(e,r,i)}}}function ye(){let e=this[y]||new c(`closed`,a.getSocketInfo(this)),t=this[T][p];t[b]=null,t[A]=null,this[T]!==null&&this[T].destroy(e),t[_]=t[v],r(t[m]===0),t.emit(`disconnect`,t[d],[t],e),t[O]()}function be(e){r(e.code!==`ERR_TLS_CERT_ALTNAME_INVALID`),this[y]=e,this[p][S](e)}function xe(){a.destroy(this,new c(`other side closed`,a.getSocketInfo(this)))}function Se(){this[j]=!0}function Ce(e){return e!==`GET`&&e!==`HEAD`&&e!==`OPTIONS`&&e!==`TRACE`&&e!==`CONNECT`}function we(e,t){let n=t.bodyTimeout??e[M],i=e[T],{method:c,path:f,host:p,upgrade:m,expectContinue:h,signal:y,protocol:C,headers:w}=t,{body:E}=t;if(m!=null&&m!==`websocket`)return a.errorRequest(e,t,new u(`Custom upgrade "${m}" not supported over HTTP/2`)),!1;let D={};for(let e=0;e<w.length;e+=2){let t=w[e+0],n=w[e+1];if(t===`cookie`){D[t]==null?D[t]=n:D[t]=Array.isArray(D[t])?(D[t].push(n),D[t]):[D[t],n];continue}if(Array.isArray(n))for(let e=0;e<n.length;e++)D[t]?D[t]+=`, ${n[e]}`:D[t]=n[e];else D[t]?D[t]+=`, ${n}`:D[t]=n}let k=null,{hostname:A,port:j}=e[d];D[ne]=p||`${A}${j?`:${j}`:``}`,D[re]=c;let P=n=>{t.aborted||t.completed||(n||=new s,a.errorRequest(e,t,n),k!=null&&(k.removeAllListeners(`data`),k.close(),e[S](n),e[O]()),a.destroy(E,n))};try{t.onConnect(P)}catch(n){a.errorRequest(e,t,n)}if(t.aborted)return!1;if(m||c===`CONNECT`)return i.ref(),m===`websocket`?i[N]===!1?(a.errorRequest(e,t,new l(`HTTP/2: Extended CONNECT protocol not supported by server`)),i.unref(),!1):(D[re]=`CONNECT`,D[ce]=`websocket`,D[z]=f,C===`ws:`||C===`wss:`?D[ie]=C===`ws:`?`http`:`https`:D[ie]=C===`http:`?`http`:`https`,k=i.request(D,{endStream:!1,signal:y}),k[F]=!0,k.once(`response`,(n,r)=>{let{[se]:a,...o}=n;t.onUpgrade(a,ue(o),k),++i[L],e[g][e[v]++]=null}),k.on(`error`,()=>{(k.rstCode===le||k.rstCode===B)&&P(new l(`HTTP/2: "stream error" received - code ${k.rstCode}`))}),k.once(`close`,()=>{--i[L],i[L]===0&&i.unref()}),k.setTimeout(n),!0):(k=i.request(D,{endStream:!1,signal:y}),k[F]=!0,k.on(`response`,n=>{let{[se]:r,...a}=n;t.onUpgrade(r,ue(a),k),++i[L],e[g][e[v]++]=null}),k.once(`close`,()=>{--i[L],i[L]===0&&i.unref()}),k.setTimeout(n),!0);D[z]=f,D[ie]=C===`http:`?`http`:`https`;let I=c===`PUT`||c===`POST`||c===`PATCH`;E&&typeof E.read==`function`&&E.read(0);let R=a.bodyLength(E);if(a.isFormDataLike(E)){te??=Ra().extractBody;let[e,t]=te(E);D[`content-type`]=t,E=e.stream,R=e.length}if(R??=t.contentLength,I||(R=null),Ce(c)&&R>0&&t.contentLength!=null&&t.contentLength!==R){if(e[x])return a.errorRequest(e,t,new o),!1;process.emitWarning(new o)}if(R!=null&&(r(E||R===0,`no body must not have content length`),D[ae]=`${R}`),i.ref(),ee.sendHeaders.hasSubscribers){let e=``;for(let t in D)e+=`${t}: ${D[t]}\r\n`;ee.sendHeaders.publish({request:t,headers:e,socket:i[b]})}let de=c===`GET`||c===`HEAD`||E===null;h?(D[oe]=`100-continue`,k=i.request(D,{endStream:de,signal:y}),k[F]=!0,k.once(`continue`,V)):(k=i.request(D,{endStream:de,signal:y}),k[F]=!0,V()),++i[L],k.setTimeout(n);let fe=!1;return k.once(`response`,e=>{let{[se]:n,...r}=e;if(t.onResponseStarted(),fe=!0,t.aborted){k.removeAllListeners(`data`);return}t.onHeaders(Number(n),ue(r),k.resume.bind(k),``)===!1&&k.pause(),k.on(`data`,e=>{t.aborted||t.completed||t.onData(e)===!1&&k.pause()})}),k.once(`end`,()=>{k.removeAllListeners(`data`),fe?(!t.aborted&&!t.completed&&t.onComplete({}),e[g][e[v]++]=null,e[O]()):(P(new l(`HTTP/2: stream half-closed (remote)`)),e[g][e[v]++]=null,e[_]=e[v],e[O]())}),k.once(`close`,()=>{k.removeAllListeners(`data`),--i[L],i[L]===0&&i.unref()}),k.once(`error`,function(e){k.removeAllListeners(`data`),P(e)}),k.once(`frameError`,(e,t)=>{k.removeAllListeners(`data`),P(new l(`HTTP/2: "frameError" received - type ${e}, code ${t}`))}),k.on(`aborted`,()=>{k.removeAllListeners(`data`)}),k.on(`timeout`,()=>{let e=new l(`HTTP/2: "stream timeout after ${n}"`);k.removeAllListeners(`data`),--i[L],i[L]===0&&i.unref(),P(e)}),k.once(`trailers`,e=>{t.aborted||t.completed||(k.removeAllListeners(`data`),t.onComplete(e))}),!0;function V(){!E||R===0?Te(P,k,null,e,t,e[b],R,I):a.isBuffer(E)?Te(P,k,E,e,t,e[b],R,I):a.isBlobLike(E)?typeof E.stream==`function`?De(P,k,E.stream(),e,t,e[b],R,I):U(P,k,E,e,t,e[b],R,I):a.isStream(E)?Ee(P,e[b],I,k,E,e,t,R):a.isIterable(E)?De(P,k,E,e,t,e[b],R,I):r(!1)}}function Te(e,t,n,i,o,s,c,l){try{n!=null&&a.isBuffer(n)&&(r(c===n.byteLength,`buffer body must have content length`),t.cork(),t.write(n),t.uncork(),t.end(),o.onBodySent(n)),l||(s[f]=!0),o.onRequestSent(),i[O]()}catch(t){e(t)}}function Ee(e,t,n,o,s,c,l,u){r(u!==0||c[m]===0,`stream body cannot be pipelined`);let d=i(s,o,r=>{r?(a.destroy(d,r),e(r)):(a.removeAllListeners(d),l.onRequestSent(),n||(t[f]=!0),c[O]())});a.addListener(d,`data`,p);function p(e){l.onBodySent(e)}}async function U(e,t,n,i,a,s,c,l){r(c===n.size,`blob body must have content length`);try{if(c!=null&&c!==n.size)throw new o;let e=Buffer.from(await n.arrayBuffer());t.cork(),t.write(e),t.uncork(),t.end(),a.onBodySent(e),a.onRequestSent(),l||(s[f]=!0),i[O]()}catch(t){e(t)}}async function De(e,t,n,i,a,o,s,c){r(s!==0||i[m]===0,`iterator body cannot be pipelined`);let l=null;function u(){if(l){let e=l;l=null,e()}}let d=()=>new Promise((e,t)=>{r(l===null),o[y]?t(o[y]):l=e});t.on(`close`,u).on(`drain`,u);try{for await(let e of n){if(o[y])throw o[y];let n=t.write(e);a.onBodySent(e),n||await d()}t.end(),a.onRequestSent(),c||(o[f]=!0),i[O]()}catch(t){e(t)}finally{t.off(`close`,u).off(`drain`,u)}}n.exports=de})),Va=n(((e,n)=>{let r=t(`node:assert`),i=t(`node:net`),a=t(`node:http`),o=q(),{ClientStats:s}=ha(),{channels:c}=ga(),l=_a(),u=xa(),{InvalidArgumentError:d,InformationalError:f,ClientDestroyedError:p}=K(),m=Sa(),{kUrl:h,kServerName:g,kClient:_,kBusy:v,kConnect:y,kResuming:b,kRunning:x,kPending:S,kSize:C,kQueue:w,kConnected:T,kConnecting:E,kNeedDrain:D,kKeepAliveDefaultTimeout:O,kHostHeader:k,kPendingIdx:A,kRunningIdx:j,kError:M,kPipelining:N,kKeepAliveTimeoutValue:P,kMaxHeadersSize:F,kKeepAliveMaxTimeout:I,kKeepAliveTimeoutThreshold:ee,kHeadersTimeout:L,kBodyTimeout:te,kStrictContentLength:R,kConnector:ne,kMaxRequests:re,kCounter:z,kClose:ie,kDestroy:ae,kDispatch:oe,kLocalAddress:se,kMaxResponseSize:ce,kOnError:le,kHTTPContext:B,kMaxConcurrentStreams:ue,kHTTP2InitialWindowSize:de,kHTTP2ConnectionWindowSize:fe,kResume:V,kPingInterval:pe}=da(),me=za(),he=Ba(),ge=Symbol(`kClosedResolve`),H=a&&a.maxHeaderSize&&Number.isInteger(a.maxHeaderSize)&&a.maxHeaderSize>0?()=>a.maxHeaderSize:()=>{throw new d(`http module not available or http.maxHeaderSize invalid`)},_e=()=>{};function ve(e){return e[N]??e[B]?.defaultPipelining??1}var ye=class extends u{constructor(e,{maxHeaderSize:t,headersTimeout:n,socketTimeout:r,requestTimeout:a,connectTimeout:s,bodyTimeout:c,idleTimeout:l,keepAlive:u,keepAliveTimeout:f,maxKeepAliveTimeout:p,keepAliveMaxTimeout:_,keepAliveTimeoutThreshold:v,socketPath:y,pipelining:x,tls:S,strictContentLength:C,maxCachedSessions:T,connect:E,maxRequestsPerClient:M,localAddress:z,maxResponseSize:ie,autoSelectFamily:ae,autoSelectFamilyAttemptTimeout:oe,maxConcurrentStreams:me,allowH2:he,useH2c:_e,initialWindowSize:ve,connectionWindowSize:ye,pingInterval:xe,webSocket:Se}={}){if(u!==void 0)throw new d(`unsupported keepAlive, use pipelining=0 instead`);if(r!==void 0)throw new d(`unsupported socketTimeout, use headersTimeout & bodyTimeout instead`);if(a!==void 0)throw new d(`unsupported requestTimeout, use headersTimeout & bodyTimeout instead`);if(l!==void 0)throw new d(`unsupported idleTimeout, use keepAliveTimeout instead`);if(p!==void 0)throw new d(`unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead`);if(t!=null){if(!Number.isInteger(t)||t<1)throw new d(`invalid maxHeaderSize`)}else t=H();if(y!=null&&typeof y!=`string`)throw new d(`invalid socketPath`);if(s!=null&&(!Number.isFinite(s)||s<0))throw new d(`invalid connectTimeout`);if(f!=null&&(!Number.isFinite(f)||f<=0))throw new d(`invalid keepAliveTimeout`);if(_!=null&&(!Number.isFinite(_)||_<=0))throw new d(`invalid keepAliveMaxTimeout`);if(v!=null&&!Number.isFinite(v))throw new d(`invalid keepAliveTimeoutThreshold`);if(n!=null&&(!Number.isInteger(n)||n<0))throw new d(`headersTimeout must be a positive integer or zero`);if(c!=null&&(!Number.isInteger(c)||c<0))throw new d(`bodyTimeout must be a positive integer or zero`);if(E!=null&&typeof E!=`function`&&typeof E!=`object`)throw new d(`connect must be a function or an object`);if(M!=null&&(!Number.isInteger(M)||M<0))throw new d(`maxRequestsPerClient must be a positive number`);if(z!=null&&(typeof z!=`string`||i.isIP(z)===0))throw new d(`localAddress must be valid string IP address`);if(ie!=null&&(!Number.isInteger(ie)||ie<-1))throw new d(`maxResponseSize must be a positive number`);if(oe!=null&&(!Number.isInteger(oe)||oe<-1))throw new d(`autoSelectFamilyAttemptTimeout must be a positive number`);if(he!=null&&typeof he!=`boolean`)throw new d(`allowH2 must be a valid boolean value`);if(me!=null&&(typeof me!=`number`||me<1))throw new d(`maxConcurrentStreams must be a positive integer, greater than 0`);if(_e!=null&&typeof _e!=`boolean`)throw new d(`useH2c must be a valid boolean value`);if(ve!=null&&(!Number.isInteger(ve)||ve<1))throw new d(`initialWindowSize must be a positive integer, greater than 0`);if(ye!=null&&(!Number.isInteger(ye)||ye<1))throw new d(`connectionWindowSize must be a positive integer, greater than 0`);if(xe!=null&&(typeof xe!=`number`||!Number.isInteger(xe)||xe<0))throw new d(`pingInterval must be a positive integer, greater or equal to 0`);if(super({webSocket:Se}),typeof E!=`function`)E=m({...S,maxCachedSessions:T,allowH2:he,useH2c:_e,socketPath:y,timeout:s,...typeof ae==`boolean`?{autoSelectFamily:ae,autoSelectFamilyAttemptTimeout:oe}:void 0,...E});else{let e=E;E=(t,n)=>e({...t,...y==null?null:{socketPath:y},...he==null?null:{allowH2:he}},n)}this[h]=o.parseOrigin(e),this[ne]=E,this[N]=x??1,this[F]=t,this[O]=f??4e3,this[I]=_??6e5,this[ee]=v??2e3,this[P]=this[O],this[g]=null,this[se]=z??null,this[b]=0,this[D]=0,this[k]=`host: ${this[h].hostname}${this[h].port?`:${this[h].port}`:``}\r\n`,this[te]=c??3e5,this[L]=n??3e5,this[R]=C??!0,this[re]=M,this[ge]=null,this[ce]=ie>-1?ie:-1,this[B]=null,this[ue]=me??100,this[de]=ve??262144,this[fe]=ye??524288,this[pe]=xe??6e4,this[w]=[],this[j]=0,this[A]=0,this[V]=e=>we(this,e),this[le]=e=>be(this,e)}get pipelining(){return this[N]}set pipelining(e){this[N]=e,this[V](!0)}get stats(){return new s(this)}get[S](){return this[w].length-this[A]}get[x](){return this[A]-this[j]}get[C](){return this[w].length-this[j]}get[T](){return!!this[B]&&!this[E]&&!this[B].destroyed}get[v](){return!!(this[B]?.busy(null)||this[C]>=(ve(this)||1)||this[S]>0)}[y](e){xe(this),this.once(`connect`,e)}[oe](e,t){let n=new l(this[h].origin,e,t);return this[w].push(n),this[b]||(o.bodyLength(n.body)==null&&o.isIterable(n.body)?(this[b]=1,queueMicrotask(()=>we(this))):this[V](!0)),this[b]&&this[D]!==2&&this[v]&&(this[D]=2),this[D]<2}[ie](){return new Promise(e=>{this[C]?this[ge]=e:e(null)})}[ae](e){return new Promise(t=>{let n=this[w].splice(this[A]);for(let t=0;t<n.length;t++){let r=n[t];o.errorRequest(this,r,e)}let r=()=>{this[ge]&&(this[ge](),this[ge]=null),t(null)};this[B]?(this[B].destroy(e,r),this[B]=null):queueMicrotask(r),this[V]()})}};function be(e,t){if(e[x]===0&&t.code!==`UND_ERR_INFO`&&t.code!==`UND_ERR_SOCKET`){r(e[A]===e[j]);let n=e[w].splice(e[j]);for(let r=0;r<n.length;r++){let i=n[r];o.errorRequest(e,i,t)}r(e[C]===0)}}function xe(e){r(!e[E]),r(!e[B]);let{host:t,hostname:n,protocol:a,port:s}=e[h];if(n[0]===`[`){let e=n.indexOf(`]`);r(e!==-1);let t=n.substring(1,e);r(i.isIPv6(t)),n=t}e[E]=!0,c.beforeConnect.hasSubscribers&&c.beforeConnect.publish({connectParams:{host:t,hostname:n,protocol:a,port:s,version:e[B]?.version,servername:e[g],localAddress:e[se]},connector:e[ne]});try{e[ne]({host:t,hostname:n,protocol:a,port:s,servername:e[g],localAddress:e[se]},(i,l)=>{if(i){Se(e,i,{host:t,hostname:n,protocol:a,port:s}),e[V]();return}if(e.destroyed){o.destroy(l.on(`error`,_e),new p),e[V]();return}r(l);try{e[B]=l.alpnProtocol===`h2`?he(e,l):me(e,l)}catch(r){l.destroy().on(`error`,_e),Se(e,r,{host:t,hostname:n,protocol:a,port:s}),e[V]();return}e[E]=!1,l[z]=0,l[re]=e[re],l[_]=e,l[M]=null,c.connected.hasSubscribers&&c.connected.publish({connectParams:{host:t,hostname:n,protocol:a,port:s,version:e[B]?.version,servername:e[g],localAddress:e[se]},connector:e[ne],socket:l}),e.emit(`connect`,e[h],[e]),e[V]()})}catch(r){Se(e,r,{host:t,hostname:n,protocol:a,port:s}),e[V]()}}function Se(e,t,{host:n,hostname:i,protocol:a,port:s}){if(!e.destroyed){if(e[E]=!1,c.connectError.hasSubscribers&&c.connectError.publish({connectParams:{host:n,hostname:i,protocol:a,port:s,version:e[B]?.version,servername:e[g],localAddress:e[se]},connector:e[ne],error:t}),t.code===`ERR_TLS_CERT_ALTNAME_INVALID`)for(r(e[x]===0);e[S]>0&&e[w][e[A]].servername===e[g];){let n=e[w][e[A]++];o.errorRequest(e,n,t)}else be(e,t);e.emit(`connectionError`,e[h],[e],t)}}function Ce(e){e[D]=0,e.emit(`drain`,e[h],[e])}function we(e,t){e[b]!==2&&(e[b]=2,Te(e,t),e[b]=0,e[j]>256&&(e[w].splice(0,e[j]),e[A]-=e[j],e[j]=0))}function Te(e,t){for(;;){if(e.destroyed){r(e[S]===0);return}if(e[ge]&&!e[C]){e[ge](),e[ge]=null;return}if(e[B]&&e[B].resume(),e[v])e[D]=2;else if(e[D]===2){t?(e[D]=1,queueMicrotask(()=>Ce(e))):Ce(e);continue}if(e[S]===0||e[x]>=(ve(e)||1))return;let n=e[w][e[A]];if(n===null)return;if(e[h].protocol===`https:`&&e[g]!==n.servername){if(e[x]>0)return;e[g]=n.servername,e[B]?.destroy(new f(`servername changed`),()=>{e[B]=null,we(e)})}if(e[E])return;if(!e[B]){xe(e);return}if(e[B].destroyed||e[B].busy(n))return;!n.aborted&&e[B].write(n)?e[A]++:e[w].splice(e[A],1)}}n.exports=ye})),Ha=n(((e,t)=>{let n=2048,r=n-1;var i=class{bottom=0;top=0;list=Array(n).fill(void 0);next=null;isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&r)===this.bottom}push(e){this.list[this.top]=e,this.top=this.top+1&r}shift(){let e=this.list[this.bottom];return e===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&r,e)}};t.exports=class{constructor(){this.head=this.tail=new i}isEmpty(){return this.head.isEmpty()}push(e){this.head.isFull()&&(this.head=this.head.next=new i),this.head.push(e)}shift(){let e=this.tail,t=e.shift();return e.isEmpty()&&e.next!==null&&(this.tail=e.next,e.next=null),t}}})),Ua=n(((e,t)=>{let{PoolStats:n}=ha(),r=xa(),i=Ha(),{kConnected:a,kSize:o,kRunning:s,kPending:c,kQueued:l,kBusy:u,kFree:d,kUrl:f,kClose:p,kDestroy:m,kDispatch:h}=da(),g=Symbol(`clients`),_=Symbol(`needDrain`),v=Symbol(`queue`),y=Symbol(`closed resolve`),b=Symbol(`onDrain`),x=Symbol(`onConnect`),S=Symbol(`onDisconnect`),C=Symbol(`onConnectionError`),w=Symbol(`get dispatcher`),T=Symbol(`add client`),E=Symbol(`remove client`);t.exports={PoolBase:class extends r{[v]=new i;[l]=0;[g]=[];[_]=!1;[b](e,t,n){let r=this[v],i=!1;for(;!i;){let t=r.shift();if(!t)break;this[l]--,i=!e.dispatch(t.opts,t.handler)}if(e[_]=i,!i&&this[_]&&(this[_]=!1,this.emit(`drain`,t,[this,...n])),this[y]&&r.isEmpty()){let e=[];for(let t=0;t<this[g].length;t++){let n=this[g][t];n.destroyed||e.push(n.close())}return Promise.all(e).then(this[y])}}[x]=(e,t)=>{this.emit(`connect`,e,[this,...t])};[S]=(e,t,n)=>{this.emit(`disconnect`,e,[this,...t],n)};[C]=(e,t,n)=>{this.emit(`connectionError`,e,[this,...t],n)};get[u](){return this[_]}get[a](){let e=0;for(let{[a]:t}of this[g])e+=t;return e}get[d](){let e=0;for(let{[a]:t,[_]:n}of this[g])e+=t&&!n;return e}get[c](){let e=this[l];for(let{[c]:t}of this[g])e+=t;return e}get[s](){let e=0;for(let{[s]:t}of this[g])e+=t;return e}get[o](){let e=this[l];for(let{[o]:t}of this[g])e+=t;return e}get stats(){return new n(this)}[p](){if(this[v].isEmpty()){let e=[];for(let t=0;t<this[g].length;t++){let n=this[g][t];n.destroyed||e.push(n.close())}return Promise.all(e)}else return new Promise(e=>{this[y]=e})}[m](e){for(;;){let t=this[v].shift();if(!t)break;t.handler.onError(e)}let t=Array(this[g].length);for(let n=0;n<this[g].length;n++)t[n]=this[g][n].destroy(e);return Promise.all(t)}[h](e,t){let n=this[w]();return n?n.dispatch(e,t)||(n[_]=!0,this[_]=!this[w]()):(this[_]=!0,this[v].push({opts:e,handler:t}),this[l]++),!this[_]}[T](e){return e.on(`drain`,this[b].bind(this,e)).on(`connect`,this[x]).on(`disconnect`,this[S]).on(`connectionError`,this[C]),this[g].push(e),this[_]&&queueMicrotask(()=>{this[_]&&this[b](e,e[f],[e,this])}),this}[E](e){e.close(()=>{let t=this[g].indexOf(e);t!==-1&&this[g].splice(t,1)}),this[_]=this[g].some(e=>!e[_]&&e.closed!==!0&&e.destroyed!==!0)}},kClients:g,kNeedDrain:_,kAddClient:T,kRemoveClient:E,kGetDispatcher:w}})),Wa=n(((e,t)=>{let{PoolBase:n,kClients:r,kNeedDrain:i,kAddClient:a,kGetDispatcher:o,kRemoveClient:s}=Ua(),c=Va(),{InvalidArgumentError:l}=K(),u=q(),{kUrl:d}=da(),f=Sa(),p=Symbol(`options`),m=Symbol(`connections`),h=Symbol(`factory`);function g(e,t){return new c(e,t)}t.exports=class extends n{constructor(e,{connections:t,factory:n=g,connect:i,connectTimeout:a,tls:o,maxCachedSessions:s,socketPath:c,autoSelectFamily:_,autoSelectFamilyAttemptTimeout:v,allowH2:y,clientTtl:b,...x}={}){if(t!=null&&(!Number.isFinite(t)||t<0))throw new l(`invalid connections`);if(typeof n!=`function`)throw new l(`factory must be a function.`);if(i!=null&&typeof i!=`function`&&typeof i!=`object`)throw new l(`connect must be a function or an object`);typeof i!=`function`&&(i=f({...o,maxCachedSessions:s,allowH2:y,socketPath:c,timeout:a,...typeof _==`boolean`?{autoSelectFamily:_,autoSelectFamilyAttemptTimeout:v}:void 0,...i})),super(x),this[m]=t||null,this[d]=u.parseOrigin(e),this[p]={...u.deepClone(x),connect:i,allowH2:y,clientTtl:b,socketPath:c},this[p].interceptors=x.interceptors?{...x.interceptors}:void 0,this[h]=n,this.on(`connect`,(e,t)=>{if(b!=null&&b>0)for(let e of t)Object.assign(e,{ttl:Date.now()})}),this.on(`connectionError`,(e,t,n)=>{for(let e of t){let t=this[r].indexOf(e);t!==-1&&this[r].splice(t,1)}})}[o](){let e=this[p].clientTtl;for(let t of this[r])if(e!=null&&e>0&&t.ttl&&Date.now()-t.ttl>e)this[s](t);else if(!t[i])return t;if(!this[m]||this[r].length<this[m]){let e=this[h](this[d],this[p]);return this[a](e),e}}}})),Ga=n(((e,t)=>{let{BalancedPoolMissingUpstreamError:n,InvalidArgumentError:r}=K(),{PoolBase:i,kClients:a,kNeedDrain:o,kAddClient:s,kRemoveClient:c,kGetDispatcher:l}=Ua(),u=Wa(),{kUrl:d}=da(),f=q(),p=Symbol(`factory`),m=Symbol(`options`),h=Symbol(`kGreatestCommonDivisor`),g=Symbol(`kCurrentWeight`),_=Symbol(`kIndex`),v=Symbol(`kWeight`),y=Symbol(`kMaxWeightPerServer`),b=Symbol(`kErrorPenalty`);function x(e,t){if(e===0)return t;for(;t!==0;){let n=t;t=e%t,e=n}return e}function S(e,t){return new u(e,t)}t.exports=class extends i{constructor(e=[],{factory:t=S,...n}={}){if(typeof t!=`function`)throw new r(`factory must be a function.`);super(n),this[m]={...f.deepClone(n)},this[m].interceptors=n.interceptors?{...n.interceptors}:void 0,this[_]=-1,this[g]=0,this[y]=this[m].maxWeightPerServer||100,this[b]=this[m].errorPenalty||15,Array.isArray(e)||(e=[e]),this[p]=t;for(let t of e)this.addUpstream(t);this._updateBalancedPoolStats()}addUpstream(e){let t=f.parseOrigin(e).origin;if(this[a].find(e=>e[d].origin===t&&e.closed!==!0&&e.destroyed!==!0))return this;let n=this[p](t,this[m]);this[s](n),n.on(`connect`,()=>{n[v]=Math.min(this[y],n[v]+this[b])}),n.on(`connectionError`,()=>{n[v]=Math.max(1,n[v]-this[b]),this._updateBalancedPoolStats()}),n.on(`disconnect`,(...e)=>{let t=e[2];t&&t.code===`UND_ERR_SOCKET`&&(n[v]=Math.max(1,n[v]-this[b]),this._updateBalancedPoolStats())});for(let e of this[a])e[v]=this[y];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let e=0;for(let t=0;t<this[a].length;t++)e=x(this[a][t][v],e);this[h]=e}removeUpstream(e){let t=f.parseOrigin(e).origin,n=this[a].find(e=>e[d].origin===t&&e.closed!==!0&&e.destroyed!==!0);return n&&this[c](n),this}getUpstream(e){let t=f.parseOrigin(e).origin;return this[a].find(e=>e[d].origin===t&&e.closed!==!0&&e.destroyed!==!0)}get upstreams(){return this[a].filter(e=>e.closed!==!0&&e.destroyed!==!0).map(e=>e[d].origin)}[l](){if(this[a].length===0)throw new n;if(!this[a].find(e=>!e[o]&&e.closed!==!0&&e.destroyed!==!0)||this[a].map(e=>e[o]).reduce((e,t)=>e&&t,!0))return;let e=0,t=this[a].findIndex(e=>!e[o]);for(;e++<this[a].length;){this[_]=(this[_]+1)%this[a].length;let e=this[a][this[_]];if(e[v]>this[a][t][v]&&!e[o]&&(t=this[_]),this[_]===0&&(this[g]=this[g]-this[h],this[g]<=0&&(this[g]=this[y])),e[v]>=this[g]&&!e[o])return e}return this[g]=this[a][t][v],this[_]=t,this[a][t]}}})),Ka=n(((e,t)=>{let{PoolBase:n,kClients:r,kNeedDrain:i,kAddClient:a,kGetDispatcher:o,kRemoveClient:s}=Ua(),c=Va(),{InvalidArgumentError:l}=K(),u=q(),{kUrl:d}=da(),f=Sa(),p=Symbol(`options`),m=Symbol(`connections`),h=Symbol(`factory`),g=Symbol(`index`);function _(e,t){return new c(e,t)}t.exports=class extends n{constructor(e,{connections:t,factory:n=_,connect:i,connectTimeout:a,tls:o,maxCachedSessions:s,socketPath:c,autoSelectFamily:v,autoSelectFamilyAttemptTimeout:y,allowH2:b,clientTtl:x,...S}={}){if(t!=null&&(!Number.isFinite(t)||t<0))throw new l(`invalid connections`);if(typeof n!=`function`)throw new l(`factory must be a function.`);if(i!=null&&typeof i!=`function`&&typeof i!=`object`)throw new l(`connect must be a function or an object`);typeof i!=`function`&&(i=f({...o,maxCachedSessions:s,allowH2:b,socketPath:c,timeout:a,...typeof v==`boolean`?{autoSelectFamily:v,autoSelectFamilyAttemptTimeout:y}:void 0,...i})),super(),this[m]=t||null,this[d]=u.parseOrigin(e),this[p]={...u.deepClone(S),connect:i,allowH2:b,clientTtl:x,socketPath:c},this[p].interceptors=S.interceptors?{...S.interceptors}:void 0,this[h]=n,this[g]=-1,this.on(`connect`,(e,t)=>{if(x!=null&&x>0)for(let e of t)Object.assign(e,{ttl:Date.now()})}),this.on(`connectionError`,(e,t,n)=>{for(let e of t){let t=this[r].indexOf(e);t!==-1&&this[r].splice(t,1)}})}[o](){let e=this[p].clientTtl,t=this[r].length;if(t===0){let e=this[h](this[d],this[p]);return this[a](e),e}let n=0;for(;n<t;){this[g]=(this[g]+1)%t;let a=this[r][this[g]];if(e!=null&&e>0&&a.ttl&&Date.now()-a.ttl>e){this[s](a),n++;continue}if(!a[i])return a;n++}if(!this[m]||t<this[m]){let e=this[h](this[d],this[p]);return this[a](e),e}}}})),qa=n(((e,t)=>{let{InvalidArgumentError:n,MaxOriginsReachedError:r}=K(),{kClients:i,kRunning:a,kClose:o,kDestroy:s,kDispatch:c,kUrl:l}=da(),u=xa(),d=Wa(),f=Va(),p=q(),m=Symbol(`onConnect`),h=Symbol(`onDisconnect`),g=Symbol(`onConnectionError`),_=Symbol(`onDrain`),v=Symbol(`factory`),y=Symbol(`options`),b=Symbol(`origins`);function x(e,t){return t&&t.connections===1?new f(e,t):new d(e,t)}t.exports=class extends u{constructor({factory:e=x,maxOrigins:t=1/0,connect:r,...a}={}){if(typeof e!=`function`)throw new n(`factory must be a function.`);if(r!=null&&typeof r!=`function`&&typeof r!=`object`)throw new n(`connect must be a function or an object`);if(typeof t!=`number`||Number.isNaN(t)||t<=0)throw new n(`maxOrigins must be a number greater than 0`);super(a),r&&typeof r!=`function`&&(r={...r}),this[y]={...p.deepClone(a),maxOrigins:t,connect:r},this[v]=e,this[i]=new Map,this[b]=new Set,this[_]=(e,t)=>{this.emit(`drain`,e,[this,...t])},this[m]=(e,t)=>{this.emit(`connect`,e,[this,...t])},this[h]=(e,t,n)=>{this.emit(`disconnect`,e,[this,...t],n)},this[g]=(e,t,n)=>{this.emit(`connectionError`,e,[this,...t],n)}}get[a](){let e=0;for(let{dispatcher:t}of this[i].values())e+=t[a];return e}[c](e,t){let a;if(e.origin&&(typeof e.origin==`string`||e.origin instanceof URL))a=String(e.origin);else throw new n(`opts.origin must be a non-empty string or URL.`);if(this[b].size>=this[y].maxOrigins&&!this[b].has(a))throw new r;let o=this[i].get(a),s=o&&o.dispatcher;if(!s){let t=e=>{let t=this[i].get(a);t&&(e&&--t.count,t.count<=0&&(this[i].delete(a),t.dispatcher.destroyed||t.dispatcher.close()),this[b].delete(a))};s=this[v](e.origin,this[y]).on(`drain`,this[_]).on(`connect`,(e,t)=>{let n=this[i].get(a);n&&(n.count+=1),this[m](e,t)}).on(`disconnect`,(e,n,r)=>{t(!0),this[h](e,n,r)}).on(`connectionError`,(e,n,r)=>{t(!1),this[g](e,n,r)}),this[i].set(a,{count:0,dispatcher:s}),this[b].add(a)}return s.dispatch(e,t)}[o](){let e=[];for(let{dispatcher:t}of this[i].values())e.push(t.close());return this[i].clear(),Promise.all(e)}[s](e){let t=[];for(let{dispatcher:n}of this[i].values())t.push(n.destroy(e));return this[i].clear(),Promise.all(t)}get stats(){let e={};for(let{dispatcher:t}of this[i].values())t.stats&&(e[t[l].origin]=t.stats);return e}}})),Ja=n(((e,n)=>{let{Buffer:r}=t(`node:buffer`),i=t(`node:net`),{InvalidArgumentError:a}=K();function o(e){if(i.isIPv4(e)){let t=e.split(`.`).map(Number);return{type:1,buffer:r.from(t)}}if(i.isIPv6(e))return{type:4,buffer:s(e)};let t=r.from(e,`utf8`);if(t.length>255)throw new a(`Domain name too long (max 255 bytes)`);return{type:3,buffer:r.concat([r.from([t.length]),t])}}function s(e){let t=r.alloc(16),n=e;if(e.includes(`.`)){let t=e.lastIndexOf(`:`),r=e.slice(t+1);if(i.isIPv4(r)){let i=r.split(`.`).map(Number),a=(i[0]<<8|i[1]).toString(16),o=(i[2]<<8|i[3]).toString(16);n=`${e.slice(0,t)}:${a}:${o}`}}let a=n.indexOf(`::`);if(a!==-1){let e=n.slice(0,a),r=n.slice(a+2),i=e===``?[]:e.split(`:`),o=r===``?[]:r.split(`:`),s=0;for(let e of i)t.writeUInt16BE(parseInt(e,16),s),s+=2;s=16-o.length*2;for(let e of o)t.writeUInt16BE(parseInt(e,16),s),s+=2}else{let e=n.split(`:`);for(let n=0;n<e.length;n++)t.writeUInt16BE(parseInt(e[n],16),n*2)}return t}function c(e,t,n){let i=r.allocUnsafe(2);return i.writeUInt16BE(n,0),r.concat([r.from([e]),t,i])}function l(e,t=0){if(e.length<t+1)throw new a(`Buffer too small to contain address type`);let n=e[t],r,i=t+1;switch(n){case 1:if(e.length<i+6)throw new a(`Buffer too small for IPv4 address`);r=Array.from(e.subarray(i,i+4)).join(`.`),i+=4;break;case 3:{if(e.length<i+1)throw new a(`Buffer too small for domain length`);let t=e[i];if(i+=1,e.length<i+t+2)throw new a(`Buffer too small for domain address`);r=e.subarray(i,i+t).toString(`utf8`),i+=t;break}case 4:{if(e.length<i+18)throw new a(`Buffer too small for IPv6 address`);let t=[];for(let n=0;n<8;n++){let r=e.readUInt16BE(i+n*2);t.push(r.toString(16))}r=t.join(`:`),i+=16;break}default:throw new a(`Invalid address type: ${n}`)}if(e.length<i+2)throw new a(`Buffer too small for port`);let o=e.readUInt16BE(i);return i+=2,{address:r,port:o,bytesRead:i-t}}function u(e){let t={1:`General SOCKS server failure`,2:`Connection not allowed by ruleset`,3:`Network unreachable`,4:`Host unreachable`,5:`Connection refused`,6:`TTL expired`,7:`Command not supported`,8:`Address type not supported`}[e]||`Unknown SOCKS5 error code: ${e}`,n=Error(t);return n.code=`SOCKS5_${e}`,n}n.exports={parseAddress:o,parseIPv6:s,buildAddressBuffer:c,parseResponseAddress:l,createReplyError:u}})),Ya=n(((e,n)=>{let{EventEmitter:r}=t(`node:events`),{Buffer:i}=t(`node:buffer`),{InvalidArgumentError:a,Socks5ProxyError:o}=K(),{debuglog:s}=t(`node:util`),{parseAddress:c}=Ja(),l=s(`undici:socks5`),u=i.alloc(0),d={NO_AUTH:0,GSSAPI:1,USERNAME_PASSWORD:2,NO_ACCEPTABLE:255},f={CONNECT:1,BIND:2,UDP_ASSOCIATE:3},p={IPV4:1,DOMAIN:3,IPV6:4},m={SUCCEEDED:0,GENERAL_FAILURE:1,CONNECTION_NOT_ALLOWED:2,NETWORK_UNREACHABLE:3,HOST_UNREACHABLE:4,CONNECTION_REFUSED:5,TTL_EXPIRED:6,COMMAND_NOT_SUPPORTED:7,ADDRESS_TYPE_NOT_SUPPORTED:8},h={INITIAL:`initial`,HANDSHAKING:`handshaking`,AUTHENTICATING:`authenticating`,AUTHENTICATED:`authenticated`,CONNECTING:`connecting`,CONNECTED:`connected`,ERROR:`error`,CLOSED:`closed`};n.exports={Socks5Client:class extends r{constructor(e,t={}){if(super(),!e)throw new a(`socket is required`);this.socket=e,this.options=t,this.state=h.INITIAL,this.buffer=u,this.onSocketData=this.onData.bind(this),this.onSocketError=this.onError.bind(this),this.onSocketClose=this.onClose.bind(this),this.authMethods=[],t.username&&t.password&&this.authMethods.push(d.USERNAME_PASSWORD),this.authMethods.push(d.NO_AUTH),this.socket.on(`data`,this.onSocketData),this.socket.on(`error`,this.onSocketError),this.socket.on(`close`,this.onSocketClose)}onData(e){l(`received data`,e.length,`bytes in state`,this.state),this.buffer=i.concat([this.buffer,e]);try{switch(this.state){case h.HANDSHAKING:this.handleHandshakeResponse();break;case h.AUTHENTICATING:this.handleAuthResponse();break;case h.CONNECTING:this.handleConnectResponse();break}}catch(e){this.onError(e)}}onError(e){l(`socket error`,e),this.state=h.ERROR,this.emit(`error`,e),this.destroy()}onClose(){l(`socket closed`),this.state=h.CLOSED,this.emit(`close`)}destroy(){this.socket&&!this.socket.destroyed&&this.socket.destroy()}markAuthenticated(){this.state=h.AUTHENTICATED,this.emit(`authenticated`)}handshake(){if(this.state!==h.INITIAL)throw new a(`Handshake already started`);l(`starting handshake with`,this.authMethods.length,`auth methods`),this.state=h.HANDSHAKING;let e=i.alloc(2+this.authMethods.length);e[0]=5,e[1]=this.authMethods.length,this.authMethods.forEach((t,n)=>{e[2+n]=t}),this.socket.write(e)}handleHandshakeResponse(){if(this.buffer.length<2)return;let e=this.buffer[0],t=this.buffer[1];if(e!==5)throw new o(`Invalid SOCKS version: ${e}`,`UND_ERR_SOCKS5_VERSION`);if(t===d.NO_ACCEPTABLE)throw new o(`No acceptable authentication method`,`UND_ERR_SOCKS5_AUTH_REJECTED`);if(this.buffer=this.buffer.subarray(2),l(`server selected auth method`,t),t===d.NO_AUTH)this.markAuthenticated();else if(t===d.USERNAME_PASSWORD)this.state=h.AUTHENTICATING,this.sendAuthRequest();else throw new o(`Unsupported authentication method: ${t}`,`UND_ERR_SOCKS5_AUTH_METHOD`)}sendAuthRequest(){let{username:e,password:t}=this.options;if(!e||!t)throw new a(`Username and password required for authentication`);l(`sending username/password auth`);let n=i.from(e),r=i.from(t);if(n.length>255||r.length>255)throw new a(`Username or password too long`);let o=i.alloc(3+n.length+r.length);o[0]=1,o[1]=n.length,n.copy(o,2),o[2+n.length]=r.length,r.copy(o,3+n.length),this.socket.write(o)}handleAuthResponse(){if(this.buffer.length<2)return;let e=this.buffer[0],t=this.buffer[1];if(e!==1)throw new o(`Invalid auth sub-negotiation version: ${e}`,`UND_ERR_SOCKS5_AUTH_VERSION`);if(t!==0)throw new o(`Authentication failed`,`UND_ERR_SOCKS5_AUTH_FAILED`);this.buffer=this.buffer.subarray(2),l(`authentication successful`),this.markAuthenticated()}connect(e,t){if(this.state===h.CONNECTING||this.state===h.CONNECTED)throw new a(`Connection already in progress`);if(this.state!==h.AUTHENTICATED)throw new a(`Client must be authenticated before CONNECT`);l(`connecting to`,e,t),this.state=h.CONNECTING;let n=this.buildConnectRequest(f.CONNECT,e,t);this.socket.write(n)}buildConnectRequest(e,t,n){let{type:r,buffer:a}=c(t),o=i.alloc(4+a.length+2);return o[0]=5,o[1]=e,o[2]=0,o[3]=r,a.copy(o,4),o.writeUInt16BE(n,4+a.length),o}handleConnectResponse(){if(this.buffer.length<4)return;let e=this.buffer[0],t=this.buffer[1],n=this.buffer[3];if(e!==5)throw new o(`Invalid SOCKS version in reply: ${e}`,`UND_ERR_SOCKS5_REPLY_VERSION`);let r=4;if(n===p.IPV4)r+=6;else if(n===p.DOMAIN){if(this.buffer.length<5)return;r+=1+this.buffer[4]+2}else if(n===p.IPV6)r+=18;else throw new o(`Invalid address type in reply: ${n}`,`UND_ERR_SOCKS5_ADDR_TYPE`);if(this.buffer.length<r)return;if(t!==m.SUCCEEDED)throw new o(`SOCKS5 connection failed: ${this.getReplyErrorMessage(t)}`,`UND_ERR_SOCKS5_REPLY_${t}`);let i,a=4;if(n===p.IPV4)i=Array.from(this.buffer.subarray(a,a+4)).join(`.`),a+=4;else if(n===p.DOMAIN){let e=this.buffer[a];a+=1,i=this.buffer.subarray(a,a+e).toString(),a+=e}else if(n===p.IPV6){let e=[];for(let t=0;t<8;t++){let n=this.buffer.readUInt16BE(a+t*2);e.push(n.toString(16))}i=e.join(`:`),a+=16}let s=this.buffer.readUInt16BE(a);this.buffer=u,this.state=h.CONNECTED,this.socket.removeListener(`data`,this.onSocketData),l(`connected, bound address:`,i,`port:`,s),this.emit(`connected`,{address:i,port:s})}getReplyErrorMessage(e){switch(e){case m.GENERAL_FAILURE:return`General SOCKS server failure`;case m.CONNECTION_NOT_ALLOWED:return`Connection not allowed by ruleset`;case m.NETWORK_UNREACHABLE:return`Network unreachable`;case m.HOST_UNREACHABLE:return`Host unreachable`;case m.CONNECTION_REFUSED:return`Connection refused`;case m.TTL_EXPIRED:return`TTL expired`;case m.COMMAND_NOT_SUPPORTED:return`Command not supported`;case m.ADDRESS_TYPE_NOT_SUPPORTED:return`Address type not supported`;default:return`Unknown error code: ${e}`}}},AUTH_METHODS:d,COMMANDS:f,ADDRESS_TYPES:p,REPLY_CODES:m,STATES:h}})),Xa=n(((e,n)=>{let{URL:r}=t(`node:url`),i,a=xa(),{InvalidArgumentError:o}=K(),{Socks5Client:s,STATES:c}=Ya(),{kDispatch:l,kClose:u,kDestroy:d}=da(),f=Wa(),p=Sa(),{debuglog:m}=t(`node:util`),h=m(`undici:socks5-proxy`),g=Symbol(`proxy url`),_=Symbol(`proxy headers`),v=Symbol(`proxy auth`),y=Symbol(`proxy protocol`),b=Symbol(`pools`),x=Symbol(`connector`),S=Symbol(`request tls settings`),C=!1;n.exports=class extends a{constructor(e,t={}){if(super(),C||=(process.emitWarning(`SOCKS5 proxy support is experimental and subject to change`,`ExperimentalWarning`),!0),!e)throw new o(`Proxy URL is mandatory`);let n=typeof e==`string`?new r(e):e;if(n.protocol!==`socks5:`&&n.protocol!==`socks:`)throw new o(`Proxy URL must use socks5:// or socks:// protocol`);this[g]=n,this[_]=t.headers||{},this[y]=t.proxyTls?`https:`:`http:`,this[S]=t.requestTls,this[v]={username:t.username||(n.username?decodeURIComponent(n.username):null),password:t.password||(n.password?decodeURIComponent(n.password):null)},this[x]=t.connect||p({...t.proxyTls,servername:t.proxyTls?.servername||n.hostname}),this[b]=new Map}async createSocks5Connection(e,t){let n=this[g].hostname,r=parseInt(this[g].port)||1080;h(`creating SOCKS5 connection to`,n,r);let i=await new Promise((e,t)=>{this[x]({hostname:n,host:n,port:r,protocol:this[y]},(n,r)=>{n?t(n):e(r)})}),a=new s(i,this[v]);return a.on(`error`,e=>{h(`SOCKS5 error:`,e),i.destroy()}),await a.handshake(),await new Promise((e,t)=>{let n=setTimeout(()=>{t(Error(`SOCKS5 authentication timeout`))},5e3),r=()=>{clearTimeout(n),a.removeListener(`error`,i),e()},i=e=>{clearTimeout(n),a.removeListener(`authenticated`,r),t(e)};a.state===c.AUTHENTICATED?(clearTimeout(n),e()):(a.once(`authenticated`,r),a.once(`error`,i))}),await a.connect(e,t),await new Promise((n,r)=>{let i=setTimeout(()=>{r(Error(`SOCKS5 connection timeout`))},5e3),o=r=>{h(`SOCKS5 tunnel established to`,e,t,`via`,r),clearTimeout(i),a.removeListener(`error`,s),n()},s=e=>{clearTimeout(i),a.removeListener(`connected`,o),r(e)};a.once(`connected`,o),a.once(`error`,s)}),i}[l](e,n){let{origin:a}=e;h(`dispatching request to`,a,`via SOCKS5`);try{let o=String(a),s=this[b].get(o);return(!s||s.destroyed||s.closed)&&(s=new f(a,{pipelining:e.pipelining,connections:e.connections,connect:async(e,n)=>{try{let e=new r(a),o=e.hostname,s=parseInt(e.port)||(e.protocol===`https:`?443:80);h(`establishing SOCKS5 connection to`,o,s);let c=await this.createSocks5Connection(o,s),l=c;e.protocol===`https:`&&(i||=t(`node:tls`),h(`upgrading to TLS`),l=i.connect({...this[S],socket:c,servername:this[S]?.servername||o}),await new Promise((e,t)=>{l.once(`secureConnect`,e),l.once(`error`,t)})),n(null,l)}catch(e){h(`SOCKS5 connection error:`,e),n(e)}}}),this[b].set(o,s)),s[l](e,n)}catch(e){if(h(`dispatch error:`,e),typeof n.onResponseError==`function`)return n.onResponseError(null,e),!1;if(typeof n.onError==`function`)return n.onError(e),!1;throw e}}async[u](){let e=[];for(let t of this[b].values())e.push(t.close());this[b].clear(),await Promise.all(e)}async[d](e){let t=[];for(let n of this[b].values())t.push(n.destroy(e));this[b].clear(),await Promise.all(t)}}})),Za=n(((e,t)=>{let{kProxy:n,kClose:r,kDestroy:i,kDispatch:a}=da(),o=qa(),s=Wa(),c=xa(),{InvalidArgumentError:l,RequestAbortedError:u,SecureProxyConnectionError:d}=K(),f=Sa(),p=Va(),{channels:m}=ga(),h=Xa(),g=Symbol(`proxy agent`),_=Symbol(`proxy client`),v=Symbol(`proxy headers`),y=Symbol(`request tls settings`),b=Symbol(`proxy tls settings`),x=Symbol(`connect endpoint function`),S=Symbol(`tunnel proxy`);function C(e){return e===`https:`?443:80}function w(e,t){return new s(e,t)}let T=()=>{};function E(e,t){return t.connections===1?new p(e,t):new s(e,t)}var D=class extends c{#e;constructor(e,{headers:t={},connect:n,factory:r}){if(!e)throw new l(`Proxy URL is mandatory`);super(),this[v]=t,r?this.#e=r(e,{connect:n}):this.#e=new p(e,{connect:n})}[a](e,t){let n=t.onHeaders;t.onHeaders=function(e,r,i){if(e===407){typeof t.onError==`function`&&t.onError(new l(`Proxy Authentication Required (407)`));return}n&&n.call(this,e,r,i)};let{origin:r,path:i=`/`,headers:o={}}=e;if(e.path=r+i,!(`host`in o)&&!(`Host`in o)){let{host:e}=new URL(r);o.host=e}return e.headers={...this[v],...o},this.#e[a](e,t)}[r](){return this.#e.close()}[i](e){return this.#e.destroy(e)}},O=class extends c{constructor(e){if(!e||typeof e==`object`&&!(e instanceof URL)&&!e.uri)throw new l(`Proxy uri is mandatory`);let{clientFactory:t=w}=e;if(typeof t!=`function`)throw new l(`Proxy opts.clientFactory must be a function.`);let{proxyTunnel:r=!0}=e;super();let i=this.#e(e),{href:a,origin:s,port:c,protocol:p,username:O,password:k,hostname:A}=i;if(this[n]={uri:a,protocol:p},this[y]=e.requestTls,this[b]=e.proxyTls,this[v]=e.headers||{},this[S]=r,e.auth&&e.token)throw new l(`opts.auth cannot be used in combination with opts.token`);e.auth?this[v][`proxy-authorization`]=`Basic ${e.auth}`:e.token?this[v][`proxy-authorization`]=e.token:O&&k&&(this[v][`proxy-authorization`]=`Basic ${Buffer.from(`${decodeURIComponent(O)}:${decodeURIComponent(k)}`).toString(`base64`)}`);let j=f({...e.proxyTls});this[x]=f({...e.requestTls});let M=e.factory||E,N=(t,r)=>{let{protocol:i}=new URL(t);return this[n].protocol===`socks5:`||this[n].protocol===`socks:`?new h(this[n].uri,{headers:this[v],connect:j,factory:M,username:e.username||O,password:e.password||k,proxyTls:e.proxyTls,requestTls:e.requestTls}):!this[S]&&i===`http:`&&this[n].protocol===`http:`?new D(this[n].uri,{headers:this[v],connect:j,factory:M}):M(t,r)};p===`socks5:`||p===`socks:`?this[_]=null:this[_]=t(i,{connect:j}),this[g]=new o({...e,factory:N,connect:async(e,t)=>{if(!this[_]){t(new l(`Cannot establish tunnel connection without a proxy client`));return}let n=e.host;e.port||(n+=`:${C(e.protocol)}`);try{let r={origin:s,port:c,path:n,signal:e.signal,headers:{...this[v],host:e.host,...e.connections==null||e.connections>0?{"proxy-connection":`keep-alive`}:{}},servername:this[b]?.servername||A},{socket:i,statusCode:a}=await this[_].connect(r);if(a!==200){i.on(`error`,T).destroy(),t(new u(`Proxy response (${a}) !== 200 when HTTP Tunneling`));return}if(m.proxyConnected.hasSubscribers&&m.proxyConnected.publish({socket:i,connectParams:r}),e.protocol!==`https:`){t(null,i);return}let o;o=this[y]?this[y].servername:e.servername,this[x]({...e,servername:o,httpSocket:i},t)}catch(e){e.code===`ERR_TLS_CERT_ALTNAME_INVALID`?t(new d(e)):t(e)}}})}dispatch(e,t){let n=k(e.headers);if(A(n),n&&!(`host`in n)&&!(`Host`in n)){let{host:t}=new URL(e.origin);n.host=t}return this[g].dispatch({...e,headers:n},t)}#e(e){return typeof e==`string`?new URL(e):e instanceof URL?e:new URL(e.uri)}[r](){let e=[this[g].close()];return this[_]&&e.push(this[_].close()),Promise.all(e)}[i](){let e=[this[g].destroy()];return this[_]&&e.push(this[_].destroy()),Promise.all(e)}};function k(e){if(Array.isArray(e)){let t={};for(let n=0;n<e.length;n+=2)t[e[n]]=e[n+1];return t}return e}function A(e){if(e&&Object.keys(e).find(e=>e.toLowerCase()===`proxy-authorization`))throw new l(`Proxy-Authorization should be sent in ProxyAgent constructor`)}t.exports=O})),Qa=n(((e,t)=>{let n=xa(),{kClose:r,kDestroy:i,kClosed:a,kDestroyed:o,kDispatch:s,kNoProxyAgent:c,kHttpProxyAgent:l,kHttpsProxyAgent:u}=da(),d=Za(),f=qa(),p={"http:":80,"https:":443};t.exports=class extends n{#e=null;#t=null;#n=null;constructor(e={}){super(),this.#n=e;let{httpProxy:t,httpsProxy:n,noProxy:r,...i}=e;this[c]=new f(i);let a=t??process.env.http_proxy??process.env.HTTP_PROXY;a?this[l]=new d({...i,uri:a}):this[l]=this[c];let o=n??process.env.https_proxy??process.env.HTTPS_PROXY;o?this[u]=new d({...i,uri:o}):this[u]=this[l],this.#a()}[s](e,t){let n=new URL(e.origin);return this.#r(n).dispatch(e,t)}[r](){return Promise.all([this[c].close(),!this[l][a]&&this[l].close(),!this[u][a]&&this[u].close()])}[i](e){return Promise.all([this[c].destroy(e),!this[l][o]&&this[l].destroy(e),!this[u][o]&&this[u].destroy(e)])}#r(e){let{protocol:t,host:n,port:r}=e;return n=n.replace(/:\d*$/,``).toLowerCase(),r=Number.parseInt(r,10)||p[t]||0,this.#i(n,r)?t===`https:`?this[u]:this[l]:this[c]}#i(e,t){if(this.#o&&this.#a(),this.#t.length===0)return!0;if(this.#e===`*`)return!1;for(let n=0;n<this.#t.length;n++){let r=this.#t[n];if(!(r.port&&r.port!==t)&&(e===r.hostname||e.slice(-(r.hostname.length+1))===`.${r.hostname}`))return!1}return!0}#a(){let e=this.#n.noProxy??this.#s,t=e.split(/[,\s]/),n=[];for(let e=0;e<t.length;e++){let r=t[e];if(!r)continue;let i=r.match(/^(.+):(\d+)$/);n.push({hostname:(i?i[1]:r).replace(/^\*?\./,``).toLowerCase(),port:i?Number.parseInt(i[2],10):0})}this.#e=e,this.#t=n}get#o(){return this.#n.noProxy===void 0?this.#e!==this.#s:!1}get#s(){return process.env.no_proxy??process.env.NO_PROXY??``}}})),$a=n(((e,n)=>{let r=t(`node:assert`),{kRetryHandlerDefaultRetry:i}=da(),{RequestRetryError:a}=K(),o=va(),{isDisturbed:s,parseRangeHeader:c,wrapRequestBody:l}=q();function u(e){let t=new Date(e).getTime();return isNaN(t)?0:t-Date.now()}n.exports=class e{constructor(t,{dispatch:n,handler:r}){let{retryOptions:a,...s}=t,{retry:c,maxRetries:u,maxTimeout:d,minTimeout:f,timeoutFactor:p,methods:m,errorCodes:h,retryAfter:g,statusCodes:_,throwOnError:v}=a??{};this.error=null,this.dispatch=n,this.handler=o.wrap(r),this.opts={...s,body:l(t.body)},this.retryOpts={throwOnError:v??!0,retry:c??e[i],retryAfter:g??!0,maxTimeout:d??30*1e3,minTimeout:f??500,timeoutFactor:p??2,maxRetries:u??5,methods:m??[`GET`,`HEAD`,`OPTIONS`,`PUT`,`DELETE`,`TRACE`],statusCodes:_??[500,502,503,504,429],errorCodes:h??[`ECONNRESET`,`ECONNREFUSED`,`ENOTFOUND`,`ENETDOWN`,`ENETUNREACH`,`EHOSTDOWN`,`EHOSTUNREACH`,`EPIPE`,`UND_ERR_SOCKET`]},this.retryCount=0,this.retryCountCheckpoint=0,this.headersSent=!1,this.start=0,this.end=null,this.etag=null}onResponseStartWithRetry(e,t,n,r,i){if(this.retryOpts.throwOnError){this.retryOpts.statusCodes.includes(t)===!1?(this.headersSent=!0,this.handler.onResponseStart?.(e,t,n,r)):this.error=i;return}if(s(this.opts.body)){this.headersSent=!0,this.handler.onResponseStart?.(e,t,n,r);return}function a(a){if(a){this.headersSent=!0,this.handler.onResponseStart?.(e,t,n,r),e.resume();return}this.error=i,e.resume()}e.pause(),this.retryOpts.retry(i,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},a.bind(this))}onRequestStart(e,t){this.headersSent||this.handler.onRequestStart?.(e,t)}onRequestUpgrade(e,t,n,r){this.handler.onRequestUpgrade?.(e,t,n,r)}static[i](e,{state:t,opts:n},r){let{statusCode:i,code:a,headers:o}=e,{method:s,retryOptions:c}=n,{maxRetries:l,minTimeout:d,maxTimeout:f,timeoutFactor:p,statusCodes:m,errorCodes:h,methods:g}=c,{counter:_}=t;if(a&&a!==`UND_ERR_REQ_RETRY`&&!h.includes(a)){r(e);return}if(Array.isArray(g)&&!g.includes(s)){r(e);return}if(i!=null&&Array.isArray(m)&&!m.includes(i)){r(e);return}if(_>l){r(e);return}let v=o?.[`retry-after`];v&&=(v=Number(v),Number.isNaN(v)?u(o[`retry-after`]):v*1e3);let y=Math.min(v>0?v:d*p**(_-1),f);setTimeout(()=>r(null),y)}onResponseStart(e,t,n,i){if(this.error=null,this.retryCount+=1,t>=300){let r=new a(`Request failed`,t,{headers:n,data:{count:this.retryCount}});this.onResponseStartWithRetry(e,t,n,i,r);return}if(this.headersSent){if(t!==206&&(this.start>0||t!==200))throw new a(`server does not support the range header and the payload was partially consumed`,t,{headers:n,data:{count:this.retryCount}});let e=c(n[`content-range`]);if(!e)throw new a(`Content-Range mismatch`,t,{headers:n,data:{count:this.retryCount}});if(this.etag!=null&&this.etag!==n.etag)throw new a(`ETag mismatch`,t,{headers:n,data:{count:this.retryCount}});let{start:i,size:o,end:s=o?o-1:null}=e;r(this.start===i,`content-range mismatch`),r(this.end==null||this.end===s,`content-range mismatch`);return}if(this.end==null){if(t===206){let a=c(n[`content-range`]);if(a==null){this.headersSent=!0,this.handler.onResponseStart?.(e,t,n,i);return}let{start:o,size:s,end:l=s?s-1:null}=a;r(o!=null&&Number.isFinite(o),`content-range mismatch`),r(l!=null&&Number.isFinite(l),`invalid content-length`),this.start=o,this.end=l}if(this.end==null){let e=n[`content-length`];this.end=e==null?null:Number(e)-1}r(Number.isFinite(this.start)),r(this.end==null||Number.isFinite(this.end),`invalid content-length`),this.resume=!0,this.etag=n.etag==null?null:n.etag,this.etag!=null&&this.etag[0]===`W`&&this.etag[1]===`/`&&(this.etag=null),this.headersSent=!0,this.handler.onResponseStart?.(e,t,n,i)}else throw new a(`Request failed`,t,{headers:n,data:{count:this.retryCount}})}onResponseData(e,t){this.error||(this.start+=t.length,this.handler.onResponseData?.(e,t))}onResponseEnd(e,t){if(this.error&&this.retryOpts.throwOnError)throw this.error;if(!this.error)return this.retryCount=0,this.handler.onResponseEnd?.(e,t);this.retry(e)}retry(e){if(this.start!==0){let e={range:`bytes=${this.start}-${this.end??``}`};this.etag!=null&&(e[`if-match`]=this.etag),this.opts={...this.opts,headers:{...this.opts.headers,...e}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(t){this.handler.onResponseError?.(e,t)}}onResponseError(e,t){if(e?.aborted||s(this.opts.body)){this.handler.onResponseError?.(e,t);return}function n(t){if(!t){this.retry(e);return}this.handler?.onResponseError?.(e,t)}this.retryCount-this.retryCountCheckpoint>0?this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint):this.retryCount+=1,this.retryOpts.retry(t,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},n.bind(this))}}})),eo=n(((e,t)=>{let n=ya(),r=$a();t.exports=class extends n{#e=null;#t=null;constructor(e,t={}){super(t),this.#e=e,this.#t=t}dispatch(e,t){let n=new r({...e,retryOptions:this.#t},{dispatch:this.#e.dispatch.bind(this.#e),handler:t});return this.#e.dispatch(e,n)}close(){return this.#e.close()}destroy(){return this.#e.destroy()}}})),to=n(((e,t)=>{let{InvalidArgumentError:n}=K(),r=Va();t.exports=class extends r{constructor(e,t){if(typeof e==`string`&&(e=new URL(e)),e.protocol!==`http:`)throw new n(`h2c-client: Only h2c protocol is supported`);let{maxConcurrentStreams:r,pipelining:i,...a}=t??{},o=100,s=100;if(r!=null&&Number.isInteger(r)&&r>0&&(o=r),i!=null&&Number.isInteger(i)&&i>0&&(s=i),s>o)throw new n(`h2c-client: pipelining cannot be greater than maxConcurrentStreams`);super(e,{...a,maxConcurrentStreams:o,pipelining:s,allowH2:!0,useH2c:!0})}}})),no=n(((e,n)=>{let r=t(`node:assert`),{Readable:i}=t(`node:stream`),{RequestAbortedError:a,NotSupportedError:o,InvalidArgumentError:s,AbortError:c}=K(),l=q(),{ReadableStreamFrom:u}=q(),d=Symbol(`kConsume`),f=Symbol(`kReading`),p=Symbol(`kBody`),m=Symbol(`kAbort`),h=Symbol(`kContentType`),g=Symbol(`kContentLength`),_=Symbol(`kUsed`),v=Symbol(`kBytesRead`),y=()=>{};var b=class extends i{constructor({resume:e,abort:t,contentType:n=``,contentLength:r,highWaterMark:i=64*1024}){super({autoDestroy:!0,read:e,highWaterMark:i}),this._readableState.dataEmitted=!1,this[m]=t,this[d]=null,this[v]=0,this[p]=null,this[_]=!1,this[h]=n,this[g]=Number.isFinite(r)?r:null,this[f]=!1}_destroy(e,t){!e&&!this._readableState.endEmitted&&(e=new a),e&&this[m](),this[_]?t(e):setImmediate(t,e)}on(e,t){return(e===`data`||e===`readable`)&&(this[f]=!0,this[_]=!0),super.on(e,t)}addListener(e,t){return this.on(e,t)}off(e,t){let n=super.off(e,t);return(e===`data`||e===`readable`)&&(this[f]=this.listenerCount(`data`)>0||this.listenerCount(`readable`)>0),n}removeListener(e,t){return this.off(e,t)}push(e){return e&&(this[v]+=e.length,this[d])?(O(this[d],e),this[f]?super.push(e):!0):super.push(e)}text(){return C(this,`text`)}json(){return C(this,`json`)}blob(){return C(this,`blob`)}bytes(){return C(this,`bytes`)}arrayBuffer(){return C(this,`arrayBuffer`)}async formData(){throw new o}get bodyUsed(){return l.isDisturbed(this)}get body(){return this[p]||(this[p]=u(this),this[d]&&(this[p].getReader(),r(this[p].locked))),this[p]}dump(e){let t=e?.signal;if(t!=null&&(typeof t!=`object`||!(`aborted`in t)))return Promise.reject(new s(`signal must be an AbortSignal`));let n=e?.limit&&Number.isFinite(e.limit)?e.limit:128*1024;return t?.aborted?Promise.reject(t.reason??new c):this._readableState.closeEmitted?Promise.resolve(null):new Promise((e,r)=>{if((this[g]&&this[g]>n||this[v]>n)&&this.destroy(new c),t){let n=()=>{this.destroy(t.reason??new c)};t.addEventListener(`abort`,n),this.on(`close`,function(){t.removeEventListener(`abort`,n),t.aborted?r(t.reason??new c):e(null)})}else this.on(`close`,e);this.on(`error`,y).on(`data`,()=>{this[v]>n&&this.destroy()}).resume()})}setEncoding(e){return Buffer.isEncoding(e)&&(this._readableState.encoding=e),this}};function x(e){return e[p]?.locked===!0||e[d]!==null}function S(e){return l.isDisturbed(e)||x(e)}function C(e,t){return r(!e[d]),new Promise((n,r)=>{if(S(e)){let t=e._readableState;t.destroyed&&t.closeEmitted===!1?e.on(`error`,r).on(`close`,()=>{r(TypeError(`unusable`))}):r(t.errored??TypeError(`unusable`))}else queueMicrotask(()=>{e[d]={type:t,stream:e,resolve:n,reject:r,length:0,body:[]},e.on(`error`,function(e){k(this[d],e)}).on(`close`,function(){this[d].body!==null&&k(this[d],new a)}),w(e[d])})})}function w(e){if(e.body===null)return;let{_readableState:t}=e.stream;if(t.bufferIndex){let n=t.bufferIndex,r=t.buffer.length;for(let i=n;i<r;i++)O(e,t.buffer[i])}else for(let n of t.buffer)O(e,n);for(t.endEmitted?D(this[d],this._readableState.encoding):e.stream.on(`end`,function(){D(this[d],this._readableState.encoding)}),e.stream.resume();e.stream.read()!=null;);}function T(e,t,n){if(e.length===0||t===0)return``;let r=e.length===1?e[0]:Buffer.concat(e,t),i=r.length,a=i>2&&r[0]===239&&r[1]===187&&r[2]===191?3:0;return!n||n===`utf8`||n===`utf-8`?r.utf8Slice(a,i):r.subarray(a,i).toString(n)}function E(e,t){if(e.length===0||t===0)return new Uint8Array;if(e.length===1)return new Uint8Array(e[0]);let n=new Uint8Array(Buffer.allocUnsafeSlow(t).buffer),r=0;for(let t=0;t<e.length;++t){let i=e[t];n.set(i,r),r+=i.length}return n}function D(e,t){let{type:n,body:r,resolve:i,stream:a,length:o}=e;try{n===`text`?i(T(r,o,t)):n===`json`?i(JSON.parse(T(r,o,t))):n===`arrayBuffer`?i(E(r,o).buffer):n===`blob`?i(new Blob(r,{type:a[h]})):n===`bytes`&&i(E(r,o)),k(e)}catch(e){a.destroy(e)}}function O(e,t){e.length+=t.length,e.body.push(t)}function k(e,t){e.body!==null&&(t?e.reject(t):e.resolve(),e.type=null,e.stream=null,e.resolve=null,e.reject=null,e.length=0,e.body=null)}n.exports={Readable:b,chunksDecode:T}})),ro=n(((e,n)=>{let r=t(`node:assert`),{AsyncResource:i}=t(`node:async_hooks`),{Readable:a}=no(),{InvalidArgumentError:o,RequestAbortedError:s}=K(),c=q();function l(){}var u=class extends i{constructor(e,t){if(!e||typeof e!=`object`)throw new o(`invalid opts`);let{signal:n,method:r,opaque:i,body:a,onInfo:u,responseHeaders:d,highWaterMark:f}=e;try{if(typeof t!=`function`)throw new o(`invalid callback`);if(f!=null&&(!Number.isFinite(f)||f<0))throw new o(`invalid highWaterMark`);if(n&&typeof n.on!=`function`&&typeof n.addEventListener!=`function`)throw new o(`signal must be an EventEmitter or EventTarget`);if(r===`CONNECT`)throw new o(`invalid method`);if(u&&typeof u!=`function`)throw new o(`invalid onInfo callback`);super(`UNDICI_REQUEST`)}catch(e){throw c.isStream(a)&&c.destroy(a.on(`error`,l),e),e}this.method=r,this.responseHeaders=d||null,this.opaque=i||null,this.callback=t,this.res=null,this.abort=null,this.body=a,this.trailers={},this.context=null,this.onInfo=u||null,this.highWaterMark=f,this.reason=null,this.removeAbortListener=null,n?.aborted?this.reason=n.reason??new s:n&&(this.removeAbortListener=c.addAbortListener(n,()=>{this.reason=n.reason??new s,this.res?c.destroy(this.res.on(`error`,l),this.reason):this.abort&&this.abort(this.reason)}))}onConnect(e,t){if(this.reason){e(this.reason);return}r(this.callback),this.abort=e,this.context=t}onHeaders(e,t,n,r){let{callback:i,opaque:o,abort:s,context:u,responseHeaders:d,highWaterMark:f}=this,p=d===`raw`?c.parseRawHeaders(t):c.parseHeaders(t);if(e<200){this.onInfo&&this.onInfo({statusCode:e,headers:p});return}let m=d===`raw`?c.parseHeaders(t):p,h=m[`content-type`],g=m[`content-length`],_=new a({resume:n,abort:s,contentType:h,contentLength:this.method!==`HEAD`&&g?Number(g):null,highWaterMark:f});if(this.removeAbortListener&&=(_.on(`close`,this.removeAbortListener),null),this.callback=null,this.res=_,i!==null)try{this.runInAsyncScope(i,null,null,{statusCode:e,statusText:r,headers:p,trailers:this.trailers,opaque:o,body:_,context:u})}catch(e){this.res=null,c.destroy(_.on(`error`,l),e),queueMicrotask(()=>{throw e})}}onData(e){return this.res.push(e)}onComplete(e){c.parseHeaders(e,this.trailers),this.res.push(null)}onError(e){let{res:t,callback:n,body:r,opaque:i}=this;n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,e,{opaque:i})})),t&&(this.res=null,queueMicrotask(()=>{c.destroy(t.on(`error`,l),e)})),r&&(this.body=null,c.isStream(r)&&(r.on(`error`,l),c.destroy(r,e))),this.removeAbortListener&&=(this.removeAbortListener(),null)}};function d(e,t){if(t===void 0)return new Promise((t,n)=>{d.call(this,e,(e,r)=>e?n(e):t(r))});try{let n=new u(e,t);this.dispatch(e,n)}catch(n){if(typeof t!=`function`)throw n;let r=e?.opaque;queueMicrotask(()=>t(n,{opaque:r}))}}n.exports=d,n.exports.RequestHandler=u})),io=n(((e,t)=>{let{addAbortListener:n}=q(),{RequestAbortedError:r}=K(),i=Symbol(`kListener`),a=Symbol(`kSignal`);function o(e){e.abort?e.abort(e[a]?.reason):e.reason=e[a]?.reason??new r,c(e)}function s(e,t){if(e.reason=null,e[a]=null,e[i]=null,t){if(t.aborted){o(e);return}e[a]=t,e[i]=()=>{o(e)},n(e[a],e[i])}}function c(e){e[a]&&(`removeEventListener`in e[a]?e[a].removeEventListener(`abort`,e[i]):e[a].removeListener(`abort`,e[i]),e[a]=null,e[i]=null)}t.exports={addSignal:s,removeSignal:c}})),ao=n(((e,n)=>{let r=t(`node:assert`),{finished:i}=t(`node:stream`),{AsyncResource:a}=t(`node:async_hooks`),{InvalidArgumentError:o,InvalidReturnValueError:s}=K(),c=q(),{addSignal:l,removeSignal:u}=io();function d(){}var f=class extends a{constructor(e,t,n){if(!e||typeof e!=`object`)throw new o(`invalid opts`);let{signal:r,method:i,opaque:a,body:s,onInfo:u,responseHeaders:f}=e;try{if(typeof n!=`function`)throw new o(`invalid callback`);if(typeof t!=`function`)throw new o(`invalid factory`);if(r&&typeof r.on!=`function`&&typeof r.addEventListener!=`function`)throw new o(`signal must be an EventEmitter or EventTarget`);if(i===`CONNECT`)throw new o(`invalid method`);if(u&&typeof u!=`function`)throw new o(`invalid onInfo callback`);super(`UNDICI_STREAM`)}catch(e){throw c.isStream(s)&&c.destroy(s.on(`error`,d),e),e}this.responseHeaders=f||null,this.opaque=a||null,this.factory=t,this.callback=n,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=s,this.onInfo=u||null,c.isStream(s)&&s.on(`error`,e=>{this.onError(e)}),l(this,r)}onConnect(e,t){if(this.reason){e(this.reason);return}r(this.callback),this.abort=e,this.context=t}onHeaders(e,t,n,r){let{factory:a,opaque:o,context:l,responseHeaders:u}=this,d=u===`raw`?c.parseRawHeaders(t):c.parseHeaders(t);if(e<200){this.onInfo&&this.onInfo({statusCode:e,headers:d});return}if(this.factory=null,a===null)return;let f=this.runInAsyncScope(a,null,{statusCode:e,headers:d,opaque:o,context:l});if(!f||typeof f.write!=`function`||typeof f.end!=`function`||typeof f.on!=`function`)throw new s(`expected Writable`);return i(f,{readable:!1},e=>{let{callback:t,res:n,opaque:r,trailers:i,abort:a}=this;this.res=null,(e||!n?.readable)&&c.destroy(n,e),this.callback=null,this.runInAsyncScope(t,null,e||null,{opaque:r,trailers:i}),e&&a()}),f.on(`drain`,n),this.res=f,(f.writableNeedDrain===void 0?f._writableState?.needDrain:f.writableNeedDrain)!==!0}onData(e){let{res:t}=this;return t?t.write(e):!0}onComplete(e){let{res:t}=this;u(this),t&&(this.trailers=c.parseHeaders(e),t.end())}onError(e){let{res:t,callback:n,opaque:r,body:i}=this;u(this),this.factory=null,t?(this.res=null,c.destroy(t,e)):n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,e,{opaque:r})})),i&&(this.body=null,c.destroy(i,e))}};function p(e,t,n){if(n===void 0)return new Promise((n,r)=>{p.call(this,e,t,(e,t)=>e?r(e):n(t))});try{let r=new f(e,t,n);this.dispatch(e,r)}catch(t){if(typeof n!=`function`)throw t;let r=e?.opaque;queueMicrotask(()=>n(t,{opaque:r}))}}n.exports=p})),oo=n(((e,n)=>{let{Readable:r,Duplex:i,PassThrough:a}=t(`node:stream`),o=t(`node:assert`),{AsyncResource:s}=t(`node:async_hooks`),{InvalidArgumentError:c,InvalidReturnValueError:l,RequestAbortedError:u}=K(),d=q(),{addSignal:f,removeSignal:p}=io();function m(){}let h=Symbol(`resume`);var g=class extends r{constructor(){super({autoDestroy:!0}),this[h]=null}_read(){let{[h]:e}=this;e&&(this[h]=null,e())}_destroy(e,t){this._read(),t(e)}},_=class extends r{constructor(e){super({autoDestroy:!0}),this[h]=e}_read(){this[h]()}_destroy(e,t){!e&&!this._readableState.endEmitted&&(e=new u),t(e)}},v=class extends s{constructor(e,t){if(!e||typeof e!=`object`)throw new c(`invalid opts`);if(typeof t!=`function`)throw new c(`invalid handler`);let{signal:n,method:r,opaque:a,onInfo:o,responseHeaders:s}=e;if(n&&typeof n.on!=`function`&&typeof n.addEventListener!=`function`)throw new c(`signal must be an EventEmitter or EventTarget`);if(r===`CONNECT`)throw new c(`invalid method`);if(o&&typeof o!=`function`)throw new c(`invalid onInfo callback`);super(`UNDICI_PIPELINE`),this.opaque=a||null,this.responseHeaders=s||null,this.handler=t,this.abort=null,this.context=null,this.onInfo=o||null,this.req=new g().on(`error`,m),this.ret=new i({readableObjectMode:e.objectMode,autoDestroy:!0,read:()=>{let{body:e}=this;e?.resume&&e.resume()},write:(e,t,n)=>{let{req:r}=this;r.push(e,t)||r._readableState.destroyed?n():r[h]=n},destroy:(e,t)=>{let{body:n,req:r,res:i,ret:a,abort:o}=this;!e&&!a._readableState.endEmitted&&(e=new u),o&&e&&o(),d.destroy(n,e),d.destroy(r,e),d.destroy(i,e),p(this),t(e)}}).on(`prefinish`,()=>{let{req:e}=this;e.push(null)}),this.res=null,f(this,n)}onConnect(e,t){let{res:n}=this;if(this.reason){e(this.reason);return}o(!n,`pipeline cannot be retried`),this.abort=e,this.context=t}onHeaders(e,t,n){let{opaque:r,handler:i,context:a}=this;if(e<200){if(this.onInfo){let n=this.responseHeaders===`raw`?d.parseRawHeaders(t):d.parseHeaders(t);this.onInfo({statusCode:e,headers:n})}return}this.res=new _(n);let o;try{this.handler=null;let n=this.responseHeaders===`raw`?d.parseRawHeaders(t):d.parseHeaders(t);o=this.runInAsyncScope(i,null,{statusCode:e,headers:n,opaque:r,body:this.res,context:a})}catch(e){throw this.res.on(`error`,m),e}if(!o||typeof o.on!=`function`)throw new l(`expected Readable`);o.on(`data`,e=>{let{ret:t,body:n}=this;!t.push(e)&&n.pause&&n.pause()}).on(`error`,e=>{let{ret:t}=this;d.destroy(t,e)}).on(`end`,()=>{let{ret:e}=this;e.push(null)}).on(`close`,()=>{let{ret:e}=this;e._readableState.ended||d.destroy(e,new u)}),this.body=o}onData(e){let{res:t}=this;return t.push(e)}onComplete(e){let{res:t}=this;t.push(null)}onError(e){let{ret:t}=this;this.handler=null,d.destroy(t,e)}};function y(e,t){try{let n=new v(e,t);return this.dispatch({...e,body:n.req},n),n.ret}catch(e){return new a().destroy(e)}}n.exports=y})),so=n(((e,n)=>{let{InvalidArgumentError:r,SocketError:i}=K(),{AsyncResource:a}=t(`node:async_hooks`),o=t(`node:assert`),s=q(),{kHTTP2Stream:c}=da(),{addSignal:l,removeSignal:u}=io();var d=class extends a{constructor(e,t){if(!e||typeof e!=`object`)throw new r(`invalid opts`);if(typeof t!=`function`)throw new r(`invalid callback`);let{signal:n,opaque:i,responseHeaders:a}=e;if(n&&typeof n.on!=`function`&&typeof n.addEventListener!=`function`)throw new r(`signal must be an EventEmitter or EventTarget`);super(`UNDICI_UPGRADE`),this.responseHeaders=a||null,this.opaque=i||null,this.callback=t,this.abort=null,this.context=null,l(this,n)}onConnect(e,t){if(this.reason){e(this.reason);return}o(this.callback),this.abort=e,this.context=null}onHeaders(){throw new i(`bad upgrade`,null)}onUpgrade(e,t,n){o(n[c]===!0?e===200:e===101);let{callback:r,opaque:i,context:a}=this;u(this),this.callback=null;let l=this.responseHeaders===`raw`?s.parseRawHeaders(t):s.parseHeaders(t);this.runInAsyncScope(r,null,null,{headers:l,socket:n,opaque:i,context:a})}onError(e){let{callback:t,opaque:n}=this;u(this),t&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(t,null,e,{opaque:n})}))}};function f(e,t){if(t===void 0)return new Promise((t,n)=>{f.call(this,e,(e,r)=>e?n(e):t(r))});try{let n=new d(e,t),r={...e,method:e.method||`GET`,upgrade:e.protocol||`Websocket`};this.dispatch(r,n)}catch(n){if(typeof t!=`function`)throw n;let r=e?.opaque;queueMicrotask(()=>t(n,{opaque:r}))}}n.exports=f})),co=n(((e,n)=>{let r=t(`node:assert`),{AsyncResource:i}=t(`node:async_hooks`),{InvalidArgumentError:a,SocketError:o}=K(),s=q(),{addSignal:c,removeSignal:l}=io();var u=class extends i{constructor(e,t){if(!e||typeof e!=`object`)throw new a(`invalid opts`);if(typeof t!=`function`)throw new a(`invalid callback`);let{signal:n,opaque:r,responseHeaders:i}=e;if(n&&typeof n.on!=`function`&&typeof n.addEventListener!=`function`)throw new a(`signal must be an EventEmitter or EventTarget`);super(`UNDICI_CONNECT`),this.opaque=r||null,this.responseHeaders=i||null,this.callback=t,this.abort=null,c(this,n)}onConnect(e,t){if(this.reason){e(this.reason);return}r(this.callback),this.abort=e,this.context=t}onHeaders(){throw new o(`bad connect`,null)}onUpgrade(e,t,n){let{callback:r,opaque:i,context:a}=this;l(this),this.callback=null;let o=t;o!=null&&(o=this.responseHeaders===`raw`?s.parseRawHeaders(t):s.parseHeaders(t)),this.runInAsyncScope(r,null,null,{statusCode:e,headers:o,socket:n,opaque:i,context:a})}onError(e){let{callback:t,opaque:n}=this;l(this),t&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(t,null,e,{opaque:n})}))}};function d(e,t){if(t===void 0)return new Promise((t,n)=>{d.call(this,e,(e,r)=>e?n(e):t(r))});try{let n=new u(e,t),r={...e,method:`CONNECT`};this.dispatch(r,n)}catch(n){if(typeof t!=`function`)throw n;let r=e?.opaque;queueMicrotask(()=>t(n,{opaque:r}))}}n.exports=d})),lo=n(((e,t)=>{t.exports.request=ro(),t.exports.stream=ao(),t.exports.pipeline=oo(),t.exports.upgrade=so(),t.exports.connect=co()})),uo=n(((e,t)=>{let{UndiciError:n}=K(),r=Symbol.for(`undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED`);t.exports={MockNotMatchedError:class extends n{constructor(e){super(e),this.name=`MockNotMatchedError`,this.message=e||`The request does not match any registered mock dispatches`,this.code=`UND_MOCK_ERR_MOCK_NOT_MATCHED`}static[Symbol.hasInstance](e){return e&&e[r]===!0}get[r](){return!0}}}})),fo=n(((e,t)=>{t.exports={kAgent:Symbol(`agent`),kOptions:Symbol(`options`),kFactory:Symbol(`factory`),kDispatches:Symbol(`dispatches`),kDispatchKey:Symbol(`dispatch key`),kDefaultHeaders:Symbol(`default headers`),kDefaultTrailers:Symbol(`default trailers`),kContentLength:Symbol(`content length`),kMockAgent:Symbol(`mock agent`),kMockAgentSet:Symbol(`mock agent set`),kMockAgentGet:Symbol(`mock agent get`),kMockDispatch:Symbol(`mock dispatch`),kClose:Symbol(`close`),kOriginalClose:Symbol(`original agent close`),kOriginalDispatch:Symbol(`original dispatch`),kOrigin:Symbol(`origin`),kIsMockActive:Symbol(`is mock active`),kNetConnect:Symbol(`net connect`),kGetNetConnect:Symbol(`get net connect`),kConnected:Symbol(`connected`),kIgnoreTrailingSlash:Symbol(`ignore trailing slash`),kMockAgentMockCallHistoryInstance:Symbol(`mock agent mock call history name`),kMockAgentRegisterCallHistory:Symbol(`mock agent register mock call history`),kMockAgentAddCallHistoryLog:Symbol(`mock agent add call history log`),kMockAgentIsCallHistoryEnabled:Symbol(`mock agent is call history enabled`),kMockAgentAcceptsNonStandardSearchParameters:Symbol(`mock agent accepts non standard search parameters`),kMockCallHistoryAddLog:Symbol(`mock call history add log`),kTotalDispatchCount:Symbol(`total dispatch count`)}})),po=n(((e,n)=>{let{MockNotMatchedError:r}=uo(),{kDispatches:i,kMockAgent:a,kOriginalDispatch:o,kOrigin:s,kGetNetConnect:c,kTotalDispatchCount:l}=fo(),{serializePathWithQuery:u}=q(),{STATUS_CODES:d}=t(`node:http`),{types:{isPromise:f}}=t(`node:util`),{InvalidArgumentError:p}=K();function m(e,t){return typeof e==`string`?e===t:e instanceof RegExp?e.test(t):typeof e==`function`?e(t)===!0:!1}function h(e){return Object.fromEntries(Object.entries(e).map(([e,t])=>[e.toLocaleLowerCase(),t]))}function g(e,t){if(Array.isArray(e)){for(let n=0;n<e.length;n+=2)if(e[n].toLocaleLowerCase()===t.toLocaleLowerCase())return e[n+1];return}else if(typeof e.get==`function`)return e.get(t);else return h(e)[t.toLocaleLowerCase()]}function _(e){let t=e.slice(),n=[];for(let e=0;e<t.length;e+=2)n.push([t[e],t[e+1]]);return Object.fromEntries(n)}function v(e,t){if(typeof e.headers==`function`)return Array.isArray(t)&&(t=_(t)),e.headers(t?h(t):{});if(e.headers===void 0)return!0;if(typeof t!=`object`||typeof e.headers!=`object`)return!1;for(let[n,r]of Object.entries(e.headers))if(!m(r,g(t,n)))return!1;return!0}function y(e){if(typeof e!=`string`)return e;let t=new URLSearchParams(e),n=new URLSearchParams;for(let[e,r]of t.entries()){if(e=e.replace(`[]`,``),/^(['"]).*\1$/.test(r)){n.append(e,r);continue}if(r.includes(`,`)){let t=r.split(`,`);for(let r of t)n.append(e,r);continue}n.append(e,r)}return n}function b(e){if(typeof e!=`string`)return e;let t=e.split(`?`,3);if(t.length!==2)return e;let n=new URLSearchParams(t.pop());return n.sort(),[...t,n.toString()].join(`?`)}function x(e,{path:t,method:n,body:r,headers:i}){let a=m(e.path,t),o=m(e.method,n),s=e.body===void 0?!0:m(e.body,r),c=v(e,i);return a&&o&&s&&c}function S(e){return Buffer.isBuffer(e)||e instanceof Uint8Array||e instanceof ArrayBuffer?e:typeof e==`object`?JSON.stringify(e):e?e.toString():``}function C(e,t){let n=t.query?u(t.path,t.query):t.path,i=typeof n==`string`?b(n):n,a=E(i),o=e.filter(({consumed:e})=>!e).filter(({path:e,ignoreTrailingSlash:t})=>t?m(E(b(e)),a):m(b(e),i));if(o.length===0)throw new r(`Mock dispatch not matched for path '${i}'`);if(o=o.filter(({method:e})=>m(e,t.method)),o.length===0)throw new r(`Mock dispatch not matched for method '${t.method}' on path '${i}'`);if(o=o.filter(({body:e})=>e===void 0?!0:m(e,t.body)),o.length===0)throw new r(`Mock dispatch not matched for body '${t.body}' on path '${i}'`);if(o=o.filter(e=>v(e,t.headers)),o.length===0)throw new r(`Mock dispatch not matched for headers '${typeof t.headers==`object`?JSON.stringify(t.headers):t.headers}' on path '${i}'`);return o[0]}function w(e,t,n,r){let i={timesInvoked:0,times:1,persist:!1,consumed:!1,...r},a=typeof n==`function`?{callback:n}:{...n},o={...i,...t,pending:!0,data:{error:null,...a}};return e.push(o),e[l]=(e[l]||0)+1,o}function T(e,t){let n=e.findIndex(e=>e.consumed?x(e,t):!1);n!==-1&&e.splice(n,1)}function E(e){for(;e.endsWith(`/`);)e=e.slice(0,-1);return e.length===0&&(e=`/`),e}function D(e){let{path:t,method:n,body:r,headers:i,query:a}=e;return{path:t,method:n,body:r,headers:i,query:a}}function O(e){let t=Object.keys(e),n=[];for(let r=0;r<t.length;++r){let i=t[r],a=e[i],o=Buffer.from(`${i}`);if(Array.isArray(a))for(let e=0;e<a.length;++e)n.push(o,Buffer.from(`${a[e]}`));else n.push(o,Buffer.from(`${a}`))}return n}function k(e){return d[e]||`unknown`}async function A(e){let t=[];for await(let n of e)t.push(n);return Buffer.concat(t).toString(`utf8`)}function j(e,t){let n=D(e),r=C(this[i],n);r.timesInvoked++,r.data.callback&&(r.data={...r.data,...r.data.callback(e)});let{data:{statusCode:a,data:o,headers:s,trailers:c,error:l},delay:u,persist:d}=r,{timesInvoked:p,times:m}=r;if(r.consumed=!d&&p>=m,r.pending=p<m,l!==null)return T(this[i],n),t.onError(l),!0;let h=!1,g=null;function v(e){h||(h=!0,g!==null&&(clearTimeout(g),g=null),t.onError(e))}t.onConnect?.(v,null),typeof u==`number`&&u>0?g=setTimeout(()=>{g=null,y(this[i])},u):y(this[i]);function y(r,i=o){if(h)return;let l=Array.isArray(e.headers)?_(e.headers):e.headers,u=typeof i==`function`?i({...e,headers:l}):i;if(f(u))return u.then(e=>y(r,e));if(h)return;let d=S(u),p=O(s),m=O(c);t.onHeaders?.(a,p,b,k(a)),t.onData?.(Buffer.from(d)),t.onComplete?.(m),T(r,n)}function b(){}return!0}function M(){let e=this[a],t=this[s],n=this[o];return function(a,o){if(e.isMockActive)try{j.call(this,a,o)}catch(s){if(s.code===`UND_MOCK_ERR_MOCK_NOT_MATCHED`){let u=e[c](),d=this[i][l]||this[i].length,f=`, ${this[i].filter(({consumed:e})=>!e).length} interceptor(s) remaining out of ${d} defined`;if(u===!1)throw new r(`${s.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)${f}`);if(N(u,t))n.call(this,a,o);else throw new r(`${s.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)${f}`)}else throw s}else n.call(this,a,o)}}function N(e,t){let n=new URL(t);return e===!0?!0:!!(Array.isArray(e)&&e.some(e=>m(e,n.host)))}function P(e){return typeof e!=`string`&&!(e instanceof URL)?e:e instanceof URL?e.origin:e.toLowerCase()}function F(e){let{agent:t,...n}=e;if(`enableCallHistory`in n&&typeof n.enableCallHistory!=`boolean`)throw new p(`options.enableCallHistory must to be a boolean`);if(`acceptNonStandardSearchParameters`in n&&typeof n.acceptNonStandardSearchParameters!=`boolean`)throw new p(`options.acceptNonStandardSearchParameters must to be a boolean`);if(`ignoreTrailingSlash`in n&&typeof n.ignoreTrailingSlash!=`boolean`)throw new p(`options.ignoreTrailingSlash must to be a boolean`);return n}n.exports={getResponseData:S,getMockDispatch:C,addMockDispatch:w,deleteMockDispatch:T,buildKey:D,generateKeyValues:O,matchValue:m,getResponse:A,getStatusText:k,mockDispatch:j,buildMockDispatch:M,checkNetConnect:N,buildAndValidateMockOptions:F,getHeaderByName:g,buildHeadersFromArray:_,normalizeSearchParams:y,normalizeOrigin:P}})),mo=n(((e,t)=>{let{getResponseData:n,buildKey:r,addMockDispatch:i}=po(),{kDispatches:a,kDispatchKey:o,kDefaultHeaders:s,kDefaultTrailers:c,kContentLength:l,kMockDispatch:u,kIgnoreTrailingSlash:d}=fo(),{InvalidArgumentError:f}=K(),{serializePathWithQuery:p}=q();var m=class{constructor(e){this[u]=e}delay(e){if(typeof e!=`number`||!Number.isInteger(e)||e<=0)throw new f(`waitInMs must be a valid integer > 0`);return this[u].delay=e,this}persist(){return this[u].persist=!0,this}times(e){if(typeof e!=`number`||!Number.isInteger(e)||e<=0)throw new f(`repeatTimes must be a valid integer > 0`);return this[u].times=e,this}},h=class{constructor(e,t){if(typeof e!=`object`)throw new f(`opts must be an object`);if(e.path===void 0)throw new f(`opts.path must be defined`);if(e.method===void 0&&(e.method=`GET`),typeof e.path==`string`)if(e.query)e.path=p(e.path,e.query);else{let t=new URL(e.path,`data://`);e.path=t.pathname+t.search}typeof e.method==`string`&&(e.method=e.method.toUpperCase()),this[o]=r(e),this[a]=t,this[d]=e.ignoreTrailingSlash??!1,this[s]={},this[c]={},this[l]=!1}createMockScopeDispatchData({statusCode:e,data:t,responseOptions:r}){let i=n(t),a=this[l]?{"content-length":i.length}:{};return{statusCode:e,data:t,headers:{...this[s],...a,...r.headers},trailers:{...this[c],...r.trailers}}}validateReplyParameters(e){if(e.statusCode===void 0)throw new f(`statusCode must be defined`);if(typeof e.responseOptions!=`object`||e.responseOptions===null)throw new f(`responseOptions must be an object`)}reply(e){if(typeof e==`function`)return new m(i(this[a],this[o],t=>{let n=e(t);if(typeof n!=`object`||!n)throw new f(`reply options callback must return an object`);let r={data:``,responseOptions:{},...n};return this.validateReplyParameters(r),{...this.createMockScopeDispatchData(r)}},{ignoreTrailingSlash:this[d]}));let t={statusCode:e,data:arguments[1]===void 0?``:arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(t);let n=this.createMockScopeDispatchData(t);return new m(i(this[a],this[o],n,{ignoreTrailingSlash:this[d]}))}replyWithError(e){if(e===void 0)throw new f(`error must be defined`);return new m(i(this[a],this[o],{error:e},{ignoreTrailingSlash:this[d]}))}defaultReplyHeaders(e){if(e===void 0)throw new f(`headers must be defined`);return this[s]=e,this}defaultReplyTrailers(e){if(e===void 0)throw new f(`trailers must be defined`);return this[c]=e,this}replyContentLength(){return this[l]=!0,this}};t.exports.MockInterceptor=h,t.exports.MockScope=m})),ho=n(((e,n)=>{let{promisify:r}=t(`node:util`),i=Va(),{buildMockDispatch:a}=po(),{kDispatches:o,kMockAgent:s,kClose:c,kOriginalClose:l,kOrigin:u,kOriginalDispatch:d,kConnected:f,kIgnoreTrailingSlash:p}=fo(),{MockInterceptor:m}=mo(),h=da(),{InvalidArgumentError:g}=K();n.exports=class extends i{constructor(e,t){if(!t||!t.agent||typeof t.agent.dispatch!=`function`)throw new g(`Argument opts.agent must implement Agent`);super(e,t),this[s]=t.agent,this[u]=e,this[p]=t.ignoreTrailingSlash??!1,this[o]=[],this[f]=1,this[d]=this.dispatch,this[l]=this.close.bind(this),this.dispatch=a.call(this),this.close=this[c]}get[h.kConnected](){return this[f]}intercept(e){return new m(e&&{ignoreTrailingSlash:this[p],...e},this[o])}cleanMocks(){this[o]=[]}async[c](){await r(this[l])(),this[f]=0,this[s][h.kClients].delete(this[u])}}})),go=n(((e,t)=>{let{kMockCallHistoryAddLog:n}=fo(),{InvalidArgumentError:r}=K();function i(e,t,n,i,a){switch(t.operator){case`OR`:return i.push(...n(e,a)),i;case`AND`:return n(e,i);default:throw new r(`options.operator must to be a case insensitive string equal to 'OR' or 'AND'`)}}function a(e={}){let t={};if(`operator`in e){if(typeof e.operator!=`string`||e.operator.toUpperCase()!==`OR`&&e.operator.toUpperCase()!==`AND`)throw new r(`options.operator must to be a case insensitive string equal to 'OR' or 'AND'`);return{...t,operator:e.operator.toUpperCase()}}return t}function o(e){return(t,n)=>{if(typeof t==`string`||t==null)return n.filter(n=>n[e]===t);if(t instanceof RegExp)return n.filter(n=>t.test(n[e]));throw new r(`${e} parameter should be one of string, regexp, undefined or null`)}}function s(e){try{let t=new URL(e.path,e.origin);return t.search.length===0&&(t.search=new URLSearchParams(e.query).toString()),t}catch(e){throw new r(`An error occurred when computing MockCallHistoryLog.url`,{cause:e})}}var c=class{constructor(e={}){this.body=e.body,this.headers=e.headers,this.method=e.method;let t=s(e);this.fullUrl=t.toString(),this.origin=t.origin,this.path=t.pathname,this.searchParams=Object.fromEntries(t.searchParams),this.protocol=t.protocol,this.host=t.host,this.port=t.port,this.hash=t.hash}toMap(){return new Map([[`protocol`,this.protocol],[`host`,this.host],[`port`,this.port],[`origin`,this.origin],[`path`,this.path],[`hash`,this.hash],[`searchParams`,this.searchParams],[`fullUrl`,this.fullUrl],[`method`,this.method],[`body`,this.body],[`headers`,this.headers]])}toString(){let e={betweenKeyValueSeparator:`->`,betweenPairSeparator:`|`},t=``;return this.toMap().forEach((n,r)=>{(typeof n==`string`||n==null)&&(t=`${t}${r}${e.betweenKeyValueSeparator}${n}${e.betweenPairSeparator}`),(typeof n==`object`&&n||Array.isArray(n))&&(t=`${t}${r}${e.betweenKeyValueSeparator}${JSON.stringify(n)}${e.betweenPairSeparator}`)}),t.slice(0,-1)}},l=class{logs=[];calls(){return this.logs}firstCall(){return this.logs.at(0)}lastCall(){return this.logs.at(-1)}nthCall(e){if(typeof e!=`number`)throw new r(`nthCall must be called with a number`);if(!Number.isInteger(e))throw new r(`nthCall must be called with an integer`);if(Math.sign(e)!==1)throw new r(`nthCall must be called with a positive value. use firstCall or lastCall instead`);return this.logs.at(e-1)}filterCalls(e,t){if(this.logs.length===0)return this.logs;if(typeof e==`function`)return this.logs.filter(e);if(e instanceof RegExp)return this.logs.filter(t=>e.test(t.toString()));if(typeof e==`object`&&e){if(Object.keys(e).length===0)return this.logs;let n={operator:`OR`,...a(t)},r=n.operator===`AND`?this.logs:[];return`protocol`in e&&(r=i(e.protocol,n,this.filterCallsByProtocol,r,this.logs)),`host`in e&&(r=i(e.host,n,this.filterCallsByHost,r,this.logs)),`port`in e&&(r=i(e.port,n,this.filterCallsByPort,r,this.logs)),`origin`in e&&(r=i(e.origin,n,this.filterCallsByOrigin,r,this.logs)),`path`in e&&(r=i(e.path,n,this.filterCallsByPath,r,this.logs)),`hash`in e&&(r=i(e.hash,n,this.filterCallsByHash,r,this.logs)),`fullUrl`in e&&(r=i(e.fullUrl,n,this.filterCallsByFullUrl,r,this.logs)),`method`in e&&(r=i(e.method,n,this.filterCallsByMethod,r,this.logs)),[...new Set(r)]}throw new r(`criteria parameter should be one of function, regexp, or object`)}filterCallsByProtocol=o.call(this,`protocol`);filterCallsByHost=o.call(this,`host`);filterCallsByPort=o.call(this,`port`);filterCallsByOrigin=o.call(this,`origin`);filterCallsByPath=o.call(this,`path`);filterCallsByHash=o.call(this,`hash`);filterCallsByFullUrl=o.call(this,`fullUrl`);filterCallsByMethod=o.call(this,`method`);clear(){this.logs=[]}[n](e){let t=new c(e);return this.logs.push(t),t}*[Symbol.iterator](){for(let e of this.calls())yield e}};t.exports.MockCallHistory=l,t.exports.MockCallHistoryLog=c})),_o=n(((e,n)=>{let{promisify:r}=t(`node:util`),i=Wa(),{buildMockDispatch:a}=po(),{kDispatches:o,kMockAgent:s,kClose:c,kOriginalClose:l,kOrigin:u,kOriginalDispatch:d,kConnected:f,kIgnoreTrailingSlash:p}=fo(),{MockInterceptor:m}=mo(),h=da(),{InvalidArgumentError:g}=K();n.exports=class extends i{constructor(e,t){if(!t||!t.agent||typeof t.agent.dispatch!=`function`)throw new g(`Argument opts.agent must implement Agent`);super(e,t),this[s]=t.agent,this[u]=e,this[p]=t.ignoreTrailingSlash??!1,this[o]=[],this[f]=1,this[d]=this.dispatch,this[l]=this.close.bind(this),this.dispatch=a.call(this),this.close=this[c]}get[h.kConnected](){return this[f]}intercept(e){return new m(e&&{ignoreTrailingSlash:this[p],...e},this[o])}cleanMocks(){this[o]=[]}async[c](){await r(this[l])(),this[f]=0,this[s][h.kClients].delete(this[u])}}})),vo=n(((e,n)=>{let{Transform:r}=t(`node:stream`),{Console:i}=t(`node:console`),a=process.versions.icu?`✅`:`Y `,o=process.versions.icu?`❌`:`N `;n.exports=class{constructor({disableColors:e}={}){this.transform=new r({transform(e,t,n){n(null,e)}}),this.logger=new i({stdout:this.transform,inspectOptions:{colors:!e&&!process.env.CI}})}format(e){let t=e.map(({method:e,path:t,data:{statusCode:n},persist:r,times:i,timesInvoked:s,origin:c})=>({Method:e,Origin:c,Path:t,"Status code":n,Persistent:r?a:o,Invocations:s,Remaining:r?1/0:i-s}));return this.logger.table(t),this.transform.read().toString()}}})),yo=n(((e,t)=>{let{kClients:n}=da(),r=qa(),{kAgent:i,kMockAgentSet:a,kMockAgentGet:o,kDispatches:s,kIsMockActive:c,kNetConnect:l,kGetNetConnect:u,kOptions:d,kFactory:f,kMockAgentRegisterCallHistory:p,kMockAgentIsCallHistoryEnabled:m,kMockAgentAddCallHistoryLog:h,kMockAgentMockCallHistoryInstance:g,kMockAgentAcceptsNonStandardSearchParameters:_,kMockCallHistoryAddLog:v,kIgnoreTrailingSlash:y}=fo(),b=ho(),x=_o(),{matchValue:S,normalizeSearchParams:C,buildAndValidateMockOptions:w,normalizeOrigin:T}=po(),{InvalidArgumentError:E,UndiciError:D}=K(),O=ya(),k=vo(),{MockCallHistory:A}=go();t.exports=class extends O{constructor(e={}){super(e);let t=w(e);if(this[l]=!0,this[c]=!0,this[m]=t.enableCallHistory??!1,this[_]=t.acceptNonStandardSearchParameters??!1,this[y]=t.ignoreTrailingSlash??!1,e?.agent&&typeof e.agent.dispatch!=`function`)throw new E(`Argument opts.agent must implement Agent`);let a=e?.agent?e.agent:new r(e);this[i]=a,this[n]=a[n],this[d]=t,this[m]&&this[p]()}get(e){let t=T(e),n=this[y]?t.replace(/\/$/,``):t,r=this[o](n);return r||(r=this[f](n),this[a](n,r)),r}dispatch(e,t){e.origin=T(e.origin),this.get(e.origin),this[h](e);let n=this[_],r={...e};if(n&&r.path){let[e,t]=r.path.split(`?`);r.path=`${e}?${C(t,n)}`}return this[i].dispatch(r,t)}async close(){this.clearCallHistory(),await this[i].close(),this[n].clear()}deactivate(){this[c]=!1}activate(){this[c]=!0}enableNetConnect(e){if(typeof e==`string`||typeof e==`function`||e instanceof RegExp)Array.isArray(this[l])?this[l].push(e):this[l]=[e];else if(e===void 0)this[l]=!0;else throw new E(`Unsupported matcher. Must be one of String|Function|RegExp.`)}disableNetConnect(){this[l]=!1}enableCallHistory(){return this[m]=!0,this}disableCallHistory(){return this[m]=!1,this}getCallHistory(){return this[g]}clearCallHistory(){this[g]!==void 0&&this[g].clear()}get isMockActive(){return this[c]}[p](){this[g]===void 0&&(this[g]=new A)}[h](e){this[m]&&(this[p](),this[g][v](e))}[a](e,t){this[n].set(e,{count:0,dispatcher:t})}[f](e){let t=Object.assign({agent:this},this[d]);return this[d]&&this[d].connections===1?new b(e,t):new x(e,t)}[o](e){let t=this[n].get(e);if(t?.dispatcher)return t.dispatcher;if(typeof e!=`string`){let t=this[f](`http://localhost:9999`);return this[a](e,t),t}for(let[t,r]of Array.from(this[n]))if(r&&typeof t!=`string`&&S(t,e)){let t=this[f](e);return this[a](e,t),t[s]=r.dispatcher[s],t}}[u](){return this[l]}pendingInterceptors(){let e=this[n];return Array.from(e.entries()).flatMap(([e,t])=>t.dispatcher[s].map(t=>({...t,origin:e}))).filter(({pending:e})=>e)}assertNoPendingInterceptors({pendingInterceptorsFormatter:e=new k}={}){let t=this.pendingInterceptors();if(t.length!==0)throw new D(t.length===1?`1 interceptor is pending:\n\n${e.format(t)}`.trim():`${t.length} interceptors are pending:\n\n${e.format(t)}`.trim())}}})),bo=n(((e,n)=>{let{InvalidArgumentError:r}=K(),{runtimeFeatures:i}=Ma();function a(e={}){let{ignoreHeaders:t=[],excludeHeaders:n=[],matchHeaders:r=[],caseSensitive:i=!1}=e;return{ignore:new Set(t.map(e=>i?e:e.toLowerCase())),exclude:new Set(n.map(e=>i?e:e.toLowerCase())),match:new Set(r.map(e=>i?e:e.toLowerCase()))}}let o=i.has(`crypto`)?t(`node:crypto`):null,s=o?.hash?e=>o.hash(`sha256`,e,`base64url`):e=>Buffer.from(e).toString(`base64url`);function c(e){return Array.isArray(e)&&(e.length&1)==0}function l(e=[]){return e.length===0?()=>!1:function(t){let n;for(let r of e)if(typeof r==`string`){if(n||=t.toLowerCase(),n.includes(r.toLowerCase()))return!0}else if(r instanceof RegExp&&r.test(t))return!0;return!1}}function u(e){let t={};if(!e)return t;if(c(e)){for(let n=0;n<e.length;n+=2){let r=e[n],i=e[n+1];if(r&&i!==void 0){let e=Buffer.isBuffer(r)?r.toString():r,n=Buffer.isBuffer(i)?i.toString():i;t[e.toLowerCase()]=n}}return t}if(e&&typeof e==`object`)for(let[n,r]of Object.entries(e))n&&typeof n==`string`&&(t[n.toLowerCase()]=Array.isArray(r)?r.join(`, `):String(r));return t}let d=[`record`,`playback`,`update`];function f(e){if(!d.includes(e))throw new r(`Invalid snapshot mode: ${e}. Must be one of: ${d.join(`, `)}`)}n.exports={createHeaderFilters:a,hashId:s,isUndiciHeaders:c,normalizeHeaders:u,isUrlExcludedFactory:l,validateSnapshotMode:f}})),xo=n(((e,n)=>{let{writeFile:r,readFile:i,mkdir:a}=t(`node:fs/promises`),{dirname:o,resolve:s}=t(`node:path`),{setTimeout:c,clearTimeout:l}=t(`node:timers`),{InvalidArgumentError:u,UndiciError:d}=K(),{hashId:f,isUrlExcludedFactory:p,normalizeHeaders:m,createHeaderFilters:h}=bo();function g(e,t,n={}){let r=new URL(e.path,e.origin),i=e._normalizedHeaders||m(e.headers);return e._normalizedHeaders||=i,{method:e.method||`GET`,url:n.matchQuery===!1?`${r.origin}${r.pathname}`:r.toString(),headers:_(i,t,n),body:n.matchBody!==!1&&e.body?String(e.body):``}}function _(e,t,n={}){if(!e||typeof e!=`object`)return{};let{caseSensitive:r=!1}=n,i={},{ignore:a,exclude:o,match:s}=t;for(let[t,n]of Object.entries(e)){let e=r?t:t.toLowerCase();o.has(e)||a.has(e)||s.size!==0&&!s.has(e)||(i[e]=n)}return i}function v(e,t,n={}){if(!e||typeof e!=`object`)return{};let{caseSensitive:r=!1}=n,i={},{exclude:a}=t;for(let[t,n]of Object.entries(e)){let e=r?t:t.toLowerCase();a.has(e)||(i[e]=n)}return i}function y(e){let t=[e.method,e.url];if(e.headers&&typeof e.headers==`object`){let n=Object.keys(e.headers).sort();for(let r of n){let n=Array.isArray(e.headers[r])?e.headers[r]:[e.headers[r]];t.push(r);for(let e of n.sort())t.push(String(e))}}return t.push(e.body),f(t.join(`|`))}n.exports={SnapshotRecorder:class{#e;#t;#n=new Map;#r;#i=1/0;#a=!1;#o;constructor(e={}){this.#r=e.snapshotPath,this.#i=e.maxSnapshots||1/0,this.#a=e.autoFlush||!1,this.flushInterval=e.flushInterval||3e4,this._flushTimer=null,this.matchOptions={matchHeaders:e.matchHeaders||[],ignoreHeaders:e.ignoreHeaders||[],excludeHeaders:e.excludeHeaders||[],matchBody:e.matchBody!==!1,matchQuery:e.matchQuery!==!1,caseSensitive:e.caseSensitive||!1},this.#o=h(this.matchOptions),this.shouldRecord=e.shouldRecord||(()=>!0),this.shouldPlayback=e.shouldPlayback||(()=>!0),this.#t=p(e.excludeUrls),this.#a&&this.#r&&this.#s()}async record(e,t){if(!this.shouldRecord(e)||this.isUrlExcluded(e))return;let n=g(e,this.#o,this.matchOptions),r=y(n),i=m(t.headers),a={statusCode:t.statusCode,headers:v(i,this.#o,this.matchOptions),body:Buffer.isBuffer(t.body)?t.body.toString(`base64`):Buffer.from(String(t.body||``)).toString(`base64`),trailers:t.trailers};if(this.#n.size>=this.#i&&!this.#n.has(r)){let e=this.#n.keys().next().value;this.#n.delete(e)}let o=this.#n.get(r);o&&o.responses?(o.responses.push(a),o.timestamp=new Date().toISOString()):this.#n.set(r,{request:n,responses:[a],callCount:0,timestamp:new Date().toISOString()}),this.#a&&this.#r&&this.#l()}isUrlExcluded(e){let t=new URL(e.path,e.origin).toString();return this.#t(t)}findSnapshot(e){if(!this.shouldPlayback(e)||this.isUrlExcluded(e))return;let t=y(g(e,this.#o,this.matchOptions)),n=this.#n.get(t);if(!n)return;let r=n.callCount||0,i=Math.min(r,n.responses.length-1);return n.callCount=r+1,{...n,response:n.responses[i]}}async loadSnapshots(e){let t=e||this.#r;if(!t)throw new u(`Snapshot path is required`);try{let e=await i(s(t),`utf8`),n=JSON.parse(e);if(Array.isArray(n)){this.#n.clear();for(let{hash:e,snapshot:t}of n)this.#n.set(e,t)}else this.#n=new Map(Object.entries(n))}catch(e){if(e.code===`ENOENT`)this.#n.clear();else throw new d(`Failed to load snapshots from ${t}`,{cause:e})}}async saveSnapshots(e){let t=e||this.#r;if(!t)throw new u(`Snapshot path is required`);let n=s(t);await a(o(n),{recursive:!0});let i=Array.from(this.#n.entries()).map(([e,t])=>({hash:e,snapshot:t}));await r(n,JSON.stringify(i,null,2),{flush:!0})}clear(){this.#n.clear()}getSnapshots(){return Array.from(this.#n.values())}size(){return this.#n.size}resetCallCounts(){for(let e of this.#n.values())e.callCount=0}deleteSnapshot(e){let t=y(g(e,this.#o,this.matchOptions));return this.#n.delete(t)}getSnapshotInfo(e){let t=y(g(e,this.#o,this.matchOptions)),n=this.#n.get(t);return n?{hash:t,request:n.request,responseCount:n.responses?n.responses.length:+!!n.response,callCount:n.callCount||0,timestamp:n.timestamp}:null}replaceSnapshots(e){if(this.#n.clear(),Array.isArray(e))for(let{hash:t,snapshot:n}of e)this.#n.set(t,n);else e&&typeof e==`object`&&(this.#n=new Map(Object.entries(e)))}#s(){return this.#l()}#c(){this.#e&&=(l(this.#e),this.saveSnapshots().catch(()=>{}),null)}#l(){this.#e=c(()=>{this.saveSnapshots().catch(()=>{}),this.#a?this.#e?.refresh():this.#e=null},1e3)}destroy(){this.#c(),this.#e&&=(l(this.#e),null)}async close(){this.#r&&this.#n.size!==0&&await this.saveSnapshots(),this.destroy()}},formatRequestKey:g,createRequestHash:y,filterHeadersForMatching:_,filterHeadersForStorage:v,createHeaderFilters:h}})),So=n(((e,t)=>{let n=qa(),r=yo(),{SnapshotRecorder:i}=xo(),a=va(),{InvalidArgumentError:o,UndiciError:s}=K(),{validateSnapshotMode:c}=bo(),l=Symbol(`kSnapshotRecorder`),u=Symbol(`kSnapshotMode`),d=Symbol(`kSnapshotPath`),f=Symbol(`kSnapshotLoaded`),p=Symbol(`kRealAgent`),m=!1;t.exports=class extends r{constructor(e={}){m||=(process.emitWarning(`SnapshotAgent is experimental and subject to change`,`ExperimentalWarning`),!0);let{mode:t=`record`,snapshotPath:r=null,...a}=e;if(super(a),c(t),(t===`playback`||t===`update`)&&!r)throw new o(`snapshotPath is required when mode is '${t}'`);this[u]=t,this[d]=r,this[l]=new i({snapshotPath:this[d],mode:this[u],maxSnapshots:e.maxSnapshots,autoFlush:e.autoFlush,flushInterval:e.flushInterval,matchHeaders:e.matchHeaders,ignoreHeaders:e.ignoreHeaders,excludeHeaders:e.excludeHeaders,matchBody:e.matchBody,matchQuery:e.matchQuery,caseSensitive:e.caseSensitive,shouldRecord:e.shouldRecord,shouldPlayback:e.shouldPlayback,excludeUrls:e.excludeUrls}),this[f]=!1,(this[u]===`record`||this[u]===`update`||this[u]===`playback`&&e.excludeUrls&&e.excludeUrls.length>0)&&(this[p]=new n(e)),(this[u]===`playback`||this[u]===`update`)&&this[d]&&this.loadSnapshots().catch(()=>{})}dispatch(e,t){t=a.wrap(t);let n=this[u];if(this[l].isUrlExcluded(e))return this[p].dispatch(e,t);if(n===`playback`||n===`update`){if(!this[f])return this.#e(e,t);let r=this[l].findSnapshot(e);if(r)return this.#n(r,t);if(n===`update`)return this.#t(e,t);{let n=new s(`No snapshot found for ${e.method||`GET`} ${e.path}`);if(t.onError){t.onError(n);return}throw n}}else if(n===`record`)return this.#t(e,t)}async#e(e,t){return await this.loadSnapshots(),this.dispatch(e,t)}#t(e,t){let n={statusCode:null,headers:{},trailers:{},body:[]},r=this;return this[p].dispatch(e,{onRequestStart(e,n){return t.onRequestStart(e,{...n,history:this.history})},onRequestUpgrade(e,n,r,i){return t.onRequestUpgrade(e,n,r,i)},onResponseStart(e,r,i,a){return n.statusCode=r,n.headers=i,t.onResponseStart(e,r,i,a)},onResponseData(e,r){return n.body.push(r),t.onResponseData(e,r)},onResponseEnd(i,a){n.trailers=a;let o=Buffer.concat(n.body);r[l].record(e,{statusCode:n.statusCode,headers:n.headers,body:o,trailers:n.trailers}).then(()=>t.onResponseEnd(i,a)).catch(e=>t.onResponseError(i,e))}})}#n(e,t){try{let{response:n}=e,r={pause(){},resume(){},abort(e){this.aborted=!0,this.reason=e},aborted:!1,paused:!1};t.onRequestStart(r),t.onResponseStart(r,n.statusCode,n.headers);let i=Buffer.from(n.body,`base64`);t.onResponseData(r,i),t.onResponseEnd(r,n.trailers)}catch(e){t.onError?.(e)}}async loadSnapshots(e){await this[l].loadSnapshots(e||this[d]),this[f]=!0,this[u]===`playback`&&this.#r()}async saveSnapshots(e){return this[l].saveSnapshots(e||this[d])}#r(){for(let e of this[l].getSnapshots()){let{request:t,responses:n,response:r}=e,i=new URL(t.url),a=this.get(i.origin),o=n?n[0]:r;o&&a.intercept({path:i.pathname+i.search,method:t.method,headers:t.headers,body:t.body}).reply(o.statusCode,o.body,{headers:o.headers,trailers:o.trailers}).persist()}}getRecorder(){return this[l]}getMode(){return this[u]}clearSnapshots(){this[l].clear()}resetCallCounts(){this[l].resetCallCounts()}deleteSnapshot(e){return this[l].deleteSnapshot(e)}getSnapshotInfo(e){return this[l].getSnapshotInfo(e)}replaceSnapshots(e){this[l].replaceSnapshots(e)}async close(){await this[l].close(),await this[p]?.close(),await super.close()}}})),Co=n(((e,t)=>{let n=Symbol.for(`undici.globalDispatcher.2`),r=Symbol.for(`undici.globalDispatcher.1`),{InvalidArgumentError:i}=K(),a=qa();s()===void 0&&o(new a);function o(e){if(!e||typeof e.dispatch!=`function`)throw new i(`Argument agent must implement Agent`);Object.defineProperty(globalThis,n,{value:e,writable:!0,enumerable:!1,configurable:!1}),Object.defineProperty(globalThis,r,{value:e,writable:!0,enumerable:!1,configurable:!1})}function s(){return globalThis[r]}t.exports={setGlobalDispatcher:o,getGlobalDispatcher:s,installedExports:[`fetch`,`Headers`,`Response`,`Request`,`FormData`,`WebSocket`,`CloseEvent`,`ErrorEvent`,`MessageEvent`,`EventSource`]}})),wo=n(((e,n)=>{let r=t(`node:assert`),i=va();n.exports=class{#e;#t=!1;#n=!1;#r=!1;constructor(e){if(typeof e!=`object`||!e)throw TypeError(`handler must be an object`);this.#e=i.wrap(e)}onRequestStart(...e){this.#e.onRequestStart?.(...e)}onRequestUpgrade(...e){return r(!this.#t),r(!this.#n),this.#e.onRequestUpgrade?.(...e)}onResponseStart(...e){return r(!this.#t),r(!this.#n),r(!this.#r),this.#r=!0,this.#e.onResponseStart?.(...e)}onResponseData(...e){return r(!this.#t),r(!this.#n),this.#e.onResponseData?.(...e)}onResponseEnd(...e){return r(!this.#t),r(!this.#n),this.#t=!0,this.#e.onResponseEnd?.(...e)}onResponseError(...e){return this.#n=!0,this.#e.onResponseError?.(...e)}onBodySent(){}}})),To=n(((e,n)=>{let r=q(),{kBodyUsed:i}=da(),a=t(`node:assert`),{InvalidArgumentError:o}=K(),s=t(`node:events`),c=[300,301,302,303,307,308],l=Symbol(`body`),u=()=>{};var d=class{constructor(e){this[l]=e,this[i]=!1}async*[Symbol.asyncIterator](){a(!this[i],`disturbed`),this[i]=!0,yield*this[l]}},f=class e{static buildDispatch(t,n){if(n!=null&&(!Number.isInteger(n)||n<0))throw new o(`maxRedirections must be a positive number`);let r=t.dispatch.bind(t);return(t,i)=>r(t,new e(r,n,t,i))}constructor(e,t,n,c){if(t!=null&&(!Number.isInteger(t)||t<0))throw new o(`maxRedirections must be a positive number`);this.dispatch=e,this.location=null;let{maxRedirections:l,...u}=n;this.opts=u,this.maxRedirections=t,this.handler=c,this.history=[],r.isStream(this.opts.body)?(r.bodyLength(this.opts.body)===0&&this.opts.body.on(`data`,function(){a(!1)}),typeof this.opts.body.readableDidRead!=`boolean`&&(this.opts.body[i]=!1,s.prototype.on.call(this.opts.body,`data`,function(){this[i]=!0}))):(this.opts.body&&typeof this.opts.body.pipeTo==`function`||this.opts.body&&typeof this.opts.body!=`string`&&!ArrayBuffer.isView(this.opts.body)&&r.isIterable(this.opts.body)&&!r.isFormDataLike(this.opts.body))&&(this.opts.body=new d(this.opts.body))}onRequestStart(e,t){this.handler.onRequestStart?.(e,{...t,history:this.history})}onRequestUpgrade(e,t,n,r){this.handler.onRequestUpgrade?.(e,t,n,r)}onResponseStart(e,t,n,i){if(this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections)throw Error(`max redirects`);if((t===301||t===302)&&this.opts.method===`POST`&&(this.opts.method=`GET`,r.isStream(this.opts.body)&&r.destroy(this.opts.body.on(`error`,u)),this.opts.body=null),t===303&&this.opts.method!==`HEAD`&&(this.opts.method=`GET`,r.isStream(this.opts.body)&&r.destroy(this.opts.body.on(`error`,u)),this.opts.body=null),this.location=this.history.length>=this.maxRedirections||r.isDisturbed(this.opts.body)||c.indexOf(t)===-1?null:n.location,this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location){this.handler.onResponseStart?.(e,t,n,i);return}let{origin:a,pathname:s,search:l}=r.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),d=l?`${s}${l}`:s,f=`${a}${d}`;for(let e of this.history)if(e.toString()===f)throw new o(`Redirect loop detected. Cannot redirect to ${a}. This typically happens when using a Client or Pool with cross-origin redirects. Use an Agent for cross-origin redirects.`);this.opts.headers=m(this.opts.headers,t===303,this.opts.origin!==a),this.opts.path=d,this.opts.origin=a,this.opts.query=null}onResponseData(e,t){this.location||this.handler.onResponseData?.(e,t)}onResponseEnd(e,t){this.location?this.dispatch(this.opts,this):this.handler.onResponseEnd(e,t)}onResponseError(e,t){this.handler.onResponseError?.(e,t)}};function p(e,t,n){if(e.length===4)return r.headerNameToString(e)===`host`;if(t&&r.headerNameToString(e).startsWith(`content-`))return!0;if(n&&(e.length===13||e.length===6||e.length===19)){let t=r.headerNameToString(e);return t===`authorization`||t===`cookie`||t===`proxy-authorization`}return!1}function m(e,t,n){let i=[];if(Array.isArray(e))for(let r=0;r<e.length;r+=2)p(e[r],t,n)||i.push(e[r],e[r+1]);else if(e&&typeof e==`object`){let a=r.hasSafeIterator(e)?e:Object.entries(e);for(let[e,r]of a)p(e,t,n)||i.push(e,r)}else a(e==null,`headers must be an object or an array`);return i}n.exports=f})),Eo=n(((e,t)=>{let n=To();function r({maxRedirections:e}={}){return t=>function(r,i){let{maxRedirections:a=e,...o}=r;if(a==null||a===0)return t(r,i);let s={...o};return t(s,new n(t,a,s,i))}}t.exports=r})),Do=n(((e,t)=>{let n=wo(),{ResponseError:r}=K();var i=class extends n{#e;#t;#n;#r;#i;constructor(e,{handler:t}){super(t)}#a(e){return(this.#t??``).indexOf(e)===0}onRequestStart(e,t){return this.#e=0,this.#t=null,this.#n=null,this.#r=null,this.#i=``,super.onRequestStart(e,t)}onResponseStart(e,t,n,r){if(this.#e=t,this.#r=n,this.#t=n[`content-type`],this.#e<400)return super.onResponseStart(e,t,n,r);(this.#a(`application/json`)||this.#a(`text/plain`))&&(this.#n=new TextDecoder(`utf-8`))}onResponseData(e,t){if(this.#e<400)return super.onResponseData(e,t);this.#i+=this.#n?.decode(t,{stream:!0})??``}onResponseEnd(e,t){if(this.#e>=400){if(this.#i+=this.#n?.decode(void 0,{stream:!1})??``,this.#a(`application/json`))try{this.#i=JSON.parse(this.#i)}catch{}let t,n=Error.stackTraceLimit;Error.stackTraceLimit=0;try{t=new r(`Response Error`,this.#e,{body:this.#i,headers:this.#r})}finally{Error.stackTraceLimit=n}super.onResponseError(e,t)}else super.onResponseEnd(e,t)}onResponseError(e,t){super.onResponseError(e,t)}};t.exports=()=>e=>function(t,n){return e(t,new i(t,{handler:n}))}})),Oo=n(((e,t)=>{let n=$a();t.exports=e=>t=>function(r,i){return t(r,new n({...r,retryOptions:{...e,...r.retryOptions}},{handler:i,dispatch:t}))}})),ko=n(((e,t)=>{let{InvalidArgumentError:n,RequestAbortedError:r}=K(),i=wo();var a=class extends i{#e=1024*1024;#t=!1;#n=0;#r=null;aborted=!1;reason=!1;constructor({maxSize:e,signal:t},r){if(e!=null&&(!Number.isFinite(e)||e<1))throw new n(`maxSize must be a number greater than 0`);super(r),this.#e=e??this.#e}#i(e){this.aborted=!0,this.reason=e}onRequestStart(e,t){return e.abort=this.#i.bind(this),this.#r=e,super.onRequestStart(e,t)}onResponseStart(e,t,n,i){let a=n[`content-length`];if(a!=null&&a>this.#e)throw new r(`Response size (${a}) larger than maxSize (${this.#e})`);return this.aborted===!0?!0:super.onResponseStart(e,t,n,i)}onResponseError(e,t){this.#t||(t=this.#r?.reason??t,super.onResponseError(e,t))}onResponseData(e,t){return this.#n+=t.length,this.#n>=this.#e&&(this.#t=!0,this.aborted===!0?super.onResponseError(e,this.reason):super.onResponseEnd(e,{})),!0}onResponseEnd(e,t){if(!this.#t){if(this.#r.aborted===!0){super.onResponseError(e,this.reason);return}super.onResponseEnd(e,t)}}};function o({maxSize:e}={maxSize:1024*1024}){return t=>function(n,r){let{dumpMaxSize:i=e}=n;return t(n,new a({maxSize:i,signal:n.signal},r))}}t.exports=o})),Ao=n(((e,n)=>{let{isIP:r}=t(`node:net`),{lookup:i}=t(`node:dns`),a=wo(),{InvalidArgumentError:o,InformationalError:s}=K(),c=2**31-1;function l(e){let t=Object.getPrototypeOf(e);return Object.prototype.hasOwnProperty.call(e,Symbol.iterator)||t!=null&&t!==Object.prototype&&typeof e[Symbol.iterator]==`function`}function u(e){return typeof e==`string`&&e.toLowerCase()===`host`}function d(e){if(e==null)return null;if(Array.isArray(e)){if(e.length===0||!Array.isArray(e[0]))return e;let t=[];for(let n of e)Array.isArray(n)&&n.length===2?t.push(n[0],n[1]):t.push(n);return t}if(typeof e==`object`&&l(e)){let t=[];for(let n of e)Array.isArray(n)&&n.length===2?t.push(n[0],n[1]):t.push(n);return t}return e}function f(e){if(e==null)return!1;if(Array.isArray(e)){if(e.length===0)return!1;for(let t=0;t<e.length;t+=2)if(u(e[t]))return!0;return!1}if(typeof e==`object`){for(let t in e)if(u(t))return!0}return!1}function p(e,t){let n=d(t);return f(n)?n:Array.isArray(n)?[`host`,e,...n]:n&&typeof n==`object`?{host:e,...n}:{host:e}}var m=class{#e=0;#t=new Map;constructor(e){this.#e=e.maxItems}get size(){return this.#t.size}get(e){return this.#t.get(e)??null}set(e,t){this.#t.set(e,t)}delete(e){this.#t.delete(e)}full(){return this.size>=this.#e}},h=class{#e=0;#t=0;dualStack=!0;affinity=null;lookup=null;pick=null;storage=null;constructor(e){this.#e=e.maxTTL,this.#t=e.maxItems,this.dualStack=e.dualStack,this.affinity=e.affinity,this.lookup=e.lookup??this.#n,this.pick=e.pick??this.#r,this.storage=e.storage??new m(e)}runLookup(e,t,n){let r=this.storage.get(e.hostname);if(r==null&&this.storage.full()){n(null,e);return}let i={affinity:this.affinity,dualStack:this.dualStack,lookup:this.lookup,pick:this.pick,...t.dns,maxTTL:this.#e,maxItems:this.#t};if(r==null)this.lookup(e,i,(t,r)=>{if(t||r==null||r.length===0){n(t??new s(`No DNS entries found`));return}this.setRecords(e,r);let a=this.storage.get(e.hostname),o=this.pick(e,a,i.affinity),c;c=typeof o.port==`number`?`:${o.port}`:e.port===``?``:`:${e.port}`,n(null,new URL(`${e.protocol}//${o.family===6?`[${o.address}]`:o.address}${c}`))});else{let a=this.pick(e,r,i.affinity);if(a==null){this.storage.delete(e.hostname),this.runLookup(e,t,n);return}let o;o=typeof a.port==`number`?`:${a.port}`:e.port===``?``:`:${e.port}`,n(null,new URL(`${e.protocol}//${a.family===6?`[${a.address}]`:a.address}${o}`))}}#n(e,t,n){i(e.hostname,{all:!0,family:this.dualStack===!1?this.affinity:0,order:`ipv4first`},(e,t)=>{if(e)return n(e);let r=new Map;for(let e of t)r.set(`${e.address}:${e.family}`,e);n(null,r.values())})}#r(e,t,n){let r=null,{records:i,offset:a}=t,o;if(this.dualStack?(n??(a==null||a===c?(t.offset=0,n=4):(t.offset++,n=(t.offset&1)==1?6:4)),o=i[n]!=null&&i[n].ips.length>0?i[n]:i[n===4?6:4]):o=i[n],o==null||o.ips.length===0)return r;o.offset==null||o.offset===c?o.offset=0:o.offset++;let s=o.offset%o.ips.length;return r=o.ips[s]??null,r==null?r:Date.now()-r.timestamp>r.ttl?(o.ips.splice(s,1),this.pick(e,t,n)):r}pickFamily(e,t){let n=this.storage.get(e.hostname)?.records;if(!n)return null;let r=n[t];if(!r)return null;r.offset==null||r.offset===c?r.offset=0:r.offset++;let i=r.offset%r.ips.length,a=r.ips[i]??null;return a==null||Date.now()-a.timestamp>a.ttl&&r.ips.splice(i,1),a}setRecords(e,t){let n=Date.now(),r={records:{4:null,6:null}},i=this.#e;for(let e of t){e.timestamp=n,typeof e.ttl==`number`?(e.ttl=Math.min(e.ttl,this.#e),i=Math.min(i,e.ttl)):e.ttl=this.#e;let t=r.records[e.family]??{ips:[]};t.ips.push(e),r.records[e.family]=t}this.storage.set(e.hostname,r,{ttl:i})}deleteRecords(e){this.storage.delete(e.hostname)}getHandler(e,t){return new g(this,e,t)}},g=class extends a{#e=null;#t=null;#n=null;#r=null;#i=null;#a=!0;constructor(e,{origin:t,handler:n,dispatch:r,newOrigin:i},a){super(n),this.#r=t,this.#i=i,this.#t={...a},this.#e=e,this.#n=r}onResponseError(e,t){switch(t.code){case`ETIMEDOUT`:case`ECONNREFUSED`:if(this.#e.dualStack){if(!this.#a){super.onResponseError(e,t);return}this.#a=!1;let n=this.#i.hostname[0]===`[`?4:6,r=this.#e.pickFamily(this.#r,n);if(r==null){super.onResponseError(e,t);return}let i;i=typeof r.port==`number`?`:${r.port}`:this.#r.port===``?``:`:${this.#r.port}`;let a={...this.#t,origin:`${this.#r.protocol}//${r.family===6?`[${r.address}]`:r.address}${i}`,headers:p(this.#r.host,this.#t.headers)};this.#n(a,this);return}super.onResponseError(e,t);break;case`ENOTFOUND`:this.#e.deleteRecords(this.#r),super.onResponseError(e,t);break;default:super.onResponseError(e,t);break}}};n.exports=e=>{if(e?.maxTTL!=null&&(typeof e?.maxTTL!=`number`||e?.maxTTL<0))throw new o(`Invalid maxTTL. Must be a positive number`);if(e?.maxItems!=null&&(typeof e?.maxItems!=`number`||e?.maxItems<1))throw new o(`Invalid maxItems. Must be a positive number and greater than zero`);if(e?.affinity!=null&&e?.affinity!==4&&e?.affinity!==6)throw new o(`Invalid affinity. Must be either 4 or 6`);if(e?.dualStack!=null&&typeof e?.dualStack!=`boolean`)throw new o(`Invalid dualStack. Must be a boolean`);if(e?.lookup!=null&&typeof e?.lookup!=`function`)throw new o(`Invalid lookup. Must be a function`);if(e?.pick!=null&&typeof e?.pick!=`function`)throw new o(`Invalid pick. Must be a function`);if(e?.storage!=null&&(typeof e?.storage?.get!=`function`||typeof e?.storage?.set!=`function`||typeof e?.storage?.full!=`function`||typeof e?.storage?.delete!=`function`))throw new o(`Invalid storage. Must be a object with methods: { get, set, full, delete }`);let t=e?.dualStack??!0,n;n=t?e?.affinity??null:e?.affinity??4;let i=new h({maxTTL:e?.maxTTL??1e4,lookup:e?.lookup??null,pick:e?.pick??null,dualStack:t,affinity:n,maxItems:e?.maxItems??1/0,storage:e?.storage});return e=>function(t,n){let a=t.origin.constructor===URL?t.origin:new URL(t.origin);return r(a.hostname)===0?(i.runLookup(a,t,(r,o)=>{if(r)return n.onResponseError(null,r);e({...t,servername:a.hostname,origin:o.origin,headers:p(a.host,t.headers)},i.getHandler({origin:a,dispatch:e,handler:n,newOrigin:o},t))}),!0):e(t,n)}}})),jo=n(((e,t)=>{let{safeHTTPMethods:n,pathHasQueryOrFragment:r,hasSafeIterator:i}=q(),{serializePathWithQuery:a}=q();function o(e){if(!e.origin)throw Error(`opts.origin is undefined`);let t=e.path||`/`;return e.query&&!r(t)&&(t=a(t,e.query)),{origin:e.origin.toString(),method:e.method,path:t,headers:e.headers}}function s(e){let t;if(e.headers==null)t={};else if(typeof e.headers==`object`)if(t={},i(e.headers))for(let n of e.headers){if(!Array.isArray(n))throw Error(`opts.headers is not a valid header map`);let[e,r]=n;if(typeof e!=`string`||typeof r!=`string`)throw Error(`opts.headers is not a valid header map`);t[e.toLowerCase()]=r}else for(let n of Object.keys(e.headers))t[n.toLowerCase()]=e.headers[n];else throw Error(`opts.headers is not an object`);return t}function c(e){if(typeof e!=`object`)throw TypeError(`expected key to be object, got ${typeof e}`);for(let t of[`origin`,`method`,`path`])if(typeof e[t]!=`string`)throw TypeError(`expected key.${t} to be string, got ${typeof e[t]}`);if(e.headers!==void 0&&typeof e.headers!=`object`)throw TypeError(`expected headers to be object, got ${typeof e}`)}function l(e){if(typeof e!=`object`)throw TypeError(`expected value to be object, got ${typeof e}`);for(let t of[`statusCode`,`cachedAt`,`staleAt`,`deleteAt`])if(typeof e[t]!=`number`)throw TypeError(`expected value.${t} to be number, got ${typeof e[t]}`);if(typeof e.statusMessage!=`string`)throw TypeError(`expected value.statusMessage to be string, got ${typeof e.statusMessage}`);if(e.headers!=null&&typeof e.headers!=`object`)throw TypeError(`expected value.rawHeaders to be object, got ${typeof e.headers}`);if(e.vary!==void 0&&typeof e.vary!=`object`)throw TypeError(`expected value.vary to be object, got ${typeof e.vary}`);if(e.etag!==void 0&&typeof e.etag!=`string`)throw TypeError(`expected value.etag to be string, got ${typeof e.etag}`)}function u(e){let t={},n;if(Array.isArray(e)){n=[];for(let t of e)n.push(...t.split(`,`))}else n=e.split(`,`);for(let e=0;e<n.length;e++){let r=n[e].toLowerCase(),i=r.indexOf(`=`),a,o;switch(i===-1?a=r.trim():(a=r.substring(0,i).trimStart(),o=r.substring(i+1)),a){case`min-fresh`:case`max-stale`:case`max-age`:case`s-maxage`:case`stale-while-revalidate`:case`stale-if-error`:{if(o===void 0||o[0]===` `)continue;o.length>=2&&o[0]===`"`&&o[o.length-1]===`"`&&(o=o.substring(1,o.length-1));let e=parseInt(o,10);if(e!==e||a===`max-age`&&a in t&&t[a]>=e)continue;t[a]=e;break}case`private`:case`no-cache`:if(o){if(o[0]===`"`){let r=[o.substring(1)],i=o[o.length-1]===`"`;if(!i)for(let t=e+1;t<n.length;t++){let e=n[t],a=e.length;if(r.push(e.trim()),a!==0&&e[a-1]===`"`){i=!0;break}}if(i){let e=r[r.length-1];e[e.length-1]===`"`&&(e=e.substring(0,e.length-1),r[r.length-1]=e);for(let e=0;e<r.length;e++)r[e]=r[e].trim();a in t?t[a]=t[a].concat(r):t[a]=r}}else{let e=o.trim();a in t?t[a]=t[a].concat(e):t[a]=[e]}break}case`public`:case`no-store`:case`must-revalidate`:case`proxy-revalidate`:case`immutable`:case`no-transform`:case`must-understand`:case`only-if-cached`:if(o)continue;t[a]=!0;break;default:continue}}return t}function d(e,t){if(typeof e==`string`&&e.includes(`*`))return t;let n={},r=typeof e==`string`?e.split(`,`):e;for(let e of r){let r=e.trim().toLowerCase();n[r]=t[r]??null}return n}function f(e){return e.length<=2?!1:e[0]===`"`&&e[e.length-1]===`"`?!(e[1]===`"`||e.startsWith(`"W/`)):e.startsWith(`W/"`)&&e[e.length-1]===`"`?e.length!==4:!1}function p(e,t=`CacheStore`){if(typeof e!=`object`||!e)throw TypeError(`expected type of ${t} to be a CacheStore, got ${e===null?`null`:typeof e}`);for(let n of[`get`,`createWriteStream`,`delete`])if(typeof e[n]!=`function`)throw TypeError(`${t} needs to have a \`${n}()\` function`)}function m(e,t=`CacheMethods`){if(!Array.isArray(e))throw TypeError(`expected type of ${t} needs to be an array, got ${e===null?`null`:typeof e}`);if(e.length===0)throw TypeError(`${t} needs to have at least one method`);for(let r of e)if(!n.includes(r))throw TypeError(`element of ${t}-array needs to be one of following values: ${n.join(`, `)}, got ${r}`)}function h(e,t){let n={};if(e.headers){let r=Object.keys(e.headers).sort();for(let i of r)t?.has(i.toLowerCase())||(n[i]=e.headers[i])}return JSON.stringify([e.origin,e.method,e.path,n])}t.exports={makeCacheKey:o,normalizeHeaders:s,assertCacheKey:c,assertCacheValue:l,parseCacheControlHeader:u,parseVaryHeader:d,isEtagUsable:f,assertCacheMethods:m,assertCacheStore:p,makeDeduplicationKey:h}})),Mo=n(((e,t)=>{function n(e){switch(e[3]){case`,`:return r(e);case` `:return i(e);default:return a(e)}}function r(e){if(e.length!==29||e[4]!==` `||e[7]!==` `||e[11]!==` `||e[16]!==` `||e[19]!==`:`||e[22]!==`:`||e[25]!==` `||e[26]!==`G`||e[27]!==`M`||e[28]!==`T`)return;let t=-1;if(e[0]===`S`&&e[1]===`u`&&e[2]===`n`)t=0;else if(e[0]===`M`&&e[1]===`o`&&e[2]===`n`)t=1;else if(e[0]===`T`&&e[1]===`u`&&e[2]===`e`)t=2;else if(e[0]===`W`&&e[1]===`e`&&e[2]===`d`)t=3;else if(e[0]===`T`&&e[1]===`h`&&e[2]===`u`)t=4;else if(e[0]===`F`&&e[1]===`r`&&e[2]===`i`)t=5;else if(e[0]===`S`&&e[1]===`a`&&e[2]===`t`)t=6;else return;let n=0;if(e[5]===`0`){let t=e.charCodeAt(6);if(t<49||t>57)return;n=t-48}else{let t=e.charCodeAt(5);if(t<49||t>51)return;let r=e.charCodeAt(6);if(r<48||r>57)return;n=(t-48)*10+(r-48)}let r=-1;if(e[8]===`J`&&e[9]===`a`&&e[10]===`n`)r=0;else if(e[8]===`F`&&e[9]===`e`&&e[10]===`b`)r=1;else if(e[8]===`M`&&e[9]===`a`)if(e[10]===`r`)r=2;else if(e[10]===`y`)r=4;else return;else if(e[8]===`J`)if(e[9]===`a`&&e[10]===`n`)r=0;else if(e[9]===`u`)if(e[10]===`n`)r=5;else if(e[10]===`l`)r=6;else return;else return;else if(e[8]===`A`)if(e[9]===`p`&&e[10]===`r`)r=3;else if(e[9]===`u`&&e[10]===`g`)r=7;else return;else if(e[8]===`S`&&e[9]===`e`&&e[10]===`p`)r=8;else if(e[8]===`O`&&e[9]===`c`&&e[10]===`t`)r=9;else if(e[8]===`N`&&e[9]===`o`&&e[10]===`v`)r=10;else if(e[8]===`D`&&e[9]===`e`&&e[10]===`c`)r=11;else return;let i=e.charCodeAt(12);if(i<48||i>57)return;let a=e.charCodeAt(13);if(a<48||a>57)return;let o=e.charCodeAt(14);if(o<48||o>57)return;let s=e.charCodeAt(15);if(s<48||s>57)return;let c=(i-48)*1e3+(a-48)*100+(o-48)*10+(s-48),l=0;if(e[17]===`0`){let t=e.charCodeAt(18);if(t<48||t>57)return;l=t-48}else{let t=e.charCodeAt(17);if(t<48||t>50)return;let n=e.charCodeAt(18);if(n<48||n>57||t===50&&n>51)return;l=(t-48)*10+(n-48)}let u=0;if(e[20]===`0`){let t=e.charCodeAt(21);if(t<48||t>57)return;u=t-48}else{let t=e.charCodeAt(20);if(t<48||t>53)return;let n=e.charCodeAt(21);if(n<48||n>57)return;u=(t-48)*10+(n-48)}let d=0;if(e[23]===`0`){let t=e.charCodeAt(24);if(t<48||t>57)return;d=t-48}else{let t=e.charCodeAt(23);if(t<48||t>53)return;let n=e.charCodeAt(24);if(n<48||n>57)return;d=(t-48)*10+(n-48)}let f=new Date(Date.UTC(c,r,n,l,u,d));return f.getUTCDay()===t?f:void 0}function i(e){if(e.length!==24||e[7]!==` `||e[10]!==` `||e[19]!==` `)return;let t=-1;if(e[0]===`S`&&e[1]===`u`&&e[2]===`n`)t=0;else if(e[0]===`M`&&e[1]===`o`&&e[2]===`n`)t=1;else if(e[0]===`T`&&e[1]===`u`&&e[2]===`e`)t=2;else if(e[0]===`W`&&e[1]===`e`&&e[2]===`d`)t=3;else if(e[0]===`T`&&e[1]===`h`&&e[2]===`u`)t=4;else if(e[0]===`F`&&e[1]===`r`&&e[2]===`i`)t=5;else if(e[0]===`S`&&e[1]===`a`&&e[2]===`t`)t=6;else return;let n=-1;if(e[4]===`J`&&e[5]===`a`&&e[6]===`n`)n=0;else if(e[4]===`F`&&e[5]===`e`&&e[6]===`b`)n=1;else if(e[4]===`M`&&e[5]===`a`)if(e[6]===`r`)n=2;else if(e[6]===`y`)n=4;else return;else if(e[4]===`J`)if(e[5]===`a`&&e[6]===`n`)n=0;else if(e[5]===`u`)if(e[6]===`n`)n=5;else if(e[6]===`l`)n=6;else return;else return;else if(e[4]===`A`)if(e[5]===`p`&&e[6]===`r`)n=3;else if(e[5]===`u`&&e[6]===`g`)n=7;else return;else if(e[4]===`S`&&e[5]===`e`&&e[6]===`p`)n=8;else if(e[4]===`O`&&e[5]===`c`&&e[6]===`t`)n=9;else if(e[4]===`N`&&e[5]===`o`&&e[6]===`v`)n=10;else if(e[4]===`D`&&e[5]===`e`&&e[6]===`c`)n=11;else return;let r=0;if(e[8]===` `){let t=e.charCodeAt(9);if(t<49||t>57)return;r=t-48}else{let t=e.charCodeAt(8);if(t<49||t>51)return;let n=e.charCodeAt(9);if(n<48||n>57)return;r=(t-48)*10+(n-48)}let i=0;if(e[11]===`0`){let t=e.charCodeAt(12);if(t<48||t>57)return;i=t-48}else{let t=e.charCodeAt(11);if(t<48||t>50)return;let n=e.charCodeAt(12);if(n<48||n>57||t===50&&n>51)return;i=(t-48)*10+(n-48)}let a=0;if(e[14]===`0`){let t=e.charCodeAt(15);if(t<48||t>57)return;a=t-48}else{let t=e.charCodeAt(14);if(t<48||t>53)return;let n=e.charCodeAt(15);if(n<48||n>57)return;a=(t-48)*10+(n-48)}let o=0;if(e[17]===`0`){let t=e.charCodeAt(18);if(t<48||t>57)return;o=t-48}else{let t=e.charCodeAt(17);if(t<48||t>53)return;let n=e.charCodeAt(18);if(n<48||n>57)return;o=(t-48)*10+(n-48)}let s=e.charCodeAt(20);if(s<48||s>57)return;let c=e.charCodeAt(21);if(c<48||c>57)return;let l=e.charCodeAt(22);if(l<48||l>57)return;let u=e.charCodeAt(23);if(u<48||u>57)return;let d=(s-48)*1e3+(c-48)*100+(l-48)*10+(u-48),f=new Date(Date.UTC(d,n,r,i,a,o));return f.getUTCDay()===t?f:void 0}function a(e){let t=-1,n=-1;if(e[0]===`S`)e[1]===`u`&&e[2]===`n`&&e[3]===`d`&&e[4]===`a`&&e[5]===`y`?(n=0,t=6):e[1]===`a`&&e[2]===`t`&&e[3]===`u`&&e[4]===`r`&&e[5]===`d`&&e[6]===`a`&&e[7]===`y`&&(n=6,t=8);else if(e[0]===`M`&&e[1]===`o`&&e[2]===`n`&&e[3]===`d`&&e[4]===`a`&&e[5]===`y`)n=1,t=6;else if(e[0]===`T`)e[1]===`u`&&e[2]===`e`&&e[3]===`s`&&e[4]===`d`&&e[5]===`a`&&e[6]===`y`?(n=2,t=7):e[1]===`h`&&e[2]===`u`&&e[3]===`r`&&e[4]===`s`&&e[5]===`d`&&e[6]===`a`&&e[7]===`y`&&(n=4,t=8);else if(e[0]===`W`&&e[1]===`e`&&e[2]===`d`&&e[3]===`n`&&e[4]===`e`&&e[5]===`s`&&e[6]===`d`&&e[7]===`a`&&e[8]===`y`)n=3,t=9;else if(e[0]===`F`&&e[1]===`r`&&e[2]===`i`&&e[3]===`d`&&e[4]===`a`&&e[5]===`y`)n=5,t=6;else return;if(e[t]!==`,`||e.length-t-1!=23||e[t+1]!==` `||e[t+4]!==`-`||e[t+8]!==`-`||e[t+11]!==` `||e[t+14]!==`:`||e[t+17]!==`:`||e[t+20]!==` `||e[t+21]!==`G`||e[t+22]!==`M`||e[t+23]!==`T`)return;let r=0;if(e[t+2]===`0`){let n=e.charCodeAt(t+3);if(n<49||n>57)return;r=n-48}else{let n=e.charCodeAt(t+2);if(n<49||n>51)return;let i=e.charCodeAt(t+3);if(i<48||i>57)return;r=(n-48)*10+(i-48)}let i=-1;if(e[t+5]===`J`&&e[t+6]===`a`&&e[t+7]===`n`)i=0;else if(e[t+5]===`F`&&e[t+6]===`e`&&e[t+7]===`b`)i=1;else if(e[t+5]===`M`&&e[t+6]===`a`&&e[t+7]===`r`)i=2;else if(e[t+5]===`A`&&e[t+6]===`p`&&e[t+7]===`r`)i=3;else if(e[t+5]===`M`&&e[t+6]===`a`&&e[t+7]===`y`)i=4;else if(e[t+5]===`J`&&e[t+6]===`u`&&e[t+7]===`n`)i=5;else if(e[t+5]===`J`&&e[t+6]===`u`&&e[t+7]===`l`)i=6;else if(e[t+5]===`A`&&e[t+6]===`u`&&e[t+7]===`g`)i=7;else if(e[t+5]===`S`&&e[t+6]===`e`&&e[t+7]===`p`)i=8;else if(e[t+5]===`O`&&e[t+6]===`c`&&e[t+7]===`t`)i=9;else if(e[t+5]===`N`&&e[t+6]===`o`&&e[t+7]===`v`)i=10;else if(e[t+5]===`D`&&e[t+6]===`e`&&e[t+7]===`c`)i=11;else return;let a=e.charCodeAt(t+9);if(a<48||a>57)return;let o=e.charCodeAt(t+10);if(o<48||o>57)return;let s=(a-48)*10+(o-48);s+=s<70?2e3:1900;let c=0;if(e[t+12]===`0`){let n=e.charCodeAt(t+13);if(n<48||n>57)return;c=n-48}else{let n=e.charCodeAt(t+12);if(n<48||n>50)return;let r=e.charCodeAt(t+13);if(r<48||r>57||n===50&&r>51)return;c=(n-48)*10+(r-48)}let l=0;if(e[t+15]===`0`){let n=e.charCodeAt(t+16);if(n<48||n>57)return;l=n-48}else{let n=e.charCodeAt(t+15);if(n<48||n>53)return;let r=e.charCodeAt(t+16);if(r<48||r>57)return;l=(n-48)*10+(r-48)}let u=0;if(e[t+18]===`0`){let n=e.charCodeAt(t+19);if(n<48||n>57)return;u=n-48}else{let n=e.charCodeAt(t+18);if(n<48||n>53)return;let r=e.charCodeAt(t+19);if(r<48||r>57)return;u=(n-48)*10+(r-48)}let d=new Date(Date.UTC(s,i,r,c,l,u));return d.getUTCDay()===n?d:void 0}t.exports={parseHttpDate:n}})),No=n(((e,t)=>{let n=q(),{parseCacheControlHeader:r,parseVaryHeader:i,isEtagUsable:a}=jo(),{parseHttpDate:o}=Mo();function s(){}let c=[200,203,204,206,300,301,308,404,405,410,414,501],l=[206];var u=class{#e;#t;#n;#r;#i;#a;constructor({store:e,type:t,cacheByDefault:n},r,i){this.#r=e,this.#t=t,this.#n=n,this.#e=r,this.#i=i}onRequestStart(e,t){this.#a?.destroy(),this.#a=void 0,this.#i.onRequestStart?.(e,t)}onRequestUpgrade(e,t,n,r){this.#i.onRequestUpgrade?.(e,t,n,r)}onResponseStart(e,t,l,u){let g=()=>this.#i.onResponseStart?.(e,t,l,u),_=this;if(!n.safeHTTPMethods.includes(this.#e.method)&&t>=200&&t<=399){try{this.#r.delete(this.#e)?.catch?.(s)}catch{}return g()}let v=l[`cache-control`],y=l[`last-modified`]&&c.includes(t);if(!v&&!l.expires&&!y&&!this.#n)return g();let b=v?r(v):{};if(!d(this.#t,t,l,b,this.#e.headers))return g();let x=Date.now(),S=l.age?f(l.age):void 0;if(S&&S>=2147483647e3)return g();let C=typeof l.date==`string`?o(l.date):void 0,w=p(this.#t,x,S,l,C,b)??this.#n;if(w===void 0||S&&S>w)return g();let T=C?C.getTime():x,E=w+T;if(x>=E)return g();let D;if(this.#e.headers&&l.vary&&(D=i(l.vary,this.#e.headers),!D))return g();let O=m(T,b,E),k=h(l,b),A={statusCode:t,statusMessage:u,headers:k,vary:D,cacheControlDirectives:b,cachedAt:S?x-S:x,staleAt:E,deleteAt:O};if(t===304){let t=t=>{if(!t)return g();if(A.statusCode=t.statusCode,A.statusMessage=t.statusMessage,A.etag=t.etag,A.headers={...t.headers,...k},g(),this.#a=this.#r.createWriteStream(this.#e,A),!(!this.#a||!t?.body))if(typeof t.body.values==`function`){let n=t.body.values(),r=()=>{for(let t of n){let n=this.#a.write(t)===!1;if(this.#i.onResponseData?.(e,t),n)break}};this.#a.on(`error`,function(){_.#a=void 0,_.#r.delete(_.#e)}).on(`drain`,()=>{r()}).on(`close`,function(){_.#a===this&&(_.#a=void 0)}),r()}else typeof t.body.on==`function`&&(t.body.on(`data`,t=>{this.#a.write(t),this.#i.onResponseData?.(e,t)}).on(`end`,()=>{this.#a.end()}).on(`error`,()=>{this.#a=void 0,this.#r.delete(this.#e)}),this.#a.on(`error`,function(){_.#a=void 0,_.#r.delete(_.#e)}).on(`close`,function(){_.#a===this&&(_.#a=void 0)}))},n=this.#r.get(this.#e);n&&typeof n.then==`function`?n.then(t):t(n)}else{if(typeof l.etag==`string`&&a(l.etag)&&(A.etag=l.etag),this.#a=this.#r.createWriteStream(this.#e,A),!this.#a)return g();this.#a.on(`drain`,()=>e.resume()).on(`error`,function(){_.#a=void 0,_.#r.delete(_.#e)}).on(`close`,function(){_.#a===this&&(_.#a=void 0),e.resume()}),g()}}onResponseData(e,t){this.#a?.write(t)===!1&&e.pause(),this.#i.onResponseData?.(e,t)}onResponseEnd(e,t){this.#a?.end(),this.#i.onResponseEnd?.(e,t)}onResponseError(e,t){this.#a?.destroy(t),this.#a=void 0,this.#i.onResponseError?.(e,t)}};function d(e,t,n,r,i){return!(t<200||l.includes(t)||!c.includes(t)&&!n.expires&&!r.public&&r[`max-age`]===void 0&&!(r.private&&e===`private`)&&!(r[`s-maxage`]!==void 0&&e===`shared`)||r[`no-store`]||e===`shared`&&r.private===!0||n.vary?.includes(`*`)||i?.authorization&&(!r.public&&!r[`s-maxage`]&&!r[`must-revalidate`]||typeof i.authorization!=`string`||Array.isArray(r[`no-cache`])&&r[`no-cache`].includes(`authorization`)||Array.isArray(r.private)&&r.private.includes(`authorization`)))}function f(e){let t=parseInt(Array.isArray(e)?e[0]:e);return isNaN(t)?void 0:t*1e3}function p(e,t,n,r,i,a){if(e===`shared`){let e=a[`s-maxage`];if(e!==void 0)return e>0?e*1e3:void 0}let s=a[`max-age`];if(s!==void 0)return s>0?s*1e3:void 0;if(typeof r.expires==`string`){let e=o(r.expires);if(e)return t>=e.getTime()||i&&(i>=e||n!==void 0&&n>e-i)?void 0:e.getTime()-t}if(typeof r[`last-modified`]==`string`){let e=new Date(r[`last-modified`]);if(g(e))return e.getTime()>=t?void 0:(t-e.getTime())*.1}if(a.immutable)return 31536e3}function m(e,t,n){let r=-1/0,i=-1/0,a=-1/0;return t[`stale-while-revalidate`]&&(r=n+t[`stale-while-revalidate`]*1e3),t[`stale-if-error`]&&(i=n+t[`stale-if-error`]*1e3),t.immutable&&r===-1/0&&i===-1/0&&(a=e+31536e6),r===-1/0&&i===-1/0&&a===-1/0?n+(n-e):Math.max(n,r,i,a)}function h(e,t){let n=[`connection`,`proxy-authenticate`,`proxy-authentication-info`,`proxy-authorization`,`proxy-connection`,`te`,`transfer-encoding`,`upgrade`,`age`];e.connection&&(Array.isArray(e.connection)?n.push(...e.connection.map(e=>e.trim())):n.push(...e.connection.split(`,`).map(e=>e.trim()))),Array.isArray(t[`no-cache`])&&n.push(...t[`no-cache`]),Array.isArray(t.private)&&n.push(...t.private);let r;for(let t of n)e[t]&&(r??={...e},delete r[t]);return r??e}function g(e){return e instanceof Date&&Number.isFinite(e.valueOf())}t.exports=u})),Po=n(((e,n)=>{let{Writable:r}=t(`node:stream`),{EventEmitter:i}=t(`node:events`),{assertCacheKey:a,assertCacheValue:o}=jo();var s=class extends i{#e=1024;#t=104857600;#n=5242880;#r=0;#i=0;#a=new Map;#o=!1;constructor(e){if(super(),e){if(typeof e!=`object`)throw TypeError(`MemoryCacheStore options must be an object`);if(e.maxCount!==void 0){if(typeof e.maxCount!=`number`||!Number.isInteger(e.maxCount)||e.maxCount<0)throw TypeError(`MemoryCacheStore options.maxCount must be a non-negative integer`);this.#e=e.maxCount}if(e.maxSize!==void 0){if(typeof e.maxSize!=`number`||!Number.isInteger(e.maxSize)||e.maxSize<0)throw TypeError(`MemoryCacheStore options.maxSize must be a non-negative integer`);this.#t=e.maxSize}if(e.maxEntrySize!==void 0){if(typeof e.maxEntrySize!=`number`||!Number.isInteger(e.maxEntrySize)||e.maxEntrySize<0)throw TypeError(`MemoryCacheStore options.maxEntrySize must be a non-negative integer`);this.#n=e.maxEntrySize}}}get size(){return this.#r}isFull(){return this.#r>=this.#t||this.#i>=this.#e}get(e){a(e);let t=`${e.origin}:${e.path}`,n=Date.now(),r=this.#a.get(t),i=r?c(e,r,n):null;return i==null?void 0:{statusMessage:i.statusMessage,statusCode:i.statusCode,headers:i.headers,body:i.body,vary:i.vary?i.vary:void 0,etag:i.etag,cacheControlDirectives:i.cacheControlDirectives,cachedAt:i.cachedAt,staleAt:i.staleAt,deleteAt:i.deleteAt}}createWriteStream(e,t){a(e),o(t);let n=`${e.origin}:${e.path}`,i=this,s={...e,...t,body:[],size:0};return new r({write(e,t,n){typeof e==`string`&&(e=Buffer.from(e,t)),s.size+=e.byteLength,s.size>=i.#n?this.destroy():s.body.push(e),n(null)},final(t){let r=i.#a.get(n);r||(r=[],i.#a.set(n,r));let a=c(e,r,Date.now());if(a){let e=r.indexOf(a);r.splice(e,1,s),i.#r-=a.size}else r.push(s),i.#i+=1;if(i.#r+=s.size,i.#r>i.#t||i.#i>i.#e){i.#o||=(i.emit(`maxSizeExceeded`,{size:i.#r,maxSize:i.#t,count:i.#i,maxCount:i.#e}),!0);for(let[e,t]of i.#a){for(let e of t.splice(0,t.length/2))i.#r-=e.size,--i.#i;t.length===0&&i.#a.delete(e)}i.#r<i.#t&&i.#i<i.#e&&(i.#o=!1)}t(null)}})}delete(e){if(typeof e!=`object`)throw TypeError(`expected key to be object, got ${typeof e}`);let t=`${e.origin}:${e.path}`;for(let e of this.#a.get(t)??[])this.#r-=e.size,--this.#i;this.#a.delete(t)}};function c(e,t,n){return t.find(t=>t.deleteAt>n&&t.method===e.method&&(t.vary==null||Object.keys(t.vary).every(n=>t.vary[n]===null?e.headers[n]===void 0:t.vary[n]===e.headers[n])))}n.exports=s})),Fo=n(((e,n)=>{let r=t(`node:assert`);n.exports=class{#e=!1;#t;#n;#r;#i;constructor(e,t,n){if(typeof e!=`function`)throw TypeError(`callback must be a function`);this.#t=e,this.#n=t,this.#i=n}onRequestStart(e,t){this.#e=!1,this.#r=t}onRequestUpgrade(e,t,n,r){this.#n.onRequestUpgrade?.(e,t,n,r)}onResponseStart(e,t,n,i){if(r(this.#t!=null),this.#e=t===304||this.#i&&t>=500&&t<=504,this.#t(this.#e,this.#r),this.#t=null,this.#e)return!0;this.#n.onRequestStart?.(e,this.#r),this.#n.onResponseStart?.(e,t,n,i)}onResponseData(e,t){if(!this.#e)return this.#n.onResponseData?.(e,t)}onResponseEnd(e,t){this.#e||this.#n.onResponseEnd?.(e,t)}onResponseError(e,t){if(!this.#e)if(this.#t&&=(this.#t(!1),null),typeof this.#n.onResponseError==`function`)this.#n.onResponseError(e,t);else throw t}}})),Io=n(((e,n)=>{let r=t(`node:assert`),{Readable:i}=t(`node:stream`),a=q(),o=No(),s=Po(),c=Fo(),{assertCacheStore:l,assertCacheMethods:u,makeCacheKey:d,normalizeHeaders:f,parseCacheControlHeader:p}=jo(),{AbortError:m}=K();function h(e,t){if(e!==void 0){if(!Array.isArray(e))throw TypeError(`expected ${t} to be an array or undefined, got ${typeof e}`);for(let n=0;n<e.length;n++){let r=e[n];if(typeof r!=`string`&&!(r instanceof RegExp))throw TypeError(`expected ${t}[${n}] to be a string or RegExp, got ${typeof r}`)}}}let g=()=>{};function _(e,t,{headers:n={}}){return!!(t?.[`no-cache`]||e.cacheControlDirectives?.[`no-cache`]&&!Array.isArray(e.cacheControlDirectives[`no-cache`])||n[`if-modified-since`]||n[`if-none-match`])}function v(e,t){let n=Date.now();return n>e.staleAt?t?.[`max-stale`]?n>e.staleAt+t[`max-stale`]*1e3:!0:t?.[`min-fresh`]?e.staleAt-n<=t[`min-fresh`]*1e3:!1}function y(e){let t=e.cacheControlDirectives?.[`stale-while-revalidate`];return t?Date.now()<=e.staleAt+t*1e3:!1}function b(e,t,n,r,i,a){if(a?.[`only-if-cached`]){let e=!1;try{if(typeof r.onConnect==`function`&&(r.onConnect(()=>{e=!0}),e)||typeof r.onHeaders==`function`&&(r.onHeaders(504,[],g,`Gateway Timeout`),e))return;typeof r.onComplete==`function`&&r.onComplete([])}catch(e){typeof r.onError==`function`&&r.onError(e)}return!0}return e(i,new o(t,n,r))}function x(e,t,n,o,s,c){let l=a.isStream(n.body)?n.body:i.from(n.body??[]);r(!l.destroyed,`stream should not be destroyed`),r(!l.readableDidRead,`stream should not be readableDidRead`);let u={resume(){l.resume()},pause(){l.pause()},get paused(){return l.isPaused()},get aborted(){return l.destroyed},get reason(){return l.errored},abort(e){l.destroy(e??new m)}};if(l.on(`error`,function(t){if(!this.readableEnded)if(typeof e.onResponseError==`function`)e.onResponseError(u,t);else throw t}).on(`close`,function(){this.errored||e.onResponseEnd?.(u,{})}),e.onRequestStart?.(u,s),l.destroyed)return;let d={...n.headers,age:String(o)};c&&(d.warning=`110 - "response is stale"`),e.onResponseStart?.(u,n.statusCode,d,n.statusMessage),t.method===`HEAD`?l.destroy():l.on(`data`,function(t){e.onResponseData?.(u,t)})}function S(e,t,n,r,i,s,l){if(!l)return b(e,t,n,r,i,s);let u=Date.now();if(u>l.deleteAt)return e(i,new o(t,n,r));let d=Math.round((u-l.cachedAt)/1e3);if(s?.[`max-age`]&&d>=s[`max-age`])return e(i,r);let f=v(l,s),p=_(l,s,i);if(f||p){if(a.isStream(i.body)&&a.bodyLength(i.body)!==0)return e(i,new o(t,n,r));if(!p&&y(l))return x(r,i,l,d,null,!0),queueMicrotask(()=>{let r={...i.headers,"if-modified-since":new Date(l.cachedAt).toUTCString()};if(l.etag&&(r[`if-none-match`]=l.etag),l.vary)for(let e in l.vary)l.vary[e]!=null&&(r[e]=l.vary[e]);e({...i,headers:r},new o(t,n,{onRequestStart(){},onRequestUpgrade(){},onResponseStart(){},onResponseData(){},onResponseEnd(){},onResponseError(){}}))}),!0;let m=!1,h=l.cacheControlDirectives[`stale-if-error`]??s?.[`stale-if-error`];h&&(m=u<l.staleAt+h*1e3);let _={...i.headers,"if-modified-since":new Date(l.cachedAt).toUTCString()};if(l.etag&&(_[`if-none-match`]=l.etag),l.vary)for(let e in l.vary)l.vary[e]!=null&&(_[e]=l.vary[e]);return e({...i,headers:_},new c((e,t)=>{e?x(r,i,l,d,t,f):a.isStream(l.body)&&l.body.on(`error`,g).destroy()},new o(t,n,r),m))}a.isStream(i.body)&&i.body.on(`error`,g).destroy(),x(r,i,l,d,null,!1)}n.exports=(e={})=>{let{store:t=new s,methods:n=[`GET`],cacheByDefault:r=void 0,type:i=`shared`,origins:o=void 0}=e;if(typeof e!=`object`||!e)throw TypeError(`expected type of opts to be an Object, got ${e===null?`null`:typeof e}`);if(l(t,`opts.store`),u(n,`opts.methods`),h(o,`opts.origins`),r!==void 0&&typeof r!=`number`)throw TypeError(`expected opts.cacheByDefault to be number or undefined, got ${typeof r}`);if(i!==void 0&&i!==`shared`&&i!==`private`)throw TypeError(`expected opts.type to be shared, private, or undefined, got ${typeof i}`);let c={store:t,methods:n,cacheByDefault:r,type:i},m=a.safeHTTPMethods.filter(e=>n.includes(e)===!1);return e=>(n,r)=>{if(!n.origin||m.includes(n.method))return e(n,r);if(o!==void 0){let t=n.origin.toString().toLowerCase(),i=!1;for(let e=0;e<o.length;e++){let n=o[e];if(typeof n==`string`){if(n.toLowerCase()===t){i=!0;break}}else if(n.test(t)){i=!0;break}}if(!i)return e(n,r)}n={...n,headers:f(n)};let i=n.headers?.[`cache-control`]?p(n.headers[`cache-control`]):void 0;if(i?.[`no-store`])return e(n,r);let a=d(n),s=t.get(a);return s&&typeof s.then==`function`?s.then(t=>S(e,c,a,r,n,i,t)):S(e,c,a,r,n,i,s)}}})),Lo=n(((e,n)=>{let{createInflate:r,createGunzip:i,createBrotliDecompress:a,createZstdDecompress:o}=t(`node:zlib`),{pipeline:s}=t(`node:stream`),c=wo(),{runtimeFeatures:l}=Ma(),u={gzip:i,"x-gzip":i,br:a,deflate:r,compress:r,"x-compress":r,...l.has(`zstd`)?{zstd:o}:{}},d=[204,304],f=!1;var p=class extends c{#e=[];#t;#n;constructor(e,{skipStatusCodes:t=d,skipErrorResponses:n=!0}={}){super(e),this.#t=t,this.#n=n}#r(e,t){return!!(!e||t<200||this.#t.includes(t)||this.#n&&t>=400)}#i(e){let t=e.split(`,`);if(t.length>5)throw Error(`too many content-encodings in response: ${t.length}, maximum allowed is 5`);let n=[];for(let e=t.length-1;e>=0;e--){let r=t[e].trim();if(r){if(!u[r])return n.length=0,n;n.push(u[r]())}}return n}#a(e,t){e.on(`readable`,()=>{let n;for(;(n=e.read())!==null&&super.onResponseData(t,n)!==!1;);}),e.on(`error`,e=>{super.onResponseError(t,e)})}#o(e){let t=this.#e[0];this.#a(t,e),t.on(`end`,()=>{super.onResponseEnd(e,{})})}#s(e){let t=this.#e[this.#e.length-1];this.#a(t,e),s(this.#e,t=>{if(t){super.onResponseError(e,t);return}super.onResponseEnd(e,{})})}#c(){this.#e.length=0}onResponseStart(e,t,n,r){let i=n[`content-encoding`];if(this.#r(i,t))return super.onResponseStart(e,t,n,r);let a=this.#i(i.toLowerCase());if(a.length===0)return this.#c(),super.onResponseStart(e,t,n,r);this.#e=a;let{"content-encoding":o,"content-length":s,...c}=n;return this.#e.length===1?this.#o(e):this.#s(e),super.onResponseStart(e,t,c,r)}onResponseData(e,t){if(this.#e.length>0){this.#e[0].write(t);return}super.onResponseData(e,t)}onResponseEnd(e,t){if(this.#e.length>0){this.#e[0].end(),this.#c();return}super.onResponseEnd(e,t)}onResponseError(e,t){if(this.#e.length>0){for(let e of this.#e)e.destroy(t);this.#c()}super.onResponseError(e,t)}};function m(e={}){return f||=(process.emitWarning(`DecompressInterceptor is experimental and subject to change`,`ExperimentalWarning`),!0),t=>(n,r)=>t(n,new p(r,e))}n.exports=m})),Ro=n(((e,t)=>{let{RequestAbortedError:n}=K(),r=5*1024*1024;t.exports=class{#e;#t=[];#n=r;#r=0;#i={};#a=``;#o=!1;#s=!1;#c=!1;#l=!1;#u=null;#d=null;constructor(e,t,n=r){this.#e=e,this.#d=t,this.#n=n}addWaitingHandler(e){if(this.#l||this.#c)return!1;let t=this.#f(e),n=t.controller;try{if(e.onRequestStart?.(n,null),n.aborted)return t.done=!0,!0;this.#s&&e.onResponseStart?.(n,this.#r,this.#i,this.#a)}catch{return t.done=!0,!0}return n.aborted||this.#t.push(t),!0}onRequestStart(e,t){this.#u=e,this.#e.onRequestStart?.(e,t)}onRequestUpgrade(e,t,n,r){this.#e.onRequestUpgrade?.(e,t,n,r)}onResponseStart(e,t,n,r){this.#s=!0,this.#r=t,this.#i=n,this.#a=r,this.#e.onResponseStart?.(e,t,n,r);for(let e of this.#t){let{handler:i,controller:a}=e;if(e.done||a.aborted){e.done=!0;continue}try{i.onResponseStart?.(a,t,n,r)}catch{}a.aborted&&(e.done=!0)}this.#g()}onResponseData(e,t){if(!(this.#o||this.#l)){this.#c=!0,this.#e.onResponseData?.(e,t);for(let e of this.#t){let{handler:n,controller:r}=e;if(e.done||r.aborted){e.done=!0;continue}if(r.paused){this.#p(e,t);continue}try{n.onResponseData?.(r,t)}catch{}r.aborted&&(e.done=!0,e.bufferedChunks=[],e.bufferedBytes=0)}this.#g()}}onResponseEnd(e,t){if(!(this.#o||this.#l)){this.#l=!0,this.#e.onResponseEnd?.(e,t);for(let e of this.#t){if(e.done||e.controller.aborted){e.done=!0;continue}if(this.#m(e),e.done||e.controller.aborted){e.done=!0;continue}if(e.controller.paused&&e.bufferedChunks.length>0){e.pendingTrailers=t;continue}try{e.handler.onResponseEnd?.(e.controller,t)}catch{}e.done=!0}this.#g(),this.#d?.()}}onResponseError(e,t){if(!this.#l){this.#o=!0,this.#l=!0,this.#e.onResponseError?.(e,t);for(let e of this.#t)this.#h(e,t);this.#t=[],this.#d?.()}}#f(e){let t={handler:e,controller:null,bufferedChunks:[],bufferedBytes:0,pendingTrailers:null,done:!1},n={aborted:!1,paused:!1,reason:null};return t.controller={resume:()=>{if(!n.aborted){if(n.paused=!1,this.#m(t),this.#l&&t.pendingTrailers&&t.bufferedChunks.length===0&&!n.paused&&!n.aborted){try{t.handler.onResponseEnd?.(t.controller,t.pendingTrailers)}catch{}t.pendingTrailers=null,t.done=!0}this.#g()}},pause:()=>{n.aborted||(n.paused=!0)},get paused(){return n.paused},get aborted(){return n.aborted},get reason(){return n.reason},abort:e=>{n.aborted=!0,n.reason=e??null,t.done=!0,t.pendingTrailers=null,t.bufferedChunks=[],t.bufferedBytes=0}},t}#p(e,t){if(e.done||e.controller.aborted){e.done=!0,e.bufferedChunks=[],e.bufferedBytes=0;return}let r=Buffer.from(t);if(e.bufferedChunks.push(r),e.bufferedBytes+=r.length,e.bufferedBytes>this.#n){let t=new n(`Deduplicated waiting handler exceeded maxBufferSize (${this.#n} bytes) while paused`);this.#h(e,t)}}#m(e){let{handler:t,controller:n}=e;for(;!e.done&&!n.aborted&&!n.paused&&e.bufferedChunks.length>0;){let r=e.bufferedChunks.shift();e.bufferedBytes-=r.length;try{t.onResponseData?.(n,r)}catch{}if(n.aborted){e.done=!0,e.pendingTrailers=null,e.bufferedChunks=[],e.bufferedBytes=0;break}}}#h(e,t){if(!e.done){e.done=!0,e.pendingTrailers=null,e.bufferedChunks=[],e.bufferedBytes=0;try{e.controller.abort(t),e.handler.onResponseError?.(e.controller,t)}catch{}}}#g(){this.#t=this.#t.filter(e=>e.done===!1)}}})),zo=n(((e,n)=>{let r=t(`node:diagnostics_channel`),i=q(),a=Ro(),{normalizeHeaders:o,makeCacheKey:s,makeDeduplicationKey:c}=jo(),l=r.channel(`undici:request:pending-requests`);n.exports=(e={})=>{let{methods:t=[`GET`],skipHeaderNames:n=[],excludeHeaderNames:r=[],maxBufferSize:u=5*1024*1024}=e;if(typeof e!=`object`||!e)throw TypeError(`expected type of opts to be an Object, got ${e===null?`null`:typeof e}`);if(!Array.isArray(t))throw TypeError(`expected opts.methods to be an array, got ${typeof t}`);for(let e of t)if(!i.safeHTTPMethods.includes(e))throw TypeError(`expected opts.methods to only contain safe HTTP methods, got ${e}`);if(!Array.isArray(n))throw TypeError(`expected opts.skipHeaderNames to be an array, got ${typeof n}`);if(!Array.isArray(r))throw TypeError(`expected opts.excludeHeaderNames to be an array, got ${typeof r}`);if(!Number.isFinite(u)||u<=0)throw TypeError(`expected opts.maxBufferSize to be a positive finite number, got ${u}`);let d=new Set(n.map(e=>e.toLowerCase())),f=new Set(r.map(e=>e.toLowerCase())),p=new Map;return e=>(n,r)=>{if(!n.origin||t.includes(n.method)===!1)return e(n,r);if(n={...n,headers:o(n)},d.size>0){for(let t of Object.keys(n.headers))if(d.has(t.toLowerCase()))return e(n,r)}let i=c(s(n),f),m=p.get(i);if(m)return m.addWaitingHandler(r)?!0:e(n,r);let h=new a(r,()=>{p.delete(i),l.hasSubscribers&&l.publish({size:p.size,key:i,type:`removed`})},u);return p.set(i,h),l.hasSubscribers&&l.publish({size:p.size,key:i,type:`added`}),e(n,h)}}})),Bo=n(((e,n)=>{let{Writable:r}=t(`node:stream`),{assertCacheKey:i,assertCacheValue:a}=jo(),o,s=2*1e3*1e3*1e3;n.exports=class{#e=s;#t=1/0;#n;#r;#i;#a;#o;#s;#c;#l;constructor(e){if(e){if(typeof e!=`object`)throw TypeError(`SqliteCacheStore options must be an object`);if(e.maxEntrySize!==void 0){if(typeof e.maxEntrySize!=`number`||!Number.isInteger(e.maxEntrySize)||e.maxEntrySize<0)throw TypeError(`SqliteCacheStore options.maxEntrySize must be a non-negative integer`);if(e.maxEntrySize>s)throw TypeError(`SqliteCacheStore options.maxEntrySize must be less than 2gb`);this.#e=e.maxEntrySize}if(e.maxCount!==void 0){if(typeof e.maxCount!=`number`||!Number.isInteger(e.maxCount)||e.maxCount<0)throw TypeError(`SqliteCacheStore options.maxCount must be a non-negative integer`);this.#t=e.maxCount}}o||=t(`node:sqlite`).DatabaseSync,this.#n=new o(e?.location??`:memory:`),this.#n.exec(`
|
|
13
|
+
`,`latin1`),t!==null&&r!==t){if(n[ne])throw new s;process.emitWarning(new s)}e[b].timeout&&e[b].timeoutType===3&&e[b].timeout.refresh&&e[b].timeout.refresh(),n[oe]()}}destroy(e){let{socket:t,client:n,abort:i}=this;t[T]=!1,e&&(r(n[S]<=1,`pipeline should only contain this request`),i(e))}};n.exports=Se})),Ra=n(((e,n)=>{let r=t(`node:assert`),{pipeline:i}=t(`node:stream`),a=q(),{RequestContentLengthMismatchError:o,RequestAbortedError:s,SocketError:c,InformationalError:l,InvalidArgumentError:u}=K(),{kUrl:d,kReset:f,kClient:p,kRunning:m,kPending:h,kQueue:g,kPendingIdx:_,kRunningIdx:v,kError:y,kSocket:b,kStrictContentLength:x,kOnError:S,kMaxConcurrentStreams:C,kPingInterval:w,kHTTP2Session:T,kHTTP2InitialWindowSize:E,kHTTP2ConnectionWindowSize:D,kResume:O,kSize:k,kHTTPContext:A,kClosed:j,kBodyTimeout:M,kEnableConnectProtocol:N,kRemoteSettings:P,kHTTP2Stream:F,kHTTP2SessionState:I}=la(),{channels:ee}=ma(),L=Symbol(`open streams`),te,R;try{R=t(`node:http2`)}catch{R={constants:{}}}let{constants:{HTTP2_HEADER_AUTHORITY:ne,HTTP2_HEADER_METHOD:re,HTTP2_HEADER_PATH:z,HTTP2_HEADER_SCHEME:ie,HTTP2_HEADER_CONTENT_LENGTH:ae,HTTP2_HEADER_EXPECT:oe,HTTP2_HEADER_STATUS:se,HTTP2_HEADER_PROTOCOL:ce,NGHTTP2_REFUSED_STREAM:B,NGHTTP2_CANCEL:V}}=R;function le(e){let t=[];for(let[n,r]of Object.entries(e))if(Array.isArray(r))for(let e of r)t.push(Buffer.from(n),Buffer.from(e));else t.push(Buffer.from(n),Buffer.from(r));return t}function ue(e,t){e[b]=t;let n=e[E],r=e[D],i=R.connect(e[d],{createConnection:()=>t,peerMaxConcurrentStreams:e[C],settings:{enablePush:!1,...n==null?null:{initialWindowSize:n}}});return e[b]=t,i[L]=0,i[p]=e,i[b]=t,i[I]={ping:{interval:e[w]===0?null:setInterval(me,e[w],i).unref()}},i[N]=!1,i[P]=!1,r&&a.addListener(i,`connect`,fe.bind(i,r)),a.addListener(i,`error`,he),a.addListener(i,`frameError`,ge),a.addListener(i,`end`,H),a.addListener(i,`goaway`,_e),a.addListener(i,`close`,ve),a.addListener(i,`remoteSettings`,pe),i.unref(),e[T]=i,t[T]=i,a.addListener(t,`error`,be),a.addListener(t,`end`,xe),a.addListener(t,`close`,ye),t[j]=!1,t.on(`close`,Se),{version:`h2`,defaultPipelining:1/0,write(t){return we(e,t)},resume(){de(e)},destroy(e,n){t[j]?queueMicrotask(n):t.destroy(e).on(`close`,n)},get destroyed(){return t.destroyed},busy(t){if(t!=null)if(e[m]>0){if(t.idempotent===!1||(t.upgrade===`websocket`||t.method===`CONNECT`)&&i[P]===!1||a.bodyLength(t.body)!==0&&(a.isStream(t.body)||a.isAsyncIterable(t.body)||a.isFormDataLike(t.body)))return!0}else return(t.upgrade===`websocket`||t.method===`CONNECT`)&&i[P]===!1;return!1}}}function de(e){let t=e[b];t?.destroyed===!1&&(e[k]===0||e[C]===0?(t.unref(),e[T].unref()):(t.ref(),e[T].ref()))}function fe(e){try{typeof this.setLocalWindowSize==`function`&&this.setLocalWindowSize(e)}catch{}}function pe(e){if(this[p][C]=e.maxConcurrentStreams??this[p][C],this[P]===!0&&this[N]===!0&&e.enableConnectProtocol===!1){let e=new l(`HTTP/2: Server disabled extended CONNECT protocol against RFC-8441`);this[b][y]=e,this[p][S](e);return}this[N]=e.enableConnectProtocol??this[N],this[P]=!0,this[p][O]()}function me(e){let t=e[I];if((e.closed||e.destroyed)&&t.ping.interval!=null){clearInterval(t.ping.interval),t.ping.interval=null;return}e.ping(n.bind(e));function n(e,t){let n=this[p],r=this[p];if(e!=null){let t=new l(`HTTP/2: "PING" errored - type ${e.message}`);r[y]=t,n[S](t)}else n.emit(`ping`,t)}}function he(e){r(e.code!==`ERR_TLS_CERT_ALTNAME_INVALID`),this[b][y]=e,this[p][S](e)}function ge(e,t,n){if(n===0){let n=new l(`HTTP/2: "frameError" received - type ${e}, code ${t}`);this[b][y]=n,this[p][S](n)}}function H(){let e=new c(`other side closed`,a.getSocketInfo(this[b]));this.destroy(e),a.destroy(this[b],e)}function _e(e){let t=this[y]||new c(`HTTP/2: "GOAWAY" frame received with code ${e}`,a.getSocketInfo(this[b])),n=this[p];if(n[b]=null,n[A]=null,this.close(),this[T]=null,a.destroy(this[b],t),n[v]<n[g].length){let e=n[g][n[v]];n[g][n[v]++]=null,a.errorRequest(n,e,t),n[_]=n[v]}r(n[m]===0),n.emit(`disconnect`,n[d],[n],t),n.emit(`connectionError`,n[d],[n],t),n[O]()}function ve(){let{[p]:e,[I]:t}=this,{[b]:n}=e,i=this[b][y]||this[y]||new c(`closed`,a.getSocketInfo(n));if(e[b]=null,e[A]=null,t.ping.interval!=null&&(clearInterval(t.ping.interval),t.ping.interval=null),e.destroyed){r(e[h]===0);let t=e[g].splice(e[v]);for(let n=0;n<t.length;n++){let r=t[n];a.errorRequest(e,r,i)}}}function ye(){let e=this[y]||new c(`closed`,a.getSocketInfo(this)),t=this[T][p];t[b]=null,t[A]=null,this[T]!==null&&this[T].destroy(e),t[_]=t[v],r(t[m]===0),t.emit(`disconnect`,t[d],[t],e),t[O]()}function be(e){r(e.code!==`ERR_TLS_CERT_ALTNAME_INVALID`),this[y]=e,this[p][S](e)}function xe(){a.destroy(this,new c(`other side closed`,a.getSocketInfo(this)))}function Se(){this[j]=!0}function Ce(e){return e!==`GET`&&e!==`HEAD`&&e!==`OPTIONS`&&e!==`TRACE`&&e!==`CONNECT`}function we(e,t){let n=t.bodyTimeout??e[M],i=e[T],{method:c,path:f,host:p,upgrade:m,expectContinue:h,signal:y,protocol:C,headers:w}=t,{body:E}=t;if(m!=null&&m!==`websocket`)return a.errorRequest(e,t,new u(`Custom upgrade "${m}" not supported over HTTP/2`)),!1;let D={};for(let e=0;e<w.length;e+=2){let t=w[e+0],n=w[e+1];if(t===`cookie`){D[t]==null?D[t]=n:D[t]=Array.isArray(D[t])?(D[t].push(n),D[t]):[D[t],n];continue}if(Array.isArray(n))for(let e=0;e<n.length;e++)D[t]?D[t]+=`, ${n[e]}`:D[t]=n[e];else D[t]?D[t]+=`, ${n}`:D[t]=n}let k=null,{hostname:A,port:j}=e[d];D[ne]=p||`${A}${j?`:${j}`:``}`,D[re]=c;let P=n=>{t.aborted||t.completed||(n||=new s,a.errorRequest(e,t,n),k!=null&&(k.removeAllListeners(`data`),k.close(),e[S](n),e[O]()),a.destroy(E,n))};try{t.onConnect(P)}catch(n){a.errorRequest(e,t,n)}if(t.aborted)return!1;if(m||c===`CONNECT`)return i.ref(),m===`websocket`?i[N]===!1?(a.errorRequest(e,t,new l(`HTTP/2: Extended CONNECT protocol not supported by server`)),i.unref(),!1):(D[re]=`CONNECT`,D[ce]=`websocket`,D[z]=f,C===`ws:`||C===`wss:`?D[ie]=C===`ws:`?`http`:`https`:D[ie]=C===`http:`?`http`:`https`,k=i.request(D,{endStream:!1,signal:y}),k[F]=!0,k.once(`response`,(n,r)=>{let{[se]:a,...o}=n;t.onUpgrade(a,le(o),k),++i[L],e[g][e[v]++]=null}),k.on(`error`,()=>{(k.rstCode===B||k.rstCode===V)&&P(new l(`HTTP/2: "stream error" received - code ${k.rstCode}`))}),k.once(`close`,()=>{--i[L],i[L]===0&&i.unref()}),k.setTimeout(n),!0):(k=i.request(D,{endStream:!1,signal:y}),k[F]=!0,k.on(`response`,n=>{let{[se]:r,...a}=n;t.onUpgrade(r,le(a),k),++i[L],e[g][e[v]++]=null}),k.once(`close`,()=>{--i[L],i[L]===0&&i.unref()}),k.setTimeout(n),!0);D[z]=f,D[ie]=C===`http:`?`http`:`https`;let I=c===`PUT`||c===`POST`||c===`PATCH`;E&&typeof E.read==`function`&&E.read(0);let R=a.bodyLength(E);if(a.isFormDataLike(E)){te??=Ia().extractBody;let[e,t]=te(E);D[`content-type`]=t,E=e.stream,R=e.length}if(R??=t.contentLength,I||(R=null),Ce(c)&&R>0&&t.contentLength!=null&&t.contentLength!==R){if(e[x])return a.errorRequest(e,t,new o),!1;process.emitWarning(new o)}if(R!=null&&(r(E||R===0,`no body must not have content length`),D[ae]=`${R}`),i.ref(),ee.sendHeaders.hasSubscribers){let e=``;for(let t in D)e+=`${t}: ${D[t]}\r\n`;ee.sendHeaders.publish({request:t,headers:e,socket:i[b]})}let ue=c===`GET`||c===`HEAD`||E===null;h?(D[oe]=`100-continue`,k=i.request(D,{endStream:ue,signal:y}),k[F]=!0,k.once(`continue`,fe)):(k=i.request(D,{endStream:ue,signal:y}),k[F]=!0,fe()),++i[L],k.setTimeout(n);let de=!1;return k.once(`response`,e=>{let{[se]:n,...r}=e;if(t.onResponseStarted(),de=!0,t.aborted){k.removeAllListeners(`data`);return}t.onHeaders(Number(n),le(r),k.resume.bind(k),``)===!1&&k.pause(),k.on(`data`,e=>{t.aborted||t.completed||t.onData(e)===!1&&k.pause()})}),k.once(`end`,()=>{k.removeAllListeners(`data`),de?(!t.aborted&&!t.completed&&t.onComplete({}),e[g][e[v]++]=null,e[O]()):(P(new l(`HTTP/2: stream half-closed (remote)`)),e[g][e[v]++]=null,e[_]=e[v],e[O]())}),k.once(`close`,()=>{k.removeAllListeners(`data`),--i[L],i[L]===0&&i.unref()}),k.once(`error`,function(e){k.removeAllListeners(`data`),P(e)}),k.once(`frameError`,(e,t)=>{k.removeAllListeners(`data`),P(new l(`HTTP/2: "frameError" received - type ${e}, code ${t}`))}),k.on(`aborted`,()=>{k.removeAllListeners(`data`)}),k.on(`timeout`,()=>{let e=new l(`HTTP/2: "stream timeout after ${n}"`);k.removeAllListeners(`data`),--i[L],i[L]===0&&i.unref(),P(e)}),k.once(`trailers`,e=>{t.aborted||t.completed||(k.removeAllListeners(`data`),t.onComplete(e))}),!0;function fe(){!E||R===0?U(P,k,null,e,t,e[b],R,I):a.isBuffer(E)?U(P,k,E,e,t,e[b],R,I):a.isBlobLike(E)?typeof E.stream==`function`?De(P,k,E.stream(),e,t,e[b],R,I):Ee(P,k,E,e,t,e[b],R,I):a.isStream(E)?Te(P,e[b],I,k,E,e,t,R):a.isIterable(E)?De(P,k,E,e,t,e[b],R,I):r(!1)}}function U(e,t,n,i,o,s,c,l){try{n!=null&&a.isBuffer(n)&&(r(c===n.byteLength,`buffer body must have content length`),t.cork(),t.write(n),t.uncork(),t.end(),o.onBodySent(n)),l||(s[f]=!0),o.onRequestSent(),i[O]()}catch(t){e(t)}}function Te(e,t,n,o,s,c,l,u){r(u!==0||c[m]===0,`stream body cannot be pipelined`);let d=i(s,o,r=>{r?(a.destroy(d,r),e(r)):(a.removeAllListeners(d),l.onRequestSent(),n||(t[f]=!0),c[O]())});a.addListener(d,`data`,p);function p(e){l.onBodySent(e)}}async function Ee(e,t,n,i,a,s,c,l){r(c===n.size,`blob body must have content length`);try{if(c!=null&&c!==n.size)throw new o;let e=Buffer.from(await n.arrayBuffer());t.cork(),t.write(e),t.uncork(),t.end(),a.onBodySent(e),a.onRequestSent(),l||(s[f]=!0),i[O]()}catch(t){e(t)}}async function De(e,t,n,i,a,o,s,c){r(s!==0||i[m]===0,`iterator body cannot be pipelined`);let l=null;function u(){if(l){let e=l;l=null,e()}}let d=()=>new Promise((e,t)=>{r(l===null),o[y]?t(o[y]):l=e});t.on(`close`,u).on(`drain`,u);try{for await(let e of n){if(o[y])throw o[y];let n=t.write(e);a.onBodySent(e),n||await d()}t.end(),a.onRequestSent(),c||(o[f]=!0),i[O]()}catch(t){e(t)}finally{t.off(`close`,u).off(`drain`,u)}}n.exports=ue})),za=n(((e,n)=>{let r=t(`node:assert`),i=t(`node:net`),a=t(`node:http`),o=q(),{ClientStats:s}=pa(),{channels:c}=ma(),l=ha(),u=ya(),{InvalidArgumentError:d,InformationalError:f,ClientDestroyedError:p}=K(),m=ba(),{kUrl:h,kServerName:g,kClient:_,kBusy:v,kConnect:y,kResuming:b,kRunning:x,kPending:S,kSize:C,kQueue:w,kConnected:T,kConnecting:E,kNeedDrain:D,kKeepAliveDefaultTimeout:O,kHostHeader:k,kPendingIdx:A,kRunningIdx:j,kError:M,kPipelining:N,kKeepAliveTimeoutValue:P,kMaxHeadersSize:F,kKeepAliveMaxTimeout:I,kKeepAliveTimeoutThreshold:ee,kHeadersTimeout:L,kBodyTimeout:te,kStrictContentLength:R,kConnector:ne,kMaxRequests:re,kCounter:z,kClose:ie,kDestroy:ae,kDispatch:oe,kLocalAddress:se,kMaxResponseSize:ce,kOnError:B,kHTTPContext:V,kMaxConcurrentStreams:le,kHTTP2InitialWindowSize:ue,kHTTP2ConnectionWindowSize:de,kResume:fe,kPingInterval:pe}=la(),me=La(),he=Ra(),ge=Symbol(`kClosedResolve`),H=a&&a.maxHeaderSize&&Number.isInteger(a.maxHeaderSize)&&a.maxHeaderSize>0?()=>a.maxHeaderSize:()=>{throw new d(`http module not available or http.maxHeaderSize invalid`)},_e=()=>{};function ve(e){return e[N]??e[V]?.defaultPipelining??1}var ye=class extends u{constructor(e,{maxHeaderSize:t,headersTimeout:n,socketTimeout:r,requestTimeout:a,connectTimeout:s,bodyTimeout:c,idleTimeout:l,keepAlive:u,keepAliveTimeout:f,maxKeepAliveTimeout:p,keepAliveMaxTimeout:_,keepAliveTimeoutThreshold:v,socketPath:y,pipelining:x,tls:S,strictContentLength:C,maxCachedSessions:T,connect:E,maxRequestsPerClient:M,localAddress:z,maxResponseSize:ie,autoSelectFamily:ae,autoSelectFamilyAttemptTimeout:oe,maxConcurrentStreams:me,allowH2:he,useH2c:_e,initialWindowSize:ve,connectionWindowSize:ye,pingInterval:xe,webSocket:Se}={}){if(u!==void 0)throw new d(`unsupported keepAlive, use pipelining=0 instead`);if(r!==void 0)throw new d(`unsupported socketTimeout, use headersTimeout & bodyTimeout instead`);if(a!==void 0)throw new d(`unsupported requestTimeout, use headersTimeout & bodyTimeout instead`);if(l!==void 0)throw new d(`unsupported idleTimeout, use keepAliveTimeout instead`);if(p!==void 0)throw new d(`unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead`);if(t!=null){if(!Number.isInteger(t)||t<1)throw new d(`invalid maxHeaderSize`)}else t=H();if(y!=null&&typeof y!=`string`)throw new d(`invalid socketPath`);if(s!=null&&(!Number.isFinite(s)||s<0))throw new d(`invalid connectTimeout`);if(f!=null&&(!Number.isFinite(f)||f<=0))throw new d(`invalid keepAliveTimeout`);if(_!=null&&(!Number.isFinite(_)||_<=0))throw new d(`invalid keepAliveMaxTimeout`);if(v!=null&&!Number.isFinite(v))throw new d(`invalid keepAliveTimeoutThreshold`);if(n!=null&&(!Number.isInteger(n)||n<0))throw new d(`headersTimeout must be a positive integer or zero`);if(c!=null&&(!Number.isInteger(c)||c<0))throw new d(`bodyTimeout must be a positive integer or zero`);if(E!=null&&typeof E!=`function`&&typeof E!=`object`)throw new d(`connect must be a function or an object`);if(M!=null&&(!Number.isInteger(M)||M<0))throw new d(`maxRequestsPerClient must be a positive number`);if(z!=null&&(typeof z!=`string`||i.isIP(z)===0))throw new d(`localAddress must be valid string IP address`);if(ie!=null&&(!Number.isInteger(ie)||ie<-1))throw new d(`maxResponseSize must be a positive number`);if(oe!=null&&(!Number.isInteger(oe)||oe<-1))throw new d(`autoSelectFamilyAttemptTimeout must be a positive number`);if(he!=null&&typeof he!=`boolean`)throw new d(`allowH2 must be a valid boolean value`);if(me!=null&&(typeof me!=`number`||me<1))throw new d(`maxConcurrentStreams must be a positive integer, greater than 0`);if(_e!=null&&typeof _e!=`boolean`)throw new d(`useH2c must be a valid boolean value`);if(ve!=null&&(!Number.isInteger(ve)||ve<1))throw new d(`initialWindowSize must be a positive integer, greater than 0`);if(ye!=null&&(!Number.isInteger(ye)||ye<1))throw new d(`connectionWindowSize must be a positive integer, greater than 0`);if(xe!=null&&(typeof xe!=`number`||!Number.isInteger(xe)||xe<0))throw new d(`pingInterval must be a positive integer, greater or equal to 0`);if(super({webSocket:Se}),typeof E!=`function`)E=m({...S,maxCachedSessions:T,allowH2:he,useH2c:_e,socketPath:y,timeout:s,...typeof ae==`boolean`?{autoSelectFamily:ae,autoSelectFamilyAttemptTimeout:oe}:void 0,...E});else{let e=E;E=(t,n)=>e({...t,...y==null?null:{socketPath:y},...he==null?null:{allowH2:he}},n)}this[h]=o.parseOrigin(e),this[ne]=E,this[N]=x??1,this[F]=t,this[O]=f??4e3,this[I]=_??6e5,this[ee]=v??2e3,this[P]=this[O],this[g]=null,this[se]=z??null,this[b]=0,this[D]=0,this[k]=`host: ${this[h].hostname}${this[h].port?`:${this[h].port}`:``}\r\n`,this[te]=c??3e5,this[L]=n??3e5,this[R]=C??!0,this[re]=M,this[ge]=null,this[ce]=ie>-1?ie:-1,this[V]=null,this[le]=me??100,this[ue]=ve??262144,this[de]=ye??524288,this[pe]=xe??6e4,this[w]=[],this[j]=0,this[A]=0,this[fe]=e=>we(this,e),this[B]=e=>be(this,e)}get pipelining(){return this[N]}set pipelining(e){this[N]=e,this[fe](!0)}get stats(){return new s(this)}get[S](){return this[w].length-this[A]}get[x](){return this[A]-this[j]}get[C](){return this[w].length-this[j]}get[T](){return!!this[V]&&!this[E]&&!this[V].destroyed}get[v](){return!!(this[V]?.busy(null)||this[C]>=(ve(this)||1)||this[S]>0)}[y](e){xe(this),this.once(`connect`,e)}[oe](e,t){let n=new l(this[h].origin,e,t);return this[w].push(n),this[b]||(o.bodyLength(n.body)==null&&o.isIterable(n.body)?(this[b]=1,queueMicrotask(()=>we(this))):this[fe](!0)),this[b]&&this[D]!==2&&this[v]&&(this[D]=2),this[D]<2}[ie](){return new Promise(e=>{this[C]?this[ge]=e:e(null)})}[ae](e){return new Promise(t=>{let n=this[w].splice(this[A]);for(let t=0;t<n.length;t++){let r=n[t];o.errorRequest(this,r,e)}let r=()=>{this[ge]&&(this[ge](),this[ge]=null),t(null)};this[V]?(this[V].destroy(e,r),this[V]=null):queueMicrotask(r),this[fe]()})}};function be(e,t){if(e[x]===0&&t.code!==`UND_ERR_INFO`&&t.code!==`UND_ERR_SOCKET`){r(e[A]===e[j]);let n=e[w].splice(e[j]);for(let r=0;r<n.length;r++){let i=n[r];o.errorRequest(e,i,t)}r(e[C]===0)}}function xe(e){r(!e[E]),r(!e[V]);let{host:t,hostname:n,protocol:a,port:s}=e[h];if(n[0]===`[`){let e=n.indexOf(`]`);r(e!==-1);let t=n.substring(1,e);r(i.isIPv6(t)),n=t}e[E]=!0,c.beforeConnect.hasSubscribers&&c.beforeConnect.publish({connectParams:{host:t,hostname:n,protocol:a,port:s,version:e[V]?.version,servername:e[g],localAddress:e[se]},connector:e[ne]});try{e[ne]({host:t,hostname:n,protocol:a,port:s,servername:e[g],localAddress:e[se]},(i,l)=>{if(i){Se(e,i,{host:t,hostname:n,protocol:a,port:s}),e[fe]();return}if(e.destroyed){o.destroy(l.on(`error`,_e),new p),e[fe]();return}r(l);try{e[V]=l.alpnProtocol===`h2`?he(e,l):me(e,l)}catch(r){l.destroy().on(`error`,_e),Se(e,r,{host:t,hostname:n,protocol:a,port:s}),e[fe]();return}e[E]=!1,l[z]=0,l[re]=e[re],l[_]=e,l[M]=null,c.connected.hasSubscribers&&c.connected.publish({connectParams:{host:t,hostname:n,protocol:a,port:s,version:e[V]?.version,servername:e[g],localAddress:e[se]},connector:e[ne],socket:l}),e.emit(`connect`,e[h],[e]),e[fe]()})}catch(r){Se(e,r,{host:t,hostname:n,protocol:a,port:s}),e[fe]()}}function Se(e,t,{host:n,hostname:i,protocol:a,port:s}){if(!e.destroyed){if(e[E]=!1,c.connectError.hasSubscribers&&c.connectError.publish({connectParams:{host:n,hostname:i,protocol:a,port:s,version:e[V]?.version,servername:e[g],localAddress:e[se]},connector:e[ne],error:t}),t.code===`ERR_TLS_CERT_ALTNAME_INVALID`)for(r(e[x]===0);e[S]>0&&e[w][e[A]].servername===e[g];){let n=e[w][e[A]++];o.errorRequest(e,n,t)}else be(e,t);e.emit(`connectionError`,e[h],[e],t)}}function Ce(e){e[D]=0,e.emit(`drain`,e[h],[e])}function we(e,t){e[b]!==2&&(e[b]=2,U(e,t),e[b]=0,e[j]>256&&(e[w].splice(0,e[j]),e[A]-=e[j],e[j]=0))}function U(e,t){for(;;){if(e.destroyed){r(e[S]===0);return}if(e[ge]&&!e[C]){e[ge](),e[ge]=null;return}if(e[V]&&e[V].resume(),e[v])e[D]=2;else if(e[D]===2){t?(e[D]=1,queueMicrotask(()=>Ce(e))):Ce(e);continue}if(e[S]===0||e[x]>=(ve(e)||1))return;let n=e[w][e[A]];if(n===null)return;if(e[h].protocol===`https:`&&e[g]!==n.servername){if(e[x]>0)return;e[g]=n.servername,e[V]?.destroy(new f(`servername changed`),()=>{e[V]=null,we(e)})}if(e[E])return;if(!e[V]){xe(e);return}if(e[V].destroyed||e[V].busy(n))return;!n.aborted&&e[V].write(n)?e[A]++:e[w].splice(e[A],1)}}n.exports=ye})),Ba=n(((e,t)=>{let n=2048,r=n-1;var i=class{bottom=0;top=0;list=Array(n).fill(void 0);next=null;isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&r)===this.bottom}push(e){this.list[this.top]=e,this.top=this.top+1&r}shift(){let e=this.list[this.bottom];return e===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&r,e)}};t.exports=class{constructor(){this.head=this.tail=new i}isEmpty(){return this.head.isEmpty()}push(e){this.head.isFull()&&(this.head=this.head.next=new i),this.head.push(e)}shift(){let e=this.tail,t=e.shift();return e.isEmpty()&&e.next!==null&&(this.tail=e.next,e.next=null),t}}})),Va=n(((e,t)=>{let{PoolStats:n}=pa(),r=ya(),i=Ba(),{kConnected:a,kSize:o,kRunning:s,kPending:c,kQueued:l,kBusy:u,kFree:d,kUrl:f,kClose:p,kDestroy:m,kDispatch:h}=la(),g=Symbol(`clients`),_=Symbol(`needDrain`),v=Symbol(`queue`),y=Symbol(`closed resolve`),b=Symbol(`onDrain`),x=Symbol(`onConnect`),S=Symbol(`onDisconnect`),C=Symbol(`onConnectionError`),w=Symbol(`get dispatcher`),T=Symbol(`add client`),E=Symbol(`remove client`);t.exports={PoolBase:class extends r{[v]=new i;[l]=0;[g]=[];[_]=!1;[b](e,t,n){let r=this[v],i=!1;for(;!i;){let t=r.shift();if(!t)break;this[l]--,i=!e.dispatch(t.opts,t.handler)}if(e[_]=i,!i&&this[_]&&(this[_]=!1,this.emit(`drain`,t,[this,...n])),this[y]&&r.isEmpty()){let e=[];for(let t=0;t<this[g].length;t++){let n=this[g][t];n.destroyed||e.push(n.close())}return Promise.all(e).then(this[y])}}[x]=(e,t)=>{this.emit(`connect`,e,[this,...t])};[S]=(e,t,n)=>{this.emit(`disconnect`,e,[this,...t],n)};[C]=(e,t,n)=>{this.emit(`connectionError`,e,[this,...t],n)};get[u](){return this[_]}get[a](){let e=0;for(let{[a]:t}of this[g])e+=t;return e}get[d](){let e=0;for(let{[a]:t,[_]:n}of this[g])e+=t&&!n;return e}get[c](){let e=this[l];for(let{[c]:t}of this[g])e+=t;return e}get[s](){let e=0;for(let{[s]:t}of this[g])e+=t;return e}get[o](){let e=this[l];for(let{[o]:t}of this[g])e+=t;return e}get stats(){return new n(this)}[p](){if(this[v].isEmpty()){let e=[];for(let t=0;t<this[g].length;t++){let n=this[g][t];n.destroyed||e.push(n.close())}return Promise.all(e)}else return new Promise(e=>{this[y]=e})}[m](e){for(;;){let t=this[v].shift();if(!t)break;t.handler.onError(e)}let t=Array(this[g].length);for(let n=0;n<this[g].length;n++)t[n]=this[g][n].destroy(e);return Promise.all(t)}[h](e,t){let n=this[w]();return n?n.dispatch(e,t)||(n[_]=!0,this[_]=!this[w]()):(this[_]=!0,this[v].push({opts:e,handler:t}),this[l]++),!this[_]}[T](e){return e.on(`drain`,this[b].bind(this,e)).on(`connect`,this[x]).on(`disconnect`,this[S]).on(`connectionError`,this[C]),this[g].push(e),this[_]&&queueMicrotask(()=>{this[_]&&this[b](e,e[f],[e,this])}),this}[E](e){e.close(()=>{let t=this[g].indexOf(e);t!==-1&&this[g].splice(t,1)}),this[_]=this[g].some(e=>!e[_]&&e.closed!==!0&&e.destroyed!==!0)}},kClients:g,kNeedDrain:_,kAddClient:T,kRemoveClient:E,kGetDispatcher:w}})),Ha=n(((e,t)=>{let{PoolBase:n,kClients:r,kNeedDrain:i,kAddClient:a,kGetDispatcher:o,kRemoveClient:s}=Va(),c=za(),{InvalidArgumentError:l}=K(),u=q(),{kUrl:d}=la(),f=ba(),p=Symbol(`options`),m=Symbol(`connections`),h=Symbol(`factory`);function g(e,t){return new c(e,t)}t.exports=class extends n{constructor(e,{connections:t,factory:n=g,connect:i,connectTimeout:a,tls:o,maxCachedSessions:s,socketPath:c,autoSelectFamily:_,autoSelectFamilyAttemptTimeout:v,allowH2:y,clientTtl:b,...x}={}){if(t!=null&&(!Number.isFinite(t)||t<0))throw new l(`invalid connections`);if(typeof n!=`function`)throw new l(`factory must be a function.`);if(i!=null&&typeof i!=`function`&&typeof i!=`object`)throw new l(`connect must be a function or an object`);typeof i!=`function`&&(i=f({...o,maxCachedSessions:s,allowH2:y,socketPath:c,timeout:a,...typeof _==`boolean`?{autoSelectFamily:_,autoSelectFamilyAttemptTimeout:v}:void 0,...i})),super(x),this[m]=t||null,this[d]=u.parseOrigin(e),this[p]={...u.deepClone(x),connect:i,allowH2:y,clientTtl:b,socketPath:c},this[p].interceptors=x.interceptors?{...x.interceptors}:void 0,this[h]=n,this.on(`connect`,(e,t)=>{if(b!=null&&b>0)for(let e of t)Object.assign(e,{ttl:Date.now()})}),this.on(`connectionError`,(e,t,n)=>{for(let e of t){let t=this[r].indexOf(e);t!==-1&&this[r].splice(t,1)}})}[o](){let e=this[p].clientTtl;for(let t of this[r])if(e!=null&&e>0&&t.ttl&&Date.now()-t.ttl>e)this[s](t);else if(!t[i])return t;if(!this[m]||this[r].length<this[m]){let e=this[h](this[d],this[p]);return this[a](e),e}}}})),Ua=n(((e,t)=>{let{BalancedPoolMissingUpstreamError:n,InvalidArgumentError:r}=K(),{PoolBase:i,kClients:a,kNeedDrain:o,kAddClient:s,kRemoveClient:c,kGetDispatcher:l}=Va(),u=Ha(),{kUrl:d}=la(),f=q(),p=Symbol(`factory`),m=Symbol(`options`),h=Symbol(`kGreatestCommonDivisor`),g=Symbol(`kCurrentWeight`),_=Symbol(`kIndex`),v=Symbol(`kWeight`),y=Symbol(`kMaxWeightPerServer`),b=Symbol(`kErrorPenalty`);function x(e,t){if(e===0)return t;for(;t!==0;){let n=t;t=e%t,e=n}return e}function S(e,t){return new u(e,t)}t.exports=class extends i{constructor(e=[],{factory:t=S,...n}={}){if(typeof t!=`function`)throw new r(`factory must be a function.`);super(n),this[m]={...f.deepClone(n)},this[m].interceptors=n.interceptors?{...n.interceptors}:void 0,this[_]=-1,this[g]=0,this[y]=this[m].maxWeightPerServer||100,this[b]=this[m].errorPenalty||15,Array.isArray(e)||(e=[e]),this[p]=t;for(let t of e)this.addUpstream(t);this._updateBalancedPoolStats()}addUpstream(e){let t=f.parseOrigin(e).origin;if(this[a].find(e=>e[d].origin===t&&e.closed!==!0&&e.destroyed!==!0))return this;let n=this[p](t,this[m]);this[s](n),n.on(`connect`,()=>{n[v]=Math.min(this[y],n[v]+this[b])}),n.on(`connectionError`,()=>{n[v]=Math.max(1,n[v]-this[b]),this._updateBalancedPoolStats()}),n.on(`disconnect`,(...e)=>{let t=e[2];t&&t.code===`UND_ERR_SOCKET`&&(n[v]=Math.max(1,n[v]-this[b]),this._updateBalancedPoolStats())});for(let e of this[a])e[v]=this[y];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let e=0;for(let t=0;t<this[a].length;t++)e=x(this[a][t][v],e);this[h]=e}removeUpstream(e){let t=f.parseOrigin(e).origin,n=this[a].find(e=>e[d].origin===t&&e.closed!==!0&&e.destroyed!==!0);return n&&this[c](n),this}getUpstream(e){let t=f.parseOrigin(e).origin;return this[a].find(e=>e[d].origin===t&&e.closed!==!0&&e.destroyed!==!0)}get upstreams(){return this[a].filter(e=>e.closed!==!0&&e.destroyed!==!0).map(e=>e[d].origin)}[l](){if(this[a].length===0)throw new n;if(!this[a].find(e=>!e[o]&&e.closed!==!0&&e.destroyed!==!0)||this[a].map(e=>e[o]).reduce((e,t)=>e&&t,!0))return;let e=0,t=this[a].findIndex(e=>!e[o]);for(;e++<this[a].length;){this[_]=(this[_]+1)%this[a].length;let e=this[a][this[_]];if(e[v]>this[a][t][v]&&!e[o]&&(t=this[_]),this[_]===0&&(this[g]=this[g]-this[h],this[g]<=0&&(this[g]=this[y])),e[v]>=this[g]&&!e[o])return e}return this[g]=this[a][t][v],this[_]=t,this[a][t]}}})),Wa=n(((e,t)=>{let{PoolBase:n,kClients:r,kNeedDrain:i,kAddClient:a,kGetDispatcher:o,kRemoveClient:s}=Va(),c=za(),{InvalidArgumentError:l}=K(),u=q(),{kUrl:d}=la(),f=ba(),p=Symbol(`options`),m=Symbol(`connections`),h=Symbol(`factory`),g=Symbol(`index`);function _(e,t){return new c(e,t)}t.exports=class extends n{constructor(e,{connections:t,factory:n=_,connect:i,connectTimeout:a,tls:o,maxCachedSessions:s,socketPath:c,autoSelectFamily:v,autoSelectFamilyAttemptTimeout:y,allowH2:b,clientTtl:x,...S}={}){if(t!=null&&(!Number.isFinite(t)||t<0))throw new l(`invalid connections`);if(typeof n!=`function`)throw new l(`factory must be a function.`);if(i!=null&&typeof i!=`function`&&typeof i!=`object`)throw new l(`connect must be a function or an object`);typeof i!=`function`&&(i=f({...o,maxCachedSessions:s,allowH2:b,socketPath:c,timeout:a,...typeof v==`boolean`?{autoSelectFamily:v,autoSelectFamilyAttemptTimeout:y}:void 0,...i})),super(),this[m]=t||null,this[d]=u.parseOrigin(e),this[p]={...u.deepClone(S),connect:i,allowH2:b,clientTtl:x,socketPath:c},this[p].interceptors=S.interceptors?{...S.interceptors}:void 0,this[h]=n,this[g]=-1,this.on(`connect`,(e,t)=>{if(x!=null&&x>0)for(let e of t)Object.assign(e,{ttl:Date.now()})}),this.on(`connectionError`,(e,t,n)=>{for(let e of t){let t=this[r].indexOf(e);t!==-1&&this[r].splice(t,1)}})}[o](){let e=this[p].clientTtl,t=this[r].length;if(t===0){let e=this[h](this[d],this[p]);return this[a](e),e}let n=0;for(;n<t;){this[g]=(this[g]+1)%t;let a=this[r][this[g]];if(e!=null&&e>0&&a.ttl&&Date.now()-a.ttl>e){this[s](a),n++;continue}if(!a[i])return a;n++}if(!this[m]||t<this[m]){let e=this[h](this[d],this[p]);return this[a](e),e}}}})),Ga=n(((e,t)=>{let{InvalidArgumentError:n,MaxOriginsReachedError:r}=K(),{kClients:i,kRunning:a,kClose:o,kDestroy:s,kDispatch:c,kUrl:l}=la(),u=ya(),d=Ha(),f=za(),p=q(),m=Symbol(`onConnect`),h=Symbol(`onDisconnect`),g=Symbol(`onConnectionError`),_=Symbol(`onDrain`),v=Symbol(`factory`),y=Symbol(`options`),b=Symbol(`origins`);function x(e,t){return t&&t.connections===1?new f(e,t):new d(e,t)}t.exports=class extends u{constructor({factory:e=x,maxOrigins:t=1/0,connect:r,...a}={}){if(typeof e!=`function`)throw new n(`factory must be a function.`);if(r!=null&&typeof r!=`function`&&typeof r!=`object`)throw new n(`connect must be a function or an object`);if(typeof t!=`number`||Number.isNaN(t)||t<=0)throw new n(`maxOrigins must be a number greater than 0`);super(a),r&&typeof r!=`function`&&(r={...r}),this[y]={...p.deepClone(a),maxOrigins:t,connect:r},this[v]=e,this[i]=new Map,this[b]=new Set,this[_]=(e,t)=>{this.emit(`drain`,e,[this,...t])},this[m]=(e,t)=>{this.emit(`connect`,e,[this,...t])},this[h]=(e,t,n)=>{this.emit(`disconnect`,e,[this,...t],n)},this[g]=(e,t,n)=>{this.emit(`connectionError`,e,[this,...t],n)}}get[a](){let e=0;for(let{dispatcher:t}of this[i].values())e+=t[a];return e}[c](e,t){let a;if(e.origin&&(typeof e.origin==`string`||e.origin instanceof URL))a=String(e.origin);else throw new n(`opts.origin must be a non-empty string or URL.`);if(this[b].size>=this[y].maxOrigins&&!this[b].has(a))throw new r;let o=this[i].get(a),s=o&&o.dispatcher;if(!s){let t=e=>{let t=this[i].get(a);t&&(e&&--t.count,t.count<=0&&(this[i].delete(a),t.dispatcher.destroyed||t.dispatcher.close()),this[b].delete(a))};s=this[v](e.origin,this[y]).on(`drain`,this[_]).on(`connect`,(e,t)=>{let n=this[i].get(a);n&&(n.count+=1),this[m](e,t)}).on(`disconnect`,(e,n,r)=>{t(!0),this[h](e,n,r)}).on(`connectionError`,(e,n,r)=>{t(!1),this[g](e,n,r)}),this[i].set(a,{count:0,dispatcher:s}),this[b].add(a)}return s.dispatch(e,t)}[o](){let e=[];for(let{dispatcher:t}of this[i].values())e.push(t.close());return this[i].clear(),Promise.all(e)}[s](e){let t=[];for(let{dispatcher:n}of this[i].values())t.push(n.destroy(e));return this[i].clear(),Promise.all(t)}get stats(){let e={};for(let{dispatcher:t}of this[i].values())t.stats&&(e[t[l].origin]=t.stats);return e}}})),Ka=n(((e,n)=>{let{Buffer:r}=t(`node:buffer`),i=t(`node:net`),{InvalidArgumentError:a}=K();function o(e){if(i.isIPv4(e)){let t=e.split(`.`).map(Number);return{type:1,buffer:r.from(t)}}if(i.isIPv6(e))return{type:4,buffer:s(e)};let t=r.from(e,`utf8`);if(t.length>255)throw new a(`Domain name too long (max 255 bytes)`);return{type:3,buffer:r.concat([r.from([t.length]),t])}}function s(e){let t=r.alloc(16),n=e;if(e.includes(`.`)){let t=e.lastIndexOf(`:`),r=e.slice(t+1);if(i.isIPv4(r)){let i=r.split(`.`).map(Number),a=(i[0]<<8|i[1]).toString(16),o=(i[2]<<8|i[3]).toString(16);n=`${e.slice(0,t)}:${a}:${o}`}}let a=n.indexOf(`::`);if(a!==-1){let e=n.slice(0,a),r=n.slice(a+2),i=e===``?[]:e.split(`:`),o=r===``?[]:r.split(`:`),s=0;for(let e of i)t.writeUInt16BE(parseInt(e,16),s),s+=2;s=16-o.length*2;for(let e of o)t.writeUInt16BE(parseInt(e,16),s),s+=2}else{let e=n.split(`:`);for(let n=0;n<e.length;n++)t.writeUInt16BE(parseInt(e[n],16),n*2)}return t}function c(e,t,n){let i=r.allocUnsafe(2);return i.writeUInt16BE(n,0),r.concat([r.from([e]),t,i])}function l(e,t=0){if(e.length<t+1)throw new a(`Buffer too small to contain address type`);let n=e[t],r,i=t+1;switch(n){case 1:if(e.length<i+6)throw new a(`Buffer too small for IPv4 address`);r=Array.from(e.subarray(i,i+4)).join(`.`),i+=4;break;case 3:{if(e.length<i+1)throw new a(`Buffer too small for domain length`);let t=e[i];if(i+=1,e.length<i+t+2)throw new a(`Buffer too small for domain address`);r=e.subarray(i,i+t).toString(`utf8`),i+=t;break}case 4:{if(e.length<i+18)throw new a(`Buffer too small for IPv6 address`);let t=[];for(let n=0;n<8;n++){let r=e.readUInt16BE(i+n*2);t.push(r.toString(16))}r=t.join(`:`),i+=16;break}default:throw new a(`Invalid address type: ${n}`)}if(e.length<i+2)throw new a(`Buffer too small for port`);let o=e.readUInt16BE(i);return i+=2,{address:r,port:o,bytesRead:i-t}}function u(e){let t={1:`General SOCKS server failure`,2:`Connection not allowed by ruleset`,3:`Network unreachable`,4:`Host unreachable`,5:`Connection refused`,6:`TTL expired`,7:`Command not supported`,8:`Address type not supported`}[e]||`Unknown SOCKS5 error code: ${e}`,n=Error(t);return n.code=`SOCKS5_${e}`,n}n.exports={parseAddress:o,parseIPv6:s,buildAddressBuffer:c,parseResponseAddress:l,createReplyError:u}})),qa=n(((e,n)=>{let{EventEmitter:r}=t(`node:events`),{Buffer:i}=t(`node:buffer`),{InvalidArgumentError:a,Socks5ProxyError:o}=K(),{debuglog:s}=t(`node:util`),{parseAddress:c}=Ka(),l=s(`undici:socks5`),u=i.alloc(0),d={NO_AUTH:0,GSSAPI:1,USERNAME_PASSWORD:2,NO_ACCEPTABLE:255},f={CONNECT:1,BIND:2,UDP_ASSOCIATE:3},p={IPV4:1,DOMAIN:3,IPV6:4},m={SUCCEEDED:0,GENERAL_FAILURE:1,CONNECTION_NOT_ALLOWED:2,NETWORK_UNREACHABLE:3,HOST_UNREACHABLE:4,CONNECTION_REFUSED:5,TTL_EXPIRED:6,COMMAND_NOT_SUPPORTED:7,ADDRESS_TYPE_NOT_SUPPORTED:8},h={INITIAL:`initial`,HANDSHAKING:`handshaking`,AUTHENTICATING:`authenticating`,AUTHENTICATED:`authenticated`,CONNECTING:`connecting`,CONNECTED:`connected`,ERROR:`error`,CLOSED:`closed`};n.exports={Socks5Client:class extends r{constructor(e,t={}){if(super(),!e)throw new a(`socket is required`);this.socket=e,this.options=t,this.state=h.INITIAL,this.buffer=u,this.onSocketData=this.onData.bind(this),this.onSocketError=this.onError.bind(this),this.onSocketClose=this.onClose.bind(this),this.authMethods=[],t.username&&t.password&&this.authMethods.push(d.USERNAME_PASSWORD),this.authMethods.push(d.NO_AUTH),this.socket.on(`data`,this.onSocketData),this.socket.on(`error`,this.onSocketError),this.socket.on(`close`,this.onSocketClose)}onData(e){l(`received data`,e.length,`bytes in state`,this.state),this.buffer=i.concat([this.buffer,e]);try{switch(this.state){case h.HANDSHAKING:this.handleHandshakeResponse();break;case h.AUTHENTICATING:this.handleAuthResponse();break;case h.CONNECTING:this.handleConnectResponse();break}}catch(e){this.onError(e)}}onError(e){l(`socket error`,e),this.state=h.ERROR,this.emit(`error`,e),this.destroy()}onClose(){l(`socket closed`),this.state=h.CLOSED,this.emit(`close`)}destroy(){this.socket&&!this.socket.destroyed&&this.socket.destroy()}markAuthenticated(){this.state=h.AUTHENTICATED,this.emit(`authenticated`)}handshake(){if(this.state!==h.INITIAL)throw new a(`Handshake already started`);l(`starting handshake with`,this.authMethods.length,`auth methods`),this.state=h.HANDSHAKING;let e=i.alloc(2+this.authMethods.length);e[0]=5,e[1]=this.authMethods.length,this.authMethods.forEach((t,n)=>{e[2+n]=t}),this.socket.write(e)}handleHandshakeResponse(){if(this.buffer.length<2)return;let e=this.buffer[0],t=this.buffer[1];if(e!==5)throw new o(`Invalid SOCKS version: ${e}`,`UND_ERR_SOCKS5_VERSION`);if(t===d.NO_ACCEPTABLE)throw new o(`No acceptable authentication method`,`UND_ERR_SOCKS5_AUTH_REJECTED`);if(this.buffer=this.buffer.subarray(2),l(`server selected auth method`,t),t===d.NO_AUTH)this.markAuthenticated();else if(t===d.USERNAME_PASSWORD)this.state=h.AUTHENTICATING,this.sendAuthRequest();else throw new o(`Unsupported authentication method: ${t}`,`UND_ERR_SOCKS5_AUTH_METHOD`)}sendAuthRequest(){let{username:e,password:t}=this.options;if(!e||!t)throw new a(`Username and password required for authentication`);l(`sending username/password auth`);let n=i.from(e),r=i.from(t);if(n.length>255||r.length>255)throw new a(`Username or password too long`);let o=i.alloc(3+n.length+r.length);o[0]=1,o[1]=n.length,n.copy(o,2),o[2+n.length]=r.length,r.copy(o,3+n.length),this.socket.write(o)}handleAuthResponse(){if(this.buffer.length<2)return;let e=this.buffer[0],t=this.buffer[1];if(e!==1)throw new o(`Invalid auth sub-negotiation version: ${e}`,`UND_ERR_SOCKS5_AUTH_VERSION`);if(t!==0)throw new o(`Authentication failed`,`UND_ERR_SOCKS5_AUTH_FAILED`);this.buffer=this.buffer.subarray(2),l(`authentication successful`),this.markAuthenticated()}connect(e,t){if(this.state===h.CONNECTING||this.state===h.CONNECTED)throw new a(`Connection already in progress`);if(this.state!==h.AUTHENTICATED)throw new a(`Client must be authenticated before CONNECT`);l(`connecting to`,e,t),this.state=h.CONNECTING;let n=this.buildConnectRequest(f.CONNECT,e,t);this.socket.write(n)}buildConnectRequest(e,t,n){let{type:r,buffer:a}=c(t),o=i.alloc(4+a.length+2);return o[0]=5,o[1]=e,o[2]=0,o[3]=r,a.copy(o,4),o.writeUInt16BE(n,4+a.length),o}handleConnectResponse(){if(this.buffer.length<4)return;let e=this.buffer[0],t=this.buffer[1],n=this.buffer[3];if(e!==5)throw new o(`Invalid SOCKS version in reply: ${e}`,`UND_ERR_SOCKS5_REPLY_VERSION`);let r=4;if(n===p.IPV4)r+=6;else if(n===p.DOMAIN){if(this.buffer.length<5)return;r+=1+this.buffer[4]+2}else if(n===p.IPV6)r+=18;else throw new o(`Invalid address type in reply: ${n}`,`UND_ERR_SOCKS5_ADDR_TYPE`);if(this.buffer.length<r)return;if(t!==m.SUCCEEDED)throw new o(`SOCKS5 connection failed: ${this.getReplyErrorMessage(t)}`,`UND_ERR_SOCKS5_REPLY_${t}`);let i,a=4;if(n===p.IPV4)i=Array.from(this.buffer.subarray(a,a+4)).join(`.`),a+=4;else if(n===p.DOMAIN){let e=this.buffer[a];a+=1,i=this.buffer.subarray(a,a+e).toString(),a+=e}else if(n===p.IPV6){let e=[];for(let t=0;t<8;t++){let n=this.buffer.readUInt16BE(a+t*2);e.push(n.toString(16))}i=e.join(`:`),a+=16}let s=this.buffer.readUInt16BE(a);this.buffer=u,this.state=h.CONNECTED,this.socket.removeListener(`data`,this.onSocketData),l(`connected, bound address:`,i,`port:`,s),this.emit(`connected`,{address:i,port:s})}getReplyErrorMessage(e){switch(e){case m.GENERAL_FAILURE:return`General SOCKS server failure`;case m.CONNECTION_NOT_ALLOWED:return`Connection not allowed by ruleset`;case m.NETWORK_UNREACHABLE:return`Network unreachable`;case m.HOST_UNREACHABLE:return`Host unreachable`;case m.CONNECTION_REFUSED:return`Connection refused`;case m.TTL_EXPIRED:return`TTL expired`;case m.COMMAND_NOT_SUPPORTED:return`Command not supported`;case m.ADDRESS_TYPE_NOT_SUPPORTED:return`Address type not supported`;default:return`Unknown error code: ${e}`}}},AUTH_METHODS:d,COMMANDS:f,ADDRESS_TYPES:p,REPLY_CODES:m,STATES:h}})),Ja=n(((e,n)=>{let{URL:r}=t(`node:url`),i,a=ya(),{InvalidArgumentError:o}=K(),{Socks5Client:s,STATES:c}=qa(),{kDispatch:l,kClose:u,kDestroy:d}=la(),f=Ha(),p=ba(),{debuglog:m}=t(`node:util`),h=m(`undici:socks5-proxy`),g=Symbol(`proxy url`),_=Symbol(`proxy headers`),v=Symbol(`proxy auth`),y=Symbol(`proxy protocol`),b=Symbol(`pools`),x=Symbol(`connector`),S=Symbol(`request tls settings`),C=!1;n.exports=class extends a{constructor(e,t={}){if(super(),C||=(process.emitWarning(`SOCKS5 proxy support is experimental and subject to change`,`ExperimentalWarning`),!0),!e)throw new o(`Proxy URL is mandatory`);let n=typeof e==`string`?new r(e):e;if(n.protocol!==`socks5:`&&n.protocol!==`socks:`)throw new o(`Proxy URL must use socks5:// or socks:// protocol`);this[g]=n,this[_]=t.headers||{},this[y]=t.proxyTls?`https:`:`http:`,this[S]=t.requestTls,this[v]={username:t.username||(n.username?decodeURIComponent(n.username):null),password:t.password||(n.password?decodeURIComponent(n.password):null)},this[x]=t.connect||p({...t.proxyTls,servername:t.proxyTls?.servername||n.hostname}),this[b]=new Map}async createSocks5Connection(e,t){let n=this[g].hostname,r=parseInt(this[g].port)||1080;h(`creating SOCKS5 connection to`,n,r);let i=await new Promise((e,t)=>{this[x]({hostname:n,host:n,port:r,protocol:this[y]},(n,r)=>{n?t(n):e(r)})}),a=new s(i,this[v]);return a.on(`error`,e=>{h(`SOCKS5 error:`,e),i.destroy()}),await a.handshake(),await new Promise((e,t)=>{let n=setTimeout(()=>{t(Error(`SOCKS5 authentication timeout`))},5e3),r=()=>{clearTimeout(n),a.removeListener(`error`,i),e()},i=e=>{clearTimeout(n),a.removeListener(`authenticated`,r),t(e)};a.state===c.AUTHENTICATED?(clearTimeout(n),e()):(a.once(`authenticated`,r),a.once(`error`,i))}),await a.connect(e,t),await new Promise((n,r)=>{let i=setTimeout(()=>{r(Error(`SOCKS5 connection timeout`))},5e3),o=r=>{h(`SOCKS5 tunnel established to`,e,t,`via`,r),clearTimeout(i),a.removeListener(`error`,s),n()},s=e=>{clearTimeout(i),a.removeListener(`connected`,o),r(e)};a.once(`connected`,o),a.once(`error`,s)}),i}[l](e,n){let{origin:a}=e;h(`dispatching request to`,a,`via SOCKS5`);try{let o=String(a),s=this[b].get(o);return(!s||s.destroyed||s.closed)&&(s=new f(a,{pipelining:e.pipelining,connections:e.connections,connect:async(e,n)=>{try{let e=new r(a),o=e.hostname,s=parseInt(e.port)||(e.protocol===`https:`?443:80);h(`establishing SOCKS5 connection to`,o,s);let c=await this.createSocks5Connection(o,s),l=c;e.protocol===`https:`&&(i||=t(`node:tls`),h(`upgrading to TLS`),l=i.connect({...this[S],socket:c,servername:this[S]?.servername||o}),await new Promise((e,t)=>{l.once(`secureConnect`,e),l.once(`error`,t)})),n(null,l)}catch(e){h(`SOCKS5 connection error:`,e),n(e)}}}),this[b].set(o,s)),s[l](e,n)}catch(e){if(h(`dispatch error:`,e),typeof n.onResponseError==`function`)return n.onResponseError(null,e),!1;if(typeof n.onError==`function`)return n.onError(e),!1;throw e}}async[u](){let e=[];for(let t of this[b].values())e.push(t.close());this[b].clear(),await Promise.all(e)}async[d](e){let t=[];for(let n of this[b].values())t.push(n.destroy(e));this[b].clear(),await Promise.all(t)}}})),Ya=n(((e,t)=>{let{kProxy:n,kClose:r,kDestroy:i,kDispatch:a}=la(),o=Ga(),s=Ha(),c=ya(),{InvalidArgumentError:l,RequestAbortedError:u,SecureProxyConnectionError:d}=K(),f=ba(),p=za(),{channels:m}=ma(),h=Ja(),g=Symbol(`proxy agent`),_=Symbol(`proxy client`),v=Symbol(`proxy headers`),y=Symbol(`request tls settings`),b=Symbol(`proxy tls settings`),x=Symbol(`connect endpoint function`),S=Symbol(`tunnel proxy`);function C(e){return e===`https:`?443:80}function w(e,t){return new s(e,t)}let T=()=>{};function E(e,t){return t.connections===1?new p(e,t):new s(e,t)}var D=class extends c{#e;constructor(e,{headers:t={},connect:n,factory:r}){if(!e)throw new l(`Proxy URL is mandatory`);super(),this[v]=t,r?this.#e=r(e,{connect:n}):this.#e=new p(e,{connect:n})}[a](e,t){let n=t.onHeaders;t.onHeaders=function(e,r,i){if(e===407){typeof t.onError==`function`&&t.onError(new l(`Proxy Authentication Required (407)`));return}n&&n.call(this,e,r,i)};let{origin:r,path:i=`/`,headers:o={}}=e;if(e.path=r+i,!(`host`in o)&&!(`Host`in o)){let{host:e}=new URL(r);o.host=e}return e.headers={...this[v],...o},this.#e[a](e,t)}[r](){return this.#e.close()}[i](e){return this.#e.destroy(e)}},O=class extends c{constructor(e){if(!e||typeof e==`object`&&!(e instanceof URL)&&!e.uri)throw new l(`Proxy uri is mandatory`);let{clientFactory:t=w}=e;if(typeof t!=`function`)throw new l(`Proxy opts.clientFactory must be a function.`);let{proxyTunnel:r=!0}=e;super();let i=this.#e(e),{href:a,origin:s,port:c,protocol:p,username:O,password:k,hostname:A}=i;if(this[n]={uri:a,protocol:p},this[y]=e.requestTls,this[b]=e.proxyTls,this[v]=e.headers||{},this[S]=r,e.auth&&e.token)throw new l(`opts.auth cannot be used in combination with opts.token`);e.auth?this[v][`proxy-authorization`]=`Basic ${e.auth}`:e.token?this[v][`proxy-authorization`]=e.token:O&&k&&(this[v][`proxy-authorization`]=`Basic ${Buffer.from(`${decodeURIComponent(O)}:${decodeURIComponent(k)}`).toString(`base64`)}`);let j=f({...e.proxyTls});this[x]=f({...e.requestTls});let M=e.factory||E,N=(t,r)=>{let{protocol:i}=new URL(t);return this[n].protocol===`socks5:`||this[n].protocol===`socks:`?new h(this[n].uri,{headers:this[v],connect:j,factory:M,username:e.username||O,password:e.password||k,proxyTls:e.proxyTls,requestTls:e.requestTls}):!this[S]&&i===`http:`&&this[n].protocol===`http:`?new D(this[n].uri,{headers:this[v],connect:j,factory:M}):M(t,r)};p===`socks5:`||p===`socks:`?this[_]=null:this[_]=t(i,{connect:j}),this[g]=new o({...e,factory:N,connect:async(e,t)=>{if(!this[_]){t(new l(`Cannot establish tunnel connection without a proxy client`));return}let n=e.host;e.port||(n+=`:${C(e.protocol)}`);try{let r={origin:s,port:c,path:n,signal:e.signal,headers:{...this[v],host:e.host,...e.connections==null||e.connections>0?{"proxy-connection":`keep-alive`}:{}},servername:this[b]?.servername||A},{socket:i,statusCode:a}=await this[_].connect(r);if(a!==200){i.on(`error`,T).destroy(),t(new u(`Proxy response (${a}) !== 200 when HTTP Tunneling`));return}if(m.proxyConnected.hasSubscribers&&m.proxyConnected.publish({socket:i,connectParams:r}),e.protocol!==`https:`){t(null,i);return}let o;o=this[y]?this[y].servername:e.servername,this[x]({...e,servername:o,httpSocket:i},t)}catch(e){e.code===`ERR_TLS_CERT_ALTNAME_INVALID`?t(new d(e)):t(e)}}})}dispatch(e,t){let n=k(e.headers);if(A(n),n&&!(`host`in n)&&!(`Host`in n)){let{host:t}=new URL(e.origin);n.host=t}return this[g].dispatch({...e,headers:n},t)}#e(e){return typeof e==`string`?new URL(e):e instanceof URL?e:new URL(e.uri)}[r](){let e=[this[g].close()];return this[_]&&e.push(this[_].close()),Promise.all(e)}[i](){let e=[this[g].destroy()];return this[_]&&e.push(this[_].destroy()),Promise.all(e)}};function k(e){if(Array.isArray(e)){let t={};for(let n=0;n<e.length;n+=2)t[e[n]]=e[n+1];return t}return e}function A(e){if(e&&Object.keys(e).find(e=>e.toLowerCase()===`proxy-authorization`))throw new l(`Proxy-Authorization should be sent in ProxyAgent constructor`)}t.exports=O})),Xa=n(((e,t)=>{let n=ya(),{kClose:r,kDestroy:i,kClosed:a,kDestroyed:o,kDispatch:s,kNoProxyAgent:c,kHttpProxyAgent:l,kHttpsProxyAgent:u}=la(),d=Ya(),f=Ga(),p={"http:":80,"https:":443};t.exports=class extends n{#e=null;#t=null;#n=null;constructor(e={}){super(),this.#n=e;let{httpProxy:t,httpsProxy:n,noProxy:r,...i}=e;this[c]=new f(i);let a=t??process.env.http_proxy??process.env.HTTP_PROXY;a?this[l]=new d({...i,uri:a}):this[l]=this[c];let o=n??process.env.https_proxy??process.env.HTTPS_PROXY;o?this[u]=new d({...i,uri:o}):this[u]=this[l],this.#a()}[s](e,t){let n=new URL(e.origin);return this.#r(n).dispatch(e,t)}[r](){return Promise.all([this[c].close(),!this[l][a]&&this[l].close(),!this[u][a]&&this[u].close()])}[i](e){return Promise.all([this[c].destroy(e),!this[l][o]&&this[l].destroy(e),!this[u][o]&&this[u].destroy(e)])}#r(e){let{protocol:t,host:n,port:r}=e;return n=n.replace(/:\d*$/,``).toLowerCase(),r=Number.parseInt(r,10)||p[t]||0,this.#i(n,r)?t===`https:`?this[u]:this[l]:this[c]}#i(e,t){if(this.#o&&this.#a(),this.#t.length===0)return!0;if(this.#e===`*`)return!1;for(let n=0;n<this.#t.length;n++){let r=this.#t[n];if(!(r.port&&r.port!==t)&&(e===r.hostname||e.slice(-(r.hostname.length+1))===`.${r.hostname}`))return!1}return!0}#a(){let e=this.#n.noProxy??this.#s,t=e.split(/[,\s]/),n=[];for(let e=0;e<t.length;e++){let r=t[e];if(!r)continue;let i=r.match(/^(.+):(\d+)$/);n.push({hostname:(i?i[1]:r).replace(/^\*?\./,``).toLowerCase(),port:i?Number.parseInt(i[2],10):0})}this.#e=e,this.#t=n}get#o(){return this.#n.noProxy===void 0?this.#e!==this.#s:!1}get#s(){return process.env.no_proxy??process.env.NO_PROXY??``}}})),Za=n(((e,n)=>{let r=t(`node:assert`),{kRetryHandlerDefaultRetry:i}=la(),{RequestRetryError:a}=K(),o=ga(),{isDisturbed:s,parseRangeHeader:c,wrapRequestBody:l}=q();function u(e){let t=new Date(e).getTime();return isNaN(t)?0:t-Date.now()}n.exports=class e{constructor(t,{dispatch:n,handler:r}){let{retryOptions:a,...s}=t,{retry:c,maxRetries:u,maxTimeout:d,minTimeout:f,timeoutFactor:p,methods:m,errorCodes:h,retryAfter:g,statusCodes:_,throwOnError:v}=a??{};this.error=null,this.dispatch=n,this.handler=o.wrap(r),this.opts={...s,body:l(t.body)},this.retryOpts={throwOnError:v??!0,retry:c??e[i],retryAfter:g??!0,maxTimeout:d??30*1e3,minTimeout:f??500,timeoutFactor:p??2,maxRetries:u??5,methods:m??[`GET`,`HEAD`,`OPTIONS`,`PUT`,`DELETE`,`TRACE`],statusCodes:_??[500,502,503,504,429],errorCodes:h??[`ECONNRESET`,`ECONNREFUSED`,`ENOTFOUND`,`ENETDOWN`,`ENETUNREACH`,`EHOSTDOWN`,`EHOSTUNREACH`,`EPIPE`,`UND_ERR_SOCKET`]},this.retryCount=0,this.retryCountCheckpoint=0,this.headersSent=!1,this.start=0,this.end=null,this.etag=null}onResponseStartWithRetry(e,t,n,r,i){if(this.retryOpts.throwOnError){this.retryOpts.statusCodes.includes(t)===!1?(this.headersSent=!0,this.handler.onResponseStart?.(e,t,n,r)):this.error=i;return}if(s(this.opts.body)){this.headersSent=!0,this.handler.onResponseStart?.(e,t,n,r);return}function a(a){if(a){this.headersSent=!0,this.handler.onResponseStart?.(e,t,n,r),e.resume();return}this.error=i,e.resume()}e.pause(),this.retryOpts.retry(i,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},a.bind(this))}onRequestStart(e,t){this.headersSent||this.handler.onRequestStart?.(e,t)}onRequestUpgrade(e,t,n,r){this.handler.onRequestUpgrade?.(e,t,n,r)}static[i](e,{state:t,opts:n},r){let{statusCode:i,code:a,headers:o}=e,{method:s,retryOptions:c}=n,{maxRetries:l,minTimeout:d,maxTimeout:f,timeoutFactor:p,statusCodes:m,errorCodes:h,methods:g}=c,{counter:_}=t;if(a&&a!==`UND_ERR_REQ_RETRY`&&!h.includes(a)){r(e);return}if(Array.isArray(g)&&!g.includes(s)){r(e);return}if(i!=null&&Array.isArray(m)&&!m.includes(i)){r(e);return}if(_>l){r(e);return}let v=o?.[`retry-after`];v&&=(v=Number(v),Number.isNaN(v)?u(o[`retry-after`]):v*1e3);let y=Math.min(v>0?v:d*p**(_-1),f);setTimeout(()=>r(null),y)}onResponseStart(e,t,n,i){if(this.error=null,this.retryCount+=1,t>=300){let r=new a(`Request failed`,t,{headers:n,data:{count:this.retryCount}});this.onResponseStartWithRetry(e,t,n,i,r);return}if(this.headersSent){if(t!==206&&(this.start>0||t!==200))throw new a(`server does not support the range header and the payload was partially consumed`,t,{headers:n,data:{count:this.retryCount}});let e=c(n[`content-range`]);if(!e)throw new a(`Content-Range mismatch`,t,{headers:n,data:{count:this.retryCount}});if(this.etag!=null&&this.etag!==n.etag)throw new a(`ETag mismatch`,t,{headers:n,data:{count:this.retryCount}});let{start:i,size:o,end:s=o?o-1:null}=e;r(this.start===i,`content-range mismatch`),r(this.end==null||this.end===s,`content-range mismatch`);return}if(this.end==null){if(t===206){let a=c(n[`content-range`]);if(a==null){this.headersSent=!0,this.handler.onResponseStart?.(e,t,n,i);return}let{start:o,size:s,end:l=s?s-1:null}=a;r(o!=null&&Number.isFinite(o),`content-range mismatch`),r(l!=null&&Number.isFinite(l),`invalid content-length`),this.start=o,this.end=l}if(this.end==null){let e=n[`content-length`];this.end=e==null?null:Number(e)-1}r(Number.isFinite(this.start)),r(this.end==null||Number.isFinite(this.end),`invalid content-length`),this.resume=!0,this.etag=n.etag==null?null:n.etag,this.etag!=null&&this.etag[0]===`W`&&this.etag[1]===`/`&&(this.etag=null),this.headersSent=!0,this.handler.onResponseStart?.(e,t,n,i)}else throw new a(`Request failed`,t,{headers:n,data:{count:this.retryCount}})}onResponseData(e,t){this.error||(this.start+=t.length,this.handler.onResponseData?.(e,t))}onResponseEnd(e,t){if(this.error&&this.retryOpts.throwOnError)throw this.error;if(!this.error)return this.retryCount=0,this.handler.onResponseEnd?.(e,t);this.retry(e)}retry(e){if(this.start!==0){let e={range:`bytes=${this.start}-${this.end??``}`};this.etag!=null&&(e[`if-match`]=this.etag),this.opts={...this.opts,headers:{...this.opts.headers,...e}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(t){this.handler.onResponseError?.(e,t)}}onResponseError(e,t){if(e?.aborted||s(this.opts.body)){this.handler.onResponseError?.(e,t);return}function n(t){if(!t){this.retry(e);return}this.handler?.onResponseError?.(e,t)}this.retryCount-this.retryCountCheckpoint>0?this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint):this.retryCount+=1,this.retryOpts.retry(t,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},n.bind(this))}}})),Qa=n(((e,t)=>{let n=_a(),r=Za();t.exports=class extends n{#e=null;#t=null;constructor(e,t={}){super(t),this.#e=e,this.#t=t}dispatch(e,t){let n=new r({...e,retryOptions:this.#t},{dispatch:this.#e.dispatch.bind(this.#e),handler:t});return this.#e.dispatch(e,n)}close(){return this.#e.close()}destroy(){return this.#e.destroy()}}})),$a=n(((e,t)=>{let{InvalidArgumentError:n}=K(),r=za();t.exports=class extends r{constructor(e,t){if(typeof e==`string`&&(e=new URL(e)),e.protocol!==`http:`)throw new n(`h2c-client: Only h2c protocol is supported`);let{maxConcurrentStreams:r,pipelining:i,...a}=t??{},o=100,s=100;if(r!=null&&Number.isInteger(r)&&r>0&&(o=r),i!=null&&Number.isInteger(i)&&i>0&&(s=i),s>o)throw new n(`h2c-client: pipelining cannot be greater than maxConcurrentStreams`);super(e,{...a,maxConcurrentStreams:o,pipelining:s,allowH2:!0,useH2c:!0})}}})),eo=n(((e,n)=>{let r=t(`node:assert`),{Readable:i}=t(`node:stream`),{RequestAbortedError:a,NotSupportedError:o,InvalidArgumentError:s,AbortError:c}=K(),l=q(),{ReadableStreamFrom:u}=q(),d=Symbol(`kConsume`),f=Symbol(`kReading`),p=Symbol(`kBody`),m=Symbol(`kAbort`),h=Symbol(`kContentType`),g=Symbol(`kContentLength`),_=Symbol(`kUsed`),v=Symbol(`kBytesRead`),y=()=>{};var b=class extends i{constructor({resume:e,abort:t,contentType:n=``,contentLength:r,highWaterMark:i=64*1024}){super({autoDestroy:!0,read:e,highWaterMark:i}),this._readableState.dataEmitted=!1,this[m]=t,this[d]=null,this[v]=0,this[p]=null,this[_]=!1,this[h]=n,this[g]=Number.isFinite(r)?r:null,this[f]=!1}_destroy(e,t){!e&&!this._readableState.endEmitted&&(e=new a),e&&this[m](),this[_]?t(e):setImmediate(t,e)}on(e,t){return(e===`data`||e===`readable`)&&(this[f]=!0,this[_]=!0),super.on(e,t)}addListener(e,t){return this.on(e,t)}off(e,t){let n=super.off(e,t);return(e===`data`||e===`readable`)&&(this[f]=this.listenerCount(`data`)>0||this.listenerCount(`readable`)>0),n}removeListener(e,t){return this.off(e,t)}push(e){return e&&(this[v]+=e.length,this[d])?(O(this[d],e),this[f]?super.push(e):!0):super.push(e)}text(){return C(this,`text`)}json(){return C(this,`json`)}blob(){return C(this,`blob`)}bytes(){return C(this,`bytes`)}arrayBuffer(){return C(this,`arrayBuffer`)}async formData(){throw new o}get bodyUsed(){return l.isDisturbed(this)}get body(){return this[p]||(this[p]=u(this),this[d]&&(this[p].getReader(),r(this[p].locked))),this[p]}dump(e){let t=e?.signal;if(t!=null&&(typeof t!=`object`||!(`aborted`in t)))return Promise.reject(new s(`signal must be an AbortSignal`));let n=e?.limit&&Number.isFinite(e.limit)?e.limit:128*1024;return t?.aborted?Promise.reject(t.reason??new c):this._readableState.closeEmitted?Promise.resolve(null):new Promise((e,r)=>{if((this[g]&&this[g]>n||this[v]>n)&&this.destroy(new c),t){let n=()=>{this.destroy(t.reason??new c)};t.addEventListener(`abort`,n),this.on(`close`,function(){t.removeEventListener(`abort`,n),t.aborted?r(t.reason??new c):e(null)})}else this.on(`close`,e);this.on(`error`,y).on(`data`,()=>{this[v]>n&&this.destroy()}).resume()})}setEncoding(e){return Buffer.isEncoding(e)&&(this._readableState.encoding=e),this}};function x(e){return e[p]?.locked===!0||e[d]!==null}function S(e){return l.isDisturbed(e)||x(e)}function C(e,t){return r(!e[d]),new Promise((n,r)=>{if(S(e)){let t=e._readableState;t.destroyed&&t.closeEmitted===!1?e.on(`error`,r).on(`close`,()=>{r(TypeError(`unusable`))}):r(t.errored??TypeError(`unusable`))}else queueMicrotask(()=>{e[d]={type:t,stream:e,resolve:n,reject:r,length:0,body:[]},e.on(`error`,function(e){k(this[d],e)}).on(`close`,function(){this[d].body!==null&&k(this[d],new a)}),w(e[d])})})}function w(e){if(e.body===null)return;let{_readableState:t}=e.stream;if(t.bufferIndex){let n=t.bufferIndex,r=t.buffer.length;for(let i=n;i<r;i++)O(e,t.buffer[i])}else for(let n of t.buffer)O(e,n);for(t.endEmitted?D(this[d],this._readableState.encoding):e.stream.on(`end`,function(){D(this[d],this._readableState.encoding)}),e.stream.resume();e.stream.read()!=null;);}function T(e,t,n){if(e.length===0||t===0)return``;let r=e.length===1?e[0]:Buffer.concat(e,t),i=r.length,a=i>2&&r[0]===239&&r[1]===187&&r[2]===191?3:0;return!n||n===`utf8`||n===`utf-8`?r.utf8Slice(a,i):r.subarray(a,i).toString(n)}function E(e,t){if(e.length===0||t===0)return new Uint8Array;if(e.length===1)return new Uint8Array(e[0]);let n=new Uint8Array(Buffer.allocUnsafeSlow(t).buffer),r=0;for(let t=0;t<e.length;++t){let i=e[t];n.set(i,r),r+=i.length}return n}function D(e,t){let{type:n,body:r,resolve:i,stream:a,length:o}=e;try{n===`text`?i(T(r,o,t)):n===`json`?i(JSON.parse(T(r,o,t))):n===`arrayBuffer`?i(E(r,o).buffer):n===`blob`?i(new Blob(r,{type:a[h]})):n===`bytes`&&i(E(r,o)),k(e)}catch(e){a.destroy(e)}}function O(e,t){e.length+=t.length,e.body.push(t)}function k(e,t){e.body!==null&&(t?e.reject(t):e.resolve(),e.type=null,e.stream=null,e.resolve=null,e.reject=null,e.length=0,e.body=null)}n.exports={Readable:b,chunksDecode:T}})),to=n(((e,n)=>{let r=t(`node:assert`),{AsyncResource:i}=t(`node:async_hooks`),{Readable:a}=eo(),{InvalidArgumentError:o,RequestAbortedError:s}=K(),c=q();function l(){}var u=class extends i{constructor(e,t){if(!e||typeof e!=`object`)throw new o(`invalid opts`);let{signal:n,method:r,opaque:i,body:a,onInfo:u,responseHeaders:d,highWaterMark:f}=e;try{if(typeof t!=`function`)throw new o(`invalid callback`);if(f!=null&&(!Number.isFinite(f)||f<0))throw new o(`invalid highWaterMark`);if(n&&typeof n.on!=`function`&&typeof n.addEventListener!=`function`)throw new o(`signal must be an EventEmitter or EventTarget`);if(r===`CONNECT`)throw new o(`invalid method`);if(u&&typeof u!=`function`)throw new o(`invalid onInfo callback`);super(`UNDICI_REQUEST`)}catch(e){throw c.isStream(a)&&c.destroy(a.on(`error`,l),e),e}this.method=r,this.responseHeaders=d||null,this.opaque=i||null,this.callback=t,this.res=null,this.abort=null,this.body=a,this.trailers={},this.context=null,this.onInfo=u||null,this.highWaterMark=f,this.reason=null,this.removeAbortListener=null,n?.aborted?this.reason=n.reason??new s:n&&(this.removeAbortListener=c.addAbortListener(n,()=>{this.reason=n.reason??new s,this.res?c.destroy(this.res.on(`error`,l),this.reason):this.abort&&this.abort(this.reason)}))}onConnect(e,t){if(this.reason){e(this.reason);return}r(this.callback),this.abort=e,this.context=t}onHeaders(e,t,n,r){let{callback:i,opaque:o,abort:s,context:u,responseHeaders:d,highWaterMark:f}=this,p=d===`raw`?c.parseRawHeaders(t):c.parseHeaders(t);if(e<200){this.onInfo&&this.onInfo({statusCode:e,headers:p});return}let m=d===`raw`?c.parseHeaders(t):p,h=m[`content-type`],g=m[`content-length`],_=new a({resume:n,abort:s,contentType:h,contentLength:this.method!==`HEAD`&&g?Number(g):null,highWaterMark:f});if(this.removeAbortListener&&=(_.on(`close`,this.removeAbortListener),null),this.callback=null,this.res=_,i!==null)try{this.runInAsyncScope(i,null,null,{statusCode:e,statusText:r,headers:p,trailers:this.trailers,opaque:o,body:_,context:u})}catch(e){this.res=null,c.destroy(_.on(`error`,l),e),queueMicrotask(()=>{throw e})}}onData(e){return this.res.push(e)}onComplete(e){c.parseHeaders(e,this.trailers),this.res.push(null)}onError(e){let{res:t,callback:n,body:r,opaque:i}=this;n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,e,{opaque:i})})),t&&(this.res=null,queueMicrotask(()=>{c.destroy(t.on(`error`,l),e)})),r&&(this.body=null,c.isStream(r)&&(r.on(`error`,l),c.destroy(r,e))),this.removeAbortListener&&=(this.removeAbortListener(),null)}};function d(e,t){if(t===void 0)return new Promise((t,n)=>{d.call(this,e,(e,r)=>e?n(e):t(r))});try{let n=new u(e,t);this.dispatch(e,n)}catch(n){if(typeof t!=`function`)throw n;let r=e?.opaque;queueMicrotask(()=>t(n,{opaque:r}))}}n.exports=d,n.exports.RequestHandler=u})),no=n(((e,t)=>{let{addAbortListener:n}=q(),{RequestAbortedError:r}=K(),i=Symbol(`kListener`),a=Symbol(`kSignal`);function o(e){e.abort?e.abort(e[a]?.reason):e.reason=e[a]?.reason??new r,c(e)}function s(e,t){if(e.reason=null,e[a]=null,e[i]=null,t){if(t.aborted){o(e);return}e[a]=t,e[i]=()=>{o(e)},n(e[a],e[i])}}function c(e){e[a]&&(`removeEventListener`in e[a]?e[a].removeEventListener(`abort`,e[i]):e[a].removeListener(`abort`,e[i]),e[a]=null,e[i]=null)}t.exports={addSignal:s,removeSignal:c}})),ro=n(((e,n)=>{let r=t(`node:assert`),{finished:i}=t(`node:stream`),{AsyncResource:a}=t(`node:async_hooks`),{InvalidArgumentError:o,InvalidReturnValueError:s}=K(),c=q(),{addSignal:l,removeSignal:u}=no();function d(){}var f=class extends a{constructor(e,t,n){if(!e||typeof e!=`object`)throw new o(`invalid opts`);let{signal:r,method:i,opaque:a,body:s,onInfo:u,responseHeaders:f}=e;try{if(typeof n!=`function`)throw new o(`invalid callback`);if(typeof t!=`function`)throw new o(`invalid factory`);if(r&&typeof r.on!=`function`&&typeof r.addEventListener!=`function`)throw new o(`signal must be an EventEmitter or EventTarget`);if(i===`CONNECT`)throw new o(`invalid method`);if(u&&typeof u!=`function`)throw new o(`invalid onInfo callback`);super(`UNDICI_STREAM`)}catch(e){throw c.isStream(s)&&c.destroy(s.on(`error`,d),e),e}this.responseHeaders=f||null,this.opaque=a||null,this.factory=t,this.callback=n,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=s,this.onInfo=u||null,c.isStream(s)&&s.on(`error`,e=>{this.onError(e)}),l(this,r)}onConnect(e,t){if(this.reason){e(this.reason);return}r(this.callback),this.abort=e,this.context=t}onHeaders(e,t,n,r){let{factory:a,opaque:o,context:l,responseHeaders:u}=this,d=u===`raw`?c.parseRawHeaders(t):c.parseHeaders(t);if(e<200){this.onInfo&&this.onInfo({statusCode:e,headers:d});return}if(this.factory=null,a===null)return;let f=this.runInAsyncScope(a,null,{statusCode:e,headers:d,opaque:o,context:l});if(!f||typeof f.write!=`function`||typeof f.end!=`function`||typeof f.on!=`function`)throw new s(`expected Writable`);return i(f,{readable:!1},e=>{let{callback:t,res:n,opaque:r,trailers:i,abort:a}=this;this.res=null,(e||!n?.readable)&&c.destroy(n,e),this.callback=null,this.runInAsyncScope(t,null,e||null,{opaque:r,trailers:i}),e&&a()}),f.on(`drain`,n),this.res=f,(f.writableNeedDrain===void 0?f._writableState?.needDrain:f.writableNeedDrain)!==!0}onData(e){let{res:t}=this;return t?t.write(e):!0}onComplete(e){let{res:t}=this;u(this),t&&(this.trailers=c.parseHeaders(e),t.end())}onError(e){let{res:t,callback:n,opaque:r,body:i}=this;u(this),this.factory=null,t?(this.res=null,c.destroy(t,e)):n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,e,{opaque:r})})),i&&(this.body=null,c.destroy(i,e))}};function p(e,t,n){if(n===void 0)return new Promise((n,r)=>{p.call(this,e,t,(e,t)=>e?r(e):n(t))});try{let r=new f(e,t,n);this.dispatch(e,r)}catch(t){if(typeof n!=`function`)throw t;let r=e?.opaque;queueMicrotask(()=>n(t,{opaque:r}))}}n.exports=p})),io=n(((e,n)=>{let{Readable:r,Duplex:i,PassThrough:a}=t(`node:stream`),o=t(`node:assert`),{AsyncResource:s}=t(`node:async_hooks`),{InvalidArgumentError:c,InvalidReturnValueError:l,RequestAbortedError:u}=K(),d=q(),{addSignal:f,removeSignal:p}=no();function m(){}let h=Symbol(`resume`);var g=class extends r{constructor(){super({autoDestroy:!0}),this[h]=null}_read(){let{[h]:e}=this;e&&(this[h]=null,e())}_destroy(e,t){this._read(),t(e)}},_=class extends r{constructor(e){super({autoDestroy:!0}),this[h]=e}_read(){this[h]()}_destroy(e,t){!e&&!this._readableState.endEmitted&&(e=new u),t(e)}},v=class extends s{constructor(e,t){if(!e||typeof e!=`object`)throw new c(`invalid opts`);if(typeof t!=`function`)throw new c(`invalid handler`);let{signal:n,method:r,opaque:a,onInfo:o,responseHeaders:s}=e;if(n&&typeof n.on!=`function`&&typeof n.addEventListener!=`function`)throw new c(`signal must be an EventEmitter or EventTarget`);if(r===`CONNECT`)throw new c(`invalid method`);if(o&&typeof o!=`function`)throw new c(`invalid onInfo callback`);super(`UNDICI_PIPELINE`),this.opaque=a||null,this.responseHeaders=s||null,this.handler=t,this.abort=null,this.context=null,this.onInfo=o||null,this.req=new g().on(`error`,m),this.ret=new i({readableObjectMode:e.objectMode,autoDestroy:!0,read:()=>{let{body:e}=this;e?.resume&&e.resume()},write:(e,t,n)=>{let{req:r}=this;r.push(e,t)||r._readableState.destroyed?n():r[h]=n},destroy:(e,t)=>{let{body:n,req:r,res:i,ret:a,abort:o}=this;!e&&!a._readableState.endEmitted&&(e=new u),o&&e&&o(),d.destroy(n,e),d.destroy(r,e),d.destroy(i,e),p(this),t(e)}}).on(`prefinish`,()=>{let{req:e}=this;e.push(null)}),this.res=null,f(this,n)}onConnect(e,t){let{res:n}=this;if(this.reason){e(this.reason);return}o(!n,`pipeline cannot be retried`),this.abort=e,this.context=t}onHeaders(e,t,n){let{opaque:r,handler:i,context:a}=this;if(e<200){if(this.onInfo){let n=this.responseHeaders===`raw`?d.parseRawHeaders(t):d.parseHeaders(t);this.onInfo({statusCode:e,headers:n})}return}this.res=new _(n);let o;try{this.handler=null;let n=this.responseHeaders===`raw`?d.parseRawHeaders(t):d.parseHeaders(t);o=this.runInAsyncScope(i,null,{statusCode:e,headers:n,opaque:r,body:this.res,context:a})}catch(e){throw this.res.on(`error`,m),e}if(!o||typeof o.on!=`function`)throw new l(`expected Readable`);o.on(`data`,e=>{let{ret:t,body:n}=this;!t.push(e)&&n.pause&&n.pause()}).on(`error`,e=>{let{ret:t}=this;d.destroy(t,e)}).on(`end`,()=>{let{ret:e}=this;e.push(null)}).on(`close`,()=>{let{ret:e}=this;e._readableState.ended||d.destroy(e,new u)}),this.body=o}onData(e){let{res:t}=this;return t.push(e)}onComplete(e){let{res:t}=this;t.push(null)}onError(e){let{ret:t}=this;this.handler=null,d.destroy(t,e)}};function y(e,t){try{let n=new v(e,t);return this.dispatch({...e,body:n.req},n),n.ret}catch(e){return new a().destroy(e)}}n.exports=y})),ao=n(((e,n)=>{let{InvalidArgumentError:r,SocketError:i}=K(),{AsyncResource:a}=t(`node:async_hooks`),o=t(`node:assert`),s=q(),{kHTTP2Stream:c}=la(),{addSignal:l,removeSignal:u}=no();var d=class extends a{constructor(e,t){if(!e||typeof e!=`object`)throw new r(`invalid opts`);if(typeof t!=`function`)throw new r(`invalid callback`);let{signal:n,opaque:i,responseHeaders:a}=e;if(n&&typeof n.on!=`function`&&typeof n.addEventListener!=`function`)throw new r(`signal must be an EventEmitter or EventTarget`);super(`UNDICI_UPGRADE`),this.responseHeaders=a||null,this.opaque=i||null,this.callback=t,this.abort=null,this.context=null,l(this,n)}onConnect(e,t){if(this.reason){e(this.reason);return}o(this.callback),this.abort=e,this.context=null}onHeaders(){throw new i(`bad upgrade`,null)}onUpgrade(e,t,n){o(n[c]===!0?e===200:e===101);let{callback:r,opaque:i,context:a}=this;u(this),this.callback=null;let l=this.responseHeaders===`raw`?s.parseRawHeaders(t):s.parseHeaders(t);this.runInAsyncScope(r,null,null,{headers:l,socket:n,opaque:i,context:a})}onError(e){let{callback:t,opaque:n}=this;u(this),t&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(t,null,e,{opaque:n})}))}};function f(e,t){if(t===void 0)return new Promise((t,n)=>{f.call(this,e,(e,r)=>e?n(e):t(r))});try{let n=new d(e,t),r={...e,method:e.method||`GET`,upgrade:e.protocol||`Websocket`};this.dispatch(r,n)}catch(n){if(typeof t!=`function`)throw n;let r=e?.opaque;queueMicrotask(()=>t(n,{opaque:r}))}}n.exports=f})),oo=n(((e,n)=>{let r=t(`node:assert`),{AsyncResource:i}=t(`node:async_hooks`),{InvalidArgumentError:a,SocketError:o}=K(),s=q(),{addSignal:c,removeSignal:l}=no();var u=class extends i{constructor(e,t){if(!e||typeof e!=`object`)throw new a(`invalid opts`);if(typeof t!=`function`)throw new a(`invalid callback`);let{signal:n,opaque:r,responseHeaders:i}=e;if(n&&typeof n.on!=`function`&&typeof n.addEventListener!=`function`)throw new a(`signal must be an EventEmitter or EventTarget`);super(`UNDICI_CONNECT`),this.opaque=r||null,this.responseHeaders=i||null,this.callback=t,this.abort=null,c(this,n)}onConnect(e,t){if(this.reason){e(this.reason);return}r(this.callback),this.abort=e,this.context=t}onHeaders(){throw new o(`bad connect`,null)}onUpgrade(e,t,n){let{callback:r,opaque:i,context:a}=this;l(this),this.callback=null;let o=t;o!=null&&(o=this.responseHeaders===`raw`?s.parseRawHeaders(t):s.parseHeaders(t)),this.runInAsyncScope(r,null,null,{statusCode:e,headers:o,socket:n,opaque:i,context:a})}onError(e){let{callback:t,opaque:n}=this;l(this),t&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(t,null,e,{opaque:n})}))}};function d(e,t){if(t===void 0)return new Promise((t,n)=>{d.call(this,e,(e,r)=>e?n(e):t(r))});try{let n=new u(e,t),r={...e,method:`CONNECT`};this.dispatch(r,n)}catch(n){if(typeof t!=`function`)throw n;let r=e?.opaque;queueMicrotask(()=>t(n,{opaque:r}))}}n.exports=d})),so=n(((e,t)=>{t.exports.request=to(),t.exports.stream=ro(),t.exports.pipeline=io(),t.exports.upgrade=ao(),t.exports.connect=oo()})),co=n(((e,t)=>{let{UndiciError:n}=K(),r=Symbol.for(`undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED`);t.exports={MockNotMatchedError:class extends n{constructor(e){super(e),this.name=`MockNotMatchedError`,this.message=e||`The request does not match any registered mock dispatches`,this.code=`UND_MOCK_ERR_MOCK_NOT_MATCHED`}static[Symbol.hasInstance](e){return e&&e[r]===!0}get[r](){return!0}}}})),lo=n(((e,t)=>{t.exports={kAgent:Symbol(`agent`),kOptions:Symbol(`options`),kFactory:Symbol(`factory`),kDispatches:Symbol(`dispatches`),kDispatchKey:Symbol(`dispatch key`),kDefaultHeaders:Symbol(`default headers`),kDefaultTrailers:Symbol(`default trailers`),kContentLength:Symbol(`content length`),kMockAgent:Symbol(`mock agent`),kMockAgentSet:Symbol(`mock agent set`),kMockAgentGet:Symbol(`mock agent get`),kMockDispatch:Symbol(`mock dispatch`),kClose:Symbol(`close`),kOriginalClose:Symbol(`original agent close`),kOriginalDispatch:Symbol(`original dispatch`),kOrigin:Symbol(`origin`),kIsMockActive:Symbol(`is mock active`),kNetConnect:Symbol(`net connect`),kGetNetConnect:Symbol(`get net connect`),kConnected:Symbol(`connected`),kIgnoreTrailingSlash:Symbol(`ignore trailing slash`),kMockAgentMockCallHistoryInstance:Symbol(`mock agent mock call history name`),kMockAgentRegisterCallHistory:Symbol(`mock agent register mock call history`),kMockAgentAddCallHistoryLog:Symbol(`mock agent add call history log`),kMockAgentIsCallHistoryEnabled:Symbol(`mock agent is call history enabled`),kMockAgentAcceptsNonStandardSearchParameters:Symbol(`mock agent accepts non standard search parameters`),kMockCallHistoryAddLog:Symbol(`mock call history add log`),kTotalDispatchCount:Symbol(`total dispatch count`)}})),uo=n(((e,n)=>{let{MockNotMatchedError:r}=co(),{kDispatches:i,kMockAgent:a,kOriginalDispatch:o,kOrigin:s,kGetNetConnect:c,kTotalDispatchCount:l}=lo(),{serializePathWithQuery:u}=q(),{STATUS_CODES:d}=t(`node:http`),{types:{isPromise:f}}=t(`node:util`),{InvalidArgumentError:p}=K();function m(e,t){return typeof e==`string`?e===t:e instanceof RegExp?e.test(t):typeof e==`function`?e(t)===!0:!1}function h(e){return Object.fromEntries(Object.entries(e).map(([e,t])=>[e.toLocaleLowerCase(),t]))}function g(e,t){if(Array.isArray(e)){for(let n=0;n<e.length;n+=2)if(e[n].toLocaleLowerCase()===t.toLocaleLowerCase())return e[n+1];return}else if(typeof e.get==`function`)return e.get(t);else return h(e)[t.toLocaleLowerCase()]}function _(e){let t=e.slice(),n=[];for(let e=0;e<t.length;e+=2)n.push([t[e],t[e+1]]);return Object.fromEntries(n)}function v(e,t){if(typeof e.headers==`function`)return Array.isArray(t)&&(t=_(t)),e.headers(t?h(t):{});if(e.headers===void 0)return!0;if(typeof t!=`object`||typeof e.headers!=`object`)return!1;for(let[n,r]of Object.entries(e.headers))if(!m(r,g(t,n)))return!1;return!0}function y(e){if(typeof e!=`string`)return e;let t=new URLSearchParams(e),n=new URLSearchParams;for(let[e,r]of t.entries()){if(e=e.replace(`[]`,``),/^(['"]).*\1$/.test(r)){n.append(e,r);continue}if(r.includes(`,`)){let t=r.split(`,`);for(let r of t)n.append(e,r);continue}n.append(e,r)}return n}function b(e){if(typeof e!=`string`)return e;let t=e.split(`?`,3);if(t.length!==2)return e;let n=new URLSearchParams(t.pop());return n.sort(),[...t,n.toString()].join(`?`)}function x(e,{path:t,method:n,body:r,headers:i}){let a=m(e.path,t),o=m(e.method,n),s=e.body===void 0?!0:m(e.body,r),c=v(e,i);return a&&o&&s&&c}function S(e){return Buffer.isBuffer(e)||e instanceof Uint8Array||e instanceof ArrayBuffer?e:typeof e==`object`?JSON.stringify(e):e?e.toString():``}function C(e,t){let n=t.query?u(t.path,t.query):t.path,i=typeof n==`string`?b(n):n,a=E(i),o=e.filter(({consumed:e})=>!e).filter(({path:e,ignoreTrailingSlash:t})=>t?m(E(b(e)),a):m(b(e),i));if(o.length===0)throw new r(`Mock dispatch not matched for path '${i}'`);if(o=o.filter(({method:e})=>m(e,t.method)),o.length===0)throw new r(`Mock dispatch not matched for method '${t.method}' on path '${i}'`);if(o=o.filter(({body:e})=>e===void 0?!0:m(e,t.body)),o.length===0)throw new r(`Mock dispatch not matched for body '${t.body}' on path '${i}'`);if(o=o.filter(e=>v(e,t.headers)),o.length===0)throw new r(`Mock dispatch not matched for headers '${typeof t.headers==`object`?JSON.stringify(t.headers):t.headers}' on path '${i}'`);return o[0]}function w(e,t,n,r){let i={timesInvoked:0,times:1,persist:!1,consumed:!1,...r},a=typeof n==`function`?{callback:n}:{...n},o={...i,...t,pending:!0,data:{error:null,...a}};return e.push(o),e[l]=(e[l]||0)+1,o}function T(e,t){let n=e.findIndex(e=>e.consumed?x(e,t):!1);n!==-1&&e.splice(n,1)}function E(e){for(;e.endsWith(`/`);)e=e.slice(0,-1);return e.length===0&&(e=`/`),e}function D(e){let{path:t,method:n,body:r,headers:i,query:a}=e;return{path:t,method:n,body:r,headers:i,query:a}}function O(e){let t=Object.keys(e),n=[];for(let r=0;r<t.length;++r){let i=t[r],a=e[i],o=Buffer.from(`${i}`);if(Array.isArray(a))for(let e=0;e<a.length;++e)n.push(o,Buffer.from(`${a[e]}`));else n.push(o,Buffer.from(`${a}`))}return n}function k(e){return d[e]||`unknown`}async function A(e){let t=[];for await(let n of e)t.push(n);return Buffer.concat(t).toString(`utf8`)}function j(e,t){let n=D(e),r=C(this[i],n);r.timesInvoked++,r.data.callback&&(r.data={...r.data,...r.data.callback(e)});let{data:{statusCode:a,data:o,headers:s,trailers:c,error:l},delay:u,persist:d}=r,{timesInvoked:p,times:m}=r;if(r.consumed=!d&&p>=m,r.pending=p<m,l!==null)return T(this[i],n),t.onError(l),!0;let h=!1,g=null;function v(e){h||(h=!0,g!==null&&(clearTimeout(g),g=null),t.onError(e))}t.onConnect?.(v,null),typeof u==`number`&&u>0?g=setTimeout(()=>{g=null,y(this[i])},u):y(this[i]);function y(r,i=o){if(h)return;let l=Array.isArray(e.headers)?_(e.headers):e.headers,u=typeof i==`function`?i({...e,headers:l}):i;if(f(u))return u.then(e=>y(r,e));if(h)return;let d=S(u),p=O(s),m=O(c);t.onHeaders?.(a,p,b,k(a)),t.onData?.(Buffer.from(d)),t.onComplete?.(m),T(r,n)}function b(){}return!0}function M(){let e=this[a],t=this[s],n=this[o];return function(a,o){if(e.isMockActive)try{j.call(this,a,o)}catch(s){if(s.code===`UND_MOCK_ERR_MOCK_NOT_MATCHED`){let u=e[c](),d=this[i][l]||this[i].length,f=`, ${this[i].filter(({consumed:e})=>!e).length} interceptor(s) remaining out of ${d} defined`;if(u===!1)throw new r(`${s.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)${f}`);if(N(u,t))n.call(this,a,o);else throw new r(`${s.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)${f}`)}else throw s}else n.call(this,a,o)}}function N(e,t){let n=new URL(t);return e===!0?!0:!!(Array.isArray(e)&&e.some(e=>m(e,n.host)))}function P(e){return typeof e!=`string`&&!(e instanceof URL)?e:e instanceof URL?e.origin:e.toLowerCase()}function F(e){let{agent:t,...n}=e;if(`enableCallHistory`in n&&typeof n.enableCallHistory!=`boolean`)throw new p(`options.enableCallHistory must to be a boolean`);if(`acceptNonStandardSearchParameters`in n&&typeof n.acceptNonStandardSearchParameters!=`boolean`)throw new p(`options.acceptNonStandardSearchParameters must to be a boolean`);if(`ignoreTrailingSlash`in n&&typeof n.ignoreTrailingSlash!=`boolean`)throw new p(`options.ignoreTrailingSlash must to be a boolean`);return n}n.exports={getResponseData:S,getMockDispatch:C,addMockDispatch:w,deleteMockDispatch:T,buildKey:D,generateKeyValues:O,matchValue:m,getResponse:A,getStatusText:k,mockDispatch:j,buildMockDispatch:M,checkNetConnect:N,buildAndValidateMockOptions:F,getHeaderByName:g,buildHeadersFromArray:_,normalizeSearchParams:y,normalizeOrigin:P}})),fo=n(((e,t)=>{let{getResponseData:n,buildKey:r,addMockDispatch:i}=uo(),{kDispatches:a,kDispatchKey:o,kDefaultHeaders:s,kDefaultTrailers:c,kContentLength:l,kMockDispatch:u,kIgnoreTrailingSlash:d}=lo(),{InvalidArgumentError:f}=K(),{serializePathWithQuery:p}=q();var m=class{constructor(e){this[u]=e}delay(e){if(typeof e!=`number`||!Number.isInteger(e)||e<=0)throw new f(`waitInMs must be a valid integer > 0`);return this[u].delay=e,this}persist(){return this[u].persist=!0,this}times(e){if(typeof e!=`number`||!Number.isInteger(e)||e<=0)throw new f(`repeatTimes must be a valid integer > 0`);return this[u].times=e,this}},h=class{constructor(e,t){if(typeof e!=`object`)throw new f(`opts must be an object`);if(e.path===void 0)throw new f(`opts.path must be defined`);if(e.method===void 0&&(e.method=`GET`),typeof e.path==`string`)if(e.query)e.path=p(e.path,e.query);else{let t=new URL(e.path,`data://`);e.path=t.pathname+t.search}typeof e.method==`string`&&(e.method=e.method.toUpperCase()),this[o]=r(e),this[a]=t,this[d]=e.ignoreTrailingSlash??!1,this[s]={},this[c]={},this[l]=!1}createMockScopeDispatchData({statusCode:e,data:t,responseOptions:r}){let i=n(t),a=this[l]?{"content-length":i.length}:{};return{statusCode:e,data:t,headers:{...this[s],...a,...r.headers},trailers:{...this[c],...r.trailers}}}validateReplyParameters(e){if(e.statusCode===void 0)throw new f(`statusCode must be defined`);if(typeof e.responseOptions!=`object`||e.responseOptions===null)throw new f(`responseOptions must be an object`)}reply(e){if(typeof e==`function`)return new m(i(this[a],this[o],t=>{let n=e(t);if(typeof n!=`object`||!n)throw new f(`reply options callback must return an object`);let r={data:``,responseOptions:{},...n};return this.validateReplyParameters(r),{...this.createMockScopeDispatchData(r)}},{ignoreTrailingSlash:this[d]}));let t={statusCode:e,data:arguments[1]===void 0?``:arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(t);let n=this.createMockScopeDispatchData(t);return new m(i(this[a],this[o],n,{ignoreTrailingSlash:this[d]}))}replyWithError(e){if(e===void 0)throw new f(`error must be defined`);return new m(i(this[a],this[o],{error:e},{ignoreTrailingSlash:this[d]}))}defaultReplyHeaders(e){if(e===void 0)throw new f(`headers must be defined`);return this[s]=e,this}defaultReplyTrailers(e){if(e===void 0)throw new f(`trailers must be defined`);return this[c]=e,this}replyContentLength(){return this[l]=!0,this}};t.exports.MockInterceptor=h,t.exports.MockScope=m})),po=n(((e,n)=>{let{promisify:r}=t(`node:util`),i=za(),{buildMockDispatch:a}=uo(),{kDispatches:o,kMockAgent:s,kClose:c,kOriginalClose:l,kOrigin:u,kOriginalDispatch:d,kConnected:f,kIgnoreTrailingSlash:p}=lo(),{MockInterceptor:m}=fo(),h=la(),{InvalidArgumentError:g}=K();n.exports=class extends i{constructor(e,t){if(!t||!t.agent||typeof t.agent.dispatch!=`function`)throw new g(`Argument opts.agent must implement Agent`);super(e,t),this[s]=t.agent,this[u]=e,this[p]=t.ignoreTrailingSlash??!1,this[o]=[],this[f]=1,this[d]=this.dispatch,this[l]=this.close.bind(this),this.dispatch=a.call(this),this.close=this[c]}get[h.kConnected](){return this[f]}intercept(e){return new m(e&&{ignoreTrailingSlash:this[p],...e},this[o])}cleanMocks(){this[o]=[]}async[c](){await r(this[l])(),this[f]=0,this[s][h.kClients].delete(this[u])}}})),mo=n(((e,t)=>{let{kMockCallHistoryAddLog:n}=lo(),{InvalidArgumentError:r}=K();function i(e,t,n,i,a){switch(t.operator){case`OR`:return i.push(...n(e,a)),i;case`AND`:return n(e,i);default:throw new r(`options.operator must to be a case insensitive string equal to 'OR' or 'AND'`)}}function a(e={}){let t={};if(`operator`in e){if(typeof e.operator!=`string`||e.operator.toUpperCase()!==`OR`&&e.operator.toUpperCase()!==`AND`)throw new r(`options.operator must to be a case insensitive string equal to 'OR' or 'AND'`);return{...t,operator:e.operator.toUpperCase()}}return t}function o(e){return(t,n)=>{if(typeof t==`string`||t==null)return n.filter(n=>n[e]===t);if(t instanceof RegExp)return n.filter(n=>t.test(n[e]));throw new r(`${e} parameter should be one of string, regexp, undefined or null`)}}function s(e){try{let t=new URL(e.path,e.origin);return t.search.length===0&&(t.search=new URLSearchParams(e.query).toString()),t}catch(e){throw new r(`An error occurred when computing MockCallHistoryLog.url`,{cause:e})}}var c=class{constructor(e={}){this.body=e.body,this.headers=e.headers,this.method=e.method;let t=s(e);this.fullUrl=t.toString(),this.origin=t.origin,this.path=t.pathname,this.searchParams=Object.fromEntries(t.searchParams),this.protocol=t.protocol,this.host=t.host,this.port=t.port,this.hash=t.hash}toMap(){return new Map([[`protocol`,this.protocol],[`host`,this.host],[`port`,this.port],[`origin`,this.origin],[`path`,this.path],[`hash`,this.hash],[`searchParams`,this.searchParams],[`fullUrl`,this.fullUrl],[`method`,this.method],[`body`,this.body],[`headers`,this.headers]])}toString(){let e={betweenKeyValueSeparator:`->`,betweenPairSeparator:`|`},t=``;return this.toMap().forEach((n,r)=>{(typeof n==`string`||n==null)&&(t=`${t}${r}${e.betweenKeyValueSeparator}${n}${e.betweenPairSeparator}`),(typeof n==`object`&&n||Array.isArray(n))&&(t=`${t}${r}${e.betweenKeyValueSeparator}${JSON.stringify(n)}${e.betweenPairSeparator}`)}),t.slice(0,-1)}},l=class{logs=[];calls(){return this.logs}firstCall(){return this.logs.at(0)}lastCall(){return this.logs.at(-1)}nthCall(e){if(typeof e!=`number`)throw new r(`nthCall must be called with a number`);if(!Number.isInteger(e))throw new r(`nthCall must be called with an integer`);if(Math.sign(e)!==1)throw new r(`nthCall must be called with a positive value. use firstCall or lastCall instead`);return this.logs.at(e-1)}filterCalls(e,t){if(this.logs.length===0)return this.logs;if(typeof e==`function`)return this.logs.filter(e);if(e instanceof RegExp)return this.logs.filter(t=>e.test(t.toString()));if(typeof e==`object`&&e){if(Object.keys(e).length===0)return this.logs;let n={operator:`OR`,...a(t)},r=n.operator===`AND`?this.logs:[];return`protocol`in e&&(r=i(e.protocol,n,this.filterCallsByProtocol,r,this.logs)),`host`in e&&(r=i(e.host,n,this.filterCallsByHost,r,this.logs)),`port`in e&&(r=i(e.port,n,this.filterCallsByPort,r,this.logs)),`origin`in e&&(r=i(e.origin,n,this.filterCallsByOrigin,r,this.logs)),`path`in e&&(r=i(e.path,n,this.filterCallsByPath,r,this.logs)),`hash`in e&&(r=i(e.hash,n,this.filterCallsByHash,r,this.logs)),`fullUrl`in e&&(r=i(e.fullUrl,n,this.filterCallsByFullUrl,r,this.logs)),`method`in e&&(r=i(e.method,n,this.filterCallsByMethod,r,this.logs)),[...new Set(r)]}throw new r(`criteria parameter should be one of function, regexp, or object`)}filterCallsByProtocol=o.call(this,`protocol`);filterCallsByHost=o.call(this,`host`);filterCallsByPort=o.call(this,`port`);filterCallsByOrigin=o.call(this,`origin`);filterCallsByPath=o.call(this,`path`);filterCallsByHash=o.call(this,`hash`);filterCallsByFullUrl=o.call(this,`fullUrl`);filterCallsByMethod=o.call(this,`method`);clear(){this.logs=[]}[n](e){let t=new c(e);return this.logs.push(t),t}*[Symbol.iterator](){for(let e of this.calls())yield e}};t.exports.MockCallHistory=l,t.exports.MockCallHistoryLog=c})),ho=n(((e,n)=>{let{promisify:r}=t(`node:util`),i=Ha(),{buildMockDispatch:a}=uo(),{kDispatches:o,kMockAgent:s,kClose:c,kOriginalClose:l,kOrigin:u,kOriginalDispatch:d,kConnected:f,kIgnoreTrailingSlash:p}=lo(),{MockInterceptor:m}=fo(),h=la(),{InvalidArgumentError:g}=K();n.exports=class extends i{constructor(e,t){if(!t||!t.agent||typeof t.agent.dispatch!=`function`)throw new g(`Argument opts.agent must implement Agent`);super(e,t),this[s]=t.agent,this[u]=e,this[p]=t.ignoreTrailingSlash??!1,this[o]=[],this[f]=1,this[d]=this.dispatch,this[l]=this.close.bind(this),this.dispatch=a.call(this),this.close=this[c]}get[h.kConnected](){return this[f]}intercept(e){return new m(e&&{ignoreTrailingSlash:this[p],...e},this[o])}cleanMocks(){this[o]=[]}async[c](){await r(this[l])(),this[f]=0,this[s][h.kClients].delete(this[u])}}})),go=n(((e,n)=>{let{Transform:r}=t(`node:stream`),{Console:i}=t(`node:console`),a=process.versions.icu?`✅`:`Y `,o=process.versions.icu?`❌`:`N `;n.exports=class{constructor({disableColors:e}={}){this.transform=new r({transform(e,t,n){n(null,e)}}),this.logger=new i({stdout:this.transform,inspectOptions:{colors:!e&&!process.env.CI}})}format(e){let t=e.map(({method:e,path:t,data:{statusCode:n},persist:r,times:i,timesInvoked:s,origin:c})=>({Method:e,Origin:c,Path:t,"Status code":n,Persistent:r?a:o,Invocations:s,Remaining:r?1/0:i-s}));return this.logger.table(t),this.transform.read().toString()}}})),_o=n(((e,t)=>{let{kClients:n}=la(),r=Ga(),{kAgent:i,kMockAgentSet:a,kMockAgentGet:o,kDispatches:s,kIsMockActive:c,kNetConnect:l,kGetNetConnect:u,kOptions:d,kFactory:f,kMockAgentRegisterCallHistory:p,kMockAgentIsCallHistoryEnabled:m,kMockAgentAddCallHistoryLog:h,kMockAgentMockCallHistoryInstance:g,kMockAgentAcceptsNonStandardSearchParameters:_,kMockCallHistoryAddLog:v,kIgnoreTrailingSlash:y}=lo(),b=po(),x=ho(),{matchValue:S,normalizeSearchParams:C,buildAndValidateMockOptions:w,normalizeOrigin:T}=uo(),{InvalidArgumentError:E,UndiciError:D}=K(),O=_a(),k=go(),{MockCallHistory:A}=mo();t.exports=class extends O{constructor(e={}){super(e);let t=w(e);if(this[l]=!0,this[c]=!0,this[m]=t.enableCallHistory??!1,this[_]=t.acceptNonStandardSearchParameters??!1,this[y]=t.ignoreTrailingSlash??!1,e?.agent&&typeof e.agent.dispatch!=`function`)throw new E(`Argument opts.agent must implement Agent`);let a=e?.agent?e.agent:new r(e);this[i]=a,this[n]=a[n],this[d]=t,this[m]&&this[p]()}get(e){let t=T(e),n=this[y]?t.replace(/\/$/,``):t,r=this[o](n);return r||(r=this[f](n),this[a](n,r)),r}dispatch(e,t){e.origin=T(e.origin),this.get(e.origin),this[h](e);let n=this[_],r={...e};if(n&&r.path){let[e,t]=r.path.split(`?`);r.path=`${e}?${C(t,n)}`}return this[i].dispatch(r,t)}async close(){this.clearCallHistory(),await this[i].close(),this[n].clear()}deactivate(){this[c]=!1}activate(){this[c]=!0}enableNetConnect(e){if(typeof e==`string`||typeof e==`function`||e instanceof RegExp)Array.isArray(this[l])?this[l].push(e):this[l]=[e];else if(e===void 0)this[l]=!0;else throw new E(`Unsupported matcher. Must be one of String|Function|RegExp.`)}disableNetConnect(){this[l]=!1}enableCallHistory(){return this[m]=!0,this}disableCallHistory(){return this[m]=!1,this}getCallHistory(){return this[g]}clearCallHistory(){this[g]!==void 0&&this[g].clear()}get isMockActive(){return this[c]}[p](){this[g]===void 0&&(this[g]=new A)}[h](e){this[m]&&(this[p](),this[g][v](e))}[a](e,t){this[n].set(e,{count:0,dispatcher:t})}[f](e){let t=Object.assign({agent:this},this[d]);return this[d]&&this[d].connections===1?new b(e,t):new x(e,t)}[o](e){let t=this[n].get(e);if(t?.dispatcher)return t.dispatcher;if(typeof e!=`string`){let t=this[f](`http://localhost:9999`);return this[a](e,t),t}for(let[t,r]of Array.from(this[n]))if(r&&typeof t!=`string`&&S(t,e)){let t=this[f](e);return this[a](e,t),t[s]=r.dispatcher[s],t}}[u](){return this[l]}pendingInterceptors(){let e=this[n];return Array.from(e.entries()).flatMap(([e,t])=>t.dispatcher[s].map(t=>({...t,origin:e}))).filter(({pending:e})=>e)}assertNoPendingInterceptors({pendingInterceptorsFormatter:e=new k}={}){let t=this.pendingInterceptors();if(t.length!==0)throw new D(t.length===1?`1 interceptor is pending:\n\n${e.format(t)}`.trim():`${t.length} interceptors are pending:\n\n${e.format(t)}`.trim())}}})),vo=n(((e,n)=>{let{InvalidArgumentError:r}=K(),{runtimeFeatures:i}=Aa();function a(e={}){let{ignoreHeaders:t=[],excludeHeaders:n=[],matchHeaders:r=[],caseSensitive:i=!1}=e;return{ignore:new Set(t.map(e=>i?e:e.toLowerCase())),exclude:new Set(n.map(e=>i?e:e.toLowerCase())),match:new Set(r.map(e=>i?e:e.toLowerCase()))}}let o=i.has(`crypto`)?t(`node:crypto`):null,s=o?.hash?e=>o.hash(`sha256`,e,`base64url`):e=>Buffer.from(e).toString(`base64url`);function c(e){return Array.isArray(e)&&(e.length&1)==0}function l(e=[]){return e.length===0?()=>!1:function(t){let n;for(let r of e)if(typeof r==`string`){if(n||=t.toLowerCase(),n.includes(r.toLowerCase()))return!0}else if(r instanceof RegExp&&r.test(t))return!0;return!1}}function u(e){let t={};if(!e)return t;if(c(e)){for(let n=0;n<e.length;n+=2){let r=e[n],i=e[n+1];if(r&&i!==void 0){let e=Buffer.isBuffer(r)?r.toString():r,n=Buffer.isBuffer(i)?i.toString():i;t[e.toLowerCase()]=n}}return t}if(e&&typeof e==`object`)for(let[n,r]of Object.entries(e))n&&typeof n==`string`&&(t[n.toLowerCase()]=Array.isArray(r)?r.join(`, `):String(r));return t}let d=[`record`,`playback`,`update`];function f(e){if(!d.includes(e))throw new r(`Invalid snapshot mode: ${e}. Must be one of: ${d.join(`, `)}`)}n.exports={createHeaderFilters:a,hashId:s,isUndiciHeaders:c,normalizeHeaders:u,isUrlExcludedFactory:l,validateSnapshotMode:f}})),yo=n(((e,n)=>{let{writeFile:r,readFile:i,mkdir:a}=t(`node:fs/promises`),{dirname:o,resolve:s}=t(`node:path`),{setTimeout:c,clearTimeout:l}=t(`node:timers`),{InvalidArgumentError:u,UndiciError:d}=K(),{hashId:f,isUrlExcludedFactory:p,normalizeHeaders:m,createHeaderFilters:h}=vo();function g(e,t,n={}){let r=new URL(e.path,e.origin),i=e._normalizedHeaders||m(e.headers);return e._normalizedHeaders||=i,{method:e.method||`GET`,url:n.matchQuery===!1?`${r.origin}${r.pathname}`:r.toString(),headers:_(i,t,n),body:n.matchBody!==!1&&e.body?String(e.body):``}}function _(e,t,n={}){if(!e||typeof e!=`object`)return{};let{caseSensitive:r=!1}=n,i={},{ignore:a,exclude:o,match:s}=t;for(let[t,n]of Object.entries(e)){let e=r?t:t.toLowerCase();o.has(e)||a.has(e)||s.size!==0&&!s.has(e)||(i[e]=n)}return i}function v(e,t,n={}){if(!e||typeof e!=`object`)return{};let{caseSensitive:r=!1}=n,i={},{exclude:a}=t;for(let[t,n]of Object.entries(e)){let e=r?t:t.toLowerCase();a.has(e)||(i[e]=n)}return i}function y(e){let t=[e.method,e.url];if(e.headers&&typeof e.headers==`object`){let n=Object.keys(e.headers).sort();for(let r of n){let n=Array.isArray(e.headers[r])?e.headers[r]:[e.headers[r]];t.push(r);for(let e of n.sort())t.push(String(e))}}return t.push(e.body),f(t.join(`|`))}n.exports={SnapshotRecorder:class{#e;#t;#n=new Map;#r;#i=1/0;#a=!1;#o;constructor(e={}){this.#r=e.snapshotPath,this.#i=e.maxSnapshots||1/0,this.#a=e.autoFlush||!1,this.flushInterval=e.flushInterval||3e4,this._flushTimer=null,this.matchOptions={matchHeaders:e.matchHeaders||[],ignoreHeaders:e.ignoreHeaders||[],excludeHeaders:e.excludeHeaders||[],matchBody:e.matchBody!==!1,matchQuery:e.matchQuery!==!1,caseSensitive:e.caseSensitive||!1},this.#o=h(this.matchOptions),this.shouldRecord=e.shouldRecord||(()=>!0),this.shouldPlayback=e.shouldPlayback||(()=>!0),this.#t=p(e.excludeUrls),this.#a&&this.#r&&this.#s()}async record(e,t){if(!this.shouldRecord(e)||this.isUrlExcluded(e))return;let n=g(e,this.#o,this.matchOptions),r=y(n),i=m(t.headers),a={statusCode:t.statusCode,headers:v(i,this.#o,this.matchOptions),body:Buffer.isBuffer(t.body)?t.body.toString(`base64`):Buffer.from(String(t.body||``)).toString(`base64`),trailers:t.trailers};if(this.#n.size>=this.#i&&!this.#n.has(r)){let e=this.#n.keys().next().value;this.#n.delete(e)}let o=this.#n.get(r);o&&o.responses?(o.responses.push(a),o.timestamp=new Date().toISOString()):this.#n.set(r,{request:n,responses:[a],callCount:0,timestamp:new Date().toISOString()}),this.#a&&this.#r&&this.#l()}isUrlExcluded(e){let t=new URL(e.path,e.origin).toString();return this.#t(t)}findSnapshot(e){if(!this.shouldPlayback(e)||this.isUrlExcluded(e))return;let t=y(g(e,this.#o,this.matchOptions)),n=this.#n.get(t);if(!n)return;let r=n.callCount||0,i=Math.min(r,n.responses.length-1);return n.callCount=r+1,{...n,response:n.responses[i]}}async loadSnapshots(e){let t=e||this.#r;if(!t)throw new u(`Snapshot path is required`);try{let e=await i(s(t),`utf8`),n=JSON.parse(e);if(Array.isArray(n)){this.#n.clear();for(let{hash:e,snapshot:t}of n)this.#n.set(e,t)}else this.#n=new Map(Object.entries(n))}catch(e){if(e.code===`ENOENT`)this.#n.clear();else throw new d(`Failed to load snapshots from ${t}`,{cause:e})}}async saveSnapshots(e){let t=e||this.#r;if(!t)throw new u(`Snapshot path is required`);let n=s(t);await a(o(n),{recursive:!0});let i=Array.from(this.#n.entries()).map(([e,t])=>({hash:e,snapshot:t}));await r(n,JSON.stringify(i,null,2),{flush:!0})}clear(){this.#n.clear()}getSnapshots(){return Array.from(this.#n.values())}size(){return this.#n.size}resetCallCounts(){for(let e of this.#n.values())e.callCount=0}deleteSnapshot(e){let t=y(g(e,this.#o,this.matchOptions));return this.#n.delete(t)}getSnapshotInfo(e){let t=y(g(e,this.#o,this.matchOptions)),n=this.#n.get(t);return n?{hash:t,request:n.request,responseCount:n.responses?n.responses.length:+!!n.response,callCount:n.callCount||0,timestamp:n.timestamp}:null}replaceSnapshots(e){if(this.#n.clear(),Array.isArray(e))for(let{hash:t,snapshot:n}of e)this.#n.set(t,n);else e&&typeof e==`object`&&(this.#n=new Map(Object.entries(e)))}#s(){return this.#l()}#c(){this.#e&&=(l(this.#e),this.saveSnapshots().catch(()=>{}),null)}#l(){this.#e=c(()=>{this.saveSnapshots().catch(()=>{}),this.#a?this.#e?.refresh():this.#e=null},1e3)}destroy(){this.#c(),this.#e&&=(l(this.#e),null)}async close(){this.#r&&this.#n.size!==0&&await this.saveSnapshots(),this.destroy()}},formatRequestKey:g,createRequestHash:y,filterHeadersForMatching:_,filterHeadersForStorage:v,createHeaderFilters:h}})),bo=n(((e,t)=>{let n=Ga(),r=_o(),{SnapshotRecorder:i}=yo(),a=ga(),{InvalidArgumentError:o,UndiciError:s}=K(),{validateSnapshotMode:c}=vo(),l=Symbol(`kSnapshotRecorder`),u=Symbol(`kSnapshotMode`),d=Symbol(`kSnapshotPath`),f=Symbol(`kSnapshotLoaded`),p=Symbol(`kRealAgent`),m=!1;t.exports=class extends r{constructor(e={}){m||=(process.emitWarning(`SnapshotAgent is experimental and subject to change`,`ExperimentalWarning`),!0);let{mode:t=`record`,snapshotPath:r=null,...a}=e;if(super(a),c(t),(t===`playback`||t===`update`)&&!r)throw new o(`snapshotPath is required when mode is '${t}'`);this[u]=t,this[d]=r,this[l]=new i({snapshotPath:this[d],mode:this[u],maxSnapshots:e.maxSnapshots,autoFlush:e.autoFlush,flushInterval:e.flushInterval,matchHeaders:e.matchHeaders,ignoreHeaders:e.ignoreHeaders,excludeHeaders:e.excludeHeaders,matchBody:e.matchBody,matchQuery:e.matchQuery,caseSensitive:e.caseSensitive,shouldRecord:e.shouldRecord,shouldPlayback:e.shouldPlayback,excludeUrls:e.excludeUrls}),this[f]=!1,(this[u]===`record`||this[u]===`update`||this[u]===`playback`&&e.excludeUrls&&e.excludeUrls.length>0)&&(this[p]=new n(e)),(this[u]===`playback`||this[u]===`update`)&&this[d]&&this.loadSnapshots().catch(()=>{})}dispatch(e,t){t=a.wrap(t);let n=this[u];if(this[l].isUrlExcluded(e))return this[p].dispatch(e,t);if(n===`playback`||n===`update`){if(!this[f])return this.#e(e,t);let r=this[l].findSnapshot(e);if(r)return this.#n(r,t);if(n===`update`)return this.#t(e,t);{let n=new s(`No snapshot found for ${e.method||`GET`} ${e.path}`);if(t.onError){t.onError(n);return}throw n}}else if(n===`record`)return this.#t(e,t)}async#e(e,t){return await this.loadSnapshots(),this.dispatch(e,t)}#t(e,t){let n={statusCode:null,headers:{},trailers:{},body:[]},r=this;return this[p].dispatch(e,{onRequestStart(e,n){return t.onRequestStart(e,{...n,history:this.history})},onRequestUpgrade(e,n,r,i){return t.onRequestUpgrade(e,n,r,i)},onResponseStart(e,r,i,a){return n.statusCode=r,n.headers=i,t.onResponseStart(e,r,i,a)},onResponseData(e,r){return n.body.push(r),t.onResponseData(e,r)},onResponseEnd(i,a){n.trailers=a;let o=Buffer.concat(n.body);r[l].record(e,{statusCode:n.statusCode,headers:n.headers,body:o,trailers:n.trailers}).then(()=>t.onResponseEnd(i,a)).catch(e=>t.onResponseError(i,e))}})}#n(e,t){try{let{response:n}=e,r={pause(){},resume(){},abort(e){this.aborted=!0,this.reason=e},aborted:!1,paused:!1};t.onRequestStart(r),t.onResponseStart(r,n.statusCode,n.headers);let i=Buffer.from(n.body,`base64`);t.onResponseData(r,i),t.onResponseEnd(r,n.trailers)}catch(e){t.onError?.(e)}}async loadSnapshots(e){await this[l].loadSnapshots(e||this[d]),this[f]=!0,this[u]===`playback`&&this.#r()}async saveSnapshots(e){return this[l].saveSnapshots(e||this[d])}#r(){for(let e of this[l].getSnapshots()){let{request:t,responses:n,response:r}=e,i=new URL(t.url),a=this.get(i.origin),o=n?n[0]:r;o&&a.intercept({path:i.pathname+i.search,method:t.method,headers:t.headers,body:t.body}).reply(o.statusCode,o.body,{headers:o.headers,trailers:o.trailers}).persist()}}getRecorder(){return this[l]}getMode(){return this[u]}clearSnapshots(){this[l].clear()}resetCallCounts(){this[l].resetCallCounts()}deleteSnapshot(e){return this[l].deleteSnapshot(e)}getSnapshotInfo(e){return this[l].getSnapshotInfo(e)}replaceSnapshots(e){this[l].replaceSnapshots(e)}async close(){await this[l].close(),await this[p]?.close(),await super.close()}}})),xo=n(((e,t)=>{let n=Symbol.for(`undici.globalDispatcher.2`),r=Symbol.for(`undici.globalDispatcher.1`),{InvalidArgumentError:i}=K(),a=Ga();s()===void 0&&o(new a);function o(e){if(!e||typeof e.dispatch!=`function`)throw new i(`Argument agent must implement Agent`);Object.defineProperty(globalThis,n,{value:e,writable:!0,enumerable:!1,configurable:!1}),Object.defineProperty(globalThis,r,{value:e,writable:!0,enumerable:!1,configurable:!1})}function s(){return globalThis[r]}t.exports={setGlobalDispatcher:o,getGlobalDispatcher:s,installedExports:[`fetch`,`Headers`,`Response`,`Request`,`FormData`,`WebSocket`,`CloseEvent`,`ErrorEvent`,`MessageEvent`,`EventSource`]}})),So=n(((e,n)=>{let r=t(`node:assert`),i=ga();n.exports=class{#e;#t=!1;#n=!1;#r=!1;constructor(e){if(typeof e!=`object`||!e)throw TypeError(`handler must be an object`);this.#e=i.wrap(e)}onRequestStart(...e){this.#e.onRequestStart?.(...e)}onRequestUpgrade(...e){return r(!this.#t),r(!this.#n),this.#e.onRequestUpgrade?.(...e)}onResponseStart(...e){return r(!this.#t),r(!this.#n),r(!this.#r),this.#r=!0,this.#e.onResponseStart?.(...e)}onResponseData(...e){return r(!this.#t),r(!this.#n),this.#e.onResponseData?.(...e)}onResponseEnd(...e){return r(!this.#t),r(!this.#n),this.#t=!0,this.#e.onResponseEnd?.(...e)}onResponseError(...e){return this.#n=!0,this.#e.onResponseError?.(...e)}onBodySent(){}}})),Co=n(((e,n)=>{let r=q(),{kBodyUsed:i}=la(),a=t(`node:assert`),{InvalidArgumentError:o}=K(),s=t(`node:events`),c=[300,301,302,303,307,308],l=Symbol(`body`),u=()=>{};var d=class{constructor(e){this[l]=e,this[i]=!1}async*[Symbol.asyncIterator](){a(!this[i],`disturbed`),this[i]=!0,yield*this[l]}},f=class e{static buildDispatch(t,n){if(n!=null&&(!Number.isInteger(n)||n<0))throw new o(`maxRedirections must be a positive number`);let r=t.dispatch.bind(t);return(t,i)=>r(t,new e(r,n,t,i))}constructor(e,t,n,c){if(t!=null&&(!Number.isInteger(t)||t<0))throw new o(`maxRedirections must be a positive number`);this.dispatch=e,this.location=null;let{maxRedirections:l,...u}=n;this.opts=u,this.maxRedirections=t,this.handler=c,this.history=[],r.isStream(this.opts.body)?(r.bodyLength(this.opts.body)===0&&this.opts.body.on(`data`,function(){a(!1)}),typeof this.opts.body.readableDidRead!=`boolean`&&(this.opts.body[i]=!1,s.prototype.on.call(this.opts.body,`data`,function(){this[i]=!0}))):(this.opts.body&&typeof this.opts.body.pipeTo==`function`||this.opts.body&&typeof this.opts.body!=`string`&&!ArrayBuffer.isView(this.opts.body)&&r.isIterable(this.opts.body)&&!r.isFormDataLike(this.opts.body))&&(this.opts.body=new d(this.opts.body))}onRequestStart(e,t){this.handler.onRequestStart?.(e,{...t,history:this.history})}onRequestUpgrade(e,t,n,r){this.handler.onRequestUpgrade?.(e,t,n,r)}onResponseStart(e,t,n,i){if(this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections)throw Error(`max redirects`);if((t===301||t===302)&&this.opts.method===`POST`&&(this.opts.method=`GET`,r.isStream(this.opts.body)&&r.destroy(this.opts.body.on(`error`,u)),this.opts.body=null),t===303&&this.opts.method!==`HEAD`&&(this.opts.method=`GET`,r.isStream(this.opts.body)&&r.destroy(this.opts.body.on(`error`,u)),this.opts.body=null),this.location=this.history.length>=this.maxRedirections||r.isDisturbed(this.opts.body)||c.indexOf(t)===-1?null:n.location,this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location){this.handler.onResponseStart?.(e,t,n,i);return}let{origin:a,pathname:s,search:l}=r.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),d=l?`${s}${l}`:s,f=`${a}${d}`;for(let e of this.history)if(e.toString()===f)throw new o(`Redirect loop detected. Cannot redirect to ${a}. This typically happens when using a Client or Pool with cross-origin redirects. Use an Agent for cross-origin redirects.`);this.opts.headers=m(this.opts.headers,t===303,this.opts.origin!==a),this.opts.path=d,this.opts.origin=a,this.opts.query=null}onResponseData(e,t){this.location||this.handler.onResponseData?.(e,t)}onResponseEnd(e,t){this.location?this.dispatch(this.opts,this):this.handler.onResponseEnd(e,t)}onResponseError(e,t){this.handler.onResponseError?.(e,t)}};function p(e,t,n){if(e.length===4)return r.headerNameToString(e)===`host`;if(t&&r.headerNameToString(e).startsWith(`content-`))return!0;if(n&&(e.length===13||e.length===6||e.length===19)){let t=r.headerNameToString(e);return t===`authorization`||t===`cookie`||t===`proxy-authorization`}return!1}function m(e,t,n){let i=[];if(Array.isArray(e))for(let r=0;r<e.length;r+=2)p(e[r],t,n)||i.push(e[r],e[r+1]);else if(e&&typeof e==`object`){let a=r.hasSafeIterator(e)?e:Object.entries(e);for(let[e,r]of a)p(e,t,n)||i.push(e,r)}else a(e==null,`headers must be an object or an array`);return i}n.exports=f})),wo=n(((e,t)=>{let n=Co();function r({maxRedirections:e}={}){return t=>function(r,i){let{maxRedirections:a=e,...o}=r;if(a==null||a===0)return t(r,i);let s={...o};return t(s,new n(t,a,s,i))}}t.exports=r})),To=n(((e,t)=>{let n=So(),{ResponseError:r}=K();var i=class extends n{#e;#t;#n;#r;#i;constructor(e,{handler:t}){super(t)}#a(e){return(this.#t??``).indexOf(e)===0}onRequestStart(e,t){return this.#e=0,this.#t=null,this.#n=null,this.#r=null,this.#i=``,super.onRequestStart(e,t)}onResponseStart(e,t,n,r){if(this.#e=t,this.#r=n,this.#t=n[`content-type`],this.#e<400)return super.onResponseStart(e,t,n,r);(this.#a(`application/json`)||this.#a(`text/plain`))&&(this.#n=new TextDecoder(`utf-8`))}onResponseData(e,t){if(this.#e<400)return super.onResponseData(e,t);this.#i+=this.#n?.decode(t,{stream:!0})??``}onResponseEnd(e,t){if(this.#e>=400){if(this.#i+=this.#n?.decode(void 0,{stream:!1})??``,this.#a(`application/json`))try{this.#i=JSON.parse(this.#i)}catch{}let t,n=Error.stackTraceLimit;Error.stackTraceLimit=0;try{t=new r(`Response Error`,this.#e,{body:this.#i,headers:this.#r})}finally{Error.stackTraceLimit=n}super.onResponseError(e,t)}else super.onResponseEnd(e,t)}onResponseError(e,t){super.onResponseError(e,t)}};t.exports=()=>e=>function(t,n){return e(t,new i(t,{handler:n}))}})),Eo=n(((e,t)=>{let n=Za();t.exports=e=>t=>function(r,i){return t(r,new n({...r,retryOptions:{...e,...r.retryOptions}},{handler:i,dispatch:t}))}})),Do=n(((e,t)=>{let{InvalidArgumentError:n,RequestAbortedError:r}=K(),i=So();var a=class extends i{#e=1024*1024;#t=!1;#n=0;#r=null;aborted=!1;reason=!1;constructor({maxSize:e,signal:t},r){if(e!=null&&(!Number.isFinite(e)||e<1))throw new n(`maxSize must be a number greater than 0`);super(r),this.#e=e??this.#e}#i(e){this.aborted=!0,this.reason=e}onRequestStart(e,t){return e.abort=this.#i.bind(this),this.#r=e,super.onRequestStart(e,t)}onResponseStart(e,t,n,i){let a=n[`content-length`];if(a!=null&&a>this.#e)throw new r(`Response size (${a}) larger than maxSize (${this.#e})`);return this.aborted===!0?!0:super.onResponseStart(e,t,n,i)}onResponseError(e,t){this.#t||(t=this.#r?.reason??t,super.onResponseError(e,t))}onResponseData(e,t){return this.#n+=t.length,this.#n>=this.#e&&(this.#t=!0,this.aborted===!0?super.onResponseError(e,this.reason):super.onResponseEnd(e,{})),!0}onResponseEnd(e,t){if(!this.#t){if(this.#r.aborted===!0){super.onResponseError(e,this.reason);return}super.onResponseEnd(e,t)}}};function o({maxSize:e}={maxSize:1024*1024}){return t=>function(n,r){let{dumpMaxSize:i=e}=n;return t(n,new a({maxSize:i,signal:n.signal},r))}}t.exports=o})),Oo=n(((e,n)=>{let{isIP:r}=t(`node:net`),{lookup:i}=t(`node:dns`),a=So(),{InvalidArgumentError:o,InformationalError:s}=K(),c=2**31-1;function l(e){let t=Object.getPrototypeOf(e);return Object.prototype.hasOwnProperty.call(e,Symbol.iterator)||t!=null&&t!==Object.prototype&&typeof e[Symbol.iterator]==`function`}function u(e){return typeof e==`string`&&e.toLowerCase()===`host`}function d(e){if(e==null)return null;if(Array.isArray(e)){if(e.length===0||!Array.isArray(e[0]))return e;let t=[];for(let n of e)Array.isArray(n)&&n.length===2?t.push(n[0],n[1]):t.push(n);return t}if(typeof e==`object`&&l(e)){let t=[];for(let n of e)Array.isArray(n)&&n.length===2?t.push(n[0],n[1]):t.push(n);return t}return e}function f(e){if(e==null)return!1;if(Array.isArray(e)){if(e.length===0)return!1;for(let t=0;t<e.length;t+=2)if(u(e[t]))return!0;return!1}if(typeof e==`object`){for(let t in e)if(u(t))return!0}return!1}function p(e,t){let n=d(t);return f(n)?n:Array.isArray(n)?[`host`,e,...n]:n&&typeof n==`object`?{host:e,...n}:{host:e}}var m=class{#e=0;#t=new Map;constructor(e){this.#e=e.maxItems}get size(){return this.#t.size}get(e){return this.#t.get(e)??null}set(e,t){this.#t.set(e,t)}delete(e){this.#t.delete(e)}full(){return this.size>=this.#e}},h=class{#e=0;#t=0;dualStack=!0;affinity=null;lookup=null;pick=null;storage=null;constructor(e){this.#e=e.maxTTL,this.#t=e.maxItems,this.dualStack=e.dualStack,this.affinity=e.affinity,this.lookup=e.lookup??this.#n,this.pick=e.pick??this.#r,this.storage=e.storage??new m(e)}runLookup(e,t,n){let r=this.storage.get(e.hostname);if(r==null&&this.storage.full()){n(null,e);return}let i={affinity:this.affinity,dualStack:this.dualStack,lookup:this.lookup,pick:this.pick,...t.dns,maxTTL:this.#e,maxItems:this.#t};if(r==null)this.lookup(e,i,(t,r)=>{if(t||r==null||r.length===0){n(t??new s(`No DNS entries found`));return}this.setRecords(e,r);let a=this.storage.get(e.hostname),o=this.pick(e,a,i.affinity),c;c=typeof o.port==`number`?`:${o.port}`:e.port===``?``:`:${e.port}`,n(null,new URL(`${e.protocol}//${o.family===6?`[${o.address}]`:o.address}${c}`))});else{let a=this.pick(e,r,i.affinity);if(a==null){this.storage.delete(e.hostname),this.runLookup(e,t,n);return}let o;o=typeof a.port==`number`?`:${a.port}`:e.port===``?``:`:${e.port}`,n(null,new URL(`${e.protocol}//${a.family===6?`[${a.address}]`:a.address}${o}`))}}#n(e,t,n){i(e.hostname,{all:!0,family:this.dualStack===!1?this.affinity:0,order:`ipv4first`},(e,t)=>{if(e)return n(e);let r=new Map;for(let e of t)r.set(`${e.address}:${e.family}`,e);n(null,r.values())})}#r(e,t,n){let r=null,{records:i,offset:a}=t,o;if(this.dualStack?(n??(a==null||a===c?(t.offset=0,n=4):(t.offset++,n=(t.offset&1)==1?6:4)),o=i[n]!=null&&i[n].ips.length>0?i[n]:i[n===4?6:4]):o=i[n],o==null||o.ips.length===0)return r;o.offset==null||o.offset===c?o.offset=0:o.offset++;let s=o.offset%o.ips.length;return r=o.ips[s]??null,r==null?r:Date.now()-r.timestamp>r.ttl?(o.ips.splice(s,1),this.pick(e,t,n)):r}pickFamily(e,t){let n=this.storage.get(e.hostname)?.records;if(!n)return null;let r=n[t];if(!r)return null;r.offset==null||r.offset===c?r.offset=0:r.offset++;let i=r.offset%r.ips.length,a=r.ips[i]??null;return a==null||Date.now()-a.timestamp>a.ttl&&r.ips.splice(i,1),a}setRecords(e,t){let n=Date.now(),r={records:{4:null,6:null}},i=this.#e;for(let e of t){e.timestamp=n,typeof e.ttl==`number`?(e.ttl=Math.min(e.ttl,this.#e),i=Math.min(i,e.ttl)):e.ttl=this.#e;let t=r.records[e.family]??{ips:[]};t.ips.push(e),r.records[e.family]=t}this.storage.set(e.hostname,r,{ttl:i})}deleteRecords(e){this.storage.delete(e.hostname)}getHandler(e,t){return new g(this,e,t)}},g=class extends a{#e=null;#t=null;#n=null;#r=null;#i=null;#a=!0;constructor(e,{origin:t,handler:n,dispatch:r,newOrigin:i},a){super(n),this.#r=t,this.#i=i,this.#t={...a},this.#e=e,this.#n=r}onResponseError(e,t){switch(t.code){case`ETIMEDOUT`:case`ECONNREFUSED`:if(this.#e.dualStack){if(!this.#a){super.onResponseError(e,t);return}this.#a=!1;let n=this.#i.hostname[0]===`[`?4:6,r=this.#e.pickFamily(this.#r,n);if(r==null){super.onResponseError(e,t);return}let i;i=typeof r.port==`number`?`:${r.port}`:this.#r.port===``?``:`:${this.#r.port}`;let a={...this.#t,origin:`${this.#r.protocol}//${r.family===6?`[${r.address}]`:r.address}${i}`,headers:p(this.#r.host,this.#t.headers)};this.#n(a,this);return}super.onResponseError(e,t);break;case`ENOTFOUND`:this.#e.deleteRecords(this.#r),super.onResponseError(e,t);break;default:super.onResponseError(e,t);break}}};n.exports=e=>{if(e?.maxTTL!=null&&(typeof e?.maxTTL!=`number`||e?.maxTTL<0))throw new o(`Invalid maxTTL. Must be a positive number`);if(e?.maxItems!=null&&(typeof e?.maxItems!=`number`||e?.maxItems<1))throw new o(`Invalid maxItems. Must be a positive number and greater than zero`);if(e?.affinity!=null&&e?.affinity!==4&&e?.affinity!==6)throw new o(`Invalid affinity. Must be either 4 or 6`);if(e?.dualStack!=null&&typeof e?.dualStack!=`boolean`)throw new o(`Invalid dualStack. Must be a boolean`);if(e?.lookup!=null&&typeof e?.lookup!=`function`)throw new o(`Invalid lookup. Must be a function`);if(e?.pick!=null&&typeof e?.pick!=`function`)throw new o(`Invalid pick. Must be a function`);if(e?.storage!=null&&(typeof e?.storage?.get!=`function`||typeof e?.storage?.set!=`function`||typeof e?.storage?.full!=`function`||typeof e?.storage?.delete!=`function`))throw new o(`Invalid storage. Must be a object with methods: { get, set, full, delete }`);let t=e?.dualStack??!0,n;n=t?e?.affinity??null:e?.affinity??4;let i=new h({maxTTL:e?.maxTTL??1e4,lookup:e?.lookup??null,pick:e?.pick??null,dualStack:t,affinity:n,maxItems:e?.maxItems??1/0,storage:e?.storage});return e=>function(t,n){let a=t.origin.constructor===URL?t.origin:new URL(t.origin);return r(a.hostname)===0?(i.runLookup(a,t,(r,o)=>{if(r)return n.onResponseError(null,r);e({...t,servername:a.hostname,origin:o.origin,headers:p(a.host,t.headers)},i.getHandler({origin:a,dispatch:e,handler:n,newOrigin:o},t))}),!0):e(t,n)}}})),ko=n(((e,t)=>{let{safeHTTPMethods:n,pathHasQueryOrFragment:r,hasSafeIterator:i}=q(),{serializePathWithQuery:a}=q();function o(e){if(!e.origin)throw Error(`opts.origin is undefined`);let t=e.path||`/`;return e.query&&!r(t)&&(t=a(t,e.query)),{origin:e.origin.toString(),method:e.method,path:t,headers:e.headers}}function s(e){let t;if(e.headers==null)t={};else if(typeof e.headers==`object`)if(t={},i(e.headers))for(let n of e.headers){if(!Array.isArray(n))throw Error(`opts.headers is not a valid header map`);let[e,r]=n;if(typeof e!=`string`||typeof r!=`string`)throw Error(`opts.headers is not a valid header map`);t[e.toLowerCase()]=r}else for(let n of Object.keys(e.headers))t[n.toLowerCase()]=e.headers[n];else throw Error(`opts.headers is not an object`);return t}function c(e){if(typeof e!=`object`)throw TypeError(`expected key to be object, got ${typeof e}`);for(let t of[`origin`,`method`,`path`])if(typeof e[t]!=`string`)throw TypeError(`expected key.${t} to be string, got ${typeof e[t]}`);if(e.headers!==void 0&&typeof e.headers!=`object`)throw TypeError(`expected headers to be object, got ${typeof e}`)}function l(e){if(typeof e!=`object`)throw TypeError(`expected value to be object, got ${typeof e}`);for(let t of[`statusCode`,`cachedAt`,`staleAt`,`deleteAt`])if(typeof e[t]!=`number`)throw TypeError(`expected value.${t} to be number, got ${typeof e[t]}`);if(typeof e.statusMessage!=`string`)throw TypeError(`expected value.statusMessage to be string, got ${typeof e.statusMessage}`);if(e.headers!=null&&typeof e.headers!=`object`)throw TypeError(`expected value.rawHeaders to be object, got ${typeof e.headers}`);if(e.vary!==void 0&&typeof e.vary!=`object`)throw TypeError(`expected value.vary to be object, got ${typeof e.vary}`);if(e.etag!==void 0&&typeof e.etag!=`string`)throw TypeError(`expected value.etag to be string, got ${typeof e.etag}`)}function u(e){let t={},n;if(Array.isArray(e)){n=[];for(let t of e)n.push(...t.split(`,`))}else n=e.split(`,`);for(let e=0;e<n.length;e++){let r=n[e].toLowerCase(),i=r.indexOf(`=`),a,o;switch(i===-1?a=r.trim():(a=r.substring(0,i).trimStart(),o=r.substring(i+1)),a){case`min-fresh`:case`max-stale`:case`max-age`:case`s-maxage`:case`stale-while-revalidate`:case`stale-if-error`:{if(o===void 0||o[0]===` `)continue;o.length>=2&&o[0]===`"`&&o[o.length-1]===`"`&&(o=o.substring(1,o.length-1));let e=parseInt(o,10);if(e!==e||a===`max-age`&&a in t&&t[a]>=e)continue;t[a]=e;break}case`private`:case`no-cache`:if(o){if(o[0]===`"`){let r=[o.substring(1)],i=o[o.length-1]===`"`;if(!i)for(let t=e+1;t<n.length;t++){let e=n[t],a=e.length;if(r.push(e.trim()),a!==0&&e[a-1]===`"`){i=!0;break}}if(i){let e=r[r.length-1];e[e.length-1]===`"`&&(e=e.substring(0,e.length-1),r[r.length-1]=e);for(let e=0;e<r.length;e++)r[e]=r[e].trim();a in t?t[a]=t[a].concat(r):t[a]=r}}else{let e=o.trim();a in t?t[a]=t[a].concat(e):t[a]=[e]}break}case`public`:case`no-store`:case`must-revalidate`:case`proxy-revalidate`:case`immutable`:case`no-transform`:case`must-understand`:case`only-if-cached`:if(o)continue;t[a]=!0;break;default:continue}}return t}function d(e,t){if(typeof e==`string`&&e.includes(`*`))return t;let n={},r=typeof e==`string`?e.split(`,`):e;for(let e of r){let r=e.trim().toLowerCase();n[r]=t[r]??null}return n}function f(e){return e.length<=2?!1:e[0]===`"`&&e[e.length-1]===`"`?!(e[1]===`"`||e.startsWith(`"W/`)):e.startsWith(`W/"`)&&e[e.length-1]===`"`?e.length!==4:!1}function p(e,t=`CacheStore`){if(typeof e!=`object`||!e)throw TypeError(`expected type of ${t} to be a CacheStore, got ${e===null?`null`:typeof e}`);for(let n of[`get`,`createWriteStream`,`delete`])if(typeof e[n]!=`function`)throw TypeError(`${t} needs to have a \`${n}()\` function`)}function m(e,t=`CacheMethods`){if(!Array.isArray(e))throw TypeError(`expected type of ${t} needs to be an array, got ${e===null?`null`:typeof e}`);if(e.length===0)throw TypeError(`${t} needs to have at least one method`);for(let r of e)if(!n.includes(r))throw TypeError(`element of ${t}-array needs to be one of following values: ${n.join(`, `)}, got ${r}`)}function h(e,t){let n={};if(e.headers){let r=Object.keys(e.headers).sort();for(let i of r)t?.has(i.toLowerCase())||(n[i]=e.headers[i])}return JSON.stringify([e.origin,e.method,e.path,n])}t.exports={makeCacheKey:o,normalizeHeaders:s,assertCacheKey:c,assertCacheValue:l,parseCacheControlHeader:u,parseVaryHeader:d,isEtagUsable:f,assertCacheMethods:m,assertCacheStore:p,makeDeduplicationKey:h}})),Ao=n(((e,t)=>{function n(e){switch(e[3]){case`,`:return r(e);case` `:return i(e);default:return a(e)}}function r(e){if(e.length!==29||e[4]!==` `||e[7]!==` `||e[11]!==` `||e[16]!==` `||e[19]!==`:`||e[22]!==`:`||e[25]!==` `||e[26]!==`G`||e[27]!==`M`||e[28]!==`T`)return;let t=-1;if(e[0]===`S`&&e[1]===`u`&&e[2]===`n`)t=0;else if(e[0]===`M`&&e[1]===`o`&&e[2]===`n`)t=1;else if(e[0]===`T`&&e[1]===`u`&&e[2]===`e`)t=2;else if(e[0]===`W`&&e[1]===`e`&&e[2]===`d`)t=3;else if(e[0]===`T`&&e[1]===`h`&&e[2]===`u`)t=4;else if(e[0]===`F`&&e[1]===`r`&&e[2]===`i`)t=5;else if(e[0]===`S`&&e[1]===`a`&&e[2]===`t`)t=6;else return;let n=0;if(e[5]===`0`){let t=e.charCodeAt(6);if(t<49||t>57)return;n=t-48}else{let t=e.charCodeAt(5);if(t<49||t>51)return;let r=e.charCodeAt(6);if(r<48||r>57)return;n=(t-48)*10+(r-48)}let r=-1;if(e[8]===`J`&&e[9]===`a`&&e[10]===`n`)r=0;else if(e[8]===`F`&&e[9]===`e`&&e[10]===`b`)r=1;else if(e[8]===`M`&&e[9]===`a`)if(e[10]===`r`)r=2;else if(e[10]===`y`)r=4;else return;else if(e[8]===`J`)if(e[9]===`a`&&e[10]===`n`)r=0;else if(e[9]===`u`)if(e[10]===`n`)r=5;else if(e[10]===`l`)r=6;else return;else return;else if(e[8]===`A`)if(e[9]===`p`&&e[10]===`r`)r=3;else if(e[9]===`u`&&e[10]===`g`)r=7;else return;else if(e[8]===`S`&&e[9]===`e`&&e[10]===`p`)r=8;else if(e[8]===`O`&&e[9]===`c`&&e[10]===`t`)r=9;else if(e[8]===`N`&&e[9]===`o`&&e[10]===`v`)r=10;else if(e[8]===`D`&&e[9]===`e`&&e[10]===`c`)r=11;else return;let i=e.charCodeAt(12);if(i<48||i>57)return;let a=e.charCodeAt(13);if(a<48||a>57)return;let o=e.charCodeAt(14);if(o<48||o>57)return;let s=e.charCodeAt(15);if(s<48||s>57)return;let c=(i-48)*1e3+(a-48)*100+(o-48)*10+(s-48),l=0;if(e[17]===`0`){let t=e.charCodeAt(18);if(t<48||t>57)return;l=t-48}else{let t=e.charCodeAt(17);if(t<48||t>50)return;let n=e.charCodeAt(18);if(n<48||n>57||t===50&&n>51)return;l=(t-48)*10+(n-48)}let u=0;if(e[20]===`0`){let t=e.charCodeAt(21);if(t<48||t>57)return;u=t-48}else{let t=e.charCodeAt(20);if(t<48||t>53)return;let n=e.charCodeAt(21);if(n<48||n>57)return;u=(t-48)*10+(n-48)}let d=0;if(e[23]===`0`){let t=e.charCodeAt(24);if(t<48||t>57)return;d=t-48}else{let t=e.charCodeAt(23);if(t<48||t>53)return;let n=e.charCodeAt(24);if(n<48||n>57)return;d=(t-48)*10+(n-48)}let f=new Date(Date.UTC(c,r,n,l,u,d));return f.getUTCDay()===t?f:void 0}function i(e){if(e.length!==24||e[7]!==` `||e[10]!==` `||e[19]!==` `)return;let t=-1;if(e[0]===`S`&&e[1]===`u`&&e[2]===`n`)t=0;else if(e[0]===`M`&&e[1]===`o`&&e[2]===`n`)t=1;else if(e[0]===`T`&&e[1]===`u`&&e[2]===`e`)t=2;else if(e[0]===`W`&&e[1]===`e`&&e[2]===`d`)t=3;else if(e[0]===`T`&&e[1]===`h`&&e[2]===`u`)t=4;else if(e[0]===`F`&&e[1]===`r`&&e[2]===`i`)t=5;else if(e[0]===`S`&&e[1]===`a`&&e[2]===`t`)t=6;else return;let n=-1;if(e[4]===`J`&&e[5]===`a`&&e[6]===`n`)n=0;else if(e[4]===`F`&&e[5]===`e`&&e[6]===`b`)n=1;else if(e[4]===`M`&&e[5]===`a`)if(e[6]===`r`)n=2;else if(e[6]===`y`)n=4;else return;else if(e[4]===`J`)if(e[5]===`a`&&e[6]===`n`)n=0;else if(e[5]===`u`)if(e[6]===`n`)n=5;else if(e[6]===`l`)n=6;else return;else return;else if(e[4]===`A`)if(e[5]===`p`&&e[6]===`r`)n=3;else if(e[5]===`u`&&e[6]===`g`)n=7;else return;else if(e[4]===`S`&&e[5]===`e`&&e[6]===`p`)n=8;else if(e[4]===`O`&&e[5]===`c`&&e[6]===`t`)n=9;else if(e[4]===`N`&&e[5]===`o`&&e[6]===`v`)n=10;else if(e[4]===`D`&&e[5]===`e`&&e[6]===`c`)n=11;else return;let r=0;if(e[8]===` `){let t=e.charCodeAt(9);if(t<49||t>57)return;r=t-48}else{let t=e.charCodeAt(8);if(t<49||t>51)return;let n=e.charCodeAt(9);if(n<48||n>57)return;r=(t-48)*10+(n-48)}let i=0;if(e[11]===`0`){let t=e.charCodeAt(12);if(t<48||t>57)return;i=t-48}else{let t=e.charCodeAt(11);if(t<48||t>50)return;let n=e.charCodeAt(12);if(n<48||n>57||t===50&&n>51)return;i=(t-48)*10+(n-48)}let a=0;if(e[14]===`0`){let t=e.charCodeAt(15);if(t<48||t>57)return;a=t-48}else{let t=e.charCodeAt(14);if(t<48||t>53)return;let n=e.charCodeAt(15);if(n<48||n>57)return;a=(t-48)*10+(n-48)}let o=0;if(e[17]===`0`){let t=e.charCodeAt(18);if(t<48||t>57)return;o=t-48}else{let t=e.charCodeAt(17);if(t<48||t>53)return;let n=e.charCodeAt(18);if(n<48||n>57)return;o=(t-48)*10+(n-48)}let s=e.charCodeAt(20);if(s<48||s>57)return;let c=e.charCodeAt(21);if(c<48||c>57)return;let l=e.charCodeAt(22);if(l<48||l>57)return;let u=e.charCodeAt(23);if(u<48||u>57)return;let d=(s-48)*1e3+(c-48)*100+(l-48)*10+(u-48),f=new Date(Date.UTC(d,n,r,i,a,o));return f.getUTCDay()===t?f:void 0}function a(e){let t=-1,n=-1;if(e[0]===`S`)e[1]===`u`&&e[2]===`n`&&e[3]===`d`&&e[4]===`a`&&e[5]===`y`?(n=0,t=6):e[1]===`a`&&e[2]===`t`&&e[3]===`u`&&e[4]===`r`&&e[5]===`d`&&e[6]===`a`&&e[7]===`y`&&(n=6,t=8);else if(e[0]===`M`&&e[1]===`o`&&e[2]===`n`&&e[3]===`d`&&e[4]===`a`&&e[5]===`y`)n=1,t=6;else if(e[0]===`T`)e[1]===`u`&&e[2]===`e`&&e[3]===`s`&&e[4]===`d`&&e[5]===`a`&&e[6]===`y`?(n=2,t=7):e[1]===`h`&&e[2]===`u`&&e[3]===`r`&&e[4]===`s`&&e[5]===`d`&&e[6]===`a`&&e[7]===`y`&&(n=4,t=8);else if(e[0]===`W`&&e[1]===`e`&&e[2]===`d`&&e[3]===`n`&&e[4]===`e`&&e[5]===`s`&&e[6]===`d`&&e[7]===`a`&&e[8]===`y`)n=3,t=9;else if(e[0]===`F`&&e[1]===`r`&&e[2]===`i`&&e[3]===`d`&&e[4]===`a`&&e[5]===`y`)n=5,t=6;else return;if(e[t]!==`,`||e.length-t-1!=23||e[t+1]!==` `||e[t+4]!==`-`||e[t+8]!==`-`||e[t+11]!==` `||e[t+14]!==`:`||e[t+17]!==`:`||e[t+20]!==` `||e[t+21]!==`G`||e[t+22]!==`M`||e[t+23]!==`T`)return;let r=0;if(e[t+2]===`0`){let n=e.charCodeAt(t+3);if(n<49||n>57)return;r=n-48}else{let n=e.charCodeAt(t+2);if(n<49||n>51)return;let i=e.charCodeAt(t+3);if(i<48||i>57)return;r=(n-48)*10+(i-48)}let i=-1;if(e[t+5]===`J`&&e[t+6]===`a`&&e[t+7]===`n`)i=0;else if(e[t+5]===`F`&&e[t+6]===`e`&&e[t+7]===`b`)i=1;else if(e[t+5]===`M`&&e[t+6]===`a`&&e[t+7]===`r`)i=2;else if(e[t+5]===`A`&&e[t+6]===`p`&&e[t+7]===`r`)i=3;else if(e[t+5]===`M`&&e[t+6]===`a`&&e[t+7]===`y`)i=4;else if(e[t+5]===`J`&&e[t+6]===`u`&&e[t+7]===`n`)i=5;else if(e[t+5]===`J`&&e[t+6]===`u`&&e[t+7]===`l`)i=6;else if(e[t+5]===`A`&&e[t+6]===`u`&&e[t+7]===`g`)i=7;else if(e[t+5]===`S`&&e[t+6]===`e`&&e[t+7]===`p`)i=8;else if(e[t+5]===`O`&&e[t+6]===`c`&&e[t+7]===`t`)i=9;else if(e[t+5]===`N`&&e[t+6]===`o`&&e[t+7]===`v`)i=10;else if(e[t+5]===`D`&&e[t+6]===`e`&&e[t+7]===`c`)i=11;else return;let a=e.charCodeAt(t+9);if(a<48||a>57)return;let o=e.charCodeAt(t+10);if(o<48||o>57)return;let s=(a-48)*10+(o-48);s+=s<70?2e3:1900;let c=0;if(e[t+12]===`0`){let n=e.charCodeAt(t+13);if(n<48||n>57)return;c=n-48}else{let n=e.charCodeAt(t+12);if(n<48||n>50)return;let r=e.charCodeAt(t+13);if(r<48||r>57||n===50&&r>51)return;c=(n-48)*10+(r-48)}let l=0;if(e[t+15]===`0`){let n=e.charCodeAt(t+16);if(n<48||n>57)return;l=n-48}else{let n=e.charCodeAt(t+15);if(n<48||n>53)return;let r=e.charCodeAt(t+16);if(r<48||r>57)return;l=(n-48)*10+(r-48)}let u=0;if(e[t+18]===`0`){let n=e.charCodeAt(t+19);if(n<48||n>57)return;u=n-48}else{let n=e.charCodeAt(t+18);if(n<48||n>53)return;let r=e.charCodeAt(t+19);if(r<48||r>57)return;u=(n-48)*10+(r-48)}let d=new Date(Date.UTC(s,i,r,c,l,u));return d.getUTCDay()===n?d:void 0}t.exports={parseHttpDate:n}})),jo=n(((e,t)=>{let n=q(),{parseCacheControlHeader:r,parseVaryHeader:i,isEtagUsable:a}=ko(),{parseHttpDate:o}=Ao();function s(){}let c=[200,203,204,206,300,301,308,404,405,410,414,501],l=[206];var u=class{#e;#t;#n;#r;#i;#a;constructor({store:e,type:t,cacheByDefault:n},r,i){this.#r=e,this.#t=t,this.#n=n,this.#e=r,this.#i=i}onRequestStart(e,t){this.#a?.destroy(),this.#a=void 0,this.#i.onRequestStart?.(e,t)}onRequestUpgrade(e,t,n,r){this.#i.onRequestUpgrade?.(e,t,n,r)}onResponseStart(e,t,l,u){let g=()=>this.#i.onResponseStart?.(e,t,l,u),_=this;if(!n.safeHTTPMethods.includes(this.#e.method)&&t>=200&&t<=399){try{this.#r.delete(this.#e)?.catch?.(s)}catch{}return g()}let v=l[`cache-control`],y=l[`last-modified`]&&c.includes(t);if(!v&&!l.expires&&!y&&!this.#n)return g();let b=v?r(v):{};if(!d(this.#t,t,l,b,this.#e.headers))return g();let x=Date.now(),S=l.age?f(l.age):void 0;if(S&&S>=2147483647e3)return g();let C=typeof l.date==`string`?o(l.date):void 0,w=p(this.#t,x,S,l,C,b)??this.#n;if(w===void 0||S&&S>w)return g();let T=C?C.getTime():x,E=w+T;if(x>=E)return g();let D;if(this.#e.headers&&l.vary&&(D=i(l.vary,this.#e.headers),!D))return g();let O=m(T,b,E),k=h(l,b),A={statusCode:t,statusMessage:u,headers:k,vary:D,cacheControlDirectives:b,cachedAt:S?x-S:x,staleAt:E,deleteAt:O};if(t===304){let t=t=>{if(!t)return g();if(A.statusCode=t.statusCode,A.statusMessage=t.statusMessage,A.etag=t.etag,A.headers={...t.headers,...k},g(),this.#a=this.#r.createWriteStream(this.#e,A),!(!this.#a||!t?.body))if(typeof t.body.values==`function`){let n=t.body.values(),r=()=>{for(let t of n){let n=this.#a.write(t)===!1;if(this.#i.onResponseData?.(e,t),n)break}};this.#a.on(`error`,function(){_.#a=void 0,_.#r.delete(_.#e)}).on(`drain`,()=>{r()}).on(`close`,function(){_.#a===this&&(_.#a=void 0)}),r()}else typeof t.body.on==`function`&&(t.body.on(`data`,t=>{this.#a.write(t),this.#i.onResponseData?.(e,t)}).on(`end`,()=>{this.#a.end()}).on(`error`,()=>{this.#a=void 0,this.#r.delete(this.#e)}),this.#a.on(`error`,function(){_.#a=void 0,_.#r.delete(_.#e)}).on(`close`,function(){_.#a===this&&(_.#a=void 0)}))},n=this.#r.get(this.#e);n&&typeof n.then==`function`?n.then(t):t(n)}else{if(typeof l.etag==`string`&&a(l.etag)&&(A.etag=l.etag),this.#a=this.#r.createWriteStream(this.#e,A),!this.#a)return g();this.#a.on(`drain`,()=>e.resume()).on(`error`,function(){_.#a=void 0,_.#r.delete(_.#e)}).on(`close`,function(){_.#a===this&&(_.#a=void 0),e.resume()}),g()}}onResponseData(e,t){this.#a?.write(t)===!1&&e.pause(),this.#i.onResponseData?.(e,t)}onResponseEnd(e,t){this.#a?.end(),this.#i.onResponseEnd?.(e,t)}onResponseError(e,t){this.#a?.destroy(t),this.#a=void 0,this.#i.onResponseError?.(e,t)}};function d(e,t,n,r,i){return!(t<200||l.includes(t)||!c.includes(t)&&!n.expires&&!r.public&&r[`max-age`]===void 0&&!(r.private&&e===`private`)&&!(r[`s-maxage`]!==void 0&&e===`shared`)||r[`no-store`]||e===`shared`&&r.private===!0||n.vary?.includes(`*`)||i?.authorization&&(!r.public&&!r[`s-maxage`]&&!r[`must-revalidate`]||typeof i.authorization!=`string`||Array.isArray(r[`no-cache`])&&r[`no-cache`].includes(`authorization`)||Array.isArray(r.private)&&r.private.includes(`authorization`)))}function f(e){let t=parseInt(Array.isArray(e)?e[0]:e);return isNaN(t)?void 0:t*1e3}function p(e,t,n,r,i,a){if(e===`shared`){let e=a[`s-maxage`];if(e!==void 0)return e>0?e*1e3:void 0}let s=a[`max-age`];if(s!==void 0)return s>0?s*1e3:void 0;if(typeof r.expires==`string`){let e=o(r.expires);if(e)return t>=e.getTime()||i&&(i>=e||n!==void 0&&n>e-i)?void 0:e.getTime()-t}if(typeof r[`last-modified`]==`string`){let e=new Date(r[`last-modified`]);if(g(e))return e.getTime()>=t?void 0:(t-e.getTime())*.1}if(a.immutable)return 31536e3}function m(e,t,n){let r=-1/0,i=-1/0,a=-1/0;return t[`stale-while-revalidate`]&&(r=n+t[`stale-while-revalidate`]*1e3),t[`stale-if-error`]&&(i=n+t[`stale-if-error`]*1e3),t.immutable&&r===-1/0&&i===-1/0&&(a=e+31536e6),r===-1/0&&i===-1/0&&a===-1/0?n+(n-e):Math.max(n,r,i,a)}function h(e,t){let n=[`connection`,`proxy-authenticate`,`proxy-authentication-info`,`proxy-authorization`,`proxy-connection`,`te`,`transfer-encoding`,`upgrade`,`age`];e.connection&&(Array.isArray(e.connection)?n.push(...e.connection.map(e=>e.trim())):n.push(...e.connection.split(`,`).map(e=>e.trim()))),Array.isArray(t[`no-cache`])&&n.push(...t[`no-cache`]),Array.isArray(t.private)&&n.push(...t.private);let r;for(let t of n)e[t]&&(r??={...e},delete r[t]);return r??e}function g(e){return e instanceof Date&&Number.isFinite(e.valueOf())}t.exports=u})),Mo=n(((e,n)=>{let{Writable:r}=t(`node:stream`),{EventEmitter:i}=t(`node:events`),{assertCacheKey:a,assertCacheValue:o}=ko();var s=class extends i{#e=1024;#t=104857600;#n=5242880;#r=0;#i=0;#a=new Map;#o=!1;constructor(e){if(super(),e){if(typeof e!=`object`)throw TypeError(`MemoryCacheStore options must be an object`);if(e.maxCount!==void 0){if(typeof e.maxCount!=`number`||!Number.isInteger(e.maxCount)||e.maxCount<0)throw TypeError(`MemoryCacheStore options.maxCount must be a non-negative integer`);this.#e=e.maxCount}if(e.maxSize!==void 0){if(typeof e.maxSize!=`number`||!Number.isInteger(e.maxSize)||e.maxSize<0)throw TypeError(`MemoryCacheStore options.maxSize must be a non-negative integer`);this.#t=e.maxSize}if(e.maxEntrySize!==void 0){if(typeof e.maxEntrySize!=`number`||!Number.isInteger(e.maxEntrySize)||e.maxEntrySize<0)throw TypeError(`MemoryCacheStore options.maxEntrySize must be a non-negative integer`);this.#n=e.maxEntrySize}}}get size(){return this.#r}isFull(){return this.#r>=this.#t||this.#i>=this.#e}get(e){a(e);let t=`${e.origin}:${e.path}`,n=Date.now(),r=this.#a.get(t),i=r?c(e,r,n):null;return i==null?void 0:{statusMessage:i.statusMessage,statusCode:i.statusCode,headers:i.headers,body:i.body,vary:i.vary?i.vary:void 0,etag:i.etag,cacheControlDirectives:i.cacheControlDirectives,cachedAt:i.cachedAt,staleAt:i.staleAt,deleteAt:i.deleteAt}}createWriteStream(e,t){a(e),o(t);let n=`${e.origin}:${e.path}`,i=this,s={...e,...t,body:[],size:0};return new r({write(e,t,n){typeof e==`string`&&(e=Buffer.from(e,t)),s.size+=e.byteLength,s.size>=i.#n?this.destroy():s.body.push(e),n(null)},final(t){let r=i.#a.get(n);r||(r=[],i.#a.set(n,r));let a=c(e,r,Date.now());if(a){let e=r.indexOf(a);r.splice(e,1,s),i.#r-=a.size}else r.push(s),i.#i+=1;if(i.#r+=s.size,i.#r>i.#t||i.#i>i.#e){i.#o||=(i.emit(`maxSizeExceeded`,{size:i.#r,maxSize:i.#t,count:i.#i,maxCount:i.#e}),!0);for(let[e,t]of i.#a){for(let e of t.splice(0,t.length/2))i.#r-=e.size,--i.#i;t.length===0&&i.#a.delete(e)}i.#r<i.#t&&i.#i<i.#e&&(i.#o=!1)}t(null)}})}delete(e){if(typeof e!=`object`)throw TypeError(`expected key to be object, got ${typeof e}`);let t=`${e.origin}:${e.path}`;for(let e of this.#a.get(t)??[])this.#r-=e.size,--this.#i;this.#a.delete(t)}};function c(e,t,n){return t.find(t=>t.deleteAt>n&&t.method===e.method&&(t.vary==null||Object.keys(t.vary).every(n=>t.vary[n]===null?e.headers[n]===void 0:t.vary[n]===e.headers[n])))}n.exports=s})),No=n(((e,n)=>{let r=t(`node:assert`);n.exports=class{#e=!1;#t;#n;#r;#i;constructor(e,t,n){if(typeof e!=`function`)throw TypeError(`callback must be a function`);this.#t=e,this.#n=t,this.#i=n}onRequestStart(e,t){this.#e=!1,this.#r=t}onRequestUpgrade(e,t,n,r){this.#n.onRequestUpgrade?.(e,t,n,r)}onResponseStart(e,t,n,i){if(r(this.#t!=null),this.#e=t===304||this.#i&&t>=500&&t<=504,this.#t(this.#e,this.#r),this.#t=null,this.#e)return!0;this.#n.onRequestStart?.(e,this.#r),this.#n.onResponseStart?.(e,t,n,i)}onResponseData(e,t){if(!this.#e)return this.#n.onResponseData?.(e,t)}onResponseEnd(e,t){this.#e||this.#n.onResponseEnd?.(e,t)}onResponseError(e,t){if(!this.#e)if(this.#t&&=(this.#t(!1),null),typeof this.#n.onResponseError==`function`)this.#n.onResponseError(e,t);else throw t}}})),Po=n(((e,n)=>{let r=t(`node:assert`),{Readable:i}=t(`node:stream`),a=q(),o=jo(),s=Mo(),c=No(),{assertCacheStore:l,assertCacheMethods:u,makeCacheKey:d,normalizeHeaders:f,parseCacheControlHeader:p}=ko(),{AbortError:m}=K();function h(e,t){if(e!==void 0){if(!Array.isArray(e))throw TypeError(`expected ${t} to be an array or undefined, got ${typeof e}`);for(let n=0;n<e.length;n++){let r=e[n];if(typeof r!=`string`&&!(r instanceof RegExp))throw TypeError(`expected ${t}[${n}] to be a string or RegExp, got ${typeof r}`)}}}let g=()=>{};function _(e,t,{headers:n={}}){return!!(t?.[`no-cache`]||e.cacheControlDirectives?.[`no-cache`]&&!Array.isArray(e.cacheControlDirectives[`no-cache`])||n[`if-modified-since`]||n[`if-none-match`])}function v(e,t){let n=Date.now();return n>e.staleAt?t?.[`max-stale`]?n>e.staleAt+t[`max-stale`]*1e3:!0:t?.[`min-fresh`]?e.staleAt-n<=t[`min-fresh`]*1e3:!1}function y(e){let t=e.cacheControlDirectives?.[`stale-while-revalidate`];return t?Date.now()<=e.staleAt+t*1e3:!1}function b(e,t,n,r,i,a){if(a?.[`only-if-cached`]){let e=!1;try{if(typeof r.onConnect==`function`&&(r.onConnect(()=>{e=!0}),e)||typeof r.onHeaders==`function`&&(r.onHeaders(504,[],g,`Gateway Timeout`),e))return;typeof r.onComplete==`function`&&r.onComplete([])}catch(e){typeof r.onError==`function`&&r.onError(e)}return!0}return e(i,new o(t,n,r))}function x(e,t,n,o,s,c){let l=a.isStream(n.body)?n.body:i.from(n.body??[]);r(!l.destroyed,`stream should not be destroyed`),r(!l.readableDidRead,`stream should not be readableDidRead`);let u={resume(){l.resume()},pause(){l.pause()},get paused(){return l.isPaused()},get aborted(){return l.destroyed},get reason(){return l.errored},abort(e){l.destroy(e??new m)}};if(l.on(`error`,function(t){if(!this.readableEnded)if(typeof e.onResponseError==`function`)e.onResponseError(u,t);else throw t}).on(`close`,function(){this.errored||e.onResponseEnd?.(u,{})}),e.onRequestStart?.(u,s),l.destroyed)return;let d={...n.headers,age:String(o)};c&&(d.warning=`110 - "response is stale"`),e.onResponseStart?.(u,n.statusCode,d,n.statusMessage),t.method===`HEAD`?l.destroy():l.on(`data`,function(t){e.onResponseData?.(u,t)})}function S(e,t,n,r,i,s,l){if(!l)return b(e,t,n,r,i,s);let u=Date.now();if(u>l.deleteAt)return e(i,new o(t,n,r));let d=Math.round((u-l.cachedAt)/1e3);if(s?.[`max-age`]&&d>=s[`max-age`])return e(i,r);let f=v(l,s),p=_(l,s,i);if(f||p){if(a.isStream(i.body)&&a.bodyLength(i.body)!==0)return e(i,new o(t,n,r));if(!p&&y(l))return x(r,i,l,d,null,!0),queueMicrotask(()=>{let r={...i.headers,"if-modified-since":new Date(l.cachedAt).toUTCString()};if(l.etag&&(r[`if-none-match`]=l.etag),l.vary)for(let e in l.vary)l.vary[e]!=null&&(r[e]=l.vary[e]);e({...i,headers:r},new o(t,n,{onRequestStart(){},onRequestUpgrade(){},onResponseStart(){},onResponseData(){},onResponseEnd(){},onResponseError(){}}))}),!0;let m=!1,h=l.cacheControlDirectives[`stale-if-error`]??s?.[`stale-if-error`];h&&(m=u<l.staleAt+h*1e3);let _={...i.headers,"if-modified-since":new Date(l.cachedAt).toUTCString()};if(l.etag&&(_[`if-none-match`]=l.etag),l.vary)for(let e in l.vary)l.vary[e]!=null&&(_[e]=l.vary[e]);return e({...i,headers:_},new c((e,t)=>{e?x(r,i,l,d,t,f):a.isStream(l.body)&&l.body.on(`error`,g).destroy()},new o(t,n,r),m))}a.isStream(i.body)&&i.body.on(`error`,g).destroy(),x(r,i,l,d,null,!1)}n.exports=(e={})=>{let{store:t=new s,methods:n=[`GET`],cacheByDefault:r=void 0,type:i=`shared`,origins:o=void 0}=e;if(typeof e!=`object`||!e)throw TypeError(`expected type of opts to be an Object, got ${e===null?`null`:typeof e}`);if(l(t,`opts.store`),u(n,`opts.methods`),h(o,`opts.origins`),r!==void 0&&typeof r!=`number`)throw TypeError(`expected opts.cacheByDefault to be number or undefined, got ${typeof r}`);if(i!==void 0&&i!==`shared`&&i!==`private`)throw TypeError(`expected opts.type to be shared, private, or undefined, got ${typeof i}`);let c={store:t,methods:n,cacheByDefault:r,type:i},m=a.safeHTTPMethods.filter(e=>n.includes(e)===!1);return e=>(n,r)=>{if(!n.origin||m.includes(n.method))return e(n,r);if(o!==void 0){let t=n.origin.toString().toLowerCase(),i=!1;for(let e=0;e<o.length;e++){let n=o[e];if(typeof n==`string`){if(n.toLowerCase()===t){i=!0;break}}else if(n.test(t)){i=!0;break}}if(!i)return e(n,r)}n={...n,headers:f(n)};let i=n.headers?.[`cache-control`]?p(n.headers[`cache-control`]):void 0;if(i?.[`no-store`])return e(n,r);let a=d(n),s=t.get(a);return s&&typeof s.then==`function`?s.then(t=>S(e,c,a,r,n,i,t)):S(e,c,a,r,n,i,s)}}})),Fo=n(((e,n)=>{let{createInflate:r,createGunzip:i,createBrotliDecompress:a,createZstdDecompress:o}=t(`node:zlib`),{pipeline:s}=t(`node:stream`),c=So(),{runtimeFeatures:l}=Aa(),u={gzip:i,"x-gzip":i,br:a,deflate:r,compress:r,"x-compress":r,...l.has(`zstd`)?{zstd:o}:{}},d=[204,304],f=!1;var p=class extends c{#e=[];#t;#n;constructor(e,{skipStatusCodes:t=d,skipErrorResponses:n=!0}={}){super(e),this.#t=t,this.#n=n}#r(e,t){return!!(!e||t<200||this.#t.includes(t)||this.#n&&t>=400)}#i(e){let t=e.split(`,`);if(t.length>5)throw Error(`too many content-encodings in response: ${t.length}, maximum allowed is 5`);let n=[];for(let e=t.length-1;e>=0;e--){let r=t[e].trim();if(r){if(!u[r])return n.length=0,n;n.push(u[r]())}}return n}#a(e,t){e.on(`readable`,()=>{let n;for(;(n=e.read())!==null&&super.onResponseData(t,n)!==!1;);}),e.on(`error`,e=>{super.onResponseError(t,e)})}#o(e){let t=this.#e[0];this.#a(t,e),t.on(`end`,()=>{super.onResponseEnd(e,{})})}#s(e){let t=this.#e[this.#e.length-1];this.#a(t,e),s(this.#e,t=>{if(t){super.onResponseError(e,t);return}super.onResponseEnd(e,{})})}#c(){this.#e.length=0}onResponseStart(e,t,n,r){let i=n[`content-encoding`];if(this.#r(i,t))return super.onResponseStart(e,t,n,r);let a=this.#i(i.toLowerCase());if(a.length===0)return this.#c(),super.onResponseStart(e,t,n,r);this.#e=a;let{"content-encoding":o,"content-length":s,...c}=n;return this.#e.length===1?this.#o(e):this.#s(e),super.onResponseStart(e,t,c,r)}onResponseData(e,t){if(this.#e.length>0){this.#e[0].write(t);return}super.onResponseData(e,t)}onResponseEnd(e,t){if(this.#e.length>0){this.#e[0].end(),this.#c();return}super.onResponseEnd(e,t)}onResponseError(e,t){if(this.#e.length>0){for(let e of this.#e)e.destroy(t);this.#c()}super.onResponseError(e,t)}};function m(e={}){return f||=(process.emitWarning(`DecompressInterceptor is experimental and subject to change`,`ExperimentalWarning`),!0),t=>(n,r)=>t(n,new p(r,e))}n.exports=m})),Io=n(((e,t)=>{let{RequestAbortedError:n}=K(),r=5*1024*1024;t.exports=class{#e;#t=[];#n=r;#r=0;#i={};#a=``;#o=!1;#s=!1;#c=!1;#l=!1;#u=null;#d=null;constructor(e,t,n=r){this.#e=e,this.#d=t,this.#n=n}addWaitingHandler(e){if(this.#l||this.#c)return!1;let t=this.#f(e),n=t.controller;try{if(e.onRequestStart?.(n,null),n.aborted)return t.done=!0,!0;this.#s&&e.onResponseStart?.(n,this.#r,this.#i,this.#a)}catch{return t.done=!0,!0}return n.aborted||this.#t.push(t),!0}onRequestStart(e,t){this.#u=e,this.#e.onRequestStart?.(e,t)}onRequestUpgrade(e,t,n,r){this.#e.onRequestUpgrade?.(e,t,n,r)}onResponseStart(e,t,n,r){this.#s=!0,this.#r=t,this.#i=n,this.#a=r,this.#e.onResponseStart?.(e,t,n,r);for(let e of this.#t){let{handler:i,controller:a}=e;if(e.done||a.aborted){e.done=!0;continue}try{i.onResponseStart?.(a,t,n,r)}catch{}a.aborted&&(e.done=!0)}this.#g()}onResponseData(e,t){if(!(this.#o||this.#l)){this.#c=!0,this.#e.onResponseData?.(e,t);for(let e of this.#t){let{handler:n,controller:r}=e;if(e.done||r.aborted){e.done=!0;continue}if(r.paused){this.#p(e,t);continue}try{n.onResponseData?.(r,t)}catch{}r.aborted&&(e.done=!0,e.bufferedChunks=[],e.bufferedBytes=0)}this.#g()}}onResponseEnd(e,t){if(!(this.#o||this.#l)){this.#l=!0,this.#e.onResponseEnd?.(e,t);for(let e of this.#t){if(e.done||e.controller.aborted){e.done=!0;continue}if(this.#m(e),e.done||e.controller.aborted){e.done=!0;continue}if(e.controller.paused&&e.bufferedChunks.length>0){e.pendingTrailers=t;continue}try{e.handler.onResponseEnd?.(e.controller,t)}catch{}e.done=!0}this.#g(),this.#d?.()}}onResponseError(e,t){if(!this.#l){this.#o=!0,this.#l=!0,this.#e.onResponseError?.(e,t);for(let e of this.#t)this.#h(e,t);this.#t=[],this.#d?.()}}#f(e){let t={handler:e,controller:null,bufferedChunks:[],bufferedBytes:0,pendingTrailers:null,done:!1},n={aborted:!1,paused:!1,reason:null};return t.controller={resume:()=>{if(!n.aborted){if(n.paused=!1,this.#m(t),this.#l&&t.pendingTrailers&&t.bufferedChunks.length===0&&!n.paused&&!n.aborted){try{t.handler.onResponseEnd?.(t.controller,t.pendingTrailers)}catch{}t.pendingTrailers=null,t.done=!0}this.#g()}},pause:()=>{n.aborted||(n.paused=!0)},get paused(){return n.paused},get aborted(){return n.aborted},get reason(){return n.reason},abort:e=>{n.aborted=!0,n.reason=e??null,t.done=!0,t.pendingTrailers=null,t.bufferedChunks=[],t.bufferedBytes=0}},t}#p(e,t){if(e.done||e.controller.aborted){e.done=!0,e.bufferedChunks=[],e.bufferedBytes=0;return}let r=Buffer.from(t);if(e.bufferedChunks.push(r),e.bufferedBytes+=r.length,e.bufferedBytes>this.#n){let t=new n(`Deduplicated waiting handler exceeded maxBufferSize (${this.#n} bytes) while paused`);this.#h(e,t)}}#m(e){let{handler:t,controller:n}=e;for(;!e.done&&!n.aborted&&!n.paused&&e.bufferedChunks.length>0;){let r=e.bufferedChunks.shift();e.bufferedBytes-=r.length;try{t.onResponseData?.(n,r)}catch{}if(n.aborted){e.done=!0,e.pendingTrailers=null,e.bufferedChunks=[],e.bufferedBytes=0;break}}}#h(e,t){if(!e.done){e.done=!0,e.pendingTrailers=null,e.bufferedChunks=[],e.bufferedBytes=0;try{e.controller.abort(t),e.handler.onResponseError?.(e.controller,t)}catch{}}}#g(){this.#t=this.#t.filter(e=>e.done===!1)}}})),Lo=n(((e,n)=>{let r=t(`node:diagnostics_channel`),i=q(),a=Io(),{normalizeHeaders:o,makeCacheKey:s,makeDeduplicationKey:c}=ko(),l=r.channel(`undici:request:pending-requests`);n.exports=(e={})=>{let{methods:t=[`GET`],skipHeaderNames:n=[],excludeHeaderNames:r=[],maxBufferSize:u=5*1024*1024}=e;if(typeof e!=`object`||!e)throw TypeError(`expected type of opts to be an Object, got ${e===null?`null`:typeof e}`);if(!Array.isArray(t))throw TypeError(`expected opts.methods to be an array, got ${typeof t}`);for(let e of t)if(!i.safeHTTPMethods.includes(e))throw TypeError(`expected opts.methods to only contain safe HTTP methods, got ${e}`);if(!Array.isArray(n))throw TypeError(`expected opts.skipHeaderNames to be an array, got ${typeof n}`);if(!Array.isArray(r))throw TypeError(`expected opts.excludeHeaderNames to be an array, got ${typeof r}`);if(!Number.isFinite(u)||u<=0)throw TypeError(`expected opts.maxBufferSize to be a positive finite number, got ${u}`);let d=new Set(n.map(e=>e.toLowerCase())),f=new Set(r.map(e=>e.toLowerCase())),p=new Map;return e=>(n,r)=>{if(!n.origin||t.includes(n.method)===!1)return e(n,r);if(n={...n,headers:o(n)},d.size>0){for(let t of Object.keys(n.headers))if(d.has(t.toLowerCase()))return e(n,r)}let i=c(s(n),f),m=p.get(i);if(m)return m.addWaitingHandler(r)?!0:e(n,r);let h=new a(r,()=>{p.delete(i),l.hasSubscribers&&l.publish({size:p.size,key:i,type:`removed`})},u);return p.set(i,h),l.hasSubscribers&&l.publish({size:p.size,key:i,type:`added`}),e(n,h)}}})),Ro=n(((e,n)=>{let{Writable:r}=t(`node:stream`),{assertCacheKey:i,assertCacheValue:a}=ko(),o,s=2*1e3*1e3*1e3;n.exports=class{#e=s;#t=1/0;#n;#r;#i;#a;#o;#s;#c;#l;constructor(e){if(e){if(typeof e!=`object`)throw TypeError(`SqliteCacheStore options must be an object`);if(e.maxEntrySize!==void 0){if(typeof e.maxEntrySize!=`number`||!Number.isInteger(e.maxEntrySize)||e.maxEntrySize<0)throw TypeError(`SqliteCacheStore options.maxEntrySize must be a non-negative integer`);if(e.maxEntrySize>s)throw TypeError(`SqliteCacheStore options.maxEntrySize must be less than 2gb`);this.#e=e.maxEntrySize}if(e.maxCount!==void 0){if(typeof e.maxCount!=`number`||!Number.isInteger(e.maxCount)||e.maxCount<0)throw TypeError(`SqliteCacheStore options.maxCount must be a non-negative integer`);this.#t=e.maxCount}}o||=t(`node:sqlite`).DatabaseSync,this.#n=new o(e?.location??`:memory:`),this.#n.exec(`
|
|
14
14
|
PRAGMA journal_mode = WAL;
|
|
15
15
|
PRAGMA synchronous = NORMAL;
|
|
16
16
|
PRAGMA temp_store = memory;
|
|
@@ -93,36 +93,36 @@ Content-Type: ${s.type||`application/octet-stream`}\r\n\r\n`);a.push(e,s,o),type
|
|
|
93
93
|
ORDER BY cachedAt ASC
|
|
94
94
|
LIMIT ?
|
|
95
95
|
)
|
|
96
|
-
`)}close(){this.#n.close()}get(e){i(e);let t=this.#f(e);return t?{body:t.body?Buffer.from(t.body.buffer,t.body.byteOffset,t.body.byteLength):void 0,statusCode:t.statusCode,statusMessage:t.statusMessage,headers:t.headers?JSON.parse(t.headers):void 0,etag:t.etag?t.etag:void 0,vary:t.vary?JSON.parse(t.vary):void 0,cacheControlDirectives:t.cacheControlDirectives?JSON.parse(t.cacheControlDirectives):void 0,cachedAt:t.cachedAt,staleAt:t.staleAt,deleteAt:t.deleteAt}:void 0}set(e,t){i(e);let n=this.#d(e),r=Array.isArray(t.body)?Buffer.concat(t.body):t.body,a=r?.byteLength;if(a&&a>this.#e)return;let o=this.#f(e,!0);o?this.#i.run(r,t.deleteAt,t.statusCode,t.statusMessage,t.headers?JSON.stringify(t.headers):null,t.etag?t.etag:null,t.cacheControlDirectives?JSON.stringify(t.cacheControlDirectives):null,t.cachedAt,t.staleAt,o.id):(this.#a.run(n,e.method,r,t.deleteAt,t.statusCode,t.statusMessage,t.headers?JSON.stringify(t.headers):null,t.etag?t.etag:null,t.cacheControlDirectives?JSON.stringify(t.cacheControlDirectives):null,t.vary?JSON.stringify(t.vary):null,t.cachedAt,t.staleAt),this.#u())}createWriteStream(e,t){i(e),a(t);let n=0,o=[],s=this;return new r({decodeStrings:!0,write(e,t,r){n+=e.byteLength,n<s.#e?o.push(e):this.destroy(),r()},final(n){s.set(e,{...t,body:o}),n()}})}delete(e){if(typeof e!=`object`)throw TypeError(`expected key to be object, got ${typeof e}`);this.#s.run(this.#d(e))}#u(){if(Number.isFinite(this.#t)&&this.size<=this.#t)return 0;{let e=this.#o.run(Date.now()).changes;if(e)return e}{let e=this.#l?.run(Math.max(Math.floor(this.#t*.1),1)).changes;if(e)return e}return 0}get size(){let{total:e}=this.#c.get();return e}#d(e){return`${e.origin}/${e.path}`}#f(e,t=!1){let n=this.#d(e),{headers:r,method:i}=e,a=this.#r.all(n,i);if(a.length===0)return;let o=Date.now();for(let e of a){if(o>=e.deleteAt&&!t)continue;let n=!0;if(e.vary){let t=JSON.parse(e.vary);for(let e in t)if(!c(r[e],t[e])){n=!1;break}}if(n)return e}}};function c(e,t){return e==null&&t==null?!0:e==null&&t!=null||e!=null&&t==null?!1:Array.isArray(e)&&Array.isArray(t)?e.length===t.length?e.every((e,n)=>e===t[n]):!1:e===t}})),Vo=n(((e,n)=>{let{kConstruct:r}=da(),{kEnumerableProperty:i}=q(),{iteratorMixin:a,isValidHeaderName:o,isValidHeaderValue:s}=Pa(),{webidl:c}=Na(),l=t(`node:assert`),u=t(`node:util`);function d(e){return e===10||e===13||e===9||e===32}function f(e){let t=0,n=e.length;for(;n>t&&d(e.charCodeAt(n-1));)--n;for(;n>t&&d(e.charCodeAt(t));)++t;return t===0&&n===e.length?e:e.substring(t,n)}function p(e,t){if(Array.isArray(t))for(let n=0;n<t.length;++n){let r=t[n];if(r.length!==2)throw c.errors.exception({header:`Headers constructor`,message:`expected name/value pair to be length 2, found ${r.length}.`});m(e,r[0],r[1])}else if(typeof t==`object`&&t){let n=Object.keys(t);for(let r=0;r<n.length;++r)m(e,n[r],t[n[r]])}else throw c.errors.conversionFailed({prefix:`Headers constructor`,argument:`Argument 1`,types:[`sequence<sequence<ByteString>>`,`record<ByteString, ByteString>`]})}function m(e,t,n){if(n=f(n),!o(t))throw c.errors.invalidArgument({prefix:`Headers.append`,value:t,type:`header name`});if(!s(n))throw c.errors.invalidArgument({prefix:`Headers.append`,value:n,type:`header value`});if(y(e)===`immutable`)throw TypeError(`immutable`);return x(e).append(t,n,!1)}function h(e){let t=x(e);if(!t)return[];if(t.sortedMap)return t.sortedMap;let n=[],r=t.toSortedArray(),i=t.cookies;if(i===null||i.length===1)return t.sortedMap=r;for(let e=0;e<r.length;++e){let{0:t,1:a}=r[e];if(t===`set-cookie`)for(let e=0;e<i.length;++e)n.push([t,i[e]]);else n.push([t,a])}return t.sortedMap=n}function g(e,t){return e[0]<t[0]?-1:1}var _=class e{cookies=null;sortedMap;headersMap;constructor(t){t instanceof e?(this.headersMap=new Map(t.headersMap),this.sortedMap=t.sortedMap,this.cookies=t.cookies===null?null:[...t.cookies]):(this.headersMap=new Map(t),this.sortedMap=null)}contains(e,t){return this.headersMap.has(t?e:e.toLowerCase())}clear(){this.headersMap.clear(),this.sortedMap=null,this.cookies=null}append(e,t,n){this.sortedMap=null;let r=n?e:e.toLowerCase(),i=this.headersMap.get(r);if(i){let e=r===`cookie`?`; `:`, `;this.headersMap.set(r,{name:i.name,value:`${i.value}${e}${t}`})}else this.headersMap.set(r,{name:e,value:t});r===`set-cookie`&&(this.cookies??=[]).push(t)}set(e,t,n){this.sortedMap=null;let r=n?e:e.toLowerCase();r===`set-cookie`&&(this.cookies=[t]),this.headersMap.set(r,{name:e,value:t})}delete(e,t){this.sortedMap=null,t||(e=e.toLowerCase()),e===`set-cookie`&&(this.cookies=null),this.headersMap.delete(e)}get(e,t){return this.headersMap.get(t?e:e.toLowerCase())?.value??null}*[Symbol.iterator](){for(let{0:e,1:{value:t}}of this.headersMap)yield[e,t]}get entries(){let e={};if(this.headersMap.size!==0)for(let{name:t,value:n}of this.headersMap.values())e[t]=n;return e}rawValues(){return this.headersMap.values()}get entriesList(){let e=[];if(this.headersMap.size!==0)for(let{0:t,1:{name:n,value:r}}of this.headersMap)if(t===`set-cookie`)for(let t of this.cookies)e.push([n,t]);else e.push([n,r]);return e}toSortedArray(){let e=this.headersMap.size,t=Array(e);if(e<=32){if(e===0)return t;let n=this.headersMap[Symbol.iterator](),r=n.next().value;t[0]=[r[0],r[1].value],l(r[1].value!==null);for(let r=1,i=0,a=0,o=0,s=0,c,u;r<e;++r){for(u=n.next().value,c=t[r]=[u[0],u[1].value],l(c[1]!==null),o=0,a=r;o<a;)s=o+(a-o>>1),t[s][0]<=c[0]?o=s+1:a=s;if(r!==s){for(i=r;i>o;)t[i]=t[--i];t[o]=c}}if(!n.next().done)throw TypeError(`Unreachable`);return t}else{let e=0;for(let{0:n,1:{value:r}}of this.headersMap)t[e++]=[n,r],l(r!==null);return t.sort(g)}}},v=class e{#e;#t;constructor(e=void 0){c.util.markAsUncloneable(this),e!==r&&(this.#t=new _,this.#e=`none`,e!==void 0&&(e=c.converters.HeadersInit(e,`Headers constructor`,`init`),p(this,e)))}append(t,n){c.brandCheck(this,e),c.argumentLengthCheck(arguments,2,`Headers.append`);let r=`Headers.append`;return t=c.converters.ByteString(t,r,`name`),n=c.converters.ByteString(n,r,`value`),m(this,t,n)}delete(t){if(c.brandCheck(this,e),c.argumentLengthCheck(arguments,1,`Headers.delete`),t=c.converters.ByteString(t,`Headers.delete`,`name`),!o(t))throw c.errors.invalidArgument({prefix:`Headers.delete`,value:t,type:`header name`});if(this.#e===`immutable`)throw TypeError(`immutable`);this.#t.contains(t,!1)&&this.#t.delete(t,!1)}get(t){c.brandCheck(this,e),c.argumentLengthCheck(arguments,1,`Headers.get`);let n=`Headers.get`;if(t=c.converters.ByteString(t,n,`name`),!o(t))throw c.errors.invalidArgument({prefix:n,value:t,type:`header name`});return this.#t.get(t,!1)}has(t){c.brandCheck(this,e),c.argumentLengthCheck(arguments,1,`Headers.has`);let n=`Headers.has`;if(t=c.converters.ByteString(t,n,`name`),!o(t))throw c.errors.invalidArgument({prefix:n,value:t,type:`header name`});return this.#t.contains(t,!1)}set(t,n){c.brandCheck(this,e),c.argumentLengthCheck(arguments,2,`Headers.set`);let r=`Headers.set`;if(t=c.converters.ByteString(t,r,`name`),n=c.converters.ByteString(n,r,`value`),n=f(n),!o(t))throw c.errors.invalidArgument({prefix:r,value:t,type:`header name`});if(!s(n))throw c.errors.invalidArgument({prefix:r,value:n,type:`header value`});if(this.#e===`immutable`)throw TypeError(`immutable`);this.#t.set(t,n,!1)}getSetCookie(){c.brandCheck(this,e);let t=this.#t.cookies;return t?[...t]:[]}[u.inspect.custom](e,t){return t.depth??=e,`Headers ${u.formatWithOptions(t,this.#t.entries)}`}static getHeadersGuard(e){return e.#e}static setHeadersGuard(e,t){e.#e=t}static getHeadersList(e){return e.#t}static setHeadersList(e,t){e.#t=t}};let{getHeadersGuard:y,setHeadersGuard:b,getHeadersList:x,setHeadersList:S}=v;Reflect.deleteProperty(v,`getHeadersGuard`),Reflect.deleteProperty(v,`setHeadersGuard`),Reflect.deleteProperty(v,`getHeadersList`),Reflect.deleteProperty(v,`setHeadersList`),a(`Headers`,v,h,0,1),Object.defineProperties(v.prototype,{append:i,delete:i,get:i,has:i,set:i,getSetCookie:i,[Symbol.toStringTag]:{value:`Headers`,configurable:!0},[u.inspect.custom]:{enumerable:!1}}),c.converters.HeadersInit=function(e,t,n){if(c.util.Type(e)===c.util.Types.OBJECT){let r=Reflect.get(e,Symbol.iterator);if(!u.types.isProxy(e)&&r===v.prototype.entries)try{return x(e).entriesList}catch{}return typeof r==`function`?c.converters[`sequence<sequence<ByteString>>`](e,t,n,r.bind(e)):c.converters[`record<ByteString, ByteString>`](e,t,n)}throw c.errors.conversionFailed({prefix:`Headers constructor`,argument:`Argument 1`,types:[`sequence<sequence<ByteString>>`,`record<ByteString, ByteString>`]})},n.exports={fill:p,compareHeaderName:g,Headers:v,HeadersList:_,getHeadersGuard:y,setHeadersGuard:b,setHeadersList:S,getHeadersList:x}})),Ho=n(((e,n)=>{let{Headers:r,HeadersList:i,fill:a,getHeadersGuard:o,setHeadersGuard:s,setHeadersList:c}=Vo(),{extractBody:l,cloneBody:u,mixinBody:d,streamRegistry:f,bodyUnusable:p}=Ra(),m=q(),h=t(`node:util`),{kEnumerableProperty:g}=m,{isValidReasonPhrase:_,isCancelled:v,isAborted:y,isErrorLike:b,environmentSettingsObject:x}=Pa(),{redirectStatusSet:S,nullBodyStatus:C}=Da(),{webidl:w}=Na(),{URLSerializer:T}=ja(),{kConstruct:E}=da(),D=t(`node:assert`),{isomorphicEncode:O,serializeJavascriptValueToJSONString:k}=Aa(),A=new TextEncoder(`utf-8`);var j=class e{#e;#t;static error(){return ie(L(),`immutable`)}static json(e,t=void 0){w.argumentLengthCheck(arguments,1,`Response.json`),t!==null&&(t=w.converters.ResponseInit(t));let n=l(A.encode(k(e))),r=ie(ee({}),`response`);return z(r,t,{body:n[0],type:`application/json`}),r}static redirect(e,t=302){w.argumentLengthCheck(arguments,1,`Response.redirect`),e=w.converters.USVString(e),t=w.converters[`unsigned short`](t);let n;try{n=new URL(e,x.settingsObject.baseUrl)}catch(t){throw TypeError(`Failed to parse URL from ${e}`,{cause:t})}if(!S.has(t))throw RangeError(`Invalid status code ${t}`);let r=ie(ee({}),`immutable`);r.#t.status=t;let i=O(T(n));return r.#t.headersList.append(`location`,i,!0),r}constructor(e=null,t=void 0){if(w.util.markAsUncloneable(this),e===E)return;e!==null&&(e=w.converters.BodyInit(e,`Response`,`body`)),t=w.converters.ResponseInit(t),this.#t=ee({}),this.#e=new r(E),s(this.#e,`response`),c(this.#e,this.#t.headersList);let n=null;if(e!=null){let[t,r]=l(e);n={body:t,type:r}}z(this,t,n)}get type(){return w.brandCheck(this,e),this.#t.type}get url(){w.brandCheck(this,e);let t=this.#t.urlList,n=t[t.length-1]??null;return n===null?``:T(n,!0)}get redirected(){return w.brandCheck(this,e),this.#t.urlList.length>1}get status(){return w.brandCheck(this,e),this.#t.status}get ok(){return w.brandCheck(this,e),this.#t.status>=200&&this.#t.status<=299}get statusText(){return w.brandCheck(this,e),this.#t.statusText}get headers(){return w.brandCheck(this,e),this.#e}get body(){return w.brandCheck(this,e),this.#t.body?this.#t.body.stream:null}get bodyUsed(){return w.brandCheck(this,e),!!this.#t.body&&m.isDisturbed(this.#t.body.stream)}clone(){if(w.brandCheck(this,e),p(this.#t))throw w.errors.exception({header:`Response.clone`,message:`Body has already been consumed.`});let t=I(this.#t);return this.#t.urlList.length!==0&&this.#t.body?.stream&&f.register(this,new WeakRef(this.#t.body.stream)),ie(t,o(this.#e))}[h.inspect.custom](e,t){t.depth===null&&(t.depth=2),t.colors??=!0;let n={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${h.formatWithOptions(t,n)}`}static getResponseHeaders(e){return e.#e}static setResponseHeaders(e,t){e.#e=t}static getResponseState(e){return e.#t}static setResponseState(e,t){e.#t=t}};let{getResponseHeaders:M,setResponseHeaders:N,getResponseState:P,setResponseState:F}=j;Reflect.deleteProperty(j,`getResponseHeaders`),Reflect.deleteProperty(j,`setResponseHeaders`),Reflect.deleteProperty(j,`getResponseState`),Reflect.deleteProperty(j,`setResponseState`),d(j,P),Object.defineProperties(j.prototype,{type:g,url:g,status:g,ok:g,redirected:g,statusText:g,headers:g,clone:g,body:g,bodyUsed:g,[Symbol.toStringTag]:{value:`Response`,configurable:!0}}),Object.defineProperties(j,{json:g,redirect:g,error:g});function I(e){if(e.internalResponse)return ne(I(e.internalResponse),e.type);let t=ee({...e,body:null});return e.body!=null&&(t.body=u(e.body)),t}function ee(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:`default`,status:200,timingInfo:null,cacheState:``,statusText:``,...e,headersList:e?.headersList?new i(e?.headersList):new i,urlList:e?.urlList?[...e.urlList]:[]}}function L(e){return ee({type:`error`,status:0,error:b(e)?e:Error(e&&String(e)),aborted:e&&e.name===`AbortError`})}function te(e){return e.type===`error`&&e.status===0}function R(e,t){return t={internalResponse:e,...t},new Proxy(e,{get(e,n){return n in t?t[n]:e[n]},set(e,n,r){return D(!(n in t)),e[n]=r,!0}})}function ne(e,t){if(t===`basic`)return R(e,{type:`basic`,headersList:e.headersList});if(t===`cors`)return R(e,{type:`cors`,headersList:e.headersList});if(t===`opaque`)return R(e,{type:`opaque`,urlList:[],status:0,statusText:``,body:null});if(t===`opaqueredirect`)return R(e,{type:`opaqueredirect`,status:0,statusText:``,headersList:[],body:null});D(!1)}function re(e,t=null){return D(v(e)),y(e)?L(Object.assign(new DOMException(`The operation was aborted.`,`AbortError`),{cause:t})):L(Object.assign(new DOMException(`Request was cancelled.`),{cause:t}))}function z(e,t,n){if(t.status!==null&&(t.status<200||t.status>599))throw RangeError(`init["status"] must be in the range of 200 to 599, inclusive.`);if(`statusText`in t&&t.statusText!=null&&!_(String(t.statusText)))throw TypeError(`Invalid statusText`);if(`status`in t&&t.status!=null&&(P(e).status=t.status),`statusText`in t&&t.statusText!=null&&(P(e).statusText=t.statusText),`headers`in t&&t.headers!=null&&a(M(e),t.headers),n){if(C.includes(e.status))throw w.errors.exception({header:`Response constructor`,message:`Invalid response status code ${e.status}`});P(e).body=n.body,n.type!=null&&!P(e).headersList.contains(`content-type`,!0)&&P(e).headersList.append(`content-type`,n.type,!0)}}function ie(e,t){let n=new j(E);F(n,e);let i=new r(E);return N(n,i),c(i,e.headersList),s(i,t),e.urlList.length!==0&&e.body?.stream&&f.register(n,new WeakRef(e.body.stream)),n}w.converters.XMLHttpRequestBodyInit=function(e,t,n){return typeof e==`string`?w.converters.USVString(e,t,n):w.is.Blob(e)||w.is.BufferSource(e)||w.is.FormData(e)||w.is.URLSearchParams(e)?e:w.converters.DOMString(e,t,n)},w.converters.BodyInit=function(e,t,n){return w.is.ReadableStream(e)||e?.[Symbol.asyncIterator]?e:w.converters.XMLHttpRequestBodyInit(e,t,n)},w.converters.ResponseInit=w.dictionaryConverter([{key:`status`,converter:w.converters[`unsigned short`],defaultValue:()=>200},{key:`statusText`,converter:w.converters.ByteString,defaultValue:()=>``},{key:`headers`,converter:w.converters.HeadersInit}]),w.is.Response=w.util.MakeTypeAssertion(j),n.exports={isNetworkError:te,makeNetworkError:L,makeResponse:ee,makeAppropriateNetworkError:re,filterResponse:ne,Response:j,cloneResponse:I,fromInnerResponse:ie,getResponseState:P}})),Uo=n(((e,n)=>{let{extractBody:r,mixinBody:i,cloneBody:a,bodyUnusable:o}=Ra(),{Headers:s,fill:c,HeadersList:l,setHeadersGuard:u,getHeadersGuard:d,setHeadersList:f,getHeadersList:p}=Vo(),m=q(),h=t(`node:util`),{isValidHTTPToken:g,sameOrigin:_,environmentSettingsObject:v}=Pa(),{forbiddenMethodsSet:y,corsSafeListedMethodsSet:b,referrerPolicy:x,requestRedirect:S,requestMode:C,requestCredentials:w,requestCache:T,requestDuplex:E}=Da(),{kEnumerableProperty:D,normalizedMethodRecordsBase:O,normalizedMethodRecords:k}=m,{webidl:A}=Na(),{URLSerializer:j}=ja(),{kConstruct:M}=da(),N=t(`node:assert`),{getMaxListeners:P,setMaxListeners:F,defaultMaxListeners:I}=t(`node:events`),ee=Symbol(`abortController`),L=new FinalizationRegistry(({signal:e,abort:t})=>{e.removeEventListener(`abort`,t)}),te=new WeakMap,R;try{R=P(new AbortController().signal)>0}catch{R=!1}function ne(e){return t;function t(){let n=e.deref();if(n!==void 0){L.unregister(t),this.removeEventListener(`abort`,t),n.abort(this.reason);let e=te.get(n.signal);if(e!==void 0){if(e.size!==0){for(let t of e){let e=t.deref();e!==void 0&&e.abort(this.reason)}e.clear()}te.delete(n.signal)}}}}let re=!1;var z=class e{#e;#t;#n;#r;constructor(e,t=void 0){if(A.util.markAsUncloneable(this),e===M)return;A.argumentLengthCheck(arguments,1,`Request constructor`),e=A.converters.RequestInfo(e),t=A.converters.RequestInit(t);let n=null,i=null,a=v.settingsObject.baseUrl,d=null;if(typeof e==`string`){this.#t=t.dispatcher;let r;try{r=new URL(e,a)}catch(t){throw TypeError(`Failed to parse URL from `+e,{cause:t})}if(r.username||r.password)throw TypeError(`Request cannot be constructed from a URL that includes credentials: `+e);n=B({urlList:[r]}),i=`cors`}else N(A.is.Request(e)),n=e.#r,d=e.#e,this.#t=t.dispatcher||e.#t;let h=v.settingsObject.origin,x=`client`;if(n.window?.constructor?.name===`EnvironmentSettingsObject`&&_(n.window,h)&&(x=n.window),t.window!=null)throw TypeError(`'window' option '${x}' must be null`);`window`in t&&(x=`no-window`),n=B({method:n.method,headersList:n.headersList,unsafeRequest:n.unsafeRequest,client:v.settingsObject,window:x,priority:n.priority,origin:n.origin,referrer:n.referrer,referrerPolicy:n.referrerPolicy,mode:n.mode,credentials:n.credentials,cache:n.cache,redirect:n.redirect,integrity:n.integrity,keepalive:n.keepalive,reloadNavigation:n.reloadNavigation,historyNavigation:n.historyNavigation,urlList:[...n.urlList]});let S=Object.keys(t).length!==0;if(S&&(n.mode===`navigate`&&(n.mode=`same-origin`),n.reloadNavigation=!1,n.historyNavigation=!1,n.origin=`client`,n.referrer=`client`,n.referrerPolicy=``,n.url=n.urlList[n.urlList.length-1],n.urlList=[n.url]),t.referrer!==void 0){let e=t.referrer;if(e===``)n.referrer=`no-referrer`;else{let t;try{t=new URL(e,a)}catch(t){throw TypeError(`Referrer "${e}" is not a valid URL.`,{cause:t})}t.protocol===`about:`&&t.hostname===`client`||h&&!_(t,v.settingsObject.baseUrl)?n.referrer=`client`:n.referrer=t}}t.referrerPolicy!==void 0&&(n.referrerPolicy=t.referrerPolicy);let C;if(C=t.mode===void 0?i:t.mode,C===`navigate`)throw A.errors.exception({header:`Request constructor`,message:`invalid request mode navigate.`});if(C!=null&&(n.mode=C),t.credentials!==void 0&&(n.credentials=t.credentials),t.cache!==void 0&&(n.cache=t.cache),n.cache===`only-if-cached`&&n.mode!==`same-origin`)throw TypeError(`'only-if-cached' can be set only with 'same-origin' mode`);if(t.redirect!==void 0&&(n.redirect=t.redirect),t.integrity!=null&&(n.integrity=String(t.integrity)),t.keepalive!==void 0&&(n.keepalive=!!t.keepalive),t.method!==void 0){let e=t.method,r=k[e];if(r!==void 0)n.method=r;else{if(!g(e))throw TypeError(`'${e}' is not a valid HTTP method.`);let t=e.toUpperCase();if(y.has(t))throw TypeError(`'${e}' HTTP method is unsupported.`);e=O[t]??e,n.method=e}!re&&n.method===`patch`&&(process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:`UNDICI-FETCH-patch`}),re=!0)}t.signal!==void 0&&(d=t.signal),this.#r=n;let w=new AbortController;if(this.#e=w.signal,d!=null)if(d.aborted)w.abort(d.reason);else{this[ee]=w;let e=ne(new WeakRef(w));R&&P(d)===I&&F(1500,d),m.addAbortListener(d,e),L.register(w,{signal:d,abort:e},e)}if(this.#n=new s(M),f(this.#n,n.headersList),u(this.#n,`request`),C===`no-cors`){if(!b.has(n.method))throw TypeError(`'${n.method} is unsupported in no-cors mode.`);u(this.#n,`request-no-cors`)}if(S){let e=p(this.#n),n=t.headers===void 0?new l(e):t.headers;if(e.clear(),n instanceof l){for(let{name:t,value:r}of n.rawValues())e.append(t,r,!1);e.cookies=n.cookies}else c(this.#n,n)}let T=A.is.Request(e)?e.#r.body:null;if((t.body!=null||T!=null)&&(n.method===`GET`||n.method===`HEAD`))throw TypeError(`Request with GET/HEAD method cannot have body.`);let E=null;if(t.body!=null){let[e,i]=r(t.body,n.keepalive);E=e,i&&!p(this.#n).contains(`content-type`,!0)&&this.#n.append(`content-type`,i,!0)}let D=E??T;if(D!=null&&D.source==null){if(E!=null&&t.duplex==null)throw TypeError(`RequestInit: duplex option is required when sending a body.`);if(n.mode!==`same-origin`&&n.mode!==`cors`)throw TypeError(`If request is made from ReadableStream, mode should be "same-origin" or "cors"`);n.useCORSPreflightFlag=!0}let j=D;if(E==null&&T!=null){if(o(e.#r))throw TypeError(`Cannot construct a Request with a Request object that has already been used.`);let t=new TransformStream;T.stream.pipeThrough(t),j={source:T.source,length:T.length,stream:t.readable}}this.#r.body=j}get method(){return A.brandCheck(this,e),this.#r.method}get url(){return A.brandCheck(this,e),j(this.#r.url)}get headers(){return A.brandCheck(this,e),this.#n}get destination(){return A.brandCheck(this,e),this.#r.destination}get referrer(){return A.brandCheck(this,e),this.#r.referrer===`no-referrer`?``:this.#r.referrer===`client`?`about:client`:this.#r.referrer.toString()}get referrerPolicy(){return A.brandCheck(this,e),this.#r.referrerPolicy}get mode(){return A.brandCheck(this,e),this.#r.mode}get credentials(){return A.brandCheck(this,e),this.#r.credentials}get cache(){return A.brandCheck(this,e),this.#r.cache}get redirect(){return A.brandCheck(this,e),this.#r.redirect}get integrity(){return A.brandCheck(this,e),this.#r.integrity}get keepalive(){return A.brandCheck(this,e),this.#r.keepalive}get isReloadNavigation(){return A.brandCheck(this,e),this.#r.reloadNavigation}get isHistoryNavigation(){return A.brandCheck(this,e),this.#r.historyNavigation}get signal(){return A.brandCheck(this,e),this.#e}get body(){return A.brandCheck(this,e),this.#r.body?this.#r.body.stream:null}get bodyUsed(){return A.brandCheck(this,e),!!this.#r.body&&m.isDisturbed(this.#r.body.stream)}get duplex(){return A.brandCheck(this,e),`half`}clone(){if(A.brandCheck(this,e),o(this.#r))throw TypeError(`unusable`);let t=ue(this.#r),n=new AbortController;if(this.signal.aborted)n.abort(this.signal.reason);else{let e=te.get(this.signal);e===void 0&&(e=new Set,te.set(this.signal,e));let t=new WeakRef(n);e.add(t),m.addAbortListener(n.signal,ne(t))}return de(t,this.#t,n.signal,d(this.#n))}[h.inspect.custom](e,t){t.depth===null&&(t.depth=2),t.colors??=!0;let n={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${h.formatWithOptions(t,n)}`}static setRequestSignal(e,t){return e.#e=t,e}static getRequestDispatcher(e){return e.#t}static setRequestDispatcher(e,t){e.#t=t}static setRequestHeaders(e,t){e.#n=t}static getRequestState(e){return e.#r}static setRequestState(e,t){e.#r=t}};let{setRequestSignal:ie,getRequestDispatcher:ae,setRequestDispatcher:oe,setRequestHeaders:se,getRequestState:ce,setRequestState:le}=z;Reflect.deleteProperty(z,`setRequestSignal`),Reflect.deleteProperty(z,`getRequestDispatcher`),Reflect.deleteProperty(z,`setRequestDispatcher`),Reflect.deleteProperty(z,`setRequestHeaders`),Reflect.deleteProperty(z,`getRequestState`),Reflect.deleteProperty(z,`setRequestState`),i(z,ce);function B(e){return{method:e.method??`GET`,localURLsOnly:e.localURLsOnly??!1,unsafeRequest:e.unsafeRequest??!1,body:e.body??null,client:e.client??null,reservedClient:e.reservedClient??null,replacesClientId:e.replacesClientId??``,window:e.window??`client`,keepalive:e.keepalive??!1,serviceWorkers:e.serviceWorkers??`all`,initiator:e.initiator??``,destination:e.destination??``,priority:e.priority??null,origin:e.origin??`client`,policyContainer:e.policyContainer??`client`,referrer:e.referrer??`client`,referrerPolicy:e.referrerPolicy??``,mode:e.mode??`no-cors`,useCORSPreflightFlag:e.useCORSPreflightFlag??!1,credentials:e.credentials??`same-origin`,useCredentials:e.useCredentials??!1,cache:e.cache??`default`,redirect:e.redirect??`follow`,integrity:e.integrity??``,cryptoGraphicsNonceMetadata:e.cryptoGraphicsNonceMetadata??``,parserMetadata:e.parserMetadata??``,reloadNavigation:e.reloadNavigation??!1,historyNavigation:e.historyNavigation??!1,userActivation:e.userActivation??!1,taintedOrigin:e.taintedOrigin??!1,redirectCount:e.redirectCount??0,responseTainting:e.responseTainting??`basic`,preventNoCacheCacheControlHeaderModification:e.preventNoCacheCacheControlHeaderModification??!1,done:e.done??!1,timingAllowFailed:e.timingAllowFailed??!1,useURLCredentials:e.useURLCredentials??void 0,traversableForUserPrompts:e.traversableForUserPrompts??`client`,urlList:e.urlList,url:e.urlList[0],headersList:e.headersList?new l(e.headersList):new l}}function ue(e){let t=B({...e,body:null});return e.body!=null&&(t.body=a(e.body)),t}function de(e,t,n,r){let i=new z(M);le(i,e),oe(i,t),ie(i,n);let a=new s(M);return se(i,a),f(a,e.headersList),u(a,r),i}Object.defineProperties(z.prototype,{method:D,url:D,headers:D,redirect:D,clone:D,signal:D,duplex:D,destination:D,body:D,bodyUsed:D,isHistoryNavigation:D,isReloadNavigation:D,keepalive:D,integrity:D,cache:D,credentials:D,attribute:D,referrerPolicy:D,referrer:D,mode:D,[Symbol.toStringTag]:{value:`Request`,configurable:!0}}),A.is.Request=A.util.MakeTypeAssertion(z),A.converters.RequestInfo=function(e){return typeof e==`string`?A.converters.USVString(e):A.is.Request(e)?e:A.converters.USVString(e)},A.converters.RequestInit=A.dictionaryConverter([{key:`method`,converter:A.converters.ByteString},{key:`headers`,converter:A.converters.HeadersInit},{key:`body`,converter:A.nullableConverter(A.converters.BodyInit)},{key:`referrer`,converter:A.converters.USVString},{key:`referrerPolicy`,converter:A.converters.DOMString,allowedValues:x},{key:`mode`,converter:A.converters.DOMString,allowedValues:C},{key:`credentials`,converter:A.converters.DOMString,allowedValues:w},{key:`cache`,converter:A.converters.DOMString,allowedValues:T},{key:`redirect`,converter:A.converters.DOMString,allowedValues:S},{key:`integrity`,converter:A.converters.DOMString},{key:`keepalive`,converter:A.converters.boolean},{key:`signal`,converter:A.nullableConverter(e=>A.converters.AbortSignal(e,`RequestInit`,`signal`))},{key:`window`,converter:A.converters.any},{key:`duplex`,converter:A.converters.DOMString,allowedValues:E},{key:`dispatcher`,converter:A.converters.any},{key:`priority`,converter:A.converters.DOMString,allowedValues:[`high`,`low`,`auto`],defaultValue:()=>`auto`}]),n.exports={Request:z,makeRequest:B,fromInnerRequest:de,cloneRequest:ue,getRequestDispatcher:ae,getRequestState:ce}})),Wo=n(((e,n)=>{let r=t(`node:assert`),{runtimeFeatures:i}=Ma(),a=new Map([[`sha256`,0],[`sha384`,1],[`sha512`,2]]),o;if(i.has(`crypto`)){o=t(`node:crypto`);let e=o.getHashes();e.length===0&&a.clear();for(let t of a.keys())e.includes(t)===!1&&a.delete(t)}else a.clear();let s=Map.prototype.get.bind(a),c=Map.prototype.has.bind(a),l=i.has(`crypto`)===!1||a.size===0?()=>!0:(e,t)=>{let n=d(t);if(n.length===0)return!0;let r=u(n);for(let t of r){let n=t.alg,r=t.val;if(p(f(n,e),r))return!0}return!1};function u(e){let t=[],n=null;for(let i of e){if(r(c(i.alg),`Invalid SRI hash algorithm token`),t.length===0){t.push(i),n=i;continue}let e=n.alg,a=s(e),o=i.alg,l=s(o);l<a||(l>a?(n=i,t[0]=i,t.length=1):t.push(i))}return t}function d(e){let t=[];for(let n of e.split(` `)){let e=n.split(`?`,1)[0],r=``,i=[e.slice(0,6),e.slice(7)],a=i[0];if(!c(a))continue;i[1]&&(r=i[1]);let o={alg:a,val:r};t.push(o)}return t}let f=(e,t)=>o.hash(e,t,`base64`);function p(e,t){let n=e.length;n!==0&&e[n-1]===`=`&&--n,n!==0&&e[n-1]===`=`&&--n;let r=t.length;if(r!==0&&t[r-1]===`=`&&--r,r!==0&&t[r-1]===`=`&&--r,n!==r)return!1;for(let r=0;r<n;++r)if(!(e[r]===t[r]||e[r]===`+`&&t[r]===`-`||e[r]===`/`&&t[r]===`_`))return!1;return!0}n.exports={applyAlgorithmToBytes:f,bytesMatch:l,caseSensitiveMatch:p,isValidSRIHashAlgorithm:c,getStrongestMetadata:u,parseMetadata:d}})),Go=n(((e,n)=>{let{makeNetworkError:r,makeAppropriateNetworkError:i,filterResponse:a,makeResponse:o,fromInnerResponse:s,getResponseState:c}=Ho(),{HeadersList:l}=Vo(),{Request:u,cloneRequest:d,getRequestDispatcher:f,getRequestState:p}=Uo(),m=t(`node:zlib`),{makePolicyContainer:h,clonePolicyContainer:g,requestBadPort:_,TAOCheck:v,appendRequestOriginHeader:y,responseLocationURL:b,requestCurrentURL:x,setRequestReferrerPolicyOnRedirect:S,tryUpgradeRequestToAPotentiallyTrustworthyURL:C,createOpaqueTimingInfo:w,appendFetchMetadata:T,corsCheck:E,crossOriginResourcePolicyCheck:D,determineRequestsReferrer:O,coarsenedSharedCurrentTime:k,sameOrigin:A,isCancelled:j,isAborted:M,isErrorLike:N,fullyReadBody:P,readableStreamClose:F,urlIsLocal:I,urlIsHttpHttpsScheme:ee,urlHasHttpsScheme:L,clampAndCoarsenConnectionTimingInfo:te,simpleRangeHeaderValue:R,buildContentRange:ne,createInflate:re,extractMimeType:z,hasAuthenticationEntry:ie,includesCredentials:ae,isTraversableNavigable:oe}=Pa(),se=t(`node:assert`),{safelyExtractBody:ce,extractBody:le}=Ra(),{redirectStatusSet:B,nullBodyStatus:ue,safeMethodsSet:de,requestBodyHeader:fe,subresourceSet:V}=Da(),pe=t(`node:events`),{Readable:me,pipeline:he,finished:ge,isErrored:H,isReadable:_e}=t(`node:stream`),{addAbortListener:ve,bufferToLowerCasedHeaderName:ye}=q(),{dataURLProcessor:be,serializeAMimeType:xe,minimizeSupportedMimeType:Se}=ja(),{getGlobalDispatcher:Ce}=Co(),{webidl:we}=Na(),{STATUS_CODES:Te}=t(`node:http`),{bytesMatch:Ee}=Wo(),{createDeferredPromise:U}=La(),{isomorphicEncode:De}=Aa(),{runtimeFeatures:Oe}=Ma(),ke=Oe.has(`zstd`),Ae=[`GET`,`HEAD`],je=typeof __UNDICI_IS_NODE__<`u`||typeof esbuildDetection<`u`?`node`:`undici`,Me;var Ne=class extends pe{constructor(e){super(),this.dispatcher=e,this.connection=null,this.dump=!1,this.state=`ongoing`}terminate(e){this.state===`ongoing`&&(this.state=`terminated`,this.connection?.destroy(e),this.emit(`terminated`,e))}abort(e){this.state===`ongoing`&&(this.state=`aborted`,e||=new DOMException(`The operation was aborted.`,`AbortError`),this.serializedAbortReason=e,this.connection?.destroy(e),this.emit(`terminated`,e))}};function Pe(e){Ie(e,`fetch`)}function Fe(e,t=void 0){we.argumentLengthCheck(arguments,1,`globalThis.fetch`);let n=U(),r;try{r=new u(e,t)}catch(e){return n.reject(e),n.promise}let i=p(r);if(r.signal.aborted)return Re(n,i,null,r.signal.reason,null),n.promise;i.client.globalObject?.constructor?.name===`ServiceWorkerGlobalScope`&&(i.serviceWorkers=`none`);let a=null,o=!1,c=null;return ve(r.signal,()=>{o=!0,se(c!=null),c.abort(r.signal.reason);let e=a?.deref();Re(n,i,e,r.signal.reason,c.controller)}),c=ze({request:i,processResponseEndOfBody:Pe,processResponse:e=>{if(!o){if(e.aborted){Re(n,i,a,c.serializedAbortReason,c.controller);return}if(e.type===`error`){n.reject(TypeError(`fetch failed`,{cause:e.error}));return}a=new WeakRef(s(e,`immutable`)),n.resolve(a.deref()),n=null}},dispatcher:f(r),requestObject:r}),n.promise}function Ie(e,t=`other`){if(e.type===`error`&&e.aborted||!e.urlList?.length)return;let n=e.urlList[0],r=e.timingInfo,i=e.cacheState;ee(n)&&r!==null&&(e.timingAllowPassed||(r=w({startTime:r.startTime}),i=``),r.endTime=k(),e.timingInfo=r,Le(r,n.href,t,globalThis,i,``,e.status))}let Le=performance.markResourceTiming;function Re(e,t,n,r,i){if(e&&e.reject(r),t.body?.stream!=null&&_e(t.body.stream)&&t.body.stream.cancel(r).catch(e=>{if(e.code!==`ERR_INVALID_STATE`)throw e}),n==null)return;let a=c(n);a.body?.stream!=null&&_e(a.body.stream)&&i.error(r)}function ze({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:n,processResponse:r,processResponseEndOfBody:i,processResponseConsumeBody:a,useParallelQueue:o=!1,dispatcher:s=Ce(),requestObject:c=null}){se(s);let l=null,u=!1;e.client!=null&&(l=e.client.globalObject,u=e.client.crossOriginIsolatedCapability);let d=w({startTime:k(u)}),f={controller:new Ne(s),request:e,timingInfo:d,processRequestBodyChunkLength:t,processRequestEndOfBody:n,processResponse:r,processResponseConsumeBody:a,processResponseEndOfBody:i,taskDestination:l,crossOriginIsolatedCapability:u,requestObject:c};return se(!e.body||e.body.stream),e.window===`client`&&(e.window=e.client?.globalObject?.constructor?.name===`Window`?e.client:`no-window`),e.origin===`client`&&(e.origin=e.client.origin),e.policyContainer===`client`&&(e.client==null?e.policyContainer=h():e.policyContainer=g(e.client.policyContainer)),e.headersList.contains(`accept`,!0)||e.headersList.append(`accept`,`*/*`,!0),e.headersList.contains(`accept-language`,!0)||e.headersList.append(`accept-language`,`*`,!0),e.priority,V.has(e.destination),Be(f,!1),f.controller}async function Be(e,t){try{let n=e.request,i=null;if(n.localURLsOnly&&!I(x(n))&&(i=r(`local URLs only`)),C(n),_(n)===`blocked`&&(i=r(`bad port`)),n.referrerPolicy===``&&(n.referrerPolicy=n.policyContainer.referrerPolicy),n.referrer!==`no-referrer`&&(n.referrer=O(n)),i===null){let t=x(n);A(t,n.url)&&n.responseTainting===`basic`||t.protocol===`data:`||n.mode===`navigate`||n.mode===`websocket`?(n.responseTainting=`basic`,i=await Ve(e)):n.mode===`same-origin`?i=r(`request mode cannot be "same-origin"`):n.mode===`no-cors`?n.redirect===`follow`?(n.responseTainting=`opaque`,i=await Ve(e)):i=r(`redirect mode cannot be "follow" for "no-cors" request`):ee(x(n))?(n.responseTainting=`cors`,i=await We(e)):i=r(`URL scheme must be a HTTP(S) scheme`)}if(t)return i;i.status!==0&&!i.internalResponse&&(n.responseTainting,n.responseTainting===`basic`?i=a(i,`basic`):n.responseTainting===`cors`?i=a(i,`cors`):n.responseTainting===`opaque`?i=a(i,`opaque`):se(!1));let o=i.status===0?i:i.internalResponse;if(o.urlList.length===0&&o.urlList.push(...n.urlList),n.timingAllowFailed||(i.timingAllowPassed=!0),i.type===`opaque`&&o.status===206&&o.rangeRequested&&!n.headers.contains(`range`,!0)&&(i=o=r()),i.status!==0&&(n.method===`HEAD`||n.method===`CONNECT`||ue.includes(o.status))&&(o.body=null,e.controller.dump=!0),n.integrity){let t=t=>Ue(e,r(t));if(n.responseTainting===`opaque`||i.body==null){t(i.error);return}P(i.body,r=>{if(!Ee(r,n.integrity)){t(`integrity mismatch`);return}i.body=ce(r)[0],Ue(e,i)},t)}else Ue(e,i)}catch(t){e.controller.terminate(t)}}function Ve(e){if(j(e)&&e.request.redirectCount===0)return Promise.resolve(i(e));let{request:n}=e,{protocol:a}=x(n);switch(a){case`about:`:return Promise.resolve(r(`about scheme is not supported`));case`blob:`:{Me||=t(`node:buffer`).resolveObjectURL;let e=x(n);if(e.search.length!==0)return Promise.resolve(r(`NetworkError when attempting to fetch resource.`));let i=Me(e.toString());if(n.method!==`GET`||!we.is.Blob(i))return Promise.resolve(r(`invalid method`));let a=o(),s=i.size,c=De(`${s}`),l=i.type;if(n.headersList.contains(`range`,!0)){a.rangeRequested=!0;let e=R(n.headersList.get(`range`,!0),!0);if(e===`failure`)return Promise.resolve(r(`failed to fetch the data URL`));let{rangeStartValue:t,rangeEndValue:o}=e;if(t===null)t=s-o,o=t+o-1;else{if(t>=s)return Promise.resolve(r(`Range start is greater than the blob's size.`));(o===null||o>=s)&&(o=s-1)}let c=i.slice(t,o+1,l);a.body=le(c)[0];let u=De(`${c.size}`),d=ne(t,o,s);a.status=206,a.statusText=`Partial Content`,a.headersList.set(`content-length`,u,!0),a.headersList.set(`content-type`,l,!0),a.headersList.set(`content-range`,d,!0)}else{let e=le(i);a.statusText=`OK`,a.body=e[0],a.headersList.set(`content-length`,c,!0),a.headersList.set(`content-type`,l,!0)}return Promise.resolve(a)}case`data:`:{let e=be(x(n));if(e===`failure`)return Promise.resolve(r(`failed to fetch the data URL`));let t=xe(e.mimeType);return Promise.resolve(o({statusText:`OK`,headersList:[[`content-type`,{name:`Content-Type`,value:t}]],body:ce(e.body)[0]}))}case`file:`:return Promise.resolve(r(`not implemented... yet...`));case`http:`:case`https:`:return We(e).catch(e=>r(e));default:return Promise.resolve(r(`unknown scheme`))}}function He(e,t){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(t))}function Ue(e,t){let n=e.timingInfo,r=()=>{let r=Date.now();e.request.destination===`document`&&(e.controller.fullTimingInfo=n),e.controller.reportTimingSteps=()=>{if(!ee(e.request.url))return;n.endTime=r;let i=t.cacheState,a=t.bodyInfo;t.timingAllowPassed||(n=w(n),i=``);let o=0;if(e.request.mode!==`navigate`||!t.hasCrossOriginRedirects){o=t.status;let e=z(t.headersList);e!==`failure`&&(a.contentType=Se(e))}e.request.initiatorType!=null&&Le(n,e.request.url.href,e.request.initiatorType,globalThis,i,a,o)};let i=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(t)),e.request.initiatorType!=null&&e.controller.reportTimingSteps()};queueMicrotask(()=>i())};e.processResponse!=null&&queueMicrotask(()=>{e.processResponse(t),e.processResponse=null});let i=t.type===`error`?t:t.internalResponse??t;i.body==null?r():ge(i.body.stream,()=>{r()})}async function We(e){let t=e.request,n=null,i=null,a=e.timingInfo;if(t.serviceWorkers,n===null){if(t.redirect===`follow`&&(t.serviceWorkers=`none`),i=n=await Ke(e),t.responseTainting===`cors`&&E(t,n)===`failure`)return r(`cors failure`);v(t,n)===`failure`&&(t.timingAllowFailed=!0)}return(t.responseTainting===`opaque`||n.type===`opaque`)&&D(t.origin,t.client,t.destination,i)===`blocked`?r(`blocked`):(B.has(i.status)&&(t.redirect!==`manual`&&e.controller.connection.destroy(void 0,!1),t.redirect===`error`?n=r(`unexpected redirect`):t.redirect===`manual`?n=i:t.redirect===`follow`?n=await Ge(e,n):se(!1)),n.timingInfo=a,n)}function Ge(e,t){let n=e.request,i=t.internalResponse?t.internalResponse:t,a;try{if(a=b(i,x(n).hash),a==null)return t}catch(e){return Promise.resolve(r(e))}if(!ee(a))return Promise.resolve(r(`URL scheme must be a HTTP(S) scheme`));if(n.redirectCount===20)return Promise.resolve(r(`redirect count exceeded`));if(n.redirectCount+=1,n.mode===`cors`&&(a.username||a.password)&&!A(n,a))return Promise.resolve(r(`cross origin not allowed for request mode "cors"`));if(n.responseTainting===`cors`&&(a.username||a.password))return Promise.resolve(r(`URL cannot contain credentials for request mode "cors"`));if(i.status!==303&&n.body!=null&&n.body.source==null)return Promise.resolve(r());if([301,302].includes(i.status)&&n.method===`POST`||i.status===303&&!Ae.includes(n.method)){n.method=`GET`,n.body=null;for(let e of fe)n.headersList.delete(e)}A(x(n),a)||(n.headersList.delete(`authorization`,!0),n.headersList.delete(`proxy-authorization`,!0),n.headersList.delete(`cookie`,!0),n.headersList.delete(`host`,!0)),n.body!=null&&(se(n.body.source!=null),n.body=ce(n.body.source)[0]);let o=e.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=k(e.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),n.urlList.push(a),S(n,i),Be(e,!0)}async function Ke(e,t=!1,n=!1){let a=e.request,o=null,s=null,c=null;a.window===`no-window`&&a.redirect===`error`?(o=e,s=a):(s=d(a),o={...e},o.request=s);let l=a.credentials===`include`||a.credentials===`same-origin`&&a.responseTainting===`basic`,u=s.body?s.body.length:null,f=null;if(s.body==null&&[`POST`,`PUT`].includes(s.method)&&(f=`0`),u!=null&&(f=De(`${u}`)),f!=null&&!s.headersList.contains(`content-length`,!0)&&s.headersList.append(`content-length`,f,!0),u!=null&&s.keepalive,we.is.URL(s.referrer)&&s.headersList.append(`referer`,De(s.referrer.href),!0),y(s),T(s),s.headersList.contains(`user-agent`,!0)||s.headersList.append(`user-agent`,je,!0),s.cache==="default"&&(s.headersList.contains(`if-modified-since`,!0)||s.headersList.contains(`if-none-match`,!0)||s.headersList.contains(`if-unmodified-since`,!0)||s.headersList.contains(`if-match`,!0)||s.headersList.contains(`if-range`,!0))&&(s.cache=`no-store`),s.cache===`no-cache`&&!s.preventNoCacheCacheControlHeaderModification&&!s.headersList.contains(`cache-control`,!0)&&s.headersList.append(`cache-control`,`max-age=0`,!0),(s.cache===`no-store`||s.cache===`reload`)&&(s.headersList.contains(`pragma`,!0)||s.headersList.append(`pragma`,`no-cache`,!0),s.headersList.contains(`cache-control`,!0)||s.headersList.append(`cache-control`,`no-cache`,!0)),s.headersList.contains(`range`,!0)&&s.headersList.append(`accept-encoding`,`identity`,!0),s.headersList.contains(`accept-encoding`,!0)||(L(x(s))?s.headersList.append(`accept-encoding`,`br, gzip, deflate`,!0):s.headersList.append(`accept-encoding`,`gzip, deflate`,!0)),s.headersList.delete(`host`,!0),l&&!s.headersList.contains(`authorization`,!0)){let e=null;if(!(ie(s)&&(s.useURLCredentials===void 0||!ae(x(s))))&&ae(x(s))&&t){let{username:t,password:n}=x(s);e=`Basic ${Buffer.from(`${t}:${n}`).toString(`base64`)}`}e!==null&&s.headersList.append(`Authorization`,e,!1)}if(s.cache=`no-store`,s.cache!==`no-store`&&s.cache,c==null){if(s.cache===`only-if-cached`)return r(`only if cached`);let e=await qe(o,l,n);!de.has(s.method)&&e.status>=200&&e.status,c??=e}if(c.urlList=[...s.urlList],s.headersList.contains(`range`,!0)&&(c.rangeRequested=!0),c.requestIncludesCredentials=l,c.status===401&&s.responseTainting!==`cors`&&l&&(a.useURLCredentials!==void 0||oe(a.traversableForUserPrompts))){if(a.body!=null){if(a.body.source==null)return c;a.body=ce(a.body.source)[0]}if(a.useURLCredentials===void 0||t)return j(e)?i(e):c;e.controller.connection.destroy(),c=await Ke(e,!0)}if(c.status===407)return a.window===`no-window`?r():j(e)?i(e):r(`proxy authentication required`);if(c.status===421&&!n&&(a.body==null||a.body.source!=null)){if(j(e))return i(e);e.controller.connection.destroy(),c=await Ke(e,t,!0)}return c}async function qe(e,t=!1,n=!1){se(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(e,t=!0){this.destroyed||(this.destroyed=!0,t&&this.abort?.(e??new DOMException(`The operation was aborted.`,`AbortError`)))}};let a=e.request,s=null,c=e.timingInfo;a.cache=`no-store`,a.mode;let u=null;if(a.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(a.body!=null){let t=async function*(t){j(e)||(yield t,e.processRequestBodyChunkLength?.(t.byteLength))},n=()=>{j(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},r=t=>{j(e)||(t.name===`AbortError`?e.controller.abort():e.controller.terminate(t))};u=(async function*(){try{for await(let e of a.body.stream)yield*t(e);n()}catch(e){r(e)}})()}try{let{body:t,status:n,statusText:r,headersList:i,socket:a}=await p({body:u});if(a)s=o({status:n,statusText:r,headersList:i,socket:a});else{let a=t[Symbol.asyncIterator]();e.controller.next=()=>a.next(),s=o({status:n,statusText:r,headersList:i})}}catch(t){return t.name===`AbortError`?(e.controller.connection.destroy(),i(e,t)):r(t)}let d=new ReadableStream({start(t){e.controller.controller=t},pull:()=>e.controller.resume(),cancel:t=>{j(e)||e.controller.abort(t)},type:`bytes`});s.body={stream:d,source:null,length:null},e.controller.resume||e.controller.on(`terminated`,f),e.controller.resume=async()=>{for(;;){let t,n;try{let{done:n,value:r}=await e.controller.next();if(M(e))break;t=n?void 0:r}catch(r){e.controller.ended&&!c.encodedBodySize?t=void 0:(t=r,n=!0)}if(t===void 0){F(e.controller.controller),He(e,s);return}if(c.decodedBodySize+=t?.byteLength??0,n){e.controller.terminate(t);return}let r=new Uint8Array(t);if(r.byteLength&&e.controller.controller.enqueue(r),H(d)){e.controller.terminate();return}if(e.controller.controller.desiredSize<=0)return}};function f(t){M(e)?(s.aborted=!0,_e(d)&&e.controller.controller.error(e.controller.serializedAbortReason)):_e(d)&&e.controller.controller.error(TypeError(`terminated`,{cause:N(t)?t:void 0})),e.controller.connection.destroy()}return s;function p({body:t}){let n=x(a),r=e.controller.dispatcher,i=n.pathname+n.search,o=n.search.length===0&&n.href[n.href.length-n.hash.length-1]===`?`;return new Promise((s,u)=>r.dispatch({path:o?`${i}?`:i,origin:n.origin,method:a.method,body:r.isMockActive?a.body&&(a.body.source||a.body.stream):t,headers:a.headersList.entries,maxRedirections:0,upgrade:a.mode===`websocket`?`websocket`:void 0},{body:null,abort:null,onConnect(t){let{connection:n}=e.controller;c.finalConnectionTimingInfo=te(void 0,c.postRedirectStartTime,e.crossOriginIsolatedCapability),n.destroyed?t(new DOMException(`The operation was aborted.`,`AbortError`)):(e.controller.on(`terminated`,t),this.abort=n.abort=t),c.finalNetworkRequestStartTime=k(e.crossOriginIsolatedCapability)},onResponseStarted(){c.finalNetworkResponseStartTime=k(e.crossOriginIsolatedCapability)},onHeaders(e,t,n,r){if(e<200)return!1;let i=new l;for(let e=0;e<t.length;e+=2){let n=ye(t[e]),r=t[e+1];if(Array.isArray(r)&&!Buffer.isBuffer(t[e+1]))for(let e of r)i.append(n,e.toString(`latin1`),!0);else i.append(n,r.toString(`latin1`),!0)}let o=i.get(`location`,!0);this.body=new me({read:n});let c=o&&a.redirect===`follow`&&B.has(e),d=[];if(a.method!==`HEAD`&&a.method!==`CONNECT`&&!ue.includes(e)&&!c){let e=i.get(`content-encoding`,!0),t=e?e.toLowerCase().split(`,`):[];if(t.length>5)return u(Error(`too many content-encodings in response: ${t.length}, maximum allowed is 5`)),!0;for(let e=t.length-1;e>=0;--e){let n=t[e].trim();if(n===`x-gzip`||n===`gzip`)d.push(m.createGunzip({flush:m.constants.Z_SYNC_FLUSH,finishFlush:m.constants.Z_SYNC_FLUSH}));else if(n===`deflate`)d.push(re({flush:m.constants.Z_SYNC_FLUSH,finishFlush:m.constants.Z_SYNC_FLUSH}));else if(n===`br`)d.push(m.createBrotliDecompress({flush:m.constants.BROTLI_OPERATION_FLUSH,finishFlush:m.constants.BROTLI_OPERATION_FLUSH}));else if(n===`zstd`&&ke)d.push(m.createZstdDecompress({flush:m.constants.ZSTD_e_continue,finishFlush:m.constants.ZSTD_e_end}));else{d.length=0;break}}}let f=this.onError.bind(this);return s({status:e,statusText:r,headersList:i,body:d.length?he(this.body,...d,e=>{e&&this.onError(e)}).on(`error`,f):this.body.on(`error`,f)}),!0},onData(t){if(e.controller.dump)return;let n=t;return c.encodedBodySize+=n.byteLength,this.body.push(n)},onComplete(){this.abort&&e.controller.off(`terminated`,this.abort),e.controller.ended=!0,this.body.push(null)},onError(t){this.abort&&e.controller.off(`terminated`,this.abort),this.body?.destroy(t),e.controller.terminate(t),u(t)},onRequestUpgrade(e,t,n,r){if(r.session!=null&&t!==200||r.session==null&&t!==101)return!1;let i=new l;for(let[e,t]of Object.entries(n)){if(t==null)continue;let n=e.toLowerCase();if(Array.isArray(t))for(let e of t)i.append(n,String(e),!0);else i.append(n,String(t),!0)}return s({status:t,statusText:Te[t],headersList:i,socket:r}),!0},onUpgrade(e,t,n){if(n.session!=null&&e!==200||n.session==null&&e!==101)return!1;let r=new l;for(let e=0;e<t.length;e+=2){let n=ye(t[e]),i=t[e+1];if(Array.isArray(i)&&!Buffer.isBuffer(t[e+1]))for(let e of i)r.append(n,e.toString(`latin1`),!0);else r.append(n,i.toString(`latin1`),!0)}return s({status:e,statusText:Te[e],headersList:r,socket:n}),!0}}))}}n.exports={fetch:Fe,Fetch:Ne,fetching:ze,finalizeAndReportTiming:Ie}})),Ko=n(((e,n)=>{let r=t(`node:assert`),{URLSerializer:i}=ja(),{isValidHeaderName:a}=Pa();function o(e,t,n=!1){return i(e,n)===i(t,n)}function s(e){r(e!==null);let t=[];for(let n of e.split(`,`))n=n.trim(),a(n)&&t.push(n);return t}n.exports={urlEquals:o,getFieldValues:s}})),qo=n(((e,n)=>{let r=t(`node:assert`),{kConstruct:i}=da(),{urlEquals:a,getFieldValues:o}=Ko(),{kEnumerableProperty:s,isDisturbed:c}=q(),{webidl:l}=Na(),{cloneResponse:u,fromInnerResponse:d,getResponseState:f}=Ho(),{Request:p,fromInnerRequest:m,getRequestState:h}=Uo(),{fetching:g}=Go(),{urlIsHttpHttpsScheme:_,readAllBytes:v}=Pa(),{createDeferredPromise:y}=La();var b=class e{#e;constructor(){arguments[0]!==i&&l.illegalConstructor(),l.util.markAsUncloneable(this),this.#e=arguments[1]}async match(t,n={}){l.brandCheck(this,e);let r=`Cache.match`;l.argumentLengthCheck(arguments,1,r),t=l.converters.RequestInfo(t),n=l.converters.CacheQueryOptions(n,r,`options`);let i=this.#i(t,n,1);if(i.length!==0)return i[0]}async matchAll(t=void 0,n={}){return l.brandCheck(this,e),t!==void 0&&(t=l.converters.RequestInfo(t)),n=l.converters.CacheQueryOptions(n,`Cache.matchAll`,`options`),this.#i(t,n)}async add(t){l.brandCheck(this,e),l.argumentLengthCheck(arguments,1,`Cache.add`),t=l.converters.RequestInfo(t);let n=[t];return await this.addAll(n)}async addAll(t){l.brandCheck(this,e);let n=`Cache.addAll`;l.argumentLengthCheck(arguments,1,n);let r=[],i=[];for(let e of t){if(e===void 0)throw l.errors.conversionFailed({prefix:n,argument:`Argument 1`,types:[`undefined is not allowed`]});if(e=l.converters.RequestInfo(e),typeof e==`string`)continue;let t=h(e);if(!_(t.url)||t.method!==`GET`)throw l.errors.exception({header:n,message:`Expected http/s scheme when method is not GET.`})}let a=[];for(let e of t){let t=h(new p(e));if(!_(t.url))throw l.errors.exception({header:n,message:`Expected http/s scheme.`});t.initiator=`fetch`,t.destination=`subresource`,i.push(t);let s=y();a.push(g({request:t,processResponse(e){if(e.type===`error`||e.status===206||e.status<200||e.status>299)s.reject(l.errors.exception({header:`Cache.addAll`,message:`Received an invalid status code or the request failed.`}));else if(e.headersList.contains(`vary`)){let t=o(e.headersList.get(`vary`));for(let e of t)if(e===`*`){s.reject(l.errors.exception({header:`Cache.addAll`,message:`invalid vary field value`}));for(let e of a)e.abort();return}}},processResponseEndOfBody(e){if(e.aborted){s.reject(new DOMException(`aborted`,`AbortError`));return}s.resolve(e)}})),r.push(s.promise)}let s=await Promise.all(r),c=[],u=0;for(let e of s){let t={type:`put`,request:i[u],response:e};c.push(t),u++}let d=y(),f=null;try{this.#t(c)}catch(e){f=e}return queueMicrotask(()=>{f===null?d.resolve(void 0):d.reject(f)}),d.promise}async put(t,n){l.brandCheck(this,e);let r=`Cache.put`;l.argumentLengthCheck(arguments,2,r),t=l.converters.RequestInfo(t),n=l.converters.Response(n,r,`response`);let i=null;if(i=l.is.Request(t)?h(t):h(new p(t)),!_(i.url)||i.method!==`GET`)throw l.errors.exception({header:r,message:`Expected an http/s scheme when method is not GET`});let a=f(n);if(a.status===206)throw l.errors.exception({header:r,message:`Got 206 status`});if(a.headersList.contains(`vary`)){let e=o(a.headersList.get(`vary`));for(let t of e)if(t===`*`)throw l.errors.exception({header:r,message:`Got * vary field value`})}if(a.body&&(c(a.body.stream)||a.body.stream.locked))throw l.errors.exception({header:r,message:`Response body is locked or disturbed`});let s=u(a),d=y();a.body==null?d.resolve(void 0):v(a.body.stream.getReader(),d.resolve,d.reject);let m=[],g={type:`put`,request:i,response:s};m.push(g);let b=await d.promise;s.body!=null&&(s.body.source=b);let x=y(),S=null;try{this.#t(m)}catch(e){S=e}return queueMicrotask(()=>{S===null?x.resolve():x.reject(S)}),x.promise}async delete(t,n={}){l.brandCheck(this,e);let i=`Cache.delete`;l.argumentLengthCheck(arguments,1,i),t=l.converters.RequestInfo(t),n=l.converters.CacheQueryOptions(n,i,`options`);let a=null;if(l.is.Request(t)){if(a=h(t),a.method!==`GET`&&!n.ignoreMethod)return!1}else r(typeof t==`string`),a=h(new p(t));let o=[],s={type:`delete`,request:a,options:n};o.push(s);let c=y(),u=null,d;try{d=this.#t(o)}catch(e){u=e}return queueMicrotask(()=>{u===null?c.resolve(!!d?.length):c.reject(u)}),c.promise}async keys(t=void 0,n={}){l.brandCheck(this,e),t!==void 0&&(t=l.converters.RequestInfo(t)),n=l.converters.CacheQueryOptions(n,`Cache.keys`,`options`);let r=null;if(t!==void 0)if(l.is.Request(t)){if(r=h(t),r.method!==`GET`&&!n.ignoreMethod)return[]}else typeof t==`string`&&(r=h(new p(t)));let i=y(),a=[];if(t===void 0)for(let e of this.#e)a.push(e[0]);else{let e=this.#n(r,n);for(let t of e)a.push(t[0])}return queueMicrotask(()=>{let e=[];for(let t of a){let n=m(t,void 0,new AbortController().signal,`immutable`);e.push(n)}i.resolve(Object.freeze(e))}),i.promise}#t(e){let t=this.#e,n=[...t],i=[],a=[];try{for(let n of e){if(n.type!==`delete`&&n.type!==`put`)throw l.errors.exception({header:`Cache.#batchCacheOperations`,message:`operation type does not match "delete" or "put"`});if(n.type===`delete`&&n.response!=null)throw l.errors.exception({header:`Cache.#batchCacheOperations`,message:`delete operation should not have an associated response`});if(this.#n(n.request,n.options,i).length)throw new DOMException(`???`,`InvalidStateError`);let e;if(n.type===`delete`){if(e=this.#n(n.request,n.options),e.length===0)return[];for(let n of e){let e=t.indexOf(n);r(e!==-1),t.splice(e,1)}}else if(n.type===`put`){if(n.response==null)throw l.errors.exception({header:`Cache.#batchCacheOperations`,message:`put operation should have an associated response`});let a=n.request;if(!_(a.url))throw l.errors.exception({header:`Cache.#batchCacheOperations`,message:`expected http or https scheme`});if(a.method!==`GET`)throw l.errors.exception({header:`Cache.#batchCacheOperations`,message:`not get method`});if(n.options!=null)throw l.errors.exception({header:`Cache.#batchCacheOperations`,message:`options must not be defined`});e=this.#n(n.request);for(let n of e){let e=t.indexOf(n);r(e!==-1),t.splice(e,1)}t.push([n.request,n.response]),i.push([n.request,n.response])}a.push([n.request,n.response])}return a}catch(e){throw this.#e.length=0,this.#e=n,e}}#n(e,t,n){let r=[],i=n??this.#e;for(let n of i){let[i,a]=n;this.#r(e,i,a,t)&&r.push(n)}return r}#r(e,t,n=null,r){let i=new URL(e.url),s=new URL(t.url);if(r?.ignoreSearch&&(s.search=``,i.search=``),!a(i,s,!0))return!1;if(n==null||r?.ignoreVary||!n.headersList.contains(`vary`))return!0;let c=o(n.headersList.get(`vary`));for(let n of c)if(n===`*`||t.headersList.get(n)!==e.headersList.get(n))return!1;return!0}#i(e,t,n=1/0){let r=null;if(e!==void 0)if(l.is.Request(e)){if(r=h(e),r.method!==`GET`&&!t.ignoreMethod)return[]}else typeof e==`string`&&(r=h(new p(e)));let i=[];if(e===void 0)for(let e of this.#e)i.push(e[1]);else{let e=this.#n(r,t);for(let t of e)i.push(t[1])}let a=[];for(let e of i){let t=d(u(e),`immutable`);if(a.push(t),a.length>=n)break}return Object.freeze(a)}};Object.defineProperties(b.prototype,{[Symbol.toStringTag]:{value:`Cache`,configurable:!0},match:s,matchAll:s,add:s,addAll:s,put:s,delete:s,keys:s});let x=[{key:`ignoreSearch`,converter:l.converters.boolean,defaultValue:()=>!1},{key:`ignoreMethod`,converter:l.converters.boolean,defaultValue:()=>!1},{key:`ignoreVary`,converter:l.converters.boolean,defaultValue:()=>!1}];l.converters.CacheQueryOptions=l.dictionaryConverter(x),l.converters.MultiCacheQueryOptions=l.dictionaryConverter([...x,{key:`cacheName`,converter:l.converters.DOMString}]),l.converters.Response=l.interfaceConverter(l.is.Response,`Response`),l.converters[`sequence<RequestInfo>`]=l.sequenceConverter(l.converters.RequestInfo),n.exports={Cache:b}})),Jo=n(((e,t)=>{let{Cache:n}=qo(),{webidl:r}=Na(),{kEnumerableProperty:i}=q(),{kConstruct:a}=da();var o=class e{#e=new Map;constructor(){arguments[0]!==a&&r.illegalConstructor(),r.util.markAsUncloneable(this)}async match(t,i={}){if(r.brandCheck(this,e),r.argumentLengthCheck(arguments,1,`CacheStorage.match`),t=r.converters.RequestInfo(t),i=r.converters.MultiCacheQueryOptions(i),i.cacheName!=null){if(this.#e.has(i.cacheName))return await new n(a,this.#e.get(i.cacheName)).match(t,i)}else for(let e of this.#e.values()){let r=await new n(a,e).match(t,i);if(r!==void 0)return r}}async has(t){r.brandCheck(this,e);let n=`CacheStorage.has`;return r.argumentLengthCheck(arguments,1,n),t=r.converters.DOMString(t,n,`cacheName`),this.#e.has(t)}async open(t){r.brandCheck(this,e);let i=`CacheStorage.open`;if(r.argumentLengthCheck(arguments,1,i),t=r.converters.DOMString(t,i,`cacheName`),this.#e.has(t))return new n(a,this.#e.get(t));let o=[];return this.#e.set(t,o),new n(a,o)}async delete(t){r.brandCheck(this,e);let n=`CacheStorage.delete`;return r.argumentLengthCheck(arguments,1,n),t=r.converters.DOMString(t,n,`cacheName`),this.#e.delete(t)}async keys(){return r.brandCheck(this,e),[...this.#e.keys()]}};Object.defineProperties(o.prototype,{[Symbol.toStringTag]:{value:`CacheStorage`,configurable:!0},match:i,has:i,open:i,delete:i,keys:i}),t.exports={CacheStorage:o}})),Yo=n(((e,t)=>{t.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}})),Xo=n(((e,t)=>{function n(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n>=0&&n<=8||n>=10&&n<=31||n===127)return!0}return!1}function r(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n<33||n>126||n===34||n===40||n===41||n===60||n===62||n===64||n===44||n===59||n===58||n===92||n===47||n===91||n===93||n===63||n===61||n===123||n===125)throw Error(`Invalid cookie name`)}}function i(e){let t=e.length,n=0;if(e[0]===`"`){if(t===1||e[t-1]!==`"`)throw Error(`Invalid cookie value`);--t,++n}for(;n<t;){let t=e.charCodeAt(n++);if(t<33||t>126||t===34||t===44||t===59||t===92)throw Error(`Invalid cookie value`)}}function a(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n<32||n===127||n===59)throw Error(`Invalid cookie path`)}}function o(e){if(e.startsWith(`-`)||e.endsWith(`.`)||e.endsWith(`-`))throw Error(`Invalid cookie domain`)}let s=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],c=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],l=Array(61).fill(0).map((e,t)=>t.toString().padStart(2,`0`));function u(e){return typeof e==`number`&&(e=new Date(e)),`${s[e.getUTCDay()]}, ${l[e.getUTCDate()]} ${c[e.getUTCMonth()]} ${e.getUTCFullYear()} ${l[e.getUTCHours()]}:${l[e.getUTCMinutes()]}:${l[e.getUTCSeconds()]} GMT`}function d(e){if(e<0)throw Error(`Invalid cookie max-age`)}function f(e){if(e.name.length===0)return null;r(e.name),i(e.value);let t=[`${e.name}=${e.value}`];e.name.startsWith(`__Secure-`)&&(e.secure=!0),e.name.startsWith(`__Host-`)&&(e.secure=!0,e.domain=null,e.path=`/`),e.secure&&t.push(`Secure`),e.httpOnly&&t.push(`HttpOnly`),typeof e.maxAge==`number`&&(d(e.maxAge),t.push(`Max-Age=${e.maxAge}`)),e.domain&&(o(e.domain),t.push(`Domain=${e.domain}`)),e.path&&(a(e.path),t.push(`Path=${e.path}`)),e.expires&&e.expires.toString()!==`Invalid Date`&&t.push(`Expires=${u(e.expires)}`),e.sameSite&&t.push(`SameSite=${e.sameSite}`);for(let n of e.unparsed){if(!n.includes(`=`))throw Error(`Invalid unparsed`);let[e,...r]=n.split(`=`);t.push(`${e.trim()}=${r.join(`=`)}`)}return t.join(`; `)}t.exports={isCTLExcludingHtab:n,validateCookieName:r,validateCookiePath:a,validateCookieValue:i,toIMFDate:u,stringify:f}})),Zo=n(((e,n)=>{let{collectASequenceOfCodePointsFast:r}=Aa(),{maxNameValuePairSize:i,maxAttributeValueSize:a}=Yo(),{isCTLExcludingHtab:o}=Xo(),s=t(`node:assert`);function c(e){if(o(e))return null;let t=``,n=``,a=``,s=``;if(e.includes(`;`)){let i={position:0};t=r(`;`,e,i),n=e.slice(i.position)}else t=e;if(!t.includes(`=`))s=t;else{let e={position:0};a=r(`=`,t,e),s=t.slice(e.position+1)}return a=a.trim(),s=s.trim(),a.length+s.length>i?null:{name:a,value:s,...l(n)}}function l(e,t={}){if(e.length===0)return t;s(e[0]===`;`),e=e.slice(1);let n=``;e.includes(`;`)?(n=r(`;`,e,{position:0}),e=e.slice(n.length)):(n=e,e=``);let i=``,o=``;if(n.includes(`=`)){let e={position:0};i=r(`=`,n,e),o=n.slice(e.position+1)}else i=n;if(i=i.trim(),o=o.trim(),o.length>a)return l(e,t);let c=i.toLowerCase();if(c===`expires`)t.expires=new Date(o);else if(c===`max-age`){let n=o.charCodeAt(0);if((n<48||n>57)&&o[0]!==`-`||!/^\d+$/.test(o))return l(e,t);t.maxAge=Number(o)}else if(c===`domain`){let e=o;e[0]===`.`&&(e=e.slice(1)),e=e.toLowerCase(),t.domain=e}else if(c===`path`){let e=``;e=o.length===0||o[0]!==`/`?`/`:o,t.path=e}else if(c===`secure`)t.secure=!0;else if(c===`httponly`)t.httpOnly=!0;else if(c===`samesite`){let e=o.toLowerCase();e===`none`?t.sameSite=`None`:e===`strict`?t.sameSite=`Strict`:e===`lax`&&(t.sameSite=`Lax`)}else t.unparsed??=[],t.unparsed.push(`${i}=${o}`);return l(e,t)}n.exports={parseSetCookie:c,parseUnparsedAttributes:l}})),Qo=n(((e,t)=>{let{parseSetCookie:n}=Zo(),{stringify:r}=Xo(),{webidl:i}=Na(),{Headers:a}=Vo(),o=i.brandCheckMultiple([a,globalThis.Headers].filter(Boolean));function s(e){i.argumentLengthCheck(arguments,1,`getCookies`),o(e);let t=e.get(`cookie`),n={};if(!t)return n;for(let e of t.split(`;`)){let[t,...r]=e.split(`=`);n[t.trim()]=r.join(`=`)}return n}function c(e,t,n){o(e);let r=`deleteCookie`;i.argumentLengthCheck(arguments,2,r),t=i.converters.DOMString(t,r,`name`),n=i.converters.DeleteCookieAttributes(n),d(e,{name:t,value:``,expires:new Date(0),...n})}function l(e){i.argumentLengthCheck(arguments,1,`getSetCookies`),o(e);let t=e.getSetCookie();return t?t.map(e=>n(e)):[]}function u(e){return e=i.converters.DOMString(e),n(e)}function d(e,t){i.argumentLengthCheck(arguments,2,`setCookie`),o(e),t=i.converters.Cookie(t);let n=r(t);n&&e.append(`set-cookie`,n,!0)}i.converters.DeleteCookieAttributes=i.dictionaryConverter([{converter:i.nullableConverter(i.converters.DOMString),key:`path`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.DOMString),key:`domain`,defaultValue:()=>null}]),i.converters.Cookie=i.dictionaryConverter([{converter:i.converters.DOMString,key:`name`},{converter:i.converters.DOMString,key:`value`},{converter:i.nullableConverter(e=>typeof e==`number`?i.converters[`unsigned long long`](e):new Date(e)),key:`expires`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters[`long long`]),key:`maxAge`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.DOMString),key:`domain`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.DOMString),key:`path`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.boolean),key:`secure`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.boolean),key:`httpOnly`,defaultValue:()=>null},{converter:i.converters.USVString,key:`sameSite`,allowedValues:[`Strict`,`Lax`,`None`]},{converter:i.sequenceConverter(i.converters.DOMString),key:`unparsed`,defaultValue:()=>[]}]),t.exports={getCookies:s,deleteCookie:c,getSetCookies:l,setCookie:d,parseCookie:u}})),$o=n(((e,t)=>{let{webidl:n}=Na(),{kEnumerableProperty:r}=q(),{kConstruct:i}=da();var a=class e extends Event{#e;constructor(e,t={}){if(e===i){super(arguments[1],arguments[2]),n.util.markAsUncloneable(this);return}let r=`MessageEvent constructor`;n.argumentLengthCheck(arguments,1,r),e=n.converters.DOMString(e,r,`type`),t=n.converters.MessageEventInit(t,r,`eventInitDict`),super(e,t),this.#e=t,n.util.markAsUncloneable(this)}get data(){return n.brandCheck(this,e),this.#e.data}get origin(){return n.brandCheck(this,e),this.#e.origin}get lastEventId(){return n.brandCheck(this,e),this.#e.lastEventId}get source(){return n.brandCheck(this,e),this.#e.source}get ports(){return n.brandCheck(this,e),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(t,r=!1,i=!1,a=null,o=``,s=``,c=null,l=[]){return n.brandCheck(this,e),n.argumentLengthCheck(arguments,1,`MessageEvent.initMessageEvent`),new e(t,{bubbles:r,cancelable:i,data:a,origin:o,lastEventId:s,source:c,ports:l})}static createFastMessageEvent(t,n){let r=new e(i,t,n);return r.#e=n,r.#e.data??=null,r.#e.origin??=``,r.#e.lastEventId??=``,r.#e.source??=null,r.#e.ports??=[],r}};let{createFastMessageEvent:o}=a;delete a.createFastMessageEvent;var s=class e extends Event{#e;constructor(e,t={}){let r=`CloseEvent constructor`;n.argumentLengthCheck(arguments,1,r),e=n.converters.DOMString(e,r,`type`),t=n.converters.CloseEventInit(t),super(e,t),this.#e=t,n.util.markAsUncloneable(this)}get wasClean(){return n.brandCheck(this,e),this.#e.wasClean}get code(){return n.brandCheck(this,e),this.#e.code}get reason(){return n.brandCheck(this,e),this.#e.reason}},c=class e extends Event{#e;constructor(e,t){let r=`ErrorEvent constructor`;n.argumentLengthCheck(arguments,1,r),super(e,t),n.util.markAsUncloneable(this),e=n.converters.DOMString(e,r,`type`),t=n.converters.ErrorEventInit(t??{}),this.#e=t}get message(){return n.brandCheck(this,e),this.#e.message}get filename(){return n.brandCheck(this,e),this.#e.filename}get lineno(){return n.brandCheck(this,e),this.#e.lineno}get colno(){return n.brandCheck(this,e),this.#e.colno}get error(){return n.brandCheck(this,e),this.#e.error}};Object.defineProperties(a.prototype,{[Symbol.toStringTag]:{value:`MessageEvent`,configurable:!0},data:r,origin:r,lastEventId:r,source:r,ports:r,initMessageEvent:r}),Object.defineProperties(s.prototype,{[Symbol.toStringTag]:{value:`CloseEvent`,configurable:!0},reason:r,code:r,wasClean:r}),Object.defineProperties(c.prototype,{[Symbol.toStringTag]:{value:`ErrorEvent`,configurable:!0},message:r,filename:r,lineno:r,colno:r,error:r}),n.converters.MessagePort=n.interfaceConverter(n.is.MessagePort,`MessagePort`),n.converters[`sequence<MessagePort>`]=n.sequenceConverter(n.converters.MessagePort);let l=[{key:`bubbles`,converter:n.converters.boolean,defaultValue:()=>!1},{key:`cancelable`,converter:n.converters.boolean,defaultValue:()=>!1},{key:`composed`,converter:n.converters.boolean,defaultValue:()=>!1}];n.converters.MessageEventInit=n.dictionaryConverter([...l,{key:`data`,converter:n.converters.any,defaultValue:()=>null},{key:`origin`,converter:n.converters.USVString,defaultValue:()=>``},{key:`lastEventId`,converter:n.converters.DOMString,defaultValue:()=>``},{key:`source`,converter:n.nullableConverter(n.converters.MessagePort),defaultValue:()=>null},{key:`ports`,converter:n.converters[`sequence<MessagePort>`],defaultValue:()=>[]}]),n.converters.CloseEventInit=n.dictionaryConverter([...l,{key:`wasClean`,converter:n.converters.boolean,defaultValue:()=>!1},{key:`code`,converter:n.converters[`unsigned short`],defaultValue:()=>0},{key:`reason`,converter:n.converters.USVString,defaultValue:()=>``}]),n.converters.ErrorEventInit=n.dictionaryConverter([...l,{key:`message`,converter:n.converters.DOMString,defaultValue:()=>``},{key:`filename`,converter:n.converters.USVString,defaultValue:()=>``},{key:`lineno`,converter:n.converters[`unsigned long`],defaultValue:()=>0},{key:`colno`,converter:n.converters[`unsigned long`],defaultValue:()=>0},{key:`error`,converter:n.converters.any}]),t.exports={MessageEvent:a,CloseEvent:s,ErrorEvent:c,createFastMessageEvent:o}})),es=n(((e,t)=>{t.exports={uid:`258EAFA5-E914-47DA-95CA-C5AB0DC85B11`,sentCloseFrameState:{SENT:1,RECEIVED:2},staticPropertyDescriptors:{enumerable:!0,writable:!1,configurable:!1},states:{CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},opcodes:{CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},maxUnsigned16Bit:65535,parserStates:{INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},emptyBuffer:Buffer.allocUnsafe(0),sendHints:{text:1,typedArray:2,arrayBuffer:3,blob:4}}})),ts=n(((e,n)=>{let{states:r,opcodes:i}=es(),{isUtf8:a}=t(`node:buffer`),{removeHTTPWhitespace:o}=ja(),{collectASequenceOfCodePointsFast:s}=Aa();function c(e){return e===r.CONNECTING}function l(e){return e===r.OPEN}function u(e){return e===r.CLOSING}function d(e){return e===r.CLOSED}function f(e,t,n=(e,t)=>new Event(e,t),r={}){let i=n(e,r);t.dispatchEvent(i)}function p(e,t,n){e.onMessage(t,n)}function m(e){return e.byteLength===e.buffer.byteLength?e.buffer:new Uint8Array(e).buffer}function h(e){if(e.length===0)return!1;for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n<33||n>126||n===34||n===40||n===41||n===44||n===47||n===58||n===59||n===60||n===61||n===62||n===63||n===64||n===91||n===92||n===93||n===123||n===125)return!1}return!0}function g(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function _(e){return e===i.CLOSE||e===i.PING||e===i.PONG}function v(e){return e===i.CONTINUATION}function y(e){return e===i.TEXT||e===i.BINARY}function b(e){return y(e)||v(e)||_(e)}function x(e){let t={position:0},n=new Map;for(;t.position<e.length;){let[r,i=``]=s(`;`,e,t).split(`=`,2);n.set(o(r,!0,!1),o(i,!1,!0)),t.position++}return n}function S(e){if(e.length===0)return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<48||n>57)return!1}let t=Number.parseInt(e,10);return t>=8&&t<=15}function C(e,t){let n;try{n=new URL(e,t)}catch(e){throw new DOMException(e,`SyntaxError`)}if(n.protocol===`http:`?n.protocol=`ws:`:n.protocol===`https:`&&(n.protocol=`wss:`),n.protocol!==`ws:`&&n.protocol!==`wss:`)throw new DOMException(`expected a ws: or wss: url`,`SyntaxError`);if(n.hash.length||n.href.endsWith(`#`))throw new DOMException(`hash`,`SyntaxError`);return n}function w(e,t){if(e!==null&&e!==1e3&&(e<3e3||e>4999))throw new DOMException(`invalid code`,`InvalidAccessError`);if(t!==null){let e=Buffer.byteLength(t);if(e>123)throw new DOMException(`Reason must be less than 123 bytes; received ${e}`,`SyntaxError`)}}n.exports={isConnecting:c,isEstablished:l,isClosing:u,isClosed:d,fireEvent:f,isValidSubprotocol:h,isValidStatusCode:g,websocketMessageReceived:p,utf8Decode:(()=>{if(typeof process.versions.icu==`string`){let e=new TextDecoder(`utf-8`,{fatal:!0});return e.decode.bind(e)}return function(e){if(a(e))return e.toString(`utf-8`);throw TypeError(`Invalid utf-8 received.`)}})(),isControlFrame:_,isContinuationFrame:v,isTextBinaryFrame:y,isValidOpcode:b,parseExtensions:x,isValidClientWindowBits:S,toArrayBuffer:m,getURLRecord:C,validateCloseCodeAndReason:w}})),ns=n(((e,n)=>{let{runtimeFeatures:r}=Ma(),{maxUnsigned16Bit:i,opcodes:a}=es(),o=8*1024,s=null,c=o,l=r.has(`crypto`)?t(`node:crypto`).randomFillSync:function(e,t,n){for(let t=0;t<e.length;++t)e[t]=Math.random()*255|0;return e};function u(){return c===o&&(c=0,l(s??=Buffer.allocUnsafeSlow(o),0,o)),[s[c++],s[c++],s[c++],s[c++]]}n.exports={WebsocketFrameSend:class{constructor(e){this.frameData=e}createFrame(e){let t=this.frameData,n=u(),r=t?.byteLength??0,a=r,o=6;r>i?(o+=8,a=127):r>125&&(o+=2,a=126);let s=Buffer.allocUnsafe(r+o);s[0]=s[1]=0,s[0]|=128,s[0]=(s[0]&240)+e,s[o-4]=n[0],s[o-3]=n[1],s[o-2]=n[2],s[o-1]=n[3],s[1]=a,a===126?s.writeUInt16BE(r,2):a===127&&(s[2]=s[3]=0,s.writeUIntBE(r,4,6)),s[1]|=128;for(let e=0;e<r;++e)s[o+e]=t[e]^n[e&3];return s}static createFastTextFrame(e){let t=u(),n=e.length;for(let r=0;r<n;++r)e[r]^=t[r&3];let r=n,o=6;n>i?(o+=8,r=127):n>125&&(o+=2,r=126);let s=Buffer.allocUnsafeSlow(o);return s[0]=128|a.TEXT,s[1]=r|128,s[o-4]=t[0],s[o-3]=t[1],s[o-2]=t[2],s[o-1]=t[3],r===126?s.writeUInt16BE(n,2):r===127&&(s[2]=s[3]=0,s.writeUIntBE(n,4,6)),[s,e]}},generateMask:u}})),rs=n(((e,n)=>{let{uid:r,states:i,sentCloseFrameState:a,emptyBuffer:o,opcodes:s}=es(),{parseExtensions:c,isClosed:l,isClosing:u,isEstablished:d,isConnecting:f,validateCloseCodeAndReason:p}=ts(),{makeRequest:m}=Uo(),{fetching:h}=Go(),{Headers:g,getHeadersList:_}=Vo(),{getDecodeSplit:v}=Pa(),{WebsocketFrameSend:y}=ns(),b=t(`node:assert`),{runtimeFeatures:x}=Ma(),S=x.has(`crypto`)?t(`node:crypto`):null,C=!1;function w(e,t,n,i,a){let o=e;o.protocol=e.protocol===`ws:`?`http:`:`https:`;let s=m({urlList:[o],client:n,serviceWorkers:`none`,referrer:`no-referrer`,mode:`websocket`,credentials:`include`,cache:`no-store`,redirect:`error`,useURLCredentials:!0});a.headers&&(s.headersList=_(new g(a.headers)));let l=S.randomBytes(16).toString(`base64`);s.headersList.append(`sec-websocket-key`,l,!0),s.headersList.append(`sec-websocket-version`,`13`,!0);for(let e of t)s.headersList.append(`sec-websocket-protocol`,e,!0);return s.headersList.append(`sec-websocket-extensions`,`permessage-deflate; client_max_window_bits`,!0),h({request:s,useParallelQueue:!0,dispatcher:a.dispatcher,processResponse(e){if(e.type===`error`||e.status!==101){if(e.socket?.session==null){E(i,1002,`Received network error or non-101 status code.`,e.error);return}if(e.status!==200){E(i,1002,`Received network error or non-200 status code.`,e.error);return}}if(C===!1&&e.socket?.session!=null&&(process.emitWarning(`WebSocket over HTTP2 is experimental, and subject to change.`,`ExperimentalWarning`),C=!0),t.length!==0&&!e.headersList.get(`Sec-WebSocket-Protocol`)){E(i,1002,`Server did not respond with sent protocols.`);return}if(e.socket.session==null&&e.headersList.get(`Upgrade`)?.toLowerCase()!==`websocket`){E(i,1002,`Server did not set Upgrade header to "websocket".`);return}if(e.socket.session==null&&e.headersList.get(`Connection`)?.toLowerCase()!==`upgrade`){E(i,1002,`Server did not set Connection header to "upgrade".`);return}if(e.headersList.get(`Sec-WebSocket-Accept`)!==S.hash(`sha1`,l+r,`base64`)){E(i,1002,`Incorrect hash received in Sec-WebSocket-Accept header.`);return}let n=e.headersList.get(`Sec-WebSocket-Extensions`),a;if(n!==null&&(a=c(n),!a.has(`permessage-deflate`))){E(i,1002,`Sec-WebSocket-Extensions header does not match.`);return}let o=e.headersList.get(`Sec-WebSocket-Protocol`);if(o!==null&&!v(`sec-websocket-protocol`,s.headersList).includes(o)){E(i,1002,`Protocol was not set in the opening handshake.`);return}e.socket.on(`data`,i.onSocketData),e.socket.on(`close`,i.onSocketClose),e.socket.on(`error`,i.onSocketError),i.wasEverConnected=!0,i.onConnectionEstablished(e,a)}})}function T(e,t,n,r=!1){if(t??=null,n??=``,r&&p(t,n),!(l(e.readyState)||u(e.readyState)))if(!d(e.readyState))E(e),e.readyState=i.CLOSING;else if(!e.closeState.has(a.SENT)&&!e.closeState.has(a.RECEIVED)){let r=new y;n.length!==0&&t===null&&(t=1e3),b(t===null||Number.isInteger(t)),t===null&&n.length===0?r.frameData=o:t!==null&&n===null?(r.frameData=Buffer.allocUnsafe(2),r.frameData.writeUInt16BE(t,0)):t!==null&&n!==null?(r.frameData=Buffer.allocUnsafe(2+Buffer.byteLength(n)),r.frameData.writeUInt16BE(t,0),r.frameData.write(n,2,`utf-8`)):r.frameData=o,e.socket.write(r.createFrame(s.CLOSE)),e.closeState.add(a.SENT),e.readyState=i.CLOSING}else e.readyState=i.CLOSING}function E(e,t,n,r){d(e.readyState)&&T(e,t,n,!1),e.controller.abort(),f(e.readyState)?e.onSocketClose():e.socket?.destroyed===!1&&e.socket.destroy()}n.exports={establishWebSocketConnection:w,failWebsocketConnection:E,closeWebSocketConnection:T}})),is=n(((e,n)=>{let{createInflateRaw:r,Z_DEFAULT_WINDOWBITS:i}=t(`node:zlib`),{isValidClientWindowBits:a}=ts(),{MessageSizeExceededError:o}=K(),s=Buffer.from([0,0,255,255]),c=Symbol(`kBuffer`),l=Symbol(`kLength`);n.exports={PerMessageDeflate:class{#e;#t={};#n=0;constructor(e,t){this.#t.serverNoContextTakeover=e.has(`server_no_context_takeover`),this.#t.serverMaxWindowBits=e.get(`server_max_window_bits`),this.#n=t.maxPayloadSize}decompress(e,t,n){if(!this.#e){let e=i;if(this.#t.serverMaxWindowBits){if(!a(this.#t.serverMaxWindowBits)){n(Error(`Invalid server_max_window_bits`));return}e=Number.parseInt(this.#t.serverMaxWindowBits)}try{this.#e=r({windowBits:e})}catch(e){n(e);return}this.#e[c]=[],this.#e[l]=0,this.#e.on(`data`,e=>{if(this.#e[l]+=e.length,this.#n>0&&this.#e[l]>this.#n){n(new o),this.#e.removeAllListeners(),this.#e=null;return}this.#e[c].push(e)}),this.#e.on(`error`,e=>{this.#e=null,n(e)})}this.#e.write(e),t&&this.#e.write(s),this.#e.flush(()=>{if(!this.#e)return;let e=Buffer.concat(this.#e[c],this.#e[l]);this.#e[c].length=0,this.#e[l]=0,n(null,e)})}}}})),as=n(((e,n)=>{let{Writable:r}=t(`node:stream`),i=t(`node:assert`),{parserStates:a,opcodes:o,states:s,emptyBuffer:c,sentCloseFrameState:l}=es(),{isValidStatusCode:u,isValidOpcode:d,websocketMessageReceived:f,utf8Decode:p,isControlFrame:m,isTextBinaryFrame:h,isContinuationFrame:g}=ts(),{failWebsocketConnection:_}=rs(),{WebsocketFrameSend:v}=ns(),{PerMessageDeflate:y}=is(),{MessageSizeExceededError:b}=K();n.exports={ByteParser:class extends r{#e=[];#t=0;#n=0;#r=!1;#i=a.INFO;#a={};#o=[];#s;#c;#l;#u;constructor(e,t,n={}){super(),this.#c=e,this.#s=t??new Map,this.#l=n.maxFragments??0,this.#u=n.maxPayloadSize??0,this.#s.has(`permessage-deflate`)&&this.#s.set(`permessage-deflate`,new y(t,n))}_write(e,t,n){this.#e.push(e),this.#n+=e.length,this.#r=!0,this.run(n)}#d(){return this.#u>0&&!m(this.#a.opcode)&&this.#a.payloadLength+this.#t>this.#u?(_(this.#c,1009,`Payload size exceeds maximum allowed size`),!1):!0}run(e){for(;this.#r;)if(this.#i===a.INFO){if(this.#n<2)return e();let t=this.consume(2),n=(t[0]&128)!=0,r=t[0]&15,i=(t[1]&128)==128,s=!n&&r!==o.CONTINUATION,c=t[1]&127,l=t[0]&64,u=t[0]&32,f=t[0]&16;if(!d(r))return _(this.#c,1002,`Invalid opcode received`),e();if(i)return _(this.#c,1002,`Frame cannot be masked`),e();if(l!==0&&!this.#s.has(`permessage-deflate`)){_(this.#c,1002,`Expected RSV1 to be clear.`);return}if(u!==0||f!==0){_(this.#c,1002,`RSV1, RSV2, RSV3 must be clear`);return}if(s&&!h(r)){_(this.#c,1002,`Invalid frame type was fragmented.`);return}if(h(r)&&this.#o.length>0){_(this.#c,1002,`Expected continuation frame`);return}if(this.#a.fragmented&&s){_(this.#c,1002,`Fragmented frame exceeded 125 bytes.`);return}if((c>125||s)&&m(r)){_(this.#c,1002,`Control frame either too large or fragmented`);return}if(g(r)&&this.#o.length===0&&!this.#a.compressed){_(this.#c,1002,`Unexpected continuation frame`);return}if(c<=125){if(this.#a.payloadLength=c,this.#i=a.READ_DATA,!this.#d())return}else c===126?this.#i=a.PAYLOADLENGTH_16:c===127&&(this.#i=a.PAYLOADLENGTH_64);h(r)&&(this.#a.binaryType=r,this.#a.compressed=l!==0),this.#a.opcode=r,this.#a.masked=i,this.#a.fin=n,this.#a.fragmented=s}else if(this.#i===a.PAYLOADLENGTH_16){if(this.#n<2)return e();let t=this.consume(2);if(this.#a.payloadLength=t.readUInt16BE(0),this.#i=a.READ_DATA,!this.#d())return}else if(this.#i===a.PAYLOADLENGTH_64){if(this.#n<8)return e();let t=this.consume(8),n=t.readUInt32BE(0),r=t.readUInt32BE(4);if(n!==0||r>2**31-1){_(this.#c,1009,`Received payload length > 2^31 bytes.`);return}if(this.#a.payloadLength=r,this.#i=a.READ_DATA,!this.#d())return}else if(this.#i===a.READ_DATA){if(this.#n<this.#a.payloadLength)return e();let t=this.consume(this.#a.payloadLength);if(m(this.#a.opcode))this.#r=this.parseControlFrame(t),this.#i=a.INFO;else if(this.#a.compressed){this.#s.get(`permessage-deflate`).decompress(t,this.#a.fin,(t,n)=>{if(t){let e=t instanceof b?1009:1007;_(this.#c,e,t.message);return}if(this.writeFragments(n)){if(this.#u>0&&this.#t>this.#u){_(this.#c,1009,new b().message);return}if(!this.#a.fin){this.#i=a.INFO,this.#r=!0,this.run(e);return}f(this.#c,this.#a.binaryType,this.consumeFragments()),this.#r=!0,this.#i=a.INFO,this.run(e)}},this.#t),this.#r=!1;break}else{if(!this.writeFragments(t))return;!this.#a.fragmented&&this.#a.fin&&f(this.#c,this.#a.binaryType,this.consumeFragments()),this.#i=a.INFO}}}consume(e){if(e>this.#n)throw Error(`Called consume() before buffers satiated.`);if(e===0)return c;this.#n-=e;let t=this.#e[0];if(t.length>e)return this.#e[0]=t.subarray(e,t.length),t.subarray(0,e);if(t.length===e)return this.#e.shift();{let t=0,n=Buffer.allocUnsafeSlow(e);for(;t!==e;){let r=this.#e[0],i=r.length;if(i+t===e){n.set(this.#e.shift(),t);break}else if(i+t>e){n.set(r.subarray(0,e-t),t),this.#e[0]=r.subarray(e-t);break}else n.set(this.#e.shift(),t),t+=i}return n}}writeFragments(e){return this.#l>0&&this.#o.length===this.#l?(_(this.#c,1008,`Too many message fragments`),!1):(this.#t+=e.length,this.#o.push(e),!0)}consumeFragments(){let e=this.#o;if(e.length===1)return this.#t=0,e.shift();let t=0,n=Buffer.allocUnsafeSlow(this.#t);for(let r=0;r<e.length;++r){let i=e[r];n.set(i,t),t+=i.length}return this.#o=[],this.#t=0,n}parseCloseBody(e){i(e.length!==1);let t;if(e.length>=2&&(t=e.readUInt16BE(0)),t!==void 0&&!u(t))return{code:1002,reason:`Invalid status code`,error:!0};let n=e.subarray(2);n[0]===239&&n[1]===187&&n[2]===191&&(n=n.subarray(3));try{n=p(n)}catch{return{code:1007,reason:`Invalid UTF-8`,error:!0}}return{code:t,reason:n,error:!1}}parseControlFrame(e){let{opcode:t,payloadLength:n}=this.#a;if(t===o.CLOSE){if(n===1)return _(this.#c,1002,`Received close frame with a 1-byte body.`),!1;if(this.#a.closeInfo=this.parseCloseBody(e),this.#a.closeInfo.error){let{code:e,reason:t}=this.#a.closeInfo;return _(this.#c,e,t),!1}if(!this.#c.closeState.has(l.SENT)&&!this.#c.closeState.has(l.RECEIVED)){let e=c;this.#a.closeInfo.code&&(e=Buffer.allocUnsafe(2),e.writeUInt16BE(this.#a.closeInfo.code,0));let t=new v(e);this.#c.socket.write(t.createFrame(o.CLOSE)),this.#c.closeState.add(l.SENT)}return this.#c.readyState=s.CLOSING,this.#c.closeState.add(l.RECEIVED),!1}else if(t===o.PING){if(!this.#c.closeState.has(l.RECEIVED)){let t=new v(e);this.#c.socket.write(t.createFrame(o.PONG)),this.#c.onPing(e)}}else t===o.PONG&&this.#c.onPong(e);return!0}get closingInfo(){return this.#a.closeInfo}}}})),os=n(((e,t)=>{let{WebsocketFrameSend:n}=ns(),{opcodes:r,sendHints:i}=es(),a=Ha();var o=class{#e=new a;#t=!1;#n;constructor(e){this.#n=e}add(e,t,r){if(r!==i.blob){if(this.#t){let n={promise:null,callback:t,frame:s(e,r)};this.#e.push(n)}else if(r===i.text){let{0:r,1:i}=n.createFastTextFrame(e);this.#n.cork(),this.#n.write(r),this.#n.write(i,t),this.#n.uncork()}else this.#n.write(s(e,r),t);return}let a={promise:e.arrayBuffer().then(e=>{a.promise=null,a.frame=s(e,r)}),callback:t,frame:null};this.#e.push(a),this.#t||this.#r()}async#r(){this.#t=!0;let e=this.#e;for(;!e.isEmpty();){let t=e.shift();t.promise!==null&&await t.promise,this.#n.write(t.frame,t.callback),t.callback=t.frame=null}this.#t=!1}};function s(e,t){return new n(c(e,t)).createFrame(t===i.text?r.TEXT:r.BINARY)}function c(e,t){switch(t){case i.text:case i.typedArray:return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);case i.arrayBuffer:case i.blob:return new Uint8Array(e)}}t.exports={SendQueue:o}})),ss=n(((e,n)=>{let{isArrayBuffer:r}=t(`node:util/types`),{webidl:i}=Na(),{URLSerializer:a}=ja(),{environmentSettingsObject:o}=Pa(),{staticPropertyDescriptors:s,states:c,sentCloseFrameState:l,sendHints:u,opcodes:d}=es(),{isConnecting:f,isEstablished:p,isClosing:m,isClosed:h,isValidSubprotocol:g,fireEvent:_,utf8Decode:v,toArrayBuffer:y,getURLRecord:b}=ts(),{establishWebSocketConnection:x,closeWebSocketConnection:S,failWebsocketConnection:C}=rs(),{ByteParser:w}=as(),{kEnumerableProperty:T}=q(),{getGlobalDispatcher:E}=Co(),{ErrorEvent:D,CloseEvent:O,createFastMessageEvent:k}=$o(),{SendQueue:A}=os(),{WebsocketFrameSend:j}=ns(),{channels:M}=ga();function N(e){return typeof e?.address==`function`?e.address():typeof e?.session?.socket?.address==`function`?e.session.socket.address():null}var P=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#n=``;#r=``;#i;#a={onConnectionEstablished:(e,t)=>this.#l(e,t),onMessage:(e,t)=>this.#u(e,t),onParserError:e=>C(this.#a,null,e.message),onParserDrain:()=>this.#d(),onSocketData:e=>{this.#c.write(e)||this.#a.socket.pause()},onSocketError:e=>{this.#a.readyState=c.CLOSING,M.socketError.hasSubscribers&&M.socketError.publish(e),this.#a.socket.destroy()},onSocketClose:()=>this.#f(),onPing:e=>{M.ping.hasSubscribers&&M.ping.publish({payload:e,websocket:this})},onPong:e=>{M.pong.hasSubscribers&&M.pong.publish({payload:e,websocket:this})},readyState:c.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#o;#s;#c;constructor(t,n=[]){super(),i.util.markAsUncloneable(this);let r=`WebSocket constructor`;i.argumentLengthCheck(arguments,1,r);let a=i.converters[`DOMString or sequence<DOMString> or WebSocketInit`](n,r,`options`);t=i.converters.USVString(t),n=a.protocols;let s=o.settingsObject.baseUrl,c=b(t,s);if(typeof n==`string`&&(n=[n]),n.length!==new Set(n.map(e=>e.toLowerCase())).size||n.length>0&&!n.every(e=>g(e)))throw new DOMException(`Invalid Sec-WebSocket-Protocol value`,`SyntaxError`);this.#o=new URL(c.href);let l=o.settingsObject;this.#a.controller=x(c,n,l,this.#a,a),this.#a.readyState=e.CONNECTING,this.#s=`blob`}close(t=void 0,n=void 0){i.brandCheck(this,e),t!==void 0&&(t=i.converters[`unsigned short`](t,`WebSocket.close`,`code`,i.attributes.Clamp)),n!==void 0&&(n=i.converters.USVString(n)),t??=null,n??=``,S(this.#a,t,n,!0)}send(t){i.brandCheck(this,e);let n=`WebSocket.send`;if(i.argumentLengthCheck(arguments,1,n),t=i.converters.WebSocketSendData(t,n,`data`),f(this.#a.readyState))throw new DOMException(`Sent before connected.`,`InvalidStateError`);if(!(!p(this.#a.readyState)||m(this.#a.readyState)))if(typeof t==`string`){let e=Buffer.from(t);this.#t+=e.byteLength,this.#i.add(e,()=>{this.#t-=e.byteLength},u.text)}else r(t)?(this.#t+=t.byteLength,this.#i.add(t,()=>{this.#t-=t.byteLength},u.arrayBuffer)):ArrayBuffer.isView(t)?(this.#t+=t.byteLength,this.#i.add(t,()=>{this.#t-=t.byteLength},u.typedArray)):i.is.Blob(t)&&(this.#t+=t.size,this.#i.add(t,()=>{this.#t-=t.size},u.blob))}get readyState(){return i.brandCheck(this,e),this.#a.readyState}get bufferedAmount(){return i.brandCheck(this,e),this.#t}get url(){return i.brandCheck(this,e),a(this.#o)}get extensions(){return i.brandCheck(this,e),this.#r}get protocol(){return i.brandCheck(this,e),this.#n}get onopen(){return i.brandCheck(this,e),this.#e.open}set onopen(t){i.brandCheck(this,e),this.#e.open&&this.removeEventListener(`open`,this.#e.open);let n=i.converters.EventHandlerNonNull(t);n===null?this.#e.open=null:(this.addEventListener(`open`,n),this.#e.open=t)}get onerror(){return i.brandCheck(this,e),this.#e.error}set onerror(t){i.brandCheck(this,e),this.#e.error&&this.removeEventListener(`error`,this.#e.error);let n=i.converters.EventHandlerNonNull(t);n===null?this.#e.error=null:(this.addEventListener(`error`,n),this.#e.error=t)}get onclose(){return i.brandCheck(this,e),this.#e.close}set onclose(t){i.brandCheck(this,e),this.#e.close&&this.removeEventListener(`close`,this.#e.close);let n=i.converters.EventHandlerNonNull(t);n===null?this.#e.close=null:(this.addEventListener(`close`,n),this.#e.close=t)}get onmessage(){return i.brandCheck(this,e),this.#e.message}set onmessage(t){i.brandCheck(this,e),this.#e.message&&this.removeEventListener(`message`,this.#e.message);let n=i.converters.EventHandlerNonNull(t);n===null?this.#e.message=null:(this.addEventListener(`message`,n),this.#e.message=t)}get binaryType(){return i.brandCheck(this,e),this.#s}set binaryType(t){i.brandCheck(this,e),t!==`blob`&&t!==`arraybuffer`?this.#s=`blob`:this.#s=t}#l(e,t){this.#a.socket=e.socket;let n=this.#a.controller.dispatcher?.webSocketOptions,r=n?.maxFragments,i=n?.maxPayloadSize,a=new w(this.#a,t,{maxFragments:r,maxPayloadSize:i});a.on(`drain`,()=>this.#a.onParserDrain()),a.on(`error`,e=>this.#a.onParserError(e)),this.#c=a,this.#i=new A(e.socket),this.#a.readyState=c.OPEN;let o=e.headersList.get(`sec-websocket-extensions`);o!==null&&(this.#r=o);let s=e.headersList.get(`sec-websocket-protocol`);if(s!==null&&(this.#n=s),_(`open`,this),M.open.hasSubscribers){let t=e.headersList.entries;M.open.publish({address:N(e.socket),protocol:this.#n,extensions:this.#r,websocket:this,handshakeResponse:{status:e.status,statusText:e.statusText,headers:t}})}}#u(e,t){if(this.#a.readyState!==c.OPEN)return;let n;if(e===d.TEXT)try{n=v(t)}catch{C(this.#a,1007,`Received invalid UTF-8 in text frame.`);return}else e===d.BINARY&&(n=this.#s===`blob`?new Blob([t]):y(t));_(`message`,this,k,{origin:this.#o.origin,data:n})}#d(){this.#a.socket.resume()}#f(){let e=this.#a.closeState.has(l.SENT)&&this.#a.closeState.has(l.RECEIVED),t=1005,n=``,r=this.#c?.closingInfo;r&&!r.error&&(t=r.code??1005,n=r.reason),this.#a.readyState=c.CLOSED,this.#a.closeState.has(l.RECEIVED)||(t=1006,_(`error`,this,(e,t)=>new D(e,t),{error:TypeError(n)})),_(`close`,this,(e,t)=>new O(e,t),{wasClean:e,code:t,reason:n}),M.close.hasSubscribers&&M.close.publish({websocket:this,code:t,reason:n})}static ping(e,t){if(Buffer.isBuffer(t)){if(t.length>125)throw TypeError(`A PING frame cannot have a body larger than 125 bytes.`)}else if(t!==void 0)throw TypeError(`Expected buffer payload`);let n=e.#a.readyState;if(p(n)&&!m(n)&&!h(n)){let n=new j(t);e.#a.socket.write(n.createFrame(d.PING))}}};let{ping:F}=P;Reflect.deleteProperty(P,`ping`),P.CONNECTING=P.prototype.CONNECTING=c.CONNECTING,P.OPEN=P.prototype.OPEN=c.OPEN,P.CLOSING=P.prototype.CLOSING=c.CLOSING,P.CLOSED=P.prototype.CLOSED=c.CLOSED,Object.defineProperties(P.prototype,{CONNECTING:s,OPEN:s,CLOSING:s,CLOSED:s,url:T,readyState:T,bufferedAmount:T,onopen:T,onerror:T,onclose:T,close:T,onmessage:T,binaryType:T,send:T,extensions:T,protocol:T,[Symbol.toStringTag]:{value:`WebSocket`,writable:!1,enumerable:!1,configurable:!0}}),Object.defineProperties(P,{CONNECTING:s,OPEN:s,CLOSING:s,CLOSED:s}),i.converters[`sequence<DOMString>`]=i.sequenceConverter(i.converters.DOMString),i.converters[`DOMString or sequence<DOMString>`]=function(e,t,n){return i.util.Type(e)===i.util.Types.OBJECT&&Symbol.iterator in e?i.converters[`sequence<DOMString>`](e):i.converters.DOMString(e,t,n)},i.converters.WebSocketInit=i.dictionaryConverter([{key:`protocols`,converter:i.converters[`DOMString or sequence<DOMString>`],defaultValue:()=>[]},{key:`dispatcher`,converter:i.converters.any,defaultValue:()=>E()},{key:`headers`,converter:i.nullableConverter(i.converters.HeadersInit)}]),i.converters[`DOMString or sequence<DOMString> or WebSocketInit`]=function(e){return i.util.Type(e)===i.util.Types.OBJECT&&!(Symbol.iterator in e)?i.converters.WebSocketInit(e):{protocols:i.converters[`DOMString or sequence<DOMString>`](e)}},i.converters.WebSocketSendData=function(e){return i.util.Type(e)===i.util.Types.OBJECT&&(i.is.Blob(e)||i.is.BufferSource(e))?e:i.converters.USVString(e)},n.exports={WebSocket:P,ping:F}})),cs=n(((e,t)=>{let{webidl:n}=Na(),{validateCloseCodeAndReason:r}=ts(),{kConstruct:i}=da(),{kEnumerableProperty:a}=q();function o(){class e extends DOMException{get reason(){return``}}return new e().reason===void 0?new Proxy(DOMException,{construct(e,t,n){let r=Reflect.construct(e,t,e);return Object.setPrototypeOf(r,n.prototype),r}}):DOMException}var s=class e extends o(){#e;#t;constructor(e=``,t=void 0){if(e=n.converters.DOMString(e,`WebSocketError`,`message`),super(e,`WebSocketError`),t===i)return;t!==null&&(t=n.converters.WebSocketCloseInfo(t));let a=t.closeCode??null,o=t.reason??``;r(a,o),o.length!==0&&a===null&&(a=1e3),this.#e=a,this.#t=o}get closeCode(){return this.#e}get reason(){return this.#t}static createUnvalidatedWebSocketError(t,n,r){let a=new e(t,i);return a.#e=n,a.#t=r,a}};let{createUnvalidatedWebSocketError:c}=s;delete s.createUnvalidatedWebSocketError,Object.defineProperties(s.prototype,{closeCode:a,reason:a,[Symbol.toStringTag]:{value:`WebSocketError`,writable:!1,enumerable:!1,configurable:!0}}),n.is.WebSocketError=n.util.MakeTypeAssertion(s),t.exports={WebSocketError:s,createUnvalidatedWebSocketError:c}})),ls=n(((e,t)=>{let{createDeferredPromise:n}=La(),{environmentSettingsObject:r}=Pa(),{states:i,opcodes:a,sentCloseFrameState:o}=es(),{webidl:s}=Na(),{getURLRecord:c,isValidSubprotocol:l,isEstablished:u,utf8Decode:d}=ts(),{establishWebSocketConnection:f,failWebsocketConnection:p,closeWebSocketConnection:m}=rs(),{channels:h}=ga(),{WebsocketFrameSend:g}=ns(),{ByteParser:_}=as(),{WebSocketError:v,createUnvalidatedWebSocketError:y}=cs(),{kEnumerableProperty:b}=q(),{utf8DecodeBytes:x}=ka(),S=!1;var C=class{#e;#t;#n;#r;#i;#a;#o=!1;#s={onConnectionEstablished:(e,t)=>this.#u(e,t),onMessage:(e,t)=>this.#d(e,t),onParserError:e=>p(this.#s,null,e.message),onParserDrain:()=>this.#s.socket.resume(),onSocketData:e=>{this.#c.write(e)||this.#s.socket.pause()},onSocketError:e=>{this.#s.readyState=i.CLOSING,h.socketError.hasSubscribers&&h.socketError.publish(e),this.#s.socket.destroy()},onSocketClose:()=>this.#f(),onPing:()=>{},onPong:()=>{},readyState:i.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#c;constructor(e,t=void 0){S||=(process.emitWarning(`WebSocketStream is experimental! Expect it to change at any time.`,{code:`UNDICI-WSS`}),!0),s.argumentLengthCheck(arguments,1,`WebSocket`),e=s.converters.USVString(e),t!==null&&(t=s.converters.WebSocketStreamOptions(t));let a=r.settingsObject.baseUrl,o=c(e,a),d=t.protocols;if(d.length!==new Set(d.map(e=>e.toLowerCase())).size||d.length>0&&!d.every(e=>l(e)))throw new DOMException(`Invalid Sec-WebSocket-Protocol value`,`SyntaxError`);if(this.#e=o.toString(),this.#t=n(),this.#n=n(),t.signal!=null){let e=t.signal;if(e.aborted){this.#t.reject(e.reason),this.#n.reject(e.reason);return}e.addEventListener(`abort`,()=>{u(this.#s.readyState)||(p(this.#s),this.#s.readyState=i.CLOSING,this.#t.reject(e.reason),this.#n.reject(e.reason),this.#o=!0)},{once:!0})}let m=r.settingsObject;this.#s.controller=f(o,d,m,this.#s,t)}get url(){return this.#e.toString()}get opened(){return this.#t.promise}get closed(){return this.#n.promise}close(e=void 0){e!==null&&(e=s.converters.WebSocketCloseInfo(e));let t=e.closeCode??null,n=e.reason;m(this.#s,t,n,!0)}#l(e){e=s.converters.WebSocketStreamWrite(e);let t=n(),r=null,i=null;if(s.is.BufferSource(e))r=new Uint8Array(ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e.slice()),i=a.BINARY;else{let n;try{n=s.converters.DOMString(e)}catch(e){return t.reject(e),t.promise}r=new TextEncoder().encode(n),i=a.TEXT}if(!this.#s.closeState.has(o.SENT)&&!this.#s.closeState.has(o.RECEIVED)){let e=new g(r);this.#s.socket.write(e.createFrame(i),()=>{t.resolve(void 0)})}return t.promise}#u(e,t){this.#s.socket=e.socket;let n=this.#s.controller.dispatcher?.webSocketOptions?.maxFragments,r=this.#s.controller.dispatcher?.webSocketOptions?.maxPayloadSize,a=new _(this.#s,t,{maxFragments:n,maxPayloadSize:r});a.on(`drain`,()=>this.#s.onParserDrain()),a.on(`error`,e=>this.#s.onParserError(e)),this.#c=a,this.#s.readyState=i.OPEN;let o=t??``,s=e.headersList.get(`sec-websocket-protocol`)??``,c=new ReadableStream({start:e=>{this.#i=e},cancel:e=>this.#m(e)}),l=new WritableStream({write:e=>this.#l(e),close:()=>m(this.#s,null,null),abort:e=>this.#p(e)});this.#r=c,this.#a=l,this.#t.resolve({extensions:o,protocol:s,readable:c,writable:l})}#d(e,t){if(this.#s.readyState!==i.OPEN)return;let n;if(e===a.TEXT)try{n=d(t)}catch{p(this.#s,1007,`Received invalid UTF-8 in text frame.`);return}else e===a.BINARY&&(n=new Uint8Array(t.buffer,t.byteOffset,t.byteLength));this.#i.enqueue(n)}#f(){let e=this.#s.closeState.has(o.SENT)&&this.#s.closeState.has(o.RECEIVED);if(this.#s.readyState=i.CLOSED,this.#o)return;this.#s.wasEverConnected||this.#t.reject(new v(`Socket never opened`));let t=this.#c?.closingInfo,n=t?.code??1005;!this.#s.closeState.has(o.SENT)&&!this.#s.closeState.has(o.RECEIVED)&&(n=1006);let r=t?.reason==null?``:x(Buffer.from(t.reason));if(e)this.#i.close(),this.#a.locked||this.#a.abort(new DOMException(`A closed WebSocketStream cannot be written to`,`InvalidStateError`)),this.#n.resolve({closeCode:n,reason:r});else{let e=y(`unclean close`,n,r);this.#i?.error(e),this.#a?.abort(e),this.#n.reject(e)}}#p(e){let t=null,n=``;s.is.WebSocketError(e)&&(t=e.closeCode,n=e.reason),m(this.#s,t,n)}#m(e){this.#p(e)}};Object.defineProperties(C.prototype,{url:b,opened:b,closed:b,close:b,[Symbol.toStringTag]:{value:`WebSocketStream`,writable:!1,enumerable:!1,configurable:!0}}),s.converters.WebSocketStreamOptions=s.dictionaryConverter([{key:`protocols`,converter:s.sequenceConverter(s.converters.USVString),defaultValue:()=>[]},{key:`signal`,converter:s.nullableConverter(s.converters.AbortSignal),defaultValue:()=>null}]),s.converters.WebSocketCloseInfo=s.dictionaryConverter([{key:`closeCode`,converter:e=>s.converters[`unsigned short`](e,s.attributes.EnforceRange)},{key:`reason`,converter:s.converters.USVString,defaultValue:()=>``}]),s.converters.WebSocketStreamWrite=function(e){return typeof e==`string`?s.converters.USVString(e):s.converters.BufferSource(e)},t.exports={WebSocketStream:C}})),us=n(((e,t)=>{function n(e){return e.indexOf(`\0`)===-1}function r(e){if(e.length===0)return!1;for(let t=0;t<e.length;t++)if(e.charCodeAt(t)<48||e.charCodeAt(t)>57)return!1;return!0}t.exports={isValidLastEventId:n,isASCIINumber:r}})),ds=n(((e,n)=>{let{Transform:r}=t(`node:stream`),{isASCIINumber:i,isValidLastEventId:a}=us(),o=[239,187,191];n.exports={EventSourceStream:class extends r{state;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(e={}){e.readableObjectMode=!0,super(e),this.state=e.eventSourceSettings||{},e.push&&(this.push=e.push)}_transform(e,t,n){if(e.length===0){n();return}if(this.buffer?this.buffer=Buffer.concat([this.buffer,e]):this.buffer=e,this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===o[0]){n();return}this.checkBOM=!1,n();return;case 2:if(this.buffer[0]===o[0]&&this.buffer[1]===o[1]){n();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===o[0]&&this.buffer[1]===o[1]&&this.buffer[2]===o[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,n();return}this.checkBOM=!1;break;default:this.buffer[0]===o[0]&&this.buffer[1]===o[1]&&this.buffer[2]===o[2]&&(this.buffer=this.buffer.subarray(3)),this.checkBOM=!1;break}for(;this.pos<this.buffer.length;){if(this.eventEndCheck){if(this.crlfCheck){if(this.buffer[this.pos]===10){this.buffer=this.buffer.subarray(this.pos+1),this.pos=0,this.crlfCheck=!1;continue}this.crlfCheck=!1}if(this.buffer[this.pos]===10||this.buffer[this.pos]===13){this.buffer[this.pos]===13&&(this.crlfCheck=!0),this.buffer=this.buffer.subarray(this.pos+1),this.pos=0,(this.event.data!==void 0||this.event.event||this.event.id!==void 0||this.event.retry)&&this.processEvent(this.event),this.clearEvent();continue}this.eventEndCheck=!1;continue}if(this.buffer[this.pos]===10||this.buffer[this.pos]===13){this.buffer[this.pos]===13&&(this.crlfCheck=!0),this.parseLine(this.buffer.subarray(0,this.pos),this.event),this.buffer=this.buffer.subarray(this.pos+1),this.pos=0,this.eventEndCheck=!0;continue}this.pos++}n()}parseLine(e,t){if(e.length===0)return;let n=e.indexOf(58);if(n===0)return;let r=``,o=``;if(n!==-1){r=e.subarray(0,n).toString(`utf8`);let t=n+1;e[t]===32&&++t,o=e.subarray(t).toString(`utf8`)}else r=e.toString(`utf8`),o=``;switch(r){case`data`:t[r]===void 0?t[r]=o:t[r]+=`\n${o}`;break;case`retry`:i(o)&&(t[r]=o);break;case`id`:a(o)&&(t[r]=o);break;case`event`:o.length>0&&(t[r]=o);break}}processEvent(e){e.retry&&i(e.retry)&&(this.state.reconnectionTime=parseInt(e.retry,10)),e.id!==void 0&&a(e.id)&&(this.state.lastEventId=e.id),e.data!==void 0&&this.push({type:e.event||`message`,options:{data:e.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event={data:void 0,event:void 0,id:void 0,retry:void 0}}}}})),fs=n(((e,n)=>{let{pipeline:r}=t(`node:stream`),{fetching:i}=Go(),{makeRequest:a}=Uo(),{webidl:o}=Na(),{EventSourceStream:s}=ds(),{parseMIMEType:c}=ja(),{createFastMessageEvent:l}=$o(),{isNetworkError:u}=Ho(),{kEnumerableProperty:d}=q(),{environmentSettingsObject:f}=Pa(),p=!1,m=3e3;var h=class e extends EventTarget{#e={open:null,error:null,message:null};#t;#n=!1;#r=0;#i=null;#a=null;#o;#s;constructor(e,t={}){super(),o.util.markAsUncloneable(this);let n=`EventSource constructor`;o.argumentLengthCheck(arguments,1,n),p||(p=!0,process.emitWarning(`EventSource is experimental, expect them to change at any time.`,{code:`UNDICI-ES`})),e=o.converters.USVString(e),t=o.converters.EventSourceInitDict(t,n,`eventSourceInitDict`),this.#o=t.node.dispatcher||t.dispatcher,this.#s={lastEventId:``,reconnectionTime:t.node.reconnectionTime};let r=f,i;try{i=new URL(e,r.settingsObject.baseUrl),this.#s.origin=i.origin}catch(e){throw new DOMException(e,`SyntaxError`)}this.#t=i.href;let s=`anonymous`;t.withCredentials===!0&&(s=`use-credentials`,this.#n=!0);let c={redirect:`follow`,keepalive:!0,mode:`cors`,credentials:s===`anonymous`?`same-origin`:`omit`,referrer:`no-referrer`};c.client=f.settingsObject,c.headersList=[[`accept`,{name:`accept`,value:`text/event-stream`}]],c.cache=`no-store`,c.initiator=`other`,c.urlList=[new URL(this.#t)],this.#i=a(c),this.#c()}get readyState(){return this.#r}get url(){return this.#t}get withCredentials(){return this.#n}#c(){if(this.#r===2)return;this.#r=0;let e={request:this.#i,dispatcher:this.#o};e.processResponseEndOfBody=e=>{if(!u(e))return this.#l()},e.processResponse=e=>{if(u(e))if(e.aborted){this.close(),this.dispatchEvent(new Event(`error`));return}else{this.#l();return}let t=e.headersList.get(`content-type`,!0),n=t===null?`failure`:c(t),i=n!==`failure`&&n.essence===`text/event-stream`;if(e.status!==200||i===!1){this.close(),this.dispatchEvent(new Event(`error`));return}this.#r=1,this.dispatchEvent(new Event(`open`)),this.#s.origin=e.urlList[e.urlList.length-1].origin;let a=new s({eventSourceSettings:this.#s,push:e=>{this.dispatchEvent(l(e.type,e.options))}});r(e.body.stream,a,e=>{e?.aborted===!1&&(this.close(),this.dispatchEvent(new Event(`error`)))})},this.#a=i(e)}#l(){this.#r!==2&&(this.#r=0,this.dispatchEvent(new Event(`error`)),setTimeout(()=>{this.#r===0&&(this.#s.lastEventId.length&&this.#i.headersList.set(`last-event-id`,this.#s.lastEventId,!0),this.#c())},this.#s.reconnectionTime)?.unref())}close(){o.brandCheck(this,e),this.#r!==2&&(this.#r=2,this.#a.abort(),this.#i=null)}get onopen(){return this.#e.open}set onopen(e){this.#e.open&&this.removeEventListener(`open`,this.#e.open);let t=o.converters.EventHandlerNonNull(e);t===null?this.#e.open=null:(this.addEventListener(`open`,t),this.#e.open=e)}get onmessage(){return this.#e.message}set onmessage(e){this.#e.message&&this.removeEventListener(`message`,this.#e.message);let t=o.converters.EventHandlerNonNull(e);t===null?this.#e.message=null:(this.addEventListener(`message`,t),this.#e.message=e)}get onerror(){return this.#e.error}set onerror(e){this.#e.error&&this.removeEventListener(`error`,this.#e.error);let t=o.converters.EventHandlerNonNull(e);t===null?this.#e.error=null:(this.addEventListener(`error`,t),this.#e.error=e)}};let g={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:0,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:1,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:2,writable:!1}};Object.defineProperties(h,g),Object.defineProperties(h.prototype,g),Object.defineProperties(h.prototype,{close:d,onerror:d,onmessage:d,onopen:d,readyState:d,url:d,withCredentials:d}),o.converters.EventSourceInitDict=o.dictionaryConverter([{key:`withCredentials`,converter:o.converters.boolean,defaultValue:()=>!1},{key:`dispatcher`,converter:o.converters.any},{key:`node`,converter:o.dictionaryConverter([{key:`reconnectionTime`,converter:o.converters[`unsigned long`],defaultValue:()=>m},{key:`dispatcher`,converter:o.converters.any}]),defaultValue:()=>({})}]),n.exports={EventSource:h,defaultReconnectionTime:m}})),ps=n(((e,t)=>{let n=Va(),r=ya(),i=Wa(),a=Ga(),o=Ka(),s=qa(),c=Za(),l=Xa(),u=Qa(),d=eo(),f=to(),p=K(),m=q(),{InvalidArgumentError:h}=p,g=lo(),_=Sa(),v=ho(),{MockCallHistory:y,MockCallHistoryLog:b}=go(),x=yo(),S=_o(),C=So(),w=uo(),T=$a(),{getGlobalDispatcher:E,setGlobalDispatcher:D}=Co(),O=wo(),k=To();Object.assign(r.prototype,g),t.exports.Dispatcher=r,t.exports.Client=n,t.exports.Pool=i,t.exports.BalancedPool=a,t.exports.RoundRobinPool=o,t.exports.Agent=s,t.exports.ProxyAgent=c,t.exports.Socks5ProxyAgent=l,t.exports.EnvHttpProxyAgent=u,t.exports.RetryAgent=d,t.exports.H2CClient=f,t.exports.RetryHandler=T,t.exports.DecoratorHandler=O,t.exports.RedirectHandler=k,t.exports.interceptors={redirect:Eo(),responseError:Do(),retry:Oo(),dump:ko(),dns:Ao(),cache:Io(),decompress:Lo(),deduplicate:zo()},t.exports.cacheStores={MemoryCacheStore:Po()};let A=Bo();t.exports.cacheStores.SqliteCacheStore=A,t.exports.buildConnector=_,t.exports.errors=p,t.exports.util={parseHeaders:m.parseHeaders,headerNameToString:m.headerNameToString};function j(e){return(t,n,r)=>{if(typeof n==`function`&&(r=n,n=null),!t||typeof t!=`string`&&typeof t!=`object`&&!(t instanceof URL))throw new h(`invalid url`);if(n!=null&&typeof n!=`object`)throw new h(`invalid opts`);if(n&&n.path!=null){if(typeof n.path!=`string`)throw new h(`invalid opts.path`);let e=n.path;n.path.startsWith(`/`)||(e=`/${e}`),t=new URL(m.parseOrigin(t).origin+e)}else n||=typeof t==`object`?t:{},t=m.parseURL(t);let{agent:i,dispatcher:a=E()}=n;if(i)throw new h(`unsupported opts.agent. Did you mean opts.client?`);return e.call(a,{...n,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:n.method||(n.body?`PUT`:`GET`)},r)}}t.exports.setGlobalDispatcher=D,t.exports.getGlobalDispatcher=E;let M=Go().fetch,N=typeof __filename<`u`?__filename:void 0;function P(e,t){if(!e||typeof e!=`object`)return;let n=typeof e.stack==`string`?e.stack:``,r=t.replace(/\\/g,`/`);if(n&&(n.includes(t)||n.includes(r)))return;let i={};if(Error.captureStackTrace(i,P),!i.stack)return;let a=i.stack.split(`
|
|
96
|
+
`)}close(){this.#n.close()}get(e){i(e);let t=this.#f(e);return t?{body:t.body?Buffer.from(t.body.buffer,t.body.byteOffset,t.body.byteLength):void 0,statusCode:t.statusCode,statusMessage:t.statusMessage,headers:t.headers?JSON.parse(t.headers):void 0,etag:t.etag?t.etag:void 0,vary:t.vary?JSON.parse(t.vary):void 0,cacheControlDirectives:t.cacheControlDirectives?JSON.parse(t.cacheControlDirectives):void 0,cachedAt:t.cachedAt,staleAt:t.staleAt,deleteAt:t.deleteAt}:void 0}set(e,t){i(e);let n=this.#d(e),r=Array.isArray(t.body)?Buffer.concat(t.body):t.body,a=r?.byteLength;if(a&&a>this.#e)return;let o=this.#f(e,!0);o?this.#i.run(r,t.deleteAt,t.statusCode,t.statusMessage,t.headers?JSON.stringify(t.headers):null,t.etag?t.etag:null,t.cacheControlDirectives?JSON.stringify(t.cacheControlDirectives):null,t.cachedAt,t.staleAt,o.id):(this.#a.run(n,e.method,r,t.deleteAt,t.statusCode,t.statusMessage,t.headers?JSON.stringify(t.headers):null,t.etag?t.etag:null,t.cacheControlDirectives?JSON.stringify(t.cacheControlDirectives):null,t.vary?JSON.stringify(t.vary):null,t.cachedAt,t.staleAt),this.#u())}createWriteStream(e,t){i(e),a(t);let n=0,o=[],s=this;return new r({decodeStrings:!0,write(e,t,r){n+=e.byteLength,n<s.#e?o.push(e):this.destroy(),r()},final(n){s.set(e,{...t,body:o}),n()}})}delete(e){if(typeof e!=`object`)throw TypeError(`expected key to be object, got ${typeof e}`);this.#s.run(this.#d(e))}#u(){if(Number.isFinite(this.#t)&&this.size<=this.#t)return 0;{let e=this.#o.run(Date.now()).changes;if(e)return e}{let e=this.#l?.run(Math.max(Math.floor(this.#t*.1),1)).changes;if(e)return e}return 0}get size(){let{total:e}=this.#c.get();return e}#d(e){return`${e.origin}/${e.path}`}#f(e,t=!1){let n=this.#d(e),{headers:r,method:i}=e,a=this.#r.all(n,i);if(a.length===0)return;let o=Date.now();for(let e of a){if(o>=e.deleteAt&&!t)continue;let n=!0;if(e.vary){let t=JSON.parse(e.vary);for(let e in t)if(!c(r[e],t[e])){n=!1;break}}if(n)return e}}};function c(e,t){return e==null&&t==null?!0:e==null&&t!=null||e!=null&&t==null?!1:Array.isArray(e)&&Array.isArray(t)?e.length===t.length?e.every((e,n)=>e===t[n]):!1:e===t}})),zo=n(((e,n)=>{let{kConstruct:r}=la(),{kEnumerableProperty:i}=q(),{iteratorMixin:a,isValidHeaderName:o,isValidHeaderValue:s}=Ma(),{webidl:c}=ja(),l=t(`node:assert`),u=t(`node:util`);function d(e){return e===10||e===13||e===9||e===32}function f(e){let t=0,n=e.length;for(;n>t&&d(e.charCodeAt(n-1));)--n;for(;n>t&&d(e.charCodeAt(t));)++t;return t===0&&n===e.length?e:e.substring(t,n)}function p(e,t){if(Array.isArray(t))for(let n=0;n<t.length;++n){let r=t[n];if(r.length!==2)throw c.errors.exception({header:`Headers constructor`,message:`expected name/value pair to be length 2, found ${r.length}.`});m(e,r[0],r[1])}else if(typeof t==`object`&&t){let n=Object.keys(t);for(let r=0;r<n.length;++r)m(e,n[r],t[n[r]])}else throw c.errors.conversionFailed({prefix:`Headers constructor`,argument:`Argument 1`,types:[`sequence<sequence<ByteString>>`,`record<ByteString, ByteString>`]})}function m(e,t,n){if(n=f(n),!o(t))throw c.errors.invalidArgument({prefix:`Headers.append`,value:t,type:`header name`});if(!s(n))throw c.errors.invalidArgument({prefix:`Headers.append`,value:n,type:`header value`});if(y(e)===`immutable`)throw TypeError(`immutable`);return x(e).append(t,n,!1)}function h(e){let t=x(e);if(!t)return[];if(t.sortedMap)return t.sortedMap;let n=[],r=t.toSortedArray(),i=t.cookies;if(i===null||i.length===1)return t.sortedMap=r;for(let e=0;e<r.length;++e){let{0:t,1:a}=r[e];if(t===`set-cookie`)for(let e=0;e<i.length;++e)n.push([t,i[e]]);else n.push([t,a])}return t.sortedMap=n}function g(e,t){return e[0]<t[0]?-1:1}var _=class e{cookies=null;sortedMap;headersMap;constructor(t){t instanceof e?(this.headersMap=new Map(t.headersMap),this.sortedMap=t.sortedMap,this.cookies=t.cookies===null?null:[...t.cookies]):(this.headersMap=new Map(t),this.sortedMap=null)}contains(e,t){return this.headersMap.has(t?e:e.toLowerCase())}clear(){this.headersMap.clear(),this.sortedMap=null,this.cookies=null}append(e,t,n){this.sortedMap=null;let r=n?e:e.toLowerCase(),i=this.headersMap.get(r);if(i){let e=r===`cookie`?`; `:`, `;this.headersMap.set(r,{name:i.name,value:`${i.value}${e}${t}`})}else this.headersMap.set(r,{name:e,value:t});r===`set-cookie`&&(this.cookies??=[]).push(t)}set(e,t,n){this.sortedMap=null;let r=n?e:e.toLowerCase();r===`set-cookie`&&(this.cookies=[t]),this.headersMap.set(r,{name:e,value:t})}delete(e,t){this.sortedMap=null,t||(e=e.toLowerCase()),e===`set-cookie`&&(this.cookies=null),this.headersMap.delete(e)}get(e,t){return this.headersMap.get(t?e:e.toLowerCase())?.value??null}*[Symbol.iterator](){for(let{0:e,1:{value:t}}of this.headersMap)yield[e,t]}get entries(){let e={};if(this.headersMap.size!==0)for(let{name:t,value:n}of this.headersMap.values())e[t]=n;return e}rawValues(){return this.headersMap.values()}get entriesList(){let e=[];if(this.headersMap.size!==0)for(let{0:t,1:{name:n,value:r}}of this.headersMap)if(t===`set-cookie`)for(let t of this.cookies)e.push([n,t]);else e.push([n,r]);return e}toSortedArray(){let e=this.headersMap.size,t=Array(e);if(e<=32){if(e===0)return t;let n=this.headersMap[Symbol.iterator](),r=n.next().value;t[0]=[r[0],r[1].value],l(r[1].value!==null);for(let r=1,i=0,a=0,o=0,s=0,c,u;r<e;++r){for(u=n.next().value,c=t[r]=[u[0],u[1].value],l(c[1]!==null),o=0,a=r;o<a;)s=o+(a-o>>1),t[s][0]<=c[0]?o=s+1:a=s;if(r!==s){for(i=r;i>o;)t[i]=t[--i];t[o]=c}}if(!n.next().done)throw TypeError(`Unreachable`);return t}else{let e=0;for(let{0:n,1:{value:r}}of this.headersMap)t[e++]=[n,r],l(r!==null);return t.sort(g)}}},v=class e{#e;#t;constructor(e=void 0){c.util.markAsUncloneable(this),e!==r&&(this.#t=new _,this.#e=`none`,e!==void 0&&(e=c.converters.HeadersInit(e,`Headers constructor`,`init`),p(this,e)))}append(t,n){c.brandCheck(this,e),c.argumentLengthCheck(arguments,2,`Headers.append`);let r=`Headers.append`;return t=c.converters.ByteString(t,r,`name`),n=c.converters.ByteString(n,r,`value`),m(this,t,n)}delete(t){if(c.brandCheck(this,e),c.argumentLengthCheck(arguments,1,`Headers.delete`),t=c.converters.ByteString(t,`Headers.delete`,`name`),!o(t))throw c.errors.invalidArgument({prefix:`Headers.delete`,value:t,type:`header name`});if(this.#e===`immutable`)throw TypeError(`immutable`);this.#t.contains(t,!1)&&this.#t.delete(t,!1)}get(t){c.brandCheck(this,e),c.argumentLengthCheck(arguments,1,`Headers.get`);let n=`Headers.get`;if(t=c.converters.ByteString(t,n,`name`),!o(t))throw c.errors.invalidArgument({prefix:n,value:t,type:`header name`});return this.#t.get(t,!1)}has(t){c.brandCheck(this,e),c.argumentLengthCheck(arguments,1,`Headers.has`);let n=`Headers.has`;if(t=c.converters.ByteString(t,n,`name`),!o(t))throw c.errors.invalidArgument({prefix:n,value:t,type:`header name`});return this.#t.contains(t,!1)}set(t,n){c.brandCheck(this,e),c.argumentLengthCheck(arguments,2,`Headers.set`);let r=`Headers.set`;if(t=c.converters.ByteString(t,r,`name`),n=c.converters.ByteString(n,r,`value`),n=f(n),!o(t))throw c.errors.invalidArgument({prefix:r,value:t,type:`header name`});if(!s(n))throw c.errors.invalidArgument({prefix:r,value:n,type:`header value`});if(this.#e===`immutable`)throw TypeError(`immutable`);this.#t.set(t,n,!1)}getSetCookie(){c.brandCheck(this,e);let t=this.#t.cookies;return t?[...t]:[]}[u.inspect.custom](e,t){return t.depth??=e,`Headers ${u.formatWithOptions(t,this.#t.entries)}`}static getHeadersGuard(e){return e.#e}static setHeadersGuard(e,t){e.#e=t}static getHeadersList(e){return e.#t}static setHeadersList(e,t){e.#t=t}};let{getHeadersGuard:y,setHeadersGuard:b,getHeadersList:x,setHeadersList:S}=v;Reflect.deleteProperty(v,`getHeadersGuard`),Reflect.deleteProperty(v,`setHeadersGuard`),Reflect.deleteProperty(v,`getHeadersList`),Reflect.deleteProperty(v,`setHeadersList`),a(`Headers`,v,h,0,1),Object.defineProperties(v.prototype,{append:i,delete:i,get:i,has:i,set:i,getSetCookie:i,[Symbol.toStringTag]:{value:`Headers`,configurable:!0},[u.inspect.custom]:{enumerable:!1}}),c.converters.HeadersInit=function(e,t,n){if(c.util.Type(e)===c.util.Types.OBJECT){let r=Reflect.get(e,Symbol.iterator);if(!u.types.isProxy(e)&&r===v.prototype.entries)try{return x(e).entriesList}catch{}return typeof r==`function`?c.converters[`sequence<sequence<ByteString>>`](e,t,n,r.bind(e)):c.converters[`record<ByteString, ByteString>`](e,t,n)}throw c.errors.conversionFailed({prefix:`Headers constructor`,argument:`Argument 1`,types:[`sequence<sequence<ByteString>>`,`record<ByteString, ByteString>`]})},n.exports={fill:p,compareHeaderName:g,Headers:v,HeadersList:_,getHeadersGuard:y,setHeadersGuard:b,setHeadersList:S,getHeadersList:x}})),Bo=n(((e,n)=>{let{Headers:r,HeadersList:i,fill:a,getHeadersGuard:o,setHeadersGuard:s,setHeadersList:c}=zo(),{extractBody:l,cloneBody:u,mixinBody:d,streamRegistry:f,bodyUnusable:p}=Ia(),m=q(),h=t(`node:util`),{kEnumerableProperty:g}=m,{isValidReasonPhrase:_,isCancelled:v,isAborted:y,isErrorLike:b,environmentSettingsObject:x}=Ma(),{redirectStatusSet:S,nullBodyStatus:C}=Ta(),{webidl:w}=ja(),{URLSerializer:T}=ka(),{kConstruct:E}=la(),D=t(`node:assert`),{isomorphicEncode:O,serializeJavascriptValueToJSONString:k}=Oa(),A=new TextEncoder(`utf-8`);var j=class e{#e;#t;static error(){return ie(L(),`immutable`)}static json(e,t=void 0){w.argumentLengthCheck(arguments,1,`Response.json`),t!==null&&(t=w.converters.ResponseInit(t));let n=l(A.encode(k(e))),r=ie(ee({}),`response`);return z(r,t,{body:n[0],type:`application/json`}),r}static redirect(e,t=302){w.argumentLengthCheck(arguments,1,`Response.redirect`),e=w.converters.USVString(e),t=w.converters[`unsigned short`](t);let n;try{n=new URL(e,x.settingsObject.baseUrl)}catch(t){throw TypeError(`Failed to parse URL from ${e}`,{cause:t})}if(!S.has(t))throw RangeError(`Invalid status code ${t}`);let r=ie(ee({}),`immutable`);r.#t.status=t;let i=O(T(n));return r.#t.headersList.append(`location`,i,!0),r}constructor(e=null,t=void 0){if(w.util.markAsUncloneable(this),e===E)return;e!==null&&(e=w.converters.BodyInit(e,`Response`,`body`)),t=w.converters.ResponseInit(t),this.#t=ee({}),this.#e=new r(E),s(this.#e,`response`),c(this.#e,this.#t.headersList);let n=null;if(e!=null){let[t,r]=l(e);n={body:t,type:r}}z(this,t,n)}get type(){return w.brandCheck(this,e),this.#t.type}get url(){w.brandCheck(this,e);let t=this.#t.urlList,n=t[t.length-1]??null;return n===null?``:T(n,!0)}get redirected(){return w.brandCheck(this,e),this.#t.urlList.length>1}get status(){return w.brandCheck(this,e),this.#t.status}get ok(){return w.brandCheck(this,e),this.#t.status>=200&&this.#t.status<=299}get statusText(){return w.brandCheck(this,e),this.#t.statusText}get headers(){return w.brandCheck(this,e),this.#e}get body(){return w.brandCheck(this,e),this.#t.body?this.#t.body.stream:null}get bodyUsed(){return w.brandCheck(this,e),!!this.#t.body&&m.isDisturbed(this.#t.body.stream)}clone(){if(w.brandCheck(this,e),p(this.#t))throw w.errors.exception({header:`Response.clone`,message:`Body has already been consumed.`});let t=I(this.#t);return this.#t.urlList.length!==0&&this.#t.body?.stream&&f.register(this,new WeakRef(this.#t.body.stream)),ie(t,o(this.#e))}[h.inspect.custom](e,t){t.depth===null&&(t.depth=2),t.colors??=!0;let n={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${h.formatWithOptions(t,n)}`}static getResponseHeaders(e){return e.#e}static setResponseHeaders(e,t){e.#e=t}static getResponseState(e){return e.#t}static setResponseState(e,t){e.#t=t}};let{getResponseHeaders:M,setResponseHeaders:N,getResponseState:P,setResponseState:F}=j;Reflect.deleteProperty(j,`getResponseHeaders`),Reflect.deleteProperty(j,`setResponseHeaders`),Reflect.deleteProperty(j,`getResponseState`),Reflect.deleteProperty(j,`setResponseState`),d(j,P),Object.defineProperties(j.prototype,{type:g,url:g,status:g,ok:g,redirected:g,statusText:g,headers:g,clone:g,body:g,bodyUsed:g,[Symbol.toStringTag]:{value:`Response`,configurable:!0}}),Object.defineProperties(j,{json:g,redirect:g,error:g});function I(e){if(e.internalResponse)return ne(I(e.internalResponse),e.type);let t=ee({...e,body:null});return e.body!=null&&(t.body=u(e.body)),t}function ee(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:`default`,status:200,timingInfo:null,cacheState:``,statusText:``,...e,headersList:e?.headersList?new i(e?.headersList):new i,urlList:e?.urlList?[...e.urlList]:[]}}function L(e){return ee({type:`error`,status:0,error:b(e)?e:Error(e&&String(e)),aborted:e&&e.name===`AbortError`})}function te(e){return e.type===`error`&&e.status===0}function R(e,t){return t={internalResponse:e,...t},new Proxy(e,{get(e,n){return n in t?t[n]:e[n]},set(e,n,r){return D(!(n in t)),e[n]=r,!0}})}function ne(e,t){if(t===`basic`)return R(e,{type:`basic`,headersList:e.headersList});if(t===`cors`)return R(e,{type:`cors`,headersList:e.headersList});if(t===`opaque`)return R(e,{type:`opaque`,urlList:[],status:0,statusText:``,body:null});if(t===`opaqueredirect`)return R(e,{type:`opaqueredirect`,status:0,statusText:``,headersList:[],body:null});D(!1)}function re(e,t=null){return D(v(e)),y(e)?L(Object.assign(new DOMException(`The operation was aborted.`,`AbortError`),{cause:t})):L(Object.assign(new DOMException(`Request was cancelled.`),{cause:t}))}function z(e,t,n){if(t.status!==null&&(t.status<200||t.status>599))throw RangeError(`init["status"] must be in the range of 200 to 599, inclusive.`);if(`statusText`in t&&t.statusText!=null&&!_(String(t.statusText)))throw TypeError(`Invalid statusText`);if(`status`in t&&t.status!=null&&(P(e).status=t.status),`statusText`in t&&t.statusText!=null&&(P(e).statusText=t.statusText),`headers`in t&&t.headers!=null&&a(M(e),t.headers),n){if(C.includes(e.status))throw w.errors.exception({header:`Response constructor`,message:`Invalid response status code ${e.status}`});P(e).body=n.body,n.type!=null&&!P(e).headersList.contains(`content-type`,!0)&&P(e).headersList.append(`content-type`,n.type,!0)}}function ie(e,t){let n=new j(E);F(n,e);let i=new r(E);return N(n,i),c(i,e.headersList),s(i,t),e.urlList.length!==0&&e.body?.stream&&f.register(n,new WeakRef(e.body.stream)),n}w.converters.XMLHttpRequestBodyInit=function(e,t,n){return typeof e==`string`?w.converters.USVString(e,t,n):w.is.Blob(e)||w.is.BufferSource(e)||w.is.FormData(e)||w.is.URLSearchParams(e)?e:w.converters.DOMString(e,t,n)},w.converters.BodyInit=function(e,t,n){return w.is.ReadableStream(e)||e?.[Symbol.asyncIterator]?e:w.converters.XMLHttpRequestBodyInit(e,t,n)},w.converters.ResponseInit=w.dictionaryConverter([{key:`status`,converter:w.converters[`unsigned short`],defaultValue:()=>200},{key:`statusText`,converter:w.converters.ByteString,defaultValue:()=>``},{key:`headers`,converter:w.converters.HeadersInit}]),w.is.Response=w.util.MakeTypeAssertion(j),n.exports={isNetworkError:te,makeNetworkError:L,makeResponse:ee,makeAppropriateNetworkError:re,filterResponse:ne,Response:j,cloneResponse:I,fromInnerResponse:ie,getResponseState:P}})),Vo=n(((e,n)=>{let{extractBody:r,mixinBody:i,cloneBody:a,bodyUnusable:o}=Ia(),{Headers:s,fill:c,HeadersList:l,setHeadersGuard:u,getHeadersGuard:d,setHeadersList:f,getHeadersList:p}=zo(),m=q(),h=t(`node:util`),{isValidHTTPToken:g,sameOrigin:_,environmentSettingsObject:v}=Ma(),{forbiddenMethodsSet:y,corsSafeListedMethodsSet:b,referrerPolicy:x,requestRedirect:S,requestMode:C,requestCredentials:w,requestCache:T,requestDuplex:E}=Ta(),{kEnumerableProperty:D,normalizedMethodRecordsBase:O,normalizedMethodRecords:k}=m,{webidl:A}=ja(),{URLSerializer:j}=ka(),{kConstruct:M}=la(),N=t(`node:assert`),{getMaxListeners:P,setMaxListeners:F,defaultMaxListeners:I}=t(`node:events`),ee=Symbol(`abortController`),L=new FinalizationRegistry(({signal:e,abort:t})=>{e.removeEventListener(`abort`,t)}),te=new WeakMap,R;try{R=P(new AbortController().signal)>0}catch{R=!1}function ne(e){return t;function t(){let n=e.deref();if(n!==void 0){L.unregister(t),this.removeEventListener(`abort`,t),n.abort(this.reason);let e=te.get(n.signal);if(e!==void 0){if(e.size!==0){for(let t of e){let e=t.deref();e!==void 0&&e.abort(this.reason)}e.clear()}te.delete(n.signal)}}}}let re=!1;var z=class e{#e;#t;#n;#r;constructor(e,t=void 0){if(A.util.markAsUncloneable(this),e===M)return;A.argumentLengthCheck(arguments,1,`Request constructor`),e=A.converters.RequestInfo(e),t=A.converters.RequestInit(t);let n=null,i=null,a=v.settingsObject.baseUrl,d=null;if(typeof e==`string`){this.#t=t.dispatcher;let r;try{r=new URL(e,a)}catch(t){throw TypeError(`Failed to parse URL from `+e,{cause:t})}if(r.username||r.password)throw TypeError(`Request cannot be constructed from a URL that includes credentials: `+e);n=V({urlList:[r]}),i=`cors`}else N(A.is.Request(e)),n=e.#r,d=e.#e,this.#t=t.dispatcher||e.#t;let h=v.settingsObject.origin,x=`client`;if(n.window?.constructor?.name===`EnvironmentSettingsObject`&&_(n.window,h)&&(x=n.window),t.window!=null)throw TypeError(`'window' option '${x}' must be null`);`window`in t&&(x=`no-window`),n=V({method:n.method,headersList:n.headersList,unsafeRequest:n.unsafeRequest,client:v.settingsObject,window:x,priority:n.priority,origin:n.origin,referrer:n.referrer,referrerPolicy:n.referrerPolicy,mode:n.mode,credentials:n.credentials,cache:n.cache,redirect:n.redirect,integrity:n.integrity,keepalive:n.keepalive,reloadNavigation:n.reloadNavigation,historyNavigation:n.historyNavigation,urlList:[...n.urlList]});let S=Object.keys(t).length!==0;if(S&&(n.mode===`navigate`&&(n.mode=`same-origin`),n.reloadNavigation=!1,n.historyNavigation=!1,n.origin=`client`,n.referrer=`client`,n.referrerPolicy=``,n.url=n.urlList[n.urlList.length-1],n.urlList=[n.url]),t.referrer!==void 0){let e=t.referrer;if(e===``)n.referrer=`no-referrer`;else{let t;try{t=new URL(e,a)}catch(t){throw TypeError(`Referrer "${e}" is not a valid URL.`,{cause:t})}t.protocol===`about:`&&t.hostname===`client`||h&&!_(t,v.settingsObject.baseUrl)?n.referrer=`client`:n.referrer=t}}t.referrerPolicy!==void 0&&(n.referrerPolicy=t.referrerPolicy);let C;if(C=t.mode===void 0?i:t.mode,C===`navigate`)throw A.errors.exception({header:`Request constructor`,message:`invalid request mode navigate.`});if(C!=null&&(n.mode=C),t.credentials!==void 0&&(n.credentials=t.credentials),t.cache!==void 0&&(n.cache=t.cache),n.cache===`only-if-cached`&&n.mode!==`same-origin`)throw TypeError(`'only-if-cached' can be set only with 'same-origin' mode`);if(t.redirect!==void 0&&(n.redirect=t.redirect),t.integrity!=null&&(n.integrity=String(t.integrity)),t.keepalive!==void 0&&(n.keepalive=!!t.keepalive),t.method!==void 0){let e=t.method,r=k[e];if(r!==void 0)n.method=r;else{if(!g(e))throw TypeError(`'${e}' is not a valid HTTP method.`);let t=e.toUpperCase();if(y.has(t))throw TypeError(`'${e}' HTTP method is unsupported.`);e=O[t]??e,n.method=e}!re&&n.method===`patch`&&(process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:`UNDICI-FETCH-patch`}),re=!0)}t.signal!==void 0&&(d=t.signal),this.#r=n;let w=new AbortController;if(this.#e=w.signal,d!=null)if(d.aborted)w.abort(d.reason);else{this[ee]=w;let e=ne(new WeakRef(w));R&&P(d)===I&&F(1500,d),m.addAbortListener(d,e),L.register(w,{signal:d,abort:e},e)}if(this.#n=new s(M),f(this.#n,n.headersList),u(this.#n,`request`),C===`no-cors`){if(!b.has(n.method))throw TypeError(`'${n.method} is unsupported in no-cors mode.`);u(this.#n,`request-no-cors`)}if(S){let e=p(this.#n),n=t.headers===void 0?new l(e):t.headers;if(e.clear(),n instanceof l){for(let{name:t,value:r}of n.rawValues())e.append(t,r,!1);e.cookies=n.cookies}else c(this.#n,n)}let T=A.is.Request(e)?e.#r.body:null;if((t.body!=null||T!=null)&&(n.method===`GET`||n.method===`HEAD`))throw TypeError(`Request with GET/HEAD method cannot have body.`);let E=null;if(t.body!=null){let[e,i]=r(t.body,n.keepalive);E=e,i&&!p(this.#n).contains(`content-type`,!0)&&this.#n.append(`content-type`,i,!0)}let D=E??T;if(D!=null&&D.source==null){if(E!=null&&t.duplex==null)throw TypeError(`RequestInit: duplex option is required when sending a body.`);if(n.mode!==`same-origin`&&n.mode!==`cors`)throw TypeError(`If request is made from ReadableStream, mode should be "same-origin" or "cors"`);n.useCORSPreflightFlag=!0}let j=D;if(E==null&&T!=null){if(o(e.#r))throw TypeError(`Cannot construct a Request with a Request object that has already been used.`);let t=new TransformStream;T.stream.pipeThrough(t),j={source:T.source,length:T.length,stream:t.readable}}this.#r.body=j}get method(){return A.brandCheck(this,e),this.#r.method}get url(){return A.brandCheck(this,e),j(this.#r.url)}get headers(){return A.brandCheck(this,e),this.#n}get destination(){return A.brandCheck(this,e),this.#r.destination}get referrer(){return A.brandCheck(this,e),this.#r.referrer===`no-referrer`?``:this.#r.referrer===`client`?`about:client`:this.#r.referrer.toString()}get referrerPolicy(){return A.brandCheck(this,e),this.#r.referrerPolicy}get mode(){return A.brandCheck(this,e),this.#r.mode}get credentials(){return A.brandCheck(this,e),this.#r.credentials}get cache(){return A.brandCheck(this,e),this.#r.cache}get redirect(){return A.brandCheck(this,e),this.#r.redirect}get integrity(){return A.brandCheck(this,e),this.#r.integrity}get keepalive(){return A.brandCheck(this,e),this.#r.keepalive}get isReloadNavigation(){return A.brandCheck(this,e),this.#r.reloadNavigation}get isHistoryNavigation(){return A.brandCheck(this,e),this.#r.historyNavigation}get signal(){return A.brandCheck(this,e),this.#e}get body(){return A.brandCheck(this,e),this.#r.body?this.#r.body.stream:null}get bodyUsed(){return A.brandCheck(this,e),!!this.#r.body&&m.isDisturbed(this.#r.body.stream)}get duplex(){return A.brandCheck(this,e),`half`}clone(){if(A.brandCheck(this,e),o(this.#r))throw TypeError(`unusable`);let t=le(this.#r),n=new AbortController;if(this.signal.aborted)n.abort(this.signal.reason);else{let e=te.get(this.signal);e===void 0&&(e=new Set,te.set(this.signal,e));let t=new WeakRef(n);e.add(t),m.addAbortListener(n.signal,ne(t))}return ue(t,this.#t,n.signal,d(this.#n))}[h.inspect.custom](e,t){t.depth===null&&(t.depth=2),t.colors??=!0;let n={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${h.formatWithOptions(t,n)}`}static setRequestSignal(e,t){return e.#e=t,e}static getRequestDispatcher(e){return e.#t}static setRequestDispatcher(e,t){e.#t=t}static setRequestHeaders(e,t){e.#n=t}static getRequestState(e){return e.#r}static setRequestState(e,t){e.#r=t}};let{setRequestSignal:ie,getRequestDispatcher:ae,setRequestDispatcher:oe,setRequestHeaders:se,getRequestState:ce,setRequestState:B}=z;Reflect.deleteProperty(z,`setRequestSignal`),Reflect.deleteProperty(z,`getRequestDispatcher`),Reflect.deleteProperty(z,`setRequestDispatcher`),Reflect.deleteProperty(z,`setRequestHeaders`),Reflect.deleteProperty(z,`getRequestState`),Reflect.deleteProperty(z,`setRequestState`),i(z,ce);function V(e){return{method:e.method??`GET`,localURLsOnly:e.localURLsOnly??!1,unsafeRequest:e.unsafeRequest??!1,body:e.body??null,client:e.client??null,reservedClient:e.reservedClient??null,replacesClientId:e.replacesClientId??``,window:e.window??`client`,keepalive:e.keepalive??!1,serviceWorkers:e.serviceWorkers??`all`,initiator:e.initiator??``,destination:e.destination??``,priority:e.priority??null,origin:e.origin??`client`,policyContainer:e.policyContainer??`client`,referrer:e.referrer??`client`,referrerPolicy:e.referrerPolicy??``,mode:e.mode??`no-cors`,useCORSPreflightFlag:e.useCORSPreflightFlag??!1,credentials:e.credentials??`same-origin`,useCredentials:e.useCredentials??!1,cache:e.cache??`default`,redirect:e.redirect??`follow`,integrity:e.integrity??``,cryptoGraphicsNonceMetadata:e.cryptoGraphicsNonceMetadata??``,parserMetadata:e.parserMetadata??``,reloadNavigation:e.reloadNavigation??!1,historyNavigation:e.historyNavigation??!1,userActivation:e.userActivation??!1,taintedOrigin:e.taintedOrigin??!1,redirectCount:e.redirectCount??0,responseTainting:e.responseTainting??`basic`,preventNoCacheCacheControlHeaderModification:e.preventNoCacheCacheControlHeaderModification??!1,done:e.done??!1,timingAllowFailed:e.timingAllowFailed??!1,useURLCredentials:e.useURLCredentials??void 0,traversableForUserPrompts:e.traversableForUserPrompts??`client`,urlList:e.urlList,url:e.urlList[0],headersList:e.headersList?new l(e.headersList):new l}}function le(e){let t=V({...e,body:null});return e.body!=null&&(t.body=a(e.body)),t}function ue(e,t,n,r){let i=new z(M);B(i,e),oe(i,t),ie(i,n);let a=new s(M);return se(i,a),f(a,e.headersList),u(a,r),i}Object.defineProperties(z.prototype,{method:D,url:D,headers:D,redirect:D,clone:D,signal:D,duplex:D,destination:D,body:D,bodyUsed:D,isHistoryNavigation:D,isReloadNavigation:D,keepalive:D,integrity:D,cache:D,credentials:D,attribute:D,referrerPolicy:D,referrer:D,mode:D,[Symbol.toStringTag]:{value:`Request`,configurable:!0}}),A.is.Request=A.util.MakeTypeAssertion(z),A.converters.RequestInfo=function(e){return typeof e==`string`?A.converters.USVString(e):A.is.Request(e)?e:A.converters.USVString(e)},A.converters.RequestInit=A.dictionaryConverter([{key:`method`,converter:A.converters.ByteString},{key:`headers`,converter:A.converters.HeadersInit},{key:`body`,converter:A.nullableConverter(A.converters.BodyInit)},{key:`referrer`,converter:A.converters.USVString},{key:`referrerPolicy`,converter:A.converters.DOMString,allowedValues:x},{key:`mode`,converter:A.converters.DOMString,allowedValues:C},{key:`credentials`,converter:A.converters.DOMString,allowedValues:w},{key:`cache`,converter:A.converters.DOMString,allowedValues:T},{key:`redirect`,converter:A.converters.DOMString,allowedValues:S},{key:`integrity`,converter:A.converters.DOMString},{key:`keepalive`,converter:A.converters.boolean},{key:`signal`,converter:A.nullableConverter(e=>A.converters.AbortSignal(e,`RequestInit`,`signal`))},{key:`window`,converter:A.converters.any},{key:`duplex`,converter:A.converters.DOMString,allowedValues:E},{key:`dispatcher`,converter:A.converters.any},{key:`priority`,converter:A.converters.DOMString,allowedValues:[`high`,`low`,`auto`],defaultValue:()=>`auto`}]),n.exports={Request:z,makeRequest:V,fromInnerRequest:ue,cloneRequest:le,getRequestDispatcher:ae,getRequestState:ce}})),Ho=n(((e,n)=>{let r=t(`node:assert`),{runtimeFeatures:i}=Aa(),a=new Map([[`sha256`,0],[`sha384`,1],[`sha512`,2]]),o;if(i.has(`crypto`)){o=t(`node:crypto`);let e=o.getHashes();e.length===0&&a.clear();for(let t of a.keys())e.includes(t)===!1&&a.delete(t)}else a.clear();let s=Map.prototype.get.bind(a),c=Map.prototype.has.bind(a),l=i.has(`crypto`)===!1||a.size===0?()=>!0:(e,t)=>{let n=d(t);if(n.length===0)return!0;let r=u(n);for(let t of r){let n=t.alg,r=t.val;if(p(f(n,e),r))return!0}return!1};function u(e){let t=[],n=null;for(let i of e){if(r(c(i.alg),`Invalid SRI hash algorithm token`),t.length===0){t.push(i),n=i;continue}let e=n.alg,a=s(e),o=i.alg,l=s(o);l<a||(l>a?(n=i,t[0]=i,t.length=1):t.push(i))}return t}function d(e){let t=[];for(let n of e.split(` `)){let e=n.split(`?`,1)[0],r=``,i=[e.slice(0,6),e.slice(7)],a=i[0];if(!c(a))continue;i[1]&&(r=i[1]);let o={alg:a,val:r};t.push(o)}return t}let f=(e,t)=>o.hash(e,t,`base64`);function p(e,t){let n=e.length;n!==0&&e[n-1]===`=`&&--n,n!==0&&e[n-1]===`=`&&--n;let r=t.length;if(r!==0&&t[r-1]===`=`&&--r,r!==0&&t[r-1]===`=`&&--r,n!==r)return!1;for(let r=0;r<n;++r)if(!(e[r]===t[r]||e[r]===`+`&&t[r]===`-`||e[r]===`/`&&t[r]===`_`))return!1;return!0}n.exports={applyAlgorithmToBytes:f,bytesMatch:l,caseSensitiveMatch:p,isValidSRIHashAlgorithm:c,getStrongestMetadata:u,parseMetadata:d}})),Uo=n(((e,n)=>{let{makeNetworkError:r,makeAppropriateNetworkError:i,filterResponse:a,makeResponse:o,fromInnerResponse:s,getResponseState:c}=Bo(),{HeadersList:l}=zo(),{Request:u,cloneRequest:d,getRequestDispatcher:f,getRequestState:p}=Vo(),m=t(`node:zlib`),{makePolicyContainer:h,clonePolicyContainer:g,requestBadPort:_,TAOCheck:v,appendRequestOriginHeader:y,responseLocationURL:b,requestCurrentURL:x,setRequestReferrerPolicyOnRedirect:S,tryUpgradeRequestToAPotentiallyTrustworthyURL:C,createOpaqueTimingInfo:w,appendFetchMetadata:T,corsCheck:E,crossOriginResourcePolicyCheck:D,determineRequestsReferrer:O,coarsenedSharedCurrentTime:k,sameOrigin:A,isCancelled:j,isAborted:M,isErrorLike:N,fullyReadBody:P,readableStreamClose:F,urlIsLocal:I,urlIsHttpHttpsScheme:ee,urlHasHttpsScheme:L,clampAndCoarsenConnectionTimingInfo:te,simpleRangeHeaderValue:R,buildContentRange:ne,createInflate:re,extractMimeType:z,hasAuthenticationEntry:ie,includesCredentials:ae,isTraversableNavigable:oe}=Ma(),se=t(`node:assert`),{safelyExtractBody:ce,extractBody:B}=Ia(),{redirectStatusSet:V,nullBodyStatus:le,safeMethodsSet:ue,requestBodyHeader:de,subresourceSet:fe}=Ta(),pe=t(`node:events`),{Readable:me,pipeline:he,finished:ge,isErrored:H,isReadable:_e}=t(`node:stream`),{addAbortListener:ve,bufferToLowerCasedHeaderName:ye}=q(),{dataURLProcessor:be,serializeAMimeType:xe,minimizeSupportedMimeType:Se}=ka(),{getGlobalDispatcher:Ce}=xo(),{webidl:we}=ja(),{STATUS_CODES:U}=t(`node:http`),{bytesMatch:Te}=Ho(),{createDeferredPromise:Ee}=Fa(),{isomorphicEncode:De}=Oa(),{runtimeFeatures:Oe}=Aa(),ke=Oe.has(`zstd`),Ae=[`GET`,`HEAD`],je=typeof __UNDICI_IS_NODE__<`u`||typeof esbuildDetection<`u`?`node`:`undici`,Me;var Ne=class extends pe{constructor(e){super(),this.dispatcher=e,this.connection=null,this.dump=!1,this.state=`ongoing`}terminate(e){this.state===`ongoing`&&(this.state=`terminated`,this.connection?.destroy(e),this.emit(`terminated`,e))}abort(e){this.state===`ongoing`&&(this.state=`aborted`,e||=new DOMException(`The operation was aborted.`,`AbortError`),this.serializedAbortReason=e,this.connection?.destroy(e),this.emit(`terminated`,e))}};function Pe(e){Ie(e,`fetch`)}function Fe(e,t=void 0){we.argumentLengthCheck(arguments,1,`globalThis.fetch`);let n=Ee(),r;try{r=new u(e,t)}catch(e){return n.reject(e),n.promise}let i=p(r);if(r.signal.aborted)return Re(n,i,null,r.signal.reason,null),n.promise;i.client.globalObject?.constructor?.name===`ServiceWorkerGlobalScope`&&(i.serviceWorkers=`none`);let a=null,o=!1,c=null;return ve(r.signal,()=>{o=!0,se(c!=null),c.abort(r.signal.reason);let e=a?.deref();Re(n,i,e,r.signal.reason,c.controller)}),c=ze({request:i,processResponseEndOfBody:Pe,processResponse:e=>{if(!o){if(e.aborted){Re(n,i,a,c.serializedAbortReason,c.controller);return}if(e.type===`error`){n.reject(TypeError(`fetch failed`,{cause:e.error}));return}a=new WeakRef(s(e,`immutable`)),n.resolve(a.deref()),n=null}},dispatcher:f(r),requestObject:r}),n.promise}function Ie(e,t=`other`){if(e.type===`error`&&e.aborted||!e.urlList?.length)return;let n=e.urlList[0],r=e.timingInfo,i=e.cacheState;ee(n)&&r!==null&&(e.timingAllowPassed||(r=w({startTime:r.startTime}),i=``),r.endTime=k(),e.timingInfo=r,Le(r,n.href,t,globalThis,i,``,e.status))}let Le=performance.markResourceTiming;function Re(e,t,n,r,i){if(e&&e.reject(r),t.body?.stream!=null&&_e(t.body.stream)&&t.body.stream.cancel(r).catch(e=>{if(e.code!==`ERR_INVALID_STATE`)throw e}),n==null)return;let a=c(n);a.body?.stream!=null&&_e(a.body.stream)&&i.error(r)}function ze({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:n,processResponse:r,processResponseEndOfBody:i,processResponseConsumeBody:a,useParallelQueue:o=!1,dispatcher:s=Ce(),requestObject:c=null}){se(s);let l=null,u=!1;e.client!=null&&(l=e.client.globalObject,u=e.client.crossOriginIsolatedCapability);let d=w({startTime:k(u)}),f={controller:new Ne(s),request:e,timingInfo:d,processRequestBodyChunkLength:t,processRequestEndOfBody:n,processResponse:r,processResponseConsumeBody:a,processResponseEndOfBody:i,taskDestination:l,crossOriginIsolatedCapability:u,requestObject:c};return se(!e.body||e.body.stream),e.window===`client`&&(e.window=e.client?.globalObject?.constructor?.name===`Window`?e.client:`no-window`),e.origin===`client`&&(e.origin=e.client.origin),e.policyContainer===`client`&&(e.client==null?e.policyContainer=h():e.policyContainer=g(e.client.policyContainer)),e.headersList.contains(`accept`,!0)||e.headersList.append(`accept`,`*/*`,!0),e.headersList.contains(`accept-language`,!0)||e.headersList.append(`accept-language`,`*`,!0),e.priority,fe.has(e.destination),Be(f,!1),f.controller}async function Be(e,t){try{let n=e.request,i=null;if(n.localURLsOnly&&!I(x(n))&&(i=r(`local URLs only`)),C(n),_(n)===`blocked`&&(i=r(`bad port`)),n.referrerPolicy===``&&(n.referrerPolicy=n.policyContainer.referrerPolicy),n.referrer!==`no-referrer`&&(n.referrer=O(n)),i===null){let t=x(n);A(t,n.url)&&n.responseTainting===`basic`||t.protocol===`data:`||n.mode===`navigate`||n.mode===`websocket`?(n.responseTainting=`basic`,i=await Ve(e)):n.mode===`same-origin`?i=r(`request mode cannot be "same-origin"`):n.mode===`no-cors`?n.redirect===`follow`?(n.responseTainting=`opaque`,i=await Ve(e)):i=r(`redirect mode cannot be "follow" for "no-cors" request`):ee(x(n))?(n.responseTainting=`cors`,i=await We(e)):i=r(`URL scheme must be a HTTP(S) scheme`)}if(t)return i;i.status!==0&&!i.internalResponse&&(n.responseTainting,n.responseTainting===`basic`?i=a(i,`basic`):n.responseTainting===`cors`?i=a(i,`cors`):n.responseTainting===`opaque`?i=a(i,`opaque`):se(!1));let o=i.status===0?i:i.internalResponse;if(o.urlList.length===0&&o.urlList.push(...n.urlList),n.timingAllowFailed||(i.timingAllowPassed=!0),i.type===`opaque`&&o.status===206&&o.rangeRequested&&!n.headers.contains(`range`,!0)&&(i=o=r()),i.status!==0&&(n.method===`HEAD`||n.method===`CONNECT`||le.includes(o.status))&&(o.body=null,e.controller.dump=!0),n.integrity){let t=t=>Ue(e,r(t));if(n.responseTainting===`opaque`||i.body==null){t(i.error);return}P(i.body,r=>{if(!Te(r,n.integrity)){t(`integrity mismatch`);return}i.body=ce(r)[0],Ue(e,i)},t)}else Ue(e,i)}catch(t){e.controller.terminate(t)}}function Ve(e){if(j(e)&&e.request.redirectCount===0)return Promise.resolve(i(e));let{request:n}=e,{protocol:a}=x(n);switch(a){case`about:`:return Promise.resolve(r(`about scheme is not supported`));case`blob:`:{Me||=t(`node:buffer`).resolveObjectURL;let e=x(n);if(e.search.length!==0)return Promise.resolve(r(`NetworkError when attempting to fetch resource.`));let i=Me(e.toString());if(n.method!==`GET`||!we.is.Blob(i))return Promise.resolve(r(`invalid method`));let a=o(),s=i.size,c=De(`${s}`),l=i.type;if(n.headersList.contains(`range`,!0)){a.rangeRequested=!0;let e=R(n.headersList.get(`range`,!0),!0);if(e===`failure`)return Promise.resolve(r(`failed to fetch the data URL`));let{rangeStartValue:t,rangeEndValue:o}=e;if(t===null)t=s-o,o=t+o-1;else{if(t>=s)return Promise.resolve(r(`Range start is greater than the blob's size.`));(o===null||o>=s)&&(o=s-1)}let c=i.slice(t,o+1,l);a.body=B(c)[0];let u=De(`${c.size}`),d=ne(t,o,s);a.status=206,a.statusText=`Partial Content`,a.headersList.set(`content-length`,u,!0),a.headersList.set(`content-type`,l,!0),a.headersList.set(`content-range`,d,!0)}else{let e=B(i);a.statusText=`OK`,a.body=e[0],a.headersList.set(`content-length`,c,!0),a.headersList.set(`content-type`,l,!0)}return Promise.resolve(a)}case`data:`:{let e=be(x(n));if(e===`failure`)return Promise.resolve(r(`failed to fetch the data URL`));let t=xe(e.mimeType);return Promise.resolve(o({statusText:`OK`,headersList:[[`content-type`,{name:`Content-Type`,value:t}]],body:ce(e.body)[0]}))}case`file:`:return Promise.resolve(r(`not implemented... yet...`));case`http:`:case`https:`:return We(e).catch(e=>r(e));default:return Promise.resolve(r(`unknown scheme`))}}function He(e,t){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(t))}function Ue(e,t){let n=e.timingInfo,r=()=>{let r=Date.now();e.request.destination===`document`&&(e.controller.fullTimingInfo=n),e.controller.reportTimingSteps=()=>{if(!ee(e.request.url))return;n.endTime=r;let i=t.cacheState,a=t.bodyInfo;t.timingAllowPassed||(n=w(n),i=``);let o=0;if(e.request.mode!==`navigate`||!t.hasCrossOriginRedirects){o=t.status;let e=z(t.headersList);e!==`failure`&&(a.contentType=Se(e))}e.request.initiatorType!=null&&Le(n,e.request.url.href,e.request.initiatorType,globalThis,i,a,o)};let i=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(t)),e.request.initiatorType!=null&&e.controller.reportTimingSteps()};queueMicrotask(()=>i())};e.processResponse!=null&&queueMicrotask(()=>{e.processResponse(t),e.processResponse=null});let i=t.type===`error`?t:t.internalResponse??t;i.body==null?r():ge(i.body.stream,()=>{r()})}async function We(e){let t=e.request,n=null,i=null,a=e.timingInfo;if(t.serviceWorkers,n===null){if(t.redirect===`follow`&&(t.serviceWorkers=`none`),i=n=await Ke(e),t.responseTainting===`cors`&&E(t,n)===`failure`)return r(`cors failure`);v(t,n)===`failure`&&(t.timingAllowFailed=!0)}return(t.responseTainting===`opaque`||n.type===`opaque`)&&D(t.origin,t.client,t.destination,i)===`blocked`?r(`blocked`):(V.has(i.status)&&(t.redirect!==`manual`&&e.controller.connection.destroy(void 0,!1),t.redirect===`error`?n=r(`unexpected redirect`):t.redirect===`manual`?n=i:t.redirect===`follow`?n=await Ge(e,n):se(!1)),n.timingInfo=a,n)}function Ge(e,t){let n=e.request,i=t.internalResponse?t.internalResponse:t,a;try{if(a=b(i,x(n).hash),a==null)return t}catch(e){return Promise.resolve(r(e))}if(!ee(a))return Promise.resolve(r(`URL scheme must be a HTTP(S) scheme`));if(n.redirectCount===20)return Promise.resolve(r(`redirect count exceeded`));if(n.redirectCount+=1,n.mode===`cors`&&(a.username||a.password)&&!A(n,a))return Promise.resolve(r(`cross origin not allowed for request mode "cors"`));if(n.responseTainting===`cors`&&(a.username||a.password))return Promise.resolve(r(`URL cannot contain credentials for request mode "cors"`));if(i.status!==303&&n.body!=null&&n.body.source==null)return Promise.resolve(r());if([301,302].includes(i.status)&&n.method===`POST`||i.status===303&&!Ae.includes(n.method)){n.method=`GET`,n.body=null;for(let e of de)n.headersList.delete(e)}A(x(n),a)||(n.headersList.delete(`authorization`,!0),n.headersList.delete(`proxy-authorization`,!0),n.headersList.delete(`cookie`,!0),n.headersList.delete(`host`,!0)),n.body!=null&&(se(n.body.source!=null),n.body=ce(n.body.source)[0]);let o=e.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=k(e.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),n.urlList.push(a),S(n,i),Be(e,!0)}async function Ke(e,t=!1,n=!1){let a=e.request,o=null,s=null,c=null;a.window===`no-window`&&a.redirect===`error`?(o=e,s=a):(s=d(a),o={...e},o.request=s);let l=a.credentials===`include`||a.credentials===`same-origin`&&a.responseTainting===`basic`,u=s.body?s.body.length:null,f=null;if(s.body==null&&[`POST`,`PUT`].includes(s.method)&&(f=`0`),u!=null&&(f=De(`${u}`)),f!=null&&!s.headersList.contains(`content-length`,!0)&&s.headersList.append(`content-length`,f,!0),u!=null&&s.keepalive,we.is.URL(s.referrer)&&s.headersList.append(`referer`,De(s.referrer.href),!0),y(s),T(s),s.headersList.contains(`user-agent`,!0)||s.headersList.append(`user-agent`,je,!0),s.cache==="default"&&(s.headersList.contains(`if-modified-since`,!0)||s.headersList.contains(`if-none-match`,!0)||s.headersList.contains(`if-unmodified-since`,!0)||s.headersList.contains(`if-match`,!0)||s.headersList.contains(`if-range`,!0))&&(s.cache=`no-store`),s.cache===`no-cache`&&!s.preventNoCacheCacheControlHeaderModification&&!s.headersList.contains(`cache-control`,!0)&&s.headersList.append(`cache-control`,`max-age=0`,!0),(s.cache===`no-store`||s.cache===`reload`)&&(s.headersList.contains(`pragma`,!0)||s.headersList.append(`pragma`,`no-cache`,!0),s.headersList.contains(`cache-control`,!0)||s.headersList.append(`cache-control`,`no-cache`,!0)),s.headersList.contains(`range`,!0)&&s.headersList.append(`accept-encoding`,`identity`,!0),s.headersList.contains(`accept-encoding`,!0)||(L(x(s))?s.headersList.append(`accept-encoding`,`br, gzip, deflate`,!0):s.headersList.append(`accept-encoding`,`gzip, deflate`,!0)),s.headersList.delete(`host`,!0),l&&!s.headersList.contains(`authorization`,!0)){let e=null;if(!(ie(s)&&(s.useURLCredentials===void 0||!ae(x(s))))&&ae(x(s))&&t){let{username:t,password:n}=x(s);e=`Basic ${Buffer.from(`${t}:${n}`).toString(`base64`)}`}e!==null&&s.headersList.append(`Authorization`,e,!1)}if(s.cache=`no-store`,s.cache!==`no-store`&&s.cache,c==null){if(s.cache===`only-if-cached`)return r(`only if cached`);let e=await qe(o,l,n);!ue.has(s.method)&&e.status>=200&&e.status,c??=e}if(c.urlList=[...s.urlList],s.headersList.contains(`range`,!0)&&(c.rangeRequested=!0),c.requestIncludesCredentials=l,c.status===401&&s.responseTainting!==`cors`&&l&&(a.useURLCredentials!==void 0||oe(a.traversableForUserPrompts))){if(a.body!=null){if(a.body.source==null)return c;a.body=ce(a.body.source)[0]}if(a.useURLCredentials===void 0||t)return j(e)?i(e):c;e.controller.connection.destroy(),c=await Ke(e,!0)}if(c.status===407)return a.window===`no-window`?r():j(e)?i(e):r(`proxy authentication required`);if(c.status===421&&!n&&(a.body==null||a.body.source!=null)){if(j(e))return i(e);e.controller.connection.destroy(),c=await Ke(e,t,!0)}return c}async function qe(e,t=!1,n=!1){se(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(e,t=!0){this.destroyed||(this.destroyed=!0,t&&this.abort?.(e??new DOMException(`The operation was aborted.`,`AbortError`)))}};let a=e.request,s=null,c=e.timingInfo;a.cache=`no-store`,a.mode;let u=null;if(a.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(a.body!=null){let t=async function*(t){j(e)||(yield t,e.processRequestBodyChunkLength?.(t.byteLength))},n=()=>{j(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},r=t=>{j(e)||(t.name===`AbortError`?e.controller.abort():e.controller.terminate(t))};u=(async function*(){try{for await(let e of a.body.stream)yield*t(e);n()}catch(e){r(e)}})()}try{let{body:t,status:n,statusText:r,headersList:i,socket:a}=await p({body:u});if(a)s=o({status:n,statusText:r,headersList:i,socket:a});else{let a=t[Symbol.asyncIterator]();e.controller.next=()=>a.next(),s=o({status:n,statusText:r,headersList:i})}}catch(t){return t.name===`AbortError`?(e.controller.connection.destroy(),i(e,t)):r(t)}let d=new ReadableStream({start(t){e.controller.controller=t},pull:()=>e.controller.resume(),cancel:t=>{j(e)||e.controller.abort(t)},type:`bytes`});s.body={stream:d,source:null,length:null},e.controller.resume||e.controller.on(`terminated`,f),e.controller.resume=async()=>{for(;;){let t,n;try{let{done:n,value:r}=await e.controller.next();if(M(e))break;t=n?void 0:r}catch(r){e.controller.ended&&!c.encodedBodySize?t=void 0:(t=r,n=!0)}if(t===void 0){F(e.controller.controller),He(e,s);return}if(c.decodedBodySize+=t?.byteLength??0,n){e.controller.terminate(t);return}let r=new Uint8Array(t);if(r.byteLength&&e.controller.controller.enqueue(r),H(d)){e.controller.terminate();return}if(e.controller.controller.desiredSize<=0)return}};function f(t){M(e)?(s.aborted=!0,_e(d)&&e.controller.controller.error(e.controller.serializedAbortReason)):_e(d)&&e.controller.controller.error(TypeError(`terminated`,{cause:N(t)?t:void 0})),e.controller.connection.destroy()}return s;function p({body:t}){let n=x(a),r=e.controller.dispatcher,i=n.pathname+n.search,o=n.search.length===0&&n.href[n.href.length-n.hash.length-1]===`?`;return new Promise((s,u)=>r.dispatch({path:o?`${i}?`:i,origin:n.origin,method:a.method,body:r.isMockActive?a.body&&(a.body.source||a.body.stream):t,headers:a.headersList.entries,maxRedirections:0,upgrade:a.mode===`websocket`?`websocket`:void 0},{body:null,abort:null,onConnect(t){let{connection:n}=e.controller;c.finalConnectionTimingInfo=te(void 0,c.postRedirectStartTime,e.crossOriginIsolatedCapability),n.destroyed?t(new DOMException(`The operation was aborted.`,`AbortError`)):(e.controller.on(`terminated`,t),this.abort=n.abort=t),c.finalNetworkRequestStartTime=k(e.crossOriginIsolatedCapability)},onResponseStarted(){c.finalNetworkResponseStartTime=k(e.crossOriginIsolatedCapability)},onHeaders(e,t,n,r){if(e<200)return!1;let i=new l;for(let e=0;e<t.length;e+=2){let n=ye(t[e]),r=t[e+1];if(Array.isArray(r)&&!Buffer.isBuffer(t[e+1]))for(let e of r)i.append(n,e.toString(`latin1`),!0);else i.append(n,r.toString(`latin1`),!0)}let o=i.get(`location`,!0);this.body=new me({read:n});let c=o&&a.redirect===`follow`&&V.has(e),d=[];if(a.method!==`HEAD`&&a.method!==`CONNECT`&&!le.includes(e)&&!c){let e=i.get(`content-encoding`,!0),t=e?e.toLowerCase().split(`,`):[];if(t.length>5)return u(Error(`too many content-encodings in response: ${t.length}, maximum allowed is 5`)),!0;for(let e=t.length-1;e>=0;--e){let n=t[e].trim();if(n===`x-gzip`||n===`gzip`)d.push(m.createGunzip({flush:m.constants.Z_SYNC_FLUSH,finishFlush:m.constants.Z_SYNC_FLUSH}));else if(n===`deflate`)d.push(re({flush:m.constants.Z_SYNC_FLUSH,finishFlush:m.constants.Z_SYNC_FLUSH}));else if(n===`br`)d.push(m.createBrotliDecompress({flush:m.constants.BROTLI_OPERATION_FLUSH,finishFlush:m.constants.BROTLI_OPERATION_FLUSH}));else if(n===`zstd`&&ke)d.push(m.createZstdDecompress({flush:m.constants.ZSTD_e_continue,finishFlush:m.constants.ZSTD_e_end}));else{d.length=0;break}}}let f=this.onError.bind(this);return s({status:e,statusText:r,headersList:i,body:d.length?he(this.body,...d,e=>{e&&this.onError(e)}).on(`error`,f):this.body.on(`error`,f)}),!0},onData(t){if(e.controller.dump)return;let n=t;return c.encodedBodySize+=n.byteLength,this.body.push(n)},onComplete(){this.abort&&e.controller.off(`terminated`,this.abort),e.controller.ended=!0,this.body.push(null)},onError(t){this.abort&&e.controller.off(`terminated`,this.abort),this.body?.destroy(t),e.controller.terminate(t),u(t)},onRequestUpgrade(e,t,n,r){if(r.session!=null&&t!==200||r.session==null&&t!==101)return!1;let i=new l;for(let[e,t]of Object.entries(n)){if(t==null)continue;let n=e.toLowerCase();if(Array.isArray(t))for(let e of t)i.append(n,String(e),!0);else i.append(n,String(t),!0)}return s({status:t,statusText:U[t],headersList:i,socket:r}),!0},onUpgrade(e,t,n){if(n.session!=null&&e!==200||n.session==null&&e!==101)return!1;let r=new l;for(let e=0;e<t.length;e+=2){let n=ye(t[e]),i=t[e+1];if(Array.isArray(i)&&!Buffer.isBuffer(t[e+1]))for(let e of i)r.append(n,e.toString(`latin1`),!0);else r.append(n,i.toString(`latin1`),!0)}return s({status:e,statusText:U[e],headersList:r,socket:n}),!0}}))}}n.exports={fetch:Fe,Fetch:Ne,fetching:ze,finalizeAndReportTiming:Ie}})),Wo=n(((e,n)=>{let r=t(`node:assert`),{URLSerializer:i}=ka(),{isValidHeaderName:a}=Ma();function o(e,t,n=!1){return i(e,n)===i(t,n)}function s(e){r(e!==null);let t=[];for(let n of e.split(`,`))n=n.trim(),a(n)&&t.push(n);return t}n.exports={urlEquals:o,getFieldValues:s}})),Go=n(((e,n)=>{let r=t(`node:assert`),{kConstruct:i}=la(),{urlEquals:a,getFieldValues:o}=Wo(),{kEnumerableProperty:s,isDisturbed:c}=q(),{webidl:l}=ja(),{cloneResponse:u,fromInnerResponse:d,getResponseState:f}=Bo(),{Request:p,fromInnerRequest:m,getRequestState:h}=Vo(),{fetching:g}=Uo(),{urlIsHttpHttpsScheme:_,readAllBytes:v}=Ma(),{createDeferredPromise:y}=Fa();var b=class e{#e;constructor(){arguments[0]!==i&&l.illegalConstructor(),l.util.markAsUncloneable(this),this.#e=arguments[1]}async match(t,n={}){l.brandCheck(this,e);let r=`Cache.match`;l.argumentLengthCheck(arguments,1,r),t=l.converters.RequestInfo(t),n=l.converters.CacheQueryOptions(n,r,`options`);let i=this.#i(t,n,1);if(i.length!==0)return i[0]}async matchAll(t=void 0,n={}){return l.brandCheck(this,e),t!==void 0&&(t=l.converters.RequestInfo(t)),n=l.converters.CacheQueryOptions(n,`Cache.matchAll`,`options`),this.#i(t,n)}async add(t){l.brandCheck(this,e),l.argumentLengthCheck(arguments,1,`Cache.add`),t=l.converters.RequestInfo(t);let n=[t];return await this.addAll(n)}async addAll(t){l.brandCheck(this,e);let n=`Cache.addAll`;l.argumentLengthCheck(arguments,1,n);let r=[],i=[];for(let e of t){if(e===void 0)throw l.errors.conversionFailed({prefix:n,argument:`Argument 1`,types:[`undefined is not allowed`]});if(e=l.converters.RequestInfo(e),typeof e==`string`)continue;let t=h(e);if(!_(t.url)||t.method!==`GET`)throw l.errors.exception({header:n,message:`Expected http/s scheme when method is not GET.`})}let a=[];for(let e of t){let t=h(new p(e));if(!_(t.url))throw l.errors.exception({header:n,message:`Expected http/s scheme.`});t.initiator=`fetch`,t.destination=`subresource`,i.push(t);let s=y();a.push(g({request:t,processResponse(e){if(e.type===`error`||e.status===206||e.status<200||e.status>299)s.reject(l.errors.exception({header:`Cache.addAll`,message:`Received an invalid status code or the request failed.`}));else if(e.headersList.contains(`vary`)){let t=o(e.headersList.get(`vary`));for(let e of t)if(e===`*`){s.reject(l.errors.exception({header:`Cache.addAll`,message:`invalid vary field value`}));for(let e of a)e.abort();return}}},processResponseEndOfBody(e){if(e.aborted){s.reject(new DOMException(`aborted`,`AbortError`));return}s.resolve(e)}})),r.push(s.promise)}let s=await Promise.all(r),c=[],u=0;for(let e of s){let t={type:`put`,request:i[u],response:e};c.push(t),u++}let d=y(),f=null;try{this.#t(c)}catch(e){f=e}return queueMicrotask(()=>{f===null?d.resolve(void 0):d.reject(f)}),d.promise}async put(t,n){l.brandCheck(this,e);let r=`Cache.put`;l.argumentLengthCheck(arguments,2,r),t=l.converters.RequestInfo(t),n=l.converters.Response(n,r,`response`);let i=null;if(i=l.is.Request(t)?h(t):h(new p(t)),!_(i.url)||i.method!==`GET`)throw l.errors.exception({header:r,message:`Expected an http/s scheme when method is not GET`});let a=f(n);if(a.status===206)throw l.errors.exception({header:r,message:`Got 206 status`});if(a.headersList.contains(`vary`)){let e=o(a.headersList.get(`vary`));for(let t of e)if(t===`*`)throw l.errors.exception({header:r,message:`Got * vary field value`})}if(a.body&&(c(a.body.stream)||a.body.stream.locked))throw l.errors.exception({header:r,message:`Response body is locked or disturbed`});let s=u(a),d=y();a.body==null?d.resolve(void 0):v(a.body.stream.getReader(),d.resolve,d.reject);let m=[],g={type:`put`,request:i,response:s};m.push(g);let b=await d.promise;s.body!=null&&(s.body.source=b);let x=y(),S=null;try{this.#t(m)}catch(e){S=e}return queueMicrotask(()=>{S===null?x.resolve():x.reject(S)}),x.promise}async delete(t,n={}){l.brandCheck(this,e);let i=`Cache.delete`;l.argumentLengthCheck(arguments,1,i),t=l.converters.RequestInfo(t),n=l.converters.CacheQueryOptions(n,i,`options`);let a=null;if(l.is.Request(t)){if(a=h(t),a.method!==`GET`&&!n.ignoreMethod)return!1}else r(typeof t==`string`),a=h(new p(t));let o=[],s={type:`delete`,request:a,options:n};o.push(s);let c=y(),u=null,d;try{d=this.#t(o)}catch(e){u=e}return queueMicrotask(()=>{u===null?c.resolve(!!d?.length):c.reject(u)}),c.promise}async keys(t=void 0,n={}){l.brandCheck(this,e),t!==void 0&&(t=l.converters.RequestInfo(t)),n=l.converters.CacheQueryOptions(n,`Cache.keys`,`options`);let r=null;if(t!==void 0)if(l.is.Request(t)){if(r=h(t),r.method!==`GET`&&!n.ignoreMethod)return[]}else typeof t==`string`&&(r=h(new p(t)));let i=y(),a=[];if(t===void 0)for(let e of this.#e)a.push(e[0]);else{let e=this.#n(r,n);for(let t of e)a.push(t[0])}return queueMicrotask(()=>{let e=[];for(let t of a){let n=m(t,void 0,new AbortController().signal,`immutable`);e.push(n)}i.resolve(Object.freeze(e))}),i.promise}#t(e){let t=this.#e,n=[...t],i=[],a=[];try{for(let n of e){if(n.type!==`delete`&&n.type!==`put`)throw l.errors.exception({header:`Cache.#batchCacheOperations`,message:`operation type does not match "delete" or "put"`});if(n.type===`delete`&&n.response!=null)throw l.errors.exception({header:`Cache.#batchCacheOperations`,message:`delete operation should not have an associated response`});if(this.#n(n.request,n.options,i).length)throw new DOMException(`???`,`InvalidStateError`);let e;if(n.type===`delete`){if(e=this.#n(n.request,n.options),e.length===0)return[];for(let n of e){let e=t.indexOf(n);r(e!==-1),t.splice(e,1)}}else if(n.type===`put`){if(n.response==null)throw l.errors.exception({header:`Cache.#batchCacheOperations`,message:`put operation should have an associated response`});let a=n.request;if(!_(a.url))throw l.errors.exception({header:`Cache.#batchCacheOperations`,message:`expected http or https scheme`});if(a.method!==`GET`)throw l.errors.exception({header:`Cache.#batchCacheOperations`,message:`not get method`});if(n.options!=null)throw l.errors.exception({header:`Cache.#batchCacheOperations`,message:`options must not be defined`});e=this.#n(n.request);for(let n of e){let e=t.indexOf(n);r(e!==-1),t.splice(e,1)}t.push([n.request,n.response]),i.push([n.request,n.response])}a.push([n.request,n.response])}return a}catch(e){throw this.#e.length=0,this.#e=n,e}}#n(e,t,n){let r=[],i=n??this.#e;for(let n of i){let[i,a]=n;this.#r(e,i,a,t)&&r.push(n)}return r}#r(e,t,n=null,r){let i=new URL(e.url),s=new URL(t.url);if(r?.ignoreSearch&&(s.search=``,i.search=``),!a(i,s,!0))return!1;if(n==null||r?.ignoreVary||!n.headersList.contains(`vary`))return!0;let c=o(n.headersList.get(`vary`));for(let n of c)if(n===`*`||t.headersList.get(n)!==e.headersList.get(n))return!1;return!0}#i(e,t,n=1/0){let r=null;if(e!==void 0)if(l.is.Request(e)){if(r=h(e),r.method!==`GET`&&!t.ignoreMethod)return[]}else typeof e==`string`&&(r=h(new p(e)));let i=[];if(e===void 0)for(let e of this.#e)i.push(e[1]);else{let e=this.#n(r,t);for(let t of e)i.push(t[1])}let a=[];for(let e of i){let t=d(u(e),`immutable`);if(a.push(t),a.length>=n)break}return Object.freeze(a)}};Object.defineProperties(b.prototype,{[Symbol.toStringTag]:{value:`Cache`,configurable:!0},match:s,matchAll:s,add:s,addAll:s,put:s,delete:s,keys:s});let x=[{key:`ignoreSearch`,converter:l.converters.boolean,defaultValue:()=>!1},{key:`ignoreMethod`,converter:l.converters.boolean,defaultValue:()=>!1},{key:`ignoreVary`,converter:l.converters.boolean,defaultValue:()=>!1}];l.converters.CacheQueryOptions=l.dictionaryConverter(x),l.converters.MultiCacheQueryOptions=l.dictionaryConverter([...x,{key:`cacheName`,converter:l.converters.DOMString}]),l.converters.Response=l.interfaceConverter(l.is.Response,`Response`),l.converters[`sequence<RequestInfo>`]=l.sequenceConverter(l.converters.RequestInfo),n.exports={Cache:b}})),Ko=n(((e,t)=>{let{Cache:n}=Go(),{webidl:r}=ja(),{kEnumerableProperty:i}=q(),{kConstruct:a}=la();var o=class e{#e=new Map;constructor(){arguments[0]!==a&&r.illegalConstructor(),r.util.markAsUncloneable(this)}async match(t,i={}){if(r.brandCheck(this,e),r.argumentLengthCheck(arguments,1,`CacheStorage.match`),t=r.converters.RequestInfo(t),i=r.converters.MultiCacheQueryOptions(i),i.cacheName!=null){if(this.#e.has(i.cacheName))return await new n(a,this.#e.get(i.cacheName)).match(t,i)}else for(let e of this.#e.values()){let r=await new n(a,e).match(t,i);if(r!==void 0)return r}}async has(t){r.brandCheck(this,e);let n=`CacheStorage.has`;return r.argumentLengthCheck(arguments,1,n),t=r.converters.DOMString(t,n,`cacheName`),this.#e.has(t)}async open(t){r.brandCheck(this,e);let i=`CacheStorage.open`;if(r.argumentLengthCheck(arguments,1,i),t=r.converters.DOMString(t,i,`cacheName`),this.#e.has(t))return new n(a,this.#e.get(t));let o=[];return this.#e.set(t,o),new n(a,o)}async delete(t){r.brandCheck(this,e);let n=`CacheStorage.delete`;return r.argumentLengthCheck(arguments,1,n),t=r.converters.DOMString(t,n,`cacheName`),this.#e.delete(t)}async keys(){return r.brandCheck(this,e),[...this.#e.keys()]}};Object.defineProperties(o.prototype,{[Symbol.toStringTag]:{value:`CacheStorage`,configurable:!0},match:i,has:i,open:i,delete:i,keys:i}),t.exports={CacheStorage:o}})),qo=n(((e,t)=>{t.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}})),Jo=n(((e,t)=>{function n(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n>=0&&n<=8||n>=10&&n<=31||n===127)return!0}return!1}function r(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n<33||n>126||n===34||n===40||n===41||n===60||n===62||n===64||n===44||n===59||n===58||n===92||n===47||n===91||n===93||n===63||n===61||n===123||n===125)throw Error(`Invalid cookie name`)}}function i(e){let t=e.length,n=0;if(e[0]===`"`){if(t===1||e[t-1]!==`"`)throw Error(`Invalid cookie value`);--t,++n}for(;n<t;){let t=e.charCodeAt(n++);if(t<33||t>126||t===34||t===44||t===59||t===92)throw Error(`Invalid cookie value`)}}function a(e){for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n<32||n===127||n===59)throw Error(`Invalid cookie path`)}}function o(e){if(e.startsWith(`-`)||e.endsWith(`.`)||e.endsWith(`-`))throw Error(`Invalid cookie domain`)}let s=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],c=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],l=Array(61).fill(0).map((e,t)=>t.toString().padStart(2,`0`));function u(e){return typeof e==`number`&&(e=new Date(e)),`${s[e.getUTCDay()]}, ${l[e.getUTCDate()]} ${c[e.getUTCMonth()]} ${e.getUTCFullYear()} ${l[e.getUTCHours()]}:${l[e.getUTCMinutes()]}:${l[e.getUTCSeconds()]} GMT`}function d(e){if(e<0)throw Error(`Invalid cookie max-age`)}function f(e){if(e.name.length===0)return null;r(e.name),i(e.value);let t=[`${e.name}=${e.value}`];e.name.startsWith(`__Secure-`)&&(e.secure=!0),e.name.startsWith(`__Host-`)&&(e.secure=!0,e.domain=null,e.path=`/`),e.secure&&t.push(`Secure`),e.httpOnly&&t.push(`HttpOnly`),typeof e.maxAge==`number`&&(d(e.maxAge),t.push(`Max-Age=${e.maxAge}`)),e.domain&&(o(e.domain),t.push(`Domain=${e.domain}`)),e.path&&(a(e.path),t.push(`Path=${e.path}`)),e.expires&&e.expires.toString()!==`Invalid Date`&&t.push(`Expires=${u(e.expires)}`),e.sameSite&&t.push(`SameSite=${e.sameSite}`);for(let n of e.unparsed){if(!n.includes(`=`))throw Error(`Invalid unparsed`);let[e,...r]=n.split(`=`);t.push(`${e.trim()}=${r.join(`=`)}`)}return t.join(`; `)}t.exports={isCTLExcludingHtab:n,validateCookieName:r,validateCookiePath:a,validateCookieValue:i,toIMFDate:u,stringify:f}})),Yo=n(((e,n)=>{let{collectASequenceOfCodePointsFast:r}=Oa(),{maxNameValuePairSize:i,maxAttributeValueSize:a}=qo(),{isCTLExcludingHtab:o}=Jo(),s=t(`node:assert`);function c(e){if(o(e))return null;let t=``,n=``,a=``,s=``;if(e.includes(`;`)){let i={position:0};t=r(`;`,e,i),n=e.slice(i.position)}else t=e;if(!t.includes(`=`))s=t;else{let e={position:0};a=r(`=`,t,e),s=t.slice(e.position+1)}return a=a.trim(),s=s.trim(),a.length+s.length>i?null:{name:a,value:s,...l(n)}}function l(e,t={}){if(e.length===0)return t;s(e[0]===`;`),e=e.slice(1);let n=``;e.includes(`;`)?(n=r(`;`,e,{position:0}),e=e.slice(n.length)):(n=e,e=``);let i=``,o=``;if(n.includes(`=`)){let e={position:0};i=r(`=`,n,e),o=n.slice(e.position+1)}else i=n;if(i=i.trim(),o=o.trim(),o.length>a)return l(e,t);let c=i.toLowerCase();if(c===`expires`)t.expires=new Date(o);else if(c===`max-age`){let n=o.charCodeAt(0);if((n<48||n>57)&&o[0]!==`-`||!/^\d+$/.test(o))return l(e,t);t.maxAge=Number(o)}else if(c===`domain`){let e=o;e[0]===`.`&&(e=e.slice(1)),e=e.toLowerCase(),t.domain=e}else if(c===`path`){let e=``;e=o.length===0||o[0]!==`/`?`/`:o,t.path=e}else if(c===`secure`)t.secure=!0;else if(c===`httponly`)t.httpOnly=!0;else if(c===`samesite`){let e=o.toLowerCase();e===`none`?t.sameSite=`None`:e===`strict`?t.sameSite=`Strict`:e===`lax`&&(t.sameSite=`Lax`)}else t.unparsed??=[],t.unparsed.push(`${i}=${o}`);return l(e,t)}n.exports={parseSetCookie:c,parseUnparsedAttributes:l}})),Xo=n(((e,t)=>{let{parseSetCookie:n}=Yo(),{stringify:r}=Jo(),{webidl:i}=ja(),{Headers:a}=zo(),o=i.brandCheckMultiple([a,globalThis.Headers].filter(Boolean));function s(e){i.argumentLengthCheck(arguments,1,`getCookies`),o(e);let t=e.get(`cookie`),n={};if(!t)return n;for(let e of t.split(`;`)){let[t,...r]=e.split(`=`);n[t.trim()]=r.join(`=`)}return n}function c(e,t,n){o(e);let r=`deleteCookie`;i.argumentLengthCheck(arguments,2,r),t=i.converters.DOMString(t,r,`name`),n=i.converters.DeleteCookieAttributes(n),d(e,{name:t,value:``,expires:new Date(0),...n})}function l(e){i.argumentLengthCheck(arguments,1,`getSetCookies`),o(e);let t=e.getSetCookie();return t?t.map(e=>n(e)):[]}function u(e){return e=i.converters.DOMString(e),n(e)}function d(e,t){i.argumentLengthCheck(arguments,2,`setCookie`),o(e),t=i.converters.Cookie(t);let n=r(t);n&&e.append(`set-cookie`,n,!0)}i.converters.DeleteCookieAttributes=i.dictionaryConverter([{converter:i.nullableConverter(i.converters.DOMString),key:`path`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.DOMString),key:`domain`,defaultValue:()=>null}]),i.converters.Cookie=i.dictionaryConverter([{converter:i.converters.DOMString,key:`name`},{converter:i.converters.DOMString,key:`value`},{converter:i.nullableConverter(e=>typeof e==`number`?i.converters[`unsigned long long`](e):new Date(e)),key:`expires`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters[`long long`]),key:`maxAge`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.DOMString),key:`domain`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.DOMString),key:`path`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.boolean),key:`secure`,defaultValue:()=>null},{converter:i.nullableConverter(i.converters.boolean),key:`httpOnly`,defaultValue:()=>null},{converter:i.converters.USVString,key:`sameSite`,allowedValues:[`Strict`,`Lax`,`None`]},{converter:i.sequenceConverter(i.converters.DOMString),key:`unparsed`,defaultValue:()=>[]}]),t.exports={getCookies:s,deleteCookie:c,getSetCookies:l,setCookie:d,parseCookie:u}})),Zo=n(((e,t)=>{let{webidl:n}=ja(),{kEnumerableProperty:r}=q(),{kConstruct:i}=la();var a=class e extends Event{#e;constructor(e,t={}){if(e===i){super(arguments[1],arguments[2]),n.util.markAsUncloneable(this);return}let r=`MessageEvent constructor`;n.argumentLengthCheck(arguments,1,r),e=n.converters.DOMString(e,r,`type`),t=n.converters.MessageEventInit(t,r,`eventInitDict`),super(e,t),this.#e=t,n.util.markAsUncloneable(this)}get data(){return n.brandCheck(this,e),this.#e.data}get origin(){return n.brandCheck(this,e),this.#e.origin}get lastEventId(){return n.brandCheck(this,e),this.#e.lastEventId}get source(){return n.brandCheck(this,e),this.#e.source}get ports(){return n.brandCheck(this,e),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(t,r=!1,i=!1,a=null,o=``,s=``,c=null,l=[]){return n.brandCheck(this,e),n.argumentLengthCheck(arguments,1,`MessageEvent.initMessageEvent`),new e(t,{bubbles:r,cancelable:i,data:a,origin:o,lastEventId:s,source:c,ports:l})}static createFastMessageEvent(t,n){let r=new e(i,t,n);return r.#e=n,r.#e.data??=null,r.#e.origin??=``,r.#e.lastEventId??=``,r.#e.source??=null,r.#e.ports??=[],r}};let{createFastMessageEvent:o}=a;delete a.createFastMessageEvent;var s=class e extends Event{#e;constructor(e,t={}){let r=`CloseEvent constructor`;n.argumentLengthCheck(arguments,1,r),e=n.converters.DOMString(e,r,`type`),t=n.converters.CloseEventInit(t),super(e,t),this.#e=t,n.util.markAsUncloneable(this)}get wasClean(){return n.brandCheck(this,e),this.#e.wasClean}get code(){return n.brandCheck(this,e),this.#e.code}get reason(){return n.brandCheck(this,e),this.#e.reason}},c=class e extends Event{#e;constructor(e,t){let r=`ErrorEvent constructor`;n.argumentLengthCheck(arguments,1,r),super(e,t),n.util.markAsUncloneable(this),e=n.converters.DOMString(e,r,`type`),t=n.converters.ErrorEventInit(t??{}),this.#e=t}get message(){return n.brandCheck(this,e),this.#e.message}get filename(){return n.brandCheck(this,e),this.#e.filename}get lineno(){return n.brandCheck(this,e),this.#e.lineno}get colno(){return n.brandCheck(this,e),this.#e.colno}get error(){return n.brandCheck(this,e),this.#e.error}};Object.defineProperties(a.prototype,{[Symbol.toStringTag]:{value:`MessageEvent`,configurable:!0},data:r,origin:r,lastEventId:r,source:r,ports:r,initMessageEvent:r}),Object.defineProperties(s.prototype,{[Symbol.toStringTag]:{value:`CloseEvent`,configurable:!0},reason:r,code:r,wasClean:r}),Object.defineProperties(c.prototype,{[Symbol.toStringTag]:{value:`ErrorEvent`,configurable:!0},message:r,filename:r,lineno:r,colno:r,error:r}),n.converters.MessagePort=n.interfaceConverter(n.is.MessagePort,`MessagePort`),n.converters[`sequence<MessagePort>`]=n.sequenceConverter(n.converters.MessagePort);let l=[{key:`bubbles`,converter:n.converters.boolean,defaultValue:()=>!1},{key:`cancelable`,converter:n.converters.boolean,defaultValue:()=>!1},{key:`composed`,converter:n.converters.boolean,defaultValue:()=>!1}];n.converters.MessageEventInit=n.dictionaryConverter([...l,{key:`data`,converter:n.converters.any,defaultValue:()=>null},{key:`origin`,converter:n.converters.USVString,defaultValue:()=>``},{key:`lastEventId`,converter:n.converters.DOMString,defaultValue:()=>``},{key:`source`,converter:n.nullableConverter(n.converters.MessagePort),defaultValue:()=>null},{key:`ports`,converter:n.converters[`sequence<MessagePort>`],defaultValue:()=>[]}]),n.converters.CloseEventInit=n.dictionaryConverter([...l,{key:`wasClean`,converter:n.converters.boolean,defaultValue:()=>!1},{key:`code`,converter:n.converters[`unsigned short`],defaultValue:()=>0},{key:`reason`,converter:n.converters.USVString,defaultValue:()=>``}]),n.converters.ErrorEventInit=n.dictionaryConverter([...l,{key:`message`,converter:n.converters.DOMString,defaultValue:()=>``},{key:`filename`,converter:n.converters.USVString,defaultValue:()=>``},{key:`lineno`,converter:n.converters[`unsigned long`],defaultValue:()=>0},{key:`colno`,converter:n.converters[`unsigned long`],defaultValue:()=>0},{key:`error`,converter:n.converters.any}]),t.exports={MessageEvent:a,CloseEvent:s,ErrorEvent:c,createFastMessageEvent:o}})),Qo=n(((e,t)=>{t.exports={uid:`258EAFA5-E914-47DA-95CA-C5AB0DC85B11`,sentCloseFrameState:{SENT:1,RECEIVED:2},staticPropertyDescriptors:{enumerable:!0,writable:!1,configurable:!1},states:{CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},opcodes:{CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},maxUnsigned16Bit:65535,parserStates:{INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},emptyBuffer:Buffer.allocUnsafe(0),sendHints:{text:1,typedArray:2,arrayBuffer:3,blob:4}}})),$o=n(((e,n)=>{let{states:r,opcodes:i}=Qo(),{isUtf8:a}=t(`node:buffer`),{removeHTTPWhitespace:o}=ka(),{collectASequenceOfCodePointsFast:s}=Oa();function c(e){return e===r.CONNECTING}function l(e){return e===r.OPEN}function u(e){return e===r.CLOSING}function d(e){return e===r.CLOSED}function f(e,t,n=(e,t)=>new Event(e,t),r={}){let i=n(e,r);t.dispatchEvent(i)}function p(e,t,n){e.onMessage(t,n)}function m(e){return e.byteLength===e.buffer.byteLength?e.buffer:new Uint8Array(e).buffer}function h(e){if(e.length===0)return!1;for(let t=0;t<e.length;++t){let n=e.charCodeAt(t);if(n<33||n>126||n===34||n===40||n===41||n===44||n===47||n===58||n===59||n===60||n===61||n===62||n===63||n===64||n===91||n===92||n===93||n===123||n===125)return!1}return!0}function g(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function _(e){return e===i.CLOSE||e===i.PING||e===i.PONG}function v(e){return e===i.CONTINUATION}function y(e){return e===i.TEXT||e===i.BINARY}function b(e){return y(e)||v(e)||_(e)}function x(e){let t={position:0},n=new Map;for(;t.position<e.length;){let[r,i=``]=s(`;`,e,t).split(`=`,2);n.set(o(r,!0,!1),o(i,!1,!0)),t.position++}return n}function S(e){if(e.length===0)return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<48||n>57)return!1}let t=Number.parseInt(e,10);return t>=8&&t<=15}function C(e,t){let n;try{n=new URL(e,t)}catch(e){throw new DOMException(e,`SyntaxError`)}if(n.protocol===`http:`?n.protocol=`ws:`:n.protocol===`https:`&&(n.protocol=`wss:`),n.protocol!==`ws:`&&n.protocol!==`wss:`)throw new DOMException(`expected a ws: or wss: url`,`SyntaxError`);if(n.hash.length||n.href.endsWith(`#`))throw new DOMException(`hash`,`SyntaxError`);return n}function w(e,t){if(e!==null&&e!==1e3&&(e<3e3||e>4999))throw new DOMException(`invalid code`,`InvalidAccessError`);if(t!==null){let e=Buffer.byteLength(t);if(e>123)throw new DOMException(`Reason must be less than 123 bytes; received ${e}`,`SyntaxError`)}}n.exports={isConnecting:c,isEstablished:l,isClosing:u,isClosed:d,fireEvent:f,isValidSubprotocol:h,isValidStatusCode:g,websocketMessageReceived:p,utf8Decode:(()=>{if(typeof process.versions.icu==`string`){let e=new TextDecoder(`utf-8`,{fatal:!0});return e.decode.bind(e)}return function(e){if(a(e))return e.toString(`utf-8`);throw TypeError(`Invalid utf-8 received.`)}})(),isControlFrame:_,isContinuationFrame:v,isTextBinaryFrame:y,isValidOpcode:b,parseExtensions:x,isValidClientWindowBits:S,toArrayBuffer:m,getURLRecord:C,validateCloseCodeAndReason:w}})),es=n(((e,n)=>{let{runtimeFeatures:r}=Aa(),{maxUnsigned16Bit:i,opcodes:a}=Qo(),o=8*1024,s=null,c=o,l=r.has(`crypto`)?t(`node:crypto`).randomFillSync:function(e,t,n){for(let t=0;t<e.length;++t)e[t]=Math.random()*255|0;return e};function u(){return c===o&&(c=0,l(s??=Buffer.allocUnsafeSlow(o),0,o)),[s[c++],s[c++],s[c++],s[c++]]}n.exports={WebsocketFrameSend:class{constructor(e){this.frameData=e}createFrame(e){let t=this.frameData,n=u(),r=t?.byteLength??0,a=r,o=6;r>i?(o+=8,a=127):r>125&&(o+=2,a=126);let s=Buffer.allocUnsafe(r+o);s[0]=s[1]=0,s[0]|=128,s[0]=(s[0]&240)+e,s[o-4]=n[0],s[o-3]=n[1],s[o-2]=n[2],s[o-1]=n[3],s[1]=a,a===126?s.writeUInt16BE(r,2):a===127&&(s[2]=s[3]=0,s.writeUIntBE(r,4,6)),s[1]|=128;for(let e=0;e<r;++e)s[o+e]=t[e]^n[e&3];return s}static createFastTextFrame(e){let t=u(),n=e.length;for(let r=0;r<n;++r)e[r]^=t[r&3];let r=n,o=6;n>i?(o+=8,r=127):n>125&&(o+=2,r=126);let s=Buffer.allocUnsafeSlow(o);return s[0]=128|a.TEXT,s[1]=r|128,s[o-4]=t[0],s[o-3]=t[1],s[o-2]=t[2],s[o-1]=t[3],r===126?s.writeUInt16BE(n,2):r===127&&(s[2]=s[3]=0,s.writeUIntBE(n,4,6)),[s,e]}},generateMask:u}})),ts=n(((e,n)=>{let{uid:r,states:i,sentCloseFrameState:a,emptyBuffer:o,opcodes:s}=Qo(),{parseExtensions:c,isClosed:l,isClosing:u,isEstablished:d,isConnecting:f,validateCloseCodeAndReason:p}=$o(),{makeRequest:m}=Vo(),{fetching:h}=Uo(),{Headers:g,getHeadersList:_}=zo(),{getDecodeSplit:v}=Ma(),{WebsocketFrameSend:y}=es(),b=t(`node:assert`),{runtimeFeatures:x}=Aa(),S=x.has(`crypto`)?t(`node:crypto`):null,C=!1;function w(e,t,n,i,a){let o=e;o.protocol=e.protocol===`ws:`?`http:`:`https:`;let s=m({urlList:[o],client:n,serviceWorkers:`none`,referrer:`no-referrer`,mode:`websocket`,credentials:`include`,cache:`no-store`,redirect:`error`,useURLCredentials:!0});a.headers&&(s.headersList=_(new g(a.headers)));let l=S.randomBytes(16).toString(`base64`);s.headersList.append(`sec-websocket-key`,l,!0),s.headersList.append(`sec-websocket-version`,`13`,!0);for(let e of t)s.headersList.append(`sec-websocket-protocol`,e,!0);return s.headersList.append(`sec-websocket-extensions`,`permessage-deflate; client_max_window_bits`,!0),h({request:s,useParallelQueue:!0,dispatcher:a.dispatcher,processResponse(e){if(e.type===`error`||e.status!==101){if(e.socket?.session==null){E(i,1002,`Received network error or non-101 status code.`,e.error);return}if(e.status!==200){E(i,1002,`Received network error or non-200 status code.`,e.error);return}}if(C===!1&&e.socket?.session!=null&&(process.emitWarning(`WebSocket over HTTP2 is experimental, and subject to change.`,`ExperimentalWarning`),C=!0),t.length!==0&&!e.headersList.get(`Sec-WebSocket-Protocol`)){E(i,1002,`Server did not respond with sent protocols.`);return}if(e.socket.session==null&&e.headersList.get(`Upgrade`)?.toLowerCase()!==`websocket`){E(i,1002,`Server did not set Upgrade header to "websocket".`);return}if(e.socket.session==null&&e.headersList.get(`Connection`)?.toLowerCase()!==`upgrade`){E(i,1002,`Server did not set Connection header to "upgrade".`);return}if(e.headersList.get(`Sec-WebSocket-Accept`)!==S.hash(`sha1`,l+r,`base64`)){E(i,1002,`Incorrect hash received in Sec-WebSocket-Accept header.`);return}let n=e.headersList.get(`Sec-WebSocket-Extensions`),a;if(n!==null&&(a=c(n),!a.has(`permessage-deflate`))){E(i,1002,`Sec-WebSocket-Extensions header does not match.`);return}let o=e.headersList.get(`Sec-WebSocket-Protocol`);if(o!==null&&!v(`sec-websocket-protocol`,s.headersList).includes(o)){E(i,1002,`Protocol was not set in the opening handshake.`);return}e.socket.on(`data`,i.onSocketData),e.socket.on(`close`,i.onSocketClose),e.socket.on(`error`,i.onSocketError),i.wasEverConnected=!0,i.onConnectionEstablished(e,a)}})}function T(e,t,n,r=!1){if(t??=null,n??=``,r&&p(t,n),!(l(e.readyState)||u(e.readyState)))if(!d(e.readyState))E(e),e.readyState=i.CLOSING;else if(!e.closeState.has(a.SENT)&&!e.closeState.has(a.RECEIVED)){let r=new y;n.length!==0&&t===null&&(t=1e3),b(t===null||Number.isInteger(t)),t===null&&n.length===0?r.frameData=o:t!==null&&n===null?(r.frameData=Buffer.allocUnsafe(2),r.frameData.writeUInt16BE(t,0)):t!==null&&n!==null?(r.frameData=Buffer.allocUnsafe(2+Buffer.byteLength(n)),r.frameData.writeUInt16BE(t,0),r.frameData.write(n,2,`utf-8`)):r.frameData=o,e.socket.write(r.createFrame(s.CLOSE)),e.closeState.add(a.SENT),e.readyState=i.CLOSING}else e.readyState=i.CLOSING}function E(e,t,n,r){d(e.readyState)&&T(e,t,n,!1),e.controller.abort(),f(e.readyState)?e.onSocketClose():e.socket?.destroyed===!1&&e.socket.destroy()}n.exports={establishWebSocketConnection:w,failWebsocketConnection:E,closeWebSocketConnection:T}})),ns=n(((e,n)=>{let{createInflateRaw:r,Z_DEFAULT_WINDOWBITS:i}=t(`node:zlib`),{isValidClientWindowBits:a}=$o(),{MessageSizeExceededError:o}=K(),s=Buffer.from([0,0,255,255]),c=Symbol(`kBuffer`),l=Symbol(`kLength`);n.exports={PerMessageDeflate:class{#e;#t={};#n=0;constructor(e,t){this.#t.serverNoContextTakeover=e.has(`server_no_context_takeover`),this.#t.serverMaxWindowBits=e.get(`server_max_window_bits`),this.#n=t.maxPayloadSize}decompress(e,t,n){if(!this.#e){let e=i;if(this.#t.serverMaxWindowBits){if(!a(this.#t.serverMaxWindowBits)){n(Error(`Invalid server_max_window_bits`));return}e=Number.parseInt(this.#t.serverMaxWindowBits)}try{this.#e=r({windowBits:e})}catch(e){n(e);return}this.#e[c]=[],this.#e[l]=0,this.#e.on(`data`,e=>{if(this.#e[l]+=e.length,this.#n>0&&this.#e[l]>this.#n){n(new o),this.#e.removeAllListeners(),this.#e=null;return}this.#e[c].push(e)}),this.#e.on(`error`,e=>{this.#e=null,n(e)})}this.#e.write(e),t&&this.#e.write(s),this.#e.flush(()=>{if(!this.#e)return;let e=Buffer.concat(this.#e[c],this.#e[l]);this.#e[c].length=0,this.#e[l]=0,n(null,e)})}}}})),rs=n(((e,n)=>{let{Writable:r}=t(`node:stream`),i=t(`node:assert`),{parserStates:a,opcodes:o,states:s,emptyBuffer:c,sentCloseFrameState:l}=Qo(),{isValidStatusCode:u,isValidOpcode:d,websocketMessageReceived:f,utf8Decode:p,isControlFrame:m,isTextBinaryFrame:h,isContinuationFrame:g}=$o(),{failWebsocketConnection:_}=ts(),{WebsocketFrameSend:v}=es(),{PerMessageDeflate:y}=ns(),{MessageSizeExceededError:b}=K();n.exports={ByteParser:class extends r{#e=[];#t=0;#n=0;#r=!1;#i=a.INFO;#a={};#o=[];#s;#c;#l;#u;constructor(e,t,n={}){super(),this.#c=e,this.#s=t??new Map,this.#l=n.maxFragments??0,this.#u=n.maxPayloadSize??0,this.#s.has(`permessage-deflate`)&&this.#s.set(`permessage-deflate`,new y(t,n))}_write(e,t,n){this.#e.push(e),this.#n+=e.length,this.#r=!0,this.run(n)}#d(){return this.#u>0&&!m(this.#a.opcode)&&this.#a.payloadLength+this.#t>this.#u?(_(this.#c,1009,`Payload size exceeds maximum allowed size`),!1):!0}run(e){for(;this.#r;)if(this.#i===a.INFO){if(this.#n<2)return e();let t=this.consume(2),n=(t[0]&128)!=0,r=t[0]&15,i=(t[1]&128)==128,s=!n&&r!==o.CONTINUATION,c=t[1]&127,l=t[0]&64,u=t[0]&32,f=t[0]&16;if(!d(r))return _(this.#c,1002,`Invalid opcode received`),e();if(i)return _(this.#c,1002,`Frame cannot be masked`),e();if(l!==0&&!this.#s.has(`permessage-deflate`)){_(this.#c,1002,`Expected RSV1 to be clear.`);return}if(u!==0||f!==0){_(this.#c,1002,`RSV1, RSV2, RSV3 must be clear`);return}if(s&&!h(r)){_(this.#c,1002,`Invalid frame type was fragmented.`);return}if(h(r)&&this.#o.length>0){_(this.#c,1002,`Expected continuation frame`);return}if(this.#a.fragmented&&s){_(this.#c,1002,`Fragmented frame exceeded 125 bytes.`);return}if((c>125||s)&&m(r)){_(this.#c,1002,`Control frame either too large or fragmented`);return}if(g(r)&&this.#o.length===0&&!this.#a.compressed){_(this.#c,1002,`Unexpected continuation frame`);return}if(c<=125){if(this.#a.payloadLength=c,this.#i=a.READ_DATA,!this.#d())return}else c===126?this.#i=a.PAYLOADLENGTH_16:c===127&&(this.#i=a.PAYLOADLENGTH_64);h(r)&&(this.#a.binaryType=r,this.#a.compressed=l!==0),this.#a.opcode=r,this.#a.masked=i,this.#a.fin=n,this.#a.fragmented=s}else if(this.#i===a.PAYLOADLENGTH_16){if(this.#n<2)return e();let t=this.consume(2);if(this.#a.payloadLength=t.readUInt16BE(0),this.#i=a.READ_DATA,!this.#d())return}else if(this.#i===a.PAYLOADLENGTH_64){if(this.#n<8)return e();let t=this.consume(8),n=t.readUInt32BE(0),r=t.readUInt32BE(4);if(n!==0||r>2**31-1){_(this.#c,1009,`Received payload length > 2^31 bytes.`);return}if(this.#a.payloadLength=r,this.#i=a.READ_DATA,!this.#d())return}else if(this.#i===a.READ_DATA){if(this.#n<this.#a.payloadLength)return e();let t=this.consume(this.#a.payloadLength);if(m(this.#a.opcode))this.#r=this.parseControlFrame(t),this.#i=a.INFO;else if(this.#a.compressed){this.#s.get(`permessage-deflate`).decompress(t,this.#a.fin,(t,n)=>{if(t){let e=t instanceof b?1009:1007;_(this.#c,e,t.message);return}if(this.writeFragments(n)){if(this.#u>0&&this.#t>this.#u){_(this.#c,1009,new b().message);return}if(!this.#a.fin){this.#i=a.INFO,this.#r=!0,this.run(e);return}f(this.#c,this.#a.binaryType,this.consumeFragments()),this.#r=!0,this.#i=a.INFO,this.run(e)}},this.#t),this.#r=!1;break}else{if(!this.writeFragments(t))return;!this.#a.fragmented&&this.#a.fin&&f(this.#c,this.#a.binaryType,this.consumeFragments()),this.#i=a.INFO}}}consume(e){if(e>this.#n)throw Error(`Called consume() before buffers satiated.`);if(e===0)return c;this.#n-=e;let t=this.#e[0];if(t.length>e)return this.#e[0]=t.subarray(e,t.length),t.subarray(0,e);if(t.length===e)return this.#e.shift();{let t=0,n=Buffer.allocUnsafeSlow(e);for(;t!==e;){let r=this.#e[0],i=r.length;if(i+t===e){n.set(this.#e.shift(),t);break}else if(i+t>e){n.set(r.subarray(0,e-t),t),this.#e[0]=r.subarray(e-t);break}else n.set(this.#e.shift(),t),t+=i}return n}}writeFragments(e){return this.#l>0&&this.#o.length===this.#l?(_(this.#c,1008,`Too many message fragments`),!1):(this.#t+=e.length,this.#o.push(e),!0)}consumeFragments(){let e=this.#o;if(e.length===1)return this.#t=0,e.shift();let t=0,n=Buffer.allocUnsafeSlow(this.#t);for(let r=0;r<e.length;++r){let i=e[r];n.set(i,t),t+=i.length}return this.#o=[],this.#t=0,n}parseCloseBody(e){i(e.length!==1);let t;if(e.length>=2&&(t=e.readUInt16BE(0)),t!==void 0&&!u(t))return{code:1002,reason:`Invalid status code`,error:!0};let n=e.subarray(2);n[0]===239&&n[1]===187&&n[2]===191&&(n=n.subarray(3));try{n=p(n)}catch{return{code:1007,reason:`Invalid UTF-8`,error:!0}}return{code:t,reason:n,error:!1}}parseControlFrame(e){let{opcode:t,payloadLength:n}=this.#a;if(t===o.CLOSE){if(n===1)return _(this.#c,1002,`Received close frame with a 1-byte body.`),!1;if(this.#a.closeInfo=this.parseCloseBody(e),this.#a.closeInfo.error){let{code:e,reason:t}=this.#a.closeInfo;return _(this.#c,e,t),!1}if(!this.#c.closeState.has(l.SENT)&&!this.#c.closeState.has(l.RECEIVED)){let e=c;this.#a.closeInfo.code&&(e=Buffer.allocUnsafe(2),e.writeUInt16BE(this.#a.closeInfo.code,0));let t=new v(e);this.#c.socket.write(t.createFrame(o.CLOSE)),this.#c.closeState.add(l.SENT)}return this.#c.readyState=s.CLOSING,this.#c.closeState.add(l.RECEIVED),!1}else if(t===o.PING){if(!this.#c.closeState.has(l.RECEIVED)){let t=new v(e);this.#c.socket.write(t.createFrame(o.PONG)),this.#c.onPing(e)}}else t===o.PONG&&this.#c.onPong(e);return!0}get closingInfo(){return this.#a.closeInfo}}}})),is=n(((e,t)=>{let{WebsocketFrameSend:n}=es(),{opcodes:r,sendHints:i}=Qo(),a=Ba();var o=class{#e=new a;#t=!1;#n;constructor(e){this.#n=e}add(e,t,r){if(r!==i.blob){if(this.#t){let n={promise:null,callback:t,frame:s(e,r)};this.#e.push(n)}else if(r===i.text){let{0:r,1:i}=n.createFastTextFrame(e);this.#n.cork(),this.#n.write(r),this.#n.write(i,t),this.#n.uncork()}else this.#n.write(s(e,r),t);return}let a={promise:e.arrayBuffer().then(e=>{a.promise=null,a.frame=s(e,r)}),callback:t,frame:null};this.#e.push(a),this.#t||this.#r()}async#r(){this.#t=!0;let e=this.#e;for(;!e.isEmpty();){let t=e.shift();t.promise!==null&&await t.promise,this.#n.write(t.frame,t.callback),t.callback=t.frame=null}this.#t=!1}};function s(e,t){return new n(c(e,t)).createFrame(t===i.text?r.TEXT:r.BINARY)}function c(e,t){switch(t){case i.text:case i.typedArray:return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);case i.arrayBuffer:case i.blob:return new Uint8Array(e)}}t.exports={SendQueue:o}})),as=n(((e,n)=>{let{isArrayBuffer:r}=t(`node:util/types`),{webidl:i}=ja(),{URLSerializer:a}=ka(),{environmentSettingsObject:o}=Ma(),{staticPropertyDescriptors:s,states:c,sentCloseFrameState:l,sendHints:u,opcodes:d}=Qo(),{isConnecting:f,isEstablished:p,isClosing:m,isClosed:h,isValidSubprotocol:g,fireEvent:_,utf8Decode:v,toArrayBuffer:y,getURLRecord:b}=$o(),{establishWebSocketConnection:x,closeWebSocketConnection:S,failWebsocketConnection:C}=ts(),{ByteParser:w}=rs(),{kEnumerableProperty:T}=q(),{getGlobalDispatcher:E}=xo(),{ErrorEvent:D,CloseEvent:O,createFastMessageEvent:k}=Zo(),{SendQueue:A}=is(),{WebsocketFrameSend:j}=es(),{channels:M}=ma();function N(e){return typeof e?.address==`function`?e.address():typeof e?.session?.socket?.address==`function`?e.session.socket.address():null}var P=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#n=``;#r=``;#i;#a={onConnectionEstablished:(e,t)=>this.#l(e,t),onMessage:(e,t)=>this.#u(e,t),onParserError:e=>C(this.#a,null,e.message),onParserDrain:()=>this.#d(),onSocketData:e=>{this.#c.write(e)||this.#a.socket.pause()},onSocketError:e=>{this.#a.readyState=c.CLOSING,M.socketError.hasSubscribers&&M.socketError.publish(e),this.#a.socket.destroy()},onSocketClose:()=>this.#f(),onPing:e=>{M.ping.hasSubscribers&&M.ping.publish({payload:e,websocket:this})},onPong:e=>{M.pong.hasSubscribers&&M.pong.publish({payload:e,websocket:this})},readyState:c.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#o;#s;#c;constructor(t,n=[]){super(),i.util.markAsUncloneable(this);let r=`WebSocket constructor`;i.argumentLengthCheck(arguments,1,r);let a=i.converters[`DOMString or sequence<DOMString> or WebSocketInit`](n,r,`options`);t=i.converters.USVString(t),n=a.protocols;let s=o.settingsObject.baseUrl,c=b(t,s);if(typeof n==`string`&&(n=[n]),n.length!==new Set(n.map(e=>e.toLowerCase())).size||n.length>0&&!n.every(e=>g(e)))throw new DOMException(`Invalid Sec-WebSocket-Protocol value`,`SyntaxError`);this.#o=new URL(c.href);let l=o.settingsObject;this.#a.controller=x(c,n,l,this.#a,a),this.#a.readyState=e.CONNECTING,this.#s=`blob`}close(t=void 0,n=void 0){i.brandCheck(this,e),t!==void 0&&(t=i.converters[`unsigned short`](t,`WebSocket.close`,`code`,i.attributes.Clamp)),n!==void 0&&(n=i.converters.USVString(n)),t??=null,n??=``,S(this.#a,t,n,!0)}send(t){i.brandCheck(this,e);let n=`WebSocket.send`;if(i.argumentLengthCheck(arguments,1,n),t=i.converters.WebSocketSendData(t,n,`data`),f(this.#a.readyState))throw new DOMException(`Sent before connected.`,`InvalidStateError`);if(!(!p(this.#a.readyState)||m(this.#a.readyState)))if(typeof t==`string`){let e=Buffer.from(t);this.#t+=e.byteLength,this.#i.add(e,()=>{this.#t-=e.byteLength},u.text)}else r(t)?(this.#t+=t.byteLength,this.#i.add(t,()=>{this.#t-=t.byteLength},u.arrayBuffer)):ArrayBuffer.isView(t)?(this.#t+=t.byteLength,this.#i.add(t,()=>{this.#t-=t.byteLength},u.typedArray)):i.is.Blob(t)&&(this.#t+=t.size,this.#i.add(t,()=>{this.#t-=t.size},u.blob))}get readyState(){return i.brandCheck(this,e),this.#a.readyState}get bufferedAmount(){return i.brandCheck(this,e),this.#t}get url(){return i.brandCheck(this,e),a(this.#o)}get extensions(){return i.brandCheck(this,e),this.#r}get protocol(){return i.brandCheck(this,e),this.#n}get onopen(){return i.brandCheck(this,e),this.#e.open}set onopen(t){i.brandCheck(this,e),this.#e.open&&this.removeEventListener(`open`,this.#e.open);let n=i.converters.EventHandlerNonNull(t);n===null?this.#e.open=null:(this.addEventListener(`open`,n),this.#e.open=t)}get onerror(){return i.brandCheck(this,e),this.#e.error}set onerror(t){i.brandCheck(this,e),this.#e.error&&this.removeEventListener(`error`,this.#e.error);let n=i.converters.EventHandlerNonNull(t);n===null?this.#e.error=null:(this.addEventListener(`error`,n),this.#e.error=t)}get onclose(){return i.brandCheck(this,e),this.#e.close}set onclose(t){i.brandCheck(this,e),this.#e.close&&this.removeEventListener(`close`,this.#e.close);let n=i.converters.EventHandlerNonNull(t);n===null?this.#e.close=null:(this.addEventListener(`close`,n),this.#e.close=t)}get onmessage(){return i.brandCheck(this,e),this.#e.message}set onmessage(t){i.brandCheck(this,e),this.#e.message&&this.removeEventListener(`message`,this.#e.message);let n=i.converters.EventHandlerNonNull(t);n===null?this.#e.message=null:(this.addEventListener(`message`,n),this.#e.message=t)}get binaryType(){return i.brandCheck(this,e),this.#s}set binaryType(t){i.brandCheck(this,e),t!==`blob`&&t!==`arraybuffer`?this.#s=`blob`:this.#s=t}#l(e,t){this.#a.socket=e.socket;let n=this.#a.controller.dispatcher?.webSocketOptions,r=n?.maxFragments,i=n?.maxPayloadSize,a=new w(this.#a,t,{maxFragments:r,maxPayloadSize:i});a.on(`drain`,()=>this.#a.onParserDrain()),a.on(`error`,e=>this.#a.onParserError(e)),this.#c=a,this.#i=new A(e.socket),this.#a.readyState=c.OPEN;let o=e.headersList.get(`sec-websocket-extensions`);o!==null&&(this.#r=o);let s=e.headersList.get(`sec-websocket-protocol`);if(s!==null&&(this.#n=s),_(`open`,this),M.open.hasSubscribers){let t=e.headersList.entries;M.open.publish({address:N(e.socket),protocol:this.#n,extensions:this.#r,websocket:this,handshakeResponse:{status:e.status,statusText:e.statusText,headers:t}})}}#u(e,t){if(this.#a.readyState!==c.OPEN)return;let n;if(e===d.TEXT)try{n=v(t)}catch{C(this.#a,1007,`Received invalid UTF-8 in text frame.`);return}else e===d.BINARY&&(n=this.#s===`blob`?new Blob([t]):y(t));_(`message`,this,k,{origin:this.#o.origin,data:n})}#d(){this.#a.socket.resume()}#f(){let e=this.#a.closeState.has(l.SENT)&&this.#a.closeState.has(l.RECEIVED),t=1005,n=``,r=this.#c?.closingInfo;r&&!r.error&&(t=r.code??1005,n=r.reason),this.#a.readyState=c.CLOSED,this.#a.closeState.has(l.RECEIVED)||(t=1006,_(`error`,this,(e,t)=>new D(e,t),{error:TypeError(n)})),_(`close`,this,(e,t)=>new O(e,t),{wasClean:e,code:t,reason:n}),M.close.hasSubscribers&&M.close.publish({websocket:this,code:t,reason:n})}static ping(e,t){if(Buffer.isBuffer(t)){if(t.length>125)throw TypeError(`A PING frame cannot have a body larger than 125 bytes.`)}else if(t!==void 0)throw TypeError(`Expected buffer payload`);let n=e.#a.readyState;if(p(n)&&!m(n)&&!h(n)){let n=new j(t);e.#a.socket.write(n.createFrame(d.PING))}}};let{ping:F}=P;Reflect.deleteProperty(P,`ping`),P.CONNECTING=P.prototype.CONNECTING=c.CONNECTING,P.OPEN=P.prototype.OPEN=c.OPEN,P.CLOSING=P.prototype.CLOSING=c.CLOSING,P.CLOSED=P.prototype.CLOSED=c.CLOSED,Object.defineProperties(P.prototype,{CONNECTING:s,OPEN:s,CLOSING:s,CLOSED:s,url:T,readyState:T,bufferedAmount:T,onopen:T,onerror:T,onclose:T,close:T,onmessage:T,binaryType:T,send:T,extensions:T,protocol:T,[Symbol.toStringTag]:{value:`WebSocket`,writable:!1,enumerable:!1,configurable:!0}}),Object.defineProperties(P,{CONNECTING:s,OPEN:s,CLOSING:s,CLOSED:s}),i.converters[`sequence<DOMString>`]=i.sequenceConverter(i.converters.DOMString),i.converters[`DOMString or sequence<DOMString>`]=function(e,t,n){return i.util.Type(e)===i.util.Types.OBJECT&&Symbol.iterator in e?i.converters[`sequence<DOMString>`](e):i.converters.DOMString(e,t,n)},i.converters.WebSocketInit=i.dictionaryConverter([{key:`protocols`,converter:i.converters[`DOMString or sequence<DOMString>`],defaultValue:()=>[]},{key:`dispatcher`,converter:i.converters.any,defaultValue:()=>E()},{key:`headers`,converter:i.nullableConverter(i.converters.HeadersInit)}]),i.converters[`DOMString or sequence<DOMString> or WebSocketInit`]=function(e){return i.util.Type(e)===i.util.Types.OBJECT&&!(Symbol.iterator in e)?i.converters.WebSocketInit(e):{protocols:i.converters[`DOMString or sequence<DOMString>`](e)}},i.converters.WebSocketSendData=function(e){return i.util.Type(e)===i.util.Types.OBJECT&&(i.is.Blob(e)||i.is.BufferSource(e))?e:i.converters.USVString(e)},n.exports={WebSocket:P,ping:F}})),os=n(((e,t)=>{let{webidl:n}=ja(),{validateCloseCodeAndReason:r}=$o(),{kConstruct:i}=la(),{kEnumerableProperty:a}=q();function o(){class e extends DOMException{get reason(){return``}}return new e().reason===void 0?new Proxy(DOMException,{construct(e,t,n){let r=Reflect.construct(e,t,e);return Object.setPrototypeOf(r,n.prototype),r}}):DOMException}var s=class e extends o(){#e;#t;constructor(e=``,t=void 0){if(e=n.converters.DOMString(e,`WebSocketError`,`message`),super(e,`WebSocketError`),t===i)return;t!==null&&(t=n.converters.WebSocketCloseInfo(t));let a=t.closeCode??null,o=t.reason??``;r(a,o),o.length!==0&&a===null&&(a=1e3),this.#e=a,this.#t=o}get closeCode(){return this.#e}get reason(){return this.#t}static createUnvalidatedWebSocketError(t,n,r){let a=new e(t,i);return a.#e=n,a.#t=r,a}};let{createUnvalidatedWebSocketError:c}=s;delete s.createUnvalidatedWebSocketError,Object.defineProperties(s.prototype,{closeCode:a,reason:a,[Symbol.toStringTag]:{value:`WebSocketError`,writable:!1,enumerable:!1,configurable:!0}}),n.is.WebSocketError=n.util.MakeTypeAssertion(s),t.exports={WebSocketError:s,createUnvalidatedWebSocketError:c}})),ss=n(((e,t)=>{let{createDeferredPromise:n}=Fa(),{environmentSettingsObject:r}=Ma(),{states:i,opcodes:a,sentCloseFrameState:o}=Qo(),{webidl:s}=ja(),{getURLRecord:c,isValidSubprotocol:l,isEstablished:u,utf8Decode:d}=$o(),{establishWebSocketConnection:f,failWebsocketConnection:p,closeWebSocketConnection:m}=ts(),{channels:h}=ma(),{WebsocketFrameSend:g}=es(),{ByteParser:_}=rs(),{WebSocketError:v,createUnvalidatedWebSocketError:y}=os(),{kEnumerableProperty:b}=q(),{utf8DecodeBytes:x}=Da(),S=!1;var C=class{#e;#t;#n;#r;#i;#a;#o=!1;#s={onConnectionEstablished:(e,t)=>this.#u(e,t),onMessage:(e,t)=>this.#d(e,t),onParserError:e=>p(this.#s,null,e.message),onParserDrain:()=>this.#s.socket.resume(),onSocketData:e=>{this.#c.write(e)||this.#s.socket.pause()},onSocketError:e=>{this.#s.readyState=i.CLOSING,h.socketError.hasSubscribers&&h.socketError.publish(e),this.#s.socket.destroy()},onSocketClose:()=>this.#f(),onPing:()=>{},onPong:()=>{},readyState:i.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#c;constructor(e,t=void 0){S||=(process.emitWarning(`WebSocketStream is experimental! Expect it to change at any time.`,{code:`UNDICI-WSS`}),!0),s.argumentLengthCheck(arguments,1,`WebSocket`),e=s.converters.USVString(e),t!==null&&(t=s.converters.WebSocketStreamOptions(t));let a=r.settingsObject.baseUrl,o=c(e,a),d=t.protocols;if(d.length!==new Set(d.map(e=>e.toLowerCase())).size||d.length>0&&!d.every(e=>l(e)))throw new DOMException(`Invalid Sec-WebSocket-Protocol value`,`SyntaxError`);if(this.#e=o.toString(),this.#t=n(),this.#n=n(),t.signal!=null){let e=t.signal;if(e.aborted){this.#t.reject(e.reason),this.#n.reject(e.reason);return}e.addEventListener(`abort`,()=>{u(this.#s.readyState)||(p(this.#s),this.#s.readyState=i.CLOSING,this.#t.reject(e.reason),this.#n.reject(e.reason),this.#o=!0)},{once:!0})}let m=r.settingsObject;this.#s.controller=f(o,d,m,this.#s,t)}get url(){return this.#e.toString()}get opened(){return this.#t.promise}get closed(){return this.#n.promise}close(e=void 0){e!==null&&(e=s.converters.WebSocketCloseInfo(e));let t=e.closeCode??null,n=e.reason;m(this.#s,t,n,!0)}#l(e){e=s.converters.WebSocketStreamWrite(e);let t=n(),r=null,i=null;if(s.is.BufferSource(e))r=new Uint8Array(ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e.slice()),i=a.BINARY;else{let n;try{n=s.converters.DOMString(e)}catch(e){return t.reject(e),t.promise}r=new TextEncoder().encode(n),i=a.TEXT}if(!this.#s.closeState.has(o.SENT)&&!this.#s.closeState.has(o.RECEIVED)){let e=new g(r);this.#s.socket.write(e.createFrame(i),()=>{t.resolve(void 0)})}return t.promise}#u(e,t){this.#s.socket=e.socket;let n=this.#s.controller.dispatcher?.webSocketOptions?.maxFragments,r=this.#s.controller.dispatcher?.webSocketOptions?.maxPayloadSize,a=new _(this.#s,t,{maxFragments:n,maxPayloadSize:r});a.on(`drain`,()=>this.#s.onParserDrain()),a.on(`error`,e=>this.#s.onParserError(e)),this.#c=a,this.#s.readyState=i.OPEN;let o=t??``,s=e.headersList.get(`sec-websocket-protocol`)??``,c=new ReadableStream({start:e=>{this.#i=e},cancel:e=>this.#m(e)}),l=new WritableStream({write:e=>this.#l(e),close:()=>m(this.#s,null,null),abort:e=>this.#p(e)});this.#r=c,this.#a=l,this.#t.resolve({extensions:o,protocol:s,readable:c,writable:l})}#d(e,t){if(this.#s.readyState!==i.OPEN)return;let n;if(e===a.TEXT)try{n=d(t)}catch{p(this.#s,1007,`Received invalid UTF-8 in text frame.`);return}else e===a.BINARY&&(n=new Uint8Array(t.buffer,t.byteOffset,t.byteLength));this.#i.enqueue(n)}#f(){let e=this.#s.closeState.has(o.SENT)&&this.#s.closeState.has(o.RECEIVED);if(this.#s.readyState=i.CLOSED,this.#o)return;this.#s.wasEverConnected||this.#t.reject(new v(`Socket never opened`));let t=this.#c?.closingInfo,n=t?.code??1005;!this.#s.closeState.has(o.SENT)&&!this.#s.closeState.has(o.RECEIVED)&&(n=1006);let r=t?.reason==null?``:x(Buffer.from(t.reason));if(e)this.#i.close(),this.#a.locked||this.#a.abort(new DOMException(`A closed WebSocketStream cannot be written to`,`InvalidStateError`)),this.#n.resolve({closeCode:n,reason:r});else{let e=y(`unclean close`,n,r);this.#i?.error(e),this.#a?.abort(e),this.#n.reject(e)}}#p(e){let t=null,n=``;s.is.WebSocketError(e)&&(t=e.closeCode,n=e.reason),m(this.#s,t,n)}#m(e){this.#p(e)}};Object.defineProperties(C.prototype,{url:b,opened:b,closed:b,close:b,[Symbol.toStringTag]:{value:`WebSocketStream`,writable:!1,enumerable:!1,configurable:!0}}),s.converters.WebSocketStreamOptions=s.dictionaryConverter([{key:`protocols`,converter:s.sequenceConverter(s.converters.USVString),defaultValue:()=>[]},{key:`signal`,converter:s.nullableConverter(s.converters.AbortSignal),defaultValue:()=>null}]),s.converters.WebSocketCloseInfo=s.dictionaryConverter([{key:`closeCode`,converter:e=>s.converters[`unsigned short`](e,s.attributes.EnforceRange)},{key:`reason`,converter:s.converters.USVString,defaultValue:()=>``}]),s.converters.WebSocketStreamWrite=function(e){return typeof e==`string`?s.converters.USVString(e):s.converters.BufferSource(e)},t.exports={WebSocketStream:C}})),cs=n(((e,t)=>{function n(e){return e.indexOf(`\0`)===-1}function r(e){if(e.length===0)return!1;for(let t=0;t<e.length;t++)if(e.charCodeAt(t)<48||e.charCodeAt(t)>57)return!1;return!0}t.exports={isValidLastEventId:n,isASCIINumber:r}})),ls=n(((e,n)=>{let{Transform:r}=t(`node:stream`),{isASCIINumber:i,isValidLastEventId:a}=cs(),o=[239,187,191];n.exports={EventSourceStream:class extends r{state;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(e={}){e.readableObjectMode=!0,super(e),this.state=e.eventSourceSettings||{},e.push&&(this.push=e.push)}_transform(e,t,n){if(e.length===0){n();return}if(this.buffer?this.buffer=Buffer.concat([this.buffer,e]):this.buffer=e,this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===o[0]){n();return}this.checkBOM=!1,n();return;case 2:if(this.buffer[0]===o[0]&&this.buffer[1]===o[1]){n();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===o[0]&&this.buffer[1]===o[1]&&this.buffer[2]===o[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,n();return}this.checkBOM=!1;break;default:this.buffer[0]===o[0]&&this.buffer[1]===o[1]&&this.buffer[2]===o[2]&&(this.buffer=this.buffer.subarray(3)),this.checkBOM=!1;break}for(;this.pos<this.buffer.length;){if(this.eventEndCheck){if(this.crlfCheck){if(this.buffer[this.pos]===10){this.buffer=this.buffer.subarray(this.pos+1),this.pos=0,this.crlfCheck=!1;continue}this.crlfCheck=!1}if(this.buffer[this.pos]===10||this.buffer[this.pos]===13){this.buffer[this.pos]===13&&(this.crlfCheck=!0),this.buffer=this.buffer.subarray(this.pos+1),this.pos=0,(this.event.data!==void 0||this.event.event||this.event.id!==void 0||this.event.retry)&&this.processEvent(this.event),this.clearEvent();continue}this.eventEndCheck=!1;continue}if(this.buffer[this.pos]===10||this.buffer[this.pos]===13){this.buffer[this.pos]===13&&(this.crlfCheck=!0),this.parseLine(this.buffer.subarray(0,this.pos),this.event),this.buffer=this.buffer.subarray(this.pos+1),this.pos=0,this.eventEndCheck=!0;continue}this.pos++}n()}parseLine(e,t){if(e.length===0)return;let n=e.indexOf(58);if(n===0)return;let r=``,o=``;if(n!==-1){r=e.subarray(0,n).toString(`utf8`);let t=n+1;e[t]===32&&++t,o=e.subarray(t).toString(`utf8`)}else r=e.toString(`utf8`),o=``;switch(r){case`data`:t[r]===void 0?t[r]=o:t[r]+=`\n${o}`;break;case`retry`:i(o)&&(t[r]=o);break;case`id`:a(o)&&(t[r]=o);break;case`event`:o.length>0&&(t[r]=o);break}}processEvent(e){e.retry&&i(e.retry)&&(this.state.reconnectionTime=parseInt(e.retry,10)),e.id!==void 0&&a(e.id)&&(this.state.lastEventId=e.id),e.data!==void 0&&this.push({type:e.event||`message`,options:{data:e.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event={data:void 0,event:void 0,id:void 0,retry:void 0}}}}})),us=n(((e,n)=>{let{pipeline:r}=t(`node:stream`),{fetching:i}=Uo(),{makeRequest:a}=Vo(),{webidl:o}=ja(),{EventSourceStream:s}=ls(),{parseMIMEType:c}=ka(),{createFastMessageEvent:l}=Zo(),{isNetworkError:u}=Bo(),{kEnumerableProperty:d}=q(),{environmentSettingsObject:f}=Ma(),p=!1,m=3e3;var h=class e extends EventTarget{#e={open:null,error:null,message:null};#t;#n=!1;#r=0;#i=null;#a=null;#o;#s;constructor(e,t={}){super(),o.util.markAsUncloneable(this);let n=`EventSource constructor`;o.argumentLengthCheck(arguments,1,n),p||(p=!0,process.emitWarning(`EventSource is experimental, expect them to change at any time.`,{code:`UNDICI-ES`})),e=o.converters.USVString(e),t=o.converters.EventSourceInitDict(t,n,`eventSourceInitDict`),this.#o=t.node.dispatcher||t.dispatcher,this.#s={lastEventId:``,reconnectionTime:t.node.reconnectionTime};let r=f,i;try{i=new URL(e,r.settingsObject.baseUrl),this.#s.origin=i.origin}catch(e){throw new DOMException(e,`SyntaxError`)}this.#t=i.href;let s=`anonymous`;t.withCredentials===!0&&(s=`use-credentials`,this.#n=!0);let c={redirect:`follow`,keepalive:!0,mode:`cors`,credentials:s===`anonymous`?`same-origin`:`omit`,referrer:`no-referrer`};c.client=f.settingsObject,c.headersList=[[`accept`,{name:`accept`,value:`text/event-stream`}]],c.cache=`no-store`,c.initiator=`other`,c.urlList=[new URL(this.#t)],this.#i=a(c),this.#c()}get readyState(){return this.#r}get url(){return this.#t}get withCredentials(){return this.#n}#c(){if(this.#r===2)return;this.#r=0;let e={request:this.#i,dispatcher:this.#o};e.processResponseEndOfBody=e=>{if(!u(e))return this.#l()},e.processResponse=e=>{if(u(e))if(e.aborted){this.close(),this.dispatchEvent(new Event(`error`));return}else{this.#l();return}let t=e.headersList.get(`content-type`,!0),n=t===null?`failure`:c(t),i=n!==`failure`&&n.essence===`text/event-stream`;if(e.status!==200||i===!1){this.close(),this.dispatchEvent(new Event(`error`));return}this.#r=1,this.dispatchEvent(new Event(`open`)),this.#s.origin=e.urlList[e.urlList.length-1].origin;let a=new s({eventSourceSettings:this.#s,push:e=>{this.dispatchEvent(l(e.type,e.options))}});r(e.body.stream,a,e=>{e?.aborted===!1&&(this.close(),this.dispatchEvent(new Event(`error`)))})},this.#a=i(e)}#l(){this.#r!==2&&(this.#r=0,this.dispatchEvent(new Event(`error`)),setTimeout(()=>{this.#r===0&&(this.#s.lastEventId.length&&this.#i.headersList.set(`last-event-id`,this.#s.lastEventId,!0),this.#c())},this.#s.reconnectionTime)?.unref())}close(){o.brandCheck(this,e),this.#r!==2&&(this.#r=2,this.#a.abort(),this.#i=null)}get onopen(){return this.#e.open}set onopen(e){this.#e.open&&this.removeEventListener(`open`,this.#e.open);let t=o.converters.EventHandlerNonNull(e);t===null?this.#e.open=null:(this.addEventListener(`open`,t),this.#e.open=e)}get onmessage(){return this.#e.message}set onmessage(e){this.#e.message&&this.removeEventListener(`message`,this.#e.message);let t=o.converters.EventHandlerNonNull(e);t===null?this.#e.message=null:(this.addEventListener(`message`,t),this.#e.message=e)}get onerror(){return this.#e.error}set onerror(e){this.#e.error&&this.removeEventListener(`error`,this.#e.error);let t=o.converters.EventHandlerNonNull(e);t===null?this.#e.error=null:(this.addEventListener(`error`,t),this.#e.error=e)}};let g={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:0,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:1,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:2,writable:!1}};Object.defineProperties(h,g),Object.defineProperties(h.prototype,g),Object.defineProperties(h.prototype,{close:d,onerror:d,onmessage:d,onopen:d,readyState:d,url:d,withCredentials:d}),o.converters.EventSourceInitDict=o.dictionaryConverter([{key:`withCredentials`,converter:o.converters.boolean,defaultValue:()=>!1},{key:`dispatcher`,converter:o.converters.any},{key:`node`,converter:o.dictionaryConverter([{key:`reconnectionTime`,converter:o.converters[`unsigned long`],defaultValue:()=>m},{key:`dispatcher`,converter:o.converters.any}]),defaultValue:()=>({})}]),n.exports={EventSource:h,defaultReconnectionTime:m}})),ds=n(((e,t)=>{let n=za(),r=_a(),i=Ha(),a=Ua(),o=Wa(),s=Ga(),c=Ya(),l=Ja(),u=Xa(),d=Qa(),f=$a(),p=K(),m=q(),{InvalidArgumentError:h}=p,g=so(),_=ba(),v=po(),{MockCallHistory:y,MockCallHistoryLog:b}=mo(),x=_o(),S=ho(),C=bo(),w=co(),T=Za(),{getGlobalDispatcher:E,setGlobalDispatcher:D}=xo(),O=So(),k=Co();Object.assign(r.prototype,g),t.exports.Dispatcher=r,t.exports.Client=n,t.exports.Pool=i,t.exports.BalancedPool=a,t.exports.RoundRobinPool=o,t.exports.Agent=s,t.exports.ProxyAgent=c,t.exports.Socks5ProxyAgent=l,t.exports.EnvHttpProxyAgent=u,t.exports.RetryAgent=d,t.exports.H2CClient=f,t.exports.RetryHandler=T,t.exports.DecoratorHandler=O,t.exports.RedirectHandler=k,t.exports.interceptors={redirect:wo(),responseError:To(),retry:Eo(),dump:Do(),dns:Oo(),cache:Po(),decompress:Fo(),deduplicate:Lo()},t.exports.cacheStores={MemoryCacheStore:Mo()};let A=Ro();t.exports.cacheStores.SqliteCacheStore=A,t.exports.buildConnector=_,t.exports.errors=p,t.exports.util={parseHeaders:m.parseHeaders,headerNameToString:m.headerNameToString};function j(e){return(t,n,r)=>{if(typeof n==`function`&&(r=n,n=null),!t||typeof t!=`string`&&typeof t!=`object`&&!(t instanceof URL))throw new h(`invalid url`);if(n!=null&&typeof n!=`object`)throw new h(`invalid opts`);if(n&&n.path!=null){if(typeof n.path!=`string`)throw new h(`invalid opts.path`);let e=n.path;n.path.startsWith(`/`)||(e=`/${e}`),t=new URL(m.parseOrigin(t).origin+e)}else n||=typeof t==`object`?t:{},t=m.parseURL(t);let{agent:i,dispatcher:a=E()}=n;if(i)throw new h(`unsupported opts.agent. Did you mean opts.client?`);return e.call(a,{...n,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:n.method||(n.body?`PUT`:`GET`)},r)}}t.exports.setGlobalDispatcher=D,t.exports.getGlobalDispatcher=E;let M=Uo().fetch,N=typeof __filename<`u`?__filename:void 0;function P(e,t){if(!e||typeof e!=`object`)return;let n=typeof e.stack==`string`?e.stack:``,r=t.replace(/\\/g,`/`);if(n&&(n.includes(t)||n.includes(r)))return;let i={};if(Error.captureStackTrace(i,P),!i.stack)return;let a=i.stack.split(`
|
|
97
97
|
`).slice(1).join(`
|
|
98
|
-
`);e.stack=n?`${n}\n${a}`:i.stack}t.exports.fetch=function(e,n=void 0){return M(e,n).catch(e=>{throw N?P(e,N):e&&typeof e==`object`&&Error.captureStackTrace(e,t.exports.fetch),e})},t.exports.Headers=Vo().Headers,t.exports.Response=Ho().Response,t.exports.Request=Uo().Request,t.exports.FormData=Fa().FormData;let{setGlobalOrigin:F,getGlobalOrigin:I}=Oa();t.exports.setGlobalOrigin=F,t.exports.getGlobalOrigin=I;let{CacheStorage:ee}=Jo(),{kConstruct:L}=da();t.exports.caches=new ee(L);let{deleteCookie:te,getCookies:R,getSetCookies:ne,setCookie:re,parseCookie:z}=Qo();t.exports.deleteCookie=te,t.exports.getCookies=R,t.exports.getSetCookies=ne,t.exports.setCookie=re,t.exports.parseCookie=z;let{parseMIMEType:ie,serializeAMimeType:ae}=ja();t.exports.parseMIMEType=ie,t.exports.serializeAMimeType=ae;let{CloseEvent:oe,ErrorEvent:se,MessageEvent:ce}=$o(),{WebSocket:le,ping:B}=ss();t.exports.WebSocket=le,t.exports.CloseEvent=oe,t.exports.ErrorEvent=se,t.exports.MessageEvent=ce,t.exports.ping=B,t.exports.WebSocketStream=ls().WebSocketStream,t.exports.WebSocketError=cs().WebSocketError,t.exports.request=j(g.request),t.exports.stream=j(g.stream),t.exports.pipeline=j(g.pipeline),t.exports.connect=j(g.connect),t.exports.upgrade=j(g.upgrade),t.exports.MockClient=v,t.exports.MockCallHistory=y,t.exports.MockCallHistoryLog=b,t.exports.MockPool=S,t.exports.MockAgent=x,t.exports.SnapshotAgent=C,t.exports.mockErrors=w;let{EventSource:ue}=fs();t.exports.EventSource=ue;function de(){globalThis.fetch=t.exports.fetch,globalThis.Headers=t.exports.Headers,globalThis.Response=t.exports.Response,globalThis.Request=t.exports.Request,globalThis.FormData=t.exports.FormData,globalThis.WebSocket=t.exports.WebSocket,globalThis.CloseEvent=t.exports.CloseEvent,globalThis.ErrorEvent=t.exports.ErrorEvent,globalThis.MessageEvent=t.exports.MessageEvent,globalThis.EventSource=t.exports.EventSource}t.exports.install=de})),ms=ua(),hs=ps(),gs=class{contentType=`application/json`;serialize(e){return Buffer.from(JSON.stringify(e,fi))}async deserialize(e){let t=[],n=e.getReader();for(;;){let{done:e,value:r}=await n.read();if(e)break;r&&t.push(r)}let r=Buffer.concat(t).toString();return JSON.parse(r,pi)}};const _s=parseInt(process.env.WORKFLOW_LOCAL_QUEUE_MAX_VISIBILITY??`0`,10)||1/0,vs=2147483647,ys=parseInt(process.env.WORKFLOW_LOCAL_QUEUE_CONCURRENCY??`0`,10)||1e3,bs=`Cannot perform ArrayBuffer.prototype.slice on a detached ArrayBuffer`;function xs(e){let t=e,n=new Set;for(;t&&typeof t==`object`&&!n.has(t);){if(n.add(t),`message`in t&&typeof t.message==`string`&&t.message.includes(bs))return!0;t=`cause`in t?t.cause:void 0}return!1}function Ss(e){let{kind:t,prefix:n}=ee(e);return{pathname:t===`workflow`?`flow`:`step`,prefix:n}}function Cs(e){let t=new hs.Agent({headersTimeout:0,connections:1e3,keepAliveTimeout:3e4}),n=new gs,r=re(),i=new ms.Sema(ys),a=new AbortController,o=a.signal,s=new Map,c=new Map,l=async(a,l,u)=>{let d=[];if(u?.idempotencyKey){let e=s.get(u.idempotencyKey);if(e)return{messageId:e}}let f=n.serialize(l),{pathname:p,prefix:m}=Ss(a),h=ce.parse(`msg_${r()}`),g=l,_=g.runId??g.workflowRunId??void 0,v=g.stepId??void 0;if(u?.idempotencyKey){let e=u.idempotencyKey;s.set(e,h),d.push(()=>{s.delete(e)})}return(async()=>{u?.delaySeconds&&u.delaySeconds>0&&await sr(Math.min(u.delaySeconds*1e3,vs),void 0,{signal:o}),i.tryAcquire()||(console.warn(`[world-local]: concurrency limit (${ys}) reached, waiting for queue to free up`),await i.acquire());try{for(let n=0;n<256;n++){let r={...u?.headers,"content-type":`application/json`,"x-vqs-queue-name":a,"x-vqs-message-id":h,"x-vqs-message-attempt":String(n+1)},i=c.get(m),s;if(i)s=await i(new Request(`http://localhost/.well-known/workflow/v1/${p}`,{method:`POST`,headers:r,body:f}));else{let n=await Jr(e);s=await fetch(`${n}/.well-known/workflow/v1/${p}`,{method:`POST`,duplex:`half`,dispatcher:t,headers:r,body:f})}let l=await s.text();if(s.ok){try{let e=Number(JSON.parse(l).timeoutSeconds);if(Number.isFinite(e)&&e>=0){e>0&&await sr(Math.min(e*1e3,vs),void 0,{signal:o});continue}}catch{}return}console.error(`[world-local] Queue message failed (attempt ${n+1}, HTTP ${s.status})`,{queueName:a,messageId:h,..._&&{runId:_},...v&&{stepId:v},handlerError:l}),await sr(5e3,void 0,{signal:o})}console.error(`[world-local] Queue message exhausted safety limit (256 attempts)`,{queueName:a,messageId:h,..._&&{runId:_},...v&&{stepId:v}})}finally{i.release()}})().catch(e=>{e?.name===`AbortError`||e?.name===`ResponseAborted`||(xs(e)?console.error(`[local world] Queue operation failed: detected "${bs}". This usually means a Next.js proxy/middleware consumed Workflow's internal request before the executor could read it. Exclude \`/.well-known/workflow/*\` from your matcher. See https://workflow-sdk.dev/docs/getting-started/next#configure-proxy-handler`,{queueName:a,messageId:h,..._&&{runId:_},...v&&{stepId:v},originalError:e}):console.error(`[local world] Queue operation failed:`,e))}).finally(()=>{for(let e of d)e()}),{messageId:h}},u=nn({"x-vqs-queue-name":Se,"x-vqs-message-id":ce,"x-vqs-message-attempt":at()});return{queue:l,createQueueHandler:(e,t)=>async n=>{let r=u.safeParse(Object.fromEntries(n.headers));if(!r.success||!n.body)return Response.json({error:n.body?`Missing required headers`:`Missing request body`},{status:400});let i=r.data[`x-vqs-queue-name`],a=r.data[`x-vqs-message-id`],o=r.data[`x-vqs-message-attempt`];if(!i.startsWith(e))return Response.json({error:`Unhandled queue`},{status:400});let s=await new gs().deserialize(n.body);try{let e=await t(s,{attempt:o,queueName:i,messageId:a}),n=null;return typeof e?.timeoutSeconds==`number`&&(n=Math.min(e.timeoutSeconds,_s)),n==null?Response.json({ok:!0}):Response.json({timeoutSeconds:n})}catch(e){return Response.json(String(e),{status:500})}},getDeploymentId:async()=>`dpl_local@${(await Oi()).version}`,registerHandler(e,t){c.set(e,t)},async close(){o.aborted||(a.abort(),await t.close())}}}function ws(e){return Vn(`sha256`).update(e).digest(`hex`)}function Ts(e,t,n,r){let i=Vn(`sha256`).update(`${t}\x00${n}\x00${r}`).digest(`hex`);return G.join(e,`hooks`,`tokens`,`${i}.recovery.json`)}const Es=re(()=>Math.random()),Ds=e=>t=>{let n=ai(t.replace(/\.json$/,``))+`.json`,r=RegExp(`^${e}_`,`g`),i=n.indexOf(`-`);return i===-1?hn(n.replace(/\.json$/,``).replace(r,``)):e===`step`?null:hn(n.substring(i+1).replace(/\.json$/,``).replace(r,``))};function Os(e,t){return t===`none`?{...e,input:void 0,output:void 0}:e}function ks(e,t){return t===`none`?{...e,input:void 0,output:void 0}:e}function As(e,t){if(t===`none`){let{metadata:t,...n}=e;return n}return e}function js(e,t){async function n(t){let n=G.join(e,`hooks`),r=await xi(n);for(let e of r){let r=await gi(G.join(n,`${e}.json`),V);if(r&&r.token===t)return{...r,isWebhook:r.isWebhook??!0}}return null}async function r(n,r){Qr(`hookId`,n);let i=await ci(e,`hooks`,n,V,t);if(!i)throw new C(n);let a=r?.resolveData||`all`;return As({...i,isWebhook:i.isWebhook??!0},a)}async function i(e){let t=await n(e);if(!t)throw new C(e);return t}async function a(t){let n=G.join(e,`hooks`),r=t.resolveData||`all`,i=await Ti({directory:n,schema:V,sortOrder:t.pagination?.sortOrder??`asc`,limit:t.pagination?.limit,cursor:t.pagination?.cursor,filePrefix:void 0,filter:e=>!(t.runId&&e.runId!==t.runId),getCreatedAt:()=>null,getId:e=>e.hookId});return{...i,data:i.data.map(e=>As(e,r))}}return{get:r,getByToken:i,list:a}}async function Ms(e,t){let n=G.join(e,`hooks`),r=await xi(n);for(let i of r){let r=G.join(n,`${i}.json`),a=await gi(r,V);a&&a.runId===t&&(await yi(G.join(n,`tokens`,`${ws(a.token)}.json`)),await yi(Ts(e,a.token,a.runId,a.hookId)),await yi(r))}}async function Ns(e,t,n,r,i){Qr(`runId`,t);let a=i?.resolveData??`all`;switch(n.eventType){case`run_cancelled`:{let n=new Date,i={runId:r.runId,deploymentId:r.deploymentId,workflowName:r.workflowName,specVersion:r.specVersion,executionContext:r.executionContext,input:r.input,createdAt:r.createdAt,expiredAt:r.expiredAt,startedAt:r.startedAt,status:`cancelled`,output:void 0,error:void 0,completedAt:n,updatedAt:n,attributes:r.attributes};return await mi($r(e,`runs`,`${t}.json`),i,{overwrite:!0}),await Ms(e,t),{event:void 0,run:Os(i,a)}}case`wait_completed`:case`hook_received`:{let r=`evnt_${Es()}`,i=new Date,o={...n,runId:t,eventId:r,createdAt:i,specVersion:5};return await mi($r(e,`events`,`${`${t}-${r}`}.json`),o),{event:ue(o,a)}}default:throw Error(`Event type '${n.eventType}' not supported for legacy runs (specVersion: ${r.specVersion||`undefined`}). Please upgrade 'workflow' package.`)}}const Ps=new Map;function Fs(e,t){let n=Ps.get(e),r={},i=(async()=>{n&&await n.catch(()=>void 0);try{return await t()}finally{Ps.get(e)===r.task&&Ps.delete(e)}})();return r.task=i,Ps.set(e,i),i}function Is(e,t){return{get:(async(n,r)=>{Qr(`runId`,n);let i=await ci(e,`runs`,n,De,t);if(!i)throw new d(n);return Os(i,r?.resolveData??`all`)}),list:(async t=>{let n=t?.resolveData??`all`,r=await Ti({directory:G.join(e,`runs`),schema:De,fileIdFilter:t?.fileIdFilter,filter:e=>!(t?.workflowName&&e.workflowName!==t.workflowName||t?.status&&e.status!==t.status),sortOrder:t?.pagination?.sortOrder??`desc`,limit:t?.pagination?.limit,cursor:t?.pagination?.cursor,getCreatedAt:Ds(`wrun`),getId:e=>e.runId});return n===`none`?{...r,data:r.data.map(e=>({...e,input:void 0,output:void 0}))}:r}),experimentalSetAttributes:async(n,r,i)=>(Qr(`runId`,n),Fs(n,async()=>{let a=await ci(e,`runs`,n,De,t);if(!a)throw new d(n);try{nt(r,{existingKeys:Object.keys(a.attributes??{}),allowReservedAttributes:i?.allowReservedAttributes})}catch(e){throw e instanceof $t,e}let o=H(a.attributes,r),s={...a,attributes:o,updatedAt:new Date};return await mi(si(e,`runs`,n,t),s,{overwrite:!0}),{attributes:o}}))}}const Ls=nn({hookId:ft().optional(),runId:ft(),eventId:ft().optional()}),Rs=nn({eventId:ft()});async function zs(e){try{return await gi(e,Ls)}catch(e){if(e instanceof SyntaxError||e instanceof an)return null;throw e}}async function Bs(e){try{return await gi(e,Rs)}catch(e){if(e instanceof SyntaxError||e instanceof an)return null;throw e}}async function Vs(e,t,n){return(await Ti({directory:G.join(e,`events`),schema:We,filePrefix:`${t}-`,filter:e=>e.eventType===`hook_created`&&e.correlationId===n,limit:1,getCreatedAt:Ds(`evnt`),getId:e=>e.eventId})).data[0]?.eventId??null}async function Hs(e,t,n,r,i){let a=await ci(e,`events`,`${t}-${r}`,We,i);if(!a||a.eventType!==`hook_created`||a.correlationId!==n||await ci(e,`hooks`,n,V,i))return;let o=a.eventData??{};if(typeof o.token!=`string`)return;let s={runId:t,hookId:n,token:o.token,metadata:o.metadata,ownerId:`local-owner`,projectId:`local-project`,environment:`local`,createdAt:a.createdAt,specVersion:a.specVersion,isWebhook:o.isWebhook??!1,isSystem:o.isSystem??!1};await bi(si(e,`hooks`,n,i),JSON.stringify(s,fi,2))}async function Us(e,t,n,r,i){let a=Ts(e,t,n,r);return await bi(a,JSON.stringify({eventId:i}))?i:(await Bs(a))?.eventId??null}function Ws(e,t,n){let r=e.get(t),i={},a=(async()=>{r&&await r.catch(()=>void 0);try{return await n()}finally{e.get(t)===i.task&&e.delete(t)}})();return i.task=a,e.set(t,a),a}async function Gs(e,t){let n=G.join(e,`waits`),r=await xi(n);for(let e of r)e.startsWith(`${t}-`)&&await yi(G.join(n,`${e}.json`))}async function Ks(e,t,n,r){return Fs(t,async()=>{let i=await gi(si(e,`runs`,t,n),De),a={...r,attributes:i?.attributes??r.attributes};return await mi(si(e,`runs`,t,n),a,{overwrite:!0}),a})}function qs(e,t){let n=new Map,r=new Map;return{async create(i,a,o){if(i!=null&&i!==``&&Qr(`runId`,i),`correlationId`in a&&typeof a.correlationId==`string`&&Qr(`correlationId`,a.correlationId),(a.eventType===`step_created`||a.eventType===`step_started`||a.eventType===`step_completed`||a.eventType===`step_failed`||a.eventType===`step_retrying`)&&i&&a.correlationId)return Ws(n,t?`${i}-${a.correlationId}.${t}`:`${i}-${a.correlationId}`,()=>s());if(a.eventType===`hook_created`&&i&&a.correlationId)return Ws(r,t?`${i}-${a.correlationId}.hook.${t}`:`${i}-${a.correlationId}.hook`,()=>s());return s();async function s(){let n=`evnt_${Es()}`,r=new Date,s;if(a.eventType===`run_created`&&(!i||i===``))s=`wrun_${Es()}`;else if(i)s=i;else throw Error(`runId is required for non-run_created events`);if(a.eventType===`run_created`&&i&&i!==``){let e=Ve(s,`wrun_`);if(e)throw new p(e)}let c=a.specVersion??5,l=e=>[`completed`,`failed`,`cancelled`].includes(e),u=e=>[`completed`,`failed`,`cancelled`].includes(e),f=null;if(a.eventType!==`run_created`&&![`step_completed`,`step_retrying`].includes(a.eventType)&&(f=await ci(e,`runs`,s,De,t),a.eventType===`run_started`&&!f&&`eventData`in a&&a.eventData)){let n=a.eventData;if(n.deploymentId&&n.workflowName&&n.input!==void 0){nt(Object.entries(n.attributes??{}).map(([e,t])=>({key:e,value:t})),{allowReservedAttributes:n.allowReservedAttributes===!0});let i={runId:s,deploymentId:n.deploymentId,status:`pending`,workflowName:n.workflowName,specVersion:c,executionContext:n.executionContext,input:n.input,output:void 0,error:void 0,startedAt:void 0,completedAt:void 0,attributes:n.attributes??{},createdAt:r,updatedAt:r};if(await bi(si(e,`runs`,s,t),JSON.stringify(i,fi))){let a=`evnt_${Es()}`,o={eventType:`run_created`,runId:s,eventId:a,createdAt:r,specVersion:c,eventData:{deploymentId:n.deploymentId,workflowName:n.workflowName,input:n.input,executionContext:n.executionContext,attributes:n.attributes,allowReservedAttributes:n.allowReservedAttributes}};await mi(si(e,`events`,`${s}-${a}`,t),o),f=i}else f=await ci(e,`runs`,s,De,t)}}if(a.eventType===`run_failed`&&!f||a.eventType===`attr_set`&&!f)throw new d(s);if(f){if(P(f.specVersion))throw new O(f.specVersion,5);if(zt(f.specVersion))return Ns(e,s,a,f,o)}let m=a.eventType===`step_started`&&`eventData`in a&&!!a.eventData&&typeof a.eventData.stepName==`string`&&a.eventData.input!==void 0;if(f&&l(f.status)){let i=[`run_started`,`run_completed`,`run_failed`];if(a.eventType===`run_cancelled`&&f.status===`cancelled`){let i={...a,runId:s,eventId:n,createdAt:r,specVersion:c};return await mi(si(e,`events`,`${s}-${n}`,t),i),{event:ue(i,o?.resolveData??`all`),run:f}}if(a.eventType===`run_started`)throw new b(`Workflow run "${s}" is already in terminal state "${f.status}"`);if(i.includes(a.eventType)||a.eventType===`run_cancelled`)throw new T(`Cannot transition run from terminal state "${f.status}"`);if(a.eventType===`step_created`||a.eventType===`hook_created`||a.eventType===`wait_created`||m)throw new T(`Cannot create new entities on run in terminal state "${f.status}"`);if(a.eventType===`attr_set`)throw new T(`Cannot set attributes on run in terminal state "${f.status}"`)}let h=null;if([`step_started`,`step_completed`,`step_failed`,`step_retrying`].includes(a.eventType)&&a.correlationId){if(h=await ci(e,`steps`,`${s}-${a.correlationId}`,Ae,t),!h&&!m)throw new p(`Step "${a.correlationId}" not found`);if(m&&h)throw new T(`Step "${a.correlationId}" already created`);if(h){if(u(h.status))throw new T(`Cannot modify step in terminal state "${h.status}"`);if(f&&l(f.status)&&h.status!==`running`)throw new b(`Cannot modify non-running step on run in terminal state "${f.status}"`)}}if([`hook_disposed`,`hook_received`].includes(a.eventType)&&a.correlationId&&!await ci(e,`hooks`,a.correlationId,V,t))throw new C(a.correlationId);let g={...a,runId:s,eventId:n,createdAt:r,specVersion:c};if(a.eventType===`run_started`&&`eventData`in g&&delete g.eventData,m&&`eventData`in g&&g.eventData){let{input:e,...t}=g.eventData;g.eventData=t}let _,y,x,S,w=!1,E;if(a.eventType===`run_created`&&`eventData`in a){let n=a.eventData;if(nt(Object.entries(n.attributes??{}).map(([e,t])=>({key:e,value:t})),{allowReservedAttributes:n.allowReservedAttributes===!0}),_={runId:s,deploymentId:n.deploymentId,status:`pending`,workflowName:n.workflowName,specVersion:c,executionContext:n.executionContext,input:n.input,output:void 0,error:void 0,startedAt:void 0,completedAt:void 0,attributes:n.attributes??{},createdAt:r,updatedAt:r},!await bi(si(e,`runs`,s,t),JSON.stringify(_,fi,2)))throw new T(`Workflow run "${s}" already exists`)}else if(a.eventType===`run_started`){if(f){if(f.status===`running`)return{run:f};_=await Ks(e,s,t,{runId:f.runId,deploymentId:f.deploymentId,workflowName:f.workflowName,specVersion:f.specVersion,executionContext:f.executionContext,input:f.input,createdAt:f.createdAt,expiredAt:f.expiredAt,status:`running`,output:void 0,error:void 0,completedAt:void 0,startedAt:f.startedAt??r,updatedAt:r,attributes:f.attributes})}}else if(a.eventType===`run_completed`&&`eventData`in a){let n=a.eventData;f&&(_=await Ks(e,s,t,{runId:f.runId,deploymentId:f.deploymentId,workflowName:f.workflowName,specVersion:f.specVersion,executionContext:f.executionContext,input:f.input,createdAt:f.createdAt,expiredAt:f.expiredAt,startedAt:f.startedAt,status:`completed`,output:n.output,error:void 0,completedAt:r,updatedAt:r,attributes:f.attributes}),await Promise.all([Ms(e,s),Gs(e,s)]))}else if(a.eventType===`run_failed`&&`eventData`in a){let n=a.eventData;f&&(_=await Ks(e,s,t,{runId:f.runId,deploymentId:f.deploymentId,workflowName:f.workflowName,specVersion:f.specVersion,executionContext:f.executionContext,input:f.input,createdAt:f.createdAt,expiredAt:f.expiredAt,startedAt:f.startedAt,status:`failed`,output:void 0,error:n.error,errorCode:n.errorCode,completedAt:r,updatedAt:r,attributes:f.attributes}),await Promise.all([Ms(e,s),Gs(e,s)]))}else if(a.eventType===`run_cancelled`)f&&(_=await Ks(e,s,t,{runId:f.runId,deploymentId:f.deploymentId,workflowName:f.workflowName,specVersion:f.specVersion,executionContext:f.executionContext,input:f.input,createdAt:f.createdAt,expiredAt:f.expiredAt,startedAt:f.startedAt,status:`cancelled`,output:void 0,error:void 0,completedAt:r,updatedAt:r,attributes:f.attributes}),await Promise.all([Ms(e,s),Gs(e,s)]));else if(a.eventType===`attr_set`&&f)_=await Fs(s,async()=>{let n=await gi(si(e,`runs`,s,t),De);if(!n)throw new d(s);if(nt(a.eventData.changes,{existingKeys:Object.keys(n.attributes),allowReservedAttributes:a.eventData.allowReservedAttributes===!0}),a.correlationId&&a.eventData.writer.type===`workflow`&&!await bi($r(e,`.locks`,`attributes`,t?`${s}-${a.correlationId}.created.${t}`:`${s}-${a.correlationId}.created`),``))throw new T(`Attribute event "${a.correlationId}" already exists`);let i={...n,attributes:H(n.attributes,a.eventData.changes),updatedAt:r};return await mi(si(e,`runs`,s,t),i,{overwrite:!0}),i});else if(a.eventType===`step_created`&&`eventData`in a){if(!await bi($r(e,`.locks`,`steps`,t?`${s}-${a.correlationId}.created.${t}`:`${s}-${a.correlationId}.created`),``))throw new T(`Step "${a.correlationId}" already created`);let n=a.eventData;y={runId:s,stepId:a.correlationId,stepName:n.stepName,status:`pending`,input:n.input,output:void 0,error:void 0,attempt:0,startedAt:void 0,completedAt:void 0,createdAt:r,updatedAt:r,specVersion:c},await mi(si(e,`steps`,`${s}-${a.correlationId}`,t),y)}else if(a.eventType===`step_started`){if(!h&&m){let n=a.eventData;if(await bi($r(e,`.locks`,`steps`,t?`${s}-${a.correlationId}.created.${t}`:`${s}-${a.correlationId}.created`),``)){let i={runId:s,stepId:a.correlationId,stepName:n.stepName,status:`pending`,input:n.input,output:void 0,error:void 0,attempt:0,startedAt:void 0,completedAt:void 0,createdAt:r,updatedAt:r,specVersion:c};await mi(si(e,`steps`,`${s}-${a.correlationId}`,t),i);let o=`evnt_${Es()}`,l={eventType:`step_created`,runId:s,eventId:o,createdAt:r,specVersion:c,correlationId:a.correlationId,eventData:{stepName:n.stepName,input:n.input}};await mi(si(e,`events`,`${s}-${o}`,t),l),h=i,w=!0}else throw new T(`Step "${a.correlationId}" already created`)}if(h){if(h.retryAfter&&h.retryAfter.getTime()>Date.now())throw new v(`Cannot start step "${a.correlationId}": retryAfter timestamp has not been reached yet`,{retryAfter:Math.ceil((h.retryAfter.getTime()-Date.now())/1e3)});let n=`${s}-${a.correlationId}`,i=await ci(e,`steps`,n,Ae,t);if(i&&u(i.status))throw new T(`Cannot modify step in terminal state "${i.status}"`);y={...h,status:`running`,startedAt:h.startedAt??r,attempt:h.attempt+1,retryAfter:void 0,updatedAt:r},await mi(si(e,`steps`,n,t),y,{overwrite:!0})}}else if(a.eventType===`step_completed`&&`eventData`in a){let n=a.eventData;if(h){let i=`${s}-${a.correlationId}`;if(!await bi($r(e,`.locks`,`steps`,t?`${i}.terminal.${t}`:`${i}.terminal`),``))throw new T(`Cannot modify step in terminal state`);y={...h,status:`completed`,output:n.result,completedAt:r,updatedAt:r},await mi(si(e,`steps`,i,t),y,{overwrite:!0})}}else if(a.eventType===`step_failed`&&`eventData`in a){let n=a.eventData;if(h){let i=`${s}-${a.correlationId}`;if(!await bi($r(e,`.locks`,`steps`,t?`${i}.terminal.${t}`:`${i}.terminal`),``))throw new T(`Cannot modify step in terminal state`);y={...h,status:`failed`,error:n.error,completedAt:r,updatedAt:r},await mi(si(e,`steps`,i,t),y,{overwrite:!0})}}else if(a.eventType===`step_retrying`&&`eventData`in a){let n=a.eventData;if(h){let i=`${s}-${a.correlationId}`;y={...h,status:`pending`,error:n.error,retryAfter:n.retryAfter,updatedAt:r},await mi(si(e,`steps`,i,t),y,{overwrite:!0})}}else if(a.eventType===`hook_created`&&`eventData`in a){let i=a.eventData,l=G.join(e,`hooks`,`tokens`,`${ws(i.token)}.json`),u=await bi(l,JSON.stringify({token:i.token,hookId:a.correlationId,runId:s,eventId:n})),d=!1;if(!u){let u=await zs(l);if(u?.runId===s&&u.hookId===a.correlationId){let o;if(u.eventId)o=u.eventId;else{let r=await Vs(e,s,a.correlationId);if(r!==null)throw await Hs(e,s,a.correlationId,r,t),new T(`Hook "${a.correlationId}" already created`);let c=await Us(e,i.token,s,a.correlationId,n);if(c===null)throw new T(`Hook "${a.correlationId}" already created`);o=c}n=o;let l=hn(n.replace(/^evnt_/,``))??r;g={...a,runId:s,eventId:n,createdAt:l,specVersion:c},d=!0}else{let l={eventType:`hook_conflict`,correlationId:a.correlationId,eventData:{token:i.token,...u?{conflictingRunId:u.runId}:{}},runId:s,eventId:n,createdAt:r,specVersion:c};return await mi(si(e,`events`,`${s}-${n}`,t),l),{event:ue(l,o?.resolveData??`all`),run:_,step:y,hook:void 0}}}x={runId:s,hookId:a.correlationId,token:i.token,metadata:i.metadata,ownerId:`local-owner`,projectId:`local-project`,environment:`local`,createdAt:g.createdAt,specVersion:c,isWebhook:i.isWebhook??!1,isSystem:i.isSystem??!1},E=d?{overwrite:!0}:void 0}else if(a.eventType===`hook_disposed`){if(!await bi($r(e,`.locks`,`hooks`,t?`${a.correlationId}.disposed.${t}`:`${a.correlationId}.disposed`),``))throw new T(`Hook "${a.correlationId}" already disposed`);let n=si(e,`hooks`,a.correlationId,t),r=await ci(e,`hooks`,a.correlationId,V,t);r&&(await yi(G.join(e,`hooks`,`tokens`,`${ws(r.token)}.json`)),await yi(Ts(e,r.token,r.runId,r.hookId))),await yi(n)}else if(a.eventType===`wait_created`&&`eventData`in a){let n=`${s}-${a.correlationId}`;if(!await bi($r(e,`.locks`,`waits`,t?`${n}.created.${t}`:`${n}.created`),``))throw new T(`Wait "${a.correlationId}" already exists`);let i=a.eventData;S={waitId:n,runId:s,status:`waiting`,resumeAt:i.resumeAt,completedAt:void 0,createdAt:r,updatedAt:r,specVersion:c},await mi(si(e,`waits`,n,t),S)}else if(a.eventType===`wait_completed`){let n=`${s}-${a.correlationId}`,i=$r(e,`.locks`,`waits`,t?`${n}.completed.${t}`:`${n}.completed`);if(!await bi(i,``))throw new T(`Wait "${a.correlationId}" already completed`);let o=await ci(e,`waits`,n,te,t);if(!o)throw await Xn.unlink(i).catch(()=>{}),new p(`Wait "${a.correlationId}" not found`);S={...o,status:`completed`,completedAt:r,updatedAt:r},await mi(si(e,`waits`,n,t),S,{overwrite:!0})}if(!await bi(si(e,`events`,`${s}-${n}`,t),JSON.stringify(g,fi,2)))throw a.eventType===`hook_created`&&a.correlationId&&await Hs(e,s,a.correlationId,n,t),new T(`Event "${n}" already exists for run "${s}"`);x&&a.eventType===`hook_created`&&await mi(si(e,`hooks`,x.hookId,t),x,E);let D=o?.resolveData??`all`,k=ue(g,D),A,j,M;if(a.eventType===`run_started`&&_){let t=await Ti({directory:G.join(e,`events`),schema:We,filePrefix:`${s}-`,sortOrder:`asc`,limit:1e3,getCreatedAt:Ds(`evnt`),getId:e=>e.eventId});A=t.data,j=t.cursor,M=t.hasMore}if((a.eventType===`step_completed`||a.eventType===`step_failed`)&&typeof o?.sinceCursor==`string`){let t=await Ti({directory:G.join(e,`events`),schema:We,filePrefix:`${s}-`,sortOrder:`asc`,cursor:o.sinceCursor,getCreatedAt:Ds(`evnt`),getId:e=>e.eventId});A=D===`none`?t.data.map(e=>ue(e,D)):t.data,j=t.cursor,M=t.hasMore}return{event:k,run:_,step:y,hook:x,wait:S,events:A,cursor:j,hasMore:M,...w?{stepCreated:!0}:{}}}},async get(n,r,i){Qr(`runId`,n),Qr(`eventId`,r);let a=await ci(e,`events`,`${n}-${r}`,We,t);if(!a)throw Error(`Event ${r} in run ${n} not found`);return ue(a,i?.resolveData??`all`)},async list(t){let{runId:n}=t;Qr(`runId`,n);let r=t.resolveData??`all`,i=await Ti({directory:G.join(e,`events`),schema:We,filePrefix:`${n}-`,sortOrder:t.pagination?.sortOrder??`asc`,limit:t.pagination?.limit,cursor:t.pagination?.cursor,getCreatedAt:Ds(`evnt`),getId:e=>e.eventId});return r===`none`?{...i,data:i.data.map(e=>ue(e,r))}:i},async listByCorrelationId(t){let n=t.correlationId;Qr(`correlationId`,n);let r=t.resolveData??`all`,i=await Ti({directory:G.join(e,`events`),schema:We,filter:e=>e.correlationId===n,sortOrder:t.pagination?.sortOrder??`asc`,limit:t.pagination?.limit,cursor:t.pagination?.cursor,getCreatedAt:Ds(`evnt`),getId:e=>e.eventId});return r===`none`?{...i,data:i.data.map(e=>ue(e,r))}:i}}}function Js(e,t){return{get:(async(n,r,i)=>{Qr(`runId`,n),Qr(`stepId`,r);let a=await ci(e,`steps`,`${n}-${r}`,Ae,t);if(!a)throw Error(`Step ${r} in run ${n} not found`);return ks(a,i?.resolveData??`all`)}),list:(async t=>{Qr(`runId`,t.runId);let n=t.resolveData??`all`,r=await Ti({directory:G.join(e,`steps`),schema:Ae,filePrefix:`${t.runId}-`,sortOrder:t.pagination?.sortOrder??`desc`,limit:t.pagination?.limit,cursor:t.pagination?.cursor,getCreatedAt:Ds(`step`),getId:e=>e.stepId});return n===`none`?{...r,data:r.data.map(e=>({...e,input:void 0,output:void 0}))}:r})}}function Ys(e,t){let n=Is(e,t),r=Js(e,t),i=qs(e,t),a=js(e,t);return{runs:la(`world.runs`,n),steps:la(`world.steps`,r),events:la(`world.events`,i),hooks:la(`world.hooks`,a)}}const Xs=re(()=>Math.random()),Zs=nn({streams:xt(ft())});function Qs(e){return e===1}function $s(e){let t=Buffer.from([+!!e.eof]);return Buffer.concat([t,e.chunk])}function ec(e){return Qs(e[0])}function tc(e){return{eof:ec(e),chunk:Buffer.from(e.subarray(1))}}async function nc(e){try{return await Xn.readdir(e)}catch(e){if(e.code===`ENOENT`)return[];throw e}}function rc(e,t,n,r=n,i=()=>!0){for(let a of t){if(!a.endsWith(n))continue;let t=a.slice(0,-n.length);i(t)&&e.set(t,r)}}async function ic(e,t,n){Qr(`streamName`,t);let r=await nc(e),i=new Map;return rc(i,r,`.json`),rc(i,r,`.bin`,`.bin`,n?e=>!e.endsWith(`.${n}`):void 0),n&&rc(i,r,`.${n}.bin`),{files:[...i.keys()].filter(e=>e.startsWith(`${t}-`)).sort(),extMap:i}}function ac(e,t){let n=t?`.${t}`:``,r=new cr,i=new Set;async function a(n,r){Qr(`runId`,n),Qr(`streamName`,r);let a=`${n}:${r}`;if(i.has(a))return;let o=si(e,`streams/runs`,n,t),s=(await ci(e,`streams/runs`,n,Zs,t))?.streams??[];s.includes(r)||(s.push(r),await mi(o,{streams:s},{overwrite:!0})),i.add(a)}function o(e){return typeof e==`string`?Buffer.from(new TextEncoder().encode(e)):e instanceof Buffer?e:Buffer.from(e)}return{streams:{async write(t,i,s){let c=`chnk_${Xs()}`;await a(await t,i);let l=o(s),u=$s({chunk:l,eof:!1});await hi(G.join(e,`streams`,`chunks`,`${i}-${c}${n}.bin`),u);let d=Uint8Array.from(l);r.emit(`chunk:${i}`,{streamName:i,chunkData:d,chunkId:c})},async writeMulti(t,i,s){if(s.length===0)return;let c=s.map(()=>`chnk_${Xs()}`);await a(await t,i);let l=s.map(e=>o(e)).map(async(t,r)=>{let a=c[r],o=$s({chunk:t,eof:!1});return await hi(G.join(e,`streams`,`chunks`,`${i}-${a}${n}.bin`),o),{chunkId:a,chunkData:Uint8Array.from(t)}});for(let e of l){let{chunkId:t,chunkData:n}=await e;r.emit(`chunk:${i}`,{streamName:i,chunkData:n,chunkId:t})}},async close(t,i){let o=`chnk_${Xs()}`;await a(await t,i),await hi(G.join(e,`streams`,`chunks`,`${i}-${o}${n}.bin`),$s({chunk:Buffer.from([]),eof:!0})),r.emit(`close:${i}`,{streamName:i})},async list(n){return Qr(`runId`,n),(await ci(e,`streams/runs`,n,Zs,t))?.streams??[]},async getChunks(n,r,i){let a=i?.limit??100,o=G.join(e,`streams`,`chunks`),{files:s,extMap:c}=await ic(o,r,t),l=0;if(i?.cursor)try{l=JSON.parse(Buffer.from(i.cursor,`base64`).toString(`utf-8`)).i}catch{l=0}let u=!1,d=[],f=0;for(let e of s){let t=c.get(e)??`.bin`,n=G.join(o,`${e}${t}`);if(f<l){if(Qs(await vi(n))){u=!0;break}f++;continue}if(d.length>=a){Qs(await vi(n))?u=!0:f++;break}let r=tc(await _i(n));if(r.eof){u=!0;break}d.push({index:f,data:Uint8Array.from(r.chunk)}),f++}let p=!u&&f>l+d.length,m=l+d.length;return{data:d,cursor:p?Buffer.from(JSON.stringify({i:m})).toString(`base64`):null,hasMore:p,done:u}},async getInfo(n,r){let i=G.join(e,`streams`,`chunks`),{files:a,extMap:o}=await ic(i,r,t),s=!1,c=0;for(let e of a){let t=o.get(e)??`.bin`;if(Qs(await vi(G.join(i,`${e}${t}`)))){s=!0;break}c++}return{tailIndex:c-1,done:s}},async get(n,i,a=0){let o=G.join(e,`streams`,`chunks`),s=()=>{},c=null;return new ReadableStream({async start(e){let n=new Set,l=[],u=!0,d=!1,f=!1,p=t=>{if(t.chunkData.byteLength===0){n.add(t.chunkId);return}u?(n.add(t.chunkId),l.push({chunkId:t.chunkId,chunkData:Uint8Array.from(t.chunkData)})):n.has(t.chunkId)||(n.add(t.chunkId),e.enqueue(Uint8Array.from(t.chunkData)))},m=()=>{if(u){d=!0;return}f=!0,r.off(`chunk:${i}`,p),r.off(`close:${i}`,m),c&&=(clearInterval(c),null);try{e.close()}catch{}};s=m,r.on(`chunk:${i}`,p),r.on(`close:${i}`,m);let{files:h,extMap:g}=await ic(o,i,t),_=h.length;if(typeof a==`number`&&a<0&&h.length>0){let e=h[h.length-1],t=g.get(e)??`.bin`;Qs(await vi(G.join(o,`${e}${t}`)))&&_--}let v=typeof a==`number`&&a<0?Math.max(0,_+a):a,y=!1;for(let r=v;r<h.length;r++){let a=h[r],s=a.substring(i.length+1),c=t?s.replace(`.${t}`,``):s;if(n.has(c))continue;let l=g.get(a)??`.bin`,u=tc(await _i(G.join(o,`${a}${l}`)));if(u?.eof===!0){y=!0;break}n.add(c),u.chunk.byteLength&&e.enqueue(Uint8Array.from(u.chunk))}u=!1,l.sort((e,t)=>e.chunkId.localeCompare(t.chunkId));for(let t of l)e.enqueue(Uint8Array.from(t.chunkData));if(y){s();try{e.close()}catch{}return}if(d){r.off(`chunk:${i}`,p),r.off(`close:${i}`,m);try{e.close()}catch{}return}for(let e=0;e<v&&e<h.length;e++){let r=h[e].substring(i.length+1),a=t?r.replace(`.${t}`,``):r;n.add(a)}let b=!1;c=setInterval(async()=>{if(!b){b=!0;try{let{files:a,extMap:s}=await ic(o,i,t);for(let l of a){let a=l.substring(i.length+1),u=t?a.replace(`.${t}`,``):a;if(n.has(u))continue;n.add(u);let d=s.get(l)??`.bin`,h=tc(await _i(G.join(o,`${l}${d}`)));if(h?.eof===!0){f=!0,c&&=(clearInterval(c),null),r.off(`chunk:${i}`,p),r.off(`close:${i}`,m);try{e.close()}catch{}return}if(f)return;h.chunk.byteLength&&e.enqueue(Uint8Array.from(h.chunk))}}catch(e){e instanceof Error&&`code`in e||console.error(`[world-local] Unexpected polling error:`,e)}finally{b=!1}}},100)},cancel(){s(),c&&=(clearInterval(c),null)}})}}}}function oc(e){let t=e?Object.fromEntries(Object.entries(e).filter(([,e])=>e!==void 0)):{},n={...qr.value,...t},r=n.tag,i=Cs(n),a=Ys(n.dataDir,r),o=n.recoverActiveRuns??!0;return{specVersion:5,...i,...a,...la(`world.streams`,{...ac(n.dataDir,r),...n.streamFlushIntervalMs!==void 0&&{streamFlushIntervalMs:n.streamFlushIntervalMs}}),async start(){await Vi(n.dataDir),o&&await Ne(r?{...a.runs,list:(e=>a.runs.list({...e,fileIdFilter:e=>oi(e,r)}))}:a.runs,i.queue,`world-local`)},async close(){await i.close()},async clear(){if(r){let e=n.dataDir,t=G.join(e,`hooks`),i=await li(t,r),{HookSchema:a}=await import(`../../_chunks/workflow/attribute-changes-DUxG-Gic.js`).then(e=>e.Sn);await Promise.all(i.map(async n=>{let r=await gi(G.join(t,n),a);r?.token&&(await yi(G.join(t,`tokens`,`${ws(r.token)}.json`)),await yi(Ts(e,r.token,r.runId,r.hookId)))})),await Promise.all([`runs`,`steps`,`events`,`hooks`,`waits`,`streams/runs`].map(async t=>{let n=G.join(e,t),i=await li(n,r);await Promise.all(i.map(e=>yi(G.join(n,e))))})),await Yn.rm(G.join(e,`.locks`),{recursive:!0,force:!0}).catch(()=>{});let o=G.join(e,`streams`,`chunks`),s=await ui(o,r,`.bin`);await Promise.all(s.map(e=>Yn.unlink(G.join(o,e)).catch(()=>{}))),ri()}else await rr(n.dataDir,{recursive:!0,force:!0}),await Vi(n.dataDir)}}}var sc=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{SYMBOL_FOR_REQ_CONTEXT:()=>u,getContext:()=>d}),t.exports=c(l);let u=Symbol.for(`@vercel/request-context`);function d(){return globalThis[u]?.get?.()??{}}0&&(t.exports={SYMBOL_FOR_REQ_CONTEXT:u,getContext:d})})),cc=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{VercelOidcTokenError:()=>u}),t.exports=c(l);var u=class extends Error{constructor(e,t){super(e),this.name=`VercelOidcTokenError`,this.cause=t}toString(){return this.cause?`${this.name}: ${this.message}: ${this.cause}`:`${this.name}: ${this.message}`}};0&&(t.exports={VercelOidcTokenError:u})})),lc=n(((t,n)=>{var r=Object.defineProperty,i=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,s=(e,t)=>{for(var n in t)r(e,n,{get:t[n],enumerable:!0})},c=(e,t,n,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of a(t))!o.call(e,c)&&c!==n&&r(e,c,{get:()=>t[c],enumerable:!(s=i(t,c))||s.enumerable});return e},l=e=>c(r({},`__esModule`,{value:!0}),e),u={};s(u,{getVercelOidcToken:()=>p,getVercelOidcTokenSync:()=>m}),n.exports=l(u);var d=sc(),f=cc();async function p(t){let n=``,r;try{n=m()}catch(e){r=e}try{let[{getTokenPayload:r,isExpired:i},{refreshToken:a}]=await Promise.all([await Promise.resolve().then(()=>e(mc())),await import(`../../_chunks/workflow/token-J7YP0s9a.js`).then(t=>e(t.default))]);(!n||i(r(n),t?.expirationBufferMs))&&(await a(t),n=m())}catch(e){let t=r instanceof Error?r.message:``;throw e instanceof Error&&(t=`${t}
|
|
99
|
-
${e.message}`),t?new f.VercelOidcTokenError(t):e}return n}function m(){let e=(0,d.getContext)().headers?.[`x-vercel-oidc-token`]??process.env.VERCEL_OIDC_TOKEN;if(!e)throw Error(`The 'x-vercel-oidc-token' header is missing from the request. Do you have the OIDC option enabled in the Vercel project settings?`);return e}0&&(n.exports={getVercelOidcToken:p,getVercelOidcTokenSync:m})})),uc=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{AccessTokenMissingError:()=>u,RefreshAccessTokenFailedError:()=>d}),t.exports=c(l);var u=class extends Error{constructor(){super(`No authentication found. Please log in with the Vercel CLI (vercel login).`),this.name=`AccessTokenMissingError`}},d=class extends Error{constructor(e){super(`Failed to refresh authentication token.`,{cause:e}),this.name=`RefreshAccessTokenFailedError`}};0&&(t.exports={AccessTokenMissingError:u,RefreshAccessTokenFailedError:d})})),dc=n(((e,n)=>{var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let s of o(t))!c.call(e,s)&&s!==n&&i(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)),f=e=>u(i({},`__esModule`,{value:!0}),e),p={};l(p,{findRootDir:()=>v,getUserDataDir:()=>y}),n.exports=f(p);var m=d(t(`path`)),h=d(t(`fs`)),g=d(t(`os`)),_=cc();function v(){try{let e=process.cwd();for(;e!==m.default.dirname(e);){let t=m.default.join(e,`.vercel`);if(h.default.existsSync(t))return e;e=m.default.dirname(e)}}catch{throw new _.VercelOidcTokenError(`Token refresh only supported in node server environments`)}return null}function y(){if(process.env.XDG_DATA_HOME)return process.env.XDG_DATA_HOME;switch(g.default.platform()){case`darwin`:return m.default.join(g.default.homedir(),`Library/Application Support`);case`linux`:return m.default.join(g.default.homedir(),`.local/share`);case`win32`:return process.env.LOCALAPPDATA?process.env.LOCALAPPDATA:null;default:return null}}0&&(n.exports={findRootDir:v,getUserDataDir:y})})),fc=n(((e,n)=>{var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let s of o(t))!c.call(e,s)&&s!==n&&i(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)),f=e=>u(i({},`__esModule`,{value:!0}),e),p={};l(p,{isValidAccessToken:()=>b,readAuthConfig:()=>v,writeAuthConfig:()=>y}),n.exports=f(p);var m=d(t(`fs`)),h=d(t(`path`)),g=mc();function _(){let e=(0,g.getVercelDataDir)();if(!e)throw Error(`Unable to find Vercel CLI data directory. Your platform: ${process.platform}. Supported: darwin, linux, win32.`);return h.join(e,`auth.json`)}function v(){try{let e=_();if(!m.existsSync(e))return null;let t=m.readFileSync(e,`utf8`);return t?JSON.parse(t):null}catch{return null}}function y(e){let t=_(),n=h.dirname(t);m.existsSync(n)||m.mkdirSync(n,{mode:504,recursive:!0}),m.writeFileSync(t,JSON.stringify(e,null,2),{mode:384})}function b(e,t=0){if(!e.token)return!1;if(typeof e.expiresAt!=`number`)return!0;let n=Math.floor(Date.now()/1e3),r=t/1e3;return e.expiresAt>=n+r}0&&(n.exports={isValidAccessToken:b,readAuthConfig:v,writeAuthConfig:y})})),pc=n(((e,n)=>{var r=Object.defineProperty,i=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,s=(e,t)=>{for(var n in t)r(e,n,{get:t[n],enumerable:!0})},c=(e,t,n,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of a(t))!o.call(e,c)&&c!==n&&r(e,c,{get:()=>t[c],enumerable:!(s=i(t,c))||s.enumerable});return e},l=e=>c(r({},`__esModule`,{value:!0}),e),u={};s(u,{processTokenResponse:()=>g,refreshTokenRequest:()=>h}),n.exports=l(u);var d=t(`os`);let f=`@vercel/oidc node-${process.version} ${(0,d.platform)()} (${(0,d.arch)()}) ${(0,d.hostname)()}`,p=null;async function m(){if(p)return p;let e=await fetch(`https://vercel.com/.well-known/openid-configuration`,{headers:{"user-agent":f}});if(!e.ok)throw Error(`Failed to discover OAuth endpoints`);let t=await e.json();if(!t||typeof t.token_endpoint!=`string`)throw Error(`Invalid OAuth discovery response`);let n=t.token_endpoint;return p=n,n}async function h(e){let t=await m();return await fetch(t,{method:`POST`,headers:{"Content-Type":`application/x-www-form-urlencoded`,"user-agent":f},body:new URLSearchParams({client_id:`cl_HYyOPBNtFMfHhaUn9L4QPfTZz6TP47bp`,grant_type:`refresh_token`,...e})})}async function g(e){let t=await e.json();if(!e.ok){let e=typeof t==`object`&&t&&`error`in t?String(t.error):`Token refresh failed`;return[Error(e)]}return typeof t!=`object`||!t?[Error(`Invalid token response`)]:typeof t.access_token==`string`?t.token_type===`Bearer`?typeof t.expires_in==`number`?[null,t]:[Error(`Missing expires_in in response`)]:[Error(`Invalid token_type in response`)]:[Error(`Missing access_token in response`)]}0&&(n.exports={processTokenResponse:g,refreshTokenRequest:h})})),mc=n(((e,n)=>{var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let s of o(t))!c.call(e,s)&&s!==n&&i(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)),f=e=>u(i({},`__esModule`,{value:!0}),e),p={};l(p,{assertVercelOidcTokenResponse:()=>w,findProjectInfo:()=>T,getTokenPayload:()=>O,getVercelDataDir:()=>x,getVercelOidcToken:()=>C,getVercelToken:()=>S,isExpired:()=>k,loadToken:()=>D,saveToken:()=>E}),n.exports=f(p);var m=d(t(`path`)),h=d(t(`fs`)),g=cc(),_=dc(),v=fc(),y=pc(),b=uc();function x(){let e=(0,_.getUserDataDir)();return e?m.join(e,`com.vercel.cli`):null}async function S(e){let t=(0,v.readAuthConfig)();if(!t?.token)throw new b.AccessTokenMissingError;if((0,v.isValidAccessToken)(t,e?.expirationBufferMs))return t.token;if(!t.refreshToken)throw(0,v.writeAuthConfig)({}),new b.RefreshAccessTokenFailedError(`No refresh token available`);try{let e=await(0,y.refreshTokenRequest)({refresh_token:t.refreshToken}),[n,r]=await(0,y.processTokenResponse)(e);if(n||!r)throw(0,v.writeAuthConfig)({}),new b.RefreshAccessTokenFailedError(n);let i={token:r.access_token,expiresAt:Math.floor(Date.now()/1e3)+r.expires_in};return r.refresh_token&&(i.refreshToken=r.refresh_token),(0,v.writeAuthConfig)(i),i.token}catch(e){throw(0,v.writeAuthConfig)({}),e instanceof b.AccessTokenMissingError||e instanceof b.RefreshAccessTokenFailedError?e:new b.RefreshAccessTokenFailedError(e)}}async function C(e,t,n){let r=`https://api.vercel.com/v1/projects/${t}/token?source=vercel-oidc-refresh${n?`&teamId=${n}`:``}`,i=await fetch(r,{method:`POST`,headers:{Authorization:`Bearer ${e}`}});if(!i.ok)throw new g.VercelOidcTokenError(`Failed to refresh OIDC token: ${i.statusText}`);let a=await i.json();return w(a),a}function w(e){if(!e||typeof e!=`object`)throw TypeError("Vercel OIDC token is malformed. Expected an object. Please run `vc env pull` and try again");if(!(`token`in e)||typeof e.token!=`string`)throw TypeError("Vercel OIDC token is malformed. Expected a string-valued token property. Please run `vc env pull` and try again")}function T(){let e=(0,_.findRootDir)();if(!e)throw new g.VercelOidcTokenError("Unable to find project root directory. Have you linked your project with `vc link?`");let t=m.join(e,`.vercel`,`project.json`);if(!h.existsSync(t))throw new g.VercelOidcTokenError("project.json not found, have you linked your project with `vc link?`");let n=JSON.parse(h.readFileSync(t,`utf8`));if(typeof n.projectId!=`string`&&typeof n.orgId!=`string`)throw TypeError("Expected a string-valued projectId property. Try running `vc link` to re-link your project.");return{projectId:n.projectId,teamId:n.orgId}}function E(e,t){let n=(0,_.getUserDataDir)();if(!n)throw new g.VercelOidcTokenError(`Unable to find user data directory. Please reach out to Vercel support.`);let r=m.join(n,`com.vercel.token`,`${t}.json`),i=JSON.stringify(e);h.mkdirSync(m.dirname(r),{mode:504,recursive:!0}),h.writeFileSync(r,i),h.chmodSync(r,432)}function D(e){let t=(0,_.getUserDataDir)();if(!t)throw new g.VercelOidcTokenError(`Unable to find user data directory. Please reach out to Vercel support.`);let n=m.join(t,`com.vercel.token`,`${e}.json`);if(!h.existsSync(n))return null;let r=JSON.parse(h.readFileSync(n,`utf8`));return w(r),r}function O(e){let t=e.split(`.`);if(t.length!==3)throw new g.VercelOidcTokenError("Invalid token. Please run `vc env pull` and try again");let n=t[1].replace(/-/g,`+`).replace(/_/g,`/`),r=n.padEnd(n.length+(4-n.length%4)%4,`=`);return JSON.parse(Buffer.from(r,`base64`).toString(`utf8`))}function k(e,t=0){return e.exp*1e3<Date.now()+t}0&&(n.exports={assertVercelOidcTokenResponse:w,findProjectInfo:T,getTokenPayload:O,getVercelDataDir:x,getVercelOidcToken:C,getVercelToken:S,isExpired:k,loadToken:D,saveToken:E})})),hc=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{AccessTokenMissingError:()=>f.AccessTokenMissingError,RefreshAccessTokenFailedError:()=>f.RefreshAccessTokenFailedError,getContext:()=>d.getContext,getVercelOidcToken:()=>u.getVercelOidcToken,getVercelOidcTokenSync:()=>u.getVercelOidcTokenSync,getVercelToken:()=>p.getVercelToken}),t.exports=c(l);var u=lc(),d=sc(),f=uc(),p=mc();0&&(t.exports={AccessTokenMissingError,RefreshAccessTokenFailedError,getContext,getVercelOidcToken,getVercelOidcTokenSync,getVercelToken})}))();let gc;function _c(e){return e?.dispatcher??vc()}function vc(){return gc||=new hs.RetryAgent(new hs.Agent({connections:8,keepAliveTimeout:1e4,allowH2:!1,pipelining:1}),{retryAfter:!0}),gc}async function yc(e,t,n){if(e.length!==32)throw Error(`Invalid deployment key length: expected 32 bytes for AES-256, got ${e.length} bytes`);if(!t||typeof t!=`string`)throw Error(`projectId must be a non-empty string`);let r=await Hn.subtle.importKey(`raw`,e,`HKDF`,!1,[`deriveBits`]),i=new TextEncoder().encode(`${t}|${n}`),a=await Hn.subtle.deriveBits({name:`HKDF`,hash:`SHA-256`,salt:new Uint8Array(32),info:i},r,256);return new Uint8Array(a)}async function bc(e,t,n,r){let i=r?.token??process.env.VERCEL_TOKEN??await(0,hc.getVercelOidcToken)().catch(()=>null);if(!i)throw Error(`Cannot fetch run key: no OIDC token or VERCEL_TOKEN available`);let a=new URLSearchParams({projectId:t,runId:n});r?.teamId&&a.set(`teamId`,r.teamId);let o=await fetch(`https://api.vercel.com/v1/workflow/run-key/${e}?${a}`,{method:`GET`,headers:{Authorization:`Bearer ${i}`},dispatcher:_c({dispatcher:r?.dispatcher})});if(!o.ok){let t;try{t=await o.text()}catch{t=`<unable to read response body>`}throw Error(`Failed to fetch run key for ${n} (deployment ${e}): HTTP ${o.status} ${o.statusText}${t?` — ${t}`:``}`)}let s=await o.json(),c=nn({key:ft().nullable()}).safeParse(s);if(!c.success)throw Error(`Invalid response from Vercel API: expected { key: string | null }. Zod error: ${c.error.message}`);if(c.data.key!==null)return Buffer.from(c.data.key,`base64`)}function xc(e,t,n,r){if(!e)return;let i=process.env.VERCEL===`1`,a;function o(){if(a)return a;let e=process.env.VERCEL_DEPLOYMENT_KEY;if(e)return a=Buffer.from(e,`base64`),a}return async function(a,s){let c=typeof a==`string`?a:a.runId,l=typeof a==`string`?s?.deploymentId:a.deploymentId;if(i&&(!l||l===process.env.VERCEL_DEPLOYMENT_ID)){let t=o();return t?yc(t,e,c):void 0}if(l)return bc(l,e,c,{token:n,teamId:t,dispatcher:r})}}let Sc=null;async function Cc(){return Sc||=import(`../../_chunks/workflow/src-CQuMexnO.js`).then(t=>e(t.t(),1)).catch(()=>null),Sc}let wc=null;async function Tc(){return wc||=Cc().then(e=>e?e.trace.getTracer(`workflow`):null),wc}async function Ec(e,...t){let[n,r]=await Promise.all([Tc(),Cc()]),{fn:i,opts:a}=typeof t[0]==`function`?{fn:t[0],opts:{}}:{fn:t[1],opts:t[0]};if(!i)throw Error(`Function to trace must be provided`);return!n||!r?await i():n.startActiveSpan(e,a,async e=>{try{let t=await i(e);return e.setStatus({code:r.SpanStatusCode.OK}),t}catch(t){throw e.setStatus({code:r.SpanStatusCode.ERROR,message:t.message}),t}finally{e.end()}})}async function Dc(e){let t=await Cc();if(t)return t.SpanKind[e]}async function Oc(e){let t=await Cc();if(!t)return;let n={};t.propagation.inject(t.context.active(),n);for(let[t,r]of Object.entries(n))e.set(t,r)}function kc(...e){return t=>Object.fromEntries(e.map(e=>[e,t]))}const Ac=kc(`http.request.method`),jc=kc(`url.full`),Mc=kc(`server.address`),Nc=kc(`server.port`),Pc=kc(`http.response.status_code`),Fc=kc(`error.type`),Ic=kc(`workflow.world.parse.format`),Lc=kc(`peer.service`),Rc=kc(`rpc.system`),zc=kc(`rpc.service`),Bc=kc(`rpc.method`),Vc=kc(`workflow.run.id`),Hc=kc(`step.id`),Uc={peerService:`workflow-server`,rpcSystem:`http`,rpcService:`workflow-server`},Wc={"world.runs.get":0,"world.runs.experimentalSetAttributes":0,"world.steps.get":0,"world.events.create":0,"world.events.get":0},Gc=new Set([`world.steps.list`,`world.events.list`,`world.hooks.list`]);function Kc(e){if(e.length>=2&&typeof e[1]==`object`&&e[1]!==null){let t=e[1];if(typeof t.eventType==`string`)return t.eventType}}function qc(e,t){return typeof e[t]==`string`?e[t]:void 0}function Jc(e){if(typeof e!=`object`||!e)return;let t=e.runId;return typeof t==`string`?t:void 0}function Yc(e){if(typeof e!=`object`||!e)return;let t=e;if(typeof t.runId==`string`)return t.runId;for(let e of[`run`,`step`,`hook`,`wait`]){let n=t[e];if(typeof n==`object`&&n){let e=n.runId;if(typeof e==`string`)return e}}}function Xc(e,t,n){let r=`${e}.${t}`,i={},a=Wc[r],o=a===void 0?Gc.has(r)?Jc(n[0]):void 0:qc(n,a);if(o&&Object.assign(i,Vc(o)),r===`world.steps.get`){let e=qc(n,1);e&&Object.assign(i,Hc(e))}return i}function Zc(e,t){let n={};for(let r of Object.keys(t))if(typeof t[r]!=`function`)n[r]=t[r];else{let i=t[r],a=String(r);n[r]=async(...t)=>{let n=`${e}.${a}`;if(e===`world.events`&&a===`create`){let r=Kc(t);r&&(n=`${e}.${a} ${r}`)}return Ec(n,{kind:await Dc(`CLIENT`)},async r=>{r?.setAttributes({...Lc(Uc.peerService),...Rc(Uc.rpcSystem),...zc(Uc.rpcService),...Bc(n),...Xc(e,a,t)});let o=await i(...t),s=Yc(o);return s&&r?.setAttributes(Vc(s)),o})}}return n}var Qc=class extends Error{constructor(e){super(e),this.name=`MultipartParseError`}};function $c(e){let t=new TextEncoder().encode(e);return(e,n=0)=>Buffer.prototype.indexOf.call(e,t,n)}function el(e){let t=new TextEncoder().encode(e),n={};for(let e=0;e<t.length;++e){let r=t[e];n[r]===void 0&&(n[r]=[]),n[r].push(e)}return function(e){let r=e.length-1;if(e[r]in n){let i=n[e[r]];for(let n=i.length-1;n>=0;--n)for(let a=i[n],o=r;a>=0&&e[o]===t[a];--a,--o)if(a===0)return o}return-1}}function tl(e){let t=new TextDecoder(`iso-8859-1`).decode(e).trim().split(/\r?\n/),n=[];for(let e of t){let t=e.indexOf(`:`);if(t>0){let r=e.slice(0,t).trim(),i=e.slice(t+1).trim();n.push([r,i])}}return new Headers(n)}function nl(e){let t=e.match(/boundary=(?:"([^"]+)"|([^;]+))/i);if(!t)throw new Qc(`No boundary found in Content-Type header`);return t[1]??t[2]}var rl=class{queue=[];waiters=[];finished=!1;cancelled=!1;error=null;enqueue(e){this.finished||this.cancelled||(this.waiters.length>0?this.waiters.shift().resolve(e):this.queue.push(e))}finish(e){if(!this.finished)for(this.finished=!0,this.error=e||null;this.waiters.length>0;){let t=this.waiters.shift();e?t.reject(e):t.resolve(null)}}cancel(){if(!(this.cancelled||this.finished))for(this.cancelled=!0;this.waiters.length>0;)this.waiters.shift().resolve(null)}async dequeue(){if(this.queue.length>0)return this.queue.shift();if(this.finished||this.cancelled){if(this.error)throw this.error;return null}return new Promise((e,t)=>{this.waiters.push({resolve:e,reject:t})})}get isTerminal(){return this.finished||this.cancelled}};async function*il(e,t){if(!e.body)throw new Qc(`Response body is null`);let n=e.headers.get(`content-type`);if(!n)throw new Qc(`Missing Content-Type header`);yield*new al(nl(n),t).parseStream(e.body)}var al=class{boundary;findOpeningBoundary;openingBoundaryLength;findBoundary;findPartialTailBoundary;boundaryLength;findDoubleNewline;maxHeaderSize;maxBoundaryBuffer;state=0;buffer=null;currentHeaders=new Headers;currentPayloadController=null;constructor(e,t={}){this.boundary=e,this.findOpeningBoundary=$c(`--${e}`),this.openingBoundaryLength=2+e.length,this.findBoundary=$c(`\r
|
|
100
|
-
--${e}`),this.findPartialTailBoundary=
|
|
101
|
-
--${e}`),this.boundaryLength=4+e.length,this.findDoubleNewline
|
|
98
|
+
`);e.stack=n?`${n}\n${a}`:i.stack}t.exports.fetch=function(e,n=void 0){return M(e,n).catch(e=>{throw N?P(e,N):e&&typeof e==`object`&&Error.captureStackTrace(e,t.exports.fetch),e})},t.exports.Headers=zo().Headers,t.exports.Response=Bo().Response,t.exports.Request=Vo().Request,t.exports.FormData=Na().FormData;let{setGlobalOrigin:F,getGlobalOrigin:I}=Ea();t.exports.setGlobalOrigin=F,t.exports.getGlobalOrigin=I;let{CacheStorage:ee}=Ko(),{kConstruct:L}=la();t.exports.caches=new ee(L);let{deleteCookie:te,getCookies:R,getSetCookies:ne,setCookie:re,parseCookie:z}=Xo();t.exports.deleteCookie=te,t.exports.getCookies=R,t.exports.getSetCookies=ne,t.exports.setCookie=re,t.exports.parseCookie=z;let{parseMIMEType:ie,serializeAMimeType:ae}=ka();t.exports.parseMIMEType=ie,t.exports.serializeAMimeType=ae;let{CloseEvent:oe,ErrorEvent:se,MessageEvent:ce}=Zo(),{WebSocket:B,ping:V}=as();t.exports.WebSocket=B,t.exports.CloseEvent=oe,t.exports.ErrorEvent=se,t.exports.MessageEvent=ce,t.exports.ping=V,t.exports.WebSocketStream=ss().WebSocketStream,t.exports.WebSocketError=os().WebSocketError,t.exports.request=j(g.request),t.exports.stream=j(g.stream),t.exports.pipeline=j(g.pipeline),t.exports.connect=j(g.connect),t.exports.upgrade=j(g.upgrade),t.exports.MockClient=v,t.exports.MockCallHistory=y,t.exports.MockCallHistoryLog=b,t.exports.MockPool=S,t.exports.MockAgent=x,t.exports.SnapshotAgent=C,t.exports.mockErrors=w;let{EventSource:le}=us();t.exports.EventSource=le;function ue(){globalThis.fetch=t.exports.fetch,globalThis.Headers=t.exports.Headers,globalThis.Response=t.exports.Response,globalThis.Request=t.exports.Request,globalThis.FormData=t.exports.FormData,globalThis.WebSocket=t.exports.WebSocket,globalThis.CloseEvent=t.exports.CloseEvent,globalThis.ErrorEvent=t.exports.ErrorEvent,globalThis.MessageEvent=t.exports.MessageEvent,globalThis.EventSource=t.exports.EventSource}t.exports.install=ue})),fs=ca(),ps=ds(),ms=class{contentType=`application/json`;serialize(e){return Buffer.from(JSON.stringify(e,ui))}async deserialize(e){let t=[],n=e.getReader();for(;;){let{done:e,value:r}=await n.read();if(e)break;r&&t.push(r)}let r=Buffer.concat(t).toString();return JSON.parse(r,di)}};const hs=parseInt(process.env.WORKFLOW_LOCAL_QUEUE_MAX_VISIBILITY??`0`,10)||1/0,gs=2147483647,_s=parseInt(process.env.WORKFLOW_LOCAL_QUEUE_CONCURRENCY??`0`,10)||1e3,vs=`Cannot perform ArrayBuffer.prototype.slice on a detached ArrayBuffer`;function ys(e){let t=e,n=new Set;for(;t&&typeof t==`object`&&!n.has(t);){if(n.add(t),`message`in t&&typeof t.message==`string`&&t.message.includes(vs))return!0;t=`cause`in t?t.cause:void 0}return!1}function bs(e){let{kind:t,prefix:n}=F(e);return{pathname:t===`workflow`?`flow`:`step`,prefix:n}}function xs(e){let t=new ps.Agent({headersTimeout:0,connections:1e3,keepAliveTimeout:3e4}),n=new ms,r=R(),i=new fs.Sema(_s),a=new AbortController,o=a.signal,s=new Map,c=new Map,l=async(a,l,u)=>{let d=[];if(u?.idempotencyKey){let e=s.get(u.idempotencyKey);if(e)return{messageId:e}}let f=n.serialize(l),{pathname:p,prefix:m}=bs(a),h=oe.parse(`msg_${r()}`),g=l,_=g.runId??g.workflowRunId??void 0,v=g.stepId??void 0;if(u?.idempotencyKey){let e=u.idempotencyKey;s.set(e,h),d.push(()=>{s.delete(e)})}return(async()=>{u?.delaySeconds&&u.delaySeconds>0&&await cr(Math.min(u.delaySeconds*1e3,gs),void 0,{signal:o}),i.tryAcquire()||(console.warn(`[world-local]: concurrency limit (${_s}) reached, waiting for queue to free up`),await i.acquire());let n=0;try{for(let r=0;r<256;r++){let i={...u?.headers,"content-type":`application/json`,"x-vqs-queue-name":a,"x-vqs-message-id":h,"x-vqs-message-attempt":String(n+1)},s=c.get(m),l;try{if(s)l=await s(new Request(`http://localhost/.well-known/workflow/v1/${p}`,{method:`POST`,headers:i,body:f}));else{let n=await Gr(e);l=await fetch(`${n}/.well-known/workflow/v1/${p}`,{method:`POST`,duplex:`half`,dispatcher:t,headers:i,body:f})}}catch(e){let t=e?.name;if(o.aborted||t===`AbortError`||t===`ResponseAborted`)return;if(ys(e))throw e;console.error(`[world-local] Queue delivery failed at the transport (loop ${r+1}), retrying`,{queueName:a,messageId:h,..._&&{runId:_},...v&&{stepId:v},error:String(e)}),await cr(5e3,void 0,{signal:o});continue}n++;let d=await l.text();if(l.ok){try{let e=Number(JSON.parse(d).timeoutSeconds);if(Number.isFinite(e)&&e>=0){e>0&&await cr(Math.min(e*1e3,gs),void 0,{signal:o});continue}}catch{}return}console.error(`[world-local] Queue message failed (attempt ${n}, HTTP ${l.status})`,{queueName:a,messageId:h,..._&&{runId:_},...v&&{stepId:v},handlerError:d}),await cr(5e3,void 0,{signal:o})}console.error(`[world-local] Queue message exhausted safety limit (256 attempts)`,{queueName:a,messageId:h,..._&&{runId:_},...v&&{stepId:v}})}finally{i.release()}})().catch(e=>{e?.name===`AbortError`||e?.name===`ResponseAborted`||(ys(e)?console.error(`[local world] Queue operation failed: detected "${vs}". This usually means a Next.js proxy/middleware consumed Workflow's internal request before the executor could read it. Exclude \`/.well-known/workflow/*\` from your matcher. See https://workflow-sdk.dev/docs/getting-started/next#configure-proxy-handler`,{queueName:a,messageId:h,..._&&{runId:_},...v&&{stepId:v},originalError:e}):console.error(`[local world] Queue operation failed:`,e))}).finally(()=>{for(let e of d)e()}),{messageId:h}},u=en({"x-vqs-queue-name":be,"x-vqs-message-id":oe,"x-vqs-message-attempt":rt()});return{queue:l,createQueueHandler:(e,t)=>async n=>{let r=u.safeParse(Object.fromEntries(n.headers));if(!r.success||!n.body)return Response.json({error:n.body?`Missing required headers`:`Missing request body`},{status:400});let i=r.data[`x-vqs-queue-name`],a=r.data[`x-vqs-message-id`],o=r.data[`x-vqs-message-attempt`];if(!i.startsWith(e))return Response.json({error:`Unhandled queue`},{status:400});let s=await new ms().deserialize(n.body);try{let e=await t(s,{attempt:o,queueName:i,messageId:a}),n=null;return typeof e?.timeoutSeconds==`number`&&(n=Math.min(e.timeoutSeconds,hs)),n==null?Response.json({ok:!0}):Response.json({timeoutSeconds:n})}catch(e){return Response.json(String(e),{status:500})}},getDeploymentId:async()=>`dpl_local@${(await Ei()).version}`,registerHandler(e,t){c.set(e,t)},async close(){o.aborted||(a.abort(),await t.close())}}}function Ss(e){return Hn(`sha256`).update(e).digest(`hex`)}function Cs(e,t,n,r){let i=Hn(`sha256`).update(`${t}\x00${n}\x00${r}`).digest(`hex`);return G.join(e,`hooks`,`tokens`,`${i}.recovery.json`)}const ws=R(()=>Math.random()),Ts=e=>t=>{let n=ni(t.replace(/\.json$/,``))+`.json`,r=RegExp(`^${e}_`,`g`),i=n.indexOf(`-`);return i===-1?pn(n.replace(/\.json$/,``).replace(r,``)):e===`step`?null:pn(n.substring(i+1).replace(/\.json$/,``).replace(r,``))};function Es(e,t){return t===`none`?{...e,input:void 0,output:void 0}:e}function Ds(e,t){return t===`none`?{...e,input:void 0,output:void 0}:e}function Os(e,t){if(t===`none`){let{metadata:t,...n}=e;return n}return e}function ks(e,t){async function n(t){let n=G.join(e,`hooks`),r=await yi(n);for(let e of r){let r=await mi(G.join(n,`${e}.json`),ue);if(r&&r.token===t)return{...r,isWebhook:r.isWebhook??!0}}return null}async function r(n,r){Yr(`hookId`,n);let i=await oi(e,`hooks`,n,ue,t);if(!i)throw new S(n);let a=r?.resolveData||`all`;return Os({...i,isWebhook:i.isWebhook??!0},a)}async function i(e){let t=await n(e);if(!t)throw new S(e);return t}async function a(t){let n=G.join(e,`hooks`),r=t.resolveData||`all`,i=await Ci({directory:n,schema:ue,sortOrder:t.pagination?.sortOrder??`asc`,limit:t.pagination?.limit,cursor:t.pagination?.cursor,filePrefix:void 0,filter:e=>!(t.runId&&e.runId!==t.runId),getCreatedAt:()=>null,getId:e=>e.hookId});return{...i,data:i.data.map(e=>Os(e,r))}}return{get:r,getByToken:i,list:a}}async function As(e,t){let n=G.join(e,`hooks`),r=await yi(n);for(let i of r){let r=G.join(n,`${i}.json`),a=await mi(r,ue);a&&a.runId===t&&(await _i(G.join(n,`tokens`,`${Ss(a.token)}.json`)),await _i(Cs(e,a.token,a.runId,a.hookId)),await _i(r))}}async function js(e,t,n,r,i){Yr(`runId`,t);let a=i?.resolveData??`all`;switch(n.eventType){case`run_cancelled`:{let n=new Date,i={runId:r.runId,deploymentId:r.deploymentId,workflowName:r.workflowName,specVersion:r.specVersion,executionContext:r.executionContext,input:r.input,createdAt:r.createdAt,expiredAt:r.expiredAt,startedAt:r.startedAt,status:`cancelled`,output:void 0,error:void 0,completedAt:n,updatedAt:n,attributes:r.attributes};return await fi(Xr(e,`runs`,`${t}.json`),i,{overwrite:!0}),await As(e,t),{event:void 0,run:Es(i,a)}}case`wait_completed`:case`hook_received`:{let r=`evnt_${ws()}`,i=new Date,o={...n,runId:t,eventId:r,createdAt:i,specVersion:5};return await fi(Xr(e,`events`,`${`${t}-${r}`}.json`),o),{event:B(o,a)}}default:throw Error(`Event type '${n.eventType}' not supported for legacy runs (specVersion: ${r.specVersion||`undefined`}). Please upgrade 'workflow' package.`)}}const Ms=new Map;function Ns(e,t){let n=Ms.get(e),r={},i=(async()=>{n&&await n.catch(()=>void 0);try{return await t()}finally{Ms.get(e)===r.task&&Ms.delete(e)}})();return r.task=i,Ms.set(e,i),i}function Ps(e,t){return{get:(async(n,r)=>{Yr(`runId`,n);let i=await oi(e,`runs`,n,Te,t);if(!i)throw new d(n);return Es(i,r?.resolveData??`all`)}),list:(async t=>{let n=t?.resolveData??`all`,r=await Ci({directory:G.join(e,`runs`),schema:Te,fileIdFilter:t?.fileIdFilter,filter:e=>!(t?.workflowName&&e.workflowName!==t.workflowName||t?.status&&e.status!==t.status),sortOrder:t?.pagination?.sortOrder??`desc`,limit:t?.pagination?.limit,cursor:t?.pagination?.cursor,getCreatedAt:Ts(`wrun`),getId:e=>e.runId});return n===`none`?{...r,data:r.data.map(e=>({...e,input:void 0,output:void 0}))}:r}),experimentalSetAttributes:async(n,r,i)=>(Yr(`runId`,n),Ns(n,async()=>{let a=await oi(e,`runs`,n,Te,t);if(!a)throw new d(n);try{et(r,{existingKeys:Object.keys(a.attributes??{}),allowReservedAttributes:i?.allowReservedAttributes})}catch(e){throw e instanceof Zt,e}let o=he(a.attributes,r),s={...a,attributes:o,updatedAt:new Date};return await fi(ai(e,`runs`,n,t),s,{overwrite:!0}),{attributes:o}}))}}const Fs=en({hookId:ut().optional(),runId:ut(),eventId:ut().optional()}),Is=en({eventId:ut()});async function Ls(e){try{return await mi(e,Fs)}catch(e){if(e instanceof SyntaxError||e instanceof nn)return null;throw e}}async function Rs(e){try{return await mi(e,Is)}catch(e){if(e instanceof SyntaxError||e instanceof nn)return null;throw e}}async function zs(e,t,n){return(await Ci({directory:G.join(e,`events`),schema:He,filePrefix:`${t}-`,filter:e=>e.eventType===`hook_created`&&e.correlationId===n,limit:1,getCreatedAt:Ts(`evnt`),getId:e=>e.eventId})).data[0]?.eventId??null}async function Bs(e,t,n,r,i){let a=await oi(e,`events`,`${t}-${r}`,He,i);if(!a||a.eventType!==`hook_created`||a.correlationId!==n||await oi(e,`hooks`,n,ue,i))return;let o=a.eventData??{};if(typeof o.token!=`string`)return;let s={runId:t,hookId:n,token:o.token,metadata:o.metadata,ownerId:`local-owner`,projectId:`local-project`,environment:`local`,createdAt:a.createdAt,specVersion:a.specVersion,isWebhook:o.isWebhook??!1,isSystem:o.isSystem??!1};await vi(ai(e,`hooks`,n,i),JSON.stringify(s,ui,2))}async function Vs(e,t,n,r,i){let a=Cs(e,t,n,r);return await vi(a,JSON.stringify({eventId:i}))?i:(await Rs(a))?.eventId??null}function Hs(e,t,n){let r=e.get(t),i={},a=(async()=>{r&&await r.catch(()=>void 0);try{return await n()}finally{e.get(t)===i.task&&e.delete(t)}})();return i.task=a,e.set(t,a),a}async function Us(e,t){let n=G.join(e,`waits`),r=await yi(n);for(let e of r)e.startsWith(`${t}-`)&&await _i(G.join(n,`${e}.json`))}async function Ws(e,t,n,r){return Ns(t,async()=>{let i=await mi(ai(e,`runs`,t,n),Te),a={...r,attributes:i?.attributes??r.attributes};return await fi(ai(e,`runs`,t,n),a,{overwrite:!0}),a})}function Gs(e,t){let n=new Map,r=new Map;return{async create(i,a,o){if(i!=null&&i!==``&&Yr(`runId`,i),`correlationId`in a&&typeof a.correlationId==`string`&&Yr(`correlationId`,a.correlationId),(a.eventType===`step_created`||a.eventType===`step_started`||a.eventType===`step_completed`||a.eventType===`step_failed`||a.eventType===`step_retrying`)&&i&&a.correlationId)return Hs(n,t?`${i}-${a.correlationId}.${t}`:`${i}-${a.correlationId}`,()=>s());if(a.eventType===`hook_created`&&i&&a.correlationId)return Hs(r,t?`${i}-${a.correlationId}.hook.${t}`:`${i}-${a.correlationId}.hook`,()=>s());return s();async function s(){let n=`evnt_${ws()}`,r=new Date,s;if(a.eventType===`run_created`&&(!i||i===``))s=`wrun_${ws()}`;else if(i)s=i;else throw Error(`runId is required for non-run_created events`);if(a.eventType===`run_created`&&i&&i!==``){let e=ze(s,`wrun_`);if(e)throw new p(e)}let c=a.specVersion??5,l=e=>[`completed`,`failed`,`cancelled`].includes(e),u=e=>[`completed`,`failed`,`cancelled`].includes(e),f=null;if(a.eventType!==`run_created`&&![`step_completed`,`step_retrying`].includes(a.eventType)&&(f=await oi(e,`runs`,s,Te,t),a.eventType===`run_started`&&!f&&`eventData`in a&&a.eventData)){let n=a.eventData;if(n.deploymentId&&n.workflowName&&n.input!==void 0){et(Object.entries(n.attributes??{}).map(([e,t])=>({key:e,value:t})),{allowReservedAttributes:n.allowReservedAttributes===!0});let i={runId:s,deploymentId:n.deploymentId,status:`pending`,workflowName:n.workflowName,specVersion:c,executionContext:n.executionContext,input:n.input,output:void 0,error:void 0,startedAt:void 0,completedAt:void 0,attributes:n.attributes??{},createdAt:r,updatedAt:r};if(await vi(ai(e,`runs`,s,t),JSON.stringify(i,ui))){let a=`evnt_${ws()}`,o={eventType:`run_created`,runId:s,eventId:a,createdAt:r,specVersion:c,eventData:{deploymentId:n.deploymentId,workflowName:n.workflowName,input:n.input,executionContext:n.executionContext,attributes:n.attributes,allowReservedAttributes:n.allowReservedAttributes}};await fi(ai(e,`events`,`${s}-${a}`,t),o),f=i}else f=await oi(e,`runs`,s,Te,t)}}if(a.eventType===`run_failed`&&!f||a.eventType===`attr_set`&&!f)throw new d(s);if(f){if(M(f.specVersion))throw new E(f.specVersion,5);if(Lt(f.specVersion))return js(e,s,a,f,o)}let m=a.eventType===`step_started`&&`eventData`in a&&!!a.eventData&&typeof a.eventData.stepName==`string`&&a.eventData.input!==void 0;if(f&&l(f.status)){let i=[`run_started`,`run_completed`,`run_failed`];if(a.eventType===`run_cancelled`&&f.status===`cancelled`){let i={...a,runId:s,eventId:n,createdAt:r,specVersion:c};return await fi(ai(e,`events`,`${s}-${n}`,t),i),{event:B(i,o?.resolveData??`all`),run:f}}if(a.eventType===`run_started`)throw new y(`Workflow run "${s}" is already in terminal state "${f.status}"`);if(i.includes(a.eventType)||a.eventType===`run_cancelled`)throw new C(`Cannot transition run from terminal state "${f.status}"`);if(a.eventType===`step_created`||a.eventType===`hook_created`||a.eventType===`wait_created`||m)throw new C(`Cannot create new entities on run in terminal state "${f.status}"`);if(a.eventType===`attr_set`)throw new C(`Cannot set attributes on run in terminal state "${f.status}"`)}let h=null;if([`step_started`,`step_completed`,`step_failed`,`step_retrying`].includes(a.eventType)&&a.correlationId){if(h=await oi(e,`steps`,`${s}-${a.correlationId}`,Oe,t),!h&&!m)throw new p(`Step "${a.correlationId}" not found`);if(m&&h)throw new C(`Step "${a.correlationId}" already created`);if(h){if(u(h.status))throw new C(`Cannot modify step in terminal state "${h.status}"`);if(f&&l(f.status)&&h.status!==`running`)throw new y(`Cannot modify non-running step on run in terminal state "${f.status}"`)}}if([`hook_disposed`,`hook_received`].includes(a.eventType)&&a.correlationId&&!await oi(e,`hooks`,a.correlationId,ue,t))throw new S(a.correlationId);let g={...a,runId:s,eventId:n,createdAt:r,specVersion:c};if(a.eventType===`run_started`&&`eventData`in g&&delete g.eventData,m&&`eventData`in g&&g.eventData){let{input:e,...t}=g.eventData;g.eventData=t}let v,b,x,w,T=!1,D;if(a.eventType===`run_created`&&`eventData`in a){let n=a.eventData;if(et(Object.entries(n.attributes??{}).map(([e,t])=>({key:e,value:t})),{allowReservedAttributes:n.allowReservedAttributes===!0}),v={runId:s,deploymentId:n.deploymentId,status:`pending`,workflowName:n.workflowName,specVersion:c,executionContext:n.executionContext,input:n.input,output:void 0,error:void 0,startedAt:void 0,completedAt:void 0,attributes:n.attributes??{},createdAt:r,updatedAt:r},!await vi(ai(e,`runs`,s,t),JSON.stringify(v,ui,2)))throw new C(`Workflow run "${s}" already exists`)}else if(a.eventType===`run_started`){if(f){if(f.status===`running`)return{run:f};v=await Ws(e,s,t,{runId:f.runId,deploymentId:f.deploymentId,workflowName:f.workflowName,specVersion:f.specVersion,executionContext:f.executionContext,input:f.input,createdAt:f.createdAt,expiredAt:f.expiredAt,status:`running`,output:void 0,error:void 0,completedAt:void 0,startedAt:f.startedAt??r,updatedAt:r,attributes:f.attributes})}}else if(a.eventType===`run_completed`&&`eventData`in a){let n=a.eventData;f&&(v=await Ws(e,s,t,{runId:f.runId,deploymentId:f.deploymentId,workflowName:f.workflowName,specVersion:f.specVersion,executionContext:f.executionContext,input:f.input,createdAt:f.createdAt,expiredAt:f.expiredAt,startedAt:f.startedAt,status:`completed`,output:n.output,error:void 0,completedAt:r,updatedAt:r,attributes:f.attributes}),await Promise.all([As(e,s),Us(e,s)]))}else if(a.eventType===`run_failed`&&`eventData`in a){let n=a.eventData;f&&(v=await Ws(e,s,t,{runId:f.runId,deploymentId:f.deploymentId,workflowName:f.workflowName,specVersion:f.specVersion,executionContext:f.executionContext,input:f.input,createdAt:f.createdAt,expiredAt:f.expiredAt,startedAt:f.startedAt,status:`failed`,output:void 0,error:n.error,errorCode:n.errorCode,completedAt:r,updatedAt:r,attributes:f.attributes}),await Promise.all([As(e,s),Us(e,s)]))}else if(a.eventType===`run_cancelled`)f&&(v=await Ws(e,s,t,{runId:f.runId,deploymentId:f.deploymentId,workflowName:f.workflowName,specVersion:f.specVersion,executionContext:f.executionContext,input:f.input,createdAt:f.createdAt,expiredAt:f.expiredAt,startedAt:f.startedAt,status:`cancelled`,output:void 0,error:void 0,completedAt:r,updatedAt:r,attributes:f.attributes}),await Promise.all([As(e,s),Us(e,s)]));else if(a.eventType===`attr_set`&&f)v=await Ns(s,async()=>{let n=await mi(ai(e,`runs`,s,t),Te);if(!n)throw new d(s);if(et(a.eventData.changes,{existingKeys:Object.keys(n.attributes),allowReservedAttributes:a.eventData.allowReservedAttributes===!0}),a.correlationId&&a.eventData.writer.type===`workflow`&&!await vi(Xr(e,`.locks`,`attributes`,t?`${s}-${a.correlationId}.created.${t}`:`${s}-${a.correlationId}.created`),``))throw new C(`Attribute event "${a.correlationId}" already exists`);let i={...n,attributes:he(n.attributes,a.eventData.changes),updatedAt:r};return await fi(ai(e,`runs`,s,t),i,{overwrite:!0}),i});else if(a.eventType===`step_created`&&`eventData`in a){if(!await vi(Xr(e,`.locks`,`steps`,t?`${s}-${a.correlationId}.created.${t}`:`${s}-${a.correlationId}.created`),``))throw new C(`Step "${a.correlationId}" already created`);let n=a.eventData;b={runId:s,stepId:a.correlationId,stepName:n.stepName,status:`pending`,input:n.input,output:void 0,error:void 0,attempt:0,startedAt:void 0,completedAt:void 0,createdAt:r,updatedAt:r,specVersion:c},await fi(ai(e,`steps`,`${s}-${a.correlationId}`,t),b)}else if(a.eventType===`step_started`){if(!h&&m){let n=a.eventData;if(await vi(Xr(e,`.locks`,`steps`,t?`${s}-${a.correlationId}.created.${t}`:`${s}-${a.correlationId}.created`),``)){let i={runId:s,stepId:a.correlationId,stepName:n.stepName,status:`pending`,input:n.input,output:void 0,error:void 0,attempt:0,startedAt:void 0,completedAt:void 0,createdAt:r,updatedAt:r,specVersion:c};await fi(ai(e,`steps`,`${s}-${a.correlationId}`,t),i);let o=`evnt_${ws()}`,l={eventType:`step_created`,runId:s,eventId:o,createdAt:r,specVersion:c,correlationId:a.correlationId,eventData:{stepName:n.stepName,input:n.input}};await fi(ai(e,`events`,`${s}-${o}`,t),l),h=i,T=!0}else throw new C(`Step "${a.correlationId}" already created`)}if(h){if(h.retryAfter&&h.retryAfter.getTime()>Date.now())throw new _(`Cannot start step "${a.correlationId}": retryAfter timestamp has not been reached yet`,{retryAfter:Math.ceil((h.retryAfter.getTime()-Date.now())/1e3)});let n=`${s}-${a.correlationId}`,i=await oi(e,`steps`,n,Oe,t);if(i&&u(i.status))throw new C(`Cannot modify step in terminal state "${i.status}"`);b={...h,status:`running`,startedAt:h.startedAt??r,attempt:h.attempt+1,retryAfter:void 0,updatedAt:r},await fi(ai(e,`steps`,n,t),b,{overwrite:!0})}}else if(a.eventType===`step_completed`&&`eventData`in a){let n=a.eventData;if(h){let i=`${s}-${a.correlationId}`;if(!await vi(Xr(e,`.locks`,`steps`,t?`${i}.terminal.${t}`:`${i}.terminal`),``))throw new C(`Cannot modify step in terminal state`);b={...h,status:`completed`,output:n.result,completedAt:r,updatedAt:r},await fi(ai(e,`steps`,i,t),b,{overwrite:!0})}}else if(a.eventType===`step_failed`&&`eventData`in a){let n=a.eventData;if(h){let i=`${s}-${a.correlationId}`;if(!await vi(Xr(e,`.locks`,`steps`,t?`${i}.terminal.${t}`:`${i}.terminal`),``))throw new C(`Cannot modify step in terminal state`);b={...h,status:`failed`,error:n.error,completedAt:r,updatedAt:r},await fi(ai(e,`steps`,i,t),b,{overwrite:!0})}}else if(a.eventType===`step_retrying`&&`eventData`in a){let n=a.eventData;if(h){let i=`${s}-${a.correlationId}`;b={...h,status:`pending`,error:n.error,retryAfter:n.retryAfter,updatedAt:r},await fi(ai(e,`steps`,i,t),b,{overwrite:!0})}}else if(a.eventType===`hook_created`&&`eventData`in a){let i=a.eventData,l=G.join(e,`hooks`,`tokens`,`${Ss(i.token)}.json`),u=await vi(l,JSON.stringify({token:i.token,hookId:a.correlationId,runId:s,eventId:n})),d=!1;if(!u){let u=await Ls(l);if(u?.runId===s&&u.hookId===a.correlationId){let o;if(u.eventId)o=u.eventId;else{let r=await zs(e,s,a.correlationId);if(r!==null)throw await Bs(e,s,a.correlationId,r,t),new C(`Hook "${a.correlationId}" already created`);let c=await Vs(e,i.token,s,a.correlationId,n);if(c===null)throw new C(`Hook "${a.correlationId}" already created`);o=c}n=o;let l=pn(n.replace(/^evnt_/,``))??r;g={...a,runId:s,eventId:n,createdAt:l,specVersion:c},d=!0}else{let l={eventType:`hook_conflict`,correlationId:a.correlationId,eventData:{token:i.token,...u?{conflictingRunId:u.runId}:{}},runId:s,eventId:n,createdAt:r,specVersion:c};return await fi(ai(e,`events`,`${s}-${n}`,t),l),{event:B(l,o?.resolveData??`all`),run:v,step:b,hook:void 0}}}x={runId:s,hookId:a.correlationId,token:i.token,metadata:i.metadata,ownerId:`local-owner`,projectId:`local-project`,environment:`local`,createdAt:g.createdAt,specVersion:c,isWebhook:i.isWebhook??!1,isSystem:i.isSystem??!1},D=d?{overwrite:!0}:void 0}else if(a.eventType===`hook_disposed`){if(!await vi(Xr(e,`.locks`,`hooks`,t?`${a.correlationId}.disposed.${t}`:`${a.correlationId}.disposed`),``))throw new C(`Hook "${a.correlationId}" already disposed`);let n=ai(e,`hooks`,a.correlationId,t),r=await oi(e,`hooks`,a.correlationId,ue,t);r&&(await _i(G.join(e,`hooks`,`tokens`,`${Ss(r.token)}.json`)),await _i(Cs(e,r.token,r.runId,r.hookId))),await _i(n)}else if(a.eventType===`wait_created`&&`eventData`in a){let n=`${s}-${a.correlationId}`;if(!await vi(Xr(e,`.locks`,`waits`,t?`${n}.created.${t}`:`${n}.created`),``))throw new C(`Wait "${a.correlationId}" already exists`);let i=a.eventData;w={waitId:n,runId:s,status:`waiting`,resumeAt:i.resumeAt,completedAt:void 0,createdAt:r,updatedAt:r,specVersion:c},await fi(ai(e,`waits`,n,t),w)}else if(a.eventType===`wait_completed`){let n=`${s}-${a.correlationId}`,i=Xr(e,`.locks`,`waits`,t?`${n}.completed.${t}`:`${n}.completed`);if(!await vi(i,``))throw new C(`Wait "${a.correlationId}" already completed`);let o=await oi(e,`waits`,n,ee,t);if(!o)throw await Zn.unlink(i).catch(()=>{}),new p(`Wait "${a.correlationId}" not found`);w={...o,status:`completed`,completedAt:r,updatedAt:r},await fi(ai(e,`waits`,n,t),w,{overwrite:!0})}if(!await vi(ai(e,`events`,`${s}-${n}`,t),JSON.stringify(g,ui,2)))throw a.eventType===`hook_created`&&a.correlationId&&await Bs(e,s,a.correlationId,n,t),new C(`Event "${n}" already exists for run "${s}"`);x&&a.eventType===`hook_created`&&await fi(ai(e,`hooks`,x.hookId,t),x,D);let O=o?.resolveData??`all`,k=B(g,O),A,j,N;if(a.eventType===`run_started`&&v){let t=await Ci({directory:G.join(e,`events`),schema:He,filePrefix:`${s}-`,sortOrder:`asc`,limit:1e3,getCreatedAt:Ts(`evnt`),getId:e=>e.eventId});A=t.data,j=t.cursor,N=t.hasMore}if((a.eventType===`step_completed`||a.eventType===`step_failed`)&&typeof o?.sinceCursor==`string`){let t=await Ci({directory:G.join(e,`events`),schema:He,filePrefix:`${s}-`,sortOrder:`asc`,cursor:o.sinceCursor,getCreatedAt:Ts(`evnt`),getId:e=>e.eventId});A=O===`none`?t.data.map(e=>B(e,O)):t.data,j=t.cursor,N=t.hasMore}return{event:k,run:v,step:b,hook:x,wait:w,events:A,cursor:j,hasMore:N,...T?{stepCreated:!0}:{}}}},async get(n,r,i){Yr(`runId`,n),Yr(`eventId`,r);let a=await oi(e,`events`,`${n}-${r}`,He,t);if(!a)throw Error(`Event ${r} in run ${n} not found`);return B(a,i?.resolveData??`all`)},async list(t){let{runId:n}=t;Yr(`runId`,n);let r=t.resolveData??`all`,i=await Ci({directory:G.join(e,`events`),schema:He,filePrefix:`${n}-`,sortOrder:t.pagination?.sortOrder??`asc`,limit:t.pagination?.limit,cursor:t.pagination?.cursor,getCreatedAt:Ts(`evnt`),getId:e=>e.eventId});return r===`none`?{...i,data:i.data.map(e=>B(e,r))}:i},async listByCorrelationId(t){let n=t.correlationId;Yr(`correlationId`,n);let r=t.resolveData??`all`,i=await Ci({directory:G.join(e,`events`),schema:He,filter:e=>e.correlationId===n,sortOrder:t.pagination?.sortOrder??`asc`,limit:t.pagination?.limit,cursor:t.pagination?.cursor,getCreatedAt:Ts(`evnt`),getId:e=>e.eventId});return r===`none`?{...i,data:i.data.map(e=>B(e,r))}:i}}}function Ks(e,t){return{get:(async(n,r,i)=>{Yr(`runId`,n),Yr(`stepId`,r);let a=await oi(e,`steps`,`${n}-${r}`,Oe,t);if(!a)throw Error(`Step ${r} in run ${n} not found`);return Ds(a,i?.resolveData??`all`)}),list:(async t=>{Yr(`runId`,t.runId);let n=t.resolveData??`all`,r=await Ci({directory:G.join(e,`steps`),schema:Oe,filePrefix:`${t.runId}-`,sortOrder:t.pagination?.sortOrder??`desc`,limit:t.pagination?.limit,cursor:t.pagination?.cursor,getCreatedAt:Ts(`step`),getId:e=>e.stepId});return n===`none`?{...r,data:r.data.map(e=>({...e,input:void 0,output:void 0}))}:r})}}function qs(e,t){let n=Ps(e,t),r=Ks(e,t),i=Gs(e,t),a=ks(e,t);return{runs:sa(`world.runs`,n),steps:sa(`world.steps`,r),events:sa(`world.events`,i),hooks:sa(`world.hooks`,a)}}const Js=R(()=>Math.random()),Ys=en({streams:yt(ut())});function Xs(e){return e===1}function Zs(e){let t=Buffer.from([+!!e.eof]);return Buffer.concat([t,e.chunk])}function Qs(e){return Xs(e[0])}function $s(e){return{eof:Qs(e),chunk:Buffer.from(e.subarray(1))}}async function ec(e){try{return await Zn.readdir(e)}catch(e){if(e.code===`ENOENT`)return[];throw e}}function tc(e,t,n,r=n,i=()=>!0){for(let a of t){if(!a.endsWith(n))continue;let t=a.slice(0,-n.length);i(t)&&e.set(t,r)}}async function nc(e,t,n){Yr(`streamName`,t);let r=await ec(e),i=new Map;return tc(i,r,`.json`),tc(i,r,`.bin`,`.bin`,n?e=>!e.endsWith(`.${n}`):void 0),n&&tc(i,r,`.${n}.bin`),{files:[...i.keys()].filter(e=>e.startsWith(`${t}-`)).sort(),extMap:i}}function rc(e,t){let n=t?`.${t}`:``,r=new lr,i=new Set;async function a(n,r){Yr(`runId`,n),Yr(`streamName`,r);let a=`${n}:${r}`;if(i.has(a))return;let o=ai(e,`streams/runs`,n,t),s=(await oi(e,`streams/runs`,n,Ys,t))?.streams??[];s.includes(r)||(s.push(r),await fi(o,{streams:s},{overwrite:!0})),i.add(a)}function o(e){return typeof e==`string`?Buffer.from(new TextEncoder().encode(e)):e instanceof Buffer?e:Buffer.from(e)}return{streams:{async write(t,i,s){let c=`chnk_${Js()}`;await a(await t,i);let l=o(s),u=Zs({chunk:l,eof:!1});await pi(G.join(e,`streams`,`chunks`,`${i}-${c}${n}.bin`),u);let d=Uint8Array.from(l);r.emit(`chunk:${i}`,{streamName:i,chunkData:d,chunkId:c})},async writeMulti(t,i,s){if(s.length===0)return;let c=s.map(()=>`chnk_${Js()}`);await a(await t,i);let l=s.map(e=>o(e)).map(async(t,r)=>{let a=c[r],o=Zs({chunk:t,eof:!1});return await pi(G.join(e,`streams`,`chunks`,`${i}-${a}${n}.bin`),o),{chunkId:a,chunkData:Uint8Array.from(t)}});for(let e of l){let{chunkId:t,chunkData:n}=await e;r.emit(`chunk:${i}`,{streamName:i,chunkData:n,chunkId:t})}},async close(t,i){let o=`chnk_${Js()}`;await a(await t,i),await pi(G.join(e,`streams`,`chunks`,`${i}-${o}${n}.bin`),Zs({chunk:Buffer.from([]),eof:!0})),r.emit(`close:${i}`,{streamName:i})},async list(n){return Yr(`runId`,n),(await oi(e,`streams/runs`,n,Ys,t))?.streams??[]},async getChunks(n,r,i){let a=i?.limit??100,o=G.join(e,`streams`,`chunks`),{files:s,extMap:c}=await nc(o,r,t),l=0;if(i?.cursor)try{l=JSON.parse(Buffer.from(i.cursor,`base64`).toString(`utf-8`)).i}catch{l=0}let u=!1,d=[],f=0;for(let e of s){let t=c.get(e)??`.bin`,n=G.join(o,`${e}${t}`);if(f<l){if(Xs(await gi(n))){u=!0;break}f++;continue}if(d.length>=a){Xs(await gi(n))?u=!0:f++;break}let r=$s(await hi(n));if(r.eof){u=!0;break}d.push({index:f,data:Uint8Array.from(r.chunk)}),f++}let p=!u&&f>l+d.length,m=l+d.length;return{data:d,cursor:p?Buffer.from(JSON.stringify({i:m})).toString(`base64`):null,hasMore:p,done:u}},async getInfo(n,r){let i=G.join(e,`streams`,`chunks`),{files:a,extMap:o}=await nc(i,r,t),s=!1,c=0;for(let e of a){let t=o.get(e)??`.bin`;if(Xs(await gi(G.join(i,`${e}${t}`)))){s=!0;break}c++}return{tailIndex:c-1,done:s}},async get(n,i,a=0){let o=G.join(e,`streams`,`chunks`),s=()=>{},c=null;return new ReadableStream({async start(e){let n=new Set,l=[],u=!0,d=!1,f=!1,p=t=>{if(t.chunkData.byteLength===0){n.add(t.chunkId);return}u?(n.add(t.chunkId),l.push({chunkId:t.chunkId,chunkData:Uint8Array.from(t.chunkData)})):n.has(t.chunkId)||(n.add(t.chunkId),e.enqueue(Uint8Array.from(t.chunkData)))},m=()=>{if(u){d=!0;return}f=!0,r.off(`chunk:${i}`,p),r.off(`close:${i}`,m),c&&=(clearInterval(c),null);try{e.close()}catch{}};s=m,r.on(`chunk:${i}`,p),r.on(`close:${i}`,m);let{files:h,extMap:g}=await nc(o,i,t),_=h.length;if(typeof a==`number`&&a<0&&h.length>0){let e=h[h.length-1],t=g.get(e)??`.bin`;Xs(await gi(G.join(o,`${e}${t}`)))&&_--}let v=typeof a==`number`&&a<0?Math.max(0,_+a):a,y=!1;for(let r=v;r<h.length;r++){let a=h[r],s=a.substring(i.length+1),c=t?s.replace(`.${t}`,``):s;if(n.has(c))continue;let l=g.get(a)??`.bin`,u=$s(await hi(G.join(o,`${a}${l}`)));if(u?.eof===!0){y=!0;break}n.add(c),u.chunk.byteLength&&e.enqueue(Uint8Array.from(u.chunk))}u=!1,l.sort((e,t)=>e.chunkId.localeCompare(t.chunkId));for(let t of l)e.enqueue(Uint8Array.from(t.chunkData));if(y){s();try{e.close()}catch{}return}if(d){r.off(`chunk:${i}`,p),r.off(`close:${i}`,m);try{e.close()}catch{}return}for(let e=0;e<v&&e<h.length;e++){let r=h[e].substring(i.length+1),a=t?r.replace(`.${t}`,``):r;n.add(a)}let b=!1;c=setInterval(async()=>{if(!b){b=!0;try{let{files:a,extMap:s}=await nc(o,i,t);for(let l of a){let a=l.substring(i.length+1),u=t?a.replace(`.${t}`,``):a;if(n.has(u))continue;n.add(u);let d=s.get(l)??`.bin`,h=$s(await hi(G.join(o,`${l}${d}`)));if(h?.eof===!0){f=!0,c&&=(clearInterval(c),null),r.off(`chunk:${i}`,p),r.off(`close:${i}`,m);try{e.close()}catch{}return}if(f)return;h.chunk.byteLength&&e.enqueue(Uint8Array.from(h.chunk))}}catch(e){e instanceof Error&&`code`in e||console.error(`[world-local] Unexpected polling error:`,e)}finally{b=!1}}},100)},cancel(){s(),c&&=(clearInterval(c),null)}})}}}}function ic(e){let t=e?Object.fromEntries(Object.entries(e).filter(([,e])=>e!==void 0)):{},n={...Wr.value,...t},r=n.tag,i=xs(n),a=qs(n.dataDir,r),o=n.recoverActiveRuns??!0;return{specVersion:5,...i,...a,...sa(`world.streams`,{...rc(n.dataDir,r),...n.streamFlushIntervalMs!==void 0&&{streamFlushIntervalMs:n.streamFlushIntervalMs}}),async start(){if(await zi(n.dataDir),!o)return;let e=r?e=>ri(e,r):ii;await je({...a.runs,list:(t=>a.runs.list({...t,fileIdFilter:e}))},i.queue,`world-local`)},async close(){await i.close()},async clear(){if(r){let e=n.dataDir,t=G.join(e,`hooks`),i=await si(t,r),{HookSchema:a}=await import(`../../_chunks/workflow/attribute-changes-zAifvEhb.js`).then(e=>e.Sn);await Promise.all(i.map(async n=>{let r=await mi(G.join(t,n),a);r?.token&&(await _i(G.join(t,`tokens`,`${Ss(r.token)}.json`)),await _i(Cs(e,r.token,r.runId,r.hookId)))})),await Promise.all([`runs`,`steps`,`events`,`hooks`,`waits`,`streams/runs`].map(async t=>{let n=G.join(e,t),i=await si(n,r);await Promise.all(i.map(e=>_i(G.join(n,e))))})),await Xn.rm(G.join(e,`.locks`),{recursive:!0,force:!0}).catch(()=>{});let o=G.join(e,`streams`,`chunks`),s=await ci(o,r,`.bin`);await Promise.all(s.map(e=>Xn.unlink(G.join(o,e)).catch(()=>{}))),ei()}else await ir(n.dataDir,{recursive:!0,force:!0}),await zi(n.dataDir)}}}let ac,oc,sc;const cc={connections:8,keepAliveTimeout:1e4,pipelining:1},lc={...cc,allowH2:!1},uc={...cc,allowH2:!0},dc={retryAfter:!0,statusCodes:[500,502,503,504]},fc={retryAfter:!0,methods:[`PUT`],statusCodes:[429]};function pc(e){return e?.dispatcher??_c()}function mc(e){return e?.dispatcher??vc()}function hc(e){return e?.dispatcher??yc()}function gc(e,t){return new ps.RetryAgent(new ps.Agent(e),t)}function _c(){return ac??=gc(lc,dc),ac}function vc(){return oc??=gc(uc,dc),oc}function yc(){return sc??=gc(uc,fc),sc}var bc=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{SYMBOL_FOR_REQ_CONTEXT:()=>u,getContext:()=>d}),t.exports=c(l);let u=Symbol.for(`@vercel/request-context`);function d(){return globalThis[u]?.get?.()??{}}0&&(t.exports={SYMBOL_FOR_REQ_CONTEXT:u,getContext:d})})),xc=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{VercelOidcTokenError:()=>u}),t.exports=c(l);var u=class extends Error{constructor(e,t){super(e),this.name=`VercelOidcTokenError`,this.cause=t}toString(){return this.cause?`${this.name}: ${this.message}: ${this.cause}`:`${this.name}: ${this.message}`}};0&&(t.exports={VercelOidcTokenError:u})})),Sc=n(((t,n)=>{var r=Object.defineProperty,i=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,s=(e,t)=>{for(var n in t)r(e,n,{get:t[n],enumerable:!0})},c=(e,t,n,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of a(t))!o.call(e,c)&&c!==n&&r(e,c,{get:()=>t[c],enumerable:!(s=i(t,c))||s.enumerable});return e},l=e=>c(r({},`__esModule`,{value:!0}),e),u={};s(u,{getVercelOidcToken:()=>p,getVercelOidcTokenSync:()=>m}),n.exports=l(u);var d=bc(),f=xc();async function p(t){let n=``,r;try{n=m()}catch(e){r=e}try{let[{getTokenPayload:r,isExpired:i},{refreshToken:a}]=await Promise.all([await Promise.resolve().then(()=>e(Dc())),await import(`../../_chunks/workflow/token-J7YP0s9a.js`).then(t=>e(t.default))]);(!n||i(r(n),t?.expirationBufferMs))&&(await a(t),n=m())}catch(e){let t=r instanceof Error?r.message:``;throw e instanceof Error&&(t=`${t}
|
|
99
|
+
${e.message}`),t?new f.VercelOidcTokenError(t):e}return n}function m(){let e=(0,d.getContext)().headers?.[`x-vercel-oidc-token`]??process.env.VERCEL_OIDC_TOKEN;if(!e)throw Error(`The 'x-vercel-oidc-token' header is missing from the request. Do you have the OIDC option enabled in the Vercel project settings?`);return e}0&&(n.exports={getVercelOidcToken:p,getVercelOidcTokenSync:m})})),Cc=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{AccessTokenMissingError:()=>u,RefreshAccessTokenFailedError:()=>d}),t.exports=c(l);var u=class extends Error{constructor(){super(`No authentication found. Please log in with the Vercel CLI (vercel login).`),this.name=`AccessTokenMissingError`}},d=class extends Error{constructor(e){super(`Failed to refresh authentication token.`,{cause:e}),this.name=`RefreshAccessTokenFailedError`}};0&&(t.exports={AccessTokenMissingError:u,RefreshAccessTokenFailedError:d})})),wc=n(((e,n)=>{var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let s of o(t))!c.call(e,s)&&s!==n&&i(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)),f=e=>u(i({},`__esModule`,{value:!0}),e),p={};l(p,{findRootDir:()=>v,getUserDataDir:()=>y}),n.exports=f(p);var m=d(t(`path`)),h=d(t(`fs`)),g=d(t(`os`)),_=xc();function v(){try{let e=process.cwd();for(;e!==m.default.dirname(e);){let t=m.default.join(e,`.vercel`);if(h.default.existsSync(t))return e;e=m.default.dirname(e)}}catch{throw new _.VercelOidcTokenError(`Token refresh only supported in node server environments`)}return null}function y(){if(process.env.XDG_DATA_HOME)return process.env.XDG_DATA_HOME;switch(g.default.platform()){case`darwin`:return m.default.join(g.default.homedir(),`Library/Application Support`);case`linux`:return m.default.join(g.default.homedir(),`.local/share`);case`win32`:return process.env.LOCALAPPDATA?process.env.LOCALAPPDATA:null;default:return null}}0&&(n.exports={findRootDir:v,getUserDataDir:y})})),Tc=n(((e,n)=>{var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let s of o(t))!c.call(e,s)&&s!==n&&i(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)),f=e=>u(i({},`__esModule`,{value:!0}),e),p={};l(p,{isValidAccessToken:()=>b,readAuthConfig:()=>v,writeAuthConfig:()=>y}),n.exports=f(p);var m=d(t(`fs`)),h=d(t(`path`)),g=Dc();function _(){let e=(0,g.getVercelDataDir)();if(!e)throw Error(`Unable to find Vercel CLI data directory. Your platform: ${process.platform}. Supported: darwin, linux, win32.`);return h.join(e,`auth.json`)}function v(){try{let e=_();if(!m.existsSync(e))return null;let t=m.readFileSync(e,`utf8`);return t?JSON.parse(t):null}catch{return null}}function y(e){let t=_(),n=h.dirname(t);m.existsSync(n)||m.mkdirSync(n,{mode:504,recursive:!0}),m.writeFileSync(t,JSON.stringify(e,null,2),{mode:384})}function b(e,t=0){if(!e.token)return!1;if(typeof e.expiresAt!=`number`)return!0;let n=Math.floor(Date.now()/1e3),r=t/1e3;return e.expiresAt>=n+r}0&&(n.exports={isValidAccessToken:b,readAuthConfig:v,writeAuthConfig:y})})),Ec=n(((e,n)=>{var r=Object.defineProperty,i=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,s=(e,t)=>{for(var n in t)r(e,n,{get:t[n],enumerable:!0})},c=(e,t,n,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of a(t))!o.call(e,c)&&c!==n&&r(e,c,{get:()=>t[c],enumerable:!(s=i(t,c))||s.enumerable});return e},l=e=>c(r({},`__esModule`,{value:!0}),e),u={};s(u,{processTokenResponse:()=>g,refreshTokenRequest:()=>h}),n.exports=l(u);var d=t(`os`);let f=`@vercel/oidc node-${process.version} ${(0,d.platform)()} (${(0,d.arch)()}) ${(0,d.hostname)()}`,p=null;async function m(){if(p)return p;let e=await fetch(`https://vercel.com/.well-known/openid-configuration`,{headers:{"user-agent":f}});if(!e.ok)throw Error(`Failed to discover OAuth endpoints`);let t=await e.json();if(!t||typeof t.token_endpoint!=`string`)throw Error(`Invalid OAuth discovery response`);let n=t.token_endpoint;return p=n,n}async function h(e){let t=await m();return await fetch(t,{method:`POST`,headers:{"Content-Type":`application/x-www-form-urlencoded`,"user-agent":f},body:new URLSearchParams({client_id:`cl_HYyOPBNtFMfHhaUn9L4QPfTZz6TP47bp`,grant_type:`refresh_token`,...e})})}async function g(e){let t=await e.json();if(!e.ok){let e=typeof t==`object`&&t&&`error`in t?String(t.error):`Token refresh failed`;return[Error(e)]}return typeof t!=`object`||!t?[Error(`Invalid token response`)]:typeof t.access_token==`string`?t.token_type===`Bearer`?typeof t.expires_in==`number`?[null,t]:[Error(`Missing expires_in in response`)]:[Error(`Invalid token_type in response`)]:[Error(`Missing access_token in response`)]}0&&(n.exports={processTokenResponse:g,refreshTokenRequest:h})})),Dc=n(((e,n)=>{var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let s of o(t))!c.call(e,s)&&s!==n&&i(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)),f=e=>u(i({},`__esModule`,{value:!0}),e),p={};l(p,{assertVercelOidcTokenResponse:()=>w,findProjectInfo:()=>T,getTokenPayload:()=>O,getVercelDataDir:()=>x,getVercelOidcToken:()=>C,getVercelToken:()=>S,isExpired:()=>k,loadToken:()=>D,saveToken:()=>E}),n.exports=f(p);var m=d(t(`path`)),h=d(t(`fs`)),g=xc(),_=wc(),v=Tc(),y=Ec(),b=Cc();function x(){let e=(0,_.getUserDataDir)();return e?m.join(e,`com.vercel.cli`):null}async function S(e){let t=(0,v.readAuthConfig)();if(!t?.token)throw new b.AccessTokenMissingError;if((0,v.isValidAccessToken)(t,e?.expirationBufferMs))return t.token;if(!t.refreshToken)throw(0,v.writeAuthConfig)({}),new b.RefreshAccessTokenFailedError(`No refresh token available`);try{let e=await(0,y.refreshTokenRequest)({refresh_token:t.refreshToken}),[n,r]=await(0,y.processTokenResponse)(e);if(n||!r)throw(0,v.writeAuthConfig)({}),new b.RefreshAccessTokenFailedError(n);let i={token:r.access_token,expiresAt:Math.floor(Date.now()/1e3)+r.expires_in};return r.refresh_token&&(i.refreshToken=r.refresh_token),(0,v.writeAuthConfig)(i),i.token}catch(e){throw(0,v.writeAuthConfig)({}),e instanceof b.AccessTokenMissingError||e instanceof b.RefreshAccessTokenFailedError?e:new b.RefreshAccessTokenFailedError(e)}}async function C(e,t,n){let r=`https://api.vercel.com/v1/projects/${t}/token?source=vercel-oidc-refresh${n?`&teamId=${n}`:``}`,i=await fetch(r,{method:`POST`,headers:{Authorization:`Bearer ${e}`}});if(!i.ok)throw new g.VercelOidcTokenError(`Failed to refresh OIDC token: ${i.statusText}`);let a=await i.json();return w(a),a}function w(e){if(!e||typeof e!=`object`)throw TypeError("Vercel OIDC token is malformed. Expected an object. Please run `vc env pull` and try again");if(!(`token`in e)||typeof e.token!=`string`)throw TypeError("Vercel OIDC token is malformed. Expected a string-valued token property. Please run `vc env pull` and try again")}function T(){let e=(0,_.findRootDir)();if(!e)throw new g.VercelOidcTokenError("Unable to find project root directory. Have you linked your project with `vc link?`");let t=m.join(e,`.vercel`,`project.json`);if(!h.existsSync(t))throw new g.VercelOidcTokenError("project.json not found, have you linked your project with `vc link?`");let n=JSON.parse(h.readFileSync(t,`utf8`));if(typeof n.projectId!=`string`&&typeof n.orgId!=`string`)throw TypeError("Expected a string-valued projectId property. Try running `vc link` to re-link your project.");return{projectId:n.projectId,teamId:n.orgId}}function E(e,t){let n=(0,_.getUserDataDir)();if(!n)throw new g.VercelOidcTokenError(`Unable to find user data directory. Please reach out to Vercel support.`);let r=m.join(n,`com.vercel.token`,`${t}.json`),i=JSON.stringify(e);h.mkdirSync(m.dirname(r),{mode:504,recursive:!0}),h.writeFileSync(r,i),h.chmodSync(r,432)}function D(e){let t=(0,_.getUserDataDir)();if(!t)throw new g.VercelOidcTokenError(`Unable to find user data directory. Please reach out to Vercel support.`);let n=m.join(t,`com.vercel.token`,`${e}.json`);if(!h.existsSync(n))return null;let r=JSON.parse(h.readFileSync(n,`utf8`));return w(r),r}function O(e){let t=e.split(`.`);if(t.length!==3)throw new g.VercelOidcTokenError("Invalid token. Please run `vc env pull` and try again");let n=t[1].replace(/-/g,`+`).replace(/_/g,`/`),r=n.padEnd(n.length+(4-n.length%4)%4,`=`);return JSON.parse(Buffer.from(r,`base64`).toString(`utf8`))}function k(e,t=0){return e.exp*1e3<Date.now()+t}0&&(n.exports={assertVercelOidcTokenResponse:w,findProjectInfo:T,getTokenPayload:O,getVercelDataDir:x,getVercelOidcToken:C,getVercelToken:S,isExpired:k,loadToken:D,saveToken:E})})),Oc=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{AccessTokenMissingError:()=>f.AccessTokenMissingError,RefreshAccessTokenFailedError:()=>f.RefreshAccessTokenFailedError,getContext:()=>d.getContext,getVercelOidcToken:()=>u.getVercelOidcToken,getVercelOidcTokenSync:()=>u.getVercelOidcTokenSync,getVercelToken:()=>p.getVercelToken}),t.exports=c(l);var u=Sc(),d=bc(),f=Cc(),p=Dc();0&&(t.exports={AccessTokenMissingError,RefreshAccessTokenFailedError,getContext,getVercelOidcToken,getVercelOidcTokenSync,getVercelToken})}))();let kc=null;async function Ac(){return kc||=import(`../../_chunks/workflow/src-CQuMexnO.js`).then(t=>e(t.t(),1)).catch(()=>null),kc}let jc=null;async function Mc(){return jc||=Ac().then(e=>e?e.trace.getTracer(`workflow`):null),jc}async function Nc(e,...t){let[n,r]=await Promise.all([Mc(),Ac()]),{fn:i,opts:a}=typeof t[0]==`function`?{fn:t[0],opts:{}}:{fn:t[1],opts:t[0]};if(!i)throw Error(`Function to trace must be provided`);return!n||!r?await i():n.startActiveSpan(e,a,async e=>{try{let t=await i(e);return e.setStatus({code:r.SpanStatusCode.OK}),t}catch(t){throw e.setStatus({code:r.SpanStatusCode.ERROR,message:t.message}),t}finally{e.end()}})}async function Pc(e){let t=await Ac();if(t)return t.SpanKind[e]}async function Fc(e){let t=await Ac();if(!t)return;let n={};t.propagation.inject(t.context.active(),n);for(let[t,r]of Object.entries(n))e.set(t,r)}function Ic(...e){return t=>Object.fromEntries(e.map(e=>[e,t]))}const Lc=Ic(`http.request.method`),Rc=Ic(`url.full`),zc=Ic(`server.address`),Bc=Ic(`server.port`),Vc=Ic(`http.response.status_code`),Hc=Ic(`error.type`),Uc=Ic(`workflow.world.parse.format`),Wc=Ic(`peer.service`),Gc=Ic(`rpc.system`),Kc=Ic(`rpc.service`),qc=Ic(`rpc.method`),Jc=Ic(`workflow.run.id`),Yc=Ic(`step.id`),Xc=6e4,Zc=typeof process<`u`&&typeof process.env.DEBUG==`string`&&(process.env.DEBUG.includes(`workflow:`)||process.env.DEBUG===`*`),Qc=[`x-vercel-id`,`x-vercel-error`,`x-vercel-mitigated`];function $c(e){return Qc.flatMap(t=>{let n=e.get(t);return n?[`${t}=${n}`]:[]})}function el(e){let t=$c(e);return t.length>0?` (${t.join(`; `)})`:``}function tl(e,t,n,r){if(!Zc)return;let i=$c(n.headers),a=i.length>0?`; ${i.join(`; `)}`:``;console.debug(`[workflow:world-vercel:http] ${e} ${t} -> ${n.status} (${r}ms${a})`)}function nl(e,t,n){if(!process.env.DEBUG)return;let r=Array.from(n.entries()).filter(([e])=>e.toLowerCase()!==`authorization`).map(([e,t])=>`-H "${e}: ${t}"`).join(` `);console.error(`Failed to fetch, reproduce with:\ncurl -X ${e} ${r} "${t}"`)}function rl(e){if(!e)return;let t=parseInt(e,10);return Number.isNaN(t)?void 0:t}function il(e,t,n={}){let{retryAfter:r,code:i,url:a,mitigated:o}=n;return e===409?new C(t):e===410?new y(t):e===425?new _(t,{retryAfter:r}):e===429?al(e,o)?new p(`${t} (x-vercel-mitigated=challenge)`,{url:a,status:e,code:`TRANSPORT`,retryAfter:r}):new b(t,{retryAfter:r}):new p(t,{url:a,status:e,code:i,retryAfter:r})}function al(e,t){return e===429&&t===`challenge`}async function ol(e){return e?.token??process.env.VERCEL_TOKEN??await(0,Oc.getVercelOidcToken)().catch(()=>null)}function sl(e){try{let t=new URL(e);return{serverAddress:t.hostname,serverPort:t.port?parseInt(t.port,10):t.protocol===`https:`?443:80}}catch{return{}}}function cl(e){let{method:t,url:n,peerService:r}=e,{serverAddress:i,serverPort:a}=sl(n);return{...Lc(t),...Rc(n),...i?zc(i):{},...a?Bc(a):{},...Wc(r),...Gc(`http`),...Kc(r)}}async function ll(e){let{method:t,url:n,headers:r,body:i,dispatcher:a,peerService:o=`workflow-server`,timeoutMs:s=Xc,signal:c,injectTraceContext:l=!0,cacheBust:u=!0,logLabel:d,buildError:f}=e,m=d??n;return Nc(`http ${t}`,{kind:await Pc(`CLIENT`)},async e=>{e?.setAttributes(cl({method:t,url:n,peerService:o})),l&&await Fc(r),u&&r.set(`X-Request-Time`,Date.now().toString());let d=s==null?void 0:AbortSignal.timeout(s),h=c&&d?AbortSignal.any([c,d]):c??d,g=Date.now(),_;try{_=await fetch(n,{method:t,headers:r,body:i,signal:h,dispatcher:a})}catch(r){let i=Date.now()-g;if(r instanceof Error&&(r.name===`TimeoutError`||r.name===`AbortError`)){let a=new p(`${t} ${m} timed out after ${i}ms`,{url:n,cause:r});throw e?.setAttributes({...Hc(`TIMEOUT`)}),e?.recordException?.(a),a}throw r}let v=Date.now()-g;if(tl(t,m,_,v),e?.setAttributes({...Vc(_.status)}),!_.ok){if(e?.setAttributes({...Hc(`HTTP ${_.status}`)}),nl(t,n,r),f){let t=await f(_);throw e?.recordException?.(t),t}let i=await _.text().catch(()=>``),a=il(_.status,`${t} ${m} -> HTTP ${_.status}: ${_.statusText}${i?` ${i}`:``}${el(_.headers)}`,{url:n,retryAfter:rl(_.headers.get(`Retry-After`))});throw e?.recordException?.(a),a}return _})}async function ul(e,t,n){if(e.length!==32)throw Error(`Invalid deployment key length: expected 32 bytes for AES-256, got ${e.length} bytes`);if(!t||typeof t!=`string`)throw Error(`projectId must be a non-empty string`);let r=await Un.subtle.importKey(`raw`,e,`HKDF`,!1,[`deriveBits`]),i=new TextEncoder().encode(`${t}|${n}`),a=await Un.subtle.deriveBits({name:`HKDF`,hash:`SHA-256`,salt:new Uint8Array(32),info:i},r,256);return new Uint8Array(a)}async function dl(e,t,n,r){let i=await ol({token:r?.token});if(!i)throw Error(`Cannot fetch run key: no OIDC token or VERCEL_TOKEN available`);let a=new URLSearchParams({projectId:t,runId:n});r?.teamId&&a.set(`teamId`,r.teamId);let o=await(await ll({method:`GET`,url:`https://api.vercel.com/v1/workflow/run-key/${e}?${a}`,headers:new Headers({Authorization:`Bearer ${i}`}),dispatcher:pc({dispatcher:r?.dispatcher}),peerService:`vercel-api`,timeoutMs:null,buildError:async t=>{let r;try{r=await t.text()}catch{r=`<unable to read response body>`}return Error(`Failed to fetch run key for ${n} (deployment ${e}): HTTP ${t.status} ${t.statusText}${r?` — ${r}`:``}`)}})).json(),s=en({key:ut().nullable()}).safeParse(o);if(!s.success)throw Error(`Invalid response from Vercel API: expected { key: string | null }. Zod error: ${s.error.message}`);if(s.data.key!==null)return Buffer.from(s.data.key,`base64`)}function fl(e,t,n,r){if(!e)return;let i=process.env.VERCEL===`1`,a;function o(){if(a)return a;let e=process.env.VERCEL_DEPLOYMENT_KEY;if(e)return a=Buffer.from(e,`base64`),a}return async function(a,s){let c=typeof a==`string`?a:a.runId,l=typeof a==`string`?s?.deploymentId:a.deploymentId;if(i&&(!l||l===process.env.VERCEL_DEPLOYMENT_ID)){let t=o();return t?ul(t,e,c):void 0}if(l)return dl(l,e,c,{token:n,teamId:t,dispatcher:r})}}const pl={peerService:`workflow-server`,rpcSystem:`http`,rpcService:`workflow-server`},ml={"world.runs.get":0,"world.runs.experimentalSetAttributes":0,"world.steps.get":0,"world.events.create":0,"world.events.get":0},hl=new Set([`world.steps.list`,`world.events.list`,`world.hooks.list`]);function gl(e){if(e.length>=2&&typeof e[1]==`object`&&e[1]!==null){let t=e[1];if(typeof t.eventType==`string`)return t.eventType}}function _l(e,t){return typeof e[t]==`string`?e[t]:void 0}function vl(e){if(typeof e!=`object`||!e)return;let t=e.runId;return typeof t==`string`?t:void 0}function yl(e){if(typeof e!=`object`||!e)return;let t=e;if(typeof t.runId==`string`)return t.runId;for(let e of[`run`,`step`,`hook`,`wait`]){let n=t[e];if(typeof n==`object`&&n){let e=n.runId;if(typeof e==`string`)return e}}}function bl(e,t,n){let r=`${e}.${t}`,i={},a=ml[r],o=a===void 0?hl.has(r)?vl(n[0]):void 0:_l(n,a);if(o&&Object.assign(i,Jc(o)),r===`world.steps.get`){let e=_l(n,1);e&&Object.assign(i,Yc(e))}return i}function xl(e,t){let n={};for(let r of Object.keys(t))if(typeof t[r]!=`function`)n[r]=t[r];else{let i=t[r],a=String(r);n[r]=async(...t)=>{let n=`${e}.${a}`;if(e===`world.events`&&a===`create`){let r=gl(t);r&&(n=`${e}.${a} ${r}`)}return Nc(n,{kind:await Pc(`CLIENT`)},async r=>{r?.setAttributes({...Wc(pl.peerService),...Gc(pl.rpcSystem),...Kc(pl.rpcService),...qc(n),...bl(e,a,t)});let o=await i(...t),s=yl(o);return s&&r?.setAttributes(Jc(s)),o})}}return n}var Sl=class extends Error{constructor(e){super(e),this.name=`MultipartParseError`}};function Cl(e){let t=new TextEncoder().encode(e);return(e,n=0)=>Buffer.prototype.indexOf.call(e,t,n)}function wl(e){let t=new TextEncoder().encode(e),n={};for(let e=0;e<t.length;++e){let r=t[e];n[r]===void 0&&(n[r]=[]),n[r].push(e)}return function(e){let r=e.length-1;if(e[r]in n){let i=n[e[r]];for(let n=i.length-1;n>=0;--n)for(let a=i[n],o=r;a>=0&&e[o]===t[a];--a,--o)if(a===0)return o}return-1}}function Tl(e){let t=new TextDecoder(`iso-8859-1`).decode(e).trim().split(/\r?\n/),n=[];for(let e of t){let t=e.indexOf(`:`);if(t>0){let r=e.slice(0,t).trim(),i=e.slice(t+1).trim();n.push([r,i])}}return new Headers(n)}function El(e){let t=e.match(/boundary=(?:"([^"]+)"|([^;]+))/i);if(!t)throw new Sl(`No boundary found in Content-Type header`);return t[1]??t[2]}var Dl=class{queue=[];waiters=[];finished=!1;cancelled=!1;error=null;enqueue(e){this.finished||this.cancelled||(this.waiters.length>0?this.waiters.shift().resolve(e):this.queue.push(e))}finish(e){if(!this.finished)for(this.finished=!0,this.error=e||null;this.waiters.length>0;){let t=this.waiters.shift();e?t.reject(e):t.resolve(null)}}cancel(){if(!(this.cancelled||this.finished))for(this.cancelled=!0;this.waiters.length>0;)this.waiters.shift().resolve(null)}async dequeue(){if(this.queue.length>0)return this.queue.shift();if(this.finished||this.cancelled){if(this.error)throw this.error;return null}return new Promise((e,t)=>{this.waiters.push({resolve:e,reject:t})})}get isTerminal(){return this.finished||this.cancelled}};async function*Ol(e,t){if(!e.body)throw new Sl(`Response body is null`);let n=e.headers.get(`content-type`);if(!n)throw new Sl(`Missing Content-Type header`);yield*new kl(El(n),t).parseStream(e.body)}var kl=class{boundary;findOpeningBoundary;openingBoundaryLength;findBoundary;findPartialTailBoundary;boundaryLength;findDoubleNewline;maxHeaderSize;maxBoundaryBuffer;state=0;buffer=null;currentHeaders=new Headers;currentPayloadController=null;constructor(e,t={}){this.boundary=e,this.findOpeningBoundary=Cl(`--${e}`),this.openingBoundaryLength=2+e.length,this.findBoundary=Cl(`\r
|
|
100
|
+
--${e}`),this.findPartialTailBoundary=wl(`\r
|
|
101
|
+
--${e}`),this.boundaryLength=4+e.length,this.findDoubleNewline=Cl(`\r
|
|
102
102
|
\r
|
|
103
|
-
`),this.maxHeaderSize=t.maxHeaderSize??65536,this.maxBoundaryBuffer=t.maxBoundaryBuffer??8192}async*parseStream(e){let t=e.getReader(),n=new
|
|
103
|
+
`),this.maxHeaderSize=t.maxHeaderSize??65536,this.maxBoundaryBuffer=t.maxBoundaryBuffer??8192}async*parseStream(e){let t=e.getReader(),n=new Dl,r=this.startProducer(t,n);try{yield*this.consumeMessages(n)}finally{n.cancel(),this.closeCurrentPayload();try{await t.cancel()}catch{}await r}}async startProducer(e,t){try{for(;!t.isTerminal;){let n;try{n=await e.read()}catch(e){if(e instanceof Error&&(e.name===`AbortError`||e.constructor.name===`AbortError`||e.name===`TimeoutError`||e.constructor.name===`TimeoutError`))break;throw e}let{done:r,value:i}=n;if(r){if(this.buffer!==null&&this.buffer.length>0){let e=this.write(new Uint8Array);for(let n of e){if(t.isTerminal)break;t.enqueue(n)}}if(this.state!==4)throw this.state===0?new Sl(`Invalid multipart stream: missing initial boundary`):new Sl(`Unexpected end of stream`);break}if(!(i instanceof Uint8Array))throw new Sl(`Invalid chunk type: expected Uint8Array, got ${typeof i}`);let a=this.write(i);for(let e of a){if(t.isTerminal)break;t.enqueue(e)}}t.isTerminal||t.finish()}catch(e){this.closeCurrentPayload(e),t.isTerminal||t.finish(e)}finally{try{e.releaseLock()}catch{}}}async*consumeMessages(e){for(;;){let t=await e.dequeue();if(t===null)break;yield t}}write(e){let t=[];if(this.state===4)throw new Sl(`Unexpected data after end of stream`);let n=0,r=e.length;if(this.buffer!==null){let t=this.buffer.length,n=t+r;if(this.state===2){if(n>this.maxHeaderSize)throw new Sl(`Buffer size limit exceeded: ${n} bytes > ${this.maxHeaderSize} bytes. This may indicate malformed multipart data with oversized headers.`)}else if(t>this.maxBoundaryBuffer)throw new Sl(`Boundary buffer limit exceeded: ${t} bytes > ${this.maxBoundaryBuffer} bytes. This may indicate malformed multipart data with invalid boundaries.`);let i=new Uint8Array(n);i.set(this.buffer,0),i.set(e,t),e=i,r=e.length,this.buffer=null}if(r===0&&this.state===0)throw new Sl(`Invalid multipart stream: missing initial boundary`);for(;;){if(this.state===3){if(r-n<this.boundaryLength){let t=e.subarray(n);if(t.length>this.maxBoundaryBuffer)throw new Sl(`Boundary buffer limit exceeded: ${t.length} > ${this.maxBoundaryBuffer}`);this.buffer=t;break}let t=this.findBoundary(e,n);if(t===-1){let t=this.findPartialTailBoundary(e);if(t===-1)this.writeBody(n===0?e:e.subarray(n));else{this.writeBody(e.subarray(n,t));let r=e.subarray(t);if(r.length>this.maxBoundaryBuffer)throw new Sl(`Partial boundary too large: ${r.length} > ${this.maxBoundaryBuffer}`);this.buffer=r}break}this.writeBody(e.subarray(n,t)),this.finishMessage(),n=t+this.boundaryLength,this.state=1}if(this.state===1){if(r-n<2){let t=e.subarray(n);if(t.length>this.maxBoundaryBuffer)throw new Sl(`After-boundary buffer limit exceeded: ${t.length} > ${this.maxBoundaryBuffer}`);this.buffer=t;break}if(e[n]===45&&e[n+1]===45){this.state=4;break}if(e[n]===13&&e[n+1]===10)n+=2;else if(e[n]===10)n+=1;else throw new Sl(`Invalid character after boundary: expected CRLF or LF, got 0x${e[n].toString(16)}`);this.state=2}if(this.state===2){if(r-n<4){let t=e.subarray(n);if(t.length>this.maxHeaderSize)throw new Sl(`Header buffer limit exceeded: ${t.length} > ${this.maxHeaderSize}`);this.buffer=t;break}let i=this.findDoubleNewline(e,n),a=4;if(i===-1&&(i=Cl(`
|
|
104
104
|
|
|
105
|
-
`)(e,n),a=2),i===-1){let t=e.subarray(n);if(t.length>this.maxHeaderSize)throw new Qc(`Headers too large: ${t.length} > ${this.maxHeaderSize} bytes`);this.buffer=t;break}let o=e.subarray(n,i);this.currentHeaders=tl(o);let s=this.createStreamingMessage();t.push(s),n=i+a,this.state=3;continue}if(this.state===0){if(r<this.openingBoundaryLength){if(e.length>this.maxBoundaryBuffer)throw new Qc(`Initial chunk too large for boundary detection: ${e.length} > ${this.maxBoundaryBuffer}`);this.buffer=e;break}if(this.findOpeningBoundary(e)!==0)throw new Qc(`Invalid multipart stream: missing initial boundary`);n=this.openingBoundaryLength,this.state=1}}return t}createStreamingMessage(){let e=new Headers(this.currentHeaders),t=new ReadableStream({start:e=>{this.currentPayloadController=e}});return this.currentHeaders=new Headers,{headers:e,payload:t}}writeBody(e){this.currentPayloadController&&this.currentPayloadController.enqueue(e)}finishMessage(){this.currentPayloadController&&=(this.currentPayloadController.close(),null)}closeCurrentPayload(e){if(this.currentPayloadController){try{e?this.currentPayloadController.error(e):this.currentPayloadController.close()}catch{}this.currentPayloadController=null}}};const ol=(e,t,n)=>{let r=e instanceof RegExp?sl(e,n):e,i=t instanceof RegExp?sl(t,n):t,a=r!==null&&i!=null&&cl(r,i,n);return a&&{start:a[0],end:a[1],pre:n.slice(0,a[0]),body:n.slice(a[0]+r.length,a[1]),post:n.slice(a[1]+i.length)}},sl=(e,t)=>{let n=t.match(e);return n?n[0]:null},cl=(e,t,n)=>{let r,i,a,o,s,c=n.indexOf(e),l=n.indexOf(t,c+1),u=c;if(c>=0&&l>0){if(e===t)return[c,l];for(r=[],a=n.length;u>=0&&!s;){if(u===c)r.push(u),c=n.indexOf(e,u+1);else if(r.length===1){let e=r.pop();e!==void 0&&(s=[e,l])}else i=r.pop(),i!==void 0&&i<a&&(a=i,o=l),l=n.indexOf(t,u+1);u=c<l&&c>=0?c:l}r.length&&o!==void 0&&(s=[a,o])}return s},ll=`\0SLASH`+Math.random()+`\0`,ul=`\0OPEN`+Math.random()+`\0`,dl=`\0CLOSE`+Math.random()+`\0`,fl=`\0COMMA`+Math.random()+`\0`,pl=`\0PERIOD`+Math.random()+`\0`,ml=new RegExp(ll,`g`),hl=new RegExp(ul,`g`),gl=new RegExp(dl,`g`),_l=new RegExp(fl,`g`),vl=new RegExp(pl,`g`),yl=/\\\\/g,bl=/\\{/g,xl=/\\}/g,Sl=/\\,/g,Cl=/\\\./g;function wl(e){return isNaN(e)?e.charCodeAt(0):parseInt(e,10)}function Tl(e){return e.replace(yl,ll).replace(bl,ul).replace(xl,dl).replace(Sl,fl).replace(Cl,pl)}function El(e){return e.replace(ml,`\\`).replace(hl,`{`).replace(gl,`}`).replace(_l,`,`).replace(vl,`.`)}function Dl(e){if(!e)return[``];let t=[],n=ol(`{`,`}`,e);if(!n)return e.split(`,`);let{pre:r,body:i,post:a}=n,o=r.split(`,`);o[o.length-1]+=`{`+i+`}`;let s=Dl(a);return a.length&&(o[o.length-1]+=s.shift(),o.push.apply(o,s)),t.push.apply(t,o),t}function Ol(e,t={}){if(!e)return[];let{max:n=1e5}=t;return e.slice(0,2)===`{}`&&(e=`\\{\\}`+e.slice(2)),Nl(Tl(e),n,!0).map(El)}function kl(e){return`{`+e+`}`}function Al(e){return/^-?0\d/.test(e)}function jl(e,t){return e<=t}function Ml(e,t){return e>=t}function Nl(e,t,n){let r=[],i=ol(`{`,`}`,e);if(!i)return[e];let a=i.pre,o=i.post.length?Nl(i.post,t,!1):[``];if(/\$$/.test(i.pre))for(let e=0;e<o.length&&e<t;e++){let t=a+`{`+i.body+`}`+o[e];r.push(t)}else{let s=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(i.body),c=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(i.body),l=s||c,u=i.body.indexOf(`,`)>=0;if(!l&&!u)return i.post.match(/,(?!,).*\}/)?(e=i.pre+`{`+i.body+dl+i.post,Nl(e,t,!0)):[e];let d;if(l)d=i.body.split(/\.\./);else if(d=Dl(i.body),d.length===1&&d[0]!==void 0&&(d=Nl(d[0],t,!1).map(kl),d.length===1))return o.map(e=>i.pre+d[0]+e);let f;if(l&&d[0]!==void 0&&d[1]!==void 0){let e=wl(d[0]),n=wl(d[1]),r=Math.max(d[0].length,d[1].length),i=d.length===3&&d[2]!==void 0?Math.max(Math.abs(wl(d[2])),1):1,a=jl;n<e&&(i*=-1,a=Ml);let o=d.some(Al);f=[];for(let s=e;a(s,n)&&f.length<t;s+=i){let e;if(c)e=String.fromCharCode(s),e===`\\`&&(e=``);else if(e=String(s),o){let t=r-e.length;if(t>0){let n=Array(t+1).join(`0`);e=s<0?`-`+n+e.slice(1):n+e}}f.push(e)}}else{f=[];for(let e=0;e<d.length;e++)f.push.apply(f,Nl(d[e],t,!1))}for(let e=0;e<f.length;e++)for(let i=0;i<o.length&&r.length<t;i++){let t=a+f[e]+o[i];(!n||l||t)&&r.push(t)}}return r}const Pl=e=>{if(typeof e!=`string`)throw TypeError(`invalid pattern`);if(e.length>65536)throw TypeError(`pattern is too long`)},Fl={"[: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]},Il=e=>e.replace(/[[\]\\-]/g,`\\$&`),Ll=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`),Rl=e=>e.join(``),zl=(e,t)=>{let n=t;if(e.charAt(n)!==`[`)throw Error(`not in a brace expression`);let r=[],i=[],a=n+1,o=!1,s=!1,c=!1,l=!1,u=n,d=``;WHILE:for(;a<e.length;){let t=e.charAt(a);if((t===`!`||t===`^`)&&a===n+1){l=!0,a++;continue}if(t===`]`&&o&&!c){u=a+1;break}if(o=!0,t===`\\`&&!c){c=!0,a++;continue}if(t===`[`&&!c){for(let[t,[o,c,l]]of Object.entries(Fl))if(e.startsWith(t,a)){if(d)return[`$.`,!1,e.length-n,!0];a+=t.length,l?i.push(o):r.push(o),s||=c;continue WHILE}}if(c=!1,d){t>d?r.push(Il(d)+`-`+Il(t)):t===d&&r.push(Il(t)),d=``,a++;continue}if(e.startsWith(`-]`,a+1)){r.push(Il(t+`-`)),a+=2;continue}if(e.startsWith(`-`,a+1)){d=t,a+=2;continue}r.push(Il(t)),a++}if(u<a)return[``,!1,0,!1];if(!r.length&&!i.length)return[`$.`,!1,e.length-n,!0];if(i.length===0&&r.length===1&&/^\\?.$/.test(r[0])&&!l)return[Ll(r[0].length===2?r[0].slice(-1):r[0]),!1,u-n,!1];let f=`[`+(l?`^`:``)+Rl(r)+`]`,p=`[`+(l?``:`^`)+Rl(i)+`]`;return[r.length&&i.length?`(`+f+`|`+p+`)`:r.length?f:p,s,u-n,!0]},Bl=(e,{windowsPathsNoEscape:t=!1,magicalBraces:n=!0}={})=>n?t?e.replace(/\[([^/\\])\]/g,`$1`):e.replace(/((?!\\).|^)\[([^/\\])\]/g,`$1$2`).replace(/\\([^/])/g,`$1`):t?e.replace(/\[([^/\\{}])\]/g,`$1`):e.replace(/((?!\\).|^)\[([^/\\{}])\]/g,`$1$2`).replace(/\\([^/{}])/g,`$1`);var Vl;const Hl=new Set([`!`,`?`,`+`,`*`,`@`]),Ul=e=>Hl.has(e),Wl=e=>Ul(e.type),Gl=new Map([[`!`,[`@`]],[`?`,[`?`,`@`]],[`@`,[`@`]],[`*`,[`*`,`+`,`?`,`@`]],[`+`,[`+`,`@`]]]),Kl=new Map([[`!`,[`?`]],[`@`,[`?`]],[`+`,[`?`,`*`]]]),ql=new Map([[`!`,[`?`,`@`]],[`?`,[`?`,`@`]],[`@`,[`?`,`@`]],[`*`,[`*`,`+`,`?`,`@`]],[`+`,[`+`,`@`,`?`,`*`]]]),Jl=new Map([[`!`,new Map([[`!`,`@`]])],[`?`,new Map([[`*`,`*`],[`+`,`*`]])],[`@`,new Map([[`!`,`!`],[`?`,`?`],[`@`,`@`],[`*`,`*`],[`+`,`+`]])],[`+`,new Map([[`?`,`*`],[`*`,`*`]])]]),Yl=`(?!\\.)`,Xl=new Set([`[`,`.`]),Zl=new Set([`..`,`.`]),Ql=new Set(`().*{}+?[]^$\\!`),$l=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`),eu=`[^/]+?`;let tu=0;var nu=class{type;#e;#t;#n=!1;#r=[];#i;#a;#o;#s=!1;#c;#l;#u=!1;id=++tu;get depth(){return(this.#i?.depth??-1)+1}[Symbol.for(`nodejs.util.inspect.custom`)](){return{"@@type":`AST`,id:this.id,type:this.type,root:this.#e.id,parent:this.#i?.id,depth:this.depth,partsLength:this.#r.length,parts:this.#r}}constructor(e,t,n={}){this.type=e,e&&(this.#t=!0),this.#i=t,this.#e=this.#i?this.#i.#e:this,this.#c=this.#e===this?n:this.#e.#c,this.#o=this.#e===this?[]:this.#e.#o,e===`!`&&!this.#e.#s&&this.#o.push(this),this.#a=this.#i?this.#i.#r.length:0}get hasMagic(){if(this.#t!==void 0)return this.#t;for(let e of this.#r)if(typeof e!=`string`&&(e.type||e.hasMagic))return this.#t=!0;return this.#t}toString(){return this.#l===void 0?this.type?this.#l=this.type+`(`+this.#r.map(e=>String(e)).join(`|`)+`)`:this.#l=this.#r.map(e=>String(e)).join(``):this.#l}#d(){if(this!==this.#e)throw Error(`should only call on root`);if(this.#s)return this;this.toString(),this.#s=!0;let e;for(;e=this.#o.pop();){if(e.type!==`!`)continue;let t=e,n=t.#i;for(;n;){for(let r=t.#a+1;!n.type&&r<n.#r.length;r++)for(let t of e.#r){if(typeof t==`string`)throw Error(`string part in extglob AST??`);t.copyIn(n.#r[r])}t=n,n=t.#i}}return this}push(...e){for(let t of e)if(t!==``){if(typeof t!=`string`&&!(t instanceof Vl&&t.#i===this))throw Error(`invalid part: `+t);this.#r.push(t)}}toJSON(){let e=this.type===null?this.#r.slice().map(e=>typeof e==`string`?e:e.toJSON()):[this.type,...this.#r.map(e=>e.toJSON())];return this.isStart()&&!this.type&&e.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#s&&this.#i?.type===`!`)&&e.push({}),e}isStart(){if(this.#e===this)return!0;if(!this.#i?.isStart())return!1;if(this.#a===0)return!0;let e=this.#i;for(let t=0;t<this.#a;t++){let n=e.#r[t];if(!(n instanceof Vl&&n.type===`!`))return!1}return!0}isEnd(){if(this.#e===this||this.#i?.type===`!`)return!0;if(!this.#i?.isEnd())return!1;if(!this.type)return this.#i?.isEnd();let e=this.#i?this.#i.#r.length:0;return this.#a===e-1}copyIn(e){typeof e==`string`?this.push(e):this.push(e.clone(this))}clone(e){let t=new Vl(this.type,e);for(let e of this.#r)t.copyIn(e);return t}static#f(e,t,n,r,i){let a=r.maxExtglobRecursion??2,o=!1,s=!1,c=-1,l=!1;if(t.type===null){let u=n,d=``;for(;u<e.length;){let n=e.charAt(u++);if(o||n===`\\`){o=!o,d+=n;continue}if(s){u===c+1?(n===`^`||n===`!`)&&(l=!0):n===`]`&&!(u===c+2&&l)&&(s=!1),d+=n;continue}else if(n===`[`){s=!0,c=u,l=!1,d+=n;continue}if(!r.noext&&Ul(n)&&e.charAt(u)===`(`&&i<=a){t.push(d),d=``;let a=new Vl(n,t);u=Vl.#f(e,a,u,r,i+1),t.push(a);continue}d+=n}return t.push(d),u}let u=n+1,d=new Vl(null,t),f=[],p=``;for(;u<e.length;){let n=e.charAt(u++);if(o||n===`\\`){o=!o,p+=n;continue}if(s){u===c+1?(n===`^`||n===`!`)&&(l=!0):n===`]`&&!(u===c+2&&l)&&(s=!1),p+=n;continue}else if(n===`[`){s=!0,c=u,l=!1,p+=n;continue}if(!r.noext&&Ul(n)&&e.charAt(u)===`(`&&(i<=a||t&&t.#h(n))){let a=t&&t.#h(n)?0:1;d.push(p),p=``;let o=new Vl(n,d);d.push(o),u=Vl.#f(e,o,u,r,i+a);continue}if(n===`|`){d.push(p),p=``,f.push(d),d=new Vl(null,t);continue}if(n===`)`)return p===``&&t.#r.length===0&&(t.#u=!0),d.push(p),p=``,t.push(...f,d),u;p+=n}return t.type=null,t.#t=void 0,t.#r=[e.substring(n-1)],u}#p(e){return this.#m(e,Kl)}#m(e,t=Gl){if(!e||typeof e!=`object`||e.type!==null||e.#r.length!==1||this.type===null)return!1;let n=e.#r[0];return!n||typeof n!=`object`||n.type===null?!1:this.#h(n.type,t)}#h(e,t=ql){return!!t.get(this.type)?.includes(e)}#g(e,t){let n=e.#r[0],r=new Vl(null,n,this.options);r.#r.push(``),n.push(r),this.#_(e,t)}#_(e,t){let n=e.#r[0];this.#r.splice(t,1,...n.#r);for(let e of n.#r)typeof e==`object`&&(e.#i=this);this.#l=void 0}#v(e){return!!Jl.get(this.type)?.has(e)}#y(e){if(!e||typeof e!=`object`||e.type!==null||e.#r.length!==1||this.type===null||this.#r.length!==1)return!1;let t=e.#r[0];return!t||typeof t!=`object`||t.type===null?!1:this.#v(t.type)}#b(e){let t=Jl.get(this.type),n=e.#r[0],r=t?.get(n.type);if(!r)return!1;this.#r=n.#r;for(let e of this.#r)typeof e==`object`&&(e.#i=this);this.type=r,this.#l=void 0,this.#u=!1}static fromGlob(e,t={}){let n=new Vl(null,void 0,t);return Vl.#f(e,n,0,t,0),n}toMMPattern(){if(this!==this.#e)return this.#e.toMMPattern();let e=this.toString(),[t,n,r,i]=this.toRegExpSource();if(!(r||this.#t||this.#c.nocase&&!this.#c.nocaseMagicOnly&&e.toUpperCase()!==e.toLowerCase()))return n;let a=(this.#c.nocase?`i`:``)+(i?`u`:``);return Object.assign(RegExp(`^${t}$`,a),{_src:t,_glob:e})}get options(){return this.#c}toRegExpSource(e){let t=e??!!this.#c.dot;if(this.#e===this&&(this.#x(),this.#d()),!Wl(this)){let n=this.isStart()&&this.isEnd()&&!this.#r.some(e=>typeof e!=`string`),r=this.#r.map(t=>{let[r,i,a,o]=typeof t==`string`?Vl.#C(t,this.#t,n):t.toRegExpSource(e);return this.#t=this.#t||a,this.#n=this.#n||o,r}).join(``),i=``;if(this.isStart()&&typeof this.#r[0]==`string`&&!(this.#r.length===1&&Zl.has(this.#r[0]))){let n=Xl,a=t&&n.has(r.charAt(0))||r.startsWith(`\\.`)&&n.has(r.charAt(2))||r.startsWith(`\\.\\.`)&&n.has(r.charAt(4)),o=!t&&!e&&n.has(r.charAt(0));i=a?`(?!(?:^|/)\\.\\.?(?:$|/))`:o?Yl:``}let a=``;return this.isEnd()&&this.#e.#s&&this.#i?.type===`!`&&(a=`(?:$|\\/)`),[i+r+a,Bl(r),this.#t=!!this.#t,this.#n]}let n=this.type===`*`||this.type===`+`,r=this.type===`!`?`(?:(?!(?:`:`(?:`,i=this.#S(t);if(this.isStart()&&this.isEnd()&&!i&&this.type!==`!`){let e=this.toString(),t=this;return t.#r=[e],t.type=null,t.#t=void 0,[e,Bl(this.toString()),!1,!1]}let a=!n||e||t?``:this.#S(!0);a===i&&(a=``),a&&(i=`(?:${i})(?:${a})*?`);let o=``;if(this.type===`!`&&this.#u)o=(this.isStart()&&!t?Yl:``)+eu;else{let n=this.type===`!`?`))`+(this.isStart()&&!t&&!e?Yl:``)+`[^/]*?)`:this.type===`@`?`)`:this.type===`?`?`)?`:this.type===`+`&&a?`)`:this.type===`*`&&a?`)?`:`)${this.type}`;o=r+i+n}return[o,Bl(i),this.#t=!!this.#t,this.#n]}#x(){if(Wl(this)){let e=0,t=!1;do{t=!0;for(let e=0;e<this.#r.length;e++){let n=this.#r[e];typeof n==`object`&&(n.#x(),this.#m(n)?(t=!1,this.#_(n,e)):this.#p(n)?(t=!1,this.#g(n,e)):this.#y(n)&&(t=!1,this.#b(n)))}}while(!t&&++e<10)}else for(let e of this.#r)typeof e==`object`&&e.#x();this.#l=void 0}#S(e){return this.#r.map(t=>{if(typeof t==`string`)throw Error(`string type in extglob ast??`);let[n,r,i,a]=t.toRegExpSource(e);return this.#n=this.#n||a,n}).filter(e=>!(this.isStart()&&this.isEnd())||!!e).join(`|`)}static#C(e,t,n=!1){let r=!1,i=``,a=!1,o=!1;for(let s=0;s<e.length;s++){let c=e.charAt(s);if(r){r=!1,i+=(Ql.has(c)?`\\`:``)+c;continue}if(c===`*`){if(o)continue;o=!0,i+=n&&/^[*]+$/.test(e)?eu:`[^/]*?`,t=!0;continue}else o=!1;if(c===`\\`){s===e.length-1?i+=`\\\\`:r=!0;continue}if(c===`[`){let[n,r,o,c]=zl(e,s);if(o){i+=n,a||=r,s+=o-1,t||=c;continue}}if(c===`?`){i+=`[^/]`,t=!0;continue}i+=$l(c)}return[i,Bl(e),!!t,a]}};Vl=nu;const ru=(e,{windowsPathsNoEscape:t=!1,magicalBraces:n=!1}={})=>n?t?e.replace(/[?*()[\]{}]/g,`[$&]`):e.replace(/[?*()[\]\\{}]/g,`\\$&`):t?e.replace(/[?*()[\]]/g,`[$&]`):e.replace(/[?*()[\]\\]/g,`\\$&`),iu=(e,t,n={})=>(Pl(t),!n.nocomment&&t.charAt(0)===`#`?!1:new Mu(t,n).match(e)),au=/^\*+([^+@!?*[(]*)$/,ou=e=>t=>!t.startsWith(`.`)&&t.endsWith(e),su=e=>t=>t.endsWith(e),cu=e=>(e=e.toLowerCase(),t=>!t.startsWith(`.`)&&t.toLowerCase().endsWith(e)),lu=e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)),uu=/^\*+\.\*+$/,du=e=>!e.startsWith(`.`)&&e.includes(`.`),fu=e=>e!==`.`&&e!==`..`&&e.includes(`.`),pu=/^\.\*+$/,mu=e=>e!==`.`&&e!==`..`&&e.startsWith(`.`),hu=/^\*+$/,gu=e=>e.length!==0&&!e.startsWith(`.`),_u=e=>e.length!==0&&e!==`.`&&e!==`..`,vu=/^\?+([^+@!?*[(]*)?$/,yu=([e,t=``])=>{let n=Cu([e]);return t?(t=t.toLowerCase(),e=>n(e)&&e.toLowerCase().endsWith(t)):n},bu=([e,t=``])=>{let n=wu([e]);return t?(t=t.toLowerCase(),e=>n(e)&&e.toLowerCase().endsWith(t)):n},xu=([e,t=``])=>{let n=wu([e]);return t?e=>n(e)&&e.endsWith(t):n},Su=([e,t=``])=>{let n=Cu([e]);return t?e=>n(e)&&e.endsWith(t):n},Cu=([e])=>{let t=e.length;return e=>e.length===t&&!e.startsWith(`.`)},wu=([e])=>{let t=e.length;return e=>e.length===t&&e!==`.`&&e!==`..`},Tu=typeof process==`object`&&process?typeof process.env==`object`&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:`posix`,Eu={win32:{sep:`\\`},posix:{sep:`/`}};iu.sep=Tu===`win32`?Eu.win32.sep:Eu.posix.sep;const Du=Symbol(`globstar **`);iu.GLOBSTAR=Du,iu.filter=(e,t={})=>n=>iu(n,e,t);const Ou=(e,t={})=>Object.assign({},e,t);iu.defaults=e=>{if(!e||typeof e!=`object`||!Object.keys(e).length)return iu;let t=iu;return Object.assign((n,r,i={})=>t(n,r,Ou(e,i)),{Minimatch:class extends t.Minimatch{constructor(t,n={}){super(t,Ou(e,n))}static defaults(n){return t.defaults(Ou(e,n)).Minimatch}},AST:class extends t.AST{constructor(t,n,r={}){super(t,n,Ou(e,r))}static fromGlob(n,r={}){return t.AST.fromGlob(n,Ou(e,r))}},unescape:(n,r={})=>t.unescape(n,Ou(e,r)),escape:(n,r={})=>t.escape(n,Ou(e,r)),filter:(n,r={})=>t.filter(n,Ou(e,r)),defaults:n=>t.defaults(Ou(e,n)),makeRe:(n,r={})=>t.makeRe(n,Ou(e,r)),braceExpand:(n,r={})=>t.braceExpand(n,Ou(e,r)),match:(n,r,i={})=>t.match(n,r,Ou(e,i)),sep:t.sep,GLOBSTAR:Du})};const ku=(e,t={})=>(Pl(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:Ol(e,{max:t.braceExpandMax}));iu.braceExpand=ku,iu.makeRe=(e,t={})=>new Mu(e,t).makeRe(),iu.match=(e,t,n={})=>{let r=new Mu(t,n);return e=e.filter(e=>r.match(e)),r.options.nonull&&!e.length&&e.push(t),e};const Au=/[?*]|[+@!]\(.*?\)|\[|\]/,ju=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`);var Mu=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;maxGlobstarRecursion;regexp;constructor(e,t={}){Pl(e),t||={},this.options=t,this.maxGlobstarRecursion=t.maxGlobstarRecursion??200,this.pattern=e,this.platform=t.platform||Tu,this.isWindows=this.platform===`win32`,this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||t.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,`/`)),this.preserveMultipleSlashes=!!t.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!t.nonegate,this.comment=!1,this.empty=!1,this.partial=!!t.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=t.windowsNoMagicRoot===void 0?!!(this.isWindows&&this.nocase):t.windowsNoMagicRoot,this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let e of this.set)for(let t of e)if(typeof t!=`string`)return!0;return!1}debug(...e){}make(){let e=this.pattern,t=this.options;if(!t.nocomment&&e.charAt(0)===`#`){this.comment=!0;return}if(!e){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],t.debug&&(this.debug=(...e)=>console.error(...e)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(e=>this.slashSplit(e));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let r=this.globParts.map((e,t,n)=>{if(this.isWindows&&this.windowsNoMagicRoot){let t=e[0]===``&&e[1]===``&&(e[2]===`?`||!Au.test(e[2]))&&!Au.test(e[3]),n=/^[a-z]:/i.test(e[0]);if(t)return[...e.slice(0,4),...e.slice(4).map(e=>this.parse(e))];if(n)return[e[0],...e.slice(1).map(e=>this.parse(e))]}return e.map(e=>this.parse(e))});if(this.debug(this.pattern,r),this.set=r.filter(e=>e.indexOf(!1)===-1),this.isWindows)for(let e=0;e<this.set.length;e++){let t=this.set[e];t[0]===``&&t[1]===``&&this.globParts[e][2]===`?`&&typeof t[3]==`string`&&/^[a-z]:$/i.test(t[3])&&(t[2]=`?`)}this.debug(this.pattern,this.set)}preprocess(e){if(this.options.noglobstar)for(let t of e)for(let e=0;e<t.length;e++)t[e]===`**`&&(t[e]=`*`);let{optimizationLevel:t=1}=this.options;return t>=2?(e=this.firstPhasePreProcess(e),e=this.secondPhasePreProcess(e)):e=t>=1?this.levelOneOptimize(e):this.adjascentGlobstarOptimize(e),e}adjascentGlobstarOptimize(e){return e.map(e=>{let t=-1;for(;(t=e.indexOf(`**`,t+1))!==-1;){let n=t;for(;e[n+1]===`**`;)n++;n!==t&&e.splice(t,n-t)}return e})}levelOneOptimize(e){return e.map(e=>(e=e.reduce((e,t)=>{let n=e[e.length-1];return t===`**`&&n===`**`?e:t===`..`&&n&&n!==`..`&&n!==`.`&&n!==`**`?(e.pop(),e):(e.push(t),e)},[]),e.length===0?[``]:e))}levelTwoFileOptimize(e){Array.isArray(e)||(e=this.slashSplit(e));let t=!1;do{if(t=!1,!this.preserveMultipleSlashes){for(let n=1;n<e.length-1;n++){let r=e[n];n===1&&r===``&&e[0]===``||(r===`.`||r===``)&&(t=!0,e.splice(n,1),n--)}e[0]===`.`&&e.length===2&&(e[1]===`.`||e[1]===``)&&(t=!0,e.pop())}let n=0;for(;(n=e.indexOf(`..`,n+1))!==-1;){let r=e[n-1];r&&r!==`.`&&r!==`..`&&r!==`**`&&!(this.isWindows&&/^[a-z]:$/i.test(r))&&(t=!0,e.splice(n-1,2),n-=2)}}while(t);return e.length===0?[``]:e}firstPhasePreProcess(e){let t=!1;do{t=!1;for(let n of e){let r=-1;for(;(r=n.indexOf(`**`,r+1))!==-1;){let i=r;for(;n[i+1]===`**`;)i++;i>r&&n.splice(r+1,i-r);let a=n[r+1],o=n[r+2],s=n[r+3];if(a!==`..`||!o||o===`.`||o===`..`||!s||s===`.`||s===`..`)continue;t=!0,n.splice(r,1);let c=n.slice(0);c[r]=`**`,e.push(c),r--}if(!this.preserveMultipleSlashes){for(let e=1;e<n.length-1;e++){let r=n[e];e===1&&r===``&&n[0]===``||(r===`.`||r===``)&&(t=!0,n.splice(e,1),e--)}n[0]===`.`&&n.length===2&&(n[1]===`.`||n[1]===``)&&(t=!0,n.pop())}let i=0;for(;(i=n.indexOf(`..`,i+1))!==-1;){let e=n[i-1];if(e&&e!==`.`&&e!==`..`&&e!==`**`){t=!0;let e=i===1&&n[i+1]===`**`?[`.`]:[];n.splice(i-1,2,...e),n.length===0&&n.push(``),i-=2}}}}while(t);return e}secondPhasePreProcess(e){for(let t=0;t<e.length-1;t++)for(let n=t+1;n<e.length;n++){let r=this.partsMatch(e[t],e[n],!this.preserveMultipleSlashes);if(r){e[t]=[],e[n]=r;break}}return e.filter(e=>e.length)}partsMatch(e,t,n=!1){let r=0,i=0,a=[],o=``;for(;r<e.length&&i<t.length;)if(e[r]===t[i])a.push(o===`b`?t[i]:e[r]),r++,i++;else if(n&&e[r]===`**`&&t[i]===e[r+1])a.push(e[r]),r++;else if(n&&t[i]===`**`&&e[r]===t[i+1])a.push(t[i]),i++;else if(e[r]===`*`&&t[i]&&(this.options.dot||!t[i].startsWith(`.`))&&t[i]!==`**`){if(o===`b`)return!1;o=`a`,a.push(e[r]),r++,i++}else if(t[i]===`*`&&e[r]&&(this.options.dot||!e[r].startsWith(`.`))&&e[r]!==`**`){if(o===`a`)return!1;o=`b`,a.push(t[i]),r++,i++}else return!1;return e.length===t.length&&a}parseNegate(){if(this.nonegate)return;let e=this.pattern,t=!1,n=0;for(let r=0;r<e.length&&e.charAt(r)===`!`;r++)t=!t,n++;n&&(this.pattern=e.slice(n)),this.negate=t}matchOne(e,t,n=!1){let r=0,i=0;if(this.isWindows){let n=typeof e[0]==`string`&&/^[a-z]:$/i.test(e[0]),a=!n&&e[0]===``&&e[1]===``&&e[2]===`?`&&/^[a-z]:$/i.test(e[3]),o=typeof t[0]==`string`&&/^[a-z]:$/i.test(t[0]),s=!o&&t[0]===``&&t[1]===``&&t[2]===`?`&&typeof t[3]==`string`&&/^[a-z]:$/i.test(t[3]),c=a?3:n?0:void 0,l=s?3:o?0:void 0;if(typeof c==`number`&&typeof l==`number`){let[n,a]=[e[c],t[l]];n.toLowerCase()===a.toLowerCase()&&(t[l]=n,i=l,r=c)}}let{optimizationLevel:a=1}=this.options;return a>=2&&(e=this.levelTwoFileOptimize(e)),t.includes(Du)?this.#e(e,t,n,r,i):this.#n(e,t,n,r,i)}#e(e,t,n,r,i){let a=t.indexOf(Du,i),o=t.lastIndexOf(Du),[s,c,l]=n?[t.slice(i,a),t.slice(a+1),[]]:[t.slice(i,a),t.slice(a+1,o),t.slice(o+1)];if(s.length){let t=e.slice(r,r+s.length);if(!this.#n(t,s,n,0,0))return!1;r+=s.length,i+=s.length}let u=0;if(l.length){if(l.length+r>e.length)return!1;let t=e.length-l.length;if(this.#n(e,l,n,t,0))u=l.length;else{if(e[e.length-1]!==``||r+l.length===e.length||(t--,!this.#n(e,l,n,t,0)))return!1;u=l.length+1}}if(!c.length){let t=!!u;for(let n=r;n<e.length-u;n++){let r=String(e[n]);if(t=!0,r===`.`||r===`..`||!this.options.dot&&r.startsWith(`.`))return!1}return n||t}let d=[[[],0]],f=d[0],p=0,m=[0];for(let e of c)e===Du?(m.push(p),f=[[],0],d.push(f)):(f[0].push(e),p++);let h=d.length-1,g=e.length-u;for(let e of d)e[1]=g-(m[h--]+e[0].length);return!!this.#t(e,d,r,0,n,0,!!u)}#t(e,t,n,r,i,a,o){let s=t[r];if(!s){for(let t=n;t<e.length;t++){o=!0;let n=e[t];if(n===`.`||n===`..`||!this.options.dot&&n.startsWith(`.`))return!1}return o}let[c,l]=s;for(;n<=l;){if(this.#n(e.slice(0,n+c.length),c,i,n,0)&&a<this.maxGlobstarRecursion){let s=this.#t(e,t,n+c.length,r+1,i,a+1,o);if(s!==!1)return s}let s=e[n];if(s===`.`||s===`..`||!this.options.dot&&s.startsWith(`.`))return!1;n++}return i||null}#n(e,t,n,r,i){let a,o,s,c;for(a=r,o=i,c=e.length,s=t.length;a<c&&o<s;a++,o++){this.debug(`matchOne loop`);let n=t[o],r=e[a];if(this.debug(t,n,r),n===!1||n===Du)return!1;let i;if(typeof n==`string`?(i=r===n,this.debug(`string match`,n,r,i)):(i=n.test(r),this.debug(`pattern match`,n,r,i)),!i)return!1}if(a===c&&o===s)return!0;if(a===c)return n;if(o===s)return a===c-1&&e[a]===``;throw Error(`wtf?`)}braceExpand(){return ku(this.pattern,this.options)}parse(e){Pl(e);let t=this.options;if(e===`**`)return Du;if(e===``)return``;let n,r=null;(n=e.match(hu))?r=t.dot?_u:gu:(n=e.match(au))?r=(t.nocase?t.dot?lu:cu:t.dot?su:ou)(n[1]):(n=e.match(vu))?r=(t.nocase?t.dot?bu:yu:t.dot?xu:Su)(n):(n=e.match(uu))?r=t.dot?fu:du:(n=e.match(pu))&&(r=mu);let i=nu.fromGlob(e,this.options).toMMPattern();return r&&typeof i==`object`&&Reflect.defineProperty(i,"test",{value:r}),i}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let e=this.set;if(!e.length)return this.regexp=!1,this.regexp;let t=this.options,n=t.noglobstar?`[^/]*?`:t.dot?`(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?`:`(?:(?!(?:\\/|^)\\.).)*?`,r=new Set(t.nocase?[`i`]:[]),i=e.map(e=>{let t=e.map(e=>{if(e instanceof RegExp)for(let t of e.flags.split(``))r.add(t);return typeof e==`string`?ju(e):e===Du?Du:e._src});t.forEach((e,r)=>{let i=t[r+1],a=t[r-1];e!==Du||a===Du||(a===void 0?i!==void 0&&i!==Du?t[r+1]=`(?:\\/|`+n+`\\/)?`+i:t[r]=n:i===void 0?t[r-1]=a+`(?:\\/|\\/`+n+`)?`:i!==Du&&(t[r-1]=a+`(?:\\/|\\/`+n+`\\/)`+i,t[r+1]=Du))});let i=t.filter(e=>e!==Du);if(this.partial&&i.length>=1){let e=[];for(let t=1;t<=i.length;t++)e.push(i.slice(0,t).join(`/`));return`(?:`+e.join(`|`)+`)`}return i.join(`/`)}).join(`|`),[a,o]=e.length>1?[`(?:`,`)`]:[``,``];i=`^`+a+i+o+`$`,this.partial&&(i=`^(?:\\/|`+a+i.slice(1,-1)+o+`)$`),this.negate&&(i=`^(?!`+i+`).+$`);try{this.regexp=new RegExp(i,[...r].join(``))}catch{this.regexp=!1}return this.regexp}slashSplit(e){return this.preserveMultipleSlashes?e.split(`/`):this.isWindows&&/^\/\/[^/]+/.test(e)?[``,...e.split(/\/+/)]:e.split(/\/+/)}match(e,t=this.partial){if(this.debug(`match`,e,this.pattern),this.comment)return!1;if(this.empty)return e===``;if(e===`/`&&t)return!0;let n=this.options;this.isWindows&&(e=e.split(`\\`).join(`/`));let r=this.slashSplit(e);this.debug(this.pattern,`split`,r);let i=this.set;this.debug(this.pattern,`set`,i);let a=r[r.length-1];if(!a)for(let e=r.length-2;!a&&e>=0;e--)a=r[e];for(let e of i){let i=r;if(n.matchBase&&e.length===1&&(i=[a]),this.matchOne(i,e,t))return n.flipNegate?!0:!this.negate}return n.flipNegate?!1:this.negate}static defaults(e){return iu.defaults(e).Minimatch}};iu.AST=nu,iu.Minimatch=Mu,iu.escape=ru,iu.unescape=Bl;var Nu=n(((e,t)=>{let n=process||{},r=n.argv||[],i=n.env||{},a=!(i.NO_COLOR||r.includes(`--no-color`))&&(!!i.FORCE_COLOR||r.includes(`--color`)||n.platform===`win32`||(n.stdout||{}).isTTY&&i.TERM!==`dumb`||!!i.CI),o=(e,t,n=e)=>r=>{let i=``+r,a=i.indexOf(t,e.length);return~a?e+s(i,t,n,a)+t:e+i+t},s=(e,t,n,r)=>{let i=``,a=0;do i+=e.substring(a,r)+n,a=r+t.length,r=e.indexOf(t,a);while(~r);return i+e.substring(a)},c=(e=a)=>{let t=e?o:()=>String;return{isColorSupported:e,reset:t(`\x1B[0m`,`\x1B[0m`),bold:t(`\x1B[1m`,`\x1B[22m`,`\x1B[22m\x1B[1m`),dim:t(`\x1B[2m`,`\x1B[22m`,`\x1B[22m\x1B[2m`),italic:t(`\x1B[3m`,`\x1B[23m`),underline:t(`\x1B[4m`,`\x1B[24m`),inverse:t(`\x1B[7m`,`\x1B[27m`),hidden:t(`\x1B[8m`,`\x1B[28m`),strikethrough:t(`\x1B[9m`,`\x1B[29m`),black:t(`\x1B[30m`,`\x1B[39m`),red:t(`\x1B[31m`,`\x1B[39m`),green:t(`\x1B[32m`,`\x1B[39m`),yellow:t(`\x1B[33m`,`\x1B[39m`),blue:t(`\x1B[34m`,`\x1B[39m`),magenta:t(`\x1B[35m`,`\x1B[39m`),cyan:t(`\x1B[36m`,`\x1B[39m`),white:t(`\x1B[37m`,`\x1B[39m`),gray:t(`\x1B[90m`,`\x1B[39m`),bgBlack:t(`\x1B[40m`,`\x1B[49m`),bgRed:t(`\x1B[41m`,`\x1B[49m`),bgGreen:t(`\x1B[42m`,`\x1B[49m`),bgYellow:t(`\x1B[43m`,`\x1B[49m`),bgBlue:t(`\x1B[44m`,`\x1B[49m`),bgMagenta:t(`\x1B[45m`,`\x1B[49m`),bgCyan:t(`\x1B[46m`,`\x1B[49m`),bgWhite:t(`\x1B[47m`,`\x1B[49m`),blackBright:t(`\x1B[90m`,`\x1B[39m`),redBright:t(`\x1B[91m`,`\x1B[39m`),greenBright:t(`\x1B[92m`,`\x1B[39m`),yellowBright:t(`\x1B[93m`,`\x1B[39m`),blueBright:t(`\x1B[94m`,`\x1B[39m`),magentaBright:t(`\x1B[95m`,`\x1B[39m`),cyanBright:t(`\x1B[96m`,`\x1B[39m`),whiteBright:t(`\x1B[97m`,`\x1B[39m`),bgBlackBright:t(`\x1B[100m`,`\x1B[49m`),bgRedBright:t(`\x1B[101m`,`\x1B[49m`),bgGreenBright:t(`\x1B[102m`,`\x1B[49m`),bgYellowBright:t(`\x1B[103m`,`\x1B[49m`),bgBlueBright:t(`\x1B[104m`,`\x1B[49m`),bgMagentaBright:t(`\x1B[105m`,`\x1B[49m`),bgCyanBright:t(`\x1B[106m`,`\x1B[49m`),bgWhiteBright:t(`\x1B[107m`,`\x1B[49m`)}};t.exports=c(),t.exports.createColors=c})),Pu=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{SYMBOL_FOR_REQ_CONTEXT:()=>u,getContext:()=>d}),t.exports=c(l);let u=Symbol.for(`@vercel/request-context`);function d(){return globalThis[u]?.get?.()??{}}0&&(t.exports={SYMBOL_FOR_REQ_CONTEXT:u,getContext:d})})),Fu=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{getVercelOidcTokenSync:()=>d}),t.exports=c(l);var u=Pu();function d(){let e=(0,u.getContext)().headers?.[`x-vercel-oidc-token`]??process.env.VERCEL_OIDC_TOKEN;if(!e)throw Error(`The 'x-vercel-oidc-token' header is missing from the request.`);return e}0&&(t.exports={getVercelOidcTokenSync:d})})),Iu=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{VercelOidcTokenError:()=>u}),t.exports=c(l);var u=class extends Error{constructor(e,t){super(e),this.name=`VercelOidcTokenError`,this.cause=t}toString(){return this.cause?`${this.name}: ${this.message}: ${this.cause}`:`${this.name}: ${this.message}`}};0&&(t.exports={VercelOidcTokenError:u})})),Lu=n(((t,n)=>{var r=Object.defineProperty,i=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,s=(e,t)=>{for(var n in t)r(e,n,{get:t[n],enumerable:!0})},c=(e,t,n,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of a(t))!o.call(e,c)&&c!==n&&r(e,c,{get:()=>t[c],enumerable:!(s=i(t,c))||s.enumerable});return e},l=e=>c(r({},`__esModule`,{value:!0}),e),u={};s(u,{getVercelOidcToken:()=>p}),n.exports=l(u);var d=Fu(),f=Iu();async function p(t){let n=``,r;try{n=(0,d.getVercelOidcTokenSync)()}catch(e){r=e}try{let[{getTokenPayload:r,isExpired:i},{refreshToken:a}]=await Promise.all([await Promise.resolve().then(()=>e(Hu())),await import(`../../_chunks/workflow/token-Bm-WLAUB.js`).then(t=>e(t.default))]);(!n||i(r(n),t?.expirationBufferMs))&&(await a(t),n=(0,d.getVercelOidcTokenSync)())}catch(e){let t=r instanceof Error?r.message:``;throw e instanceof Error&&(t=`${t}
|
|
106
|
-
${e.message}`),t?new f.VercelOidcTokenError(t):e}return n}0&&(n.exports={getVercelOidcToken:p})})),Ru=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{AccessTokenMissingError:()=>u,RefreshAccessTokenFailedError:()=>d}),t.exports=c(l);var u=class extends Error{constructor(){super(`No authentication found. Please log in with the Vercel CLI (vercel login).`),this.name=`AccessTokenMissingError`}},d=class extends Error{constructor(e){super(`Failed to refresh authentication token.`,{cause:e}),this.name=`RefreshAccessTokenFailedError`}};0&&(t.exports={AccessTokenMissingError:u,RefreshAccessTokenFailedError:d})})),zu=n(((e,n)=>{var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let s of o(t))!c.call(e,s)&&s!==n&&i(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)),f=e=>u(i({},`__esModule`,{value:!0}),e),p={};l(p,{findRootDir:()=>v,getUserDataDir:()=>y}),n.exports=f(p);var m=d(t(`path`)),h=d(t(`fs`)),g=d(t(`os`)),_=Iu();function v(){try{let e=process.cwd();for(;e!==m.default.dirname(e);){let t=m.default.join(e,`.vercel`);if(h.default.existsSync(t))return e;e=m.default.dirname(e)}}catch{throw new _.VercelOidcTokenError(`Token refresh only supported in node server environments`)}return null}function y(){if(process.env.XDG_DATA_HOME)return process.env.XDG_DATA_HOME;switch(g.default.platform()){case`darwin`:return m.default.join(g.default.homedir(),`Library/Application Support`);case`linux`:return m.default.join(g.default.homedir(),`.local/share`);case`win32`:return process.env.LOCALAPPDATA?process.env.LOCALAPPDATA:null;default:return null}}0&&(n.exports={findRootDir:v,getUserDataDir:y})})),Bu=n(((e,n)=>{var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let s of o(t))!c.call(e,s)&&s!==n&&i(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)),f=e=>u(i({},`__esModule`,{value:!0}),e),p={};l(p,{isValidAccessToken:()=>b,readAuthConfig:()=>v,writeAuthConfig:()=>y}),n.exports=f(p);var m=d(t(`fs`)),h=d(t(`path`)),g=Hu();function _(){let e=(0,g.getVercelDataDir)();if(!e)throw Error(`Unable to find Vercel CLI data directory. Your platform: ${process.platform}. Supported: darwin, linux, win32.`);return h.join(e,`auth.json`)}function v(){try{let e=_();if(!m.existsSync(e))return null;let t=m.readFileSync(e,`utf8`);return t?JSON.parse(t):null}catch{return null}}function y(e){let t=_(),n=h.dirname(t);m.existsSync(n)||m.mkdirSync(n,{mode:504,recursive:!0}),m.writeFileSync(t,JSON.stringify(e,null,2),{mode:384})}function b(e,t=0){if(!e.token)return!1;if(typeof e.expiresAt!=`number`)return!0;let n=Math.floor(Date.now()/1e3),r=t/1e3;return e.expiresAt>=n+r}0&&(n.exports={isValidAccessToken:b,readAuthConfig:v,writeAuthConfig:y})})),Vu=n(((e,n)=>{var r=Object.defineProperty,i=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,s=(e,t)=>{for(var n in t)r(e,n,{get:t[n],enumerable:!0})},c=(e,t,n,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of a(t))!o.call(e,c)&&c!==n&&r(e,c,{get:()=>t[c],enumerable:!(s=i(t,c))||s.enumerable});return e},l=e=>c(r({},`__esModule`,{value:!0}),e),u={};s(u,{processTokenResponse:()=>g,refreshTokenRequest:()=>h}),n.exports=l(u);var d=t(`os`);let f=`@vercel/oidc node-${process.version} ${(0,d.platform)()} (${(0,d.arch)()}) ${(0,d.hostname)()}`,p=null;async function m(){if(p)return p;let e=await fetch(`https://vercel.com/.well-known/openid-configuration`,{headers:{"user-agent":f}});if(!e.ok)throw Error(`Failed to discover OAuth endpoints`);let t=await e.json();if(!t||typeof t.token_endpoint!=`string`)throw Error(`Invalid OAuth discovery response`);let n=t.token_endpoint;return p=n,n}async function h(e){let t=await m();return await fetch(t,{method:`POST`,headers:{"Content-Type":`application/x-www-form-urlencoded`,"user-agent":f},body:new URLSearchParams({client_id:`cl_HYyOPBNtFMfHhaUn9L4QPfTZz6TP47bp`,grant_type:`refresh_token`,...e})})}async function g(e){let t=await e.json();if(!e.ok){let e=typeof t==`object`&&t&&`error`in t?String(t.error):`Token refresh failed`;return[Error(e)]}return typeof t!=`object`||!t?[Error(`Invalid token response`)]:typeof t.access_token==`string`?t.token_type===`Bearer`?typeof t.expires_in==`number`?[null,t]:[Error(`Missing expires_in in response`)]:[Error(`Invalid token_type in response`)]:[Error(`Missing access_token in response`)]}0&&(n.exports={processTokenResponse:g,refreshTokenRequest:h})})),Hu=n(((e,n)=>{var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let s of o(t))!c.call(e,s)&&s!==n&&i(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)),f=e=>u(i({},`__esModule`,{value:!0}),e),p={};l(p,{assertVercelOidcTokenResponse:()=>w,findProjectInfo:()=>T,getTokenPayload:()=>O,getVercelDataDir:()=>x,getVercelOidcToken:()=>C,getVercelToken:()=>S,isExpired:()=>k,loadToken:()=>D,saveToken:()=>E}),n.exports=f(p);var m=d(t(`path`)),h=d(t(`fs`)),g=Iu(),_=zu(),v=Bu(),y=Vu(),b=Ru();function x(){let e=(0,_.getUserDataDir)();return e?m.join(e,`com.vercel.cli`):null}async function S(e){let t=(0,v.readAuthConfig)();if(!t?.token)throw new b.AccessTokenMissingError;if((0,v.isValidAccessToken)(t,e?.expirationBufferMs))return t.token;if(!t.refreshToken)throw(0,v.writeAuthConfig)({}),new b.RefreshAccessTokenFailedError(`No refresh token available`);try{let e=await(0,y.refreshTokenRequest)({refresh_token:t.refreshToken}),[n,r]=await(0,y.processTokenResponse)(e);if(n||!r)throw(0,v.writeAuthConfig)({}),new b.RefreshAccessTokenFailedError(n);let i={token:r.access_token,expiresAt:Math.floor(Date.now()/1e3)+r.expires_in};return r.refresh_token&&(i.refreshToken=r.refresh_token),(0,v.writeAuthConfig)(i),i.token}catch(e){throw(0,v.writeAuthConfig)({}),e instanceof b.AccessTokenMissingError||e instanceof b.RefreshAccessTokenFailedError?e:new b.RefreshAccessTokenFailedError(e)}}async function C(e,t,n){let r=`https://api.vercel.com/v1/projects/${t}/token?source=vercel-oidc-refresh${n?`&teamId=${n}`:``}`,i=await fetch(r,{method:`POST`,headers:{Authorization:`Bearer ${e}`}});if(!i.ok)throw new g.VercelOidcTokenError(`Failed to refresh OIDC token: ${i.statusText}`);let a=await i.json();return w(a),a}function w(e){if(!e||typeof e!=`object`)throw TypeError("Vercel OIDC token is malformed. Expected an object. Please run `vc env pull` and try again");if(!(`token`in e)||typeof e.token!=`string`)throw TypeError("Vercel OIDC token is malformed. Expected a string-valued token property. Please run `vc env pull` and try again")}function T(){let e=(0,_.findRootDir)();if(!e)throw new g.VercelOidcTokenError("Unable to find project root directory. Have you linked your project with `vc link?`");let t=m.join(e,`.vercel`,`project.json`);if(!h.existsSync(t))throw new g.VercelOidcTokenError("project.json not found, have you linked your project with `vc link?`");let n=JSON.parse(h.readFileSync(t,`utf8`));if(typeof n.projectId!=`string`&&typeof n.orgId!=`string`)throw TypeError("Expected a string-valued projectId property. Try running `vc link` to re-link your project.");return{projectId:n.projectId,teamId:n.orgId}}function E(e,t){let n=(0,_.getUserDataDir)();if(!n)throw new g.VercelOidcTokenError(`Unable to find user data directory. Please reach out to Vercel support.`);let r=m.join(n,`com.vercel.token`,`${t}.json`),i=JSON.stringify(e);h.mkdirSync(m.dirname(r),{mode:504,recursive:!0}),h.writeFileSync(r,i),h.chmodSync(r,432)}function D(e){let t=(0,_.getUserDataDir)();if(!t)throw new g.VercelOidcTokenError(`Unable to find user data directory. Please reach out to Vercel support.`);let n=m.join(t,`com.vercel.token`,`${e}.json`);if(!h.existsSync(n))return null;let r=JSON.parse(h.readFileSync(n,`utf8`));return w(r),r}function O(e){let t=e.split(`.`);if(t.length!==3)throw new g.VercelOidcTokenError("Invalid token. Please run `vc env pull` and try again");let n=t[1].replace(/-/g,`+`).replace(/_/g,`/`),r=n.padEnd(n.length+(4-n.length%4)%4,`=`);return JSON.parse(Buffer.from(r,`base64`).toString(`utf8`))}function k(e,t=0){return e.exp*1e3<Date.now()+t}0&&(n.exports={assertVercelOidcTokenResponse:w,findProjectInfo:T,getTokenPayload:O,getVercelDataDir:x,getVercelOidcToken:C,getVercelToken:S,isExpired:k,loadToken:D,saveToken:E})})),Uu=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{AccessTokenMissingError:()=>p.AccessTokenMissingError,RefreshAccessTokenFailedError:()=>p.RefreshAccessTokenFailedError,getContext:()=>f.getContext,getVercelOidcToken:()=>u.getVercelOidcToken,getVercelOidcTokenSync:()=>d.getVercelOidcTokenSync,getVercelToken:()=>m.getVercelToken}),t.exports=c(l);var u=Lu(),d=Fu(),f=Pu(),p=Ru(),m=Hu();0&&(t.exports={AccessTokenMissingError,RefreshAccessTokenFailedError,getContext,getVercelOidcToken,getVercelOidcTokenSync,getVercelToken})})),Wu=e(Nu(),1),Gu=Uu();async function Ku(e){let t=0,n=e.getReader(),r=[];try{for(;;){let{done:e,value:i}=await n.read();if(e)break;r.push(i),t+=i.length}}finally{n.releaseLock()}return Buffer.concat(r,t)}var qu=class{contentType=`application/json`;replacer;reviver;constructor(e={}){this.replacer=e.replacer,this.reviver=e.reviver}serialize(e){return Buffer.from(JSON.stringify(e,this.replacer),`utf8`)}async deserialize(e){let t=await Ku(e);return JSON.parse(t.toString(`utf8`),this.reviver)}},Ju=class extends Error{constructor(e){super(`Message ${e} not found`),this.name=`MessageNotFoundError`}},Yu=class extends Error{constructor(e,t){super(`Message ${e} not available for processing${t?`: ${t}`:``}`),this.name=`MessageNotAvailableError`}},Xu=class extends Error{constructor(e,t){super(`Message ${e} is corrupted: ${t}`),this.name=`MessageCorruptedError`}},Zu=class extends Error{retryAfter;constructor(e=`Too many requests`,t){super(e),this.name=`TooManyRequestsError`,this.retryAfter=t}},Qu=class extends Error{constructor(e=`Missing or invalid authentication token`){super(e),this.name=`UnauthorizedError`}},$u=class extends Error{constructor(e=`Queue environment doesn't match token environment`){super(e),this.name=`ForbiddenError`}},ed=class extends Error{constructor(e){super(e),this.name=`BadRequestError`}},td=class extends Error{constructor(e=`Unexpected server error`){super(e),this.name=`InternalServerError`}},nd=class extends Error{constructor(e,t=1,n=10){super(`Invalid limit: ${e}. Limit must be between ${t} and ${n}.`),this.name=`InvalidLimitError`}},rd=class extends Error{constructor(e){super(`Message ${e} has already been processed`),this.name=`MessageAlreadyProcessedError`}},id=class extends Error{idempotencyKey;constructor(e,t){super(e),this.name=`DuplicateMessageError`,this.idempotencyKey=t}},ad=class extends Error{deploymentId;constructor(e,t){super(e),this.name=`ConsumerDiscoveryError`,this.deploymentId=t}},od=class extends Error{constructor(e=`Consumer registry not configured`){super(e),this.name=`ConsumerRegistryNotConfiguredError`}},sd=300,cd=30,ld=60,ud=10,dd=3e3,fd=3,pd=250;function md(e){return Math.min(ld,Math.max(ud,e/5))}var hd=class{client;topicName;consumerGroupName;visibilityTimeout;constructor(e,t,n,r={}){this.client=e,this.topicName=t,this.consumerGroupName=n,this.visibilityTimeout=Math.max(cd,r.visibilityTimeoutSeconds??sd)}isClientError(e){return e instanceof Yu||e instanceof Ju||e instanceof ed||e instanceof Qu||e instanceof $u}isNetworkError(e){return e instanceof TypeError}async directiveCallWithRetries(e){let t;for(let n=1;n<=fd;n++)try{return await e()}catch(e){if(t=e,n===fd)throw e;if(e instanceof Zu){if(e.retryAfter===void 0)throw e;await new Promise(t=>setTimeout(t,e.retryAfter*1e3));continue}if(!this.isNetworkError(e))throw e;let r=pd*n,i=r/2+r/2*Math.random();await new Promise(e=>setTimeout(e,i))}throw t}startVisibilityExtension(e,t){let n=!0,r=!1,i,a=null,o=md(this.visibilityTimeout)*1e3,s=o;if(t?.visibilityDeadline){let e=t.visibilityDeadline.getTime()-Date.now();s=e>0?md(e/1e3)*1e3:0}let c=new Promise(e=>{i=e}),l=()=>{r||(r=!0,i())},u=async()=>{if(!n){l();return}try{await this.client.changeVisibility({queueName:this.topicName,consumerGroup:this.consumerGroupName,receiptHandle:e,visibilityTimeoutSeconds:this.visibilityTimeout}),n?a=setTimeout(()=>u(),o):l()}catch(t){if(this.isClientError(t)){console.error(`Visibility extension failed with client error for receipt handle ${e} (stopping retries):`,t),l();return}console.error(`Failed to extend visibility for receipt handle ${e} (will retry in ${dd/1e3}s):`,t),n?a=setTimeout(()=>u(),dd):l()}};return a=setTimeout(()=>u(),s),async(e=!1)=>{n=!1,a&&=(clearTimeout(a),null),e?await c:l()}}async finalizePayload(e){let t=this.client.getTransport();if(t.finalize&&e!=null)try{await t.finalize(e)}catch(e){console.warn(`Failed to finalize message payload:`,e)}}async processMessage(e,t,n){let r=this.startVisibilityExtension(e.receiptHandle,n),i={messageId:e.messageId,deliveryCount:e.deliveryCount,createdAt:e.createdAt,expiresAt:e.expiresAt??new Date(e.createdAt.getTime()+864e5),topicName:this.topicName,consumerGroup:this.consumerGroupName,region:this.client.getRegion()};try{await t(e.payload,i),await r(),await this.client.acknowledgeMessage({queueName:this.topicName,consumerGroup:this.consumerGroupName,receiptHandle:e.receiptHandle})}catch(t){if(await r(),n?.retry){let r;try{r=n.retry(t,i)}catch(e){console.warn(`retry handler threw:`,e)}if(r){if(`acknowledge`in r&&r.acknowledge){try{await this.directiveCallWithRetries(()=>this.client.acknowledgeMessage({queueName:this.topicName,consumerGroup:this.consumerGroupName,receiptHandle:e.receiptHandle}))}catch(e){console.warn(`Failed to acknowledge message:`,e)}await this.finalizePayload(e.payload);return}if(`afterSeconds`in r&&typeof r.afterSeconds==`number`){try{await this.directiveCallWithRetries(()=>this.client.changeVisibility({queueName:this.topicName,consumerGroup:this.consumerGroupName,receiptHandle:e.receiptHandle,visibilityTimeoutSeconds:r.afterSeconds}))}catch(e){console.warn(`Failed to reschedule message for retry:`,e)}await this.finalizePayload(e.payload);return}}}throw await this.finalizePayload(e.payload),t}}async consumeMessage(e,t,n){await this.processMessage(t,e,n)}async consume(e,t){let n=t?.retry;if(t&&`messageId`in t){let r=await this.client.receiveMessageById({queueName:this.topicName,consumerGroup:this.consumerGroupName,messageId:t.messageId,visibilityTimeoutSeconds:this.visibilityTimeout});return await this.processMessage(r.message,e,{retry:n}),1}else{let r=t&&`limit`in t?t.limit:1,i=0;for await(let t of this.client.receiveMessages({queueName:this.topicName,consumerGroup:this.consumerGroupName,visibilityTimeoutSeconds:this.visibilityTimeout,limit:r}))i++,await this.processMessage(t,e,{retry:n});return i}}get name(){return this.consumerGroupName}get topic(){return this.topicName}},gd=class{client;topicName;constructor(e,t){this.client=e,this.topicName=t}async publish(e,t){let n=await this.client.sendMessage({queueName:this.topicName,payload:e,idempotencyKey:t?.idempotencyKey,retentionSeconds:t?.retentionSeconds,delaySeconds:t?.delaySeconds,headers:t?.headers});return n.messageId&&jd()&&vf(this.topicName,n.messageId,this.client.getRegion(),t?.delaySeconds,t?.retentionSeconds),{messageId:n.messageId}}consumerGroup(e,t){return new hd(this.client,this.topicName,e,t)}get name(){return this.topicName}},_d=`com.vercel.queue.v1beta`,vd=`com.vercel.queue.v2beta`;function yd(e,t){let n=t.slice(0,-1);return e.startsWith(n)}function bd(e){return typeof e==`object`&&!!e}function xd(e,t){if(!t||!t.includes(`application/cloudevents+json`))throw Error(`Invalid content type: expected 'application/cloudevents+json'`);if(!bd(e)||!e.type||!e.source||!e.id||!bd(e.data))throw Error(`Invalid CloudEvent: missing required fields`);if(e.type!==`com.vercel.queue.v1beta`)throw Error(`Invalid CloudEvent type: expected '${_d}', got '${String(e.type)}'`);let{data:n}=e,r=[];if(`queueName`in n||r.push(`queueName`),`consumerGroup`in n||r.push(`consumerGroup`),`messageId`in n||r.push(`messageId`),r.length>0)throw Error(`Missing required CloudEvent data fields: ${r.join(`, `)}`);return{queueName:String(n.queueName),consumerGroup:String(n.consumerGroup),messageId:String(n.messageId)}}function Sd(e,t){if(e instanceof Headers)return e.get(t);let n=e[t];return Array.isArray(n)?n[0]??null:n??null}function Cd(e){let t=Sd(e,`ce-type`);if(t!==`com.vercel.queue.v2beta`)throw Error(`Invalid CloudEvent type: expected '${vd}', got '${t}'`);let n=Sd(e,`ce-vqsqueuename`),r=Sd(e,`ce-vqsconsumergroup`),i=Sd(e,`ce-vqsmessageid`),a=[];if(n||a.push(`ce-vqsqueuename`),r||a.push(`ce-vqsconsumergroup`),i||a.push(`ce-vqsmessageid`),a.length>0)throw Error(`Missing required CloudEvent headers: ${a.join(`, `)}`);let o=Sd(e,`ce-vqsregion`)??void 0;if(o!==void 0&&!/^[a-z]{2,5}[0-9]{1,2}$/.test(o))throw Error(`Invalid ce-vqsregion header: ${JSON.stringify(o)}. Region must match /^[a-z]{2,5}[0-9]{1,2}$/ (e.g. "iad1", "lhr1").`);let s={queueName:n,consumerGroup:r,messageId:i,region:o},c=Sd(e,`ce-vqsreceipthandle`);if(!c)return s;let l={...s,receiptHandle:c},u=Sd(e,`ce-vqsdeliverycount`);u&&(l.deliveryCount=parseInt(u,10));let d=Sd(e,`ce-vqscreatedat`);d&&(l.createdAt=d);let f=Sd(e,`ce-vqsexpiresat`);f&&(l.expiresAt=f);let p=Sd(e,`content-type`);p&&(l.contentType=p);let m=Sd(e,`ce-vqsvisibilitydeadline`);return m&&(l.visibilityDeadline=m),l}function wd(e,t){if(Sd(t,`ce-type`)===`com.vercel.queue.v2beta`){let n=Cd(t);return`receiptHandle`in n&&(n.parsedPayload=e),n}return xd(e,Sd(t,`content-type`))}async function Td(e){if(e.headers.get(`ce-type`)===`com.vercel.queue.v2beta`){let t=Cd(e.headers);return`receiptHandle`in t&&e.body&&(t.rawBody=e.body),t}let t;try{t=await e.json()}catch{throw Error(`Failed to parse CloudEvent from request body`)}let n={};return e.headers.forEach((e,t)=>{n[t]=e}),wd(t,n)}async function Ed(e,t,n){let{queueName:r,consumerGroup:i,messageId:a}=t;if(!n?.client)throw Error(`HandleCallbackOptions.client is required`);let o=If(n.client);t.region&&(o=o.withRegion(t.region));let s=new gd(o,r).consumerGroup(i,n?.visibilityTimeoutSeconds===void 0?void 0:{visibilityTimeoutSeconds:n.visibilityTimeoutSeconds});if(`receiptHandle`in t){let r=o.getTransport(),i;if(t.rawBody)i=await r.deserialize(t.rawBody);else if(t.parsedPayload!==void 0)i=t.parsedPayload;else throw Error(`Binary mode callback with receipt handle is missing payload`);let c={messageId:a,payload:i,deliveryCount:t.deliveryCount??1,createdAt:t.createdAt?new Date(t.createdAt):new Date,expiresAt:t.expiresAt?new Date(t.expiresAt):void 0,contentType:t.contentType??r.contentType,receiptHandle:t.receiptHandle},l=t.visibilityDeadline?new Date(t.visibilityDeadline):void 0;await s.consumeMessage(e,c,{visibilityDeadline:l,retry:n?.retry})}else await s.consume(e,{messageId:a,retry:n?.retry})}var Dd=Wu.default.cyan(`[queue]`),Od=Wu.default.green(`✓`),kd=Wu.default.red(`✗`),Ad=Wu.default.yellow(`↻`);function jd(){return process.env.NODE_ENV===`development`}var Md=Symbol.for(`@vercel/queue.devRouteMappings`);function Nd(e){let t=``;for(let n of e)n===`_`?t+=`__`:n===`/`?t+=`_S`:n===`.`?t+=`_D`:/[A-Za-z0-9-]/.test(n)?t+=n:t+=`_`+n.charCodeAt(0).toString(16).toUpperCase().padStart(2,`0`);return t}function Pd(){let e=globalThis;if(Md in e)return e[Md]??null;try{let t=lr.join(process.cwd(),`vercel.json`);if(!ur.existsSync(t))return e[Md]=null,null;let n=JSON.parse(ur.readFileSync(t,`utf-8`));if(!n.functions)return e[Md]=null,null;let r=[];for(let[e,t]of Object.entries(n.functions))if(t.experimentalTriggers){for(let n of t.experimentalTriggers)if(!(!n.type?.startsWith(`queue/`)||!n.topic)){if(n.type!==`queue/v2beta`){console.warn(`${Dd} Unsupported trigger type "${n.type}" for topic "${n.topic}" in ${e}. Use "queue/v2beta" instead.`);continue}r.push({filePath:e,topic:n.topic,consumer:Nd(e),retryAfterSeconds:n.retryAfterSeconds})}}return e[Md]=r.length>0?r:null,e[Md]}catch(t){return console.warn(`${Dd} Failed to read vercel.json:`,t),e[Md]=null,null}}function Fd(e){let t=Pd();return t?t.filter(t=>t.topic.includes(`*`)?yd(e,t.topic):t.topic===e):[]}function Id(e,t){return Fd(e).find(e=>e.consumer===t)?.retryAfterSeconds}function Ld(e){return/^src\/(app|pages|server)\//.test(e)?e.slice(4):null}function Rd(e,t){return e===t||iu(e,t)}function zd(e){let t=Pd();if(!t)return[];let n=process.cwd(),r;try{r=lr.relative(n,e)}catch{return[]}let i=r.replace(/\\/g,`/`),a=Ld(i);return t.filter(e=>Rd(i,e.filePath)||a!==null&&Rd(a,e.filePath))}function Bd(e){let t=e.match(/\((.+?):\d+:\d+\)/);if(t||=e.match(/at\s+(.+?):\d+:\d+/),!t)return null;let n=t[1].trim();if(n===`native`||n.startsWith(`node:`)||n.startsWith(`internal`))return null;if(n.startsWith(`file://`))try{n=new URL(n).pathname}catch{return null}return/^[a-zA-Z][a-zA-Z0-9+.-]*:\/\//.test(n)?null:(n.startsWith(`./`)&&(n=n.slice(2)),n)}var Vd;function Hd(){if(Vd)return Vd;try{let e=typeof __dirname<`u`?__dirname:lr.dirname(new URL(import.meta.url).pathname);Vd=lr.resolve(e,`..`)}catch{Vd=``}return Vd}function Ud(){let e=Error().stack;if(!e)return null;let t=e.split(`
|
|
107
|
-
`).slice(1),n=
|
|
105
|
+
`)(e,n),a=2),i===-1){let t=e.subarray(n);if(t.length>this.maxHeaderSize)throw new Sl(`Headers too large: ${t.length} > ${this.maxHeaderSize} bytes`);this.buffer=t;break}let o=e.subarray(n,i);this.currentHeaders=Tl(o);let s=this.createStreamingMessage();t.push(s),n=i+a,this.state=3;continue}if(this.state===0){if(r<this.openingBoundaryLength){if(e.length>this.maxBoundaryBuffer)throw new Sl(`Initial chunk too large for boundary detection: ${e.length} > ${this.maxBoundaryBuffer}`);this.buffer=e;break}if(this.findOpeningBoundary(e)!==0)throw new Sl(`Invalid multipart stream: missing initial boundary`);n=this.openingBoundaryLength,this.state=1}}return t}createStreamingMessage(){let e=new Headers(this.currentHeaders),t=new ReadableStream({start:e=>{this.currentPayloadController=e}});return this.currentHeaders=new Headers,{headers:e,payload:t}}writeBody(e){this.currentPayloadController&&this.currentPayloadController.enqueue(e)}finishMessage(){this.currentPayloadController&&=(this.currentPayloadController.close(),null)}closeCurrentPayload(e){if(this.currentPayloadController){try{e?this.currentPayloadController.error(e):this.currentPayloadController.close()}catch{}this.currentPayloadController=null}}};const Al=(e,t,n)=>{let r=e instanceof RegExp?jl(e,n):e,i=t instanceof RegExp?jl(t,n):t,a=r!==null&&i!=null&&Ml(r,i,n);return a&&{start:a[0],end:a[1],pre:n.slice(0,a[0]),body:n.slice(a[0]+r.length,a[1]),post:n.slice(a[1]+i.length)}},jl=(e,t)=>{let n=t.match(e);return n?n[0]:null},Ml=(e,t,n)=>{let r,i,a,o,s,c=n.indexOf(e),l=n.indexOf(t,c+1),u=c;if(c>=0&&l>0){if(e===t)return[c,l];for(r=[],a=n.length;u>=0&&!s;){if(u===c)r.push(u),c=n.indexOf(e,u+1);else if(r.length===1){let e=r.pop();e!==void 0&&(s=[e,l])}else i=r.pop(),i!==void 0&&i<a&&(a=i,o=l),l=n.indexOf(t,u+1);u=c<l&&c>=0?c:l}r.length&&o!==void 0&&(s=[a,o])}return s},Nl=`\0SLASH`+Math.random()+`\0`,Pl=`\0OPEN`+Math.random()+`\0`,Fl=`\0CLOSE`+Math.random()+`\0`,Il=`\0COMMA`+Math.random()+`\0`,Ll=`\0PERIOD`+Math.random()+`\0`,Rl=new RegExp(Nl,`g`),zl=new RegExp(Pl,`g`),Bl=new RegExp(Fl,`g`),Vl=new RegExp(Il,`g`),Hl=new RegExp(Ll,`g`),Ul=/\\\\/g,Wl=/\\{/g,Gl=/\\}/g,Kl=/\\,/g,ql=/\\\./g;function Jl(e){return isNaN(e)?e.charCodeAt(0):parseInt(e,10)}function Yl(e){return e.replace(Ul,Nl).replace(Wl,Pl).replace(Gl,Fl).replace(Kl,Il).replace(ql,Ll)}function Xl(e){return e.replace(Rl,`\\`).replace(zl,`{`).replace(Bl,`}`).replace(Vl,`,`).replace(Hl,`.`)}function Zl(e){if(!e)return[``];let t=[],n=Al(`{`,`}`,e);if(!n)return e.split(`,`);let{pre:r,body:i,post:a}=n,o=r.split(`,`);o[o.length-1]+=`{`+i+`}`;let s=Zl(a);return a.length&&(o[o.length-1]+=s.shift(),o.push.apply(o,s)),t.push.apply(t,o),t}function Ql(e,t={}){if(!e)return[];let{max:n=1e5}=t;return e.slice(0,2)===`{}`&&(e=`\\{\\}`+e.slice(2)),ru(Yl(e),n,!0).map(Xl)}function $l(e){return`{`+e+`}`}function eu(e){return/^-?0\d/.test(e)}function tu(e,t){return e<=t}function nu(e,t){return e>=t}function ru(e,t,n){let r=[],i=Al(`{`,`}`,e);if(!i)return[e];let a=i.pre,o=i.post.length?ru(i.post,t,!1):[``];if(/\$$/.test(i.pre))for(let e=0;e<o.length&&e<t;e++){let t=a+`{`+i.body+`}`+o[e];r.push(t)}else{let s=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(i.body),c=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(i.body),l=s||c,u=i.body.indexOf(`,`)>=0;if(!l&&!u)return i.post.match(/,(?!,).*\}/)?(e=i.pre+`{`+i.body+Fl+i.post,ru(e,t,!0)):[e];let d;if(l)d=i.body.split(/\.\./);else if(d=Zl(i.body),d.length===1&&d[0]!==void 0&&(d=ru(d[0],t,!1).map($l),d.length===1))return o.map(e=>i.pre+d[0]+e);let f;if(l&&d[0]!==void 0&&d[1]!==void 0){let e=Jl(d[0]),n=Jl(d[1]),r=Math.max(d[0].length,d[1].length),i=d.length===3&&d[2]!==void 0?Math.max(Math.abs(Jl(d[2])),1):1,a=tu;n<e&&(i*=-1,a=nu);let o=d.some(eu);f=[];for(let s=e;a(s,n)&&f.length<t;s+=i){let e;if(c)e=String.fromCharCode(s),e===`\\`&&(e=``);else if(e=String(s),o){let t=r-e.length;if(t>0){let n=Array(t+1).join(`0`);e=s<0?`-`+n+e.slice(1):n+e}}f.push(e)}}else{f=[];for(let e=0;e<d.length;e++)f.push.apply(f,ru(d[e],t,!1))}for(let e=0;e<f.length;e++)for(let i=0;i<o.length&&r.length<t;i++){let t=a+f[e]+o[i];(!n||l||t)&&r.push(t)}}return r}const iu=e=>{if(typeof e!=`string`)throw TypeError(`invalid pattern`);if(e.length>65536)throw TypeError(`pattern is too long`)},au={"[: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]},ou=e=>e.replace(/[[\]\\-]/g,`\\$&`),su=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`),cu=e=>e.join(``),lu=(e,t)=>{let n=t;if(e.charAt(n)!==`[`)throw Error(`not in a brace expression`);let r=[],i=[],a=n+1,o=!1,s=!1,c=!1,l=!1,u=n,d=``;WHILE:for(;a<e.length;){let t=e.charAt(a);if((t===`!`||t===`^`)&&a===n+1){l=!0,a++;continue}if(t===`]`&&o&&!c){u=a+1;break}if(o=!0,t===`\\`&&!c){c=!0,a++;continue}if(t===`[`&&!c){for(let[t,[o,c,l]]of Object.entries(au))if(e.startsWith(t,a)){if(d)return[`$.`,!1,e.length-n,!0];a+=t.length,l?i.push(o):r.push(o),s||=c;continue WHILE}}if(c=!1,d){t>d?r.push(ou(d)+`-`+ou(t)):t===d&&r.push(ou(t)),d=``,a++;continue}if(e.startsWith(`-]`,a+1)){r.push(ou(t+`-`)),a+=2;continue}if(e.startsWith(`-`,a+1)){d=t,a+=2;continue}r.push(ou(t)),a++}if(u<a)return[``,!1,0,!1];if(!r.length&&!i.length)return[`$.`,!1,e.length-n,!0];if(i.length===0&&r.length===1&&/^\\?.$/.test(r[0])&&!l)return[su(r[0].length===2?r[0].slice(-1):r[0]),!1,u-n,!1];let f=`[`+(l?`^`:``)+cu(r)+`]`,p=`[`+(l?``:`^`)+cu(i)+`]`;return[r.length&&i.length?`(`+f+`|`+p+`)`:r.length?f:p,s,u-n,!0]},uu=(e,{windowsPathsNoEscape:t=!1,magicalBraces:n=!0}={})=>n?t?e.replace(/\[([^/\\])\]/g,`$1`):e.replace(/((?!\\).|^)\[([^/\\])\]/g,`$1$2`).replace(/\\([^/])/g,`$1`):t?e.replace(/\[([^/\\{}])\]/g,`$1`):e.replace(/((?!\\).|^)\[([^/\\{}])\]/g,`$1$2`).replace(/\\([^/{}])/g,`$1`);var du;const fu=new Set([`!`,`?`,`+`,`*`,`@`]),pu=e=>fu.has(e),mu=e=>pu(e.type),hu=new Map([[`!`,[`@`]],[`?`,[`?`,`@`]],[`@`,[`@`]],[`*`,[`*`,`+`,`?`,`@`]],[`+`,[`+`,`@`]]]),gu=new Map([[`!`,[`?`]],[`@`,[`?`]],[`+`,[`?`,`*`]]]),_u=new Map([[`!`,[`?`,`@`]],[`?`,[`?`,`@`]],[`@`,[`?`,`@`]],[`*`,[`*`,`+`,`?`,`@`]],[`+`,[`+`,`@`,`?`,`*`]]]),vu=new Map([[`!`,new Map([[`!`,`@`]])],[`?`,new Map([[`*`,`*`],[`+`,`*`]])],[`@`,new Map([[`!`,`!`],[`?`,`?`],[`@`,`@`],[`*`,`*`],[`+`,`+`]])],[`+`,new Map([[`?`,`*`],[`*`,`*`]])]]),yu=`(?!\\.)`,bu=new Set([`[`,`.`]),xu=new Set([`..`,`.`]),Su=new Set(`().*{}+?[]^$\\!`),Cu=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`),wu=`[^/]+?`;let Tu=0;var Eu=class{type;#e;#t;#n=!1;#r=[];#i;#a;#o;#s=!1;#c;#l;#u=!1;id=++Tu;get depth(){return(this.#i?.depth??-1)+1}[Symbol.for(`nodejs.util.inspect.custom`)](){return{"@@type":`AST`,id:this.id,type:this.type,root:this.#e.id,parent:this.#i?.id,depth:this.depth,partsLength:this.#r.length,parts:this.#r}}constructor(e,t,n={}){this.type=e,e&&(this.#t=!0),this.#i=t,this.#e=this.#i?this.#i.#e:this,this.#c=this.#e===this?n:this.#e.#c,this.#o=this.#e===this?[]:this.#e.#o,e===`!`&&!this.#e.#s&&this.#o.push(this),this.#a=this.#i?this.#i.#r.length:0}get hasMagic(){if(this.#t!==void 0)return this.#t;for(let e of this.#r)if(typeof e!=`string`&&(e.type||e.hasMagic))return this.#t=!0;return this.#t}toString(){return this.#l===void 0?this.type?this.#l=this.type+`(`+this.#r.map(e=>String(e)).join(`|`)+`)`:this.#l=this.#r.map(e=>String(e)).join(``):this.#l}#d(){if(this!==this.#e)throw Error(`should only call on root`);if(this.#s)return this;this.toString(),this.#s=!0;let e;for(;e=this.#o.pop();){if(e.type!==`!`)continue;let t=e,n=t.#i;for(;n;){for(let r=t.#a+1;!n.type&&r<n.#r.length;r++)for(let t of e.#r){if(typeof t==`string`)throw Error(`string part in extglob AST??`);t.copyIn(n.#r[r])}t=n,n=t.#i}}return this}push(...e){for(let t of e)if(t!==``){if(typeof t!=`string`&&!(t instanceof du&&t.#i===this))throw Error(`invalid part: `+t);this.#r.push(t)}}toJSON(){let e=this.type===null?this.#r.slice().map(e=>typeof e==`string`?e:e.toJSON()):[this.type,...this.#r.map(e=>e.toJSON())];return this.isStart()&&!this.type&&e.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#s&&this.#i?.type===`!`)&&e.push({}),e}isStart(){if(this.#e===this)return!0;if(!this.#i?.isStart())return!1;if(this.#a===0)return!0;let e=this.#i;for(let t=0;t<this.#a;t++){let n=e.#r[t];if(!(n instanceof du&&n.type===`!`))return!1}return!0}isEnd(){if(this.#e===this||this.#i?.type===`!`)return!0;if(!this.#i?.isEnd())return!1;if(!this.type)return this.#i?.isEnd();let e=this.#i?this.#i.#r.length:0;return this.#a===e-1}copyIn(e){typeof e==`string`?this.push(e):this.push(e.clone(this))}clone(e){let t=new du(this.type,e);for(let e of this.#r)t.copyIn(e);return t}static#f(e,t,n,r,i){let a=r.maxExtglobRecursion??2,o=!1,s=!1,c=-1,l=!1;if(t.type===null){let u=n,d=``;for(;u<e.length;){let n=e.charAt(u++);if(o||n===`\\`){o=!o,d+=n;continue}if(s){u===c+1?(n===`^`||n===`!`)&&(l=!0):n===`]`&&!(u===c+2&&l)&&(s=!1),d+=n;continue}else if(n===`[`){s=!0,c=u,l=!1,d+=n;continue}if(!r.noext&&pu(n)&&e.charAt(u)===`(`&&i<=a){t.push(d),d=``;let a=new du(n,t);u=du.#f(e,a,u,r,i+1),t.push(a);continue}d+=n}return t.push(d),u}let u=n+1,d=new du(null,t),f=[],p=``;for(;u<e.length;){let n=e.charAt(u++);if(o||n===`\\`){o=!o,p+=n;continue}if(s){u===c+1?(n===`^`||n===`!`)&&(l=!0):n===`]`&&!(u===c+2&&l)&&(s=!1),p+=n;continue}else if(n===`[`){s=!0,c=u,l=!1,p+=n;continue}if(!r.noext&&pu(n)&&e.charAt(u)===`(`&&(i<=a||t&&t.#h(n))){let a=t&&t.#h(n)?0:1;d.push(p),p=``;let o=new du(n,d);d.push(o),u=du.#f(e,o,u,r,i+a);continue}if(n===`|`){d.push(p),p=``,f.push(d),d=new du(null,t);continue}if(n===`)`)return p===``&&t.#r.length===0&&(t.#u=!0),d.push(p),p=``,t.push(...f,d),u;p+=n}return t.type=null,t.#t=void 0,t.#r=[e.substring(n-1)],u}#p(e){return this.#m(e,gu)}#m(e,t=hu){if(!e||typeof e!=`object`||e.type!==null||e.#r.length!==1||this.type===null)return!1;let n=e.#r[0];return!n||typeof n!=`object`||n.type===null?!1:this.#h(n.type,t)}#h(e,t=_u){return!!t.get(this.type)?.includes(e)}#g(e,t){let n=e.#r[0],r=new du(null,n,this.options);r.#r.push(``),n.push(r),this.#_(e,t)}#_(e,t){let n=e.#r[0];this.#r.splice(t,1,...n.#r);for(let e of n.#r)typeof e==`object`&&(e.#i=this);this.#l=void 0}#v(e){return!!vu.get(this.type)?.has(e)}#y(e){if(!e||typeof e!=`object`||e.type!==null||e.#r.length!==1||this.type===null||this.#r.length!==1)return!1;let t=e.#r[0];return!t||typeof t!=`object`||t.type===null?!1:this.#v(t.type)}#b(e){let t=vu.get(this.type),n=e.#r[0],r=t?.get(n.type);if(!r)return!1;this.#r=n.#r;for(let e of this.#r)typeof e==`object`&&(e.#i=this);this.type=r,this.#l=void 0,this.#u=!1}static fromGlob(e,t={}){let n=new du(null,void 0,t);return du.#f(e,n,0,t,0),n}toMMPattern(){if(this!==this.#e)return this.#e.toMMPattern();let e=this.toString(),[t,n,r,i]=this.toRegExpSource();if(!(r||this.#t||this.#c.nocase&&!this.#c.nocaseMagicOnly&&e.toUpperCase()!==e.toLowerCase()))return n;let a=(this.#c.nocase?`i`:``)+(i?`u`:``);return Object.assign(RegExp(`^${t}$`,a),{_src:t,_glob:e})}get options(){return this.#c}toRegExpSource(e){let t=e??!!this.#c.dot;if(this.#e===this&&(this.#x(),this.#d()),!mu(this)){let n=this.isStart()&&this.isEnd()&&!this.#r.some(e=>typeof e!=`string`),r=this.#r.map(t=>{let[r,i,a,o]=typeof t==`string`?du.#C(t,this.#t,n):t.toRegExpSource(e);return this.#t=this.#t||a,this.#n=this.#n||o,r}).join(``),i=``;if(this.isStart()&&typeof this.#r[0]==`string`&&!(this.#r.length===1&&xu.has(this.#r[0]))){let n=bu,a=t&&n.has(r.charAt(0))||r.startsWith(`\\.`)&&n.has(r.charAt(2))||r.startsWith(`\\.\\.`)&&n.has(r.charAt(4)),o=!t&&!e&&n.has(r.charAt(0));i=a?`(?!(?:^|/)\\.\\.?(?:$|/))`:o?yu:``}let a=``;return this.isEnd()&&this.#e.#s&&this.#i?.type===`!`&&(a=`(?:$|\\/)`),[i+r+a,uu(r),this.#t=!!this.#t,this.#n]}let n=this.type===`*`||this.type===`+`,r=this.type===`!`?`(?:(?!(?:`:`(?:`,i=this.#S(t);if(this.isStart()&&this.isEnd()&&!i&&this.type!==`!`){let e=this.toString(),t=this;return t.#r=[e],t.type=null,t.#t=void 0,[e,uu(this.toString()),!1,!1]}let a=!n||e||t?``:this.#S(!0);a===i&&(a=``),a&&(i=`(?:${i})(?:${a})*?`);let o=``;if(this.type===`!`&&this.#u)o=(this.isStart()&&!t?yu:``)+wu;else{let n=this.type===`!`?`))`+(this.isStart()&&!t&&!e?yu:``)+`[^/]*?)`:this.type===`@`?`)`:this.type===`?`?`)?`:this.type===`+`&&a?`)`:this.type===`*`&&a?`)?`:`)${this.type}`;o=r+i+n}return[o,uu(i),this.#t=!!this.#t,this.#n]}#x(){if(mu(this)){let e=0,t=!1;do{t=!0;for(let e=0;e<this.#r.length;e++){let n=this.#r[e];typeof n==`object`&&(n.#x(),this.#m(n)?(t=!1,this.#_(n,e)):this.#p(n)?(t=!1,this.#g(n,e)):this.#y(n)&&(t=!1,this.#b(n)))}}while(!t&&++e<10)}else for(let e of this.#r)typeof e==`object`&&e.#x();this.#l=void 0}#S(e){return this.#r.map(t=>{if(typeof t==`string`)throw Error(`string type in extglob ast??`);let[n,r,i,a]=t.toRegExpSource(e);return this.#n=this.#n||a,n}).filter(e=>!(this.isStart()&&this.isEnd())||!!e).join(`|`)}static#C(e,t,n=!1){let r=!1,i=``,a=!1,o=!1;for(let s=0;s<e.length;s++){let c=e.charAt(s);if(r){r=!1,i+=(Su.has(c)?`\\`:``)+c;continue}if(c===`*`){if(o)continue;o=!0,i+=n&&/^[*]+$/.test(e)?wu:`[^/]*?`,t=!0;continue}else o=!1;if(c===`\\`){s===e.length-1?i+=`\\\\`:r=!0;continue}if(c===`[`){let[n,r,o,c]=lu(e,s);if(o){i+=n,a||=r,s+=o-1,t||=c;continue}}if(c===`?`){i+=`[^/]`,t=!0;continue}i+=Cu(c)}return[i,uu(e),!!t,a]}};du=Eu;const Du=(e,{windowsPathsNoEscape:t=!1,magicalBraces:n=!1}={})=>n?t?e.replace(/[?*()[\]{}]/g,`[$&]`):e.replace(/[?*()[\]\\{}]/g,`\\$&`):t?e.replace(/[?*()[\]]/g,`[$&]`):e.replace(/[?*()[\]\\]/g,`\\$&`),Ou=(e,t,n={})=>(iu(t),!n.nocomment&&t.charAt(0)===`#`?!1:new nd(t,n).match(e)),ku=/^\*+([^+@!?*[(]*)$/,Au=e=>t=>!t.startsWith(`.`)&&t.endsWith(e),ju=e=>t=>t.endsWith(e),Mu=e=>(e=e.toLowerCase(),t=>!t.startsWith(`.`)&&t.toLowerCase().endsWith(e)),Nu=e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)),Pu=/^\*+\.\*+$/,Fu=e=>!e.startsWith(`.`)&&e.includes(`.`),Iu=e=>e!==`.`&&e!==`..`&&e.includes(`.`),Lu=/^\.\*+$/,Ru=e=>e!==`.`&&e!==`..`&&e.startsWith(`.`),zu=/^\*+$/,Bu=e=>e.length!==0&&!e.startsWith(`.`),Vu=e=>e.length!==0&&e!==`.`&&e!==`..`,Hu=/^\?+([^+@!?*[(]*)?$/,Uu=([e,t=``])=>{let n=qu([e]);return t?(t=t.toLowerCase(),e=>n(e)&&e.toLowerCase().endsWith(t)):n},Wu=([e,t=``])=>{let n=Ju([e]);return t?(t=t.toLowerCase(),e=>n(e)&&e.toLowerCase().endsWith(t)):n},Gu=([e,t=``])=>{let n=Ju([e]);return t?e=>n(e)&&e.endsWith(t):n},Ku=([e,t=``])=>{let n=qu([e]);return t?e=>n(e)&&e.endsWith(t):n},qu=([e])=>{let t=e.length;return e=>e.length===t&&!e.startsWith(`.`)},Ju=([e])=>{let t=e.length;return e=>e.length===t&&e!==`.`&&e!==`..`},Yu=typeof process==`object`&&process?typeof process.env==`object`&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:`posix`,Xu={win32:{sep:`\\`},posix:{sep:`/`}};Ou.sep=Yu===`win32`?Xu.win32.sep:Xu.posix.sep;const Zu=Symbol(`globstar **`);Ou.GLOBSTAR=Zu,Ou.filter=(e,t={})=>n=>Ou(n,e,t);const Qu=(e,t={})=>Object.assign({},e,t);Ou.defaults=e=>{if(!e||typeof e!=`object`||!Object.keys(e).length)return Ou;let t=Ou;return Object.assign((n,r,i={})=>t(n,r,Qu(e,i)),{Minimatch:class extends t.Minimatch{constructor(t,n={}){super(t,Qu(e,n))}static defaults(n){return t.defaults(Qu(e,n)).Minimatch}},AST:class extends t.AST{constructor(t,n,r={}){super(t,n,Qu(e,r))}static fromGlob(n,r={}){return t.AST.fromGlob(n,Qu(e,r))}},unescape:(n,r={})=>t.unescape(n,Qu(e,r)),escape:(n,r={})=>t.escape(n,Qu(e,r)),filter:(n,r={})=>t.filter(n,Qu(e,r)),defaults:n=>t.defaults(Qu(e,n)),makeRe:(n,r={})=>t.makeRe(n,Qu(e,r)),braceExpand:(n,r={})=>t.braceExpand(n,Qu(e,r)),match:(n,r,i={})=>t.match(n,r,Qu(e,i)),sep:t.sep,GLOBSTAR:Zu})};const $u=(e,t={})=>(iu(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:Ql(e,{max:t.braceExpandMax}));Ou.braceExpand=$u,Ou.makeRe=(e,t={})=>new nd(e,t).makeRe(),Ou.match=(e,t,n={})=>{let r=new nd(t,n);return e=e.filter(e=>r.match(e)),r.options.nonull&&!e.length&&e.push(t),e};const ed=/[?*]|[+@!]\(.*?\)|\[|\]/,td=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`);var nd=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;maxGlobstarRecursion;regexp;constructor(e,t={}){iu(e),t||={},this.options=t,this.maxGlobstarRecursion=t.maxGlobstarRecursion??200,this.pattern=e,this.platform=t.platform||Yu,this.isWindows=this.platform===`win32`,this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||t.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,`/`)),this.preserveMultipleSlashes=!!t.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!t.nonegate,this.comment=!1,this.empty=!1,this.partial=!!t.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=t.windowsNoMagicRoot===void 0?!!(this.isWindows&&this.nocase):t.windowsNoMagicRoot,this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let e of this.set)for(let t of e)if(typeof t!=`string`)return!0;return!1}debug(...e){}make(){let e=this.pattern,t=this.options;if(!t.nocomment&&e.charAt(0)===`#`){this.comment=!0;return}if(!e){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],t.debug&&(this.debug=(...e)=>console.error(...e)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(e=>this.slashSplit(e));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let r=this.globParts.map((e,t,n)=>{if(this.isWindows&&this.windowsNoMagicRoot){let t=e[0]===``&&e[1]===``&&(e[2]===`?`||!ed.test(e[2]))&&!ed.test(e[3]),n=/^[a-z]:/i.test(e[0]);if(t)return[...e.slice(0,4),...e.slice(4).map(e=>this.parse(e))];if(n)return[e[0],...e.slice(1).map(e=>this.parse(e))]}return e.map(e=>this.parse(e))});if(this.debug(this.pattern,r),this.set=r.filter(e=>e.indexOf(!1)===-1),this.isWindows)for(let e=0;e<this.set.length;e++){let t=this.set[e];t[0]===``&&t[1]===``&&this.globParts[e][2]===`?`&&typeof t[3]==`string`&&/^[a-z]:$/i.test(t[3])&&(t[2]=`?`)}this.debug(this.pattern,this.set)}preprocess(e){if(this.options.noglobstar)for(let t of e)for(let e=0;e<t.length;e++)t[e]===`**`&&(t[e]=`*`);let{optimizationLevel:t=1}=this.options;return t>=2?(e=this.firstPhasePreProcess(e),e=this.secondPhasePreProcess(e)):e=t>=1?this.levelOneOptimize(e):this.adjascentGlobstarOptimize(e),e}adjascentGlobstarOptimize(e){return e.map(e=>{let t=-1;for(;(t=e.indexOf(`**`,t+1))!==-1;){let n=t;for(;e[n+1]===`**`;)n++;n!==t&&e.splice(t,n-t)}return e})}levelOneOptimize(e){return e.map(e=>(e=e.reduce((e,t)=>{let n=e[e.length-1];return t===`**`&&n===`**`?e:t===`..`&&n&&n!==`..`&&n!==`.`&&n!==`**`?(e.pop(),e):(e.push(t),e)},[]),e.length===0?[``]:e))}levelTwoFileOptimize(e){Array.isArray(e)||(e=this.slashSplit(e));let t=!1;do{if(t=!1,!this.preserveMultipleSlashes){for(let n=1;n<e.length-1;n++){let r=e[n];n===1&&r===``&&e[0]===``||(r===`.`||r===``)&&(t=!0,e.splice(n,1),n--)}e[0]===`.`&&e.length===2&&(e[1]===`.`||e[1]===``)&&(t=!0,e.pop())}let n=0;for(;(n=e.indexOf(`..`,n+1))!==-1;){let r=e[n-1];r&&r!==`.`&&r!==`..`&&r!==`**`&&!(this.isWindows&&/^[a-z]:$/i.test(r))&&(t=!0,e.splice(n-1,2),n-=2)}}while(t);return e.length===0?[``]:e}firstPhasePreProcess(e){let t=!1;do{t=!1;for(let n of e){let r=-1;for(;(r=n.indexOf(`**`,r+1))!==-1;){let i=r;for(;n[i+1]===`**`;)i++;i>r&&n.splice(r+1,i-r);let a=n[r+1],o=n[r+2],s=n[r+3];if(a!==`..`||!o||o===`.`||o===`..`||!s||s===`.`||s===`..`)continue;t=!0,n.splice(r,1);let c=n.slice(0);c[r]=`**`,e.push(c),r--}if(!this.preserveMultipleSlashes){for(let e=1;e<n.length-1;e++){let r=n[e];e===1&&r===``&&n[0]===``||(r===`.`||r===``)&&(t=!0,n.splice(e,1),e--)}n[0]===`.`&&n.length===2&&(n[1]===`.`||n[1]===``)&&(t=!0,n.pop())}let i=0;for(;(i=n.indexOf(`..`,i+1))!==-1;){let e=n[i-1];if(e&&e!==`.`&&e!==`..`&&e!==`**`){t=!0;let e=i===1&&n[i+1]===`**`?[`.`]:[];n.splice(i-1,2,...e),n.length===0&&n.push(``),i-=2}}}}while(t);return e}secondPhasePreProcess(e){for(let t=0;t<e.length-1;t++)for(let n=t+1;n<e.length;n++){let r=this.partsMatch(e[t],e[n],!this.preserveMultipleSlashes);if(r){e[t]=[],e[n]=r;break}}return e.filter(e=>e.length)}partsMatch(e,t,n=!1){let r=0,i=0,a=[],o=``;for(;r<e.length&&i<t.length;)if(e[r]===t[i])a.push(o===`b`?t[i]:e[r]),r++,i++;else if(n&&e[r]===`**`&&t[i]===e[r+1])a.push(e[r]),r++;else if(n&&t[i]===`**`&&e[r]===t[i+1])a.push(t[i]),i++;else if(e[r]===`*`&&t[i]&&(this.options.dot||!t[i].startsWith(`.`))&&t[i]!==`**`){if(o===`b`)return!1;o=`a`,a.push(e[r]),r++,i++}else if(t[i]===`*`&&e[r]&&(this.options.dot||!e[r].startsWith(`.`))&&e[r]!==`**`){if(o===`a`)return!1;o=`b`,a.push(t[i]),r++,i++}else return!1;return e.length===t.length&&a}parseNegate(){if(this.nonegate)return;let e=this.pattern,t=!1,n=0;for(let r=0;r<e.length&&e.charAt(r)===`!`;r++)t=!t,n++;n&&(this.pattern=e.slice(n)),this.negate=t}matchOne(e,t,n=!1){let r=0,i=0;if(this.isWindows){let n=typeof e[0]==`string`&&/^[a-z]:$/i.test(e[0]),a=!n&&e[0]===``&&e[1]===``&&e[2]===`?`&&/^[a-z]:$/i.test(e[3]),o=typeof t[0]==`string`&&/^[a-z]:$/i.test(t[0]),s=!o&&t[0]===``&&t[1]===``&&t[2]===`?`&&typeof t[3]==`string`&&/^[a-z]:$/i.test(t[3]),c=a?3:n?0:void 0,l=s?3:o?0:void 0;if(typeof c==`number`&&typeof l==`number`){let[n,a]=[e[c],t[l]];n.toLowerCase()===a.toLowerCase()&&(t[l]=n,i=l,r=c)}}let{optimizationLevel:a=1}=this.options;return a>=2&&(e=this.levelTwoFileOptimize(e)),t.includes(Zu)?this.#e(e,t,n,r,i):this.#n(e,t,n,r,i)}#e(e,t,n,r,i){let a=t.indexOf(Zu,i),o=t.lastIndexOf(Zu),[s,c,l]=n?[t.slice(i,a),t.slice(a+1),[]]:[t.slice(i,a),t.slice(a+1,o),t.slice(o+1)];if(s.length){let t=e.slice(r,r+s.length);if(!this.#n(t,s,n,0,0))return!1;r+=s.length,i+=s.length}let u=0;if(l.length){if(l.length+r>e.length)return!1;let t=e.length-l.length;if(this.#n(e,l,n,t,0))u=l.length;else{if(e[e.length-1]!==``||r+l.length===e.length||(t--,!this.#n(e,l,n,t,0)))return!1;u=l.length+1}}if(!c.length){let t=!!u;for(let n=r;n<e.length-u;n++){let r=String(e[n]);if(t=!0,r===`.`||r===`..`||!this.options.dot&&r.startsWith(`.`))return!1}return n||t}let d=[[[],0]],f=d[0],p=0,m=[0];for(let e of c)e===Zu?(m.push(p),f=[[],0],d.push(f)):(f[0].push(e),p++);let h=d.length-1,g=e.length-u;for(let e of d)e[1]=g-(m[h--]+e[0].length);return!!this.#t(e,d,r,0,n,0,!!u)}#t(e,t,n,r,i,a,o){let s=t[r];if(!s){for(let t=n;t<e.length;t++){o=!0;let n=e[t];if(n===`.`||n===`..`||!this.options.dot&&n.startsWith(`.`))return!1}return o}let[c,l]=s;for(;n<=l;){if(this.#n(e.slice(0,n+c.length),c,i,n,0)&&a<this.maxGlobstarRecursion){let s=this.#t(e,t,n+c.length,r+1,i,a+1,o);if(s!==!1)return s}let s=e[n];if(s===`.`||s===`..`||!this.options.dot&&s.startsWith(`.`))return!1;n++}return i||null}#n(e,t,n,r,i){let a,o,s,c;for(a=r,o=i,c=e.length,s=t.length;a<c&&o<s;a++,o++){this.debug(`matchOne loop`);let n=t[o],r=e[a];if(this.debug(t,n,r),n===!1||n===Zu)return!1;let i;if(typeof n==`string`?(i=r===n,this.debug(`string match`,n,r,i)):(i=n.test(r),this.debug(`pattern match`,n,r,i)),!i)return!1}if(a===c&&o===s)return!0;if(a===c)return n;if(o===s)return a===c-1&&e[a]===``;throw Error(`wtf?`)}braceExpand(){return $u(this.pattern,this.options)}parse(e){iu(e);let t=this.options;if(e===`**`)return Zu;if(e===``)return``;let n,r=null;(n=e.match(zu))?r=t.dot?Vu:Bu:(n=e.match(ku))?r=(t.nocase?t.dot?Nu:Mu:t.dot?ju:Au)(n[1]):(n=e.match(Hu))?r=(t.nocase?t.dot?Wu:Uu:t.dot?Gu:Ku)(n):(n=e.match(Pu))?r=t.dot?Iu:Fu:(n=e.match(Lu))&&(r=Ru);let i=Eu.fromGlob(e,this.options).toMMPattern();return r&&typeof i==`object`&&Reflect.defineProperty(i,"test",{value:r}),i}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let e=this.set;if(!e.length)return this.regexp=!1,this.regexp;let t=this.options,n=t.noglobstar?`[^/]*?`:t.dot?`(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?`:`(?:(?!(?:\\/|^)\\.).)*?`,r=new Set(t.nocase?[`i`]:[]),i=e.map(e=>{let t=e.map(e=>{if(e instanceof RegExp)for(let t of e.flags.split(``))r.add(t);return typeof e==`string`?td(e):e===Zu?Zu:e._src});t.forEach((e,r)=>{let i=t[r+1],a=t[r-1];e!==Zu||a===Zu||(a===void 0?i!==void 0&&i!==Zu?t[r+1]=`(?:\\/|`+n+`\\/)?`+i:t[r]=n:i===void 0?t[r-1]=a+`(?:\\/|\\/`+n+`)?`:i!==Zu&&(t[r-1]=a+`(?:\\/|\\/`+n+`\\/)`+i,t[r+1]=Zu))});let i=t.filter(e=>e!==Zu);if(this.partial&&i.length>=1){let e=[];for(let t=1;t<=i.length;t++)e.push(i.slice(0,t).join(`/`));return`(?:`+e.join(`|`)+`)`}return i.join(`/`)}).join(`|`),[a,o]=e.length>1?[`(?:`,`)`]:[``,``];i=`^`+a+i+o+`$`,this.partial&&(i=`^(?:\\/|`+a+i.slice(1,-1)+o+`)$`),this.negate&&(i=`^(?!`+i+`).+$`);try{this.regexp=new RegExp(i,[...r].join(``))}catch{this.regexp=!1}return this.regexp}slashSplit(e){return this.preserveMultipleSlashes?e.split(`/`):this.isWindows&&/^\/\/[^/]+/.test(e)?[``,...e.split(/\/+/)]:e.split(/\/+/)}match(e,t=this.partial){if(this.debug(`match`,e,this.pattern),this.comment)return!1;if(this.empty)return e===``;if(e===`/`&&t)return!0;let n=this.options;this.isWindows&&(e=e.split(`\\`).join(`/`));let r=this.slashSplit(e);this.debug(this.pattern,`split`,r);let i=this.set;this.debug(this.pattern,`set`,i);let a=r[r.length-1];if(!a)for(let e=r.length-2;!a&&e>=0;e--)a=r[e];for(let e of i){let i=r;if(n.matchBase&&e.length===1&&(i=[a]),this.matchOne(i,e,t))return n.flipNegate?!0:!this.negate}return n.flipNegate?!1:this.negate}static defaults(e){return Ou.defaults(e).Minimatch}};Ou.AST=Eu,Ou.Minimatch=nd,Ou.escape=Du,Ou.unescape=uu;var rd=n(((e,t)=>{let n=process||{},r=n.argv||[],i=n.env||{},a=!(i.NO_COLOR||r.includes(`--no-color`))&&(!!i.FORCE_COLOR||r.includes(`--color`)||n.platform===`win32`||(n.stdout||{}).isTTY&&i.TERM!==`dumb`||!!i.CI),o=(e,t,n=e)=>r=>{let i=``+r,a=i.indexOf(t,e.length);return~a?e+s(i,t,n,a)+t:e+i+t},s=(e,t,n,r)=>{let i=``,a=0;do i+=e.substring(a,r)+n,a=r+t.length,r=e.indexOf(t,a);while(~r);return i+e.substring(a)},c=(e=a)=>{let t=e?o:()=>String;return{isColorSupported:e,reset:t(`\x1B[0m`,`\x1B[0m`),bold:t(`\x1B[1m`,`\x1B[22m`,`\x1B[22m\x1B[1m`),dim:t(`\x1B[2m`,`\x1B[22m`,`\x1B[22m\x1B[2m`),italic:t(`\x1B[3m`,`\x1B[23m`),underline:t(`\x1B[4m`,`\x1B[24m`),inverse:t(`\x1B[7m`,`\x1B[27m`),hidden:t(`\x1B[8m`,`\x1B[28m`),strikethrough:t(`\x1B[9m`,`\x1B[29m`),black:t(`\x1B[30m`,`\x1B[39m`),red:t(`\x1B[31m`,`\x1B[39m`),green:t(`\x1B[32m`,`\x1B[39m`),yellow:t(`\x1B[33m`,`\x1B[39m`),blue:t(`\x1B[34m`,`\x1B[39m`),magenta:t(`\x1B[35m`,`\x1B[39m`),cyan:t(`\x1B[36m`,`\x1B[39m`),white:t(`\x1B[37m`,`\x1B[39m`),gray:t(`\x1B[90m`,`\x1B[39m`),bgBlack:t(`\x1B[40m`,`\x1B[49m`),bgRed:t(`\x1B[41m`,`\x1B[49m`),bgGreen:t(`\x1B[42m`,`\x1B[49m`),bgYellow:t(`\x1B[43m`,`\x1B[49m`),bgBlue:t(`\x1B[44m`,`\x1B[49m`),bgMagenta:t(`\x1B[45m`,`\x1B[49m`),bgCyan:t(`\x1B[46m`,`\x1B[49m`),bgWhite:t(`\x1B[47m`,`\x1B[49m`),blackBright:t(`\x1B[90m`,`\x1B[39m`),redBright:t(`\x1B[91m`,`\x1B[39m`),greenBright:t(`\x1B[92m`,`\x1B[39m`),yellowBright:t(`\x1B[93m`,`\x1B[39m`),blueBright:t(`\x1B[94m`,`\x1B[39m`),magentaBright:t(`\x1B[95m`,`\x1B[39m`),cyanBright:t(`\x1B[96m`,`\x1B[39m`),whiteBright:t(`\x1B[97m`,`\x1B[39m`),bgBlackBright:t(`\x1B[100m`,`\x1B[49m`),bgRedBright:t(`\x1B[101m`,`\x1B[49m`),bgGreenBright:t(`\x1B[102m`,`\x1B[49m`),bgYellowBright:t(`\x1B[103m`,`\x1B[49m`),bgBlueBright:t(`\x1B[104m`,`\x1B[49m`),bgMagentaBright:t(`\x1B[105m`,`\x1B[49m`),bgCyanBright:t(`\x1B[106m`,`\x1B[49m`),bgWhiteBright:t(`\x1B[107m`,`\x1B[49m`)}};t.exports=c(),t.exports.createColors=c})),id=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{SYMBOL_FOR_REQ_CONTEXT:()=>u,getContext:()=>d}),t.exports=c(l);let u=Symbol.for(`@vercel/request-context`);function d(){return globalThis[u]?.get?.()??{}}0&&(t.exports={SYMBOL_FOR_REQ_CONTEXT:u,getContext:d})})),ad=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{getVercelOidcTokenSync:()=>d}),t.exports=c(l);var u=id();function d(){let e=(0,u.getContext)().headers?.[`x-vercel-oidc-token`]??process.env.VERCEL_OIDC_TOKEN;if(!e)throw Error(`The 'x-vercel-oidc-token' header is missing from the request.`);return e}0&&(t.exports={getVercelOidcTokenSync:d})})),od=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{VercelOidcTokenError:()=>u}),t.exports=c(l);var u=class extends Error{constructor(e,t){super(e),this.name=`VercelOidcTokenError`,this.cause=t}toString(){return this.cause?`${this.name}: ${this.message}: ${this.cause}`:`${this.name}: ${this.message}`}};0&&(t.exports={VercelOidcTokenError:u})})),sd=n(((t,n)=>{var r=Object.defineProperty,i=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,s=(e,t)=>{for(var n in t)r(e,n,{get:t[n],enumerable:!0})},c=(e,t,n,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of a(t))!o.call(e,c)&&c!==n&&r(e,c,{get:()=>t[c],enumerable:!(s=i(t,c))||s.enumerable});return e},l=e=>c(r({},`__esModule`,{value:!0}),e),u={};s(u,{getVercelOidcToken:()=>p}),n.exports=l(u);var d=ad(),f=od();async function p(t){let n=``,r;try{n=(0,d.getVercelOidcTokenSync)()}catch(e){r=e}try{let[{getTokenPayload:r,isExpired:i},{refreshToken:a}]=await Promise.all([await Promise.resolve().then(()=>e(fd())),await import(`../../_chunks/workflow/token-Bm-WLAUB.js`).then(t=>e(t.default))]);(!n||i(r(n),t?.expirationBufferMs))&&(await a(t),n=(0,d.getVercelOidcTokenSync)())}catch(e){let t=r instanceof Error?r.message:``;throw e instanceof Error&&(t=`${t}
|
|
106
|
+
${e.message}`),t?new f.VercelOidcTokenError(t):e}return n}0&&(n.exports={getVercelOidcToken:p})})),cd=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{AccessTokenMissingError:()=>u,RefreshAccessTokenFailedError:()=>d}),t.exports=c(l);var u=class extends Error{constructor(){super(`No authentication found. Please log in with the Vercel CLI (vercel login).`),this.name=`AccessTokenMissingError`}},d=class extends Error{constructor(e){super(`Failed to refresh authentication token.`,{cause:e}),this.name=`RefreshAccessTokenFailedError`}};0&&(t.exports={AccessTokenMissingError:u,RefreshAccessTokenFailedError:d})})),ld=n(((e,n)=>{var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let s of o(t))!c.call(e,s)&&s!==n&&i(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)),f=e=>u(i({},`__esModule`,{value:!0}),e),p={};l(p,{findRootDir:()=>v,getUserDataDir:()=>y}),n.exports=f(p);var m=d(t(`path`)),h=d(t(`fs`)),g=d(t(`os`)),_=od();function v(){try{let e=process.cwd();for(;e!==m.default.dirname(e);){let t=m.default.join(e,`.vercel`);if(h.default.existsSync(t))return e;e=m.default.dirname(e)}}catch{throw new _.VercelOidcTokenError(`Token refresh only supported in node server environments`)}return null}function y(){if(process.env.XDG_DATA_HOME)return process.env.XDG_DATA_HOME;switch(g.default.platform()){case`darwin`:return m.default.join(g.default.homedir(),`Library/Application Support`);case`linux`:return m.default.join(g.default.homedir(),`.local/share`);case`win32`:return process.env.LOCALAPPDATA?process.env.LOCALAPPDATA:null;default:return null}}0&&(n.exports={findRootDir:v,getUserDataDir:y})})),ud=n(((e,n)=>{var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let s of o(t))!c.call(e,s)&&s!==n&&i(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)),f=e=>u(i({},`__esModule`,{value:!0}),e),p={};l(p,{isValidAccessToken:()=>b,readAuthConfig:()=>v,writeAuthConfig:()=>y}),n.exports=f(p);var m=d(t(`fs`)),h=d(t(`path`)),g=fd();function _(){let e=(0,g.getVercelDataDir)();if(!e)throw Error(`Unable to find Vercel CLI data directory. Your platform: ${process.platform}. Supported: darwin, linux, win32.`);return h.join(e,`auth.json`)}function v(){try{let e=_();if(!m.existsSync(e))return null;let t=m.readFileSync(e,`utf8`);return t?JSON.parse(t):null}catch{return null}}function y(e){let t=_(),n=h.dirname(t);m.existsSync(n)||m.mkdirSync(n,{mode:504,recursive:!0}),m.writeFileSync(t,JSON.stringify(e,null,2),{mode:384})}function b(e,t=0){if(!e.token)return!1;if(typeof e.expiresAt!=`number`)return!0;let n=Math.floor(Date.now()/1e3),r=t/1e3;return e.expiresAt>=n+r}0&&(n.exports={isValidAccessToken:b,readAuthConfig:v,writeAuthConfig:y})})),dd=n(((e,n)=>{var r=Object.defineProperty,i=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,s=(e,t)=>{for(var n in t)r(e,n,{get:t[n],enumerable:!0})},c=(e,t,n,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of a(t))!o.call(e,c)&&c!==n&&r(e,c,{get:()=>t[c],enumerable:!(s=i(t,c))||s.enumerable});return e},l=e=>c(r({},`__esModule`,{value:!0}),e),u={};s(u,{processTokenResponse:()=>g,refreshTokenRequest:()=>h}),n.exports=l(u);var d=t(`os`);let f=`@vercel/oidc node-${process.version} ${(0,d.platform)()} (${(0,d.arch)()}) ${(0,d.hostname)()}`,p=null;async function m(){if(p)return p;let e=await fetch(`https://vercel.com/.well-known/openid-configuration`,{headers:{"user-agent":f}});if(!e.ok)throw Error(`Failed to discover OAuth endpoints`);let t=await e.json();if(!t||typeof t.token_endpoint!=`string`)throw Error(`Invalid OAuth discovery response`);let n=t.token_endpoint;return p=n,n}async function h(e){let t=await m();return await fetch(t,{method:`POST`,headers:{"Content-Type":`application/x-www-form-urlencoded`,"user-agent":f},body:new URLSearchParams({client_id:`cl_HYyOPBNtFMfHhaUn9L4QPfTZz6TP47bp`,grant_type:`refresh_token`,...e})})}async function g(e){let t=await e.json();if(!e.ok){let e=typeof t==`object`&&t&&`error`in t?String(t.error):`Token refresh failed`;return[Error(e)]}return typeof t!=`object`||!t?[Error(`Invalid token response`)]:typeof t.access_token==`string`?t.token_type===`Bearer`?typeof t.expires_in==`number`?[null,t]:[Error(`Missing expires_in in response`)]:[Error(`Invalid token_type in response`)]:[Error(`Missing access_token in response`)]}0&&(n.exports={processTokenResponse:g,refreshTokenRequest:h})})),fd=n(((e,n)=>{var r=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,c=Object.prototype.hasOwnProperty,l=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let s of o(t))!c.call(e,s)&&s!==n&&i(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e},d=(e,t,n)=>(n=e==null?{}:r(s(e)),u(t||!e||!e.__esModule?i(n,`default`,{value:e,enumerable:!0}):n,e)),f=e=>u(i({},`__esModule`,{value:!0}),e),p={};l(p,{assertVercelOidcTokenResponse:()=>w,findProjectInfo:()=>T,getTokenPayload:()=>O,getVercelDataDir:()=>x,getVercelOidcToken:()=>C,getVercelToken:()=>S,isExpired:()=>k,loadToken:()=>D,saveToken:()=>E}),n.exports=f(p);var m=d(t(`path`)),h=d(t(`fs`)),g=od(),_=ld(),v=ud(),y=dd(),b=cd();function x(){let e=(0,_.getUserDataDir)();return e?m.join(e,`com.vercel.cli`):null}async function S(e){let t=(0,v.readAuthConfig)();if(!t?.token)throw new b.AccessTokenMissingError;if((0,v.isValidAccessToken)(t,e?.expirationBufferMs))return t.token;if(!t.refreshToken)throw(0,v.writeAuthConfig)({}),new b.RefreshAccessTokenFailedError(`No refresh token available`);try{let e=await(0,y.refreshTokenRequest)({refresh_token:t.refreshToken}),[n,r]=await(0,y.processTokenResponse)(e);if(n||!r)throw(0,v.writeAuthConfig)({}),new b.RefreshAccessTokenFailedError(n);let i={token:r.access_token,expiresAt:Math.floor(Date.now()/1e3)+r.expires_in};return r.refresh_token&&(i.refreshToken=r.refresh_token),(0,v.writeAuthConfig)(i),i.token}catch(e){throw(0,v.writeAuthConfig)({}),e instanceof b.AccessTokenMissingError||e instanceof b.RefreshAccessTokenFailedError?e:new b.RefreshAccessTokenFailedError(e)}}async function C(e,t,n){let r=`https://api.vercel.com/v1/projects/${t}/token?source=vercel-oidc-refresh${n?`&teamId=${n}`:``}`,i=await fetch(r,{method:`POST`,headers:{Authorization:`Bearer ${e}`}});if(!i.ok)throw new g.VercelOidcTokenError(`Failed to refresh OIDC token: ${i.statusText}`);let a=await i.json();return w(a),a}function w(e){if(!e||typeof e!=`object`)throw TypeError("Vercel OIDC token is malformed. Expected an object. Please run `vc env pull` and try again");if(!(`token`in e)||typeof e.token!=`string`)throw TypeError("Vercel OIDC token is malformed. Expected a string-valued token property. Please run `vc env pull` and try again")}function T(){let e=(0,_.findRootDir)();if(!e)throw new g.VercelOidcTokenError("Unable to find project root directory. Have you linked your project with `vc link?`");let t=m.join(e,`.vercel`,`project.json`);if(!h.existsSync(t))throw new g.VercelOidcTokenError("project.json not found, have you linked your project with `vc link?`");let n=JSON.parse(h.readFileSync(t,`utf8`));if(typeof n.projectId!=`string`&&typeof n.orgId!=`string`)throw TypeError("Expected a string-valued projectId property. Try running `vc link` to re-link your project.");return{projectId:n.projectId,teamId:n.orgId}}function E(e,t){let n=(0,_.getUserDataDir)();if(!n)throw new g.VercelOidcTokenError(`Unable to find user data directory. Please reach out to Vercel support.`);let r=m.join(n,`com.vercel.token`,`${t}.json`),i=JSON.stringify(e);h.mkdirSync(m.dirname(r),{mode:504,recursive:!0}),h.writeFileSync(r,i),h.chmodSync(r,432)}function D(e){let t=(0,_.getUserDataDir)();if(!t)throw new g.VercelOidcTokenError(`Unable to find user data directory. Please reach out to Vercel support.`);let n=m.join(t,`com.vercel.token`,`${e}.json`);if(!h.existsSync(n))return null;let r=JSON.parse(h.readFileSync(n,`utf8`));return w(r),r}function O(e){let t=e.split(`.`);if(t.length!==3)throw new g.VercelOidcTokenError("Invalid token. Please run `vc env pull` and try again");let n=t[1].replace(/-/g,`+`).replace(/_/g,`/`),r=n.padEnd(n.length+(4-n.length%4)%4,`=`);return JSON.parse(Buffer.from(r,`base64`).toString(`utf8`))}function k(e,t=0){return e.exp*1e3<Date.now()+t}0&&(n.exports={assertVercelOidcTokenResponse:w,findProjectInfo:T,getTokenPayload:O,getVercelDataDir:x,getVercelOidcToken:C,getVercelToken:S,isExpired:k,loadToken:D,saveToken:E})})),pd=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{AccessTokenMissingError:()=>p.AccessTokenMissingError,RefreshAccessTokenFailedError:()=>p.RefreshAccessTokenFailedError,getContext:()=>f.getContext,getVercelOidcToken:()=>u.getVercelOidcToken,getVercelOidcTokenSync:()=>d.getVercelOidcTokenSync,getVercelToken:()=>m.getVercelToken}),t.exports=c(l);var u=sd(),d=ad(),f=id(),p=cd(),m=fd();0&&(t.exports={AccessTokenMissingError,RefreshAccessTokenFailedError,getContext,getVercelOidcToken,getVercelOidcTokenSync,getVercelToken})})),md=e(rd(),1),hd=pd();async function gd(e){let t=0,n=e.getReader(),r=[];try{for(;;){let{done:e,value:i}=await n.read();if(e)break;r.push(i),t+=i.length}}finally{n.releaseLock()}return Buffer.concat(r,t)}var _d=class{contentType=`application/json`;replacer;reviver;constructor(e={}){this.replacer=e.replacer,this.reviver=e.reviver}serialize(e){return Buffer.from(JSON.stringify(e,this.replacer),`utf8`)}async deserialize(e){let t=await gd(e);return JSON.parse(t.toString(`utf8`),this.reviver)}},vd=class extends Error{constructor(e){super(`Message ${e} not found`),this.name=`MessageNotFoundError`}},yd=class extends Error{constructor(e,t){super(`Message ${e} not available for processing${t?`: ${t}`:``}`),this.name=`MessageNotAvailableError`}},bd=class extends Error{constructor(e,t){super(`Message ${e} is corrupted: ${t}`),this.name=`MessageCorruptedError`}},xd=class extends Error{retryAfter;constructor(e=`Too many requests`,t){super(e),this.name=`TooManyRequestsError`,this.retryAfter=t}},Sd=class extends Error{constructor(e=`Missing or invalid authentication token`){super(e),this.name=`UnauthorizedError`}},Cd=class extends Error{constructor(e=`Queue environment doesn't match token environment`){super(e),this.name=`ForbiddenError`}},wd=class extends Error{constructor(e){super(e),this.name=`BadRequestError`}},Td=class extends Error{constructor(e=`Unexpected server error`){super(e),this.name=`InternalServerError`}},Ed=class extends Error{constructor(e,t=1,n=10){super(`Invalid limit: ${e}. Limit must be between ${t} and ${n}.`),this.name=`InvalidLimitError`}},Dd=class extends Error{constructor(e){super(`Message ${e} has already been processed`),this.name=`MessageAlreadyProcessedError`}},Od=class extends Error{idempotencyKey;constructor(e,t){super(e),this.name=`DuplicateMessageError`,this.idempotencyKey=t}},kd=class extends Error{deploymentId;constructor(e,t){super(e),this.name=`ConsumerDiscoveryError`,this.deploymentId=t}},Ad=class extends Error{constructor(e=`Consumer registry not configured`){super(e),this.name=`ConsumerRegistryNotConfiguredError`}},jd=300,Md=30,Nd=60,Pd=10,Fd=3e3,Id=3,Ld=250;function Rd(e){return Math.min(Nd,Math.max(Pd,e/5))}var zd=class{client;topicName;consumerGroupName;visibilityTimeout;constructor(e,t,n,r={}){this.client=e,this.topicName=t,this.consumerGroupName=n,this.visibilityTimeout=Math.max(Md,r.visibilityTimeoutSeconds??jd)}isClientError(e){return e instanceof yd||e instanceof vd||e instanceof wd||e instanceof Sd||e instanceof Cd}isNetworkError(e){return e instanceof TypeError}async directiveCallWithRetries(e){let t;for(let n=1;n<=Id;n++)try{return await e()}catch(e){if(t=e,n===Id)throw e;if(e instanceof xd){if(e.retryAfter===void 0)throw e;await new Promise(t=>setTimeout(t,e.retryAfter*1e3));continue}if(!this.isNetworkError(e))throw e;let r=Ld*n,i=r/2+r/2*Math.random();await new Promise(e=>setTimeout(e,i))}throw t}startVisibilityExtension(e,t){let n=!0,r=!1,i,a=null,o=Rd(this.visibilityTimeout)*1e3,s=o;if(t?.visibilityDeadline){let e=t.visibilityDeadline.getTime()-Date.now();s=e>0?Rd(e/1e3)*1e3:0}let c=new Promise(e=>{i=e}),l=()=>{r||(r=!0,i())},u=async()=>{if(!n){l();return}try{await this.client.changeVisibility({queueName:this.topicName,consumerGroup:this.consumerGroupName,receiptHandle:e,visibilityTimeoutSeconds:this.visibilityTimeout}),n?a=setTimeout(()=>u(),o):l()}catch(t){if(this.isClientError(t)){console.error(`Visibility extension failed with client error for receipt handle ${e} (stopping retries):`,t),l();return}console.error(`Failed to extend visibility for receipt handle ${e} (will retry in ${Fd/1e3}s):`,t),n?a=setTimeout(()=>u(),Fd):l()}};return a=setTimeout(()=>u(),s),async(e=!1)=>{n=!1,a&&=(clearTimeout(a),null),e?await c:l()}}async finalizePayload(e){let t=this.client.getTransport();if(t.finalize&&e!=null)try{await t.finalize(e)}catch(e){console.warn(`Failed to finalize message payload:`,e)}}async processMessage(e,t,n){let r=this.startVisibilityExtension(e.receiptHandle,n),i={messageId:e.messageId,deliveryCount:e.deliveryCount,createdAt:e.createdAt,expiresAt:e.expiresAt??new Date(e.createdAt.getTime()+864e5),topicName:this.topicName,consumerGroup:this.consumerGroupName,region:this.client.getRegion()};try{await t(e.payload,i),await r(),await this.client.acknowledgeMessage({queueName:this.topicName,consumerGroup:this.consumerGroupName,receiptHandle:e.receiptHandle})}catch(t){if(await r(),n?.retry){let r;try{r=n.retry(t,i)}catch(e){console.warn(`retry handler threw:`,e)}if(r){if(`acknowledge`in r&&r.acknowledge){try{await this.directiveCallWithRetries(()=>this.client.acknowledgeMessage({queueName:this.topicName,consumerGroup:this.consumerGroupName,receiptHandle:e.receiptHandle}))}catch(e){console.warn(`Failed to acknowledge message:`,e)}await this.finalizePayload(e.payload);return}if(`afterSeconds`in r&&typeof r.afterSeconds==`number`){try{await this.directiveCallWithRetries(()=>this.client.changeVisibility({queueName:this.topicName,consumerGroup:this.consumerGroupName,receiptHandle:e.receiptHandle,visibilityTimeoutSeconds:r.afterSeconds}))}catch(e){console.warn(`Failed to reschedule message for retry:`,e)}await this.finalizePayload(e.payload);return}}}throw await this.finalizePayload(e.payload),t}}async consumeMessage(e,t,n){await this.processMessage(t,e,n)}async consume(e,t){let n=t?.retry;if(t&&`messageId`in t){let r=await this.client.receiveMessageById({queueName:this.topicName,consumerGroup:this.consumerGroupName,messageId:t.messageId,visibilityTimeoutSeconds:this.visibilityTimeout});return await this.processMessage(r.message,e,{retry:n}),1}else{let r=t&&`limit`in t?t.limit:1,i=0;for await(let t of this.client.receiveMessages({queueName:this.topicName,consumerGroup:this.consumerGroupName,visibilityTimeoutSeconds:this.visibilityTimeout,limit:r}))i++,await this.processMessage(t,e,{retry:n});return i}}get name(){return this.consumerGroupName}get topic(){return this.topicName}},Bd=class{client;topicName;constructor(e,t){this.client=e,this.topicName=t}async publish(e,t){let n=await this.client.sendMessage({queueName:this.topicName,payload:e,idempotencyKey:t?.idempotencyKey,retentionSeconds:t?.retentionSeconds,delaySeconds:t?.delaySeconds,headers:t?.headers});return n.messageId&&tf()&&Hf(this.topicName,n.messageId,this.client.getRegion(),t?.delaySeconds,t?.retentionSeconds),{messageId:n.messageId}}consumerGroup(e,t){return new zd(this.client,this.topicName,e,t)}get name(){return this.topicName}},Vd=`com.vercel.queue.v1beta`,Hd=`com.vercel.queue.v2beta`;function Ud(e,t){let n=t.slice(0,-1);return e.startsWith(n)}function Wd(e){return typeof e==`object`&&!!e}function Gd(e,t){if(!t||!t.includes(`application/cloudevents+json`))throw Error(`Invalid content type: expected 'application/cloudevents+json'`);if(!Wd(e)||!e.type||!e.source||!e.id||!Wd(e.data))throw Error(`Invalid CloudEvent: missing required fields`);if(e.type!==`com.vercel.queue.v1beta`)throw Error(`Invalid CloudEvent type: expected '${Vd}', got '${String(e.type)}'`);let{data:n}=e,r=[];if(`queueName`in n||r.push(`queueName`),`consumerGroup`in n||r.push(`consumerGroup`),`messageId`in n||r.push(`messageId`),r.length>0)throw Error(`Missing required CloudEvent data fields: ${r.join(`, `)}`);return{queueName:String(n.queueName),consumerGroup:String(n.consumerGroup),messageId:String(n.messageId)}}function Kd(e,t){if(e instanceof Headers)return e.get(t);let n=e[t];return Array.isArray(n)?n[0]??null:n??null}function qd(e){let t=Kd(e,`ce-type`);if(t!==`com.vercel.queue.v2beta`)throw Error(`Invalid CloudEvent type: expected '${Hd}', got '${t}'`);let n=Kd(e,`ce-vqsqueuename`),r=Kd(e,`ce-vqsconsumergroup`),i=Kd(e,`ce-vqsmessageid`),a=[];if(n||a.push(`ce-vqsqueuename`),r||a.push(`ce-vqsconsumergroup`),i||a.push(`ce-vqsmessageid`),a.length>0)throw Error(`Missing required CloudEvent headers: ${a.join(`, `)}`);let o=Kd(e,`ce-vqsregion`)??void 0;if(o!==void 0&&!/^[a-z]{2,5}[0-9]{1,2}$/.test(o))throw Error(`Invalid ce-vqsregion header: ${JSON.stringify(o)}. Region must match /^[a-z]{2,5}[0-9]{1,2}$/ (e.g. "iad1", "lhr1").`);let s={queueName:n,consumerGroup:r,messageId:i,region:o},c=Kd(e,`ce-vqsreceipthandle`);if(!c)return s;let l={...s,receiptHandle:c},u=Kd(e,`ce-vqsdeliverycount`);u&&(l.deliveryCount=parseInt(u,10));let d=Kd(e,`ce-vqscreatedat`);d&&(l.createdAt=d);let f=Kd(e,`ce-vqsexpiresat`);f&&(l.expiresAt=f);let p=Kd(e,`content-type`);p&&(l.contentType=p);let m=Kd(e,`ce-vqsvisibilitydeadline`);return m&&(l.visibilityDeadline=m),l}function Jd(e,t){if(Kd(t,`ce-type`)===`com.vercel.queue.v2beta`){let n=qd(t);return`receiptHandle`in n&&(n.parsedPayload=e),n}return Gd(e,Kd(t,`content-type`))}async function Yd(e){if(e.headers.get(`ce-type`)===`com.vercel.queue.v2beta`){let t=qd(e.headers);return`receiptHandle`in t&&e.body&&(t.rawBody=e.body),t}let t;try{t=await e.json()}catch{throw Error(`Failed to parse CloudEvent from request body`)}let n={};return e.headers.forEach((e,t)=>{n[t]=e}),Jd(t,n)}async function Xd(e,t,n){let{queueName:r,consumerGroup:i,messageId:a}=t;if(!n?.client)throw Error(`HandleCallbackOptions.client is required`);let o=op(n.client);t.region&&(o=o.withRegion(t.region));let s=new Bd(o,r).consumerGroup(i,n?.visibilityTimeoutSeconds===void 0?void 0:{visibilityTimeoutSeconds:n.visibilityTimeoutSeconds});if(`receiptHandle`in t){let r=o.getTransport(),i;if(t.rawBody)i=await r.deserialize(t.rawBody);else if(t.parsedPayload!==void 0)i=t.parsedPayload;else throw Error(`Binary mode callback with receipt handle is missing payload`);let c={messageId:a,payload:i,deliveryCount:t.deliveryCount??1,createdAt:t.createdAt?new Date(t.createdAt):new Date,expiresAt:t.expiresAt?new Date(t.expiresAt):void 0,contentType:t.contentType??r.contentType,receiptHandle:t.receiptHandle},l=t.visibilityDeadline?new Date(t.visibilityDeadline):void 0;await s.consumeMessage(e,c,{visibilityDeadline:l,retry:n?.retry})}else await s.consume(e,{messageId:a,retry:n?.retry})}var Zd=md.default.cyan(`[queue]`),Qd=md.default.green(`✓`),$d=md.default.red(`✗`),ef=md.default.yellow(`↻`);function tf(){return process.env.NODE_ENV===`development`}var nf=Symbol.for(`@vercel/queue.devRouteMappings`);function rf(e){let t=``;for(let n of e)n===`_`?t+=`__`:n===`/`?t+=`_S`:n===`.`?t+=`_D`:/[A-Za-z0-9-]/.test(n)?t+=n:t+=`_`+n.charCodeAt(0).toString(16).toUpperCase().padStart(2,`0`);return t}function af(){let e=globalThis;if(nf in e)return e[nf]??null;try{let t=ur.join(process.cwd(),`vercel.json`);if(!dr.existsSync(t))return e[nf]=null,null;let n=JSON.parse(dr.readFileSync(t,`utf-8`));if(!n.functions)return e[nf]=null,null;let r=[];for(let[e,t]of Object.entries(n.functions))if(t.experimentalTriggers){for(let n of t.experimentalTriggers)if(!(!n.type?.startsWith(`queue/`)||!n.topic)){if(n.type!==`queue/v2beta`){console.warn(`${Zd} Unsupported trigger type "${n.type}" for topic "${n.topic}" in ${e}. Use "queue/v2beta" instead.`);continue}r.push({filePath:e,topic:n.topic,consumer:rf(e),retryAfterSeconds:n.retryAfterSeconds})}}return e[nf]=r.length>0?r:null,e[nf]}catch(t){return console.warn(`${Zd} Failed to read vercel.json:`,t),e[nf]=null,null}}function of(e){let t=af();return t?t.filter(t=>t.topic.includes(`*`)?Ud(e,t.topic):t.topic===e):[]}function sf(e,t){return of(e).find(e=>e.consumer===t)?.retryAfterSeconds}function cf(e){return/^src\/(app|pages|server)\//.test(e)?e.slice(4):null}function lf(e,t){return e===t||Ou(e,t)}function uf(e){let t=af();if(!t)return[];let n=process.cwd(),r;try{r=ur.relative(n,e)}catch{return[]}let i=r.replace(/\\/g,`/`),a=cf(i);return t.filter(e=>lf(i,e.filePath)||a!==null&&lf(a,e.filePath))}function df(e){let t=e.match(/\((.+?):\d+:\d+\)/);if(t||=e.match(/at\s+(.+?):\d+:\d+/),!t)return null;let n=t[1].trim();if(n===`native`||n.startsWith(`node:`)||n.startsWith(`internal`))return null;if(n.startsWith(`file://`))try{n=new URL(n).pathname}catch{return null}return/^[a-zA-Z][a-zA-Z0-9+.-]*:\/\//.test(n)?null:(n.startsWith(`./`)&&(n=n.slice(2)),n)}var ff;function pf(){if(ff)return ff;try{let e=typeof __dirname<`u`?__dirname:ur.dirname(new URL(import.meta.url).pathname);ff=ur.resolve(e,`..`)}catch{ff=``}return ff}function mf(){let e=Error().stack;if(!e)return null;let t=e.split(`
|
|
107
|
+
`).slice(1),n=pf();for(let e of t){let t=df(e);if(!t)continue;let r=ur.isAbsolute(t)?t:ur.resolve(process.cwd(),t),i;try{i=dr.realpathSync(r)}catch{i=r}if(!(n&&i.startsWith(n)))return i}return null}var hf=Symbol.for(`@vercel/queue.devHandlerRegistry`);function gf(){let e=globalThis;return e[hf]||(e[hf]=new Map),e[hf]}function _f(e,t,n,r){let i=uf(ur.isAbsolute(e)?e:ur.resolve(process.cwd(),e));if(i.length===0)return!1;let a=gf();for(let e of i){let i=e.topic,o=a.get(i)??[],s={consumerGroup:e.consumer,handler:t,client:n,options:r},c=o.findIndex(t=>t.consumerGroup===e.consumer);c>=0?o[c]=s:o.push(s),a.set(i,o)}return!0}function vf(e,t,n,r){let i=r??mf();if(!i){console.warn(`${Zd} Could not determine caller file path for handler registration.`);return}if(!_f(i,e,t,n)){let e=af();if(e&&e.length>0)return;let t=process.cwd(),n;try{n=ur.relative(t,i).replace(/\\/g,`/`)}catch{n=i}console.warn(`${Zd} handleCallback() in ${n} has no matching experimentalTriggers in vercel.json. This handler won't receive messages.
|
|
108
108
|
|
|
109
109
|
Add a trigger to vercel.json:
|
|
110
110
|
"${n}": {
|
|
111
111
|
"experimentalTriggers": [{ "type": "queue/v2beta", "topic": "your-topic" }]
|
|
112
|
-
}`)}}function
|
|
112
|
+
}`)}}function yf(e){let t=gf(),n=[];for(let[r,i]of t)(r.includes(`*`)?Ud(e,r):r===e)&&n.push(...i);return n}var bf=50,xf=5e3,Sf=2,Cf=250,wf=[`PORT`,`NEXT_PORT`,`NEXTJS_PORT`,`NUXT_PORT`,`NITRO_PORT`,`SVELTEKIT_PORT`,`VITE_PORT`,`DEV_PORT`,`npm_config_port`],Tf=[`__NEXT_PRIVATE_ORIGIN`,`NUXT_PUBLIC_SITE_URL`,`URL`];function Ef(e){return e instanceof Error?e.message:String(e)}function Df(e){return e instanceof vd||e instanceof Error&&e.name===`MessageNotFoundError`}function Of(e){if(!e)return null;let t=Number.parseInt(e,10);return!Number.isFinite(t)||t<1||t>65535?null:t}function kf(e){if(!e)return null;try{let t=new URL(e).port;return Of(t)}catch{return null}}function Af(){let e=[],t=new Set,n=n=>{n&&!t.has(n)&&(t.add(n),e.push(n))};for(let e of wf)n(Of(process.env[e]));for(let e of Tf)n(kf(process.env[e]));return e}function jf(e){return new Promise(t=>{let n=fr.connect({host:`localhost`,port:e}),r=!1,i=e=>{r||(r=!0,n.destroy(),t(e))};n.once(`connect`,()=>i(!0)),n.once(`error`,()=>i(!1)),n.setTimeout(Cf,()=>i(!1))})}async function Mf(e,t,n){let r=0,i=bf;for(;;)try{await Xd(e,t,n);return}catch(e){if(Df(e)&&r<xf){await new Promise(e=>setTimeout(e,i)),r+=i,i=Math.min(i*Sf,xf-r);continue}throw e}}function Nf(e){let t=e.replace(/^src\/app\//,`/`).replace(/^src\/pages\//,`/`).replace(/^src\/server\//,`/`).replace(/^src\/routes\//,`/`).replace(/^app\//,`/`).replace(/^pages\//,`/`).replace(/^server\//,`/`).replace(/\/route\.(ts|mts|js|mjs|tsx|jsx)$/,``).replace(/\/\+server\.(ts|mts|js|mjs|tsx|jsx)$/,``).replace(/\.(ts|mts|js|mjs|tsx|jsx)$/,``);return t.startsWith(`/`)||(t=`/`+t),t}async function Pf(e,t={}){let n={triedPorts:Af(),listeningPorts:[],unavailablePorts:[],importFailures:[],primeFailures:[]},r=of(e);if(r.length===0)return n;let i=t.refreshRegistered===!0;for(let e of n.triedPorts)await jf(e)?n.listeningPorts.push(e):n.unavailablePorts.push(e);for(let t of r){let r=If(e,t.consumer);if(!(r&&!i)){if(!r){let r=ur.resolve(process.cwd(),t.filePath);try{await import(r)}catch(e){n.importFailures.push({filePath:t.filePath,reason:Ef(e)})}if(If(e,t.consumer))continue}for(let r of n.listeningPorts){let i=`http://localhost:${r}${Nf(t.filePath)}`;try{let r=await fetch(i,{method:`POST`,headers:{"x-vercel-queue-prime":`1`,"x-vercel-queue-prime-file":t.filePath}});try{await r.text()}catch{}if(If(e,t.consumer))break;n.primeFailures.push({filePath:t.filePath,url:i,reason:`HTTP ${r.status}${r.statusText?` ${r.statusText}`:``}`.trim()})}catch(e){n.primeFailures.push({filePath:t.filePath,url:i,reason:Ef(e)})}}}}return n}function Ff(e,t,n){let r=t.map(e=>e.filePath),i=n.listeningPorts[0]??n.triedPorts[0],a=i?t.map(e=>`http://localhost:${i}${Nf(e.filePath)}`):[],o;if(n.triedPorts.length===0)o=`No local dev port detected from env. Set PORT (or NEXT_PORT/NUXT_PORT/VITE_PORT).`;else if(n.listeningPorts.length===0)o=`Detected env ports: [${n.triedPorts.join(`, `)}], but none are listening.`;else{let e=n.unavailablePorts.length>0?` Not listening: [${n.unavailablePorts.join(`, `)}].`:``;o=`Detected env ports: [${n.triedPorts.join(`, `)}]. Listening: [${n.listeningPorts.join(`, `)}].`+e}let s=n.importFailures.length>0?`
|
|
113
113
|
Import failures: `+n.importFailures.slice(0,2).map(e=>`${e.filePath} (${e.reason})`).join(`; `):``,c=n.primeFailures.length>0?`
|
|
114
|
-
Prime failures: `+n.primeFailures.slice(0,3).map(e=>`${e.url} (${e.reason})`).join(`; `):``;return`${
|
|
114
|
+
Prime failures: `+n.primeFailures.slice(0,3).map(e=>`${e.url} (${e.reason})`).join(`; `):``;return`${Zd} No registered handler for topic "${e}". vercel.json maps this topic to [${r.join(`, `)}] but auto-loading failed.
|
|
115
115
|
${o}${s}${c}
|
|
116
116
|
Ensure your dev server is running, set PORT if needed, and confirm mapped route files call handleCallback()/handleNodeCallback() at module scope.
|
|
117
|
-
`+(a.length>0?`Try opening: ${a.join(` or `)}`:`Set PORT (or NEXT_PORT/NUXT_PORT/VITE_PORT) and try sending again.`)}function
|
|
118
|
-
Ensure vercel.json has a matching experimentalTriggers entry and the route file calls handleCallback().`);return}let o=r.map(e=>e.consumerGroup);console.log(`${
|
|
117
|
+
`+(a.length>0?`Try opening: ${a.join(` or `)}`:`Set PORT (or NEXT_PORT/NUXT_PORT/VITE_PORT) and try sending again.`)}function If(e,t){return yf(e).some(e=>e.consumerGroup===t)}var Lf=10,Rf=2,zf=10,Bf=86400;function Vf(e,t){let n=Math.min(Math.max(t,0),Lf);console.log(`${Zd} ${ef} Scheduling re-delivery in ${n}s: topic="${e.topicName}" consumer="${e.consumerGroup}" messageId="${e.messageId}"`),setTimeout(async()=>{let t=e.deliveryCount+1,n=new Date(e.createdAt.getTime()+e.retentionSeconds*1e3);if(Date.now()>=n.getTime()){console.log(`${Zd} Message expired, stopping retries: topic="${e.topicName}" messageId="${e.messageId}"`);return}if(t>zf){console.log(`${Zd} Max re-deliveries (${zf}) reached: topic="${e.topicName}" messageId="${e.messageId}"`);return}let r={messageId:e.messageId,deliveryCount:t,createdAt:e.createdAt,expiresAt:n,topicName:e.topicName,consumerGroup:e.consumerGroup,region:e.region};console.log(`${Zd} Re-delivering: topic="${e.topicName}" consumer="${e.consumerGroup}" messageId="${e.messageId}" deliveryCount=${t}`);let i=!0,a=null,o=!1;try{await e.handler(e.payload,r)}catch(t){if(i=!1,e.retry){let n;try{n=e.retry(t,r)}catch(e){console.warn(`${Zd} retry handler threw:`,e)}n&&`afterSeconds`in n?a=n.afterSeconds:n&&`acknowledge`in n&&(o=!0)}o||console.error(`${Zd} ${$d} Handler error on re-delivery: topic="${e.topicName}" messageId="${e.messageId}"`,t)}if(i)console.log(`${Zd} ${Qd} Message processed on re-delivery: topic="${e.topicName}" consumer="${e.consumerGroup}" messageId="${e.messageId}"`);else if(o)console.log(`${Zd} ${Qd} Message acknowledged (will not retry): topic="${e.topicName}" consumer="${e.consumerGroup}" messageId="${e.messageId}"`);else{let n=a??e.defaultRetryDelayS;Vf({...e,deliveryCount:t},n)}},n*1e3)}function Hf(e,t,n,r,i){if(r&&r>0){console.log(`${Zd} Message sent with delay: topic="${e}" messageId="${t}" delay=${r}s`),setTimeout(()=>{Hf(e,t,n,void 0,i)},r*1e3);return}console.log(`${Zd} Message sent: topic="${e}" messageId="${t}"`),(async()=>{let r=yf(e),a=null;if(r.length>0?(await Pf(e,{refreshRegistered:!0}),r=yf(e)):(a=await Pf(e),r=yf(e)),r.length===0){let t=of(e);if(t.length>0){let n=a??{triedPorts:Af(),listeningPorts:[],unavailablePorts:[],importFailures:[],primeFailures:[]};console.warn(Ff(e,t,n))}else console.warn(`${Zd} No registered handler for topic "${e}".
|
|
118
|
+
Ensure vercel.json has a matching experimentalTriggers entry and the route file calls handleCallback().`);return}let o=r.map(e=>e.consumerGroup);console.log(`${Zd} Invoking handlers for topic="${e}" messageId="${t}" \u2192 consumers: [${o.join(`, `)}]`);let s=i??Bf;for(let i of r){let r,a=new Date,o=1,c=!0,l=null,u=!1,d=async(e,t)=>{r=e,a=t.createdAt,o=t.deliveryCount;try{await i.handler(e,t)}catch(e){throw c=!1,e}},f=i.options?.retry?(e,t)=>{let n=i.options.retry(e,t);return n&&`afterSeconds`in n?l=n.afterSeconds:n&&`acknowledge`in n&&(u=!0),n}:void 0,p={queueName:e,consumerGroup:i.consumerGroup,messageId:t,region:n},m={client:i.client,visibilityTimeoutSeconds:i.options?.visibilityTimeoutSeconds,retry:f},h=Math.min(sf(e,i.consumerGroup)??Rf,Lf),g=()=>({handler:i.handler,retry:i.options?.retry,payload:r,topicName:e,consumerGroup:i.consumerGroup,messageId:t,region:n,createdAt:a,retentionSeconds:s,deliveryCount:o,defaultRetryDelayS:h});try{if(await Mf(d,p,m),c)console.log(`${Zd} ${Qd} Message processed: topic="${e}" consumer="${i.consumerGroup}" messageId="${t}"`);else if(u)console.log(`${Zd} ${Qd} Message acknowledged (will not retry): topic="${e}" consumer="${i.consumerGroup}" messageId="${t}"`);else if(l!==null){let e=Math.min(l,Lf);Vf(g(),e)}}catch(n){console.error(`${Zd} ${$d} Handler failed: topic="${e}" consumer="${i.consumerGroup}" messageId="${t}"`,n),c||Vf(g(),h)}}})()}function Uf(){let e=globalThis;delete e[nf],delete e[hf]}(process.env.NODE_ENV===`test`||process.env.VITEST)&&(globalThis.__clearDevState=Uf,globalThis.__filePathToConsumerGroup=rf,globalThis.__filePathToUrlPath=Nf,globalThis.__matchesFunctionsPattern=lf,globalThis.__stripSrcPrefix=cf);function Wf(){return process.env.VERCEL_QUEUE_DEBUG===`1`||process.env.VERCEL_QUEUE_DEBUG===`true`}async function Gf(e){let t=e.getReader();try{for(;;){let{done:e}=await t.read();if(e)break}}finally{t.releaseLock()}}function Kf(e){if(!e)return;let t=Number(e);if(Number.isFinite(t)&&t>=0)return t;let n=Date.parse(e);if(!Number.isNaN(n))return Math.max(0,(n-Date.now())/1e3)}function qf(e,t,n,r,i=`Invalid parameters`,a){throw e===400?new wd(n||i):e===429?new xd(n||`Too many requests: ${r}`,Kf(a)):e===401?new Sd(n||void 0):e===403?new Cd(n||void 0):e>=500?new Td(n||`Server error: ${e} ${t}`):Error(`Failed to ${r}: ${e} ${t}`)}function Jf(e){let t=e.get(`Vqs-Message-Id`),n=e.get(`Vqs-Delivery-Count`)||`0`,r=e.get(`Vqs-Timestamp`),i=e.get(`Content-Type`)||`application/octet-stream`,a=e.get(`Vqs-Receipt-Handle`),o=e.get(`Vqs-Expires-At`);if(!t||!r||!a)return null;let s=parseInt(n,10);return Number.isNaN(s)?null:{messageId:t,deliveryCount:s,createdAt:new Date(r),expiresAt:o?new Date(o):void 0,contentType:i,receiptHandle:a}}var Yf=/^[a-z]{2,5}[0-9]{1,2}$/;function Xf(e){if(!Yf.test(e))throw Error(`Invalid region code: ${JSON.stringify(e)}. Region must match the pattern /^[a-z]{2,5}[0-9]{1,2}$/ (e.g. "iad1", "lhr1").`)}var Zf=e=>new URL(`https://${e}.vercel-queue.com`);function Qf(e,t){return(t??Zf)(e)}var $f=`/api/v3/topic`,ep=class e{baseUrl;customHeaders;providedToken;resolvedDeploymentId;pinSends;explicitlyUnpinned;transport;region;baseUrlResolver;dispatcher;constructor(e){Xf(e.region),this.region=e.region,this.baseUrlResolver=e.resolveBaseUrl,this.baseUrl=Qf(this.region,this.baseUrlResolver),this.customHeaders=e.headers||{},this.providedToken=e.token,this.transport=e.transport||new _d,this.dispatcher=e.dispatcher,e.deploymentId===null?(this.pinSends=!1,this.explicitlyUnpinned=!0):(this.resolvedDeploymentId=e.deploymentId||process.env.VERCEL_DEPLOYMENT_ID,this.pinSends=!0,this.explicitlyUnpinned=!1)}withRegion(t){return new e({region:t,resolveBaseUrl:this.baseUrlResolver,token:this.providedToken,headers:{...this.customHeaders},deploymentId:this.explicitlyUnpinned?null:this.resolvedDeploymentId,transport:this.transport,dispatcher:this.dispatcher})}getRegion(){return this.region}getTransport(){return this.transport}requireDeploymentId(){if(!(tf()||this.explicitlyUnpinned||this.resolvedDeploymentId))throw Error(`No deployment ID available. VERCEL_DEPLOYMENT_ID is not set.
|
|
119
119
|
|
|
120
120
|
This usually means the code is running outside a Vercel deployment (e.g. during build or in a non-Vercel environment).
|
|
121
121
|
|
|
122
122
|
To fix this, create a client with an explicit deploymentId:
|
|
123
123
|
new QueueClient({ deploymentId: "dpl_xxx" })
|
|
124
124
|
Or explicitly opt out of deployment pinning:
|
|
125
|
-
new QueueClient({ deploymentId: null })`)}getSendDeploymentId(){if(!
|
|
125
|
+
new QueueClient({ deploymentId: null })`)}getSendDeploymentId(){if(!tf())return this.requireDeploymentId(),this.pinSends?this.resolvedDeploymentId:void 0}getConsumeDeploymentId(){if(!tf())return this.requireDeploymentId(),this.resolvedDeploymentId}async getToken(){if(this.providedToken)return this.providedToken;try{return await(0,hd.getVercelOidcToken)()}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(tf()?`Failed to get OIDC token for local development.
|
|
126
126
|
|
|
127
127
|
To fix this, pull your environment variables with Vercel CLI:
|
|
128
128
|
\`vercel env pull\`
|
|
@@ -133,9 +133,9 @@ To fix this, either:
|
|
|
133
133
|
- Deploy to Vercel (OIDC tokens are provisioned automatically)
|
|
134
134
|
- Provide a token explicitly: \`new QueueClient({ token: '...' })\`
|
|
135
135
|
|
|
136
|
-
Cause: ${t}`)}}buildUrl(e,...t){let n=encodeURIComponent(e),r=t.map(e=>encodeURIComponent(e)),i=r.length>0?`/`+r.join(`/`):``,a=this.baseUrl.pathname.replace(/\/+$/,``);return`${this.baseUrl.origin}${a}${kf}/${n}${i}`}async fetch(e,t){let n=t.method||`GET`;if(bf()){let r={method:n,url:e,headers:t.headers},i=t.body;i!=null&&(i instanceof ArrayBuffer||i instanceof Uint8Array?r.bodySize=i.byteLength:typeof i==`string`?r.bodySize=i.length:r.bodyType=typeof i),console.debug(`[VQS Debug] Request:`,JSON.stringify(r,null,2))}t.headers.set(`User-Agent`,`@vercel/queue/0.3.1`),t.headers.set(`Vqs-Client-Ts`,new Date().toISOString());let r=this.dispatcher?{...t,dispatcher:this.dispatcher}:t,i=await fetch(e,r);if(bf()){let t={method:n,url:e,status:i.status,statusText:i.statusText,headers:i.headers};console.debug(`[VQS Debug] Response:`,JSON.stringify(t,null,2))}return i}async sendMessage(e){let t=this.transport,{queueName:n,payload:r,idempotencyKey:i,retentionSeconds:a,delaySeconds:o,headers:s}=e,c=new Headers;if(this.customHeaders)for(let[e,t]of Object.entries(this.customHeaders))c.append(e,t);if(s){let e=new Set([`authorization`,`content-type`]),t=t=>{let n=t.toLowerCase();return e.has(n)?!0:n.startsWith(`vqs-`)};for(let[e,n]of Object.entries(s))!t(e)&&n!==void 0&&c.append(e,n)}c.set(`Authorization`,`Bearer ${await this.getToken()}`),c.set(`Content-Type`,t.contentType);let l=this.getSendDeploymentId();l&&c.set(`Vqs-Deployment-Id`,l),i&&c.set(`Vqs-Idempotency-Key`,i),a!==void 0&&c.set(`Vqs-Retention-Seconds`,a.toString()),o!==void 0&&c.set(`Vqs-Delay-Seconds`,o.toString());let u=t.serialize(r),d=Buffer.isBuffer(u)?new Uint8Array(u):u,f=await this.fetch(this.buildUrl(n),{method:`POST`,body:d,headers:c});if(!f.ok){let e=await f.text();if(f.status===409)throw new id(e||`Duplicate idempotency key detected`,i);if(f.status===502)throw new ad(e||`Consumer discovery failed`,l);if(f.status===503)throw new od(e||`Consumer registry not configured`);Cf(f.status,f.statusText,e,`send message`)}return f.status===202?(await f.text(),{messageId:null}):await f.json()}async*receiveMessages(e){let t=this.transport,{queueName:n,consumerGroup:r,visibilityTimeoutSeconds:i,limit:a}=e;if(a!==void 0&&(a<1||a>10))throw new nd(a);let o=new Headers({Authorization:`Bearer ${await this.getToken()}`,Accept:`multipart/mixed`,...this.customHeaders});i!==void 0&&o.set(`Vqs-Visibility-Timeout-Seconds`,i.toString()),a!==void 0&&o.set(`Vqs-Max-Messages`,a.toString());let s=this.getConsumeDeploymentId();s&&o.set(`Vqs-Deployment-Id`,s);let c=await this.fetch(this.buildUrl(n,`consumer`,r),{method:`POST`,headers:o});if(c.status===204){await c.text();return}if(!c.ok){let e=await c.text();Cf(c.status,c.statusText,e,`receive messages`)}for await(let e of il(c))try{let n=wf(e.headers);if(!n){console.warn(`Missing required queue headers in multipart part`),await xf(e.payload);continue}let r=await t.deserialize(e.payload);yield{...n,payload:r}}catch(t){console.warn(`Failed to process multipart message:`,t),await xf(e.payload)}}async receiveMessageById(e){let t=this.transport,{queueName:n,consumerGroup:r,messageId:i,visibilityTimeoutSeconds:a}=e,o=new Headers({Authorization:`Bearer ${await this.getToken()}`,Accept:`multipart/mixed`,...this.customHeaders});a!==void 0&&o.set(`Vqs-Visibility-Timeout-Seconds`,a.toString());let s=this.getConsumeDeploymentId();s&&o.set(`Vqs-Deployment-Id`,s);let c=await this.fetch(this.buildUrl(n,`consumer`,r,`id`,i),{method:`POST`,headers:o});if(!c.ok){let e=await c.text();if(c.status===404)throw new Ju(i);if(c.status===409){let t={};try{t=JSON.parse(e)}catch{}throw t.originalMessageId?new Yu(i,`This message was a duplicate - use originalMessageId: ${t.originalMessageId}`):new Yu(i)}if(c.status===410)throw new rd(i);Cf(c.status,c.statusText,e,`receive message by ID`)}for await(let e of il(c)){let n=wf(e.headers);if(!n)throw await xf(e.payload),new Xu(i,`Missing required queue headers in response`);let r=await t.deserialize(e.payload);return{message:{...n,payload:r}}}throw new Ju(i)}async acknowledgeMessage(e){let{queueName:t,consumerGroup:n,receiptHandle:r}=e,i=new Headers({Authorization:`Bearer ${await this.getToken()}`,...this.customHeaders}),a=this.getConsumeDeploymentId();a&&i.set(`Vqs-Deployment-Id`,a);let o=await this.fetch(this.buildUrl(t,`consumer`,n,`lease`,r),{method:`DELETE`,headers:i});if(!o.ok){let e=await o.text();if(o.status===404)throw new Ju(r);if(o.status===409)throw new Yu(r,e||`Invalid receipt handle, message not in correct state, or already processed`);Cf(o.status,o.statusText,e,`acknowledge message`,`Missing or invalid receipt handle`,o.headers?.get(`Retry-After`)??null)}return await o.text(),{acknowledged:!0}}async changeVisibility(e){let{queueName:t,consumerGroup:n,receiptHandle:r,visibilityTimeoutSeconds:i}=e,a=new Headers({Authorization:`Bearer ${await this.getToken()}`,"Content-Type":`application/json`,...this.customHeaders}),o=this.getConsumeDeploymentId();o&&a.set(`Vqs-Deployment-Id`,o);let s=await this.fetch(this.buildUrl(t,`consumer`,n,`lease`,r),{method:`PATCH`,headers:a,body:JSON.stringify({visibilityTimeoutSeconds:i})});if(!s.ok){let e=await s.text();if(s.status===404)throw new Ju(r);if(s.status===409)throw new Yu(r,e||`Invalid receipt handle, message not in correct state, or already processed`);Cf(s.status,s.statusText,e,`change visibility`,`Missing receipt handle or invalid visibility timeout`,s.headers?.get(`Retry-After`)??null)}return await s.text(),{success:!0}}},jf=new WeakMap,Mf=Symbol.for(`@vercel/queue.apiClient`);function Nf(e,t){jf.set(e,t),Object.defineProperty(e,Mf,{value:t,writable:!1,enumerable:!1,configurable:!1})}function Pf(e){let t=jf.get(e);if(t)return t;let n=e[Mf];if(typeof n==`object`&&n){let t=n;return jf.set(e,t),t}throw Error(`QueueClient not initialized. This may happen when multiple bundled copies of @vercel/queue are loaded in local dev.`)}function Ff(e){return`request`in e?e.request:e}function If(e){return Pf(e)}var Lf=`iad1`;function Rf(e){return e||process.env.VERCEL_REGION||(jd()||console.warn(`[QueueClient] Region not detected \u2014 defaulting to "${Lf}". On Vercel this is set automatically via VERCEL_REGION. To silence this warning, pass region explicitly: new QueueClient({ region: "iad1" })`),Lf)}var zf=class{constructor(e={}){let t=Rf(e.region);Nf(this,new Af({...e,region:t}))}send=async(e,t,n)=>{let r=Pf(this),i=await r.sendMessage({queueName:e,payload:t,idempotencyKey:n?.idempotencyKey,retentionSeconds:n?.retentionSeconds,delaySeconds:n?.delaySeconds,headers:n?.headers});return i.messageId&&jd()&&vf(e,i.messageId,r.getRegion(),n?.delaySeconds,n?.retentionSeconds),{messageId:i.messageId}};handleCallback=(e,t)=>(jd()&&qd(e,this,t),async n=>{let r=Ff(n);if(jd()&&r.headers.get(`x-vercel-queue-prime`)===`1`){let n=r.headers.get(`x-vercel-queue-prime-file`);return n&&qd(e,this,t,n),Response.json({status:`primed`})}try{return await Ed(e,await Td(r),{client:this,visibilityTimeoutSeconds:t?.visibilityTimeoutSeconds,retry:t?.retry}),Response.json({status:`success`})}catch(e){return console.error(`Queue callback error:`,e),e instanceof Error&&(e.message.includes(`Invalid content type`)||e.message.includes(`Invalid CloudEvent`)||e.message.includes(`Missing required CloudEvent`)||e.message.includes(`Failed to parse CloudEvent`)||e.message.includes(`Binary mode callback`))?Response.json({error:e.message},{status:400}):Response.json({error:`Failed to process queue message`},{status:500})}});handleNodeCallback=(e,t)=>(jd()&&qd(e,this,t),async(n,r)=>{if(n.method!==`POST`){r.status(200).end();return}let i=n.headers[`x-vercel-queue-prime`];if(jd()&&i===`1`){let i=n.headers[`x-vercel-queue-prime-file`],a=Array.isArray(i)?i[0]:i;a&&qd(e,this,t,a),r.status(200).json({status:`primed`});return}try{await Ed(e,wd(n.body,n.headers),{client:this,visibilityTimeoutSeconds:t?.visibilityTimeoutSeconds,retry:t?.retry}),r.status(200).json({status:`success`})}catch(e){if(console.error(`Queue callback error:`,e),e instanceof Error&&(e.message.includes(`Invalid content type`)||e.message.includes(`Invalid CloudEvent`)||e.message.includes(`Missing required CloudEvent`)||e.message.includes(`Failed to parse CloudEvent`)||e.message.includes(`Binary mode callback`))){r.status(400).json({error:e.message});return}r.status(500).json({error:`Failed to process queue message`})}})};let Bf;try{Bf=new TextDecoder}catch{}let J,Vf,Y=0;const Hf=[],Uf=57337,Wf={};let Gf=11281e4,Kf=1681e4,qf=Hf,Jf=0,X={},Yf,Xf,Zf=0,Qf=0,$f,ep,tp=[],np=[],rp,ip,ap,op={useRecords:!1,mapsAsObjects:!0},sp=!1,cp=2;try{Function(``)}catch{cp=1/0}var lp=class e{constructor(e){if(e&&((e.keyMap||e._keyMap)&&!e.useRecords&&(e.useRecords=!1,e.mapsAsObjects=!0),e.useRecords===!1&&e.mapsAsObjects===void 0&&(e.mapsAsObjects=!0),e.getStructures&&(e.getShared=e.getStructures),e.getShared&&!e.structures&&((e.structures=[]).uninitialized=!0),e.keyMap)){this.mapKey=new Map;for(let[t,n]of Object.entries(e.keyMap))this.mapKey.set(n,t)}Object.assign(this,e)}decodeKey(e){return this.keyMap&&this.mapKey.get(e)||e}encodeKey(e){return this.keyMap&&this.keyMap.hasOwnProperty(e)?this.keyMap[e]:e}encodeKeys(e){if(!this._keyMap)return e;let t=new Map;for(let[n,r]of Object.entries(e))t.set(this._keyMap.hasOwnProperty(n)?this._keyMap[n]:n,r);return t}decodeKeys(e){if(!this._keyMap||e.constructor.name!=`Map`)return e;if(!this._mapKey){this._mapKey=new Map;for(let[e,t]of Object.entries(this._keyMap))this._mapKey.set(t,e)}let t={};return e.forEach((e,n)=>t[pp(this._mapKey.has(n)?this._mapKey.get(n):n)]=e),t}mapDecode(e,t){let n=this.decode(e);if(this._keyMap)switch(n.constructor.name){case`Array`:return n.map(e=>this.decodeKeys(e))}return n}decode(t,n){if(J)return Lp(()=>(Rp(),this?this.decode(t,n):e.prototype.decode.call(op,t,n)));Vf=n>-1?n:t.length,Y=0,Jf=0,Qf=0,Xf=null,qf=Hf,$f=null,J=t;try{ip=t.dataView||=new DataView(t.buffer,t.byteOffset,t.byteLength)}catch(e){throw J=null,t instanceof Uint8Array?e:Error(`Source must be a Uint8Array or Buffer but was a `+(t&&typeof t==`object`?t.constructor.name:typeof t))}if(this instanceof e){if(X=this,rp=this.sharedValues&&(this.pack?Array(this.maxPrivatePackedValues||16).concat(this.sharedValues):this.sharedValues),this.structures)return Yf=this.structures,up();(!Yf||Yf.length>0)&&(Yf=[])}else X=op,(!Yf||Yf.length>0)&&(Yf=[]),rp=null;return up()}decodeMultiple(e,t){let n,r=0;try{let i=e.length;sp=!0;let a=this?this.decode(e,i):Bp.decode(e,i);if(t){if(t(a)===!1)return;for(;Y<i;)if(r=Y,t(up())===!1)return}else{for(n=[a];Y<i;)r=Y,n.push(up());return n}}catch(e){throw e.lastPosition=r,e.values=n,e}finally{sp=!1,Rp()}}};function up(){try{let e=Z();if($f){if(Y>=$f.postBundlePosition){let e=Error(`Unexpected bundle position`);throw e.incomplete=!0,e}Y=$f.postBundlePosition,$f=null}if(Y==Vf)Yf=null,J=null,ep&&=null;else if(Y>Vf){let e=Error(`Unexpected end of CBOR data`);throw e.incomplete=!0,e}else if(!sp)throw Error(`Data read, but end of buffer not reached`);return e}catch(e){throw Rp(),(e instanceof RangeError||e.message.startsWith(`Unexpected end of buffer`))&&(e.incomplete=!0),e}}function Z(){let e=J[Y++],t=e>>5;if(e&=31,e>23)switch(e){case 24:e=J[Y++];break;case 25:if(t==7)return Cp();e=ip.getUint16(Y),Y+=2;break;case 26:if(t==7){let e=ip.getFloat32(Y);if(X.useFloat32>2){let t=zp[(J[Y]&127)<<1|J[Y+1]>>7];return Y+=4,(t*e+(e>0?.5:-.5)>>0)/t}return Y+=4,e}e=ip.getUint32(Y),Y+=4;break;case 27:if(t==7){let e=ip.getFloat64(Y);return Y+=8,e}if(t>1){if(ip.getUint32(Y)>0)throw Error(`JavaScript does not support arrays, maps, or strings with length over 4294967295`);e=ip.getUint32(Y+4)}else X.int64AsNumber?(e=ip.getUint32(Y)*4294967296,e+=ip.getUint32(Y+4)):e=ip.getBigUint64(Y);Y+=8;break;case 31:switch(t){case 2:case 3:throw Error(`Indefinite length not supported for byte or text strings`);case 4:let e=[],n,r=0;for(;(n=Z())!=Wf;){if(r>=Gf)throw Error(`Array length exceeds ${Gf}`);e[r++]=n}return t==4?e:t==3?e.join(``):Buffer.concat(e);case 5:let i;if(X.mapsAsObjects){let e={},t=0;if(X.keyMap)for(;(i=Z())!=Wf;){if(t++>=Kf)throw Error(`Property count exceeds ${Kf}`);e[pp(X.decodeKey(i))]=Z()}else for(;(i=Z())!=Wf;){if(t++>=Kf)throw Error(`Property count exceeds ${Kf}`);e[pp(i)]=Z()}return e}else{ap&&=(X.mapsAsObjects=!0,!1);let e=new Map;if(X.keyMap){let t=0;for(;(i=Z())!=Wf;){if(t++>=Kf)throw Error(`Map size exceeds ${Kf}`);e.set(X.decodeKey(i),Z())}}else{let t=0;for(;(i=Z())!=Wf;){if(t++>=Kf)throw Error(`Map size exceeds ${Kf}`);e.set(i,Z())}}return e}case 7:return Wf;default:throw Error(`Invalid major type for indefinite length `+t)}default:throw Error(`Unknown token `+e)}switch(t){case 0:return e;case 1:return~e;case 2:return bp(e);case 3:if(Qf>=Y)return Xf.slice(Y-Zf,(Y+=e)-Zf);if(Qf==0&&Vf<140&&e<32){let t=e<16?yp(e):vp(e);if(t!=null)return t}return mp(e);case 4:if(e>=Gf)throw Error(`Array length exceeds ${Gf}`);let t=Array(e);for(let n=0;n<e;n++)t[n]=Z();return t;case 5:if(e>=Kf)throw Error(`Map size exceeds ${Gf}`);if(X.mapsAsObjects){let t={};if(X.keyMap)for(let n=0;n<e;n++)t[pp(X.decodeKey(Z()))]=Z();else for(let n=0;n<e;n++)t[pp(Z())]=Z();return t}else{ap&&=(X.mapsAsObjects=!0,!1);let t=new Map;if(X.keyMap)for(let n=0;n<e;n++)t.set(X.decodeKey(Z()),Z());else for(let n=0;n<e;n++)t.set(Z(),Z());return t}case 6:if(e>=Uf){let t=Yf[e&8191];if(t)return t.read||=fp(t),t.read();if(e<65536){if(e==57343){let e=Fp(),t=Z(),n=Z();Tp(t,n);let r={};if(X.keyMap)for(let t=2;t<e;t++){let e=X.decodeKey(n[t-2]);r[pp(e)]=Z()}else for(let t=2;t<e;t++){let e=n[t-2];r[pp(e)]=Z()}return r}else if(e==57342){let e=Fp(),t=Z();for(let n=2;n<e;n++)Tp(t++,Z());return Z()}else if(e==Uf)return Pp();if(X.getShared&&(Ip(),t=Yf[e&8191],t))return t.read||=fp(t),t.read()}}let n=tp[e];if(n)return n.handlesRead?n(Z):n(Z());{let t=Z();for(let n=0;n<np.length;n++){let r=np[n](e,t);if(r!==void 0)return r}return new wp(t,e)}case 7:switch(e){case 20:return!1;case 21:return!0;case 22:return null;case 23:return;default:let t=(rp||kp())[e];if(t!==void 0)return t;throw Error(`Unknown token `+e)}default:if(isNaN(e)){let e=Error(`Unexpected end of CBOR data`);throw e.incomplete=!0,e}throw Error(`Unknown CBOR token `+e)}}const dp=/^[a-zA-Z_$][a-zA-Z\d_$]*$/;function fp(e){if(!e)throw Error(`Structure is required in record definition`);function t(){let e=J[Y++];if(e&=31,e>23)switch(e){case 24:e=J[Y++];break;case 25:e=ip.getUint16(Y),Y+=2;break;case 26:e=ip.getUint32(Y),Y+=4;break;default:throw Error(`Expected array header, but got `+J[Y-1])}let t=this.compiledReader;for(;t;){if(t.propertyCount===e)return t(Z);t=t.next}if(this.slowReads++>=cp){let n=this.length==e?this:this.slice(0,e);return t=X.keyMap?Function(`r`,`return {`+n.map(e=>X.decodeKey(e)).map(e=>dp.test(e)?pp(e)+`:r()`:`[`+JSON.stringify(e)+`]:r()`).join(`,`)+`}`):Function(`r`,`return {`+n.map(e=>dp.test(e)?pp(e)+`:r()`:`[`+JSON.stringify(e)+`]:r()`).join(`,`)+`}`),this.compiledReader&&(t.next=this.compiledReader),t.propertyCount=e,this.compiledReader=t,t(Z)}let n={};if(X.keyMap)for(let t=0;t<e;t++)n[pp(X.decodeKey(this[t]))]=Z();else for(let t=0;t<e;t++)n[pp(this[t])]=Z();return n}return e.slowReads=0,t}function pp(e){if(typeof e==`string`)return e===`__proto__`?`__proto_`:e;if(typeof e==`number`||typeof e==`boolean`||typeof e==`bigint`)return e.toString();if(e==null)return e+``;throw Error(`Invalid property name type `+typeof e)}let mp=gp;function hp(e){mp=t(1);function t(t){return function(t){let n=qf[Jf++];if(n==null){if($f)return gp(t);let r=e(Y,Vf,t,J);if(typeof r==`string`)n=r,qf=Hf;else if(qf=r,Jf=1,Qf=1,n=qf[0],n===void 0)throw Error(`Unexpected end of buffer`)}let r=n.length;return r<=t?(Y+=t,n):(Xf=n,Zf=Y,Qf=Y+r,Y+=t,n.slice(0,t))}}}function gp(e){let t;if(e<16&&(t=yp(e)))return t;if(e>64&&Bf)return Bf.decode(J.subarray(Y,Y+=e));let n=Y+e,r=[];for(t=``;Y<n;){let e=J[Y++];if(!(e&128))r.push(e);else if((e&224)==192){let t=J[Y++]&63;r.push((e&31)<<6|t)}else if((e&240)==224){let t=J[Y++]&63,n=J[Y++]&63;r.push((e&31)<<12|t<<6|n)}else if((e&248)==240){let t=J[Y++]&63,n=J[Y++]&63,i=J[Y++]&63,a=(e&7)<<18|t<<12|n<<6|i;a>65535&&(a-=65536,r.push(a>>>10&1023|55296),a=56320|a&1023),r.push(a)}else r.push(e);r.length>=4096&&(t+=_p.apply(String,r),r.length=0)}return r.length>0&&(t+=_p.apply(String,r)),t}let _p=String.fromCharCode;function vp(e){let t=Y,n=Array(e);for(let r=0;r<e;r++){let e=J[Y++];if((e&128)>0){Y=t;return}n[r]=e}return _p.apply(String,n)}function yp(e){if(e<4)if(e<2){if(e===0)return``;{let e=J[Y++];if((e&128)>1){--Y;return}return _p(e)}}else{let t=J[Y++],n=J[Y++];if((t&128)>0||(n&128)>0){Y-=2;return}if(e<3)return _p(t,n);let r=J[Y++];if((r&128)>0){Y-=3;return}return _p(t,n,r)}else{let t=J[Y++],n=J[Y++],r=J[Y++],i=J[Y++];if((t&128)>0||(n&128)>0||(r&128)>0||(i&128)>0){Y-=4;return}if(e<6){if(e===4)return _p(t,n,r,i);{let e=J[Y++];if((e&128)>0){Y-=5;return}return _p(t,n,r,i,e)}}else if(e<8){let a=J[Y++],o=J[Y++];if((a&128)>0||(o&128)>0){Y-=6;return}if(e<7)return _p(t,n,r,i,a,o);let s=J[Y++];if((s&128)>0){Y-=7;return}return _p(t,n,r,i,a,o,s)}else{let a=J[Y++],o=J[Y++],s=J[Y++],c=J[Y++];if((a&128)>0||(o&128)>0||(s&128)>0||(c&128)>0){Y-=8;return}if(e<10){if(e===8)return _p(t,n,r,i,a,o,s,c);{let e=J[Y++];if((e&128)>0){Y-=9;return}return _p(t,n,r,i,a,o,s,c,e)}}else if(e<12){let l=J[Y++],u=J[Y++];if((l&128)>0||(u&128)>0){Y-=10;return}if(e<11)return _p(t,n,r,i,a,o,s,c,l,u);let d=J[Y++];if((d&128)>0){Y-=11;return}return _p(t,n,r,i,a,o,s,c,l,u,d)}else{let l=J[Y++],u=J[Y++],d=J[Y++],f=J[Y++];if((l&128)>0||(u&128)>0||(d&128)>0||(f&128)>0){Y-=12;return}if(e<14){if(e===12)return _p(t,n,r,i,a,o,s,c,l,u,d,f);{let e=J[Y++];if((e&128)>0){Y-=13;return}return _p(t,n,r,i,a,o,s,c,l,u,d,f,e)}}else{let p=J[Y++],m=J[Y++];if((p&128)>0||(m&128)>0){Y-=14;return}if(e<15)return _p(t,n,r,i,a,o,s,c,l,u,d,f,p,m);let h=J[Y++];if((h&128)>0){Y-=15;return}return _p(t,n,r,i,a,o,s,c,l,u,d,f,p,m,h)}}}}}function bp(e){return X.copyBuffers?Uint8Array.prototype.slice.call(J,Y,Y+=e):J.subarray(Y,Y+=e)}let xp=new Float32Array(1),Sp=new Uint8Array(xp.buffer,0,4);function Cp(){let e=J[Y++],t=J[Y++],n=(e&127)>>2;if(n===31)return t||e&3?NaN:e&128?-1/0:1/0;if(n===0){let n=((e&3)<<8|t)/(1<<24);return e&128?-n:n}return Sp[3]=e&128|(n>>1)+56,Sp[2]=(e&7)<<5|t>>3,Sp[1]=t<<5,Sp[0]=0,xp[0]}Array(4096);var wp=class{constructor(e,t){this.value=e,this.tag=t}};tp[0]=e=>new Date(e),tp[1]=e=>new Date(Math.round(e*1e3)),tp[2]=e=>{let t=BigInt(0);for(let n=0,r=e.byteLength;n<r;n++)t=BigInt(e[n])+(t<<BigInt(8));return t},tp[3]=e=>BigInt(-1)-tp[2](e),tp[4]=e=>+(e[1]+`e`+e[0]),tp[5]=e=>e[1]*Math.exp(e[0]*Math.log(2));const Tp=(e,t)=>{e-=57344;let n=Yf[e];n&&n.isShared&&((Yf.restoreStructures||=[])[e]=n),Yf[e]=t,t.read=fp(t)};tp[105]=e=>{let t=e.length,n=e[1];Tp(e[0],n);let r={};for(let i=2;i<t;i++){let t=n[i-2];r[pp(t)]=e[i]}return r},tp[14]=e=>$f?$f[0].slice($f.position0,$f.position0+=e):new wp(e,14),tp[15]=e=>$f?$f[1].slice($f.position1,$f.position1+=e):new wp(e,15);let Ep={Error,RegExp};tp[27]=e=>(Ep[e[0]]||Error)(e[1],e[2]);const Dp=e=>{if(J[Y++]!=132){let e=Error(`Packed values structure must be followed by a 4 element array`);throw J.length<Y&&(e.incomplete=!0),e}let t=e();if(!t||!t.length){let e=Error(`Packed values structure must be followed by a 4 element array`);throw e.incomplete=!0,e}return rp=rp?t.concat(rp.slice(t.length)):t,rp.prefixes=e(),rp.suffixes=e(),e()};Dp.handlesRead=!0,tp[51]=Dp,tp[6]=e=>{if(!rp)if(X.getShared)Ip();else return new wp(e,6);if(typeof e==`number`)return rp[16+(e>=0?2*e:-2*e-1)];let t=Error(`No support for non-integer packed references yet`);throw e===void 0&&(t.incomplete=!0),t},tp[28]=e=>{ep||(ep=new Map,ep.id=0);let t=ep.id++,n=Y,r=J[Y],i;i=r>>5==4?[]:{};let a={target:i};ep.set(t,a);let o=e();return a.used?(Object.getPrototypeOf(i)!==Object.getPrototypeOf(o)&&(Y=n,i=o,ep.set(t,{target:i}),o=e()),Object.assign(i,o)):(a.target=o,o)},tp[28].handlesRead=!0,tp[29]=e=>{let t=ep.get(e);return t.used=!0,t.target},tp[258]=e=>new Set(e),(tp[259]=e=>(X.mapsAsObjects&&(X.mapsAsObjects=!1,ap=!0),e())).handlesRead=!0;function Op(e,t){return typeof e==`string`?e+t:e instanceof Array?e.concat(t):Object.assign({},e,t)}function kp(){if(!rp)if(X.getShared)Ip();else throw Error(`No packed values available`);return rp}np.push((e,t)=>{if(e>=225&&e<=255)return Op(kp().prefixes[e-224],t);if(e>=28704&&e<=32767)return Op(kp().prefixes[e-28672],t);if(e>=1879052288&&e<=2147483647)return Op(kp().prefixes[e-1879048192],t);if(e>=216&&e<=223)return Op(t,kp().suffixes[e-216]);if(e>=27647&&e<=28671)return Op(t,kp().suffixes[e-27639]);if(e>=1811940352&&e<=1879048191)return Op(t,kp().suffixes[e-1811939328]);if(e==1399353956)return{packedValues:rp,structures:Yf.slice(0),version:t};if(e==55799)return t});const Ap=new Uint8Array(new Uint16Array([1]).buffer)[0]==1,jp=[Uint8Array,Uint8ClampedArray,Uint16Array,Uint32Array,typeof BigUint64Array>`u`?{name:`BigUint64Array`}:BigUint64Array,Int8Array,Int16Array,Int32Array,typeof BigInt64Array>`u`?{name:`BigInt64Array`}:BigInt64Array,Float32Array,Float64Array],Mp=[64,68,69,70,71,72,77,78,79,85,86];for(let e=0;e<jp.length;e++)Np(jp[e],Mp[e]);function Np(e,t){let n=`get`+e.name.slice(0,-5),r;typeof e==`function`?r=e.BYTES_PER_ELEMENT:e=null;for(let i=0;i<2;i++){if(!i&&r==1)continue;let a=r==2?1:r==4?2:r==8?3:0;tp[i?t:t-4]=r==1||i==Ap?n=>{if(!e)throw Error(`Could not find typed array for code `+t);return!X.copyBuffers&&(r===1||r===2&&!(n.byteOffset&1)||r===4&&!(n.byteOffset&3)||r===8&&!(n.byteOffset&7))?new e(n.buffer,n.byteOffset,n.byteLength>>a):new e(Uint8Array.prototype.slice.call(n,0).buffer)}:r=>{if(!e)throw Error(`Could not find typed array for code `+t);let o=new DataView(r.buffer,r.byteOffset,r.byteLength),s=r.length>>a,c=new e(s),l=o[n];for(let e=0;e<s;e++)c[e]=l.call(o,e<<a,i);return c}}}function Pp(){let e=Fp(),t=Y+Z();for(let t=2;t<e;t++){let e=Fp();Y+=e}let n=Y;return Y=t,$f=[gp(Fp()),gp(Fp())],$f.position0=0,$f.position1=0,$f.postBundlePosition=Y,Y=n,Z()}function Fp(){let e=J[Y++]&31;if(e>23)switch(e){case 24:e=J[Y++];break;case 25:e=ip.getUint16(Y),Y+=2;break;case 26:e=ip.getUint32(Y),Y+=4;break}return e}function Ip(){if(X.getShared){let e=Lp(()=>(J=null,X.getShared()))||{},t=e.structures||[];X.sharedVersion=e.version,rp=X.sharedValues=e.packedValues,Yf===!0?X.structures=Yf=t:Yf.splice.apply(Yf,[0,t.length].concat(t))}}function Lp(e){let t=Vf,n=Y,r=Jf,i=Zf,a=Qf,o=Xf,s=qf,c=ep,l=$f,u=new Uint8Array(J.slice(0,Vf)),d=Yf,f=X,p=sp,m=e();return Vf=t,Y=n,Jf=r,Zf=i,Qf=a,Xf=o,qf=s,ep=c,$f=l,J=u,sp=p,Yf=d,X=f,ip=new DataView(J.buffer,J.byteOffset,J.byteLength),m}function Rp(){J=null,ep=null,Yf=null}const zp=Array(147);for(let e=0;e<256;e++)zp[e]=+(`1e`+Math.floor(45.15-e*.30103));let Bp=new lp({useRecords:!1});const Vp=Bp.decode;Bp.decodeMultiple;const Hp={NEVER:0,ALWAYS:1,DECIMAL_ROUND:3,DECIMAL_FIT:4};let Up;try{Up=new TextEncoder}catch{}let Wp,Gp;const Kp=typeof globalThis==`object`&&globalThis.Buffer,qp=Kp!==void 0,Jp=qp?Kp.allocUnsafeSlow:Uint8Array,Yp=qp?Kp:Uint8Array,Xp=qp?4294967296:2144337920;let Zp,Q,Qp,$=0,$p,em=null;const tm=/[\u0080-\uFFFF]/,nm=Symbol(`record-id`);var rm=class extends lp{constructor(e){super(e),this.offset=0;let t,n,r,i,a;e||={};let o=Yp.prototype.utf8Write?function(e,t,n){return Q.utf8Write(e,t,n)}:Up&&Up.encodeInto?function(e,t){return Up.encodeInto(e,Q.subarray(t)).written}:!1,s=this,c=e.structures||e.saveStructures,l=e.maxSharedStructures;if(l??=c?128:0,l>8190)throw Error(`Maximum maxSharedStructure is 8190`);let u=e.sequential;u&&(l=0),this.structures||=[],this.saveStructures&&(this.saveShared=this.saveStructures);let d,f,p=e.sharedValues,m;if(p){m=Object.create(null);for(let e=0,t=p.length;e<t;e++)m[p[e]]=e}let h=[],g=0,_=0;this.mapEncode=function(e,t){if(this._keyMap&&!this._mapped)switch(e.constructor.name){case`Array`:e=e.map(e=>this.encodeKeys(e));break}return this.encode(e,t)},this.encode=function(o,c){if(Q||(Q=new Jp(8192),Qp=new DataView(Q.buffer,0,8192),$=0),$p=Q.length-10,$p-$<2048?(Q=new Jp(Q.length),Qp=new DataView(Q.buffer,0,Q.length),$p=Q.length-10,$=0):c===512&&($=$+7&2147483640),t=$,s.useSelfDescribedHeader&&(Qp.setUint32($,3654940416),$+=3),a=s.structuredClone?new Map:null,s.bundleStrings&&typeof o!=`string`?(em=[],em.size=1/0):em=null,n=s.structures,n){if(n.uninitialized){let e=s.getShared()||{};s.structures=n=e.structures||[],s.sharedVersion=e.version;let t=s.sharedValues=e.packedValues;if(t){m={};for(let e=0,n=t.length;e<n;e++)m[t[e]]=e}}let e=n.length;if(e>l&&!u&&(e=l),!n.transitions){n.transitions=Object.create(null);for(let t=0;t<e;t++){let e=n[t];if(!e)continue;let r,i=n.transitions;for(let n=0,a=e.length;n<a;n++){i[nm]===void 0&&(i[nm]=t);let a=e[n];r=i[a],r||=i[a]=Object.create(null),i=r}i[nm]=t|1048576}}u||(n.nextId=e)}if(r&&=!1,i=n||[],f=m,e.pack){let t=new Map;if(t.values=[],t.encoder=s,t.maxValues=e.maxPrivatePackedValues||(m?16:1/0),t.objectMap=m||!1,t.samplingPackedValues=d,lm(o,t),t.values.length>0){Q[$++]=216,Q[$++]=51,om(4);let e=t.values;v(e),om(0),om(0),f=Object.create(m||null);for(let t=0,n=e.length;t<n;t++)f[e[t]]=t}}Zp=c&xm;try{if(Zp)return;if(v(o),em&&mm(t,v),s.offset=$,a&&a.idsToInsert){$+=a.idsToInsert.length*2,$>$p&&b($),s.offset=$;let e=pm(Q.subarray(t,$),a.idsToInsert);return a=null,e}return c&512?(Q.start=t,Q.end=$,Q):Q.subarray(t,$)}finally{if(n){if(_<10&&_++,n.length>l&&(n.length=l),g>1e4)n.transitions=null,_=0,g=0,h.length>0&&(h=[]);else if(h.length>0&&!u){for(let e=0,t=h.length;e<t;e++)h[e][nm]=void 0;h=[]}}if(r&&s.saveShared){s.structures.length>l&&(s.structures=s.structures.slice(0,l));let e=Q.subarray(t,$);return s.updateSharedData()===!1?s.encode(o):e}c&1024&&($=t)}},this.findCommonStringsToPack=()=>(d=new Map,m||=Object.create(null),e=>{let t=e&&e.threshold||4,n=this.pack?e.maxPrivatePackedValues||16:0;p||=this.sharedValues=[];for(let[e,i]of d)i.count>t&&(m[e]=n++,p.push(e),r=!0);for(;this.saveShared&&this.updateSharedData()===!1;);d=null});let v=n=>{$>$p&&(Q=b($));var r=typeof n,i;if(r===`string`){if(f){let t=f[n];if(t>=0){t<16?Q[$++]=t+224:(Q[$++]=198,t&1?v(15-t>>1):v(t-16>>1));return}else if(d&&!e.pack){let e=d.get(n);e?e.count++:d.set(n,{count:1})}}let r=n.length;if(em&&r>=4&&r<1024){if((em.size+=r)>61440){let e,n=(em[0]?em[0].length*3+em[1].length:0)+10;$+n>$p&&(Q=b($+n)),Q[$++]=217,Q[$++]=223,Q[$++]=249,Q[$++]=em.position?132:130,Q[$++]=26,e=$-t,$+=4,em.position&&mm(t,v),em=[``,``],em.size=0,em.position=e}let e=tm.test(n);em[+!e]+=n,Q[$++]=e?206:207,v(r);return}let a;a=r<32?1:r<256?2:r<65536?3:5;let s=r*3;if($+s>$p&&(Q=b($+s)),r<64||!o){let e,t,o,s=$+a;for(e=0;e<r;e++)t=n.charCodeAt(e),t<128?Q[s++]=t:t<2048?(Q[s++]=t>>6|192,Q[s++]=t&63|128):(t&64512)==55296&&((o=n.charCodeAt(e+1))&64512)==56320?(t=65536+((t&1023)<<10)+(o&1023),e++,Q[s++]=t>>18|240,Q[s++]=t>>12&63|128,Q[s++]=t>>6&63|128,Q[s++]=t&63|128):(Q[s++]=t>>12|224,Q[s++]=t>>6&63|128,Q[s++]=t&63|128);i=s-$-a}else i=o(n,$+a,s);i<24?Q[$++]=96|i:i<256?(a<2&&Q.copyWithin($+2,$+1,$+1+i),Q[$++]=120,Q[$++]=i):i<65536?(a<3&&Q.copyWithin($+3,$+2,$+2+i),Q[$++]=121,Q[$++]=i>>8,Q[$++]=i&255):(a<5&&Q.copyWithin($+5,$+3,$+3+i),Q[$++]=122,Qp.setUint32($,i),$+=4),$+=i}else if(r===`number`)if(!this.alwaysUseFloat&&n>>>0===n)n<24?Q[$++]=n:n<256?(Q[$++]=24,Q[$++]=n):n<65536?(Q[$++]=25,Q[$++]=n>>8,Q[$++]=n&255):(Q[$++]=26,Qp.setUint32($,n),$+=4);else if(!this.alwaysUseFloat&&n>>0===n)n>=-24?Q[$++]=31-n:n>=-256?(Q[$++]=56,Q[$++]=~n):n>=-65536?(Q[$++]=57,Qp.setUint16($,~n),$+=2):(Q[$++]=58,Qp.setUint32($,~n),$+=4);else{let e;if((e=this.useFloat32)>0&&n<4294967296&&n>=-2147483648){Q[$++]=250,Qp.setFloat32($,n);let t;if(e<4||(t=n*zp[(Q[$]&127)<<1|Q[$+1]>>7])>>0===t){$+=4;return}else $--}Q[$++]=251,Qp.setFloat64($,n),$+=8}else if(r===`object`)if(!n)Q[$++]=246;else{if(a){let e=a.get(n);if(e){if(Q[$++]=216,Q[$++]=29,Q[$++]=25,!e.references){let t=a.idsToInsert||=[];e.references=[],t.push(e)}e.references.push($-t),$+=2;return}else a.set(n,{offset:$-t})}let e=n.constructor;if(e===Object)y(n);else if(e===Array){i=n.length,i<24?Q[$++]=128|i:om(i);for(let e=0;e<i;e++)v(n[e])}else if(e===Map)if((this.mapsAsObjects?this.useTag259ForMaps!==!1:this.useTag259ForMaps)&&(Q[$++]=217,Q[$++]=1,Q[$++]=3),i=n.size,i<24?Q[$++]=160|i:i<256?(Q[$++]=184,Q[$++]=i):i<65536?(Q[$++]=185,Q[$++]=i>>8,Q[$++]=i&255):(Q[$++]=186,Qp.setUint32($,i),$+=4),s.keyMap)for(let[e,t]of n)v(s.encodeKey(e)),v(t);else for(let[e,t]of n)v(e),v(t);else{for(let e=0,t=Wp.length;e<t;e++){let t=Gp[e];if(n instanceof t){let t=Wp[e],r=t.tag;r??=t.getTag&&t.getTag.call(this,n),r<24?Q[$++]=192|r:r<256?(Q[$++]=216,Q[$++]=r):r<65536?(Q[$++]=217,Q[$++]=r>>8,Q[$++]=r&255):r>-1&&(Q[$++]=218,Qp.setUint32($,r),$+=4),t.encode.call(this,n,v,b);return}}if(n[Symbol.iterator]){if(Zp){let e=Error(`Iterable should be serialized as iterator`);throw e.iteratorNotHandled=!0,e}Q[$++]=159;for(let e of n)v(e);Q[$++]=255;return}if(n[Symbol.asyncIterator]||cm(n)){let e=Error(`Iterable/blob should be serialized as iterator`);throw e.iteratorNotHandled=!0,e}if(this.useToJSON&&n.toJSON){let e=n.toJSON();if(e!==n)return v(e)}y(n)}}else if(r===`boolean`)Q[$++]=n?245:244;else if(r===`bigint`){if(n<BigInt(1)<<BigInt(64)&&n>=0)Q[$++]=27,Qp.setBigUint64($,n);else if(n>-(BigInt(1)<<BigInt(64))&&n<0)Q[$++]=59,Qp.setBigUint64($,-n-BigInt(1));else if(this.largeBigIntToFloat)Q[$++]=251,Qp.setFloat64($,Number(n));else{n>=BigInt(0)?Q[$++]=194:(Q[$++]=195,n=BigInt(-1)-n);let e=[];for(;n;)e.push(Number(n&BigInt(255))),n>>=BigInt(8);fm(new Uint8Array(e.reverse()),b);return}$+=8}else if(r===`undefined`)Q[$++]=247;else throw Error(`Unknown type: `+r)},y=this.useRecords===!1?this.variableMapSize?e=>{let t=Object.keys(e),n=Object.values(e),r=t.length;if(r<24?Q[$++]=160|r:r<256?(Q[$++]=184,Q[$++]=r):r<65536?(Q[$++]=185,Q[$++]=r>>8,Q[$++]=r&255):(Q[$++]=186,Qp.setUint32($,r),$+=4),s.keyMap)for(let e=0;e<r;e++)v(s.encodeKey(t[e])),v(n[e]);else for(let e=0;e<r;e++)v(t[e]),v(n[e])}:e=>{Q[$++]=185;let n=$-t;$+=2;let r=0;if(s.keyMap)for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&(v(s.encodeKey(t)),v(e[t]),r++);else for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&(v(t),v(e[t]),r++);Q[n+++t]=r>>8,Q[n+t]=r&255}:(e,t)=>{let n,a=i.transitions||=Object.create(null),o=0,s=0,c,u;if(this.keyMap){u=Object.keys(e).map(e=>this.encodeKey(e)),s=u.length;for(let e=0;e<s;e++){let t=u[e];n=a[t],n||(n=a[t]=Object.create(null),o++),a=n}}else for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&(n=a[t],n||(a[nm]&1048576&&(c=a[nm]&65535),n=a[t]=Object.create(null),o++),a=n,s++);let d=a[nm];if(d!==void 0)d&=65535,Q[$++]=217,Q[$++]=d>>8|224,Q[$++]=d&255;else if(u||=a.__keys__||=Object.keys(e),c===void 0?(d=i.nextId++,d||(d=0,i.nextId=1),d>=256&&(i.nextId=(d=l)+1)):d=c,i[d]=u,d<l){Q[$++]=217,Q[$++]=d>>8|224,Q[$++]=d&255,a=i.transitions;for(let e=0;e<s;e++)(a[nm]===void 0||a[nm]&1048576)&&(a[nm]=d),a=a[u[e]];a[nm]=d|1048576,r=!0}else{if(a[nm]=d,Qp.setUint32($,3655335680),$+=3,o&&(g+=_*o),h.length>=256-l&&(h.shift()[nm]=void 0),h.push(a),om(s+2),v(57344+d),v(u),t)return;for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&v(e[t]);return}if(s<24?Q[$++]=128|s:om(s),!t)for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&v(e[t])},b=e=>{let n;if(e>16777216){if(e-t>Xp)throw Error(`Encoded buffer would be larger than maximum buffer size`);n=Math.min(Xp,Math.round(Math.max((e-t)*(e>67108864?1.25:2),4194304)/4096)*4096)}else n=(Math.max(e-t<<2,Q.length-1)>>12)+1<<12;let r=new Jp(n);return Qp=new DataView(r.buffer,0,n),Q.copy?Q.copy(r,0,t,e):r.set(Q.slice(t,e)),$-=t,t=0,$p=r.length-10,Q=r},x=100,S=1e3;this.encodeAsIterable=function(e,t){return E(e,t,C)},this.encodeAsAsyncIterable=function(e,t){return E(e,t,D)};function*C(e,n,r){let i=e.constructor;if(i===Object){let t=s.useRecords!==!1;t?y(e,!0):im(Object.keys(e).length,160);for(let r in e){let i=e[r];t||v(r),i&&typeof i==`object`?n[r]?yield*C(i,n[r]):yield*w(i,n,r):v(i)}}else if(i===Array){let r=e.length;om(r);for(let i=0;i<r;i++){let r=e[i];r&&(typeof r==`object`||$-t>x)?n.element?yield*C(r,n.element):yield*w(r,n,`element`):v(r)}}else if(e[Symbol.iterator]&&!e.buffer){Q[$++]=159;for(let r of e)r&&(typeof r==`object`||$-t>x)?n.element?yield*C(r,n.element):yield*w(r,n,`element`):v(r);Q[$++]=255}else cm(e)?(im(e.size,64),yield Q.subarray(t,$),yield e,T()):e[Symbol.asyncIterator]?(Q[$++]=159,yield Q.subarray(t,$),yield e,T(),Q[$++]=255):v(e);r&&$>t?yield Q.subarray(t,$):$-t>x&&(yield Q.subarray(t,$),T())}function*w(e,n,r){let i=$-t;try{v(e),$-t>x&&(yield Q.subarray(t,$),T())}catch(a){if(a.iteratorNotHandled)n[r]={},$=t+i,yield*C.call(this,e,n[r]);else throw a}}function T(){x=S,s.encode(null,xm)}function E(e,t,n){return x=t&&t.chunkThreshold?S=t.chunkThreshold:100,e&&typeof e==`object`?(s.encode(null,xm),n(e,s.iterateProperties||={},!0)):[s.encode(e)]}async function*D(e,t){for(let n of C(e,t,!0)){let e=n.constructor;if(e===Yp||e===Uint8Array)yield n;else if(cm(n)){let e=n.stream().getReader(),t;for(;!(t=await e.read()).done;)yield t.value}else if(n[Symbol.asyncIterator])for await(let e of n)T(),e?yield*D(e,t.async||={}):yield s.encode(e);else yield n}}}useBuffer(e){Q=e,Qp=new DataView(Q.buffer,Q.byteOffset,Q.byteLength),$=0}clearSharedData(){this.structures&&=[],this.sharedValues&&=void 0}updateSharedData(){let e=this.sharedVersion||0;this.sharedVersion=e+1;let t=this.structures.slice(0),n=new am(t,this.sharedValues,this.sharedVersion),r=this.saveShared(n,t=>(t&&t.version||0)==e);return r===!1?(n=this.getShared()||{},this.structures=n.structures||[],this.sharedValues=n.packedValues,this.sharedVersion=n.version,this.structures.nextId=this.structures.length):t.forEach((e,t)=>this.structures[t]=e),r}};function im(e,t){e<24?Q[$++]=t|e:e<256?(Q[$++]=t|24,Q[$++]=e):e<65536?(Q[$++]=t|25,Q[$++]=e>>8,Q[$++]=e&255):(Q[$++]=t|26,Qp.setUint32($,e),$+=4)}var am=class{constructor(e,t,n){this.structures=e,this.packedValues=t,this.version=n}};function om(e){e<24?Q[$++]=128|e:e<256?(Q[$++]=152,Q[$++]=e):e<65536?(Q[$++]=153,Q[$++]=e>>8,Q[$++]=e&255):(Q[$++]=154,Qp.setUint32($,e),$+=4)}const sm=typeof Blob>`u`?function(){}:Blob;function cm(e){if(e instanceof sm)return!0;let t=e[Symbol.toStringTag];return t===`Blob`||t===`File`}function lm(e,t){switch(typeof e){case`string`:if(e.length>3){if(t.objectMap[e]>-1||t.values.length>=t.maxValues)return;let n=t.get(e);if(n)++n.count==2&&t.values.push(e);else if(t.set(e,{count:1}),t.samplingPackedValues){let n=t.samplingPackedValues.get(e);n?n.count++:t.samplingPackedValues.set(e,{count:1})}}break;case`object`:if(e)if(e instanceof Array)for(let n=0,r=e.length;n<r;n++)lm(e[n],t);else{let r=!t.encoder.useRecords;for(var n in e)e.hasOwnProperty(n)&&(r&&lm(n,t),lm(e[n],t))}break;case`function`:console.log(e)}}const um=new Uint8Array(new Uint16Array([1]).buffer)[0]==1;Gp=[Date,Set,Error,RegExp,wp,ArrayBuffer,Uint8Array,Uint8ClampedArray,Uint16Array,Uint32Array,typeof BigUint64Array>`u`?function(){}:BigUint64Array,Int8Array,Int16Array,Int32Array,typeof BigInt64Array>`u`?function(){}:BigInt64Array,Float32Array,Float64Array,am],Wp=[{tag:1,encode(e,t){let n=e.getTime()/1e3;(this.useTimestamp32||e.getMilliseconds()===0)&&n>=0&&n<4294967296?(Q[$++]=26,Qp.setUint32($,n),$+=4):(Q[$++]=251,Qp.setFloat64($,n),$+=8)}},{tag:258,encode(e,t){t(Array.from(e))}},{tag:27,encode(e,t){t([e.name,e.message])}},{tag:27,encode(e,t){t([`RegExp`,e.source,e.flags])}},{getTag(e){return e.tag},encode(e,t){t(e.value)}},{encode(e,t,n){fm(e,n)}},{getTag(e){if(e.constructor===Uint8Array&&(this.tagUint8Array||qp&&this.tagUint8Array!==!1))return 64},encode(e,t,n){fm(e,n)}},dm(68,1),dm(69,2),dm(70,4),dm(71,8),dm(72,1),dm(77,2),dm(78,4),dm(79,8),dm(85,4),dm(86,8),{encode(e,t){let n=e.packedValues||[],r=e.structures||[];if(n.values.length>0){Q[$++]=216,Q[$++]=51,om(4);let e=n.values;t(e),om(0),om(0),packedObjectMap=Object.create(sharedPackedObjectMap||null);for(let t=0,n=e.length;t<n;t++)packedObjectMap[e[t]]=t}if(r){Qp.setUint32($,3655335424),$+=3;let n=r.slice(0);n.unshift(57344),n.push(new wp(e.version,1399353956)),t(n)}else t(new wp(e.version,1399353956))}}];function dm(e,t){return!um&&t>1&&(e-=4),{tag:e,encode:function(e,t){let n=e.byteLength,r=e.byteOffset||0,i=e.buffer||e;t(qp?Kp.from(i,r,n):new Uint8Array(i,r,n))}}}function fm(e,t){let n=e.byteLength;n<24?Q[$++]=64+n:n<256?(Q[$++]=88,Q[$++]=n):n<65536?(Q[$++]=89,Q[$++]=n>>8,Q[$++]=n&255):(Q[$++]=90,Qp.setUint32($,n),$+=4),$+n>=Q.length&&t($+n),Q.set(e.buffer?e:new Uint8Array(e),$),$+=n}function pm(e,t){let n,r=t.length*2,i=e.length-r;t.sort((e,t)=>e.offset>t.offset?1:-1);for(let n=0;n<t.length;n++){let r=t[n];r.id=n;for(let t of r.references)e[t++]=n>>8,e[t]=n&255}for(;n=t.pop();){let t=n.offset;e.copyWithin(t+r,t,i),r-=2;let a=t+r;e[a++]=216,e[a++]=28,i=t}return e}function mm(e,t){Qp.setUint32(em.position+e,$-em.position-e+1);let n=em;em=null,t(n[0]),t(n[1])}let hm=new rm({useRecords:!1});const gm=hm.encode;hm.encodeAsIterable,hm.encodeAsAsyncIterable;const{NEVER:_m,ALWAYS:vm,DECIMAL_ROUND:ym,DECIMAL_FIT:bm}=Hp,xm=2048;var Sm=n(((e,t)=>{let n=()=>process.platform===`linux`,r=null;t.exports={isLinux:n,getReport:()=>{if(!r)if(n()&&process.report){let e=process.report.excludeNetwork;process.report.excludeNetwork=!0,r=process.report.getReport(),process.report.excludeNetwork=e}else r={};return r}}})),Cm=n(((e,n)=>{let r=t(`fs`),i=2048;n.exports={LDD_PATH:`/usr/bin/ldd`,SELF_PATH:`/proc/self/exe`,readFileSync:e=>{let t=r.openSync(e,`r`),n=Buffer.alloc(i),a=r.readSync(t,n,0,i,0);return r.close(t,()=>{}),n.subarray(0,a)},readFile:e=>new Promise((t,n)=>{r.open(e,`r`,(e,a)=>{if(e)n(e);else{let e=Buffer.alloc(i);r.read(a,e,0,i,0,(n,i)=>{t(e.subarray(0,i)),r.close(a,()=>{})})}})})}})),wm=n(((e,t)=>{t.exports={interpreterPath:e=>{if(e.length<64||e.readUInt32BE(0)!==2135247942||e.readUInt8(4)!==2||e.readUInt8(5)!==1)return null;let t=e.readUInt32LE(32),n=e.readUInt16LE(54),r=e.readUInt16LE(56);for(let i=0;i<r;i++){let r=t+i*n;if(e.readUInt32LE(r)===3){let t=e.readUInt32LE(r+8),n=e.readUInt32LE(r+32);return e.subarray(t,t+n).toString().replace(/\0.*$/g,``)}}return null}}})),Tm=n(((e,n)=>{let r=t(`child_process`),{isLinux:i,getReport:a}=Sm(),{LDD_PATH:o,SELF_PATH:s,readFile:c,readFileSync:l}=Cm(),{interpreterPath:u}=wm(),d,f,p,m=`getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true`,h=``,g=()=>h||new Promise(e=>{r.exec(m,(t,n)=>{h=t?` `:n,e(h)})}),_=()=>{if(!h)try{h=r.execSync(m,{encoding:`utf8`})}catch{h=` `}return h},v=`glibc`,y=/LIBC[a-z0-9 \-).]*?(\d+\.\d+)/i,b=`musl`,x=e=>e.includes(`libc.musl-`)||e.includes(`ld-musl-`),S=()=>{let e=a();return e.header&&e.header.glibcVersionRuntime?v:Array.isArray(e.sharedObjects)&&e.sharedObjects.some(x)?b:null},C=e=>{let[t,n]=e.split(/[\r\n]+/);return t&&t.includes(v)?v:n&&n.includes(b)?b:null},w=e=>{if(e){if(e.includes(`/ld-musl-`))return b;if(e.includes(`/ld-linux-`))return v}return null},T=e=>(e=e.toString(),e.includes(`musl`)?b:e.includes(`GNU C Library`)?v:null),E=async()=>{if(f!==void 0)return f;f=null;try{f=T(await c(o))}catch{}return f},D=()=>{if(f!==void 0)return f;f=null;try{f=T(l(o))}catch{}return f},O=async()=>{if(d!==void 0)return d;d=null;try{d=w(u(await c(s)))}catch{}return d},k=()=>{if(d!==void 0)return d;d=null;try{d=w(u(l(s)))}catch{}return d},A=async()=>{let e=null;return i()&&(e=await O(),e||(e=await E(),e||=S(),e||=C(await g()))),e},j=()=>{let e=null;return i()&&(e=k(),e||(e=D(),e||=S(),e||=C(_()))),e},M=async()=>i()&&await A()!==v,N=()=>i()&&j()!==v,P=async()=>{if(p!==void 0)return p;p=null;try{let e=(await c(o)).match(y);e&&(p=e[1])}catch{}return p},F=()=>{if(p!==void 0)return p;p=null;try{let e=l(o).match(y);e&&(p=e[1])}catch{}return p},I=()=>{let e=a();return e.header&&e.header.glibcVersionRuntime?e.header.glibcVersionRuntime:null},ee=e=>e.trim().split(/\s+/)[1],L=e=>{let[t,n,r]=e.split(/[\r\n]+/);return t&&t.includes(v)?ee(t):n&&r&&n.includes(b)?ee(r):null};n.exports={GLIBC:v,MUSL:b,family:A,familySync:j,isNonGlibcLinux:M,isNonGlibcLinuxSync:N,version:async()=>{let e=null;return i()&&(e=await P(),e||=I(),e||=L(await g())),e},versionSync:()=>{let e=null;return i()&&(e=F(),e||=I(),e||=L(_())),e}}})),Em=n(((e,n)=>{var r=t(`fs`),i=t(`path`),a=t(`url`),o=process.config&&process.config.variables||{},s=!!process.env.PREBUILDS_ONLY,c=process.versions,l=c.modules;(c.deno||process.isBun)&&(l=`unsupported`);var u=D()?`electron`:`node`,d=process.arch,f=process.platform,p=process.env.LIBC||(O(f)?`musl`:`glibc`),m=process.env.ARM_VERSION||(d===`arm64`?`8`:o.arm_version)||``,h=(c.uv||``).split(`.`)[0];n.exports=g;function g(e){return typeof __webpack_require__==`function`?__non_webpack_require__(g.path(e)):t(g.path(e))}g.path=function(e){e=i.resolve(e||`.`);var n=``;try{n=typeof __webpack_require__==`function`?__non_webpack_require__(i.join(e,`package.json`)).name:t(i.join(e,`package.json`)).name;var r=n.toUpperCase().replace(/-/g,`_`)+`_PREBUILD`;process.env[r]&&(e=process.env[r])}catch{}if(!s){var o=v(i.join(e,`build/Release`),y);if(o)return o;var c=v(i.join(e,`build/Debug`),y);if(c)return c}var g=k(e);if(g)return g;var T=k(i.dirname(process.execPath));if(T)return T;var D=(n[0]==`@`?``:`@`+n+`/`)+n+`-`+f+`-`+d;try{return A(i.dirname(t(`module`).createRequire(a.pathToFileURL(i.join(e,`package.json`))).resolve(D)))}catch{}var O=[`platform=`+f,`arch=`+d,`runtime=`+u,`abi=`+l,`uv=`+h,m?`armv=`+m:``,`libc=`+p,`node=`+process.versions.node,process.versions.electron?`electron=`+process.versions.electron:``,typeof __webpack_require__==`function`?`webpack=true`:``].filter(Boolean).join(` `);throw Error(`No native build was found for `+O+`
|
|
136
|
+
Cause: ${t}`)}}buildUrl(e,...t){let n=encodeURIComponent(e),r=t.map(e=>encodeURIComponent(e)),i=r.length>0?`/`+r.join(`/`):``,a=this.baseUrl.pathname.replace(/\/+$/,``);return`${this.baseUrl.origin}${a}${$f}/${n}${i}`}async fetch(e,t){let n=t.method||`GET`;if(Wf()){let r={method:n,url:e,headers:t.headers},i=t.body;i!=null&&(i instanceof ArrayBuffer||i instanceof Uint8Array?r.bodySize=i.byteLength:typeof i==`string`?r.bodySize=i.length:r.bodyType=typeof i),console.debug(`[VQS Debug] Request:`,JSON.stringify(r,null,2))}t.headers.set(`User-Agent`,`@vercel/queue/0.3.1`),t.headers.set(`Vqs-Client-Ts`,new Date().toISOString());let r=this.dispatcher?{...t,dispatcher:this.dispatcher}:t,i=await fetch(e,r);if(Wf()){let t={method:n,url:e,status:i.status,statusText:i.statusText,headers:i.headers};console.debug(`[VQS Debug] Response:`,JSON.stringify(t,null,2))}return i}async sendMessage(e){let t=this.transport,{queueName:n,payload:r,idempotencyKey:i,retentionSeconds:a,delaySeconds:o,headers:s}=e,c=new Headers;if(this.customHeaders)for(let[e,t]of Object.entries(this.customHeaders))c.append(e,t);if(s){let e=new Set([`authorization`,`content-type`]),t=t=>{let n=t.toLowerCase();return e.has(n)?!0:n.startsWith(`vqs-`)};for(let[e,n]of Object.entries(s))!t(e)&&n!==void 0&&c.append(e,n)}c.set(`Authorization`,`Bearer ${await this.getToken()}`),c.set(`Content-Type`,t.contentType);let l=this.getSendDeploymentId();l&&c.set(`Vqs-Deployment-Id`,l),i&&c.set(`Vqs-Idempotency-Key`,i),a!==void 0&&c.set(`Vqs-Retention-Seconds`,a.toString()),o!==void 0&&c.set(`Vqs-Delay-Seconds`,o.toString());let u=t.serialize(r),d=Buffer.isBuffer(u)?new Uint8Array(u):u,f=await this.fetch(this.buildUrl(n),{method:`POST`,body:d,headers:c});if(!f.ok){let e=await f.text();if(f.status===409)throw new Od(e||`Duplicate idempotency key detected`,i);if(f.status===502)throw new kd(e||`Consumer discovery failed`,l);if(f.status===503)throw new Ad(e||`Consumer registry not configured`);qf(f.status,f.statusText,e,`send message`)}return f.status===202?(await f.text(),{messageId:null}):await f.json()}async*receiveMessages(e){let t=this.transport,{queueName:n,consumerGroup:r,visibilityTimeoutSeconds:i,limit:a}=e;if(a!==void 0&&(a<1||a>10))throw new Ed(a);let o=new Headers({Authorization:`Bearer ${await this.getToken()}`,Accept:`multipart/mixed`,...this.customHeaders});i!==void 0&&o.set(`Vqs-Visibility-Timeout-Seconds`,i.toString()),a!==void 0&&o.set(`Vqs-Max-Messages`,a.toString());let s=this.getConsumeDeploymentId();s&&o.set(`Vqs-Deployment-Id`,s);let c=await this.fetch(this.buildUrl(n,`consumer`,r),{method:`POST`,headers:o});if(c.status===204){await c.text();return}if(!c.ok){let e=await c.text();qf(c.status,c.statusText,e,`receive messages`)}for await(let e of Ol(c))try{let n=Jf(e.headers);if(!n){console.warn(`Missing required queue headers in multipart part`),await Gf(e.payload);continue}let r=await t.deserialize(e.payload);yield{...n,payload:r}}catch(t){console.warn(`Failed to process multipart message:`,t),await Gf(e.payload)}}async receiveMessageById(e){let t=this.transport,{queueName:n,consumerGroup:r,messageId:i,visibilityTimeoutSeconds:a}=e,o=new Headers({Authorization:`Bearer ${await this.getToken()}`,Accept:`multipart/mixed`,...this.customHeaders});a!==void 0&&o.set(`Vqs-Visibility-Timeout-Seconds`,a.toString());let s=this.getConsumeDeploymentId();s&&o.set(`Vqs-Deployment-Id`,s);let c=await this.fetch(this.buildUrl(n,`consumer`,r,`id`,i),{method:`POST`,headers:o});if(!c.ok){let e=await c.text();if(c.status===404)throw new vd(i);if(c.status===409){let t={};try{t=JSON.parse(e)}catch{}throw t.originalMessageId?new yd(i,`This message was a duplicate - use originalMessageId: ${t.originalMessageId}`):new yd(i)}if(c.status===410)throw new Dd(i);qf(c.status,c.statusText,e,`receive message by ID`)}for await(let e of Ol(c)){let n=Jf(e.headers);if(!n)throw await Gf(e.payload),new bd(i,`Missing required queue headers in response`);let r=await t.deserialize(e.payload);return{message:{...n,payload:r}}}throw new vd(i)}async acknowledgeMessage(e){let{queueName:t,consumerGroup:n,receiptHandle:r}=e,i=new Headers({Authorization:`Bearer ${await this.getToken()}`,...this.customHeaders}),a=this.getConsumeDeploymentId();a&&i.set(`Vqs-Deployment-Id`,a);let o=await this.fetch(this.buildUrl(t,`consumer`,n,`lease`,r),{method:`DELETE`,headers:i});if(!o.ok){let e=await o.text();if(o.status===404)throw new vd(r);if(o.status===409)throw new yd(r,e||`Invalid receipt handle, message not in correct state, or already processed`);qf(o.status,o.statusText,e,`acknowledge message`,`Missing or invalid receipt handle`,o.headers?.get(`Retry-After`)??null)}return await o.text(),{acknowledged:!0}}async changeVisibility(e){let{queueName:t,consumerGroup:n,receiptHandle:r,visibilityTimeoutSeconds:i}=e,a=new Headers({Authorization:`Bearer ${await this.getToken()}`,"Content-Type":`application/json`,...this.customHeaders}),o=this.getConsumeDeploymentId();o&&a.set(`Vqs-Deployment-Id`,o);let s=await this.fetch(this.buildUrl(t,`consumer`,n,`lease`,r),{method:`PATCH`,headers:a,body:JSON.stringify({visibilityTimeoutSeconds:i})});if(!s.ok){let e=await s.text();if(s.status===404)throw new vd(r);if(s.status===409)throw new yd(r,e||`Invalid receipt handle, message not in correct state, or already processed`);qf(s.status,s.statusText,e,`change visibility`,`Missing receipt handle or invalid visibility timeout`,s.headers?.get(`Retry-After`)??null)}return await s.text(),{success:!0}}},tp=new WeakMap,np=Symbol.for(`@vercel/queue.apiClient`);function rp(e,t){tp.set(e,t),Object.defineProperty(e,np,{value:t,writable:!1,enumerable:!1,configurable:!1})}function ip(e){let t=tp.get(e);if(t)return t;let n=e[np];if(typeof n==`object`&&n){let t=n;return tp.set(e,t),t}throw Error(`QueueClient not initialized. This may happen when multiple bundled copies of @vercel/queue are loaded in local dev.`)}function ap(e){return`request`in e?e.request:e}function op(e){return ip(e)}var sp=`iad1`;function cp(e){return e||process.env.VERCEL_REGION||(tf()||console.warn(`[QueueClient] Region not detected \u2014 defaulting to "${sp}". On Vercel this is set automatically via VERCEL_REGION. To silence this warning, pass region explicitly: new QueueClient({ region: "iad1" })`),sp)}var lp=class{constructor(e={}){let t=cp(e.region);rp(this,new ep({...e,region:t}))}send=async(e,t,n)=>{let r=ip(this),i=await r.sendMessage({queueName:e,payload:t,idempotencyKey:n?.idempotencyKey,retentionSeconds:n?.retentionSeconds,delaySeconds:n?.delaySeconds,headers:n?.headers});return i.messageId&&tf()&&Hf(e,i.messageId,r.getRegion(),n?.delaySeconds,n?.retentionSeconds),{messageId:i.messageId}};handleCallback=(e,t)=>(tf()&&vf(e,this,t),async n=>{let r=ap(n);if(tf()&&r.headers.get(`x-vercel-queue-prime`)===`1`){let n=r.headers.get(`x-vercel-queue-prime-file`);return n&&vf(e,this,t,n),Response.json({status:`primed`})}try{return await Xd(e,await Yd(r),{client:this,visibilityTimeoutSeconds:t?.visibilityTimeoutSeconds,retry:t?.retry}),Response.json({status:`success`})}catch(e){return console.error(`Queue callback error:`,e),e instanceof Error&&(e.message.includes(`Invalid content type`)||e.message.includes(`Invalid CloudEvent`)||e.message.includes(`Missing required CloudEvent`)||e.message.includes(`Failed to parse CloudEvent`)||e.message.includes(`Binary mode callback`))?Response.json({error:e.message},{status:400}):Response.json({error:`Failed to process queue message`},{status:500})}});handleNodeCallback=(e,t)=>(tf()&&vf(e,this,t),async(n,r)=>{if(n.method!==`POST`){r.status(200).end();return}let i=n.headers[`x-vercel-queue-prime`];if(tf()&&i===`1`){let i=n.headers[`x-vercel-queue-prime-file`],a=Array.isArray(i)?i[0]:i;a&&vf(e,this,t,a),r.status(200).json({status:`primed`});return}try{await Xd(e,Jd(n.body,n.headers),{client:this,visibilityTimeoutSeconds:t?.visibilityTimeoutSeconds,retry:t?.retry}),r.status(200).json({status:`success`})}catch(e){if(console.error(`Queue callback error:`,e),e instanceof Error&&(e.message.includes(`Invalid content type`)||e.message.includes(`Invalid CloudEvent`)||e.message.includes(`Missing required CloudEvent`)||e.message.includes(`Failed to parse CloudEvent`)||e.message.includes(`Binary mode callback`))){r.status(400).json({error:e.message});return}r.status(500).json({error:`Failed to process queue message`})}})};let up;try{up=new TextDecoder}catch{}let J,dp,Y=0;const fp=[],pp=57337,mp={};let hp=11281e4,gp=1681e4,_p=fp,vp=0,X={},yp,bp,xp=0,Sp=0,Cp,wp,Tp=[],Ep=[],Dp,Op,kp,Ap={useRecords:!1,mapsAsObjects:!0},jp=!1,Mp=2;try{Function(``)}catch{Mp=1/0}var Np=class e{constructor(e){if(e&&((e.keyMap||e._keyMap)&&!e.useRecords&&(e.useRecords=!1,e.mapsAsObjects=!0),e.useRecords===!1&&e.mapsAsObjects===void 0&&(e.mapsAsObjects=!0),e.getStructures&&(e.getShared=e.getStructures),e.getShared&&!e.structures&&((e.structures=[]).uninitialized=!0),e.keyMap)){this.mapKey=new Map;for(let[t,n]of Object.entries(e.keyMap))this.mapKey.set(n,t)}Object.assign(this,e)}decodeKey(e){return this.keyMap&&this.mapKey.get(e)||e}encodeKey(e){return this.keyMap&&this.keyMap.hasOwnProperty(e)?this.keyMap[e]:e}encodeKeys(e){if(!this._keyMap)return e;let t=new Map;for(let[n,r]of Object.entries(e))t.set(this._keyMap.hasOwnProperty(n)?this._keyMap[n]:n,r);return t}decodeKeys(e){if(!this._keyMap||e.constructor.name!=`Map`)return e;if(!this._mapKey){this._mapKey=new Map;for(let[e,t]of Object.entries(this._keyMap))this._mapKey.set(t,e)}let t={};return e.forEach((e,n)=>t[Lp(this._mapKey.has(n)?this._mapKey.get(n):n)]=e),t}mapDecode(e,t){let n=this.decode(e);if(this._keyMap)switch(n.constructor.name){case`Array`:return n.map(e=>this.decodeKeys(e))}return n}decode(t,n){if(J)return sm(()=>(cm(),this?this.decode(t,n):e.prototype.decode.call(Ap,t,n)));dp=n>-1?n:t.length,Y=0,vp=0,Sp=0,bp=null,_p=fp,Cp=null,J=t;try{Op=t.dataView||=new DataView(t.buffer,t.byteOffset,t.byteLength)}catch(e){throw J=null,t instanceof Uint8Array?e:Error(`Source must be a Uint8Array or Buffer but was a `+(t&&typeof t==`object`?t.constructor.name:typeof t))}if(this instanceof e){if(X=this,Dp=this.sharedValues&&(this.pack?Array(this.maxPrivatePackedValues||16).concat(this.sharedValues):this.sharedValues),this.structures)return yp=this.structures,Pp();(!yp||yp.length>0)&&(yp=[])}else X=Ap,(!yp||yp.length>0)&&(yp=[]),Dp=null;return Pp()}decodeMultiple(e,t){let n,r=0;try{let i=e.length;jp=!0;let a=this?this.decode(e,i):um.decode(e,i);if(t){if(t(a)===!1)return;for(;Y<i;)if(r=Y,t(Pp())===!1)return}else{for(n=[a];Y<i;)r=Y,n.push(Pp());return n}}catch(e){throw e.lastPosition=r,e.values=n,e}finally{jp=!1,cm()}}};function Pp(){try{let e=Z();if(Cp){if(Y>=Cp.postBundlePosition){let e=Error(`Unexpected bundle position`);throw e.incomplete=!0,e}Y=Cp.postBundlePosition,Cp=null}if(Y==dp)yp=null,J=null,wp&&=null;else if(Y>dp){let e=Error(`Unexpected end of CBOR data`);throw e.incomplete=!0,e}else if(!jp)throw Error(`Data read, but end of buffer not reached`);return e}catch(e){throw cm(),(e instanceof RangeError||e.message.startsWith(`Unexpected end of buffer`))&&(e.incomplete=!0),e}}function Z(){let e=J[Y++],t=e>>5;if(e&=31,e>23)switch(e){case 24:e=J[Y++];break;case 25:if(t==7)return qp();e=Op.getUint16(Y),Y+=2;break;case 26:if(t==7){let e=Op.getFloat32(Y);if(X.useFloat32>2){let t=lm[(J[Y]&127)<<1|J[Y+1]>>7];return Y+=4,(t*e+(e>0?.5:-.5)>>0)/t}return Y+=4,e}e=Op.getUint32(Y),Y+=4;break;case 27:if(t==7){let e=Op.getFloat64(Y);return Y+=8,e}if(t>1){if(Op.getUint32(Y)>0)throw Error(`JavaScript does not support arrays, maps, or strings with length over 4294967295`);e=Op.getUint32(Y+4)}else X.int64AsNumber?(e=Op.getUint32(Y)*4294967296,e+=Op.getUint32(Y+4)):e=Op.getBigUint64(Y);Y+=8;break;case 31:switch(t){case 2:case 3:throw Error(`Indefinite length not supported for byte or text strings`);case 4:let e=[],n,r=0;for(;(n=Z())!=mp;){if(r>=hp)throw Error(`Array length exceeds ${hp}`);e[r++]=n}return t==4?e:t==3?e.join(``):Buffer.concat(e);case 5:let i;if(X.mapsAsObjects){let e={},t=0;if(X.keyMap)for(;(i=Z())!=mp;){if(t++>=gp)throw Error(`Property count exceeds ${gp}`);e[Lp(X.decodeKey(i))]=Z()}else for(;(i=Z())!=mp;){if(t++>=gp)throw Error(`Property count exceeds ${gp}`);e[Lp(i)]=Z()}return e}else{kp&&=(X.mapsAsObjects=!0,!1);let e=new Map;if(X.keyMap){let t=0;for(;(i=Z())!=mp;){if(t++>=gp)throw Error(`Map size exceeds ${gp}`);e.set(X.decodeKey(i),Z())}}else{let t=0;for(;(i=Z())!=mp;){if(t++>=gp)throw Error(`Map size exceeds ${gp}`);e.set(i,Z())}}return e}case 7:return mp;default:throw Error(`Invalid major type for indefinite length `+t)}default:throw Error(`Unknown token `+e)}switch(t){case 0:return e;case 1:return~e;case 2:return Wp(e);case 3:if(Sp>=Y)return bp.slice(Y-xp,(Y+=e)-xp);if(Sp==0&&dp<140&&e<32){let t=e<16?Up(e):Hp(e);if(t!=null)return t}return Rp(e);case 4:if(e>=hp)throw Error(`Array length exceeds ${hp}`);let t=Array(e);for(let n=0;n<e;n++)t[n]=Z();return t;case 5:if(e>=gp)throw Error(`Map size exceeds ${hp}`);if(X.mapsAsObjects){let t={};if(X.keyMap)for(let n=0;n<e;n++)t[Lp(X.decodeKey(Z()))]=Z();else for(let n=0;n<e;n++)t[Lp(Z())]=Z();return t}else{kp&&=(X.mapsAsObjects=!0,!1);let t=new Map;if(X.keyMap)for(let n=0;n<e;n++)t.set(X.decodeKey(Z()),Z());else for(let n=0;n<e;n++)t.set(Z(),Z());return t}case 6:if(e>=pp){let t=yp[e&8191];if(t)return t.read||=Ip(t),t.read();if(e<65536){if(e==57343){let e=am(),t=Z(),n=Z();Yp(t,n);let r={};if(X.keyMap)for(let t=2;t<e;t++){let e=X.decodeKey(n[t-2]);r[Lp(e)]=Z()}else for(let t=2;t<e;t++){let e=n[t-2];r[Lp(e)]=Z()}return r}else if(e==57342){let e=am(),t=Z();for(let n=2;n<e;n++)Yp(t++,Z());return Z()}else if(e==pp)return im();if(X.getShared&&(om(),t=yp[e&8191],t))return t.read||=Ip(t),t.read()}}let n=Tp[e];if(n)return n.handlesRead?n(Z):n(Z());{let t=Z();for(let n=0;n<Ep.length;n++){let r=Ep[n](e,t);if(r!==void 0)return r}return new Jp(t,e)}case 7:switch(e){case 20:return!1;case 21:return!0;case 22:return null;case 23:return;default:let t=(Dp||$p())[e];if(t!==void 0)return t;throw Error(`Unknown token `+e)}default:if(isNaN(e)){let e=Error(`Unexpected end of CBOR data`);throw e.incomplete=!0,e}throw Error(`Unknown CBOR token `+e)}}const Fp=/^[a-zA-Z_$][a-zA-Z\d_$]*$/;function Ip(e){if(!e)throw Error(`Structure is required in record definition`);function t(){let e=J[Y++];if(e&=31,e>23)switch(e){case 24:e=J[Y++];break;case 25:e=Op.getUint16(Y),Y+=2;break;case 26:e=Op.getUint32(Y),Y+=4;break;default:throw Error(`Expected array header, but got `+J[Y-1])}let t=this.compiledReader;for(;t;){if(t.propertyCount===e)return t(Z);t=t.next}if(this.slowReads++>=Mp){let n=this.length==e?this:this.slice(0,e);return t=X.keyMap?Function(`r`,`return {`+n.map(e=>X.decodeKey(e)).map(e=>Fp.test(e)?Lp(e)+`:r()`:`[`+JSON.stringify(e)+`]:r()`).join(`,`)+`}`):Function(`r`,`return {`+n.map(e=>Fp.test(e)?Lp(e)+`:r()`:`[`+JSON.stringify(e)+`]:r()`).join(`,`)+`}`),this.compiledReader&&(t.next=this.compiledReader),t.propertyCount=e,this.compiledReader=t,t(Z)}let n={};if(X.keyMap)for(let t=0;t<e;t++)n[Lp(X.decodeKey(this[t]))]=Z();else for(let t=0;t<e;t++)n[Lp(this[t])]=Z();return n}return e.slowReads=0,t}function Lp(e){if(typeof e==`string`)return e===`__proto__`?`__proto_`:e;if(typeof e==`number`||typeof e==`boolean`||typeof e==`bigint`)return e.toString();if(e==null)return e+``;throw Error(`Invalid property name type `+typeof e)}let Rp=Bp;function zp(e){Rp=t(1);function t(t){return function(t){let n=_p[vp++];if(n==null){if(Cp)return Bp(t);let r=e(Y,dp,t,J);if(typeof r==`string`)n=r,_p=fp;else if(_p=r,vp=1,Sp=1,n=_p[0],n===void 0)throw Error(`Unexpected end of buffer`)}let r=n.length;return r<=t?(Y+=t,n):(bp=n,xp=Y,Sp=Y+r,Y+=t,n.slice(0,t))}}}function Bp(e){let t;if(e<16&&(t=Up(e)))return t;if(e>64&&up)return up.decode(J.subarray(Y,Y+=e));let n=Y+e,r=[];for(t=``;Y<n;){let e=J[Y++];if(!(e&128))r.push(e);else if((e&224)==192){let t=J[Y++]&63;r.push((e&31)<<6|t)}else if((e&240)==224){let t=J[Y++]&63,n=J[Y++]&63;r.push((e&31)<<12|t<<6|n)}else if((e&248)==240){let t=J[Y++]&63,n=J[Y++]&63,i=J[Y++]&63,a=(e&7)<<18|t<<12|n<<6|i;a>65535&&(a-=65536,r.push(a>>>10&1023|55296),a=56320|a&1023),r.push(a)}else r.push(e);r.length>=4096&&(t+=Vp.apply(String,r),r.length=0)}return r.length>0&&(t+=Vp.apply(String,r)),t}let Vp=String.fromCharCode;function Hp(e){let t=Y,n=Array(e);for(let r=0;r<e;r++){let e=J[Y++];if((e&128)>0){Y=t;return}n[r]=e}return Vp.apply(String,n)}function Up(e){if(e<4)if(e<2){if(e===0)return``;{let e=J[Y++];if((e&128)>1){--Y;return}return Vp(e)}}else{let t=J[Y++],n=J[Y++];if((t&128)>0||(n&128)>0){Y-=2;return}if(e<3)return Vp(t,n);let r=J[Y++];if((r&128)>0){Y-=3;return}return Vp(t,n,r)}else{let t=J[Y++],n=J[Y++],r=J[Y++],i=J[Y++];if((t&128)>0||(n&128)>0||(r&128)>0||(i&128)>0){Y-=4;return}if(e<6){if(e===4)return Vp(t,n,r,i);{let e=J[Y++];if((e&128)>0){Y-=5;return}return Vp(t,n,r,i,e)}}else if(e<8){let a=J[Y++],o=J[Y++];if((a&128)>0||(o&128)>0){Y-=6;return}if(e<7)return Vp(t,n,r,i,a,o);let s=J[Y++];if((s&128)>0){Y-=7;return}return Vp(t,n,r,i,a,o,s)}else{let a=J[Y++],o=J[Y++],s=J[Y++],c=J[Y++];if((a&128)>0||(o&128)>0||(s&128)>0||(c&128)>0){Y-=8;return}if(e<10){if(e===8)return Vp(t,n,r,i,a,o,s,c);{let e=J[Y++];if((e&128)>0){Y-=9;return}return Vp(t,n,r,i,a,o,s,c,e)}}else if(e<12){let l=J[Y++],u=J[Y++];if((l&128)>0||(u&128)>0){Y-=10;return}if(e<11)return Vp(t,n,r,i,a,o,s,c,l,u);let d=J[Y++];if((d&128)>0){Y-=11;return}return Vp(t,n,r,i,a,o,s,c,l,u,d)}else{let l=J[Y++],u=J[Y++],d=J[Y++],f=J[Y++];if((l&128)>0||(u&128)>0||(d&128)>0||(f&128)>0){Y-=12;return}if(e<14){if(e===12)return Vp(t,n,r,i,a,o,s,c,l,u,d,f);{let e=J[Y++];if((e&128)>0){Y-=13;return}return Vp(t,n,r,i,a,o,s,c,l,u,d,f,e)}}else{let p=J[Y++],m=J[Y++];if((p&128)>0||(m&128)>0){Y-=14;return}if(e<15)return Vp(t,n,r,i,a,o,s,c,l,u,d,f,p,m);let h=J[Y++];if((h&128)>0){Y-=15;return}return Vp(t,n,r,i,a,o,s,c,l,u,d,f,p,m,h)}}}}}function Wp(e){return X.copyBuffers?Uint8Array.prototype.slice.call(J,Y,Y+=e):J.subarray(Y,Y+=e)}let Gp=new Float32Array(1),Kp=new Uint8Array(Gp.buffer,0,4);function qp(){let e=J[Y++],t=J[Y++],n=(e&127)>>2;if(n===31)return t||e&3?NaN:e&128?-1/0:1/0;if(n===0){let n=((e&3)<<8|t)/(1<<24);return e&128?-n:n}return Kp[3]=e&128|(n>>1)+56,Kp[2]=(e&7)<<5|t>>3,Kp[1]=t<<5,Kp[0]=0,Gp[0]}Array(4096);var Jp=class{constructor(e,t){this.value=e,this.tag=t}};Tp[0]=e=>new Date(e),Tp[1]=e=>new Date(Math.round(e*1e3)),Tp[2]=e=>{let t=BigInt(0);for(let n=0,r=e.byteLength;n<r;n++)t=BigInt(e[n])+(t<<BigInt(8));return t},Tp[3]=e=>BigInt(-1)-Tp[2](e),Tp[4]=e=>+(e[1]+`e`+e[0]),Tp[5]=e=>e[1]*Math.exp(e[0]*Math.log(2));const Yp=(e,t)=>{e-=57344;let n=yp[e];n&&n.isShared&&((yp.restoreStructures||=[])[e]=n),yp[e]=t,t.read=Ip(t)};Tp[105]=e=>{let t=e.length,n=e[1];Yp(e[0],n);let r={};for(let i=2;i<t;i++){let t=n[i-2];r[Lp(t)]=e[i]}return r},Tp[14]=e=>Cp?Cp[0].slice(Cp.position0,Cp.position0+=e):new Jp(e,14),Tp[15]=e=>Cp?Cp[1].slice(Cp.position1,Cp.position1+=e):new Jp(e,15);let Xp={Error,RegExp};Tp[27]=e=>(Xp[e[0]]||Error)(e[1],e[2]);const Zp=e=>{if(J[Y++]!=132){let e=Error(`Packed values structure must be followed by a 4 element array`);throw J.length<Y&&(e.incomplete=!0),e}let t=e();if(!t||!t.length){let e=Error(`Packed values structure must be followed by a 4 element array`);throw e.incomplete=!0,e}return Dp=Dp?t.concat(Dp.slice(t.length)):t,Dp.prefixes=e(),Dp.suffixes=e(),e()};Zp.handlesRead=!0,Tp[51]=Zp,Tp[6]=e=>{if(!Dp)if(X.getShared)om();else return new Jp(e,6);if(typeof e==`number`)return Dp[16+(e>=0?2*e:-2*e-1)];let t=Error(`No support for non-integer packed references yet`);throw e===void 0&&(t.incomplete=!0),t},Tp[28]=e=>{wp||(wp=new Map,wp.id=0);let t=wp.id++,n=Y,r=J[Y],i;i=r>>5==4?[]:{};let a={target:i};wp.set(t,a);let o=e();return a.used?(Object.getPrototypeOf(i)!==Object.getPrototypeOf(o)&&(Y=n,i=o,wp.set(t,{target:i}),o=e()),Object.assign(i,o)):(a.target=o,o)},Tp[28].handlesRead=!0,Tp[29]=e=>{let t=wp.get(e);return t.used=!0,t.target},Tp[258]=e=>new Set(e),(Tp[259]=e=>(X.mapsAsObjects&&(X.mapsAsObjects=!1,kp=!0),e())).handlesRead=!0;function Qp(e,t){return typeof e==`string`?e+t:e instanceof Array?e.concat(t):Object.assign({},e,t)}function $p(){if(!Dp)if(X.getShared)om();else throw Error(`No packed values available`);return Dp}Ep.push((e,t)=>{if(e>=225&&e<=255)return Qp($p().prefixes[e-224],t);if(e>=28704&&e<=32767)return Qp($p().prefixes[e-28672],t);if(e>=1879052288&&e<=2147483647)return Qp($p().prefixes[e-1879048192],t);if(e>=216&&e<=223)return Qp(t,$p().suffixes[e-216]);if(e>=27647&&e<=28671)return Qp(t,$p().suffixes[e-27639]);if(e>=1811940352&&e<=1879048191)return Qp(t,$p().suffixes[e-1811939328]);if(e==1399353956)return{packedValues:Dp,structures:yp.slice(0),version:t};if(e==55799)return t});const em=new Uint8Array(new Uint16Array([1]).buffer)[0]==1,tm=[Uint8Array,Uint8ClampedArray,Uint16Array,Uint32Array,typeof BigUint64Array>`u`?{name:`BigUint64Array`}:BigUint64Array,Int8Array,Int16Array,Int32Array,typeof BigInt64Array>`u`?{name:`BigInt64Array`}:BigInt64Array,Float32Array,Float64Array],nm=[64,68,69,70,71,72,77,78,79,85,86];for(let e=0;e<tm.length;e++)rm(tm[e],nm[e]);function rm(e,t){let n=`get`+e.name.slice(0,-5),r;typeof e==`function`?r=e.BYTES_PER_ELEMENT:e=null;for(let i=0;i<2;i++){if(!i&&r==1)continue;let a=r==2?1:r==4?2:r==8?3:0;Tp[i?t:t-4]=r==1||i==em?n=>{if(!e)throw Error(`Could not find typed array for code `+t);return!X.copyBuffers&&(r===1||r===2&&!(n.byteOffset&1)||r===4&&!(n.byteOffset&3)||r===8&&!(n.byteOffset&7))?new e(n.buffer,n.byteOffset,n.byteLength>>a):new e(Uint8Array.prototype.slice.call(n,0).buffer)}:r=>{if(!e)throw Error(`Could not find typed array for code `+t);let o=new DataView(r.buffer,r.byteOffset,r.byteLength),s=r.length>>a,c=new e(s),l=o[n];for(let e=0;e<s;e++)c[e]=l.call(o,e<<a,i);return c}}}function im(){let e=am(),t=Y+Z();for(let t=2;t<e;t++){let e=am();Y+=e}let n=Y;return Y=t,Cp=[Bp(am()),Bp(am())],Cp.position0=0,Cp.position1=0,Cp.postBundlePosition=Y,Y=n,Z()}function am(){let e=J[Y++]&31;if(e>23)switch(e){case 24:e=J[Y++];break;case 25:e=Op.getUint16(Y),Y+=2;break;case 26:e=Op.getUint32(Y),Y+=4;break}return e}function om(){if(X.getShared){let e=sm(()=>(J=null,X.getShared()))||{},t=e.structures||[];X.sharedVersion=e.version,Dp=X.sharedValues=e.packedValues,yp===!0?X.structures=yp=t:yp.splice.apply(yp,[0,t.length].concat(t))}}function sm(e){let t=dp,n=Y,r=vp,i=xp,a=Sp,o=bp,s=_p,c=wp,l=Cp,u=new Uint8Array(J.slice(0,dp)),d=yp,f=X,p=jp,m=e();return dp=t,Y=n,vp=r,xp=i,Sp=a,bp=o,_p=s,wp=c,Cp=l,J=u,jp=p,yp=d,X=f,Op=new DataView(J.buffer,J.byteOffset,J.byteLength),m}function cm(){J=null,wp=null,yp=null}const lm=Array(147);for(let e=0;e<256;e++)lm[e]=+(`1e`+Math.floor(45.15-e*.30103));let um=new Np({useRecords:!1});const dm=um.decode;um.decodeMultiple;const fm={NEVER:0,ALWAYS:1,DECIMAL_ROUND:3,DECIMAL_FIT:4};let pm;try{pm=new TextEncoder}catch{}let mm,hm;const gm=typeof globalThis==`object`&&globalThis.Buffer,_m=gm!==void 0,vm=_m?gm.allocUnsafeSlow:Uint8Array,ym=_m?gm:Uint8Array,bm=_m?4294967296:2144337920;let xm,Q,Sm,$=0,Cm,wm=null;const Tm=/[\u0080-\uFFFF]/,Em=Symbol(`record-id`);var Dm=class extends Np{constructor(e){super(e),this.offset=0;let t,n,r,i,a;e||={};let o=ym.prototype.utf8Write?function(e,t,n){return Q.utf8Write(e,t,n)}:pm&&pm.encodeInto?function(e,t){return pm.encodeInto(e,Q.subarray(t)).written}:!1,s=this,c=e.structures||e.saveStructures,l=e.maxSharedStructures;if(l??=c?128:0,l>8190)throw Error(`Maximum maxSharedStructure is 8190`);let u=e.sequential;u&&(l=0),this.structures||=[],this.saveStructures&&(this.saveShared=this.saveStructures);let d,f,p=e.sharedValues,m;if(p){m=Object.create(null);for(let e=0,t=p.length;e<t;e++)m[p[e]]=e}let h=[],g=0,_=0;this.mapEncode=function(e,t){if(this._keyMap&&!this._mapped)switch(e.constructor.name){case`Array`:e=e.map(e=>this.encodeKeys(e));break}return this.encode(e,t)},this.encode=function(o,c){if(Q||(Q=new vm(8192),Sm=new DataView(Q.buffer,0,8192),$=0),Cm=Q.length-10,Cm-$<2048?(Q=new vm(Q.length),Sm=new DataView(Q.buffer,0,Q.length),Cm=Q.length-10,$=0):c===512&&($=$+7&2147483640),t=$,s.useSelfDescribedHeader&&(Sm.setUint32($,3654940416),$+=3),a=s.structuredClone?new Map:null,s.bundleStrings&&typeof o!=`string`?(wm=[],wm.size=1/0):wm=null,n=s.structures,n){if(n.uninitialized){let e=s.getShared()||{};s.structures=n=e.structures||[],s.sharedVersion=e.version;let t=s.sharedValues=e.packedValues;if(t){m={};for(let e=0,n=t.length;e<n;e++)m[t[e]]=e}}let e=n.length;if(e>l&&!u&&(e=l),!n.transitions){n.transitions=Object.create(null);for(let t=0;t<e;t++){let e=n[t];if(!e)continue;let r,i=n.transitions;for(let n=0,a=e.length;n<a;n++){i[Em]===void 0&&(i[Em]=t);let a=e[n];r=i[a],r||=i[a]=Object.create(null),i=r}i[Em]=t|1048576}}u||(n.nextId=e)}if(r&&=!1,i=n||[],f=m,e.pack){let t=new Map;if(t.values=[],t.encoder=s,t.maxValues=e.maxPrivatePackedValues||(m?16:1/0),t.objectMap=m||!1,t.samplingPackedValues=d,Nm(o,t),t.values.length>0){Q[$++]=216,Q[$++]=51,Am(4);let e=t.values;v(e),Am(0),Am(0),f=Object.create(m||null);for(let t=0,n=e.length;t<n;t++)f[e[t]]=t}}xm=c&Gm;try{if(xm)return;if(v(o),wm&&Rm(t,v),s.offset=$,a&&a.idsToInsert){$+=a.idsToInsert.length*2,$>Cm&&b($),s.offset=$;let e=Lm(Q.subarray(t,$),a.idsToInsert);return a=null,e}return c&512?(Q.start=t,Q.end=$,Q):Q.subarray(t,$)}finally{if(n){if(_<10&&_++,n.length>l&&(n.length=l),g>1e4)n.transitions=null,_=0,g=0,h.length>0&&(h=[]);else if(h.length>0&&!u){for(let e=0,t=h.length;e<t;e++)h[e][Em]=void 0;h=[]}}if(r&&s.saveShared){s.structures.length>l&&(s.structures=s.structures.slice(0,l));let e=Q.subarray(t,$);return s.updateSharedData()===!1?s.encode(o):e}c&1024&&($=t)}},this.findCommonStringsToPack=()=>(d=new Map,m||=Object.create(null),e=>{let t=e&&e.threshold||4,n=this.pack?e.maxPrivatePackedValues||16:0;p||=this.sharedValues=[];for(let[e,i]of d)i.count>t&&(m[e]=n++,p.push(e),r=!0);for(;this.saveShared&&this.updateSharedData()===!1;);d=null});let v=n=>{$>Cm&&(Q=b($));var r=typeof n,i;if(r===`string`){if(f){let t=f[n];if(t>=0){t<16?Q[$++]=t+224:(Q[$++]=198,t&1?v(15-t>>1):v(t-16>>1));return}else if(d&&!e.pack){let e=d.get(n);e?e.count++:d.set(n,{count:1})}}let r=n.length;if(wm&&r>=4&&r<1024){if((wm.size+=r)>61440){let e,n=(wm[0]?wm[0].length*3+wm[1].length:0)+10;$+n>Cm&&(Q=b($+n)),Q[$++]=217,Q[$++]=223,Q[$++]=249,Q[$++]=wm.position?132:130,Q[$++]=26,e=$-t,$+=4,wm.position&&Rm(t,v),wm=[``,``],wm.size=0,wm.position=e}let e=Tm.test(n);wm[+!e]+=n,Q[$++]=e?206:207,v(r);return}let a;a=r<32?1:r<256?2:r<65536?3:5;let s=r*3;if($+s>Cm&&(Q=b($+s)),r<64||!o){let e,t,o,s=$+a;for(e=0;e<r;e++)t=n.charCodeAt(e),t<128?Q[s++]=t:t<2048?(Q[s++]=t>>6|192,Q[s++]=t&63|128):(t&64512)==55296&&((o=n.charCodeAt(e+1))&64512)==56320?(t=65536+((t&1023)<<10)+(o&1023),e++,Q[s++]=t>>18|240,Q[s++]=t>>12&63|128,Q[s++]=t>>6&63|128,Q[s++]=t&63|128):(Q[s++]=t>>12|224,Q[s++]=t>>6&63|128,Q[s++]=t&63|128);i=s-$-a}else i=o(n,$+a,s);i<24?Q[$++]=96|i:i<256?(a<2&&Q.copyWithin($+2,$+1,$+1+i),Q[$++]=120,Q[$++]=i):i<65536?(a<3&&Q.copyWithin($+3,$+2,$+2+i),Q[$++]=121,Q[$++]=i>>8,Q[$++]=i&255):(a<5&&Q.copyWithin($+5,$+3,$+3+i),Q[$++]=122,Sm.setUint32($,i),$+=4),$+=i}else if(r===`number`)if(!this.alwaysUseFloat&&n>>>0===n)n<24?Q[$++]=n:n<256?(Q[$++]=24,Q[$++]=n):n<65536?(Q[$++]=25,Q[$++]=n>>8,Q[$++]=n&255):(Q[$++]=26,Sm.setUint32($,n),$+=4);else if(!this.alwaysUseFloat&&n>>0===n)n>=-24?Q[$++]=31-n:n>=-256?(Q[$++]=56,Q[$++]=~n):n>=-65536?(Q[$++]=57,Sm.setUint16($,~n),$+=2):(Q[$++]=58,Sm.setUint32($,~n),$+=4);else{let e;if((e=this.useFloat32)>0&&n<4294967296&&n>=-2147483648){Q[$++]=250,Sm.setFloat32($,n);let t;if(e<4||(t=n*lm[(Q[$]&127)<<1|Q[$+1]>>7])>>0===t){$+=4;return}else $--}Q[$++]=251,Sm.setFloat64($,n),$+=8}else if(r===`object`)if(!n)Q[$++]=246;else{if(a){let e=a.get(n);if(e){if(Q[$++]=216,Q[$++]=29,Q[$++]=25,!e.references){let t=a.idsToInsert||=[];e.references=[],t.push(e)}e.references.push($-t),$+=2;return}else a.set(n,{offset:$-t})}let e=n.constructor;if(e===Object)y(n);else if(e===Array){i=n.length,i<24?Q[$++]=128|i:Am(i);for(let e=0;e<i;e++)v(n[e])}else if(e===Map)if((this.mapsAsObjects?this.useTag259ForMaps!==!1:this.useTag259ForMaps)&&(Q[$++]=217,Q[$++]=1,Q[$++]=3),i=n.size,i<24?Q[$++]=160|i:i<256?(Q[$++]=184,Q[$++]=i):i<65536?(Q[$++]=185,Q[$++]=i>>8,Q[$++]=i&255):(Q[$++]=186,Sm.setUint32($,i),$+=4),s.keyMap)for(let[e,t]of n)v(s.encodeKey(e)),v(t);else for(let[e,t]of n)v(e),v(t);else{for(let e=0,t=mm.length;e<t;e++){let t=hm[e];if(n instanceof t){let t=mm[e],r=t.tag;r??=t.getTag&&t.getTag.call(this,n),r<24?Q[$++]=192|r:r<256?(Q[$++]=216,Q[$++]=r):r<65536?(Q[$++]=217,Q[$++]=r>>8,Q[$++]=r&255):r>-1&&(Q[$++]=218,Sm.setUint32($,r),$+=4),t.encode.call(this,n,v,b);return}}if(n[Symbol.iterator]){if(xm){let e=Error(`Iterable should be serialized as iterator`);throw e.iteratorNotHandled=!0,e}Q[$++]=159;for(let e of n)v(e);Q[$++]=255;return}if(n[Symbol.asyncIterator]||Mm(n)){let e=Error(`Iterable/blob should be serialized as iterator`);throw e.iteratorNotHandled=!0,e}if(this.useToJSON&&n.toJSON){let e=n.toJSON();if(e!==n)return v(e)}y(n)}}else if(r===`boolean`)Q[$++]=n?245:244;else if(r===`bigint`){if(n<BigInt(1)<<BigInt(64)&&n>=0)Q[$++]=27,Sm.setBigUint64($,n);else if(n>-(BigInt(1)<<BigInt(64))&&n<0)Q[$++]=59,Sm.setBigUint64($,-n-BigInt(1));else if(this.largeBigIntToFloat)Q[$++]=251,Sm.setFloat64($,Number(n));else{n>=BigInt(0)?Q[$++]=194:(Q[$++]=195,n=BigInt(-1)-n);let e=[];for(;n;)e.push(Number(n&BigInt(255))),n>>=BigInt(8);Im(new Uint8Array(e.reverse()),b);return}$+=8}else if(r===`undefined`)Q[$++]=247;else throw Error(`Unknown type: `+r)},y=this.useRecords===!1?this.variableMapSize?e=>{let t=Object.keys(e),n=Object.values(e),r=t.length;if(r<24?Q[$++]=160|r:r<256?(Q[$++]=184,Q[$++]=r):r<65536?(Q[$++]=185,Q[$++]=r>>8,Q[$++]=r&255):(Q[$++]=186,Sm.setUint32($,r),$+=4),s.keyMap)for(let e=0;e<r;e++)v(s.encodeKey(t[e])),v(n[e]);else for(let e=0;e<r;e++)v(t[e]),v(n[e])}:e=>{Q[$++]=185;let n=$-t;$+=2;let r=0;if(s.keyMap)for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&(v(s.encodeKey(t)),v(e[t]),r++);else for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&(v(t),v(e[t]),r++);Q[n+++t]=r>>8,Q[n+t]=r&255}:(e,t)=>{let n,a=i.transitions||=Object.create(null),o=0,s=0,c,u;if(this.keyMap){u=Object.keys(e).map(e=>this.encodeKey(e)),s=u.length;for(let e=0;e<s;e++){let t=u[e];n=a[t],n||(n=a[t]=Object.create(null),o++),a=n}}else for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&(n=a[t],n||(a[Em]&1048576&&(c=a[Em]&65535),n=a[t]=Object.create(null),o++),a=n,s++);let d=a[Em];if(d!==void 0)d&=65535,Q[$++]=217,Q[$++]=d>>8|224,Q[$++]=d&255;else if(u||=a.__keys__||=Object.keys(e),c===void 0?(d=i.nextId++,d||(d=0,i.nextId=1),d>=256&&(i.nextId=(d=l)+1)):d=c,i[d]=u,d<l){Q[$++]=217,Q[$++]=d>>8|224,Q[$++]=d&255,a=i.transitions;for(let e=0;e<s;e++)(a[Em]===void 0||a[Em]&1048576)&&(a[Em]=d),a=a[u[e]];a[Em]=d|1048576,r=!0}else{if(a[Em]=d,Sm.setUint32($,3655335680),$+=3,o&&(g+=_*o),h.length>=256-l&&(h.shift()[Em]=void 0),h.push(a),Am(s+2),v(57344+d),v(u),t)return;for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&v(e[t]);return}if(s<24?Q[$++]=128|s:Am(s),!t)for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&v(e[t])},b=e=>{let n;if(e>16777216){if(e-t>bm)throw Error(`Encoded buffer would be larger than maximum buffer size`);n=Math.min(bm,Math.round(Math.max((e-t)*(e>67108864?1.25:2),4194304)/4096)*4096)}else n=(Math.max(e-t<<2,Q.length-1)>>12)+1<<12;let r=new vm(n);return Sm=new DataView(r.buffer,0,n),Q.copy?Q.copy(r,0,t,e):r.set(Q.slice(t,e)),$-=t,t=0,Cm=r.length-10,Q=r},x=100,S=1e3;this.encodeAsIterable=function(e,t){return E(e,t,C)},this.encodeAsAsyncIterable=function(e,t){return E(e,t,D)};function*C(e,n,r){let i=e.constructor;if(i===Object){let t=s.useRecords!==!1;t?y(e,!0):Om(Object.keys(e).length,160);for(let r in e){let i=e[r];t||v(r),i&&typeof i==`object`?n[r]?yield*C(i,n[r]):yield*w(i,n,r):v(i)}}else if(i===Array){let r=e.length;Am(r);for(let i=0;i<r;i++){let r=e[i];r&&(typeof r==`object`||$-t>x)?n.element?yield*C(r,n.element):yield*w(r,n,`element`):v(r)}}else if(e[Symbol.iterator]&&!e.buffer){Q[$++]=159;for(let r of e)r&&(typeof r==`object`||$-t>x)?n.element?yield*C(r,n.element):yield*w(r,n,`element`):v(r);Q[$++]=255}else Mm(e)?(Om(e.size,64),yield Q.subarray(t,$),yield e,T()):e[Symbol.asyncIterator]?(Q[$++]=159,yield Q.subarray(t,$),yield e,T(),Q[$++]=255):v(e);r&&$>t?yield Q.subarray(t,$):$-t>x&&(yield Q.subarray(t,$),T())}function*w(e,n,r){let i=$-t;try{v(e),$-t>x&&(yield Q.subarray(t,$),T())}catch(a){if(a.iteratorNotHandled)n[r]={},$=t+i,yield*C.call(this,e,n[r]);else throw a}}function T(){x=S,s.encode(null,Gm)}function E(e,t,n){return x=t&&t.chunkThreshold?S=t.chunkThreshold:100,e&&typeof e==`object`?(s.encode(null,Gm),n(e,s.iterateProperties||={},!0)):[s.encode(e)]}async function*D(e,t){for(let n of C(e,t,!0)){let e=n.constructor;if(e===ym||e===Uint8Array)yield n;else if(Mm(n)){let e=n.stream().getReader(),t;for(;!(t=await e.read()).done;)yield t.value}else if(n[Symbol.asyncIterator])for await(let e of n)T(),e?yield*D(e,t.async||={}):yield s.encode(e);else yield n}}}useBuffer(e){Q=e,Sm=new DataView(Q.buffer,Q.byteOffset,Q.byteLength),$=0}clearSharedData(){this.structures&&=[],this.sharedValues&&=void 0}updateSharedData(){let e=this.sharedVersion||0;this.sharedVersion=e+1;let t=this.structures.slice(0),n=new km(t,this.sharedValues,this.sharedVersion),r=this.saveShared(n,t=>(t&&t.version||0)==e);return r===!1?(n=this.getShared()||{},this.structures=n.structures||[],this.sharedValues=n.packedValues,this.sharedVersion=n.version,this.structures.nextId=this.structures.length):t.forEach((e,t)=>this.structures[t]=e),r}};function Om(e,t){e<24?Q[$++]=t|e:e<256?(Q[$++]=t|24,Q[$++]=e):e<65536?(Q[$++]=t|25,Q[$++]=e>>8,Q[$++]=e&255):(Q[$++]=t|26,Sm.setUint32($,e),$+=4)}var km=class{constructor(e,t,n){this.structures=e,this.packedValues=t,this.version=n}};function Am(e){e<24?Q[$++]=128|e:e<256?(Q[$++]=152,Q[$++]=e):e<65536?(Q[$++]=153,Q[$++]=e>>8,Q[$++]=e&255):(Q[$++]=154,Sm.setUint32($,e),$+=4)}const jm=typeof Blob>`u`?function(){}:Blob;function Mm(e){if(e instanceof jm)return!0;let t=e[Symbol.toStringTag];return t===`Blob`||t===`File`}function Nm(e,t){switch(typeof e){case`string`:if(e.length>3){if(t.objectMap[e]>-1||t.values.length>=t.maxValues)return;let n=t.get(e);if(n)++n.count==2&&t.values.push(e);else if(t.set(e,{count:1}),t.samplingPackedValues){let n=t.samplingPackedValues.get(e);n?n.count++:t.samplingPackedValues.set(e,{count:1})}}break;case`object`:if(e)if(e instanceof Array)for(let n=0,r=e.length;n<r;n++)Nm(e[n],t);else{let r=!t.encoder.useRecords;for(var n in e)e.hasOwnProperty(n)&&(r&&Nm(n,t),Nm(e[n],t))}break;case`function`:console.log(e)}}const Pm=new Uint8Array(new Uint16Array([1]).buffer)[0]==1;hm=[Date,Set,Error,RegExp,Jp,ArrayBuffer,Uint8Array,Uint8ClampedArray,Uint16Array,Uint32Array,typeof BigUint64Array>`u`?function(){}:BigUint64Array,Int8Array,Int16Array,Int32Array,typeof BigInt64Array>`u`?function(){}:BigInt64Array,Float32Array,Float64Array,km],mm=[{tag:1,encode(e,t){let n=e.getTime()/1e3;(this.useTimestamp32||e.getMilliseconds()===0)&&n>=0&&n<4294967296?(Q[$++]=26,Sm.setUint32($,n),$+=4):(Q[$++]=251,Sm.setFloat64($,n),$+=8)}},{tag:258,encode(e,t){t(Array.from(e))}},{tag:27,encode(e,t){t([e.name,e.message])}},{tag:27,encode(e,t){t([`RegExp`,e.source,e.flags])}},{getTag(e){return e.tag},encode(e,t){t(e.value)}},{encode(e,t,n){Im(e,n)}},{getTag(e){if(e.constructor===Uint8Array&&(this.tagUint8Array||_m&&this.tagUint8Array!==!1))return 64},encode(e,t,n){Im(e,n)}},Fm(68,1),Fm(69,2),Fm(70,4),Fm(71,8),Fm(72,1),Fm(77,2),Fm(78,4),Fm(79,8),Fm(85,4),Fm(86,8),{encode(e,t){let n=e.packedValues||[],r=e.structures||[];if(n.values.length>0){Q[$++]=216,Q[$++]=51,Am(4);let e=n.values;t(e),Am(0),Am(0),packedObjectMap=Object.create(sharedPackedObjectMap||null);for(let t=0,n=e.length;t<n;t++)packedObjectMap[e[t]]=t}if(r){Sm.setUint32($,3655335424),$+=3;let n=r.slice(0);n.unshift(57344),n.push(new Jp(e.version,1399353956)),t(n)}else t(new Jp(e.version,1399353956))}}];function Fm(e,t){return!Pm&&t>1&&(e-=4),{tag:e,encode:function(e,t){let n=e.byteLength,r=e.byteOffset||0,i=e.buffer||e;t(_m?gm.from(i,r,n):new Uint8Array(i,r,n))}}}function Im(e,t){let n=e.byteLength;n<24?Q[$++]=64+n:n<256?(Q[$++]=88,Q[$++]=n):n<65536?(Q[$++]=89,Q[$++]=n>>8,Q[$++]=n&255):(Q[$++]=90,Sm.setUint32($,n),$+=4),$+n>=Q.length&&t($+n),Q.set(e.buffer?e:new Uint8Array(e),$),$+=n}function Lm(e,t){let n,r=t.length*2,i=e.length-r;t.sort((e,t)=>e.offset>t.offset?1:-1);for(let n=0;n<t.length;n++){let r=t[n];r.id=n;for(let t of r.references)e[t++]=n>>8,e[t]=n&255}for(;n=t.pop();){let t=n.offset;e.copyWithin(t+r,t,i),r-=2;let a=t+r;e[a++]=216,e[a++]=28,i=t}return e}function Rm(e,t){Sm.setUint32(wm.position+e,$-wm.position-e+1);let n=wm;wm=null,t(n[0]),t(n[1])}let zm=new Dm({useRecords:!1});const Bm=zm.encode;zm.encodeAsIterable,zm.encodeAsAsyncIterable;const{NEVER:Vm,ALWAYS:Hm,DECIMAL_ROUND:Um,DECIMAL_FIT:Wm}=fm,Gm=2048;var Km=n(((e,t)=>{let n=()=>process.platform===`linux`,r=null;t.exports={isLinux:n,getReport:()=>{if(!r)if(n()&&process.report){let e=process.report.excludeNetwork;process.report.excludeNetwork=!0,r=process.report.getReport(),process.report.excludeNetwork=e}else r={};return r}}})),qm=n(((e,n)=>{let r=t(`fs`),i=2048;n.exports={LDD_PATH:`/usr/bin/ldd`,SELF_PATH:`/proc/self/exe`,readFileSync:e=>{let t=r.openSync(e,`r`),n=Buffer.alloc(i),a=r.readSync(t,n,0,i,0);return r.close(t,()=>{}),n.subarray(0,a)},readFile:e=>new Promise((t,n)=>{r.open(e,`r`,(e,a)=>{if(e)n(e);else{let e=Buffer.alloc(i);r.read(a,e,0,i,0,(n,i)=>{t(e.subarray(0,i)),r.close(a,()=>{})})}})})}})),Jm=n(((e,t)=>{t.exports={interpreterPath:e=>{if(e.length<64||e.readUInt32BE(0)!==2135247942||e.readUInt8(4)!==2||e.readUInt8(5)!==1)return null;let t=e.readUInt32LE(32),n=e.readUInt16LE(54),r=e.readUInt16LE(56);for(let i=0;i<r;i++){let r=t+i*n;if(e.readUInt32LE(r)===3){let t=e.readUInt32LE(r+8),n=e.readUInt32LE(r+32);return e.subarray(t,t+n).toString().replace(/\0.*$/g,``)}}return null}}})),Ym=n(((e,n)=>{let r=t(`child_process`),{isLinux:i,getReport:a}=Km(),{LDD_PATH:o,SELF_PATH:s,readFile:c,readFileSync:l}=qm(),{interpreterPath:u}=Jm(),d,f,p,m=`getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true`,h=``,g=()=>h||new Promise(e=>{r.exec(m,(t,n)=>{h=t?` `:n,e(h)})}),_=()=>{if(!h)try{h=r.execSync(m,{encoding:`utf8`})}catch{h=` `}return h},v=`glibc`,y=/LIBC[a-z0-9 \-).]*?(\d+\.\d+)/i,b=`musl`,x=e=>e.includes(`libc.musl-`)||e.includes(`ld-musl-`),S=()=>{let e=a();return e.header&&e.header.glibcVersionRuntime?v:Array.isArray(e.sharedObjects)&&e.sharedObjects.some(x)?b:null},C=e=>{let[t,n]=e.split(/[\r\n]+/);return t&&t.includes(v)?v:n&&n.includes(b)?b:null},w=e=>{if(e){if(e.includes(`/ld-musl-`))return b;if(e.includes(`/ld-linux-`))return v}return null},T=e=>(e=e.toString(),e.includes(`musl`)?b:e.includes(`GNU C Library`)?v:null),E=async()=>{if(f!==void 0)return f;f=null;try{f=T(await c(o))}catch{}return f},D=()=>{if(f!==void 0)return f;f=null;try{f=T(l(o))}catch{}return f},O=async()=>{if(d!==void 0)return d;d=null;try{d=w(u(await c(s)))}catch{}return d},k=()=>{if(d!==void 0)return d;d=null;try{d=w(u(l(s)))}catch{}return d},A=async()=>{let e=null;return i()&&(e=await O(),e||(e=await E(),e||=S(),e||=C(await g()))),e},j=()=>{let e=null;return i()&&(e=k(),e||(e=D(),e||=S(),e||=C(_()))),e},M=async()=>i()&&await A()!==v,N=()=>i()&&j()!==v,P=async()=>{if(p!==void 0)return p;p=null;try{let e=(await c(o)).match(y);e&&(p=e[1])}catch{}return p},F=()=>{if(p!==void 0)return p;p=null;try{let e=l(o).match(y);e&&(p=e[1])}catch{}return p},I=()=>{let e=a();return e.header&&e.header.glibcVersionRuntime?e.header.glibcVersionRuntime:null},ee=e=>e.trim().split(/\s+/)[1],L=e=>{let[t,n,r]=e.split(/[\r\n]+/);return t&&t.includes(v)?ee(t):n&&r&&n.includes(b)?ee(r):null};n.exports={GLIBC:v,MUSL:b,family:A,familySync:j,isNonGlibcLinux:M,isNonGlibcLinuxSync:N,version:async()=>{let e=null;return i()&&(e=await P(),e||=I(),e||=L(await g())),e},versionSync:()=>{let e=null;return i()&&(e=F(),e||=I(),e||=L(_())),e}}})),Xm=n(((e,n)=>{var r=t(`fs`),i=t(`path`),a=t(`url`),o=process.config&&process.config.variables||{},s=!!process.env.PREBUILDS_ONLY,c=process.versions,l=c.modules;(c.deno||process.isBun)&&(l=`unsupported`);var u=D()?`electron`:`node`,d=process.arch,f=process.platform,p=process.env.LIBC||(O(f)?`musl`:`glibc`),m=process.env.ARM_VERSION||(d===`arm64`?`8`:o.arm_version)||``,h=(c.uv||``).split(`.`)[0];n.exports=g;function g(e){return typeof __webpack_require__==`function`?__non_webpack_require__(g.path(e)):t(g.path(e))}g.path=function(e){e=i.resolve(e||`.`);var n=``;try{n=typeof __webpack_require__==`function`?__non_webpack_require__(i.join(e,`package.json`)).name:t(i.join(e,`package.json`)).name;var r=n.toUpperCase().replace(/-/g,`_`)+`_PREBUILD`;process.env[r]&&(e=process.env[r])}catch{}if(!s){var o=v(i.join(e,`build/Release`),y);if(o)return o;var c=v(i.join(e,`build/Debug`),y);if(c)return c}var g=k(e);if(g)return g;var T=k(i.dirname(process.execPath));if(T)return T;var D=(n[0]==`@`?``:`@`+n+`/`)+n+`-`+f+`-`+d;try{return A(i.dirname(t(`module`).createRequire(a.pathToFileURL(i.join(e,`package.json`))).resolve(D)))}catch{}var O=[`platform=`+f,`arch=`+d,`runtime=`+u,`abi=`+l,`uv=`+h,m?`armv=`+m:``,`libc=`+p,`node=`+process.versions.node,process.versions.electron?`electron=`+process.versions.electron:``,typeof __webpack_require__==`function`?`webpack=true`:``].filter(Boolean).join(` `);throw Error(`No native build was found for `+O+`
|
|
137
137
|
attempted loading from: `+e+` and package: `+D+`
|
|
138
|
-
`);function k(e){var t=_(i.join(e,`prebuilds`)).map(b).filter(x(f,d)).sort(S)[0];if(t)return A(i.join(e,`prebuilds`,t.name))}function A(e){var t=_(e).map(C).filter(w(u,l)).sort(E(u))[0];if(t)return i.join(e,t.file)}};function _(e){try{return r.readdirSync(e)}catch{return[]}}function v(e,t){var n=_(e).filter(t);return n[0]&&i.join(e,n[0])}function y(e){return/\.node$/.test(e)}function b(e){var t=e.split(`-`);if(t.length===2){var n=t[0],r=t[1].split(`+`);if(n&&r.length&&r.every(Boolean))return{name:e,platform:n,architectures:r}}}function x(e,t){return function(n){return n==null||n.platform!==e?!1:n.architectures.includes(t)}}function S(e,t){return e.architectures.length-t.architectures.length}function C(e){var t=e.split(`.`),n=t.pop(),r={file:e,specificity:0};if(n===`node`){for(var i=0;i<t.length;i++){var a=t[i];if(a===`node`||a===`electron`||a===`node-webkit`)r.runtime=a;else if(a===`napi`)r.napi=!0;else if(a.slice(0,3)===`abi`)r.abi=a.slice(3);else if(a.slice(0,2)===`uv`)r.uv=a.slice(2);else if(a.slice(0,4)===`armv`)r.armv=a.slice(4);else if(a===`glibc`||a===`musl`)r.libc=a;else continue;r.specificity++}return r}}function w(e,t){return function(n){return!(n==null||n.runtime!==e&&!T(n)||n.abi!==t&&!n.napi||n.uv&&n.uv!==h||n.armv&&n.armv!==m||n.libc&&n.libc!==p)}}function T(e){return e.runtime===`node`&&e.napi}function E(e){return function(t,n){return t.runtime===n.runtime?t.abi===n.abi?t.specificity===n.specificity?0:t.specificity>n.specificity?-1:1:t.abi?-1:1:t.runtime===e?-1:1}}function D(){return process.versions&&process.versions.electron||process.env.ELECTRON_RUN_AS_NODE?!0:typeof window<`u`&&window.process&&window.process.type===`renderer`}function O(e){if(e!==`linux`)return!1;let{familySync:t,MUSL:n}=
|
|
139
|
-
`),r=process.env.DEBUG?`\n\nResponse context: ${h.getDebugContext()}`:``;throw new p(`Schema validation failed for ${o} ${e}${g}:\n${n}${r}`,{url:l,code:`SCHEMA_VALIDATION`,cause:t.error})}return t.data})})}function Vm(e){let t=Un(e,{depth:3,maxArrayLength:10,breakLength:120});return t.length>500?`${t.slice(0,500)}...`:t}async function Hm(e){let t=e.headers.get(`Content-Type`)||``;if(t.includes(`application/cbor`)){let n=await e.arrayBuffer(),r=Vp(new Uint8Array(n));return{data:r,getDebugContext:()=>`Content-Type: ${t}, ${n.byteLength} bytes (CBOR), preview: ${Vm(r)}`}}let n=await e.text(),r=JSON.parse(n);return{data:r,getDebugContext:()=>`Content-Type: ${t}, ${n.length} bytes, preview: ${Vm(r)}`}}var Um=class{contentType=`application/cbor`;serialize(e){return Buffer.from(gm(e))}async deserialize(e){let t=[],n=e.getReader();for(;;){let{done:e,value:r}=await n.read();if(e)break;r&&t.push(r)}return Vp(Buffer.concat(t))}},Wm=class{contentType=`application/json`;serialize(e){return Buffer.from(JSON.stringify(e))}async deserialize(e){let t=[],n=e.getReader();for(;;){let{done:e,value:r}=await n.read();if(e)break;r&&t.push(r)}return JSON.parse(Buffer.concat(t).toString())}},Gm=class{contentType=`application/cbor`;serialize(e){return Buffer.from(gm(e))}async deserialize(e){let t=[],n=e.getReader();for(;;){let{done:e,value:r}=await n.read();if(e)break;r&&t.push(r)}let r=Buffer.concat(t);try{return Vp(r)}catch{return JSON.parse(r.toString())}}};const Km=new Kn,qm=nn({payload:he,queueName:Se,deploymentId:ft().optional()}),Jm=Number(process.env.VERCEL_QUEUE_MAX_DELAY_SECONDS||82800);function Ym(e){let t=Math.min(Math.max(1,2**(e-1)),60),n=Math.floor(Math.random()*(Math.ceil(t*.25)+1));return Math.max(1,t-n)}function Xm(e){let t={};return`runId`in e&&typeof e.runId==`string`&&(t[`x-vercel-workflow-run-id`]=e.runId),`workflowRunId`in e&&typeof e.workflowRunId==`string`&&(t[`x-vercel-workflow-run-id`]=e.workflowRunId),`stepId`in e&&typeof e.stepId==`string`&&(t[`x-vercel-workflow-step-id`]=e.stepId),Object.keys(t).length>0?t:void 0}function Zm(e){let{baseUrl:t,usingProxy:n}=Lm(e),r=Rm(e,{usingProxy:n}),i=new Um,a=new Wm,o=new Gm,s={region:`iad1`,dispatcher:_c(e),transport:o,...n&&{resolveBaseUrl:()=>new URL(`${t}/queues-proxy`),token:e?.token},headers:Object.fromEntries(r.entries())},c=async(e,t,n)=>{let r=n?.deploymentId??process.env.VERCEL_DEPLOYMENT_ID;if(!r)throw Error(`No deploymentId provided and VERCEL_DEPLOYMENT_ID environment variable is not set. Queue messages require a deployment ID to route correctly. Either set VERCEL_DEPLOYMENT_ID or provide deploymentId in options.`);let o=(n?.specVersion??5)>=3?i:a,c=new zf({...s,deploymentId:r,transport:o}),l={payload:t,queueName:e,deploymentId:n?.deploymentId},u=e.replace(/[^A-Za-z0-9-_]/g,`-`);try{let{messageId:e}=await c.send(u,l,{idempotencyKey:n?.idempotencyKey,delaySeconds:n?.delaySeconds,headers:{...Xm(t),...n?.headers}});return{messageId:e?ce.parse(e):null}}catch(e){if(e instanceof id)return{messageId:ce.parse(`msg_duplicate_${e.idempotencyKey??n?.idempotencyKey??`unknown`}`)};throw e}};return{queue:c,createQueueHandler:(e,t)=>{let n=new zf(s).handleCallback(async(e,n)=>{if(!e||!n)return;let r=Km.getStore(),{payload:i,queueName:a,deploymentId:o}=qm.parse(e),s=await t(i,{queueName:a,messageId:ce.parse(n.messageId),attempt:n.deliveryCount,requestId:r});typeof s?.timeoutSeconds==`number`&&await c(a,i,{deploymentId:o,delaySeconds:s.timeoutSeconds>0?Math.min(s.timeoutSeconds,Jm):void 0})},{retry:(e,{deliveryCount:t})=>({afterSeconds:Ym(t)})});return async e=>{let t=e.headers.get(`x-vercel-id`)?.trim()||void 0;return Km.run(t,()=>n(e))}},getDeploymentId:async()=>{let e=process.env.VERCEL_DEPLOYMENT_ID;if(!e)throw Error(`VERCEL_DEPLOYMENT_ID environment variable is not set`);return e}}}const Qm=nn({id:ft()});function $m(e){return async function(){let t=process.env.VERCEL_DEPLOYMENT_ID;if(!t)throw Error(`Cannot resolve latest deployment: VERCEL_DEPLOYMENT_ID environment variable is not set`);let n=e?.token??process.env.VERCEL_TOKEN??await(0,hc.getVercelOidcToken)().catch(()=>null);if(!n)throw Error(`Cannot resolve latest deployment: no OIDC token or VERCEL_TOKEN available`);let r=`https://api.vercel.com/v1/workflow/resolve-latest-deployment/${encodeURIComponent(t)}`,i=await fetch(r,{method:`GET`,headers:{Authorization:`Bearer ${n}`},dispatcher:_c(e)});if(!i.ok){let e;try{e=await i.text()}catch{e=`<unable to read response body>`}throw Error(`Failed to resolve latest deployment for ${t}: HTTP ${i.status} ${i.statusText}${e?` — ${e}`:``}`)}let a=await i.json(),o=Qm.safeParse(a);if(!o.success)throw Error(`Invalid response from Vercel API: expected { id: string }. Zod error: ${o.error.message}`);return o.data.id}}const eh=`application/vnd.workflow.v4-frames`;function th(e,t){let n=new Uint8Array(gm(e)),r=new Uint8Array(4+n.byteLength+4+t.byteLength),i=new DataView(r.buffer);return i.setUint32(0,n.byteLength,!1),r.set(n,4),i.setUint32(4+n.byteLength,t.byteLength,!1),r.set(t,4+n.byteLength+4),r}async function*nh(e){let t=Symbol.asyncIterator in e?e[Symbol.asyncIterator]():rh(e.getReader()),n=new Uint8Array,r=async e=>{for(;n.byteLength<e;){let{done:e,value:r}=await t.next();if(e)return!1;if(!r||r.byteLength===0)continue;let i=new Uint8Array(n.byteLength+r.byteLength);i.set(n,0),i.set(r,n.byteLength),n=i}return!0},i=e=>{let t=n.subarray(0,e);return n=n.subarray(e),t};for(;;){if(!await r(4))return;let e=new DataView(n.buffer,n.byteOffset,4).getUint32(0,!1);if(i(4),!await r(e))throw Error(`decodeFrames: truncated meta block`);let t=Vp(i(e));if(!await r(4))throw Error(`decodeFrames: truncated body length`);let a=new DataView(n.buffer,n.byteOffset,4).getUint32(0,!1);if(i(4),a>0){if(!await r(a))throw Error(`decodeFrames: truncated body bytes`);yield{meta:t,body:n.slice(0,a)},i(a)}else yield{meta:t,body:new Uint8Array};if(t._end===1)return}}async function*rh(e){for(;;){let{done:t,value:n}=await e.read();if(t)return;n&&(yield n)}}async function ih(e,t,n){return t.headers.set(`X-Request-Time`,Date.now().toString()),await Oc(t.headers),fetch(e,{method:t.method,headers:t.headers,body:t.body,dispatcher:_c(n)})}function ah(e){let t={};return e.forEach((e,n)=>{t[n]=e}),t}const oh={eventId:`x-wf-event-id`,runId:`x-wf-run-id`,createdAt:`x-wf-created-at`};function sh(e){let t={eventType:e.eventType,specVersion:e.specVersion};return e.correlationId!==void 0&&(t.correlationId=e.correlationId),e.vercelId!==void 0&&(t.vercelId=e.vercelId),e.occurredAt!==void 0&&(t.occurredAt=e.occurredAt),e.remoteRefBehavior!==void 0&&(t.remoteRefBehavior=e.remoteRefBehavior),e.deploymentId!==void 0&&(t.deploymentId=e.deploymentId),e.workflowName!==void 0&&(t.workflowName=e.workflowName),e.stepName!==void 0&&(t.stepName=e.stepName),e.attempt!==void 0&&(t.attempt=e.attempt),e.resumeAt!==void 0&&(t.resumeAt=e.resumeAt),e.retryAfter!==void 0&&(t.retryAfter=e.retryAfter),e.hookToken!==void 0&&(t.hookToken=e.hookToken),e.hookIsWebhook!==void 0&&(t.hookIsWebhook=e.hookIsWebhook),e.hookIsSystem!==void 0&&(t.hookIsSystem=e.hookIsSystem),e.errorCode!==void 0&&(t.errorCode=e.errorCode),e.executionContext!==void 0&&(t.executionContext=e.executionContext),e.attributes!==void 0&&(t.attributes=e.attributes),e.changes!==void 0&&(t.changes=e.changes),e.writer!==void 0&&(t.writer=e.writer),e.allowReservedAttributes!==void 0&&(t.allowReservedAttributes=e.allowReservedAttributes),e.sinceCursor!==void 0&&(t.sinceCursor=e.sinceCursor),e.skipPreload!==void 0&&(t.skipPreload=e.skipPreload),t}function ch(e,t,n,r,i){let a=`v4 ${r} failed: HTTP ${e}`,o;try{let e=JSON.parse(n);typeof e.message==`string`&&(a=e.message),typeof e.code==`string`&&(o=e.code)}catch{n&&(a+=` ${n}`)}let s,c=uh(t,`retry-after`);if(c){let e=parseInt(c,10);Number.isNaN(e)||(s=e)}throw e===409?new T(a):e===410?new b(a):e===425?new v(a,{retryAfter:s}):e===429?new x(a,{retryAfter:s}):new p(a,{status:e,code:o,url:i,retryAfter:s})}async function lh(e,t){let{baseUrl:n,headers:r}=await zm(t),i=new Headers(r);i.set(`Content-Type`,`application/octet-stream`);let a=th(sh(e),e.payload??new Uint8Array),o=`${n}/v4/runs/${encodeURIComponent(e.runId)}/events/${encodeURIComponent(e.eventType)}`,s=await ih(o,{method:`POST`,headers:i,body:a},t);if(!s.ok){let e=await s.text();ch(s.status,ah(s.headers),e,`createEvent`,o)}let c=s.headers.get(oh.eventId),l=s.headers.get(oh.runId),u=s.headers.get(oh.createdAt);if(typeof c!=`string`||typeof l!=`string`||typeof u!=`string`)throw Error(`v4 createEvent: response missing required x-wf-* headers`);let d=new Uint8Array(await s.arrayBuffer());return{eventId:c,runId:l,createdAt:u,body:d.byteLength>0?Vp(d):{}}}function uh(e,t){let n=e[t];if(typeof n==`string`)return n;if(Array.isArray(n)&&n.length>0)return n[0]}async function dh(e,t,n){let{baseUrl:r,headers:i}=await zm(n),a=`${r}/v4/runs/${encodeURIComponent(e)}/events/${encodeURIComponent(t)}`,o=await ih(a,{method:`GET`,headers:i},n);if(!o.ok){let e=await o.text();ch(o.status,ah(o.headers),e,`getEvent`,a)}let s=o.headers.get(`content-type`);if(!s?.startsWith(`application/vnd.workflow.v4-frames`))throw Error(`v4 getEvent: expected ${eh}, got ${s??`(none)`}`);let c=o.body;for await(let e of nh(c))return{event:e.meta,body:e.body};throw Error(`v4 getEvent: empty frame stream for ${t}`)}async function fh(e,t,n,r){let i=await ih(e,{method:`GET`,headers:t},n);if(!i.ok){let t=await i.text();ch(i.status,ah(i.headers),t,r,e)}let a=i.headers.get(`content-type`);if(!a?.startsWith(`application/vnd.workflow.v4-frames`))throw Error(`v4 ${r}: expected ${eh}, got ${a??`(none)`}`);let o=i.body,s=[],c,l,u=!1;for await(let e of nh(o)){if(e.meta._end===1){typeof e.meta.next==`string`&&(c=e.meta.next),typeof e.meta.hasMore==`boolean`&&(l=e.meta.hasMore),u=!0;break}s.push({event:e.meta,body:e.body})}if(!u)throw Error(`v4 ${r}: frame stream ended without the end-of-stream sentinel (${s.length} events read) — truncated response?`);return{events:s,...c?{next:c}:{},...l===void 0?{}:{hasMore:l}}}function ph(e,t){t.cursor&&e.set(`cursor`,t.cursor),t.limit!==void 0&&e.set(`limit`,String(t.limit)),t.sortOrder&&e.set(`sortOrder`,t.sortOrder),t.remoteRefBehavior&&e.set(`remoteRefBehavior`,t.remoteRefBehavior)}function mh(e){let t=new URLSearchParams;ph(t,e);let n=t.toString();return n?`?${n}`:``}async function hh(e,t={},n){let{baseUrl:r,headers:i}=await zm(n);return fh(`${r}/v4/runs/${encodeURIComponent(e)}/events`+mh(t),i,n,`listEvents`)}async function gh(e,t={},n){let{baseUrl:r,headers:i}=await zm(n),a=new URLSearchParams;return a.set(`correlationId`,e),ph(a,t),fh(`${r}/v4/events?${a.toString()}`,i,n,`listEventsByCorrelationId`)}const _h=Te.omit({error:!0,errorCode:!0}).extend({error:Jt([ye,M()]).optional(),errorCode:ft().optional(),blobStorageBytes:Kt().optional(),streamStorageBytes:Kt().optional()}),vh=_h,yh=_h.omit({input:!0,output:!0}).extend({inputRef:M().optional(),outputRef:M().optional(),input:Jt([Fe(Uint8Array),M()]).optional(),output:Jt([Fe(Uint8Array),M()]).optional()});function bh(e,t){if(t===`none`){let{inputRef:t,outputRef:n,...r}=e;return{...Fm(r),input:void 0,output:void 0}}return Fm(e)}async function xh(e={},t){let{workflowName:n,status:r,pagination:i,resolveData:a=`all`}=e,o=new URLSearchParams;n&&o.set(`workflowName`,n),r&&o.set(`status`,r),i?.limit&&o.set(`limit`,i.limit.toString()),i?.cursor&&o.set(`cursor`,i.cursor),i?.sortOrder&&o.set(`sortOrder`,i.sortOrder);let s=a===`none`?`lazy`:`resolve`;o.set(`remoteRefBehavior`,s);let c=o.toString(),l=await Bm({endpoint:`/v2/runs${c?`?${c}`:``}`,options:{method:`GET`},config:t,schema:It(s===`lazy`?yh:vh)});return{...l,data:l.data.map(e=>bh(e,a))}}async function Sh(e,t){return Fm(await Bm({endpoint:`/v1/runs/create`,options:{method:`POST`},data:e,config:t,schema:vh}))}async function Ch(e,t,n){let r=t?.resolveData??`all`,i=r===`none`?`lazy`:`resolve`,a=new URLSearchParams;a.set(`remoteRefBehavior`,i);let o=a.toString(),s=`/v2/runs/${encodeURIComponent(e)}${o?`?${o}`:``}`;try{return bh(await Bm({endpoint:s,options:{method:`GET`},config:n,schema:i===`lazy`?yh:vh}),r)}catch(t){throw t instanceof p&&t.status===404?new d(e):t}}async function wh(e,t,n){let r=t?.resolveData??`all`,i=r===`none`?`lazy`:`resolve`,a=new URLSearchParams;a.set(`remoteRefBehavior`,i);let o=a.toString(),s=`/v1/runs/${encodeURIComponent(e)}/cancel${o?`?${o}`:``}`;try{return bh(await Bm({endpoint:s,options:{method:`PUT`},config:n,schema:i===`lazy`?yh:vh}),r)}catch(t){throw t instanceof p&&t.status===404?new d(e):t}}const Th=nn({attributes:Pt(ft(),ft())});async function Eh(e,t,n,r){try{return{attributes:(await Bm({endpoint:`/v2/runs/${encodeURIComponent(e)}/attributes`,options:{method:`POST`},data:n?.allowReservedAttributes?{changes:t,allowReservedAttributes:!0}:{changes:t},config:r,schema:Th})).attributes}}catch(t){throw t instanceof p&&t.status===404?new d(e):t}}const Dh=Ae.omit({error:!0}).extend({error:Jt([ye,M()]).optional(),errorRef:M().optional()}),Oh=Dh.omit({input:!0,output:!0}).extend({inputRef:M().optional(),outputRef:M().optional(),input:Fe(Uint8Array).optional(),output:Fe(Uint8Array).optional()});function kh(e){let{error:t,errorRef:n,...r}=e,i={...r},a=t??n;return a!=null&&(i.error=a),i}function Ah(e,t){if(t===`none`){let{inputRef:t,outputRef:n,...r}=e;return{...kh(r),input:void 0,output:void 0}}return kh(e)}async function jh(e,t){let{runId:n,pagination:r,resolveData:i=`all`}=e,a=new URLSearchParams;r?.cursor&&a.set(`cursor`,r.cursor),r?.limit&&a.set(`limit`,r.limit.toString()),r?.sortOrder&&a.set(`sortOrder`,r.sortOrder);let o=i===`none`?`lazy`:`resolve`;a.set(`remoteRefBehavior`,o);let s=a.toString(),c=await Bm({endpoint:`/v2/runs/${encodeURIComponent(n)}/steps${s?`?${s}`:``}`,options:{method:`GET`},config:t,schema:It(o===`lazy`?Oh:Dh)});return{...c,data:c.data.map(e=>Ah(e,i))}}async function Mh(e,t,n,r){let i=n?.resolveData??`all`,a=i===`none`?`lazy`:`resolve`,o=new URLSearchParams;o.set(`remoteRefBehavior`,a);let s=o.toString();return Ah(await Bm({endpoint:`/v2/runs/${encodeURIComponent(e)}/steps/${encodeURIComponent(t)}${s?`?${s}`:``}`,options:{method:`GET`},config:r,schema:a===`lazy`?Oh:Dh}),i)}const Nh={run_created:`input`,run_started:`input`,run_completed:`output`,run_failed:`error`,step_created:`input`,step_started:`input`,step_completed:`result`,step_failed:`error`,step_retrying:`error`,hook_created:`metadata`,hook_received:`payload`};function Ph(e){return Nh[e]}const Fh=new Set([`run_created`,`run_started`,`step_started`]),Ih=new Set([`hook_disposed`,`hook_received`]);function Lh(e){let t=e.eventData??{},n=Ph(e.eventType),r={};if(typeof t.deploymentId==`string`&&(r.deploymentId=t.deploymentId),typeof t.workflowName==`string`&&(r.workflowName=t.workflowName),typeof t.stepName==`string`&&(r.stepName=t.stepName),typeof t.attempt==`number`&&(r.attempt=t.attempt),t.resumeAt instanceof Date)r.resumeAt=t.resumeAt;else if(typeof t.resumeAt==`string`){let e=new Date(t.resumeAt);Number.isNaN(e.getTime())||(r.resumeAt=e)}if(t.retryAfter instanceof Date)r.retryAfter=t.retryAfter;else if(typeof t.retryAfter==`string`){let e=new Date(t.retryAfter);Number.isNaN(e.getTime())||(r.retryAfter=e)}typeof t.token==`string`&&(r.hookToken=t.token),typeof t.isWebhook==`boolean`&&(r.hookIsWebhook=t.isWebhook),typeof t.isSystem==`boolean`&&(r.hookIsSystem=t.isSystem),typeof t.errorCode==`string`&&(r.errorCode=t.errorCode),t.executionContext!==void 0&&t.executionContext!==null&&typeof t.executionContext==`object`&&(r.executionContext=t.executionContext),t.attributes!==void 0&&t.attributes!==null&&typeof t.attributes==`object`&&(r.attributes=t.attributes),Array.isArray(t.changes)&&(r.changes=t.changes),t.writer!==void 0&&t.writer!==null&&typeof t.writer==`object`&&(r.writer=t.writer),typeof t.allowReservedAttributes==`boolean`&&(r.allowReservedAttributes=t.allowReservedAttributes);let i;if(n&&n in t){let r=t[n];if(r!==void 0){if(!(r instanceof Uint8Array))throw TypeError(`world-vercel v4: eventData.${n} for ${e.eventType} must be a Uint8Array (the runtime's dehydrated wire form); got ${typeof r==`object`?r===null?`null`:r.constructor?.name??typeof r:typeof r}.`);i=r}}return{payload:i,meta:r}}function Rh(e){let t=We.safeParse(e);return t.success?t.data:(Xe.safeParse(e.eventType).success&&console.debug(`[workflow:world-vercel] v4 event ${e.eventId} failed EventSchema parse for known eventType '${e.eventType}'; passing through unparsed: ${t.error.message}`),e)}function zh(e,t,n){let r=e.eventData??{};if(t.byteLength>0){let n=Ph(e.eventType);n&&(r[n]=t)}let i=Rh({eventId:e.eventId,runId:e.runId,eventType:e.eventType,createdAt:e.createdAt instanceof Date?e.createdAt:new Date(e.createdAt),...e.occurredAt===void 0?{}:{occurredAt:e.occurredAt instanceof Date?e.occurredAt:new Date(e.occurredAt)},...e.correlationId?{correlationId:e.correlationId}:{},eventData:r,...e.specVersion===void 0?{}:{specVersion:e.specVersion}});return n===`none`?ue(i,`none`):i}async function Bh(e,t,n,r){let i=n?.resolveData??`all`,{event:a,body:o}=await dh(e,t,r);return zh(a,o,i)}async function Vh(e,t){let{pagination:n,resolveData:r=`all`}=e,i={cursor:n?.cursor??void 0,limit:n?.limit,sortOrder:n?.sortOrder,remoteRefBehavior:r===`none`?`lazy`:`resolve`},a=await(`correlationId`in e?gh(e.correlationId,i,t):hh(e.runId,i,t));return{data:a.events.map(e=>zh(e.event,e.body,r)),cursor:a.next??null,hasMore:typeof a.hasMore==`boolean`?a.hasMore:!!a.next}}async function Hh(e,t,n,r){try{return await Uh(e,t,n,r)}catch(e){throw Ih.has(t.eventType)&&p.is(e)&&e.status===404&&t.correlationId?new C(t.correlationId):e}}async function Uh(e,t,n,r){if(n?.v1Compat){if(t.eventType===`run_cancelled`&&e)return{run:await wh(e,n,r)};if(t.eventType===`run_created`)return{run:await Sh(t.eventData,r)};if(e===null)throw new p(`world-vercel: v1Compat=true requires a runId for ${t.eventType}`,{status:400});return{event:await Bm({endpoint:`/v1/runs/${encodeURIComponent(e)}/events`,options:{method:`POST`},data:t,config:r,schema:We})}}if(e===null)throw new p(`world-vercel v4: createWorkflowRunEvent requires a client-generated runId for run_created (the runId is part of the payload storage ref key). Generate a wrun_ ULID before calling.`,{status:400});if(t.eventType===`run_created`){let t=Ve(e,`wrun_`);if(t)throw new p(t,{status:400})}let i=Fh.has(t.eventType)?`resolve`:`lazy`,{payload:a,meta:o}=Lh(t),s=await lh({runId:e,eventType:t.eventType,specVersion:t.specVersion??2,...t.correlationId?{correlationId:t.correlationId}:{},...n?.requestId?{vercelId:n.requestId}:{},occurredAt:n?.occurredAt??new Date,...n?.sinceCursor?{sinceCursor:n.sinceCursor}:{},...n?.skipPreload?{skipPreload:!0}:{},remoteRefBehavior:i,payload:a,...o},r),c=n?.resolveData??`all`,l=s.body;return{event:l.event?ue(Rh(l.event),c):void 0,run:l.run?Fm(l.run):void 0,step:l.step?kh(l.step):void 0,hook:l.hook,wait:l.wait,events:l.events?l.events.map(Rh):void 0,cursor:l.cursor??void 0,hasMore:l.hasMore,...l.stepCreated?{stepCreated:!0}:{}}}function Wh(e,t){if(t===`none`){let{metadataRef:t,...n}=e;return n}return e}const Gh=V.omit({metadata:!0}).extend({metadataRef:$e.any().optional()});async function Kh(e,t){let{runId:n,pagination:r,resolveData:i=`all`}=e,a=new URLSearchParams;r?.limit&&a.set(`limit`,r.limit.toString()),r?.cursor&&a.set(`cursor`,r.cursor),r?.sortOrder&&a.set(`sortOrder`,r.sortOrder);let o=i===`none`?`lazy`:`resolve`;a.set(`remoteRefBehavior`,o),n&&a.set(`runId`,n);let s=a.toString(),c=await Bm({endpoint:`/v2/hooks${s?`?${s}`:``}`,options:{method:`GET`},config:t,schema:It(o===`lazy`?Gh:V)});return{...c,data:c.data.map(e=>Wh(e,i))}}async function qh(e,t,n){let r=t?.resolveData||`all`;return Wh(await Bm({endpoint:`/v2/hooks/${encodeURIComponent(e)}`,options:{method:`GET`},config:n,schema:V}),r)}async function Jh(e,t){try{return await Bm({endpoint:`/v2/hooks/by-token?token=${encodeURIComponent(e)}`,options:{method:`GET`},config:t,schema:V})}catch(t){throw p.is(t)&&t.status===404?new C(e):t}}function Yh(e){let t={runs:{get:((t,n)=>Ch(t,n,e)),list:(t=>xh(t,e)),experimentalSetAttributes:(t,n,r)=>Eh(t,n,r,e)},steps:{get:((t,n,r)=>Mh(t,n,r,e)),list:(t=>jh(t,e))},events:{create:(t,n,r)=>Hh(t,n,r,e),get:(t,n,r)=>Bh(t,n,r,e),list:t=>Vh(t,e),listByCorrelationId:t=>Vh(t,e)},hooks:{get:(t,n)=>qh(t,n,e),getByToken:t=>Jh(t,e),list:t=>Kh(t,e)}};return{runs:Zc(`world.runs`,t.runs),steps:Zc(`world.steps`,t.steps),events:Zc(`world.events`,t.events),hooks:Zc(`world.hooks`,t.hooks)}}const Xh=1e3;function Zh(e,t,n){return new URL(`${n.baseUrl}/v2/runs/${encodeURIComponent(t)}/stream/${encodeURIComponent(e)}`)}function Qh(e,t,n){return new URL(`${n.baseUrl}/v3/runs/${encodeURIComponent(t)}/stream/${encodeURIComponent(e)}`)}function $h(e,t,n,r){let i=[`PUT ${t.origin}${t.pathname}`];for(let e of[`x-vercel-id`,`x-vercel-error`]){let t=n.headers.get(e);t&&i.push(`${e}=${t}`)}return Error(`Stream ${e} failed: HTTP ${n.status} (${i.join(`; `)}): ${r}`)}function eg(e){let t=new TextEncoder,n=[],r=0;for(let i of e){let e=typeof i==`string`?t.encode(i):i;n.push(e),r+=4+e.length}let i=new Uint8Array(r),a=new DataView(i.buffer),o=0;for(let e of n)a.setUint32(o,e.length,!1),o+=4,i.set(e,o),o+=e.length;return i}const tg=nn({tailIndex:Kt(),done:cn()}),ng=nn({data:xt(nn({index:Kt(),data:Fe(Uint8Array)})),cursor:ft().nullable(),hasMore:cn(),done:cn()});function rg(e){return{streams:{async write(t,n,r){let i=await t,a=await zm(e),o=Zh(n,i,a),s=await fetch(o,{method:`PUT`,body:r,headers:a.headers}),c=await s.text();if(!s.ok)throw $h(`write`,o,s,c)},async writeMulti(t,n,r){if(r.length===0)return;let i=await t,a=await zm(e);a.headers.set(`X-Stream-Multi`,`true`);for(let e=0;e<r.length;e+=Xh){let t=eg(r.slice(e,e+Xh)),o=Zh(n,i,a),s=await fetch(o,{method:`PUT`,body:t,headers:a.headers}),c=await s.text();if(!s.ok)throw $h(`write`,o,s,c)}},async close(t,n){let r=await t,i=await zm(e);i.headers.set(`X-Stream-Done`,`true`);let a=Zh(n,r,i),o=await fetch(a,{method:`PUT`,headers:i.headers}),s=await o.text();if(!o.ok)throw $h(`close`,a,o,s)},async get(t,n,r){let i=await zm(e),a=Qh(n,t,i);typeof r==`number`&&a.searchParams.set(`startIndex`,String(r));let o=await fetch(a,{headers:i.headers});if(!o.ok)throw Error(`Failed to fetch stream: ${o.status}`);if(!o.body)throw Error(`No response body for stream`);return o.body},async getChunks(t,n,r){let i=new URLSearchParams;r?.limit!=null&&i.set(`limit`,String(r.limit)),r?.cursor&&i.set(`cursor`,r.cursor);let a=i.toString();return Bm({endpoint:`/v2/runs/${encodeURIComponent(t)}/streams/${encodeURIComponent(n)}/chunks${a?`?${a}`:``}`,config:e,schema:ng})},async getInfo(t,n){return Bm({endpoint:`/v2/runs/${encodeURIComponent(t)}/streams/${encodeURIComponent(n)}/info`,config:e,schema:tg})},async list(t){let n=await zm(e),r=new URL(`${n.baseUrl}/v2/runs/${encodeURIComponent(t)}/streams`),i=await fetch(r,{headers:n.headers});if(!i.ok)throw Error(`Failed to list streams: ${i.status}`);return await i.json()}}}}function ig(e){let t=e?.projectConfig?.projectId||process.env.VERCEL_PROJECT_ID;return{specVersion:5,processExitTriggersQueueRedelivery:!0,...Zm(e),...Yh(e),...Zc(`world.streams`,rg(e)),getEncryptionKeyForRun:xc(t,e?.projectConfig?.teamId,e?.token,e?.dispatcher),resolveLatestDeploymentId:$m(e)}}function ag(){try{return Bn(Jn(process.cwd()+`/package.json`).href)}catch{return Bn(import.meta.url)}}const og=Symbol.for(`@workflow/world//cache`),sg=Symbol.for(`@workflow/world//stubbedCache`),cg=Symbol.for(`@workflow/world//cachePromise`),lg=Symbol.for(`@workflow/world//stubbedCachePromise`),ug=globalThis;function dg(e){if(e.startsWith(`file://`))return e;if(e.startsWith(`/`))return Jn(e).href;if(e.startsWith(`./`)||e.startsWith(`../`))return Jn(process.cwd()+`/`+e).href;try{return Jn(ag().resolve(e)).href}catch{return e}}const fg=async()=>{let e=s();if(l(e)){let e=[`WORKFLOW_VERCEL_PROJECT`,`WORKFLOW_VERCEL_TEAM`,`WORKFLOW_VERCEL_AUTH_TOKEN`,`WORKFLOW_VERCEL_ENV`].filter(e=>process.env[e]);return e.length>0&&process.env.VERCEL===`1`&&console.warn(`[workflow] Warning: ${e.join(`, `)} env var(s) are set but have no effect at runtime. These are only used by the Workflow CLI. Remove them from your Vercel project environment variables.`),ig()}if(e===`local`)return oc({dataDir:process.env.WORKFLOW_LOCAL_DATA_DIR});let t;try{t=ag()(e)}catch{t=await import(dg(e))}if(typeof t==`function`)return t();if(typeof t.default==`function`)return t.default();if(typeof t.createWorld==`function`)return t.createWorld();throw Error(`Invalid target world module: ${e}, must export a default function or createWorld function that returns a World instance.`)},pg=async()=>{if(ug[sg])return ug[sg];ug[lg]||(ug[lg]=fg().catch(e=>{throw ug[lg]=void 0,e}));let e=await ug[lg];return ug[sg]=e,{createQueueHandler:e.createQueueHandler,specVersion:e.specVersion}},mg=async()=>ug[og]?ug[og]:(ug[cg]||(ug[cg]=fg().catch(e=>{throw ug[cg]=void 0,e})),ug[og]=await ug[cg],ug[og]),hg=e=>{ug[og]=e,ug[sg]=e,ug[cg]=void 0,ug[lg]=void 0},gg=Symbol.for(`@workflow/world//getWorldFn`);globalThis[gg]??=mg;var _g=class{limitMs;elapsedMs=0;intervalStart;constructor(e=kr()){this.limitMs=e,this.intervalStart=Date.now()}get configuredLimitMs(){return this.limitMs}elapsed(){let e=this.intervalStart===null?0:Date.now()-this.intervalStart;return this.elapsedMs+e}pause(){this.intervalStart!==null&&(this.elapsedMs+=Date.now()-this.intervalStart,this.intervalStart=null)}resume(){this.intervalStart=Date.now()}isExhausted(){return this.elapsed()>=this.limitMs}};async function vg(e){let{runId:t,workflowName:n,requestId:r,attempt:i,limitMs:a}=e,o=W.forRun(t,n),s=await mg();if(s.processExitTriggersQueueRedelivery!==!0){o.warn(`Workflow replay exceeded timeout; current World does not support process exit for redelivery — failing the run and returning`,{timeoutMs:a,attempt:i});try{let e=Vt(s,t),n=new y(`Workflow replay exceeded maximum duration (${a/1e3}s)`);await s.events.create(t,{eventType:`run_failed`,specVersion:5,eventData:{error:await Et(n,t,await e()),errorCode:f.REPLAY_TIMEOUT}},{requestId:r})}catch(e){o.warn(`Unable to mark run as failed`,{attempt:i,errorName:e instanceof Error?e.name:`UnknownError`,errorMessage:e instanceof Error?e.message:String(e)})}return}i<=3&&(o.warn(`Workflow replay exceeded timeout but will be re-attempted (attempt < maxRetries)`,{timeoutMs:a,attempt:i,maxRetries:3}),process.exit(1));let c=Cr(void 0,f.REPLAY_TIMEOUT);o.error(`Workflow replay exceeded timeout and max retries exceeded. Failing the run`,{timeoutMs:a,attempt:i,maxRetries:3,errorCode:c.errorCode,errorAttribution:c.attribution});try{let e=Vt(s,t),n=new y(`Workflow replay exceeded maximum duration (${a/1e3}s) after ${i} attempts`);await s.events.create(t,{eventType:`run_failed`,specVersion:5,eventData:{error:await Et(n,t,await e()),errorCode:f.REPLAY_TIMEOUT}},{requestId:r})}catch(e){o.warn(`Unable to mark run as failed. The queue will continue to retry`,{attempt:i,errorName:e instanceof Error?e.name:`UnknownError`,errorMessage:e instanceof Error?e.message:String(e),errorStack:e instanceof Error?e.stack:void 0})}process.exit(1)}function yg(e){return Gn.isNativeError(e)?e.name:`Error`}function bg(e){return Gn.isNativeError(e)?e.stack??``:``}function xg(e){return typeof e==`object`&&!!e&&`name`in e&&e.name===`AbortError`&&`message`in e&&typeof e.message==`string`&&(!(`stack`in e)||e.stack===void 0||typeof e.stack==`string`)}function Sg(e){if(!xg(e)||y.is(e))return e;let t=new y(`Aborted: ${e.message}`);return e.stack&&(t.stack=e.stack),t}function Cg(e){return typeof e==`object`&&!!e&&`then`in e&&typeof e.then==`function`}function wg(e){if(Gn.isNativeError(e))return{name:e.name,message:e.message,stack:e.stack??``};if(typeof e==`string`)return{name:`Error`,message:e,stack:``};try{return{name:`Error`,message:JSON.stringify(e),stack:``}}catch{return{name:`Error`,message:String(e),stack:``}}}async function Tg(e){if(Cg(e))try{let t=await Tg(await e);return{...t,message:`Promise rejection: ${t.message}`}}catch(e){let t=await Tg(e);return{...t,message:`Promise rejection: ${t.message}`}}return wg(e)}let Eg,Dg,Og;async function kg(){if(Dg!==void 0)return Dg;if(Og)return Og;if(!Eg)try{let e=[`@workflow/utils`,`get-port`].join(`/`);Eg=Bn(Jn(process.cwd()+`/package.json`).href)(e).getPort}catch{Eg=async()=>void 0}return Og=(Eg??(async()=>void 0))().then(e=>(typeof e==`number`&&(Dg=e),e)).finally(()=>{Og=void 0}),Og}function Ag(e,t){if(t&&!(!e.events||e.cursor===void 0))return{events:e.events,cursor:e.cursor,hasMore:e.hasMore??!1}}async function jg(e){let{world:t,workflowRunId:n,workflowName:r,workflowStartedAt:i,stepId:o,stepName:s}=e,c=process.env.VERCEL_URL!==void 0,l=(e.runSpecVersion??0)>=5;return tt(`step.execute ${u(s)}`,{},async u=>{u?.setAttributes({...Be(s),...ge(r),...Ze(n),...mt(o)});let d=Vt(t,n),f=Tn(s);if(!f||typeof f!=`function`){let i=`Step "${s}" is not registered in the current deployment. This usually indicates a build or bundling issue that caused the step to not be included in the deployment.`;if(W.error(`Step function not registered, failing step`,{workflowRunId:n,stepName:s,stepId:o}),e.lazyStepInput!==void 0)try{e.runReadyBarrier&&await e.runReadyBarrier.catch(()=>{}),await t.events.create(n,{eventType:`step_started`,specVersion:5,correlationId:o,eventData:{stepName:s,workflowName:r,input:e.lazyStepInput}})}catch(e){if(T.is(e))return{type:`skipped`};if(b.is(e))return{type:`gone`};throw e}try{await t.events.create(n,{eventType:`step_failed`,specVersion:5,correlationId:o,eventData:{stepName:s,error:await pn(new y(i),n,await d(),[],globalThis,l)}})}catch(e){if(T.is(e))return{type:`skipped`};throw e}return u?.setAttributes({...Bt(`failed`),...xn(!0)}),{type:`failed`}}let p=f.maxRetries??3;u?.setAttributes({...yn(p)});let m=e=>{if(x.is(e)){let t=Math.max(1,typeof e.retryAfter==`number`?e.retryAfter:1);return W.info(`Throttled on step_started, deferring`,{retryAfterSeconds:t}),{type:`throttled`,timeoutSeconds:t}}if(b.is(e))return W.info(`Workflow run "${n}" has already completed, skipping step "${o}": ${e.message}`),{type:`gone`};if(T.is(e))return W.debug(`Step in terminal state, skipping`,{stepName:s,stepId:o,workflowRunId:n,error:e instanceof Error?e.message:String(e)}),u?.setAttributes({...je(!0),...z(`completed`)}),{type:`skipped`};if(v.is(e)){let t=Math.max(1,e.retryAfter??1);return W.debug(`Step retryAfter timestamp not yet reached`,{stepName:s,stepId:o,timeoutSeconds:t}),{type:`retry`,timeoutSeconds:t}}},g=e.lazyStepInput!==void 0&&(Mr()||e.forceOptimisticStart===!0&&!Nr()),_,S,C=async()=>{if(!S)return;let e=await S;if(e.ok)return;let t=m(e.err);if(!t)throw e.err;return t};if(g){S=(e.runReadyBarrier??Promise.resolve()).then(()=>t.events.create(n,{eventType:`step_started`,specVersion:5,correlationId:o,eventData:{stepName:s,workflowName:r,input:e.lazyStepInput}})).then(()=>({ok:!0}),e=>({ok:!1,err:e}));let i=new Date;_={runId:n,stepId:o,stepName:s,status:`running`,input:e.lazyStepInput,attempt:1,startedAt:i,createdAt:i,updatedAt:i}}else try{let i=await t.events.create(n,{eventType:`step_started`,specVersion:5,correlationId:o,eventData:e.lazyStepInput===void 0?{stepName:s}:{stepName:s,workflowName:r,input:e.lazyStepInput}});if(!i.step)throw new k(`step_started event for "${o}" did not return step entity`);_=i.step}catch(e){let t=m(e);if(t)return t;throw e}W.debug(`Step execution details`,{stepName:s,stepId:_.stepId,status:_.status,attempt:_.attempt}),u?.setAttributes({...Bt(_.status)});let w;if(_.attempt>p+1&&_.error){let e=_.attempt-1,r=`Step "${s}" exceeded max retries (${e} ${a(`retry`,`retries`,e)})`;I.error(`Step exceeded max retries`,{workflowRunId:n,stepName:s,retryCount:e});let i=new y(r);if(_.error!=null)try{i.cause=await ne(_.error,n,await d())}catch{}try{await t.events.create(n,{eventType:`step_failed`,specVersion:5,correlationId:o,eventData:{stepName:s,error:await pn(i,n,await d(),[],globalThis,l)}})}catch(e){if(T.is(e))return W.info(`Tried failing step, but step has already finished.`,{workflowRunId:n,stepId:o,stepName:s,message:e.message}),{type:`skipped`};throw e}return u?.setAttributes({...Bt(`failed`),...gn(!0)}),{type:`failed`}}let E=[];try{let a=_.attempt;if(!_.startedAt)throw new k(`Step "${o}" has no "startedAt" timestamp`);let p=_.startedAt,m=[],h=e.encryptionKey??await d(),v=await tt(`step.hydrate`,{},async t=>{let r=Date.now(),i=await ie(_.input,n,h,m,globalThis,{},e.workflowDeploymentId),a=Date.now()-r;return t?.setAttributes({...jt(i.args.length),...Tt(a)}),i}),y=v.args,b=v.thisVal??null,x=c?void 0:await kg(),S=Date.now();w=await tt(`step.execute`,{},async()=>await Le.run({stepMetadata:{stepName:s,stepId:o,stepStartedAt:new Date(+p),attempt:a},workflowMetadata:{workflowName:r,workflowRunId:n,workflowStartedAt:new Date(+i),url:c?`https://${process.env.VERCEL_URL}`:`http://localhost:${x??3e3}`,features:{encryption:!!h}},workflowDeploymentId:e.workflowDeploymentId,ops:m,preCompletionOps:E,closureVars:v.closureVars,encryptionKey:h},()=>f.apply(b,y)));let D=Date.now()-S;u?.setAttributes({...Qt(D)}),w=await tt(`step.dehydrate`,{},async e=>{let t=Date.now(),r=await bn(w,n,h,m,globalThis,!1,!1,l),i=Date.now()-t;return e?.setAttributes({...Wt(i),...R(typeof r)}),r});let O=!0;if(m.length>0){let e=Promise.all(m);Gt(e,e=>{W.warn(`Background flush of step stream ops failed`,{workflowRunId:n,stepId:o,error:e instanceof Error?e.message:String(e)})}),O=await Promise.race([e.then(()=>!0,e=>{if(e?.name===`AbortError`||e?.name===`ResponseAborted`)return!0;throw e}),new Promise(e=>setTimeout(()=>e(!1),500))])}if(g){let e=await C();if(e)return e}E.length>0&&await Promise.all(E).catch(()=>{});let A=!1,j=await t.events.create(n,{eventType:`step_completed`,specVersion:5,correlationId:o,eventData:{stepName:s,workflowName:r,result:w}},e.inlineDeltaSinceCursor===void 0?void 0:{sinceCursor:e.inlineDeltaSinceCursor}).catch(e=>{if(T.is(e)){W.info(`Tried completing step, but step has already finished.`,{workflowRunId:n,stepId:o,stepName:s,message:e.message}),A=!0;return}throw e});if(A)return{type:`skipped`};let M=j?Ag(j,e.inlineDeltaSinceCursor!==void 0):void 0;return u?.setAttributes({...Bt(`completed`),...R(typeof w)}),m.length>0&&I.debug(`Step has pending ops`,{workflowRunId:n,stepName:s,opsCount:m.length}),{type:`completed`,hasPendingOps:!O,inlineDelta:M}}catch(e){if(g){let e=await C();if(e)return e}E.length>0&&await Promise.all(E).catch(()=>{});let r=Sg(e),i=await Tg(r),c=i.stack||bg(r)||``;r instanceof Error&&u?.recordException?.(r);let f=y.is(r);if(u?.setAttributes({...mn(yg(r)),...lt(i.message),...ln(yg(r)),...j(f?`fatal`:h.is(r)?`retryable`:`transient`),...St(!f)}),b.is(e))return I.info(`Workflow run already completed, skipping step`,{workflowRunId:n,stepId:o,message:e.message}),{type:`gone`};if(f){I.error(`Encountered FatalError while executing step, bubbling up to parent workflow`,{workflowRunId:n,stepName:s,errorStack:c}),Gn.isNativeError(r)&&c&&(r.stack=c);try{await t.events.create(n,{eventType:`step_failed`,specVersion:5,correlationId:o,eventData:{stepName:s,error:await pn(r,n,await d(),[],globalThis,l)}})}catch(e){if(T.is(e))return W.info(`Tried failing step, but step has already finished.`,{workflowRunId:n,stepId:o,stepName:s,message:e.message}),{type:`skipped`};throw e}return u?.setAttributes({...Bt(`failed`),...xn(!0)}),{type:`failed`}}let m=_.attempt;if(u?.setAttributes({...Ot(m),...yn(p)}),m>=p+1){let r=_.attempt-1;I.error(`Max retries reached, bubbling error to parent workflow`,{workflowRunId:n,stepName:s,attempt:_.attempt,retryCount:r,errorStack:c});let f=new y(`Step "${s}" failed after ${p} ${a(`retry`,`retries`,p)}: ${i.message}`);f.cause=e,c&&(f.stack=c);try{await t.events.create(n,{eventType:`step_failed`,specVersion:5,correlationId:o,eventData:{stepName:s,error:await pn(f,n,await d(),[],globalThis,l)}})}catch(e){if(T.is(e))return W.info(`Tried failing step, but step has already finished.`,{workflowRunId:n,stepId:o,stepName:s,message:e.message}),{type:`skipped`};throw e}return u?.setAttributes({...Bt(`failed`),...gn(!0)}),{type:`failed`}}h.is(e)?I.info(`Encountered RetryableError, step will be retried`,{workflowRunId:n,stepName:s,attempt:m,message:e.message}):I.info(`Encountered Error, step will be retried`,{workflowRunId:n,stepName:s,attempt:m,errorStack:c}),Gn.isNativeError(e)&&c&&(e.stack=c);try{await t.events.create(n,{eventType:`step_retrying`,specVersion:5,correlationId:o,eventData:{stepName:s,error:await pn(e,n,await d(),[],globalThis,l),...h.is(e)&&{retryAfter:e.retryAfter}}})}catch(e){if(T.is(e))return W.info(`Tried retrying step, but step has already finished.`,{workflowRunId:n,stepId:o,stepName:s,message:e.message}),{type:`skipped`};throw e}let v=Math.max(1,h.is(e)?Math.ceil((+e.retryAfter.getTime()-Date.now())/1e3):1);return u?.setAttributes({...He(v),...oe(!0)}),{type:`retry`,timeoutSeconds:v}}})}async function Mg({world:e,runId:t,hookEvent:n,queueItem:r,requestId:i}){try{return(await e.events.create(t,n,{requestId:i})).event?.eventType===`hook_conflict`?{hasHookConflict:!0,hasAwaitedHookCreation:!1}:{hasHookConflict:!1,hasAwaitedHookCreation:r.hasConflictAwaiter===!0}}catch(e){if(T.is(e))return W.info(`Hook already exists, continuing`,{workflowRunId:t,message:e.message}),{hasHookConflict:!1,hasAwaitedHookCreation:r.hasConflictAwaiter===!0};if(b.is(e))return W.info(`Workflow run already completed, skipping hook`,{workflowRunId:t,message:e.message}),{hasHookConflict:!1,hasAwaitedHookCreation:!1};throw e}}async function Ng({suspension:e,world:t,run:n,span:r,requestId:i,runReadyBarrier:a}){let o=n.runId,s=async()=>{if(a)try{await a}catch{}},c=e.steps.filter(e=>e.type===`step`),l=e.steps.filter(e=>e.type===`hook`),u=e.steps.filter(e=>e.type===`wait`),d=e.steps.filter(e=>e.type===`attribute`),f=l.filter(e=>!e.hasCreatedEvent),p=l.filter(e=>e.disposed),m=await t.getEncryptionKeyForRun?.(n),h=m?await vn(m):void 0,g=(n.specVersion??0)>=5,_=await Promise.all(f.map(async t=>{let n=t.metadata===void 0?void 0:await st(t.metadata,o,h,e.globalThis,!1,g);return{queueItem:t,hookEvent:{eventType:`hook_created`,specVersion:5,correlationId:t.correlationId,eventData:{token:t.token,metadata:n,isWebhook:t.isWebhook??!1,...t.isSystem&&{isSystem:!0}}}}})),v=!1,x=!1;if(_.length>0){await s();let e=await Promise.all(_.map(({hookEvent:e,queueItem:n})=>Mg({world:t,runId:o,hookEvent:e,queueItem:n,requestId:i})));v=e.some(e=>e.hasHookConflict),x=e.some(e=>e.hasAwaitedHookCreation)}p.length>0&&(await s(),await Promise.all(p.map(async e=>{let n={eventType:`hook_disposed`,specVersion:5,correlationId:e.correlationId,eventData:{token:e.token}};try{await t.events.create(o,n,{requestId:i})}catch(t){if(T.is(t))W.info(`Hook already disposed, skipping duplicate disposal`,{workflowRunId:o,correlationId:e.correlationId,message:t.message});else if(b.is(t))W.info(`Workflow run already completed, skipping hook disposal`,{workflowRunId:o,correlationId:e.correlationId,message:t.message});else if(C.is(t))W.info(`Hook not found for disposal, continuing`,{workflowRunId:o,correlationId:e.correlationId,message:t.message});else throw t}})));let S=l.filter(e=>e.abortRequested&&!e.disposed);S.length>0&&(await s(),await Promise.all(S.map(async n=>{try{let r=await st({aborted:!0,reason:n.abortReason},o,h,e.globalThis,!1,g);await t.events.create(o,{eventType:`hook_received`,specVersion:5,correlationId:n.correlationId,eventData:{token:n.token,payload:r}});try{let e=me(n.token);await t.streams.write(o,e,r),await t.streams.close(o,e)}catch{W.debug(`Failed to write abort stream packet, hook event will provide fallback`,{workflowRunId:o,correlationId:n.correlationId})}}catch(e){if(T.is(e)||b.is(e))W.info(`Workflow run already completed, skipping abort`,{workflowRunId:o,correlationId:n.correlationId,message:e.message});else throw e}})));let w=new Set(c.filter(e=>!e.hasCreatedEvent).map(e=>e.correlationId)),E=new Set,D=new Set(x===!1?c.filter(e=>w.has(e.correlationId)).slice(0,jr()).map(e=>e.correlationId):[]),O=new Map,k=[];for(let r of c)w.has(r.correlationId)&&k.push((async()=>{let a=await st({args:r.args,closureVars:r.closureVars,thisVal:r.thisVal},o,h,e.globalThis,!1,g);if(D.has(r.correlationId)){O.set(r.correlationId,{correlationId:r.correlationId,stepName:r.stepName,dehydratedInput:a});return}let c={eventType:`step_created`,specVersion:5,correlationId:r.correlationId,eventData:{stepName:r.stepName,workflowName:n.workflowName,input:a}};try{await s(),await t.events.create(o,c,{requestId:i}),E.add(r.correlationId)}catch(e){if(T.is(e))W.info(`Step already exists, continuing`,{workflowRunId:o,correlationId:r.correlationId,message:e.message});else throw e}})());for(let e of u)e.hasCreatedEvent||k.push((async()=>{let n={eventType:`wait_created`,specVersion:5,correlationId:e.correlationId,eventData:{resumeAt:e.resumeAt}};try{await s(),await t.events.create(o,n,{requestId:i})}catch(t){if(T.is(t))W.info(`Wait already exists, continuing`,{workflowRunId:o,correlationId:e.correlationId,message:t.message});else throw t}})());for(let e of d)k.push((async()=>{try{await s(),await t.events.create(o,{eventType:`attr_set`,specVersion:5,correlationId:e.correlationId,eventData:{changes:e.changes,writer:{type:`workflow`},...e.allowReservedAttributes?{allowReservedAttributes:!0}:{}}},{requestId:i})}catch(t){if(T.is(t))W.info(`Workflow attribute event already exists, continuing`,{workflowRunId:o,correlationId:e.correlationId,message:t.message});else if(Pg(t)){let e=new y(`experimental_setAttributes failed World validation: ${t instanceof Error?t.message:String(t)}`);throw e.cause=t,e}else throw t}})());await Promise.all(k);let A=[];for(let e of D){let t=O.get(e);t&&A.push(t)}let j=Date.now(),M;for(let e of u){let t=e.resumeAt.getTime(),n=Math.max(1e3,t-j),r=Math.ceil(n/1e3);(!M||r<M.seconds)&&(M={seconds:r,correlationId:e.correlationId})}return r?.setAttributes({...de(`workflow_suspended`),...en(c.length),...le(f.length),...ot(u.length)}),{pendingSteps:c,createdStepCorrelationIds:E,lazyInlineSteps:A,waitTimeout:v?void 0:M,hasHookConflict:v,hasAwaitedHookCreation:x,hasAttributeEvents:d.length>0,hasHookEvents:_.length>0}}function Pg(e){return e instanceof $t||e instanceof Error&&e.name===`AttributeValidationError`?!0:p.is(e)&&e.status===400}const Fg=82800;function Ig(e,t,n=Date.now()){if(e<=2)return{delaySeconds:e,idempotencyKey:`${t}:${Math.floor(n/1e3)}`};let r=Math.ceil(e/Fg);return{delaySeconds:Math.min(e,Fg),idempotencyKey:r===1?t:`${t}:hop-${r}`}}var Lg=44,Rg=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,zg=new Uint8Array(64),Bg=new Uint8Array(128);for(let e=0;e<Rg.length;e++){let t=Rg.charCodeAt(e);zg[e]=t,Bg[t]=e}function Vg(e,t){let n=0,r=0,i=0;do i=Bg[e.next()],n|=(i&31)<<r,r+=5;while(i&32);let a=n&1;return n>>>=1,a&&(n=-2147483648|-n),t+n}function Hg(e,t){return e.pos>=t?!1:e.peek()!==Lg}var Ug=class{constructor(e){this.pos=0,this.buffer=e}next(){return this.buffer.charCodeAt(this.pos++)}peek(){return this.buffer.charCodeAt(this.pos)}indexOf(e){let{buffer:t,pos:n}=this,r=t.indexOf(e,n);return r===-1?t.length:r}};function Wg(e){let{length:t}=e,n=new Ug(e),r=[],i=0,a=0,o=0,s=0,c=0;do{let e=n.indexOf(`;`),t=[],l=!0,u=0;for(i=0;n.pos<e;){let r;i=Vg(n,i),i<u&&(l=!1),u=i,Hg(n,e)?(a=Vg(n,a),o=Vg(n,o),s=Vg(n,s),Hg(n,e)?(c=Vg(n,c),r=[i,a,o,s,c]):r=[i,a,o,s]):r=[i],t.push(r),n.pos++}l||Gg(t),r.push(t),n.pos=e+1}while(n.pos<=t);return r}function Gg(e){e.sort(Kg)}function Kg(e,t){return e[0]-t[0]}const qg=/^[\w+.-]+:\/\//,Jg=/^([\w+.-]+:)\/\/([^@/#?]*@)?([^:/#?]*)(:\d+)?(\/[^#?]*)?(\?[^#]*)?(#.*)?/,Yg=/^file:(?:\/\/((?![a-z]:)[^/#?]*)?)?(\/?[^#?]*)(\?[^#]*)?(#.*)?/i;function Xg(e){return qg.test(e)}function Zg(e){return e.startsWith(`//`)}function Qg(e){return e.startsWith(`/`)}function $g(e){return e.startsWith(`file:`)}function e_(e){return/^[.?#]/.test(e)}function t_(e){let t=Jg.exec(e);return r_(t[1],t[2]||``,t[3],t[4]||``,t[5]||`/`,t[6]||``,t[7]||``)}function n_(e){let t=Yg.exec(e),n=t[2];return r_(`file:`,``,t[1]||``,``,Qg(n)?n:`/`+n,t[3]||``,t[4]||``)}function r_(e,t,n,r,i,a,o){return{scheme:e,user:t,host:n,port:r,path:i,query:a,hash:o,type:7}}function i_(e){if(Zg(e)){let t=t_(`http:`+e);return t.scheme=``,t.type=6,t}if(Qg(e)){let t=t_(`http://foo.com`+e);return t.scheme=``,t.host=``,t.type=5,t}if($g(e))return n_(e);if(Xg(e))return t_(e);let t=t_(`http://foo.com/`+e);return t.scheme=``,t.host=``,t.type=e?e.startsWith(`?`)?3:e.startsWith(`#`)?2:4:1,t}function a_(e){if(e.endsWith(`/..`))return e;let t=e.lastIndexOf(`/`);return e.slice(0,t+1)}function o_(e,t){s_(t,t.type),e.path===`/`?e.path=t.path:e.path=a_(t.path)+e.path}function s_(e,t){let n=t<=4,r=e.path.split(`/`),i=1,a=0,o=!1;for(let e=1;e<r.length;e++){let t=r[e];if(!t){o=!0;continue}if(o=!1,t!==`.`){if(t===`..`){a?(o=!0,a--,i--):n&&(r[i++]=t);continue}r[i++]=t,a++}}let s=``;for(let e=1;e<i;e++)s+=`/`+r[e];(!s||o&&!s.endsWith(`/..`))&&(s+=`/`),e.path=s}function c_(e,t){if(!e&&!t)return``;let n=i_(e),r=n.type;if(t&&r!==7){let e=i_(t),i=e.type;switch(r){case 1:n.hash=e.hash;case 2:n.query=e.query;case 3:case 4:o_(n,e);case 5:n.user=e.user,n.host=e.host,n.port=e.port;case 6:n.scheme=e.scheme}i>r&&(r=i)}s_(n,r);let i=n.query+n.hash;switch(r){case 2:case 3:return i;case 4:{let r=n.path.slice(1);return r?e_(t||e)&&!e_(r)?`./`+r+i:r+i:i||`.`}case 5:return n.path+i;default:return n.scheme+`//`+n.user+n.host+n.port+n.path+i}}function l_(e){if(!e)return``;let t=e.lastIndexOf(`/`);return e.slice(0,t+1)}function u_(e,t){let n=l_(e),r=t?t+`/`:``;return e=>c_(r+(e||``),n)}var d_=0,f_=1,p_=2,m_=3,h_=4;function g_(e,t){let n=__(e,0);if(n===e.length)return e;t||(e=e.slice());for(let r=n;r<e.length;r=__(e,r+1))e[r]=y_(e[r],t);return e}function __(e,t){for(let n=t;n<e.length;n++)if(!v_(e[n]))return n;return e.length}function v_(e){for(let t=1;t<e.length;t++)if(e[t][d_]<e[t-1][d_])return!1;return!0}function y_(e,t){return t||(e=e.slice()),e.sort(b_)}function b_(e,t){return e[d_]-t[d_]}var x_=!1;function S_(e,t,n,r){for(;n<=r;){let i=n+(r-n>>1),a=e[i][d_]-t;if(a===0)return x_=!0,i;a<0?n=i+1:r=i-1}return x_=!1,n-1}function C_(e,t,n){for(let r=n+1;r<e.length&&e[r][d_]===t;n=r++);return n}function w_(e,t,n){for(let r=n-1;r>=0&&e[r][d_]===t;n=r--);return n}function T_(){return{lastKey:-1,lastNeedle:-1,lastIndex:-1}}function E_(e,t,n,r){let{lastKey:i,lastNeedle:a,lastIndex:o}=n,s=0,c=e.length-1;if(r===i){if(t===a)return x_=o!==-1&&e[o][d_]===t,o;t>=a?s=o===-1?0:o:c=o}return n.lastKey=r,n.lastNeedle=t,n.lastIndex=S_(e,t,s,c)}function D_(e){return typeof e==`string`?JSON.parse(e):e}var O_="`line` must be greater than 0 (lines start at line 1)",k_="`column` must be greater than or equal to 0 (columns start at column 0)",A_=class{constructor(e,t){let n=typeof e==`string`;if(!n&&e._decodedMemo)return e;let r=D_(e),{version:i,file:a,names:o,sourceRoot:s,sources:c,sourcesContent:l}=r;this.version=i,this.file=a,this.names=o||[],this.sourceRoot=s,this.sources=c,this.sourcesContent=l,this.ignoreList=r.ignoreList||r.x_google_ignoreList||void 0;let u=u_(t,s);this.resolvedSources=c.map(u);let{mappings:d}=r;if(typeof d==`string`)this._encoded=d,this._decoded=void 0;else if(Array.isArray(d))this._encoded=void 0,this._decoded=g_(d,n);else if(r.sections)throw Error(`TraceMap passed sectioned source map, please use FlattenMap export instead`);else throw Error(`invalid source map: ${JSON.stringify(r)}`);this._decodedMemo=T_(),this._bySources=void 0,this._bySourceMemos=void 0}};function j_(e){return e}function M_(e){var t;return(t=j_(e))._decoded||(t._decoded=Wg(j_(e)._encoded))}function N_(e,t){let{line:n,column:r,bias:i}=t;if(n--,n<0)throw Error(O_);if(r<0)throw Error(k_);let a=M_(e);if(n>=a.length)return P_(null,null,null,null);let o=a[n],s=F_(o,j_(e)._decodedMemo,n,r,i||1);if(s===-1)return P_(null,null,null,null);let c=o[s];if(c.length===1)return P_(null,null,null,null);let{names:l,resolvedSources:u}=e;return P_(u[c[f_]],c[p_]+1,c[m_],c.length===5?l[c[h_]]:null)}function P_(e,t,n,r){return{source:e,line:t,column:n,name:r}}function F_(e,t,n,r,i){let a=E_(e,r,t,n);return x_?a=(i===-1?C_:w_)(e,r,a):i===-1&&a++,a===-1||a===e.length?-1:a}function I_(e){return e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===43||e===47||e===61}function L_(e){let t=0;for(;t<e.length;){let n=e.indexOf(`//# sourceMappingURL=data:application/json`,t);if(n===-1)return;let r=e.indexOf(`;base64,`,n+42);if(r===-1){t=n+42;continue}let i=e.indexOf(`,`,n);if(i!==-1&&i<r){t=r+8;continue}let a=r+8,o=a;for(;o<e.length&&I_(e.charCodeAt(o));)o++;if(o>a)return e.slice(a,o);t=o}}const R_=new Map;function z_(e){let t=R_.get(e);if(t!==void 0)return R_.delete(e),R_.set(e,t),t;let n=null,r=L_(e);if(r)try{let e=Buffer.from(r,`base64`).toString(`utf-8`);n=new A_(JSON.parse(e))}catch{n=null}for(R_.set(e,n);R_.size>8;){let e=R_.keys().next().value;if(e===void 0)break;R_.delete(e)}return n}function B_(e,t,n){if(!e.includes(t))return e;let r=z_(n);if(!r)return e;try{return e.split(`
|
|
140
|
-
`).map(e=>{let n=e.match(/^\s*at\s+(?:(.+?)\s+\()?(.+?):(\d+):(\d+)\)?$/);if(!n)return e;let[,i,a,o,s]=n;if(!a.includes(t))return e;let c=parseInt(o,10),l=parseInt(s,10),u=
|
|
141
|
-
`)}catch{return e}}const V_=4096;function H_(e){if(e===null)return!0;let t=typeof e;return t===`object`||t===`function`?!1:t===`string`?e.length<=V_:t===`bigint`?e.toString().length<=V_:!0}function U_(){return new Map}async function W_(e,t,n){if(!e||t===void 0)return n();if(e.has(t))return e.get(t);let r=await n();return H_(r)&&e.set(t,r),r}function G_(e,t,n){let r=(2<<31-Math.clz32(e.length-1|1))-1,i=Math.ceil(1.6*r*t/e.length);return(a=t)=>{if(!a)return``;let o=``;for(;;){let t=n(i),s=i;for(;s--;)if(o+=e[t[s]&r]||``,o.length>=a)return o}}}function K_(e){let t=e.startsWith(`wrun_`)?e.slice(5):e;try{return ae(t)}catch{return}}function q_(e){return function(t,n){let i=function(...i){let{promise:a,resolve:o,reject:s}=r(),c=`step_${e.generateUlid()}`,l={type:`step`,correlationId:c,stepName:t,args:i};this!==void 0&&this!==null&&this!==globalThis&&(l.thisVal=this);let u=n?.();return u&&(l.closureVars=u),e.invocationsQueue.set(c,l),I.debug(`Step consumer setup`,{correlationId:c,stepName:t,args:i}),e.eventsConsumer.subscribe(n=>{if(!n)return Dn(e,()=>{e.onWorkflowError(new N(e.invocationsQueue,e.globalThis))}),U.NotConsumed;if(I.debug(`Step consumer event processing`,{correlationId:c,stepName:t,args:i.join(`, `),incomingCorrelationId:n.correlationId,isMatch:c===n.correlationId,eventType:n.eventType}),n.correlationId!==c)return U.NotConsumed;let r=`eventData`in n&&n.eventData&&`stepName`in n.eventData?n.eventData.stepName:void 0;if(typeof r==`string`&&r!==t)return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new E(`Replay divergence: step event ${n.eventType} for ${c} belongs to "${r}", but the current step consumer is "${t}"`,{eventId:n.eventId}))}),U.Finished;if(n.eventType===`step_created`){let r=e.invocationsQueue.get(c);return!r||r.type!==`step`?(e.promiseQueue=e.promiseQueue.then(()=>{s(new E(`Replay divergence: step ${c} (${t}) created but not found in invocation queue`,{eventId:n.eventId}))}),U.Finished):(r.hasCreatedEvent=!0,U.Consumed)}if(n.eventType===`step_started`||n.eventType===`step_retrying`)return U.Consumed;if(n.eventType===`step_failed`)return e.invocationsQueue.delete(n.correlationId),e.promiseQueue=e.promiseQueue.then(async()=>{try{s(await ne(n.eventData.error,e.runId,e.encryptionKey,e.globalThis))}catch(e){I.error(`Failed to hydrate step_failed error`,{correlationId:n.correlationId,error:e instanceof Error?e.message:String(e)}),s(new y(`Failed to hydrate step error: ${e instanceof Error?e.message:String(e)}`))}}),U.Finished;if(n.eventType===`step_completed`){e.invocationsQueue.delete(n.correlationId);let t=n.eventId,r=n.eventData.result;return e.pendingDeliveries++,e.promiseQueue=e.promiseQueue.then(async()=>{try{o(await W_(e.stepHydrationCache,t,()=>ke(r,e.runId,e.encryptionKey,e.globalThis)))}catch(e){s(e)}finally{e.pendingDeliveries--}}),U.Finished}return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new E(`Replay divergence: Unexpected event type for step ${c} (name: ${t}) "${n.eventType}"`,{eventId:n.eventId}))}),U.Finished}),a},a=t.split(`//`).pop();return Object.defineProperty(i,"name",{value:a}),Object.defineProperty(i,"stepId",{value:t,writable:!1,enumerable:!1,configurable:!1}),n&&Object.defineProperty(i,"__closureVarsFn",{value:n,writable:!1,enumerable:!1,configurable:!1}),Object.defineProperty(i,"bind",{value:function(e,...r){let i=Function.prototype.bind.call(this,e,...r);return Object.defineProperty(i,"stepId",{value:t,writable:!1,enumerable:!1,configurable:!1}),n&&Object.defineProperty(i,"__closureVarsFn",{value:n,writable:!1,enumerable:!1,configurable:!1}),Object.defineProperty(i,"__boundThis",{value:e,writable:!1,enumerable:!1,configurable:!1}),r.length>0&&Object.defineProperty(i,"__boundArgs",{value:r,writable:!1,enumerable:!1,configurable:!1}),i},writable:!1,enumerable:!1,configurable:!1}),i}}var J_=n(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=o();t.next=function(){var e=2091639*t.s0+t.c*23283064365386963e-26;return t.s0=t.s1,t.s1=t.s2,t.s2=e-(t.c=e|0)},t.c=1,t.s0=n(` `),t.s1=n(` `),t.s2=n(` `),t.s0-=n(e),t.s0<0&&(t.s0+=1),t.s1-=n(e),t.s1<0&&(t.s1+=1),t.s2-=n(e),t.s2<0&&(t.s2+=1),n=null}function i(e,t){return t.c=e.c,t.s0=e.s0,t.s1=e.s1,t.s2=e.s2,t}function a(e,t){var n=new r(e),a=t&&t.state,o=n.next;return o.int32=function(){return n.next()*4294967296|0},o.double=function(){return o()+(o()*2097152|0)*11102230246251565e-32},o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}function o(){var e=4022871197;return function(t){t=String(t);for(var n=0;n<t.length;n++){e+=t.charCodeAt(n);var r=.02519603282416938*e;e=r>>>0,r-=e,r*=e,e=r>>>0,r-=e,e+=r*4294967296}return(e>>>0)*23283064365386963e-26}}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.alea=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),Y_=n(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=``;t.x=0,t.y=0,t.z=0,t.w=0,t.next=function(){var e=t.x^t.x<<11;return t.x=t.y,t.y=t.z,t.z=t.w,t.w^=t.w>>>19^e^e>>>8},e===(e|0)?t.x=e:n+=e;for(var r=0;r<n.length+64;r++)t.x^=n.charCodeAt(r)|0,t.next()}function i(e,t){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=e.w,t}function a(e,t){var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xor128=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),X_=n(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=``;t.next=function(){var e=t.x^t.x>>>2;return t.x=t.y,t.y=t.z,t.z=t.w,t.w=t.v,(t.d=t.d+362437|0)+(t.v=t.v^t.v<<4^(e^e<<1))|0},t.x=0,t.y=0,t.z=0,t.w=0,t.v=0,e===(e|0)?t.x=e:n+=e;for(var r=0;r<n.length+64;r++)t.x^=n.charCodeAt(r)|0,r==n.length&&(t.d=t.x<<10^t.x>>>4),t.next()}function i(e,t){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=e.w,t.v=e.v,t.d=e.d,t}function a(e,t){var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xorwow=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),Z_=n(((e,t)=>{(function(e,t,n){function r(e){var t=this;t.next=function(){var e=t.x,n=t.i,r=e[n],i;return r^=r>>>7,i=r^r<<24,r=e[n+1&7],i^=r^r>>>10,r=e[n+3&7],i^=r^r>>>3,r=e[n+4&7],i^=r^r<<7,r=e[n+7&7],r^=r<<13,i^=r^r<<9,e[n]=i,t.i=n+1&7,i};function n(e,t){var n,r=[];if(t===(t|0))r[0]=t;else for(t=``+t,n=0;n<t.length;++n)r[n&7]=r[n&7]<<15^t.charCodeAt(n)+r[n+1&7]<<13;for(;r.length<8;)r.push(0);for(n=0;n<8&&r[n]===0;++n);for(n==8?r[7]=-1:r[n],e.x=r,e.i=0,n=256;n>0;--n)e.next()}n(t,e)}function i(e,t){return t.x=e.x.slice(),t.i=e.i,t}function a(e,t){e??=+new Date;var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(a.x&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xorshift7=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),Q_=n(((e,t)=>{(function(e,t,n){function r(e){var t=this;t.next=function(){var e=t.w,n=t.X,r=t.i,i,a;return t.w=e=e+1640531527|0,a=n[r+34&127],i=n[r=r+1&127],a^=a<<13,i^=i<<17,a^=a>>>15,i^=i>>>12,a=n[r]=a^i,t.i=r,a+(e^e>>>16)|0};function n(e,t){var n,r,i,a,o,s=[],c=128;for(t===(t|0)?(r=t,t=null):(t+=`\0`,r=0,c=Math.max(c,t.length)),i=0,a=-32;a<c;++a)t&&(r^=t.charCodeAt((a+32)%t.length)),a===0&&(o=r),r^=r<<10,r^=r>>>15,r^=r<<4,r^=r>>>13,a>=0&&(o=o+1640531527|0,n=s[a&127]^=r+o,i=n==0?i+1:0);for(i>=128&&(s[(t&&t.length||0)&127]=-1),i=127,a=512;a>0;--a)r=s[i+34&127],n=s[i=i+1&127],r^=r<<13,n^=n<<17,r^=r>>>15,n^=n>>>12,s[i]=r^n;e.w=o,e.X=s,e.i=i}n(t,e)}function i(e,t){return t.i=e.i,t.w=e.w,t.X=e.X.slice(),t}function a(e,t){e??=+new Date;var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(a.X&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xor4096=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),$_=n(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=``;t.next=function(){var e=t.b,n=t.c,r=t.d,i=t.a;return e=e<<25^e>>>7^n,n=n-r|0,r=r<<24^r>>>8^i,i=i-e|0,t.b=e=e<<20^e>>>12^n,t.c=n=n-r|0,t.d=r<<16^n>>>16^i,t.a=i-e|0},t.a=0,t.b=0,t.c=-1640531527,t.d=1367130551,e===Math.floor(e)?(t.a=e/4294967296|0,t.b=e|0):n+=e;for(var r=0;r<n.length+20;r++)t.b^=n.charCodeAt(r)|0,t.next()}function i(e,t){return t.a=e.a,t.b=e.b,t.c=e.c,t.d=e.d,t}function a(e,t){var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.tychei=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),ev=n(((e,n)=>{(function(e,r,i){var a=256,o=6,s=52,c=`random`,l=i.pow(a,o),u=i.pow(2,s),d=u*2,f=a-1,p;function m(e,t,n){var s=[];t=t==1?{entropy:!0}:t||{};var f=v(_(t.entropy?[e,b(r)]:e??y(),3),s),p=new h(s),m=function(){for(var e=p.g(o),t=l,n=0;e<u;)e=(e+n)*a,t*=a,n=p.g(1);for(;e>=d;)e/=2,t/=2,n>>>=1;return(e+n)/t};return m.int32=function(){return p.g(4)|0},m.quick=function(){return p.g(4)/4294967296},m.double=m,v(b(p.S),r),(t.pass||n||function(e,t,n,r){return r&&(r.S&&g(r,p),e.state=function(){return g(p,{})}),n?(i[c]=e,t):e})(m,f,`global`in t?t.global:this==i,t.state)}function h(e){var t,n=e.length,r=this,i=0,o=r.i=r.j=0,s=r.S=[];for(n||(e=[n++]);i<a;)s[i]=i++;for(i=0;i<a;i++)s[i]=s[o=f&o+e[i%n]+(t=s[i])],s[o]=t;(r.g=function(e){for(var t,n=0,i=r.i,o=r.j,s=r.S;e--;)t=s[i=f&i+1],n=n*a+s[f&(s[i]=s[o=f&o+t])+(s[o]=t)];return r.i=i,r.j=o,n})(a)}function g(e,t){return t.i=e.i,t.j=e.j,t.S=e.S.slice(),t}function _(e,t){var n=[],r=typeof e,i;if(t&&r==`object`)for(i in e)try{n.push(_(e[i],t-1))}catch{}return n.length?n:r==`string`?e:e+`\0`}function v(e,t){for(var n=e+``,r,i=0;i<n.length;)t[f&i]=f&(r^=t[f&i]*19)+n.charCodeAt(i++);return b(t)}function y(){try{var t;return p&&(t=p.randomBytes)?t=t(a):(t=new Uint8Array(a),(e.crypto||e.msCrypto).getRandomValues(t)),b(t)}catch{var n=e.navigator,i=n&&n.plugins;return[+new Date,e,i,e.screen,b(r)]}}function b(e){return String.fromCharCode.apply(0,e)}if(v(i.random(),r),typeof n==`object`&&n.exports){n.exports=m;try{p=t(`crypto`)}catch{}}else typeof define==`function`&&define.amd?define(function(){return m}):i[`seed`+c]=m})(typeof self<`u`?self:e,[],Math)})),tv=e(n(((e,t)=>{var n=J_(),r=Y_(),i=X_(),a=Z_(),o=Q_(),s=$_(),c=ev();c.alea=n,c.xor128=r,c.xorwow=i,c.xorshift7=a,c.xor4096=o,c.tychei=s,t.exports=c}))(),1);const nv=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,rv=new Uint8Array(128).fill(255);for(let e=0;e<64;e++)rv[nv.charCodeAt(e)]=e;function iv(e){return e===9||e===10||e===12||e===13||e===32}function av(e,t){for(;t<e.length&&iv(e.charCodeAt(t));)t++;return t}function ov(e,t){let n=e.length,r=e;n===2?r=e+`AA`:n===3&&(r=e+`A`);let i=rv[r.charCodeAt(0)],a=rv[r.charCodeAt(1)],o=rv[r.charCodeAt(2)],s=rv[r.charCodeAt(3)],c=i<<2|a>>4,l=(a&15)<<4|o>>2,u=(o&3)<<6|s;if(n===2){if(t&&l!==0)throw SyntaxError(`Extra bits in base64 chunk`);return[c]}if(n===3){if(t&&u!==0)throw SyntaxError(`Extra bits in base64 chunk`);return[c,l]}return[c,l,u]}function sv(e,t,n,r){if(r===void 0&&(r=2**53-1),r===0)return{read:0,bytes:[],error:null};let i=0,a=[],o=``,s=0,c=0,l=e.length;for(;;){if(c=av(e,c),c===l){if(s>0){if(n===`stop-before-partial`)return{read:i,bytes:a,error:null};if(n===`loose`){if(s===1)return{read:i,bytes:a,error:SyntaxError(`Invalid base64: lone character in final chunk`)};a.push(...ov(o,!1))}else return{read:i,bytes:a,error:SyntaxError(`Invalid base64: incomplete chunk in strict mode`)}}return{read:l,bytes:a,error:null}}let u=e[c];if(c++,u===`=`){if(s<2)return{read:i,bytes:a,error:SyntaxError(`Invalid base64: padding in unexpected place`)};if(c=av(e,c),s===2){if(c===l)return n===`stop-before-partial`?{read:i,bytes:a,error:null}:{read:i,bytes:a,error:SyntaxError(`Invalid base64: missing second padding character`)};u=e[c],u===`=`&&(c=av(e,c+1))}if(c<l)return{read:i,bytes:a,error:SyntaxError(`Invalid base64: unexpected characters after padding`)};let t=n===`strict`;try{a.push(...ov(o,t))}catch(e){return{read:i,bytes:a,error:e}}return{read:l,bytes:a,error:null}}if(t===`base64url`){if(u===`+`||u===`/`)return{read:i,bytes:a,error:SyntaxError(`Invalid base64url: unexpected character '${u}'`)};u===`-`?u=`+`:u===`_`&&(u=`/`)}let d=u.charCodeAt(0);if(d>=128||rv[d]===255)return{read:i,bytes:a,error:SyntaxError(`Invalid base64: unexpected character '${e[c-1]}'`)};let f=r-a.length;if(f===1&&s===2||f===2&&s===3||(o+=u,s=o.length,s===4&&(a.push(...ov(o)),o=``,s=0,i=c,a.length===r)))return{read:i,bytes:a,error:null}}}function cv(e,t){t===void 0&&(t=2**53-1);let n=e.length,r=[],i=0;if(n%2!=0)return{read:0,bytes:[],error:SyntaxError(`Invalid hex: string length must be even`)};for(;i<n&&r.length<t;){let t=e.substring(i,i+2);if(!/^[0-9a-fA-F]{2}$/.test(t))return{read:i,bytes:r,error:SyntaxError(`Invalid hex: unexpected character at position ${i}`)};i+=2,r.push(Number.parseInt(t,16))}return{read:i,bytes:r,error:null}}function lv(e,t){let n=t?.alphabet??`base64`;if(n!==`base64`&&n!==`base64url`)throw TypeError(`Invalid alphabet: expected "base64" or "base64url", got "${n}"`);let r=!!t?.omitPadding,i=``,a=e.length;for(let t=0;t<a;t+=3){let n=e[t],o=t+1<a?e[t+1]:0,s=t+2<a?e[t+2]:0;i+=nv[n>>2&63],i+=nv[(n&3)<<4|o>>4&15],t+1<a?i+=nv[(o&15)<<2|s>>6&3]:r||(i+=`=`),t+2<a?i+=nv[s&63]:r||(i+=`=`)}return n===`base64url`&&(i=i.replace(/\+/g,`-`).replace(/\//g,`_`)),i}function uv(e){let t=``;for(let n=0;n<e.length;n++)t+=e[n].toString(16).padStart(2,`0`);return t}function dv(e){let t=e.prototype,n=e;t.toBase64||Object.defineProperty(t,"toBase64",{value:function(t){if(!(this instanceof e))throw TypeError(`this is not a Uint8Array`);return lv(this,t)},writable:!0,enumerable:!1,configurable:!0}),t.toHex||Object.defineProperty(t,"toHex",{value:function(){if(!(this instanceof e))throw TypeError(`this is not a Uint8Array`);return uv(this)},writable:!0,enumerable:!1,configurable:!0}),t.setFromBase64||Object.defineProperty(t,"setFromBase64",{value:function(t,n){if(!(this instanceof e))throw TypeError(`this is not a Uint8Array`);if(typeof t!=`string`)throw TypeError(`expected a string`);let r=n?.alphabet??`base64`;if(r!==`base64`&&r!==`base64url`)throw TypeError(`Invalid alphabet: expected "base64" or "base64url", got "${r}"`);let i=n?.lastChunkHandling??`loose`;if(i!==`loose`&&i!==`strict`&&i!==`stop-before-partial`)throw TypeError(`Invalid lastChunkHandling: expected "loose", "strict", or "stop-before-partial", got "${i}"`);let a=sv(t,r,i,this.length),o=a.bytes,s=o.length;for(let e=0;e<s;e++)this[e]=o[e];if(a.error)throw a.error;return{read:a.read,written:s}},writable:!0,enumerable:!1,configurable:!0}),t.setFromHex||Object.defineProperty(t,"setFromHex",{value:function(t){if(!(this instanceof e))throw TypeError(`this is not a Uint8Array`);if(typeof t!=`string`)throw TypeError(`expected a string`);let n=cv(t,this.length),r=n.bytes,i=r.length;for(let e=0;e<i;e++)this[e]=r[e];if(n.error)throw n.error;return{read:n.read,written:i}},writable:!0,enumerable:!1,configurable:!0}),n.fromBase64||Object.defineProperty(e,"fromBase64",{value:function(t,n){if(typeof t!=`string`)throw TypeError(`expected a string`);let r=n?.alphabet??`base64`;if(r!==`base64`&&r!==`base64url`)throw TypeError(`Invalid alphabet: expected "base64" or "base64url", got "${r}"`);let i=n?.lastChunkHandling??`loose`;if(i!==`loose`&&i!==`strict`&&i!==`stop-before-partial`)throw TypeError(`Invalid lastChunkHandling: expected "loose", "strict", or "stop-before-partial", got "${i}"`);let a=sv(t,r,i);if(a.error)throw a.error;return new e(a.bytes)},writable:!0,enumerable:!1,configurable:!0}),n.fromHex||Object.defineProperty(e,"fromHex",{value:function(t){if(typeof t!=`string`)throw TypeError(`expected a string`);let n=cv(t);if(n.error)throw n.error;return new e(n.bytes)},writable:!0,enumerable:!1,configurable:!0})}function fv(e){return function(){let t=`0123456789abcdef`,n=``;for(let r=0;r<36;r++)r===8||r===13||r===18||r===23?n+=`-`:r===14?n+=`4`:r===19?n+=t[Math.floor(e()*4)+8]:n+=t[Math.floor(e()*16)];return n}}function pv(e){let{fixedTimestamp:t}=e,{seed:n}=e,r=(0,tv.default)(n),i=hr(),a=gr(`globalThis`,i);a.Math.random=r;let o=a.Date;a.Date=function(...e){return e.length===0?new o(t):new o(...e)},a.Date.prototype=o.prototype,Object.setPrototypeOf(a.Date,o),a.Date.now=()=>t;let s=globalThis.crypto,c=s.subtle;function l(e){for(let t=0;t<e.length;t++)e[t]=Math.floor(r()*256);return e}let u=fv(r),d=c.digest.bind(c);return a.crypto=new Proxy(s,{get(e,t){return t===`getRandomValues`?l:t===`randomUUID`?u:t===`subtle`?new Proxy(c,{get(e,t){return t===`generateKey`?()=>{throw new k("`crypto.subtle.generateKey()` is not available inside a workflow function. Move key generation to a step function where full Node.js crypto is available.")}:t===`digest`?d:e[t]}}):e[t]}}),a.process={env:Object.freeze({...process.env})},a.DOMException=globalThis.DOMException,a.Headers=globalThis.Headers,a.TextEncoder=globalThis.TextEncoder,a.TextDecoder=globalThis.TextDecoder,a.console=globalThis.console,a.URL=globalThis.URL,a.URLSearchParams=globalThis.URLSearchParams,a.structuredClone=globalThis.structuredClone,a.atob=globalThis.atob,a.btoa=globalThis.btoa,dv(a.Uint8Array),a.Symbol.dispose??=Symbol.for(`Symbol.dispose`),a.Symbol.asyncDispose??=Symbol.for(`Symbol.asyncDispose`),a.exports={},a.module={exports:a.exports},{context:i,globalThis:a,updateTimestamp:e=>{t=e}}}const mv=new Map;function hv(e){let t=mv.get(e);if(t!==void 0)return mv.delete(e),mv.set(e,t),t}function gv(e,t){let n=hv(e);if(n===void 0)for(n=new Map,mv.set(e,n);mv.size>8;){let e=mv.keys().next().value;if(e===void 0)break;mv.delete(e)}let r=n.get(t);return r===void 0&&(r=new mr(e,{filename:t}),n.set(t,r)),r}function _v(e,t,n){return gv(e,t).runInContext(n)}function vv(e){return async function(t,n={}){let{promise:i,resolve:a}=r(),o=`attr_${e.generateUlid()}`,s={type:`attribute`,correlationId:o,changes:t,...n.allowReservedAttributes===!0?{allowReservedAttributes:!0}:{}};return e.invocationsQueue.set(o,s),e.eventsConsumer.subscribe(r=>r?r.correlationId===o?r.eventType!==`attr_set`||r.eventData.writer.type!==`workflow`||JSON.stringify(r.eventData.changes)!==JSON.stringify(t)||r.eventData.allowReservedAttributes===!0!=(n.allowReservedAttributes===!0)?(e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new E(`Replay divergence: Unexpected attribute event for ${o}`,{eventId:r.eventId}))}),U.Finished):(e.invocationsQueue.delete(o),e.promiseQueue=e.promiseQueue.then(()=>{a()}),U.Finished):U.NotConsumed:(Dn(e,()=>{e.onWorkflowError(new N(e.invocationsQueue,e.globalThis))}),U.NotConsumed)),i}}function yv(e,t){if(typeof t!=`string`)return null;let n=tn(sn,e.globalThis),r=n?.[kt];return typeof r==`function`?r.call(n,{runId:t}):null}function bv(e){return function(t={}){if(t.token===``)throw Error("`createHook()` was called with an empty string token. Pass a non-empty token, or omit the `token` option to use a randomly generated one.");let n=`hook_${e.generateUlid()}`,i=t.token??e.generateNanoid(),a=t.isWebhook??!1;e.invocationsQueue.set(n,{type:`hook`,correlationId:n,token:i,metadata:t.metadata,isWebhook:a});let o=[],s=[],c=[],l=!1,u=!1,d=!1,f=!1,p=null,h=null;Ke.debug(`Hook consumer setup`,{correlationId:n,token:i}),e.eventsConsumer.subscribe(t=>{if(!t)return l=!0,(s.length>0&&o.length===0||c.length>0&&!u&&!f)&&Dn(e,()=>{e.onWorkflowError(new N(e.invocationsQueue,e.globalThis))}),U.NotConsumed;if(t.correlationId!==n)return U.NotConsumed;let a=`eventData`in t&&t.eventData&&`token`in t.eventData?t.eventData.token:void 0;if(typeof a==`string`&&a!==i)return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new E(`Replay divergence: hook event ${t.eventType} for ${n} belongs to token "${a}", but the current hook consumer expects "${i}"`,{eventId:t.eventId}))}),U.Finished;if(t.eventType===`hook_created`){let t=e.invocationsQueue.get(n);t&&t.type===`hook`&&(t.hasCreatedEvent=!0),u=!0;let r=c.slice();return c.length=0,e.promiseQueue=e.promiseQueue.then(()=>{for(let e of r)e.resolve(null)}),U.Consumed}if(t.eventType===`hook_conflict`){e.invocationsQueue.delete(n);let r=t,i=new m(r.eventData.token,r.eventData.conflictingRunId);f=!0,p=i,h=yv(e,r.eventData.conflictingRunId);let a=s.slice();s.length=0;let o=c.slice();return c.length=0,e.promiseQueue=e.promiseQueue.then(()=>{for(let e of a)e.reject(i);for(let e of o)h?e.resolve(h):e.reject(i)}),U.Consumed}if(t.eventType===`hook_received`){let n=e.eventsConsumer.eventIndex,i=En(e,n,`hook`);if(s.length>0){let r=s.shift();if(r){e.pendingDeliveries++;let a;e.promiseQueue=e.promiseQueue.then(async()=>{try{a={ok:!0,value:await ke(t.eventData.payload,e.runId,e.encryptionKey,e.globalThis)}}catch(e){a={ok:!1,error:e}}finally{e.pendingDeliveries--}wn(e,n,[`wait`]).then(()=>{i.markDelivered(),a.ok?r.resolve(a.value):r.reject(a.error)})})}}else{let a,s=r();e.pendingDeliveries++,e.promiseQueue=e.promiseQueue.then(async()=>{try{a={ok:!0,value:await ke(t.eventData.payload,e.runId,e.encryptionKey,e.globalThis)}}catch(e){a={ok:!1,error:e}}finally{e.pendingDeliveries--,s.resolve()}}),o.push({claim:()=>s.promise.then(()=>wn(e,n,[`wait`])).then(()=>{if(i.markDelivered(),a&&!a.ok)throw a.error;return a.value})})}return U.Consumed}return t.eventType===`hook_disposed`?(e.invocationsQueue.delete(n),d=!0,U.Finished):(e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new E(`Replay divergence: Unexpected event type for hook ${n} (token: ${i}) "${t.eventType}"`,{eventId:t.eventId}))}),U.Finished)});let g=!1;function _(){let t=r();if(f&&p)return e.promiseQueue=e.promiseQueue.then(()=>{t.reject(p)}),t.promise;if(o.length>0){let e=o.shift();if(e)return e.claim()}return l&&Dn(e,()=>{e.onWorkflowError(new N(e.invocationsQueue,e.globalThis))}),s.push(t),t.promise}function v(){let t=r();if(u)return e.promiseQueue=e.promiseQueue.then(()=>{t.resolve(null)}),t.promise;if(f)return e.promiseQueue=e.promiseQueue.then(()=>{h?t.resolve(h):t.reject(p)}),t.promise;let i=e.invocationsQueue.get(n);return i&&i.type===`hook`&&(i.hasConflictAwaiter=!0),l&&Dn(e,()=>{e.onWorkflowError(new N(e.invocationsQueue,e.globalThis))}),c.push(t),t.promise}function y(){if(g||(g=!0,d))return;let t=e.invocationsQueue.get(n);t&&t.type===`hook`&&(t.disposed=!0),s.length>0&&(s.length=0,Dn(e,()=>{e.onWorkflowError(new N(e.invocationsQueue,e.globalThis))})),Ke.debug(`Hook disposed`,{correlationId:n,token:i})}let b={token:i,getConflict(){return v()},then(e,t){return _().then(e,t)},async*[Symbol.asyncIterator](){for(;!g;)yield await this},dispose:y,[Symbol.dispose]:y},x=e.globalThis.Symbol.dispose;return x&&x!==Symbol.dispose&&(b[x]=y),b}}function xv(e){return async function(t){let{promise:n,resolve:i}=r(),a=`wait_${e.generateUlid()}`,o=c(t),s={type:`wait`,correlationId:a,resumeAt:o};return e.invocationsQueue.set(a,s),e.eventsConsumer.subscribe(t=>{if(!t)return Dn(e,()=>{e.onWorkflowError(new N(e.invocationsQueue,e.globalThis))}),U.NotConsumed;if(t.correlationId!==a)return U.NotConsumed;if(t.eventType===`wait_created`){let n=e.invocationsQueue.get(a);return n&&n.type===`wait`&&(n.hasCreatedEvent=!0,n.resumeAt=t.eventData.resumeAt),U.Consumed}if(t.eventType===`wait_completed`){let n=t.eventData?.resumeAt;if(n!==void 0){let r=e.invocationsQueue.get(a),i=r&&r.type===`wait`?r.resumeAt:o,s=new Date(n),c=s.getTime(),l=i.getTime(),u=Number.isFinite(c)?s.toISOString():String(n);if(c!==l)return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new E(`Replay divergence: wait_completed event for ${a} has resumeAt "${u}", but the current wait consumer expects "${i.toISOString()}"`,{eventId:t.eventId}))}),U.Finished}e.invocationsQueue.delete(a);let r=e.eventsConsumer.eventIndex,s=En(e,r,`wait`);return e.promiseQueue.then(()=>wn(e,r,[`hook`])).then(()=>{s.markDelivered(),i()}),U.Finished}return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new E(`Replay divergence: Unexpected event type for wait ${a} "${t.eventType}"`,{eventId:t.eventId}))}),U.Finished}),n}}async function Sv(e,t,n,r,i){if(t.size!==0){for(let e of t.values())e.type===`hook`&&e.isSystem&&!e.disposed&&!e.abortRequested&&(e.disposed=!0);try{let e=await mg();await Ng({suspension:new N(t,n),world:e,run:r})}catch(t){W.warn(`Failed to drain pending queue items for ${i} workflow run`,{workflowRunId:e,message:t instanceof Error?t.message:String(t)})}}}async function Cv(e,t,n,i,a){return tt(`workflow.run ${t.workflowName}`,async s=>{s?.setAttributes({...ge(t.workflowName),...Ze(t.runId),...de(t.status),...Pe(n.length)});let c=t.startedAt;if(!c)throw new k(`Workflow run "${t.runId}" has no "startedAt" timestamp (should not happen)`);let l=K_(t.runId)??+t.createdAt,u=process.env.VERCEL_URL!==void 0,d=u?void 0:await kg(),{context:f,globalThis:p,updateTimestamp:m}=pv({seed:`${t.runId}:${t.workflowName}:${t.deploymentId}`,fixedTimestamp:l}),h=r(),g=re(()=>p.Math.random()),_=G_(`useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict`,21,e=>new Uint8Array(e).map(()=>256*p.Math.random())),v={current:Promise.resolve()},y=new Me(n,{onConsumedEvent:e=>{m(+e.createdAt)},onUnconsumedEvent:e=>{h.reject(new E(`Replay could not consume event: eventType=${e.eventType}, correlationId=${e.correlationId}, eventId=${e.eventId}.`,{eventId:e.eventId}))},getPromiseQueue:()=>v.current}),b={runId:t.runId,encryptionKey:i,globalThis:p,onWorkflowError:h.reject,eventsConsumer:y,generateUlid:()=>g(l),generateNanoid:_,invocationsQueue:new Map,get promiseQueue(){return v.current},set promiseQueue(e){v.current=e},pendingDeliveries:0,pendingDeliveryBarriers:new Map,stepHydrationCache:a};b.eventsConsumer.subscribe(e=>e&&(e.eventType===`run_created`||e.eventType===`run_started`||e.eventType===`attr_set`&&e.eventData.writer.type===`step`)?U.Consumed:U.NotConsumed);let x=q_(b),C=bv(b),w=xv(b),T=vv(b);p[Ut]=x,p[wt]=T,p[dn]=C,p[Xt]=w,p[yt]=e=>xe(t.runId,e);let D=u?`https://${process.env.VERCEL_URL}`:`http://localhost:${d??3e3}`;p[Zt]={workflowName:t.workflowName,workflowRunId:t.runId,workflowStartedAt:new p.Date(+c),url:D,features:{encryption:!!i}},p[dt]=g,p.fetch=()=>{throw new p.Error(`Global "fetch" is unavailable in workflow functions. Use the "fetch" step function from "workflow" to make HTTP requests.\n\nLearn more: https://workflow-sdk.dev/err/${S.FETCH_IN_WORKFLOW_FUNCTION}`)};let O=`Timeout functions like "setTimeout" and "setInterval" are not supported in workflow functions. Use the "sleep" function from "workflow" for time-based delays.`;p.setTimeout=()=>{throw new k(O,{slug:S.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},p.setInterval=()=>{throw new k(O,{slug:S.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},p.clearTimeout=()=>{throw new k(O,{slug:S.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},p.clearInterval=()=>{throw new k(O,{slug:S.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},p.setImmediate=()=>{throw new k(O,{slug:S.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},p.clearImmediate=()=>{throw new k(O,{slug:S.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},p.AbortController=we(b);let j=Ft();p.AbortSignal={abort:j.abort,any:j.any,timeout:j.timeout};class M{cache;credentials;destination;headers;integrity;method;mode;redirect;referrer;referrerPolicy;url;keepalive;signal;duplex;body;constructor(e,t){if(typeof e==`string`||e instanceof p.URL){let t=String(e);try{new p.URL(t),this.url=t}catch(e){throw TypeError(`Failed to parse URL from ${t}`,{cause:e})}}else{if(this.url=e.url,!t){this.method=e.method,this.headers=new p.Headers(e.headers),this.body=e.body,this.mode=e.mode,this.credentials=e.credentials,this.cache=e.cache,this.redirect=e.redirect,this.referrer=e.referrer,this.referrerPolicy=e.referrerPolicy,this.integrity=e.integrity,this.keepalive=e.keepalive,this.signal=e.signal,this.duplex=e.duplex,this.destination=e.destination;return}this.method=e.method,this.headers=new p.Headers(e.headers),this.body=e.body,this.mode=e.mode,this.credentials=e.credentials,this.cache=e.cache,this.redirect=e.redirect,this.referrer=e.referrer,this.referrerPolicy=e.referrerPolicy,this.integrity=e.integrity,this.keepalive=e.keepalive,this.signal=e.signal,this.duplex=e.duplex,this.destination=e.destination}t?.method?this.method=t.method.toUpperCase():typeof this.method!=`string`&&(this.method=`GET`),t?.headers?this.headers=new p.Headers(t.headers):(typeof e==`string`||e instanceof p.URL)&&(this.headers=new p.Headers),t?.mode===void 0?typeof this.mode!=`string`&&(this.mode=`cors`):this.mode=t.mode,t?.credentials===void 0?typeof this.credentials!=`string`&&(this.credentials=`same-origin`):this.credentials=t.credentials,t?.cache===void 0?typeof this.cache!=`string`&&(this.cache=`default`):this.cache=t.cache,t?.redirect===void 0?typeof this.redirect!=`string`&&(this.redirect=`follow`):this.redirect=t.redirect,t?.referrer===void 0?typeof this.referrer!=`string`&&(this.referrer=`about:client`):this.referrer=t.referrer,t?.referrerPolicy===void 0?typeof this.referrerPolicy!=`string`&&(this.referrerPolicy=``):this.referrerPolicy=t.referrerPolicy,t?.integrity===void 0?typeof this.integrity!=`string`&&(this.integrity=``):this.integrity=t.integrity,t?.keepalive===void 0?typeof this.keepalive!=`boolean`&&(this.keepalive=!1):this.keepalive=t.keepalive,t?.signal===void 0?this.signal||={aborted:!1}:this.signal=t.signal,this.duplex||=`half`,this.destination||=`document`;let n=t?.body;if(n!=null&&(this.method===`GET`||this.method===`HEAD`))throw TypeError(`Request with GET/HEAD method cannot have body.`);n==null?this.body=null:this.body=Object.create(p.ReadableStream.prototype,{[Nt]:{value:n,writable:!1}})}clone(){Ie()}get bodyUsed(){return!1}blob;formData;arrayBuffer;json;text;async bytes(){return new Uint8Array(await this.arrayBuffer())}}p.Request=M,Object.defineProperties(M.prototype,{arrayBuffer:{value:x(`__builtin_response_array_buffer`),writable:!0,configurable:!0},json:{value:x(`__builtin_response_json`),writable:!0,configurable:!0},text:{value:x(`__builtin_response_text`),writable:!0,configurable:!0}});class P{type;url;status;statusText;body;headers;redirected;constructor(e,t){if(this.status=t?.status??200,this.statusText=t?.statusText??``,this.headers=new p.Headers(t?.headers),this.type=`default`,this.url=``,this.redirected=!1,e!=null&&(this.status===204||this.status===205||this.status===304))throw TypeError(`Response constructor: Invalid response status code ${this.status}`);e==null?this.body=null:this.body=Object.create(p.ReadableStream.prototype,{[Nt]:{value:e,writable:!1}})}clone;blob;formData;get ok(){return this.status>=200&&this.status<300}get bodyUsed(){return!1}arrayBuffer;json;text;async bytes(){return new Uint8Array(await this.arrayBuffer())}static json(e,t){let n=JSON.stringify(e),r=new p.Headers(t?.headers);return r.has(`content-type`)||r.set(`content-type`,`application/json`),new P(n,{...t,headers:r})}static error(){Ie()}static redirect(e,t=302){if(![301,302,303,307,308].includes(t))throw RangeError(`Invalid redirect status code: ${t}. Must be one of: 301, 302, 303, 307, 308`);let n=new p.Headers;n.set(`Location`,String(e));let r=Object.create(P.prototype);return r.status=t,r.statusText=``,r.headers=n,r.body=null,r.type=`default`,r.url=``,r.redirected=!1,r}}p.Response=P,Object.defineProperties(P.prototype,{arrayBuffer:{value:x(`__builtin_response_array_buffer`),writable:!0,configurable:!0},json:{value:x(`__builtin_response_json`),writable:!0,configurable:!0},text:{value:x(`__builtin_response_text`),writable:!0,configurable:!0}});class I{constructor(){Ie()}get locked(){return!1}cancel(){Ie()}getReader(){Ie()}pipeThrough(){Ie()}pipeTo(){Ie()}tee(){Ie()}values(){Ie()}static from(){Ie()}[Symbol.asyncIterator](){Ie()}}p.ReadableStream=I;class ee{constructor(){Ie()}get locked(){return!1}abort(){Ie()}close(){Ie()}getWriter(){Ie()}}p.WritableStream=ee;class L{readable;writable;constructor(){Ie()}}p.TransformStream=L,p.console=globalThis.console;let te=Symbol.for(`@vercel/request-context`);p[te]=globalThis[te];let R=o(t.workflowName)?.moduleSpecifier||t.workflowName;_v(e,R,f);let ne=_v(`globalThis.__private_workflows?.get(${JSON.stringify(t.workflowName)})`,R,f);if(typeof ne!=`function`)throw new A(t.workflowName);let z=[];b.promiseQueue=b.promiseQueue.then(async()=>{z=await Rt(t.input,t.runId,i,p)}),await b.promiseQueue,s?.setAttributes({...F(z.length)});try{let e=await Promise.race([ne(...z),h.promise]),n=await _n(e,t.runId,i,p,!1,(t.specVersion??0)>=5);return s?.setAttributes({...ze(typeof e)}),await Sv(t.runId,b.invocationsQueue,p,t,`completed`),n}catch(e){throw N.is(e)||E.is(e)||await Sv(t.runId,b.invocationsQueue,p,t,`failed`),e}})}function wv(e){return k.is(e)?f.RUNTIME_ERROR:yr(e)?f.WORLD_CONTRACT_ERROR:null}async function Tv({world:e,workflowRun:t,runId:n,requestId:r,err:i,errorCode:a,logMessage:o}){W.error(o,{workflowRunId:n,errorCode:a,error:i instanceof Error?i.message:String(i)});try{let o=Vt(e,t??n);await e.events.create(n,{eventType:`run_failed`,specVersion:5,eventData:{error:await Et(i,n,await o(),globalThis,(t?.specVersion??0)>=5),errorCode:a}},{requestId:r})}catch(e){if(T.is(e)||b.is(e))return;if(yr(e)){W.error(`Fatal world contract error while recording workflow failure`,{workflowRunId:n,errorCode:f.WORLD_CONTRACT_ERROR,error:e instanceof Error?e.message:String(e)});return}throw e}}function Ev(e,t){let n=e.find(e=>e.runId===t&&(e.eventType===`run_completed`||e.eventType===`run_failed`||e.eventType===`run_cancelled`));return n?(W.debug(`Run reached terminal event, exiting`,{workflowRunId:t,eventType:n.eventType,eventId:n.eventId}),!0):!1}function Dv(e){let t=new Set,n=new Set;for(let r of e)r.eventType===`hook_disposed`?t.add(r.correlationId):r.eventType===`wait_completed`&&n.add(r.correlationId);for(let r of e)if(r.eventType===`hook_created`&&!t.has(r.correlationId)||r.eventType===`wait_created`&&!n.has(r.correlationId))return!0;return!1}function Ov(e,t){let n=Number(process.env.WORKFLOW_V2_TIMEOUT_MS)||12e4,r=qe(t?.namespace),a=Sn(`workflow`,r),s=t=>t.createQueueHandler(a,async(s,c)=>{let l=un(s);if(l){await qt(l,`workflow`,t.specVersion);return}let{runId:u,traceCarrier:d,requestedAt:p,stepId:m,stepName:h,replayDivergence:g,runInput:_}=Re.parse(s),v=ve(d)?d:void 0,{requestId:x}=c,S=c.queueName.slice(a.length),C=W.forRun(u,S);if(c.attempt>48){let e=Cr(void 0,f.MAX_DELIVERIES_EXCEEDED);C.error(`Workflow handler exceeded max deliveries (${c.attempt}/48)`,{attempt:c.attempt,errorCode:e.errorCode,errorAttribution:e.attribution});try{let e=await mg(),t=Vt(e,u),n=new y(`Workflow exceeded maximum queue deliveries (${c.attempt}/48)`);await e.events.create(u,{eventType:`run_failed`,specVersion:5,eventData:{error:await Et(n,u,await t()),errorCode:f.MAX_DELIVERIES_EXCEEDED}},{requestId:x})}catch(e){if(T.is(e)||b.is(e))return;C.error(`Failed to mark run as failed after ${c.attempt} delivery attempts. A persistent error is preventing the run from being terminated. The run will remain in its current state until manually resolved. This is most likely due to a persistent outage of the workflow backend or a bug in the workflow runtime and should be reported to the Workflow team.`,{attempt:c.attempt,errorName:e instanceof Error?e.name:`UnknownError`,errorMessage:e instanceof Error?e.message:String(e),errorStack:e instanceof Error?e.stack:void 0})}return}let w=B(),O=()=>Ue(w,v),A=await fe(w,v),j=new _g,M=w===`continuous`?v:void 0,P=await Ye(`CONSUMER`);return await Qe(M,async()=>await it({workflowRunId:u,workflowName:S},async()=>{let t=await tt(`workflow.route.get_world`,async()=>mg());return tt(`workflow.execute ${i(S)}`,{kind:P,links:A},async i=>{i?.setAttributes({...ge(S),...Ce(`execute_v2`),...bt(`vercel-queue`),..._t(c.queueName),...Ht(c.messageId),...fn(`process`),...Mt({requestedAt:p}),...Ze(u),...rt(!!v),..._e(w)});let a=Date.now(),s=0,l=null,d=null,A=U_(),M=null,P,F=-1,I,ee,L=Pr()&&_!==void 0&&c.attempt===1&&m===void 0&&!g;i?.setAttributes(et(L));let te,R=async()=>{if(te)try{await te}catch{}},ne=async e=>{if(!L)return{timeoutSeconds:e};await vt(t,ut(S,r),{runId:u,traceCarrier:await O(),requestedAt:new Date},e>0?{delaySeconds:e}:void 0)};if(m&&h)try{let e=await t.runs.get(u);if(e.status!==`running`){W.debug(`Run already finished, skipping background step`,{workflowRunId:u,status:e.status});return}let n=e.startedAt?+e.startedAt:Date.now();j.pause();let i;try{i=await jg({world:t,workflowRunId:u,workflowDeploymentId:e.deploymentId,workflowName:S,workflowStartedAt:n,stepId:m,stepName:h,runSpecVersion:e.specVersion})}finally{j.resume()}if(i.type===`retry`||i.type===`throttled`)return{timeoutSeconds:i.timeoutSeconds};if(i.type===`completed`&&i.hasPendingOps){await vt(t,ut(S,r),{runId:u,traceCarrier:await O(),requestedAt:new Date});return}if(i.type===`completed`||i.type===`failed`||i.type===`skipped`){let t=await ht(u);l=t.events,d=t.cursor;let r=new Set,i=new Set;for(let e of l)e.eventType===`step_created`?r.add(e.correlationId):(e.eventType===`step_completed`||e.eventType===`step_failed`)&&i.add(e.correlationId);let a=!1;for(let e of r)if(!i.has(e)){a=!0;break}if(a){W.debug(`Background step done but other steps pending, returning`,{workflowRunId:u});return}W.debug(`All parallel steps done, replaying inline after background step`,{workflowRunId:u}),P=e,F=n}else return}catch(e){let n=wv(e);if(!n)throw e;await Tv({world:t,workflowRun:P,runId:u,requestId:x,err:e,errorCode:n,logMessage:`Fatal error while preparing background workflow step`});return}if(!P){let e={eventType:`run_started`,specVersion:_?.specVersion??5,..._?{eventData:{input:_.input,deploymentId:_.deploymentId,workflowName:_.workflowName,executionContext:_.executionContext,attributes:_.attributes,allowReservedAttributes:_.allowReservedAttributes}}:{}},n=e=>{i?.addEvent(`workflow.run_started.create.start`,{"workflow.run_started.skip_preload":e})};if(L&&_){n(!0);let r=t.events.create(u,e,{requestId:x,skipPreload:!0});te=r,r.catch(()=>{}),I=[];let a=new Date;P={runId:u,status:`running`,deploymentId:_.deploymentId,workflowName:_.workflowName,specVersion:_.specVersion,executionContext:_.executionContext,input:_.input,attributes:_.attributes??{},startedAt:a,createdAt:a,updatedAt:a},F=+a,i?.setAttributes({...de(`running`),...be(F)})}else{try{n(!1);let r=await t.events.create(u,e,{requestId:x});if(!r.run)throw new k(`Event creation for 'run_started' did not return the run entity for run "${u}"`);if(P=r.run,r.events&&r.events.length>0&&r.hasMore!==!0&&(I=r.events,ee=r.cursor),!P.startedAt)throw new k(`Workflow run "${u}" has no "startedAt" timestamp`)}catch(e){if(T.is(e)||b.is(e)){W.info(`Run already finished during setup, skipping`,{workflowRunId:u,message:e.message});return}else{let n=wv(e);if(!n)throw e;await Tv({world:t,workflowRun:P,runId:u,requestId:x,err:e,errorCode:n,logMessage:`Fatal runtime error during workflow setup`});return}}if(F=+P.startedAt,i?.setAttributes({...de(P.status),...be(F)}),P.status!==`running`){W.info(`Workflow already completed or failed, skipping`,{workflowRunId:u,status:P.status});return}}}let re=await Vt(t,P)();for(;;){if(s++,j.isExhausted()){await vg({runId:u,workflowName:S,requestId:x,attempt:c.attempt,limitMs:j.configuredLimitMs});return}if(Date.now()-a>=n){W.info(`V2 timeout reached, re-scheduling workflow`,{workflowRunId:u,loopIteration:s,elapsedMs:Date.now()-a}),await vt(t,ut(S,r),{runId:u,traceCarrier:await O(),requestedAt:new Date});return}let p=0,m=null;try{let n;if(M&&l){let e=M;if(M=null,e.events.length>0){let t=new Set(l.map(e=>e.eventId));for(let n of e.events)t.has(n.eventId)||(t.add(n.eventId),l.push(n))}d=e.cursor??d,n=l}else if(l===null)if(I)n=I,d=ee??null;else{let e=await ht(u);n=e.events,d=e.cursor}else if(d){let e=await ht(u,d);if(e.events.length>0){let t=new Set(l.map(e=>e.eventId));for(let n of e.events)t.has(n.eventId)||(t.add(n.eventId),l.push(n))}d=e.cursor??d,n=l}else if(I){W.debug(`No cursor after preloaded-events first iteration; doing full reload to pick up cursor.`,{workflowRunId:u});let e=await ht(u);l=e.events,d=e.cursor,n=l}else{W.warn(`Event cursor missing after initial load — falling back to full reload. This indicates a bug in the World implementation.`,{workflowRunId:u});let e=await ht(u);l=e.events,d=e.cursor,n=l}if(Ev(n,u))return;let r=Date.now(),a=new Set(n.filter(e=>e.eventType===`wait_completed`).map(e=>e.correlationId)),o=n.filter(e=>e.eventType===`wait_created`&&e.correlationId!==void 0&&!a.has(e.correlationId)&&r>=e.eventData.resumeAt.getTime()).map(e=>({eventType:`wait_completed`,specVersion:5,correlationId:e.correlationId,eventData:{resumeAt:e.eventData.resumeAt}}));for(let e of o)try{await t.events.create(u,e,{requestId:x})}catch(t){if(T.is(t)){W.info(`Wait already completed, skipping`,{workflowRunId:u,correlationId:e.correlationId});continue}throw t}if(o.length>0)if(d){let e=await ht(u,d),t=new Set(e.events.filter(e=>e.eventType===`wait_completed`).map(e=>e.correlationId));if(o.every(e=>t.has(e.correlationId))){let t=new Set(n.map(e=>e.eventId));for(let r of e.events)t.has(r.eventId)||(t.add(r.eventId),n.push(r));d=e.cursor??d}else{let e=await ht(u);n=e.events,d=e.cursor}}else{let e=await ht(u);n=e.events,d=e.cursor}if(Ev(n,u))return;l=n,m=d,W.debug(`Starting workflow replay`,{workflowRunId:u,loopIteration:s,eventCount:n.length}),p=Date.now();let c=await Cv(e,P,n,re,A);W.debug(`Workflow replay completed`,{workflowRunId:u,loopIteration:s,replayMs:Date.now()-p});try{await R(),await t.events.create(u,{eventType:`run_completed`,specVersion:5,eventData:{output:c}},{requestId:x})}catch(e){if(T.is(e)||b.is(e)){W.info(`Tried completing workflow run, but run has already finished.`,{workflowRunId:u,message:e.message});return}throw e}i?.setAttributes({...de(`completed`)});return}catch(n){if(N.is(n)){W.debug(`Workflow suspended`,{workflowRunId:u,loopIteration:s,replayMs:Date.now()-p,steps:n.stepCount,hooks:n.hookCount,waits:n.waitCount});let e=se(n.stepCount,n.hookCount,n.waitCount);e&&W.debug(e);let a=Date.now(),o;try{o=await Ng({suspension:n,world:t,run:P,span:i,requestId:x,runReadyBarrier:te})}catch(e){if(!y.is(e))throw e;let n=br(e);W.error(`Non-retryable error while committing workflow suspension; failing run`,{workflowRunId:u,errorCode:n,errorName:e.name,errorMessage:e.message});try{await R(),await t.events.create(u,{eventType:`run_failed`,specVersion:5,eventData:{error:await Et(e,u,re,globalThis,(P?.specVersion??0)>=5),errorCode:n}},{requestId:x})}catch(e){if(T.is(e)||b.is(e)){W.info(`Tried failing workflow run, but run has already finished.`,{workflowRunId:u,message:e.message});return}throw e}i?.setAttributes({...de(`failed`),...Lt(n),...Oe(e.name),...Ee(e.message),...ln(e.name)});return}if(W.debug(`Suspension handled`,{workflowRunId:u,suspensionMs:Date.now()-a,pendingSteps:o.pendingSteps.length,timeoutSeconds:o.waitTimeout?.seconds,hasHookConflict:o.hasHookConflict,hasAwaitedHookCreation:o.hasAwaitedHookCreation,hasAttributeEvents:o.hasAttributeEvents}),o.hasHookConflict||o.hasAttributeEvents)return await ne(0);let c=o.pendingSteps,d=o.lazyInlineSteps,f=new Set(d.map(e=>e.correlationId)),h=await O(),g=[];for(let e of c)f.has(e.correlationId)||g.push(vt(t,ut(S,r),{runId:u,stepId:e.correlationId,stepName:e.stepName,traceCarrier:h,requestedAt:new Date},{idempotencyKey:e.correlationId}));if(o.waitTimeout&&g.push(vt(t,ut(S,r),{runId:u,traceCarrier:h,requestedAt:new Date},Ig(o.waitTimeout.seconds,o.waitTimeout.correlationId))),await Promise.all(g),d.length===0)return o.hasAwaitedHookCreation?await ne(0):void 0;let _=typeof m==`string`&&n.stepCount===1&&n.hookCount===0&&n.waitCount===0&&c.length===1&&d.length===1&&!o.waitTimeout&&!Dv(l??[]),v=L&&!o.waitTimeout&&!o.hasHookEvents&&!o.hasAttributeEvents&&!o.hasAwaitedHookCreation&&!Dv(l??[]);j.pause();let C;try{C=await Promise.all(d.map(e=>jg({world:t,workflowRunId:u,workflowDeploymentId:P.deploymentId,workflowName:S,workflowStartedAt:F,stepId:e.correlationId,stepName:e.stepName,runSpecVersion:P.specVersion,lazyStepInput:e.dehydratedInput,forceOptimisticStart:v,runReadyBarrier:te,..._&&m?{inlineDeltaSinceCursor:m}:{}})))}finally{j.resume()}let w=[],E=!1,D;for(let e=0;e<d.length;e++){let t=C[e],n=d[e];t.type===`retry`?w.push({step:n,delaySeconds:t.timeoutSeconds}):t.type===`throttled`?D=Math.max(D??0,t.timeoutSeconds):t.type===`completed`&&t.hasPendingOps&&(E=!0)}if(D!==void 0)return await ne(D);if(w.length>0){let e=await O();await Promise.all(w.map(({step:n,delaySeconds:i})=>vt(t,ut(S,r),{runId:u,stepId:n.correlationId,stepName:n.stepName,traceCarrier:e,requestedAt:new Date},{delaySeconds:i,idempotencyKey:n.correlationId})))}if(E){W.debug(`Breaking loop: inline step has pending ops`,{workflowRunId:u,loopIteration:s}),await vt(t,ut(S,r),{runId:u,traceCarrier:await O(),requestedAt:new Date});return}if(w.length>0)return;if(d.length===1){let e=C[0];e.type===`completed`&&e.inlineDelta&&!e.inlineDelta.hasMore&&(M={events:e.inlineDelta.events,cursor:e.inlineDelta.cursor})}}else{let a=n;if(E.is(n)){let e=(g?.count??0)+1;if(e<=3){C.warn(`Workflow replay diverged; queueing a recovery replay before declaring the event log corrupted`,{errorCode:f.REPLAY_DIVERGENCE,divergenceEventId:n.eventId,priorDivergenceEventId:g?.eventId,divergenceCount:e,deliveryAttempt:c.attempt,maxRecoveryReplays:3,errorMessage:n.message}),await vt(t,ut(S,r),{runId:u,traceCarrier:await O(),requestedAt:new Date,replayDivergence:{eventId:n.eventId,count:e}});return}a=new D(`Workflow replay diverged ${e} times after 3 recovery replays; latest divergent event was ${n.eventId}. Last divergence: ${n.message}`,{cause:n})}a instanceof Error&&i?.recordException?.(a);let s=await Tg(a),l=s.name||yg(a),d=s.message,p=s.stack||bg(a);if(p){let t=o(S)?.moduleSpecifier||S;p=B_(p,t,e)}let m=br(a);W.error(`Error while running workflow`,{workflowRunId:u,errorCode:m,errorName:l,errorStack:p}),Gn.isNativeError(a)&&p&&(a.stack=p);try{await R(),await t.events.create(u,{eventType:`run_failed`,specVersion:5,eventData:{error:await Et(a,u,re,globalThis,(P?.specVersion??0)>=5),errorCode:m}},{requestId:x})}catch(e){if(T.is(e)||b.is(e)){W.info(`Tried failing workflow run, but run has already finished.`,{workflowRunId:u,message:e.message});return}if(yr(e)){W.error(`Fatal world contract error while recording workflow failure`,{workflowRunId:u,errorCode:f.WORLD_CONTRACT_ERROR,error:e instanceof Error?e.message:String(e)});return}throw e}i?.setAttributes({...de(`failed`),...Lt(m),...Oe(l),...Ee(d),...ln(l)});return}}}})}))}),c,l=0,u=Date.now(),d=typeof t?.routeModuleBodyStartedAt==`number`?u-t.routeModuleBodyStartedAt:void 0;return Ct(async e=>{l+=1;let t=c!==void 0;return tt(`workflow.route.flow`,{kind:await Ye(`SERVER`),attributes:{...Ge(`flow`),...L(t),...Je(l),...Cn(Date.now()-u),...d===void 0?{}:pe(d),...pt(e.method),...on(`/.well-known/workflow/v1/flow`)}},async t=>{c||=await tt(`workflow.route.init`,async()=>s(await tt(`workflow.route.get_world_handlers`,async()=>pg())));let n=await c(e);return n instanceof Response&&t?.setAttributes(Yt(n.status)),n})})}export{zn as Run,N as WorkflowSuspension,Ln as cancelRun,fg as createWorld,An as getHookByToken,Fn as getRun,mg as getWorld,pg as getWorldHandlers,rn as healthCheck,cc as i,Nn as listStreams,Iu as n,mc as r,jn as readStream,In as recreateRunFromExisting,Rn as reenqueueRun,On as resumeHook,kn as resumeWebhook,hg as setWorld,Pn as start,Hu as t,Mn as wakeUpRun,Ov as workflowEntrypoint};
|
|
138
|
+
`);function k(e){var t=_(i.join(e,`prebuilds`)).map(b).filter(x(f,d)).sort(S)[0];if(t)return A(i.join(e,`prebuilds`,t.name))}function A(e){var t=_(e).map(C).filter(w(u,l)).sort(E(u))[0];if(t)return i.join(e,t.file)}};function _(e){try{return r.readdirSync(e)}catch{return[]}}function v(e,t){var n=_(e).filter(t);return n[0]&&i.join(e,n[0])}function y(e){return/\.node$/.test(e)}function b(e){var t=e.split(`-`);if(t.length===2){var n=t[0],r=t[1].split(`+`);if(n&&r.length&&r.every(Boolean))return{name:e,platform:n,architectures:r}}}function x(e,t){return function(n){return n==null||n.platform!==e?!1:n.architectures.includes(t)}}function S(e,t){return e.architectures.length-t.architectures.length}function C(e){var t=e.split(`.`),n=t.pop(),r={file:e,specificity:0};if(n===`node`){for(var i=0;i<t.length;i++){var a=t[i];if(a===`node`||a===`electron`||a===`node-webkit`)r.runtime=a;else if(a===`napi`)r.napi=!0;else if(a.slice(0,3)===`abi`)r.abi=a.slice(3);else if(a.slice(0,2)===`uv`)r.uv=a.slice(2);else if(a.slice(0,4)===`armv`)r.armv=a.slice(4);else if(a===`glibc`||a===`musl`)r.libc=a;else continue;r.specificity++}return r}}function w(e,t){return function(n){return!(n==null||n.runtime!==e&&!T(n)||n.abi!==t&&!n.napi||n.uv&&n.uv!==h||n.armv&&n.armv!==m||n.libc&&n.libc!==p)}}function T(e){return e.runtime===`node`&&e.napi}function E(e){return function(t,n){return t.runtime===n.runtime?t.abi===n.abi?t.specificity===n.specificity?0:t.specificity>n.specificity?-1:1:t.abi?-1:1:t.runtime===e?-1:1}}function D(){return process.versions&&process.versions.electron||process.env.ELECTRON_RUN_AS_NODE?!0:typeof window<`u`&&window.process&&window.process.type===`renderer`}function O(e){if(e!==`linux`)return!1;let{familySync:t,MUSL:n}=Ym();return t()===n}g.parseTags=C,g.matchTags=w,g.compareTags=E,g.parseTuple=b,g.matchTuple=x,g.compareTuples=S})),Zm=n(((e,t)=>{t.exports=Xm()(__dirname)}));if(!(process.env.CBOR_NATIVE_ACCELERATION_DISABLED!==void 0&&process.env.CBOR_NATIVE_ACCELERATION_DISABLED.toLowerCase()===`true`)){let e;try{e=typeof t==`function`?Zm():pr(import.meta.url)(`cbor-extract`),e&&zp(e.extractStrings)}catch{}}const Qm=`5.0.0-beta.22`,$m=new Set([`GET`,`HEAD`]),eh=new Set([`UND_ERR_REQ_RETRY`,`UND_ERR_SOCKET`,`UND_ERR_CONNECT`,`UND_ERR_CONNECT_TIMEOUT`,`UND_ERR_HEADERS_TIMEOUT`,`UND_ERR_BODY_TIMEOUT`,`UND_ERR_CLOSED`,`ECONNRESET`,`ECONNREFUSED`,`ENOTFOUND`,`EAI_AGAIN`,`EPIPE`]);function th(e){let t=e;for(let e=0;t!=null&&e<5;e++){if(typeof t==`object`&&`code`in t){let e=t.code;if(typeof e==`string`&&eh.has(e))return e}t=t?.cause}}const nh=()=>process.env.VERCEL_WORKFLOW_SERVER_URL||``;function rh(e){return e}const ih=()=>{let e=process.env.VERCEL_DEPLOYMENT_ID;return e?`@workflow/world-vercel/${Qm} node-${process.version} ${mr.platform()} (${mr.arch()}) ${e}`:`@workflow/world-vercel/${Qm} node-${process.version} ${mr.platform()} (${mr.arch()})`},ah=e=>{let t=e?.projectConfig,n=nh()||`https://vercel-workflow.com`,r=process.env.WORKFLOW_VERCEL_BACKEND_URL,i=!!(t?.projectId&&t?.teamId);return{baseUrl:i?r||`https://api.vercel.com/v1/workflow`:`${n}/api`,usingProxy:i}},oh=(e,t)=>{let n=e?.projectConfig,r=new Headers(e?.headers);r.set(`User-Agent`,ih()),n&&(r.set(`x-vercel-environment`,n.environment||`production`),n.projectId&&r.set(`x-vercel-project-id`,n.projectId),n.teamId&&r.set(`x-vercel-team-id`,n.teamId));let i=nh();return i&&t.usingProxy&&r.set(`x-vercel-workflow-api-url`,i),r};async function sh(e){let{baseUrl:t,usingProxy:n}=ah(e),r=oh(e,{usingProxy:n});if(n){if(!e?.token)throw Error(`world-vercel: api-workflow proxy requested (${t}) but no Vercel auth token was provided. Pass one as \`config.token\` (the SDK reads it from \`WORKFLOW_VERCEL_AUTH_TOKEN\`).`);r.set(`Authorization`,`Bearer ${e.token}`)}else{let t;try{t=await(0,Oc.getVercelOidcToken)()}catch{}let n=e?.token??t;n&&r.set(`Authorization`,`Bearer ${n}`),t&&r.set(`x-vercel-trusted-oidc-idp-token`,t)}return{baseUrl:t,headers:r,usingProxy:n}}async function ch({endpoint:e,options:t={},config:n={},schema:r,data:i,onResponse:a}){let o=t.method||`GET`,{baseUrl:s,headers:c}=await sh(n),l=`${s}${e}`;return Nc(`http ${o}`,{kind:await Pc(`CLIENT`)},async s=>{s?.setAttributes(cl({method:o,url:l,peerService:`workflow-server`})),c.set(`Accept`,`application/cbor`),await Fc(c);let u;i!==void 0&&(c.set(`Content-Type`,`application/cbor`),u=Bm(i));let d=$m.has(o.toUpperCase()),f,m=``;for(let r=0;;r++){c.set(`X-Request-Time`,Date.now().toString());let i=AbortSignal.timeout(Xc),h=t.signal?AbortSignal.any([t.signal,i]):i,g=new Request(l,{...t,body:u,headers:c,signal:h}),_=Date.now(),v;try{v=await fetch(g,{dispatcher:pc(n)})}catch(t){let n=Date.now()-_;if(t instanceof Error&&(t.name===`TimeoutError`||t.name===`AbortError`)){let r=new p(`${o} ${e} timed out after ${n}ms`,{url:l,code:`TIMEOUT`,cause:t});throw s?.setAttributes({...Hc(`TIMEOUT`)}),s?.recordException?.(r),r}let r=th(t);if(r){let i=new p(`${o} ${e} transport failure after ${n}ms (${r})`,{url:l,code:`TRANSPORT`,cause:t});throw s?.setAttributes({...Hc(`TRANSPORT`)}),s?.recordException?.(i),i}throw t}let y=Date.now()-_;if(m=el(v.headers),tl(o,e,v,y),s?.setAttributes({...Vc(v.status)}),!v.ok){let t=await uh(v).then(e=>e.data).catch(()=>({}));nl(g.method,l,c);let n=rl(v.headers.get(`Retry-After`)),r=(t.message||`${g.method} ${e} -> HTTP ${v.status}: ${v.statusText}`)+m,i=il(v.status,r,{url:l,code:t.code,retryAfter:n,mitigated:v.headers.get(`x-vercel-mitigated`)});throw s?.setAttributes({...Hc(t.code||`HTTP ${v.status}`)}),s?.recordException?.(i),i}a?.(v);try{f=await Nc(`world.parse`,async e=>{let t=await uh(v),n=(v.headers.get(`Content-Type`)||``).includes(`application/cbor`);return e?.setAttributes({...Uc(n?`cbor`:`json`)}),t});break}catch(t){if(d&&r<2){let n=100*2**r;s?.setAttributes({...Hc(`PARSE_ERROR_RETRYING`)}),Zc&&console.debug(`[workflow:world-vercel:http] ${o} ${e} body parse failed (attempt ${r+1}/3); retrying in ${n}ms: ${t}`),await new Promise(e=>setTimeout(e,n));continue}let n=v.headers.get(`Content-Type`)||`unknown`;throw new p(`Failed to parse response body for ${o} ${e}${m} (Content-Type: ${n}):\n\n${t}`,{url:l,code:`PARSE_ERROR`,cause:t})}}return await Nc(`world.validate`,async()=>{let t=r.safeParse(f.data);if(!t.success){let n=t.error.issues.map(e=>` ${e.path.length>0?e.path.join(`.`):`<root>`}: ${e.message}`).join(`
|
|
139
|
+
`),r=process.env.DEBUG?`\n\nResponse context: ${f.getDebugContext()}`:``;throw new p(`Schema validation failed for ${o} ${e}${m}:\n${n}${r}`,{url:l,code:`SCHEMA_VALIDATION`,cause:t.error})}return t.data})})}function lh(e){let t=Wn(e,{depth:3,maxArrayLength:10,breakLength:120});return t.length>500?`${t.slice(0,500)}...`:t}async function uh(e){let t=e.headers.get(`Content-Type`)||``;if(t.includes(`application/cbor`)){let n=await e.arrayBuffer(),r=dm(new Uint8Array(n));return{data:r,getDebugContext:()=>`Content-Type: ${t}, ${n.byteLength} bytes (CBOR), preview: ${lh(r)}`}}let n=await e.text(),r=JSON.parse(n);return{data:r,getDebugContext:()=>`Content-Type: ${t}, ${n.length} bytes, preview: ${lh(r)}`}}var dh=class{contentType=`application/cbor`;serialize(e){return Buffer.from(Bm(e))}async deserialize(e){let t=[],n=e.getReader();for(;;){let{done:e,value:r}=await n.read();if(e)break;r&&t.push(r)}return dm(Buffer.concat(t))}},fh=class{contentType=`application/json`;serialize(e){return Buffer.from(JSON.stringify(e))}async deserialize(e){let t=[],n=e.getReader();for(;;){let{done:e,value:r}=await n.read();if(e)break;r&&t.push(r)}return JSON.parse(Buffer.concat(t).toString())}},ph=class{contentType=`application/cbor`;serialize(e){return Buffer.from(Bm(e))}async deserialize(e){let t=[],n=e.getReader();for(;;){let{done:e,value:r}=await n.read();if(e)break;r&&t.push(r)}let r=Buffer.concat(t);try{return dm(r)}catch{return JSON.parse(r.toString())}}};const mh=new qn,hh=en({payload:pe,queueName:be,deploymentId:ut().optional()}),gh=Number(process.env.VERCEL_QUEUE_MAX_DELAY_SECONDS||82800);function _h(e){let t=Math.min(Math.max(1,2**(e-1)),900),n=Math.floor(Math.random()*(Math.ceil(t*.25)+1));return Math.max(1,t-n)}function vh(e){let t={};return`runId`in e&&typeof e.runId==`string`&&(t[`x-vercel-workflow-run-id`]=e.runId),`workflowRunId`in e&&typeof e.workflowRunId==`string`&&(t[`x-vercel-workflow-run-id`]=e.workflowRunId),`stepId`in e&&typeof e.stepId==`string`&&(t[`x-vercel-workflow-step-id`]=e.stepId),Object.keys(t).length>0?t:void 0}function yh(e){let{baseUrl:t,usingProxy:n}=ah(e),r=oh(e,{usingProxy:n}),i=new dh,a=new fh,o=new ph,s={region:`iad1`,dispatcher:pc(e),transport:o,...n&&{resolveBaseUrl:()=>new URL(`${t}/queues-proxy`),token:e?.token},headers:Object.fromEntries(r.entries())},c=async(e,t,n)=>{let r=n?.deploymentId??process.env.VERCEL_DEPLOYMENT_ID;if(!r)throw Error(`No deploymentId provided and VERCEL_DEPLOYMENT_ID environment variable is not set. Queue messages require a deployment ID to route correctly. Either set VERCEL_DEPLOYMENT_ID or provide deploymentId in options.`);let o=(n?.specVersion??5)>=3?i:a,c=new lp({...s,deploymentId:r,transport:o}),l={payload:t,queueName:e,deploymentId:n?.deploymentId},u=e.replace(/[^A-Za-z0-9-_]/g,`-`);try{let{messageId:e}=await c.send(u,l,{idempotencyKey:n?.idempotencyKey,delaySeconds:n?.delaySeconds,headers:{...vh(t),...n?.headers}});return{messageId:e?oe.parse(e):null}}catch(e){if(e instanceof Od)return{messageId:oe.parse(`msg_duplicate_${e.idempotencyKey??n?.idempotencyKey??`unknown`}`)};throw e}};return{queue:c,createQueueHandler:(e,t)=>{let n=new lp(s).handleCallback(async(e,n)=>{if(!e||!n)return;let r=mh.getStore(),{payload:i,queueName:a,deploymentId:o}=hh.parse(e),s=await t(i,{queueName:a,messageId:oe.parse(n.messageId),attempt:n.deliveryCount,requestId:r});typeof s?.timeoutSeconds==`number`&&await c(a,i,{deploymentId:o,delaySeconds:s.timeoutSeconds>0?Math.min(s.timeoutSeconds,gh):void 0})},{retry:(e,{deliveryCount:t})=>({afterSeconds:_h(t)})});return async e=>{let t=e.headers.get(`x-vercel-id`)?.trim()||void 0;return mh.run(t,()=>n(e))}},getDeploymentId:async()=>{let e=process.env.VERCEL_DEPLOYMENT_ID;if(!e)throw Error(`VERCEL_DEPLOYMENT_ID environment variable is not set`);return e}}}const bh=en({id:ut()});function xh(e){return async function(){let t=process.env.VERCEL_DEPLOYMENT_ID;if(!t)throw Error(`Cannot resolve latest deployment: VERCEL_DEPLOYMENT_ID environment variable is not set`);let n=await ol(e);if(!n)throw Error(`Cannot resolve latest deployment: no OIDC token or VERCEL_TOKEN available`);let r=await(await ll({method:`GET`,url:`https://api.vercel.com/v1/workflow/resolve-latest-deployment/${encodeURIComponent(t)}`,headers:new Headers({Authorization:`Bearer ${n}`}),dispatcher:pc(e),peerService:`vercel-api`,timeoutMs:null,buildError:async e=>{let n;try{n=await e.text()}catch{n=`<unable to read response body>`}return Error(`Failed to resolve latest deployment for ${t}: HTTP ${e.status} ${e.statusText}${n?` — ${n}`:``}`)}})).json(),i=bh.safeParse(r);if(!i.success)throw Error(`Invalid response from Vercel API: expected { id: string }. Zod error: ${i.error.message}`);return i.data.id}}const Sh={run_created:{retryable:!0,reason:`conditional create → 409 if exists`},step_created:{retryable:!0,reason:`conditional create → 409 if exists`},wait_created:{retryable:!0,reason:`conditional create → 409 if exists`},hook_created:{retryable:!0,reason:`transactional token uniqueness → 409 if exists`},run_started:{retryable:!0,reason:`early-returns if already running, no duplicate row`},run_completed:{retryable:!0,reason:`terminal-state guard → 409, no duplicate row`},run_failed:{retryable:!0,reason:`terminal-state guard → 409, no duplicate row`},run_cancelled:{retryable:!0,reason:`terminal-state guard → 409, no duplicate row`},step_completed:{retryable:!0,reason:`terminal-state guard → 409, no duplicate row`},step_failed:{retryable:!0,reason:`terminal-state guard → 409, no duplicate row`},wait_completed:{retryable:!0,reason:`waiting-state guard → 409, no duplicate row`},hook_disposed:{retryable:!0,reason:`conditional delete (exists) → 409, no duplicate row`},attr_set:{retryable:!0,reason:`correlationId constraint reuses eventId (idempotent replay)`},step_started:{retryable:!1,reason:`unconditional attempt increment → a retry double-counts attempts`},step_retrying:{retryable:!1,reason:`no duplicate guard → a retry appends a second event row`},hook_received:{retryable:!1,reason:`no server guard → a retry duplicates the row / re-delivers payload`},hook_conflict:{retryable:!1,reason:`server-originated; never POSTed by the SDK`}},Ch=new Set([`ECONNRESET`,`ECONNREFUSED`,`ENOTFOUND`,`ENETDOWN`,`ENETUNREACH`,`EHOSTDOWN`,`EHOSTUNREACH`,`EPIPE`,`ETIMEDOUT`,`UND_ERR_SOCKET`,`UND_ERR_REQ_RETRY`,`UND_ERR_CONNECT_TIMEOUT`,`UND_ERR_HEADERS_TIMEOUT`,`UND_ERR_BODY_TIMEOUT`,`TimeoutError`,`RequestRetryError`]);function wh(e,t=0){if(t>5||typeof e!=`object`||!e)return[];let n=[],r=e;return typeof r.code==`string`&&n.push(r.code),typeof r.name==`string`&&n.push(r.name),r.cause&&n.push(...wh(r.cause,t+1)),n}function Th(e){if(C.is(e)||y.is(e)||_.is(e)||b.is(e))return!1;if(p.is(e)){if(e.code===`PARSE_ERROR`)return!0;if(typeof e.status==`number`)return e.status>=500&&e.status<=599}return wh(e).some(e=>Ch.has(e))}const Eh=e=>new Promise(t=>setTimeout(t,e)),Dh=typeof process<`u`&&typeof process.env.DEBUG==`string`&&(process.env.DEBUG.includes(`workflow:`)||process.env.DEBUG===`*`);function Oh(e,t){if(!Dh)return;let n=Object.entries(t).map(([e,t])=>`${e}=${t}`).join(` `);console.debug(`[workflow:world-vercel:event-retry] ${e} ${n}`)}function kh(e){return p.is(e)?e.code??(e.status==null?e.name:`status_${e.status}`):wh(e)[0]??(e instanceof Error?e.name:`unknown`)}async function Ah(e,t){let n=Sh[t]?.retryable??!1;for(let r=0;;r++)try{return await e()}catch(e){let i=n&&Th(e);if(i&&r<2){let n=100*2**r+Math.floor(Math.random()*50);Oh(`retrying event POST after transient failure`,{eventType:t,attempt:r+1,backoffMs:n,error:kh(e)}),await Eh(n);continue}throw i&&Oh(`exhausted in-process retries; surfacing for queue redelivery`,{eventType:t,attempts:r+1,error:kh(e)}),e}}const jh=`application/vnd.workflow.v4-frames`;function Mh(e,t){let n=new Uint8Array(Bm(e)),r=new Uint8Array(4+n.byteLength+4+t.byteLength),i=new DataView(r.buffer);return i.setUint32(0,n.byteLength,!1),r.set(n,4),i.setUint32(4+n.byteLength,t.byteLength,!1),r.set(t,4+n.byteLength+4),r}async function*Nh(e){let t=Symbol.asyncIterator in e?e[Symbol.asyncIterator]():Ph(e.getReader()),n=new Uint8Array,r=async e=>{for(;n.byteLength<e;){let{done:e,value:r}=await t.next();if(e)return!1;if(!r||r.byteLength===0)continue;let i=new Uint8Array(n.byteLength+r.byteLength);i.set(n,0),i.set(r,n.byteLength),n=i}return!0},i=e=>{let t=n.subarray(0,e);return n=n.subarray(e),t};for(;;){if(!await r(4))return;let e=new DataView(n.buffer,n.byteOffset,4).getUint32(0,!1);if(i(4),!await r(e))throw Error(`decodeFrames: truncated meta block`);let t=dm(i(e));if(!await r(4))throw Error(`decodeFrames: truncated body length`);let a=new DataView(n.buffer,n.byteOffset,4).getUint32(0,!1);if(i(4),a>0){if(!await r(a))throw Error(`decodeFrames: truncated body bytes`);yield{meta:t,body:n.slice(0,a)},i(a)}else yield{meta:t,body:new Uint8Array};if(t._end===1)return}}async function*Ph(e){for(;;){let{done:t,value:n}=await e.read();if(t)return;n&&(yield n)}}async function Fh(e,t,n,r){return ll({method:t.method,url:e,headers:t.headers,body:t.body,dispatcher:mc(n),timeoutMs:null,logLabel:r,buildError:async t=>zh(t.status,Ih(t.headers),await t.text(),r,e)})}function Ih(e){let t={};return e.forEach((e,n)=>{t[n]=e}),t}const Lh={eventId:`x-wf-event-id`,runId:`x-wf-run-id`,createdAt:`x-wf-created-at`};function Rh(e){let t={eventType:e.eventType,specVersion:e.specVersion};return e.correlationId!==void 0&&(t.correlationId=e.correlationId),e.vercelId!==void 0&&(t.vercelId=e.vercelId),e.occurredAt!==void 0&&(t.occurredAt=e.occurredAt),e.remoteRefBehavior!==void 0&&(t.remoteRefBehavior=e.remoteRefBehavior),e.deploymentId!==void 0&&(t.deploymentId=e.deploymentId),e.workflowName!==void 0&&(t.workflowName=e.workflowName),e.stepName!==void 0&&(t.stepName=e.stepName),e.attempt!==void 0&&(t.attempt=e.attempt),e.resumeAt!==void 0&&(t.resumeAt=e.resumeAt),e.retryAfter!==void 0&&(t.retryAfter=e.retryAfter),e.hookToken!==void 0&&(t.hookToken=e.hookToken),e.hookIsWebhook!==void 0&&(t.hookIsWebhook=e.hookIsWebhook),e.hookIsSystem!==void 0&&(t.hookIsSystem=e.hookIsSystem),e.errorCode!==void 0&&(t.errorCode=e.errorCode),e.executionContext!==void 0&&(t.executionContext=e.executionContext),e.attributes!==void 0&&(t.attributes=e.attributes),e.changes!==void 0&&(t.changes=e.changes),e.writer!==void 0&&(t.writer=e.writer),e.allowReservedAttributes!==void 0&&(t.allowReservedAttributes=e.allowReservedAttributes),e.sinceCursor!==void 0&&(t.sinceCursor=e.sinceCursor),e.skipPreload!==void 0&&(t.skipPreload=e.skipPreload),t}function zh(e,t,n,r,i){let a=`v4 ${r} failed: HTTP ${e}`,o;try{let e=JSON.parse(n);typeof e.message==`string`&&(a=e.message),typeof e.code==`string`&&(o=e.code)}catch{n&&(a+=` ${n}`)}let s=rl(Vh(t,`retry-after`));return il(e,a,{retryAfter:s,code:o,url:i,mitigated:Vh(t,`x-vercel-mitigated`)})}async function Bh(e,t){let{baseUrl:n,headers:r}=await sh(t),i=new Headers(r);i.set(`Content-Type`,`application/octet-stream`);let a=Mh(Rh(e),e.payload??new Uint8Array),o=await Fh(`${n}/v4/runs/${encodeURIComponent(e.runId)}/events/${encodeURIComponent(e.eventType)}`,{method:`POST`,headers:i,body:a},t,`createEvent`),s=o.headers.get(Lh.eventId),c=o.headers.get(Lh.runId),l=o.headers.get(Lh.createdAt);if(typeof s!=`string`||typeof c!=`string`||typeof l!=`string`)throw Error(`v4 createEvent: response missing required x-wf-* headers`);let u=new Uint8Array(await o.arrayBuffer());return{eventId:s,runId:c,createdAt:l,body:u.byteLength>0?dm(u):{}}}function Vh(e,t){let n=e[t];if(typeof n==`string`)return n;if(Array.isArray(n)&&n.length>0)return n[0]}async function Hh(e,t,n){let{baseUrl:r,headers:i}=await sh(n),a=await Fh(`${r}/v4/runs/${encodeURIComponent(e)}/events/${encodeURIComponent(t)}`,{method:`GET`,headers:i},n,`getEvent`),o=a.headers.get(`content-type`);if(!o?.startsWith(`application/vnd.workflow.v4-frames`))throw Error(`v4 getEvent: expected ${jh}, got ${o??`(none)`}`);let s=a.body;for await(let e of Nh(s))return{event:e.meta,body:e.body};throw Error(`v4 getEvent: empty frame stream for ${t}`)}async function Uh(e,t,n,r){let i=await Fh(e,{method:`GET`,headers:t},n,r),a=i.headers.get(`content-type`);if(!a?.startsWith(`application/vnd.workflow.v4-frames`))throw Error(`v4 ${r}: expected ${jh}, got ${a??`(none)`}`);let o=i.body,s=[],c,l,u=!1;for await(let e of Nh(o)){if(e.meta._end===1){typeof e.meta.next==`string`&&(c=e.meta.next),typeof e.meta.hasMore==`boolean`&&(l=e.meta.hasMore),u=!0;break}s.push({event:e.meta,body:e.body})}if(!u)throw Error(`v4 ${r}: frame stream ended without the end-of-stream sentinel (${s.length} events read) — truncated response?`);return{events:s,...c?{next:c}:{},...l===void 0?{}:{hasMore:l}}}function Wh(e,t){t.cursor&&e.set(`cursor`,t.cursor),t.limit!==void 0&&e.set(`limit`,String(t.limit)),t.sortOrder&&e.set(`sortOrder`,t.sortOrder),t.remoteRefBehavior&&e.set(`remoteRefBehavior`,t.remoteRefBehavior)}function Gh(e){let t=new URLSearchParams;Wh(t,e);let n=t.toString();return n?`?${n}`:``}async function Kh(e,t={},n){let{baseUrl:r,headers:i}=await sh(n);return Uh(`${r}/v4/runs/${encodeURIComponent(e)}/events`+Gh(t),i,n,`listEvents`)}async function qh(e,t={},n){let{baseUrl:r,headers:i}=await sh(n),a=new URLSearchParams;return a.set(`correlationId`,e),Wh(a,t),Uh(`${r}/v4/events?${a.toString()}`,i,n,`listEventsByCorrelationId`)}const Jh=Ce.omit({error:!0,errorCode:!0}).extend({error:Kt([_e,A()]).optional(),errorCode:ut().optional(),blobStorageBytes:Wt().optional(),streamStorageBytes:Wt().optional()}),Yh=Jh,Xh=Jh.omit({input:!0,output:!0}).extend({inputRef:A().optional(),outputRef:A().optional(),input:Kt([Ne(Uint8Array),A()]).optional(),output:Kt([Ne(Uint8Array),A()]).optional()});function Zh(e,t){if(t===`none`){let{inputRef:t,outputRef:n,...r}=e;return{...rh(r),input:void 0,output:void 0}}return rh(e)}async function Qh(e={},t){let{workflowName:n,status:r,pagination:i,resolveData:a=`all`}=e,o=new URLSearchParams;n&&o.set(`workflowName`,n),r&&o.set(`status`,r),i?.limit&&o.set(`limit`,i.limit.toString()),i?.cursor&&o.set(`cursor`,i.cursor),i?.sortOrder&&o.set(`sortOrder`,i.sortOrder);let s=a===`none`?`lazy`:`resolve`;o.set(`remoteRefBehavior`,s);let c=o.toString(),l=await ch({endpoint:`/v2/runs${c?`?${c}`:``}`,options:{method:`GET`},config:t,schema:Pt(s===`lazy`?Xh:Yh)});return{...l,data:l.data.map(e=>Zh(e,a))}}async function $h(e,t){return rh(await ch({endpoint:`/v1/runs/create`,options:{method:`POST`},data:e,config:t,schema:Yh}))}async function eg(e,t,n){let r=t?.resolveData??`all`,i=r===`none`?`lazy`:`resolve`,a=new URLSearchParams;a.set(`remoteRefBehavior`,i);let o=a.toString(),s=`/v2/runs/${encodeURIComponent(e)}${o?`?${o}`:``}`;try{return Zh(await ch({endpoint:s,options:{method:`GET`},config:n,schema:i===`lazy`?Xh:Yh}),r)}catch(t){throw t instanceof p&&t.status===404?new d(e):t}}async function tg(e,t,n){let r=t?.resolveData??`all`,i=r===`none`?`lazy`:`resolve`,a=new URLSearchParams;a.set(`remoteRefBehavior`,i);let o=a.toString(),s=`/v1/runs/${encodeURIComponent(e)}/cancel${o?`?${o}`:``}`;try{return Zh(await ch({endpoint:s,options:{method:`PUT`},config:n,schema:i===`lazy`?Xh:Yh}),r)}catch(t){throw t instanceof p&&t.status===404?new d(e):t}}const ng=en({attributes:Mt(ut(),ut())});async function rg(e,t,n,r){try{return{attributes:(await ch({endpoint:`/v2/runs/${encodeURIComponent(e)}/attributes`,options:{method:`POST`},data:n?.allowReservedAttributes?{changes:t,allowReservedAttributes:!0}:{changes:t},config:r,schema:ng})).attributes}}catch(t){throw t instanceof p&&t.status===404?new d(e):t}}const ig=Oe.omit({error:!0}).extend({error:Kt([_e,A()]).optional(),errorRef:A().optional()}),ag=ig.omit({input:!0,output:!0}).extend({inputRef:A().optional(),outputRef:A().optional(),input:Ne(Uint8Array).optional(),output:Ne(Uint8Array).optional()});function og(e){let{error:t,errorRef:n,...r}=e,i={...r},a=t??n;return a!=null&&(i.error=a),i}function sg(e,t){if(t===`none`){let{inputRef:t,outputRef:n,...r}=e;return{...og(r),input:void 0,output:void 0}}return og(e)}async function cg(e,t){let{runId:n,pagination:r,resolveData:i=`all`}=e,a=new URLSearchParams;r?.cursor&&a.set(`cursor`,r.cursor),r?.limit&&a.set(`limit`,r.limit.toString()),r?.sortOrder&&a.set(`sortOrder`,r.sortOrder);let o=i===`none`?`lazy`:`resolve`;a.set(`remoteRefBehavior`,o);let s=a.toString(),c=await ch({endpoint:`/v2/runs/${encodeURIComponent(n)}/steps${s?`?${s}`:``}`,options:{method:`GET`},config:t,schema:Pt(o===`lazy`?ag:ig)});return{...c,data:c.data.map(e=>sg(e,i))}}async function lg(e,t,n,r){let i=n?.resolveData??`all`,a=i===`none`?`lazy`:`resolve`,o=new URLSearchParams;o.set(`remoteRefBehavior`,a);let s=o.toString();return sg(await ch({endpoint:`/v2/runs/${encodeURIComponent(e)}/steps/${encodeURIComponent(t)}${s?`?${s}`:``}`,options:{method:`GET`},config:r,schema:a===`lazy`?ag:ig}),i)}const ug={run_created:`input`,run_started:`input`,run_completed:`output`,run_failed:`error`,step_created:`input`,step_started:`input`,step_completed:`result`,step_failed:`error`,step_retrying:`error`,hook_created:`metadata`,hook_received:`payload`};function dg(e){return ug[e]}const fg=new Set([`run_created`,`run_started`,`step_started`]),pg=new Set([`hook_disposed`,`hook_received`]);function mg(e){let t=e.eventData??{},n=dg(e.eventType),r={};if(typeof t.deploymentId==`string`&&(r.deploymentId=t.deploymentId),typeof t.workflowName==`string`&&(r.workflowName=t.workflowName),typeof t.stepName==`string`&&(r.stepName=t.stepName),typeof t.attempt==`number`&&(r.attempt=t.attempt),t.resumeAt instanceof Date)r.resumeAt=t.resumeAt;else if(typeof t.resumeAt==`string`){let e=new Date(t.resumeAt);Number.isNaN(e.getTime())||(r.resumeAt=e)}if(t.retryAfter instanceof Date)r.retryAfter=t.retryAfter;else if(typeof t.retryAfter==`string`){let e=new Date(t.retryAfter);Number.isNaN(e.getTime())||(r.retryAfter=e)}typeof t.token==`string`&&(r.hookToken=t.token),typeof t.isWebhook==`boolean`&&(r.hookIsWebhook=t.isWebhook),typeof t.isSystem==`boolean`&&(r.hookIsSystem=t.isSystem),typeof t.errorCode==`string`&&(r.errorCode=t.errorCode),t.executionContext!==void 0&&t.executionContext!==null&&typeof t.executionContext==`object`&&(r.executionContext=t.executionContext),t.attributes!==void 0&&t.attributes!==null&&typeof t.attributes==`object`&&(r.attributes=t.attributes),Array.isArray(t.changes)&&(r.changes=t.changes),t.writer!==void 0&&t.writer!==null&&typeof t.writer==`object`&&(r.writer=t.writer),typeof t.allowReservedAttributes==`boolean`&&(r.allowReservedAttributes=t.allowReservedAttributes);let i;if(n&&n in t){let r=t[n];if(r!==void 0){if(!(r instanceof Uint8Array))throw TypeError(`world-vercel v4: eventData.${n} for ${e.eventType} must be a Uint8Array (the runtime's dehydrated wire form); got ${typeof r==`object`?r===null?`null`:r.constructor?.name??typeof r:typeof r}.`);i=r}}return{payload:i,meta:r}}function hg(e){let t=He.safeParse(e);return t.success?t.data:(Je.safeParse(e.eventType).success&&console.debug(`[workflow:world-vercel] v4 event ${e.eventId} failed EventSchema parse for known eventType '${e.eventType}'; passing through unparsed: ${t.error.message}`),e)}function gg(e,t,n){let r=e.eventData??{};if(t.byteLength>0){let n=dg(e.eventType);n&&(r[n]=t)}let i=hg({eventId:e.eventId,runId:e.runId,eventType:e.eventType,createdAt:e.createdAt instanceof Date?e.createdAt:new Date(e.createdAt),...e.occurredAt===void 0?{}:{occurredAt:e.occurredAt instanceof Date?e.occurredAt:new Date(e.occurredAt)},...e.correlationId?{correlationId:e.correlationId}:{},eventData:r,...e.specVersion===void 0?{}:{specVersion:e.specVersion}});return n===`none`?B(i,`none`):i}async function _g(e,t,n,r){let i=n?.resolveData??`all`,{event:a,body:o}=await Hh(e,t,r);return gg(a,o,i)}async function vg(e,t){let{pagination:n,resolveData:r=`all`}=e,i={cursor:n?.cursor??void 0,limit:n?.limit,sortOrder:n?.sortOrder,remoteRefBehavior:r===`none`?`lazy`:`resolve`},a=await(`correlationId`in e?qh(e.correlationId,i,t):Kh(e.runId,i,t));return{data:a.events.map(e=>gg(e.event,e.body,r)),cursor:a.next??null,hasMore:typeof a.hasMore==`boolean`?a.hasMore:!!a.next}}async function yg(e,t,n,r){try{return await Ah(()=>bg(e,t,n,r),t.eventType)}catch(e){throw pg.has(t.eventType)&&p.is(e)&&e.status===404&&t.correlationId?new S(t.correlationId):e}}async function bg(e,t,n,r){if(n?.v1Compat){if(t.eventType===`run_cancelled`&&e)return{run:await tg(e,n,r)};if(t.eventType===`run_created`)return{run:await $h(t.eventData,r)};if(e===null)throw new p(`world-vercel: v1Compat=true requires a runId for ${t.eventType}`,{status:400});return{event:await ch({endpoint:`/v1/runs/${encodeURIComponent(e)}/events`,options:{method:`POST`},data:t,config:r,schema:He})}}if(e===null)throw new p(`world-vercel v4: createWorkflowRunEvent requires a client-generated runId for run_created (the runId is part of the payload storage ref key). Generate a wrun_ ULID before calling.`,{status:400});if(t.eventType===`run_created`){let t=ze(e,`wrun_`);if(t)throw new p(t,{status:400})}let i=fg.has(t.eventType)?`resolve`:`lazy`,{payload:a,meta:o}=mg(t),s=await Bh({runId:e,eventType:t.eventType,specVersion:t.specVersion??2,...t.correlationId?{correlationId:t.correlationId}:{},...n?.requestId?{vercelId:n.requestId}:{},occurredAt:n?.occurredAt??new Date,...n?.sinceCursor?{sinceCursor:n.sinceCursor}:{},...n?.skipPreload?{skipPreload:!0}:{},remoteRefBehavior:i,payload:a,...o},r),c=n?.resolveData??`all`,l=s.body;return{event:l.event?B(hg(l.event),c):void 0,run:l.run?rh(l.run):void 0,step:l.step?og(l.step):void 0,hook:l.hook,wait:l.wait,events:l.events?l.events.map(hg):void 0,cursor:l.cursor??void 0,hasMore:l.hasMore,...l.stepCreated?{stepCreated:!0}:{}}}function xg(e,t){if(t===`none`){let{metadataRef:t,...n}=e;return n}return e}const Sg=ue.omit({metadata:!0}).extend({metadataRef:Ze.any().optional()});async function Cg(e,t){let{runId:n,pagination:r,resolveData:i=`all`}=e,a=new URLSearchParams;r?.limit&&a.set(`limit`,r.limit.toString()),r?.cursor&&a.set(`cursor`,r.cursor),r?.sortOrder&&a.set(`sortOrder`,r.sortOrder);let o=i===`none`?`lazy`:`resolve`;a.set(`remoteRefBehavior`,o),n&&a.set(`runId`,n);let s=a.toString(),c=await ch({endpoint:`/v2/hooks${s?`?${s}`:``}`,options:{method:`GET`},config:t,schema:Pt(o===`lazy`?Sg:ue)});return{...c,data:c.data.map(e=>xg(e,i))}}async function wg(e,t,n){let r=t?.resolveData||`all`;return xg(await ch({endpoint:`/v2/hooks/${encodeURIComponent(e)}`,options:{method:`GET`},config:n,schema:ue}),r)}async function Tg(e,t){try{return await ch({endpoint:`/v2/hooks/by-token?token=${encodeURIComponent(e)}`,options:{method:`GET`},config:t,schema:ue})}catch(t){throw p.is(t)&&t.status===404?new S(e):t}}function Eg(e){let t={runs:{get:((t,n)=>eg(t,n,e)),list:(t=>Qh(t,e)),experimentalSetAttributes:(t,n,r)=>rg(t,n,r,e)},steps:{get:((t,n,r)=>lg(t,n,r,e)),list:(t=>cg(t,e))},events:{create:(t,n,r)=>yg(t,n,r,e),get:(t,n,r)=>_g(t,n,r,e),list:t=>vg(t,e),listByCorrelationId:t=>vg(t,e)},hooks:{get:(t,n)=>wg(t,n,e),getByToken:t=>Tg(t,e),list:t=>Cg(t,e)}};return{runs:xl(`world.runs`,t.runs),steps:xl(`world.steps`,t.steps),events:xl(`world.events`,t.events),hooks:xl(`world.hooks`,t.hooks)}}const Dg=1e3;function Og(e,t,n){return new URL(`${n.baseUrl}/v2/runs/${encodeURIComponent(t)}/stream/${encodeURIComponent(e)}`)}function kg(e,t,n){return new URL(`${n.baseUrl}/v3/runs/${encodeURIComponent(t)}/stream/${encodeURIComponent(e)}`)}function Ag(e,t,n,r){let i=[`PUT ${t.origin}${t.pathname}`,...$c(n.headers)];return Error(`Stream ${e} failed: HTTP ${n.status} (${i.join(`; `)}): ${r}`)}function jg(e){let t=new TextEncoder,n=[],r=0;for(let i of e){let e=typeof i==`string`?t.encode(i):i;n.push(e),r+=4+e.length}let i=new Uint8Array(r),a=new DataView(i.buffer),o=0;for(let e of n)a.setUint32(o,e.length,!1),o+=4,i.set(e,o),o+=e.length;return i}const Mg=en({tailIndex:Wt(),done:on()}),Ng=en({data:yt(en({index:Wt(),data:Ne(Uint8Array)})),cursor:ut().nullable(),hasMore:on(),done:on()});function Pg(e){return{streams:{async write(t,n,r){let i=await t,a=await sh(e),o=Og(n,i,a);await(await ll({method:`PUT`,url:o.toString(),body:r,headers:a.headers,dispatcher:hc(e),timeoutMs:null,logLabel:o.pathname,buildError:async e=>Ag(`write`,o,e,await e.text())})).text()},async writeMulti(t,n,r){if(r.length===0)return;let i=await t,a=await sh(e);a.headers.set(`X-Stream-Multi`,`true`);for(let t=0;t<r.length;t+=Dg){let o=jg(r.slice(t,t+Dg)),s=Og(n,i,a);await(await ll({method:`PUT`,url:s.toString(),body:o,headers:a.headers,dispatcher:hc(e),timeoutMs:null,logLabel:s.pathname,buildError:async e=>Ag(`write`,s,e,await e.text())})).text()}},async close(t,n){let r=await t,i=await sh(e);i.headers.set(`X-Stream-Done`,`true`);let a=Og(n,r,i);await(await ll({method:`PUT`,url:a.toString(),headers:i.headers,dispatcher:hc(e),timeoutMs:null,logLabel:a.pathname,buildError:async e=>Ag(`close`,a,e,await e.text())})).text()},async get(t,n,r){let i=await sh(e),a=kg(n,t,i);typeof r==`number`&&a.searchParams.set(`startIndex`,String(r));let o=await ll({method:`GET`,url:a.toString(),headers:i.headers,dispatcher:void 0,timeoutMs:null,logLabel:a.pathname,buildError:e=>Error(`Failed to fetch stream: ${e.status}`)});if(!o.body)throw Error(`No response body for stream`);return o.body},async getChunks(t,n,r){let i=new URLSearchParams;r?.limit!=null&&i.set(`limit`,String(r.limit)),r?.cursor&&i.set(`cursor`,r.cursor);let a=i.toString();return ch({endpoint:`/v2/runs/${encodeURIComponent(t)}/streams/${encodeURIComponent(n)}/chunks${a?`?${a}`:``}`,config:e,schema:Ng})},async getInfo(t,n){return ch({endpoint:`/v2/runs/${encodeURIComponent(t)}/streams/${encodeURIComponent(n)}/info`,config:e,schema:Mg})},async list(t){let n=await sh(e),r=new URL(`${n.baseUrl}/v2/runs/${encodeURIComponent(t)}/streams`);return await(await ll({method:`GET`,url:r.toString(),headers:n.headers,dispatcher:void 0,timeoutMs:null,logLabel:r.pathname,buildError:e=>Error(`Failed to list streams: ${e.status}`)})).json()}}}}function Fg(e){let t=e?.projectConfig?.projectId||process.env.VERCEL_PROJECT_ID;return{specVersion:5,processExitTriggersQueueRedelivery:!0,...yh(e),...Eg(e),...xl(`world.streams`,Pg(e)),getEncryptionKeyForRun:fl(t,e?.projectConfig?.teamId,e?.token,e?.dispatcher),resolveLatestDeploymentId:xh(e)}}function Ig(){try{return Vn(Yn(process.cwd()+`/package.json`).href)}catch{return Vn(import.meta.url)}}const Lg=Symbol.for(`@workflow/world//cache`),Rg=Symbol.for(`@workflow/world//stubbedCache`),zg=Symbol.for(`@workflow/world//cachePromise`),Bg=Symbol.for(`@workflow/world//stubbedCachePromise`),Vg=globalThis;function Hg(e){if(e.startsWith(`file://`))return e;if(e.startsWith(`/`))return Yn(e).href;if(e.startsWith(`./`)||e.startsWith(`../`))return Yn(process.cwd()+`/`+e).href;try{return Yn(Ig().resolve(e)).href}catch{return e}}const Ug=async()=>{let e=s();if(l(e)){let e=[`WORKFLOW_VERCEL_PROJECT`,`WORKFLOW_VERCEL_TEAM`,`WORKFLOW_VERCEL_AUTH_TOKEN`,`WORKFLOW_VERCEL_ENV`].filter(e=>process.env[e]);return e.length>0&&process.env.VERCEL===`1`&&console.warn(`[workflow] Warning: ${e.join(`, `)} env var(s) are set but have no effect at runtime. These are only used by the Workflow CLI. Remove them from your Vercel project environment variables.`),Fg()}if(e===`local`)return ic({dataDir:process.env.WORKFLOW_LOCAL_DATA_DIR});let t;try{t=Ig()(e)}catch{t=await import(Hg(e))}if(typeof t==`function`)return t();if(typeof t.default==`function`)return t.default();if(typeof t.createWorld==`function`)return t.createWorld();throw Error(`Invalid target world module: ${e}, must export a default function or createWorld function that returns a World instance.`)},Wg=async()=>{if(Vg[Rg])return Vg[Rg];Vg[Bg]||(Vg[Bg]=Ug().catch(e=>{throw Vg[Bg]=void 0,e}));let e=await Vg[Bg];return Vg[Rg]=e,{createQueueHandler:e.createQueueHandler,specVersion:e.specVersion}},Gg=async()=>Vg[Lg]?Vg[Lg]:(Vg[zg]||(Vg[zg]=Ug().catch(e=>{throw Vg[zg]=void 0,e})),Vg[Lg]=await Vg[zg],Vg[Lg]),Kg=e=>{Vg[Lg]=e,Vg[Rg]=e,Vg[zg]=void 0,Vg[Bg]=void 0},qg=Symbol.for(`@workflow/world//getWorldFn`);globalThis[qg]??=Gg;var Jg=class{limitMs;elapsedMs=0;intervalStart;constructor(e=Er()){this.limitMs=e,this.intervalStart=Date.now()}get configuredLimitMs(){return this.limitMs}elapsed(){let e=this.intervalStart===null?0:Date.now()-this.intervalStart;return this.elapsedMs+e}pause(){this.intervalStart!==null&&(this.elapsedMs+=Date.now()-this.intervalStart,this.intervalStart=null)}resume(){this.intervalStart=Date.now()}isExhausted(){return this.elapsed()>=this.limitMs}};async function Yg(e){let{runId:t,workflowName:n,requestId:r,attempt:i,limitMs:a}=e,o=W.forRun(t,n),s=await Gg();if(s.processExitTriggersQueueRedelivery!==!0){o.warn(`Workflow replay exceeded timeout; current World does not support process exit for redelivery — failing the run and returning`,{timeoutMs:a,attempt:i});try{let e=zt(s,t),n=new v(`Workflow replay exceeded maximum duration (${a/1e3}s)`);await s.events.create(t,{eventType:`run_failed`,specVersion:5,eventData:{error:await wt(n,t,await e()),errorCode:f.REPLAY_TIMEOUT}},{requestId:r})}catch(e){o.warn(`Unable to mark run as failed`,{attempt:i,errorName:e instanceof Error?e.name:`UnknownError`,errorMessage:e instanceof Error?e.message:String(e)})}return}i<=3&&(o.warn(`Workflow replay exceeded timeout but will be re-attempted (attempt < maxRetries)`,{timeoutMs:a,attempt:i,maxRetries:3}),process.exit(1));let c=br(void 0,f.REPLAY_TIMEOUT);o.error(`Workflow replay exceeded timeout and max retries exceeded. Failing the run`,{timeoutMs:a,attempt:i,maxRetries:3,errorCode:c.errorCode,errorAttribution:c.attribution});try{let e=zt(s,t),n=new v(`Workflow replay exceeded maximum duration (${a/1e3}s) after ${i} attempts`);await s.events.create(t,{eventType:`run_failed`,specVersion:5,eventData:{error:await wt(n,t,await e()),errorCode:f.REPLAY_TIMEOUT}},{requestId:r})}catch(e){o.warn(`Unable to mark run as failed. The queue will continue to retry`,{attempt:i,errorName:e instanceof Error?e.name:`UnknownError`,errorMessage:e instanceof Error?e.message:String(e),errorStack:e instanceof Error?e.stack:void 0})}process.exit(1)}function Xg(e){return Kn.isNativeError(e)?e.name:`Error`}function Zg(e){return Kn.isNativeError(e)?e.stack??``:``}function Qg(e){return typeof e==`object`&&!!e&&`name`in e&&e.name===`AbortError`&&`message`in e&&typeof e.message==`string`&&(!(`stack`in e)||e.stack===void 0||typeof e.stack==`string`)}function $g(e){if(!Qg(e)||v.is(e))return e;let t=new v(`Aborted: ${e.message}`);return e.stack&&(t.stack=e.stack),t}function e_(e){return typeof e==`object`&&!!e&&`then`in e&&typeof e.then==`function`}function t_(e){if(Kn.isNativeError(e))return{name:e.name,message:e.message,stack:e.stack??``};if(typeof e==`string`)return{name:`Error`,message:e,stack:``};try{return{name:`Error`,message:JSON.stringify(e),stack:``}}catch{return{name:`Error`,message:String(e),stack:``}}}async function n_(e){if(e_(e))try{let t=await n_(await e);return{...t,message:`Promise rejection: ${t.message}`}}catch(e){let t=await n_(e);return{...t,message:`Promise rejection: ${t.message}`}}return t_(e)}let r_,i_,a_;async function o_(){if(i_!==void 0)return i_;if(a_)return a_;if(!r_)try{let e=[`@workflow/utils`,`get-port`].join(`/`);r_=Vn(Yn(process.cwd()+`/package.json`).href)(e).getPort}catch{r_=async()=>void 0}return a_=(r_??(async()=>void 0))().then(e=>(typeof e==`number`&&(i_=e),e)).finally(()=>{a_=void 0}),a_}function s_(e,t){if(t&&!(!e.events||e.cursor===void 0))return{events:e.events,cursor:e.cursor,hasMore:e.hasMore??!1}}async function c_(e){let{world:t,workflowRunId:n,workflowName:r,workflowStartedAt:i,stepId:o,stepName:s}=e,c=process.env.VERCEL_URL!==void 0,l=(e.runSpecVersion??0)>=5;return $e(`step.execute ${u(s)}`,{},async u=>{u?.setAttributes({...Re(s),...me(r),...Ye(n),...ft(o)});let d=zt(t,n),f=Cn(s);if(!f||typeof f!=`function`){let i=`Step "${s}" is not registered in the current deployment. This usually indicates a build or bundling issue that caused the step to not be included in the deployment.`;if(W.error(`Step function not registered, failing step`,{workflowRunId:n,stepName:s,stepId:o}),e.lazyStepInput!==void 0)try{e.runReadyBarrier&&await e.runReadyBarrier.catch(()=>{}),await t.events.create(n,{eventType:`step_started`,specVersion:5,correlationId:o,eventData:{stepName:s,workflowName:r,input:e.lazyStepInput}})}catch(e){if(C.is(e))return{type:`skipped`};if(y.is(e))return{type:`gone`};throw e}try{await t.events.create(n,{eventType:`step_failed`,specVersion:5,correlationId:o,eventData:{stepName:s,error:await dn(new v(i),n,await d(),[],globalThis,l)}})}catch(e){if(C.is(e))return{type:`skipped`};throw e}return u?.setAttributes({...Rt(`failed`),...yn(!0)}),{type:`failed`}}let p=f.maxRetries??3;u?.setAttributes({..._n(p)});let m=e=>{if(b.is(e)){let t=Math.max(1,typeof e.retryAfter==`number`?e.retryAfter:1);return W.info(`Throttled on step_started, deferring`,{retryAfterSeconds:t}),{type:`throttled`,timeoutSeconds:t}}if(y.is(e))return W.info(`Workflow run "${n}" has already completed, skipping step "${o}": ${e.message}`),{type:`gone`};if(C.is(e))return W.debug(`Step in terminal state, skipping`,{stepName:s,stepId:o,workflowRunId:n,error:e instanceof Error?e.message:String(e)}),u?.setAttributes({...ke(!0),...ne(`completed`)}),{type:`skipped`};if(_.is(e)){let t=Math.max(1,e.retryAfter??1);return W.debug(`Step retryAfter timestamp not yet reached`,{stepName:s,stepId:o,timeoutSeconds:t}),{type:`retry`,timeoutSeconds:t}}},g=e.lazyStepInput!==void 0&&(kr()||e.forceOptimisticStart===!0&&!Ar()),x,S,w=async()=>{if(!S)return;let e=await S;if(e.ok)return;let t=m(e.err);if(!t)throw e.err;return t};if(g){S=(e.runReadyBarrier??Promise.resolve()).then(()=>t.events.create(n,{eventType:`step_started`,specVersion:5,correlationId:o,eventData:{stepName:s,workflowName:r,input:e.lazyStepInput}})).then(()=>({ok:!0}),e=>({ok:!1,err:e}));let i=new Date;x={runId:n,stepId:o,stepName:s,status:`running`,input:e.lazyStepInput,attempt:1,startedAt:i,createdAt:i,updatedAt:i}}else try{let i=await t.events.create(n,{eventType:`step_started`,specVersion:5,correlationId:o,eventData:e.lazyStepInput===void 0?{stepName:s}:{stepName:s,workflowName:r,input:e.lazyStepInput}});if(!i.step)throw new D(`step_started event for "${o}" did not return step entity`);x=i.step}catch(e){let t=m(e);if(t)return t;throw e}W.debug(`Step execution details`,{stepName:s,stepId:x.stepId,status:x.status,attempt:x.attempt}),u?.setAttributes({...Rt(x.status)});let T;if(x.attempt>p+1&&x.error){let e=x.attempt-1,r=`Step "${s}" exceeded max retries (${e} ${a(`retry`,`retries`,e)})`;P.error(`Step exceeded max retries`,{workflowRunId:n,stepName:s,retryCount:e});let i=new v(r);if(x.error!=null)try{i.cause=await te(x.error,n,await d())}catch{}try{await t.events.create(n,{eventType:`step_failed`,specVersion:5,correlationId:o,eventData:{stepName:s,error:await dn(i,n,await d(),[],globalThis,l)}})}catch(e){if(C.is(e))return W.info(`Tried failing step, but step has already finished.`,{workflowRunId:n,stepId:o,stepName:s,message:e.message}),{type:`skipped`};throw e}return u?.setAttributes({...Rt(`failed`),...mn(!0)}),{type:`failed`}}let E=[],O=[],A=!0;try{let t=x.attempt;if(!x.startedAt)throw new D(`Step "${o}" has no "startedAt" timestamp`);let a=x.startedAt,p=e.encryptionKey??await d(),m=await $e(`step.hydrate`,{},async t=>{let r=Date.now(),i=await re(x.input,n,p,O,globalThis,{},e.workflowDeploymentId),a=Date.now()-r;return t?.setAttributes({...kt(i.args.length),...Ct(a)}),i}),h=m.args,_=m.thisVal??null,v=c?void 0:await o_(),y=Date.now();T=await $e(`step.execute`,{},async()=>await Fe.run({stepMetadata:{stepName:s,stepId:o,stepStartedAt:new Date(+a),attempt:t},workflowMetadata:{workflowName:r,workflowRunId:n,workflowStartedAt:new Date(+i),url:c?`https://${process.env.VERCEL_URL}`:`http://localhost:${v??3e3}`,features:{encryption:!!p}},workflowDeploymentId:e.workflowDeploymentId,ops:O,preCompletionOps:E,closureVars:m.closureVars,encryptionKey:p,runReadyBarrier:g?e.runReadyBarrier:void 0},()=>f.apply(_,h)));let b=Date.now()-y;if(u?.setAttributes({...Xt(b)}),T=await $e(`step.dehydrate`,{},async t=>{let r=Date.now(),i=await vn(T,n,p,O,globalThis,!1,!1,l,g?e.runReadyBarrier:void 0),a=Date.now()-r;return t?.setAttributes({...Ht(a),...L(typeof i)}),i}),O.length>0){let e=Promise.all(O);Ut(e,e=>{W.warn(`Background flush of step stream ops failed`,{workflowRunId:n,stepId:o,error:e instanceof Error?e.message:String(e)})}),A=await Promise.race([e.then(()=>!0,e=>{if(e?.name===`AbortError`||e?.name===`ResponseAborted`)return!0;throw e}),new Promise(e=>setTimeout(()=>e(!1),500))])}if(g){let e=await w();if(e)return e}E.length>0&&await Promise.all(E).catch(()=>{})}catch(e){if(g){let e=await w();if(e)return e}E.length>0&&await Promise.all(E).catch(()=>{});let r=$g(e),i=await n_(r),c=i.stack||Zg(r)||``;r instanceof Error&&u?.recordException?.(r);let f=v.is(r);if(u?.setAttributes({...fn(Xg(r)),...st(i.message),...sn(Xg(r)),...k(f?`fatal`:h.is(r)?`retryable`:`transient`),...bt(!f)}),y.is(e))return P.info(`Workflow run already completed, skipping step`,{workflowRunId:n,stepId:o,message:e.message}),{type:`gone`};if(f){P.error(`Encountered FatalError while executing step, bubbling up to parent workflow`,{workflowRunId:n,stepName:s,errorStack:c}),Kn.isNativeError(r)&&c&&(r.stack=c);try{await t.events.create(n,{eventType:`step_failed`,specVersion:5,correlationId:o,eventData:{stepName:s,error:await dn(r,n,await d(),[],globalThis,l)}})}catch(e){if(C.is(e))return W.info(`Tried failing step, but step has already finished.`,{workflowRunId:n,stepId:o,stepName:s,message:e.message}),{type:`skipped`};throw e}return u?.setAttributes({...Rt(`failed`),...yn(!0)}),{type:`failed`}}let m=x.attempt;if(u?.setAttributes({...Et(m),..._n(p)}),m>=p+1){let r=x.attempt-1;P.error(`Max retries reached, bubbling error to parent workflow`,{workflowRunId:n,stepName:s,attempt:x.attempt,retryCount:r,errorStack:c});let f=new v(`Step "${s}" failed after ${p} ${a(`retry`,`retries`,p)}: ${i.message}`);f.cause=e,c&&(f.stack=c);try{await t.events.create(n,{eventType:`step_failed`,specVersion:5,correlationId:o,eventData:{stepName:s,error:await dn(f,n,await d(),[],globalThis,l)}})}catch(e){if(C.is(e))return W.info(`Tried failing step, but step has already finished.`,{workflowRunId:n,stepId:o,stepName:s,message:e.message}),{type:`skipped`};throw e}return u?.setAttributes({...Rt(`failed`),...mn(!0)}),{type:`failed`}}h.is(e)?P.info(`Encountered RetryableError, step will be retried`,{workflowRunId:n,stepName:s,attempt:m,message:e.message}):P.info(`Encountered Error, step will be retried`,{workflowRunId:n,stepName:s,attempt:m,errorStack:c}),Kn.isNativeError(e)&&c&&(e.stack=c);try{await t.events.create(n,{eventType:`step_retrying`,specVersion:5,correlationId:o,eventData:{stepName:s,error:await dn(e,n,await d(),[],globalThis,l),...h.is(e)&&{retryAfter:e.retryAfter}}})}catch(e){if(C.is(e))return W.info(`Tried retrying step, but step has already finished.`,{workflowRunId:n,stepId:o,stepName:s,message:e.message}),{type:`skipped`};throw e}let _=Math.max(1,h.is(e)?Math.ceil((+e.retryAfter.getTime()-Date.now())/1e3):1);return u?.setAttributes({...Be(_),...ie(!0)}),{type:`retry`,timeoutSeconds:_}}let j;try{j=await t.events.create(n,{eventType:`step_completed`,specVersion:5,correlationId:o,eventData:{stepName:s,workflowName:r,result:T}},e.inlineDeltaSinceCursor===void 0?void 0:{sinceCursor:e.inlineDeltaSinceCursor})}catch(e){if(C.is(e))return W.info(`Tried completing step, but step has already finished.`,{workflowRunId:n,stepId:o,stepName:s,message:e.message}),{type:`skipped`};if(y.is(e))return P.info(`Workflow run already completed, skipping step`,{workflowRunId:n,stepId:o,message:e.message}),{type:`gone`};throw e}let M=s_(j,e.inlineDeltaSinceCursor!==void 0);return u?.setAttributes({...Rt(`completed`),...L(typeof T)}),O.length>0&&P.debug(`Step has pending ops`,{workflowRunId:n,stepName:s,opsCount:O.length}),{type:`completed`,hasPendingOps:!A,inlineDelta:M}})}async function l_({world:e,runId:t,hookEvent:n,queueItem:r,requestId:i}){try{return(await e.events.create(t,n,{requestId:i})).event?.eventType===`hook_conflict`?{hasHookConflict:!0,hasAwaitedHookCreation:!1}:{hasHookConflict:!1,hasAwaitedHookCreation:r.hasConflictAwaiter===!0}}catch(e){if(C.is(e))return W.info(`Hook already exists, continuing`,{workflowRunId:t,message:e.message}),{hasHookConflict:!1,hasAwaitedHookCreation:r.hasConflictAwaiter===!0};if(y.is(e))return W.info(`Workflow run already completed, skipping hook`,{workflowRunId:t,message:e.message}),{hasHookConflict:!1,hasAwaitedHookCreation:!1};throw e}}async function u_({suspension:e,world:t,run:n,span:r,requestId:i,runReadyBarrier:a}){let o=n.runId,s=async()=>{if(a)try{await a}catch{}},c=e.steps.filter(e=>e.type===`step`),l=e.steps.filter(e=>e.type===`hook`),u=e.steps.filter(e=>e.type===`wait`),d=e.steps.filter(e=>e.type===`attribute`),f=l.filter(e=>!e.hasCreatedEvent),p=l.filter(e=>e.disposed),m=await t.getEncryptionKeyForRun?.(n),h=m?await gn(m):void 0,g=(n.specVersion??0)>=5,_=await Promise.all(f.map(async t=>{let n=t.metadata===void 0?void 0:await at(t.metadata,o,h,e.globalThis,!1,g);return{queueItem:t,hookEvent:{eventType:`hook_created`,specVersion:5,correlationId:t.correlationId,eventData:{token:t.token,metadata:n,isWebhook:t.isWebhook??!1,...t.isSystem&&{isSystem:!0}}}}})),b=!1,x=!1;if(_.length>0){await s();let e=await Promise.all(_.map(({hookEvent:e,queueItem:n})=>l_({world:t,runId:o,hookEvent:e,queueItem:n,requestId:i})));b=e.some(e=>e.hasHookConflict),x=e.some(e=>e.hasAwaitedHookCreation)}p.length>0&&(await s(),await Promise.all(p.map(async e=>{let n={eventType:`hook_disposed`,specVersion:5,correlationId:e.correlationId,eventData:{token:e.token}};try{await t.events.create(o,n,{requestId:i})}catch(t){if(C.is(t))W.info(`Hook already disposed, skipping duplicate disposal`,{workflowRunId:o,correlationId:e.correlationId,message:t.message});else if(y.is(t))W.info(`Workflow run already completed, skipping hook disposal`,{workflowRunId:o,correlationId:e.correlationId,message:t.message});else if(S.is(t))W.info(`Hook not found for disposal, continuing`,{workflowRunId:o,correlationId:e.correlationId,message:t.message});else throw t}})));let w=l.filter(e=>e.abortRequested&&!e.disposed);w.length>0&&(await s(),await Promise.all(w.map(async n=>{try{let r=await at({aborted:!0,reason:n.abortReason},o,h,e.globalThis,!1,g);await t.events.create(o,{eventType:`hook_received`,specVersion:5,correlationId:n.correlationId,eventData:{token:n.token,payload:r}});try{let e=fe(n.token);await t.streams.write(o,e,r),await t.streams.close(o,e)}catch{W.debug(`Failed to write abort stream packet, hook event will provide fallback`,{workflowRunId:o,correlationId:n.correlationId})}}catch(e){if(C.is(e)||y.is(e))W.info(`Workflow run already completed, skipping abort`,{workflowRunId:o,correlationId:n.correlationId,message:e.message});else throw e}})));let T=new Set(c.filter(e=>!e.hasCreatedEvent).map(e=>e.correlationId)),E=new Set,D=new Set(x===!1?c.filter(e=>T.has(e.correlationId)).slice(0,Or()).map(e=>e.correlationId):[]),O=new Map,k=[];for(let r of c)T.has(r.correlationId)&&k.push((async()=>{let a=await at({args:r.args,closureVars:r.closureVars,thisVal:r.thisVal},o,h,e.globalThis,!1,g);if(D.has(r.correlationId)){O.set(r.correlationId,{correlationId:r.correlationId,stepName:r.stepName,dehydratedInput:a});return}let c={eventType:`step_created`,specVersion:5,correlationId:r.correlationId,eventData:{stepName:r.stepName,workflowName:n.workflowName,input:a}};try{await s(),await t.events.create(o,c,{requestId:i}),E.add(r.correlationId)}catch(e){if(C.is(e))W.info(`Step already exists, continuing`,{workflowRunId:o,correlationId:r.correlationId,message:e.message});else throw e}})());for(let e of u)e.hasCreatedEvent||k.push((async()=>{let n={eventType:`wait_created`,specVersion:5,correlationId:e.correlationId,eventData:{resumeAt:e.resumeAt}};try{await s(),await t.events.create(o,n,{requestId:i})}catch(t){if(C.is(t))W.info(`Wait already exists, continuing`,{workflowRunId:o,correlationId:e.correlationId,message:t.message});else throw t}})());for(let e of d)k.push((async()=>{try{await s(),await t.events.create(o,{eventType:`attr_set`,specVersion:5,correlationId:e.correlationId,eventData:{changes:e.changes,writer:{type:`workflow`},...e.allowReservedAttributes?{allowReservedAttributes:!0}:{}}},{requestId:i})}catch(t){if(C.is(t))W.info(`Workflow attribute event already exists, continuing`,{workflowRunId:o,correlationId:e.correlationId,message:t.message});else if(d_(t)){let e=new v(`experimental_setAttributes failed World validation: ${t instanceof Error?t.message:String(t)}`);throw e.cause=t,e}else throw t}})());await Promise.all(k);let A=[];for(let e of D){let t=O.get(e);t&&A.push(t)}let j=Date.now(),M;for(let e of u){let t=e.resumeAt.getTime(),n=Math.max(1e3,t-j),r=Math.ceil(n/1e3);(!M||r<M.seconds)&&(M={seconds:r,correlationId:e.correlationId})}return r?.setAttributes({...V(`workflow_suspended`),...Qt(c.length),...se(f.length),...it(u.length)}),{pendingSteps:c,createdStepCorrelationIds:E,lazyInlineSteps:A,waitTimeout:b?void 0:M,hasHookConflict:b,hasAwaitedHookCreation:x,hasAttributeEvents:d.length>0,hasHookEvents:_.length>0}}function d_(e){return e instanceof Zt||e instanceof Error&&e.name===`AttributeValidationError`?!0:p.is(e)&&e.status===400}const f_=82800;function p_(e,t,n=Date.now()){if(e<=2)return{delaySeconds:e,idempotencyKey:`${t}:${Math.floor(n/1e3)}`};let r=Math.ceil(e/f_);return{delaySeconds:Math.min(e,f_),idempotencyKey:r===1?t:`${t}:hop-${r}`}}var m_=44,h_=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,g_=new Uint8Array(64),__=new Uint8Array(128);for(let e=0;e<h_.length;e++){let t=h_.charCodeAt(e);g_[e]=t,__[t]=e}function v_(e,t){let n=0,r=0,i=0;do i=__[e.next()],n|=(i&31)<<r,r+=5;while(i&32);let a=n&1;return n>>>=1,a&&(n=-2147483648|-n),t+n}function y_(e,t){return e.pos>=t?!1:e.peek()!==m_}var b_=class{constructor(e){this.pos=0,this.buffer=e}next(){return this.buffer.charCodeAt(this.pos++)}peek(){return this.buffer.charCodeAt(this.pos)}indexOf(e){let{buffer:t,pos:n}=this,r=t.indexOf(e,n);return r===-1?t.length:r}};function x_(e){let{length:t}=e,n=new b_(e),r=[],i=0,a=0,o=0,s=0,c=0;do{let e=n.indexOf(`;`),t=[],l=!0,u=0;for(i=0;n.pos<e;){let r;i=v_(n,i),i<u&&(l=!1),u=i,y_(n,e)?(a=v_(n,a),o=v_(n,o),s=v_(n,s),y_(n,e)?(c=v_(n,c),r=[i,a,o,s,c]):r=[i,a,o,s]):r=[i],t.push(r),n.pos++}l||S_(t),r.push(t),n.pos=e+1}while(n.pos<=t);return r}function S_(e){e.sort(C_)}function C_(e,t){return e[0]-t[0]}const w_=/^[\w+.-]+:\/\//,T_=/^([\w+.-]+:)\/\/([^@/#?]*@)?([^:/#?]*)(:\d+)?(\/[^#?]*)?(\?[^#]*)?(#.*)?/,E_=/^file:(?:\/\/((?![a-z]:)[^/#?]*)?)?(\/?[^#?]*)(\?[^#]*)?(#.*)?/i;function D_(e){return w_.test(e)}function O_(e){return e.startsWith(`//`)}function k_(e){return e.startsWith(`/`)}function A_(e){return e.startsWith(`file:`)}function j_(e){return/^[.?#]/.test(e)}function M_(e){let t=T_.exec(e);return P_(t[1],t[2]||``,t[3],t[4]||``,t[5]||`/`,t[6]||``,t[7]||``)}function N_(e){let t=E_.exec(e),n=t[2];return P_(`file:`,``,t[1]||``,``,k_(n)?n:`/`+n,t[3]||``,t[4]||``)}function P_(e,t,n,r,i,a,o){return{scheme:e,user:t,host:n,port:r,path:i,query:a,hash:o,type:7}}function F_(e){if(O_(e)){let t=M_(`http:`+e);return t.scheme=``,t.type=6,t}if(k_(e)){let t=M_(`http://foo.com`+e);return t.scheme=``,t.host=``,t.type=5,t}if(A_(e))return N_(e);if(D_(e))return M_(e);let t=M_(`http://foo.com/`+e);return t.scheme=``,t.host=``,t.type=e?e.startsWith(`?`)?3:e.startsWith(`#`)?2:4:1,t}function I_(e){if(e.endsWith(`/..`))return e;let t=e.lastIndexOf(`/`);return e.slice(0,t+1)}function L_(e,t){R_(t,t.type),e.path===`/`?e.path=t.path:e.path=I_(t.path)+e.path}function R_(e,t){let n=t<=4,r=e.path.split(`/`),i=1,a=0,o=!1;for(let e=1;e<r.length;e++){let t=r[e];if(!t){o=!0;continue}if(o=!1,t!==`.`){if(t===`..`){a?(o=!0,a--,i--):n&&(r[i++]=t);continue}r[i++]=t,a++}}let s=``;for(let e=1;e<i;e++)s+=`/`+r[e];(!s||o&&!s.endsWith(`/..`))&&(s+=`/`),e.path=s}function z_(e,t){if(!e&&!t)return``;let n=F_(e),r=n.type;if(t&&r!==7){let e=F_(t),i=e.type;switch(r){case 1:n.hash=e.hash;case 2:n.query=e.query;case 3:case 4:L_(n,e);case 5:n.user=e.user,n.host=e.host,n.port=e.port;case 6:n.scheme=e.scheme}i>r&&(r=i)}R_(n,r);let i=n.query+n.hash;switch(r){case 2:case 3:return i;case 4:{let r=n.path.slice(1);return r?j_(t||e)&&!j_(r)?`./`+r+i:r+i:i||`.`}case 5:return n.path+i;default:return n.scheme+`//`+n.user+n.host+n.port+n.path+i}}function B_(e){if(!e)return``;let t=e.lastIndexOf(`/`);return e.slice(0,t+1)}function V_(e,t){let n=B_(e),r=t?t+`/`:``;return e=>z_(r+(e||``),n)}var H_=0,U_=1,W_=2,G_=3,K_=4;function q_(e,t){let n=J_(e,0);if(n===e.length)return e;t||(e=e.slice());for(let r=n;r<e.length;r=J_(e,r+1))e[r]=X_(e[r],t);return e}function J_(e,t){for(let n=t;n<e.length;n++)if(!Y_(e[n]))return n;return e.length}function Y_(e){for(let t=1;t<e.length;t++)if(e[t][H_]<e[t-1][H_])return!1;return!0}function X_(e,t){return t||(e=e.slice()),e.sort(Z_)}function Z_(e,t){return e[H_]-t[H_]}var Q_=!1;function $_(e,t,n,r){for(;n<=r;){let i=n+(r-n>>1),a=e[i][H_]-t;if(a===0)return Q_=!0,i;a<0?n=i+1:r=i-1}return Q_=!1,n-1}function ev(e,t,n){for(let r=n+1;r<e.length&&e[r][H_]===t;n=r++);return n}function tv(e,t,n){for(let r=n-1;r>=0&&e[r][H_]===t;n=r--);return n}function nv(){return{lastKey:-1,lastNeedle:-1,lastIndex:-1}}function rv(e,t,n,r){let{lastKey:i,lastNeedle:a,lastIndex:o}=n,s=0,c=e.length-1;if(r===i){if(t===a)return Q_=o!==-1&&e[o][H_]===t,o;t>=a?s=o===-1?0:o:c=o}return n.lastKey=r,n.lastNeedle=t,n.lastIndex=$_(e,t,s,c)}function iv(e){return typeof e==`string`?JSON.parse(e):e}var av="`line` must be greater than 0 (lines start at line 1)",ov="`column` must be greater than or equal to 0 (columns start at column 0)",sv=class{constructor(e,t){let n=typeof e==`string`;if(!n&&e._decodedMemo)return e;let r=iv(e),{version:i,file:a,names:o,sourceRoot:s,sources:c,sourcesContent:l}=r;this.version=i,this.file=a,this.names=o||[],this.sourceRoot=s,this.sources=c,this.sourcesContent=l,this.ignoreList=r.ignoreList||r.x_google_ignoreList||void 0;let u=V_(t,s);this.resolvedSources=c.map(u);let{mappings:d}=r;if(typeof d==`string`)this._encoded=d,this._decoded=void 0;else if(Array.isArray(d))this._encoded=void 0,this._decoded=q_(d,n);else if(r.sections)throw Error(`TraceMap passed sectioned source map, please use FlattenMap export instead`);else throw Error(`invalid source map: ${JSON.stringify(r)}`);this._decodedMemo=nv(),this._bySources=void 0,this._bySourceMemos=void 0}};function cv(e){return e}function lv(e){var t;return(t=cv(e))._decoded||(t._decoded=x_(cv(e)._encoded))}function uv(e,t){let{line:n,column:r,bias:i}=t;if(n--,n<0)throw Error(av);if(r<0)throw Error(ov);let a=lv(e);if(n>=a.length)return dv(null,null,null,null);let o=a[n],s=fv(o,cv(e)._decodedMemo,n,r,i||1);if(s===-1)return dv(null,null,null,null);let c=o[s];if(c.length===1)return dv(null,null,null,null);let{names:l,resolvedSources:u}=e;return dv(u[c[U_]],c[W_]+1,c[G_],c.length===5?l[c[K_]]:null)}function dv(e,t,n,r){return{source:e,line:t,column:n,name:r}}function fv(e,t,n,r,i){let a=rv(e,r,t,n);return Q_?a=(i===-1?ev:tv)(e,r,a):i===-1&&a++,a===-1||a===e.length?-1:a}function pv(e){return e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===43||e===47||e===61}function mv(e){let t=0;for(;t<e.length;){let n=e.indexOf(`//# sourceMappingURL=data:application/json`,t);if(n===-1)return;let r=e.indexOf(`;base64,`,n+42);if(r===-1){t=n+42;continue}let i=e.indexOf(`,`,n);if(i!==-1&&i<r){t=r+8;continue}let a=r+8,o=a;for(;o<e.length&&pv(e.charCodeAt(o));)o++;if(o>a)return e.slice(a,o);t=o}}const hv=new Map;function gv(e){let t=hv.get(e);if(t!==void 0)return hv.delete(e),hv.set(e,t),t;let n=null,r=mv(e);if(r)try{let e=Buffer.from(r,`base64`).toString(`utf-8`);n=new sv(JSON.parse(e))}catch{n=null}for(hv.set(e,n);hv.size>8;){let e=hv.keys().next().value;if(e===void 0)break;hv.delete(e)}return n}function _v(e,t,n){if(!e.includes(t))return e;let r=gv(n);if(!r)return e;try{return e.split(`
|
|
140
|
+
`).map(e=>{let n=e.match(/^\s*at\s+(?:(.+?)\s+\()?(.+?):(\d+):(\d+)\)?$/);if(!n)return e;let[,i,a,o,s]=n;if(!a.includes(t))return e;let c=parseInt(o,10),l=parseInt(s,10),u=uv(r,{line:c,column:l});if(u.source&&u.line!==null){let e=i||u.name||`anonymous`,t=u.column===null?l:u.column;return` at ${e} (${u.source}:${u.line}:${t})`}return e}).join(`
|
|
141
|
+
`)}catch{return e}}const vv=4096;function yv(e){if(e===null)return!0;let t=typeof e;return t===`object`||t===`function`?!1:t===`string`?e.length<=vv:t===`bigint`?e.toString().length<=vv:!0}function bv(){return new Map}async function xv(e,t,n){if(!e||t===void 0)return n();if(e.has(t))return e.get(t);let r=await n();return yv(r)&&e.set(t,r),r}function Sv(e,t,n){let r=(2<<31-Math.clz32(e.length-1|1))-1,i=Math.ceil(1.6*r*t/e.length);return(a=t)=>{if(!a)return``;let o=``;for(;;){let t=n(i),s=i;for(;s--;)if(o+=e[t[s]&r]||``,o.length>=a)return o}}}function Cv(e){let t=e.startsWith(`wrun_`)?e.slice(5):e;try{return z(t)}catch{return}}function wv(e){return function(t,n){let i=function(...i){let{promise:a,resolve:o,reject:s}=r(),c=`step_${e.generateUlid()}`,l={type:`step`,correlationId:c,stepName:t,args:i};this!==void 0&&this!==null&&this!==globalThis&&(l.thisVal=this);let u=n?.();return u&&(l.closureVars=u),e.invocationsQueue.set(c,l),P.debug(`Step consumer setup`,{correlationId:c,stepName:t,args:i}),e.eventsConsumer.subscribe(n=>{if(!n)return Tn(e,()=>{e.onWorkflowError(new j(e.invocationsQueue,e.globalThis))}),U.NotConsumed;if(P.debug(`Step consumer event processing`,{correlationId:c,stepName:t,args:i.join(`, `),incomingCorrelationId:n.correlationId,isMatch:c===n.correlationId,eventType:n.eventType}),n.correlationId!==c)return U.NotConsumed;let r=`eventData`in n&&n.eventData&&`stepName`in n.eventData?n.eventData.stepName:void 0;if(typeof r==`string`&&r!==t)return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new w(`Replay divergence: step event ${n.eventType} for ${c} belongs to "${r}", but the current step consumer is "${t}"`,{eventId:n.eventId}))}),U.Finished;if(n.eventType===`step_created`){let r=e.invocationsQueue.get(c);return!r||r.type!==`step`?(e.promiseQueue=e.promiseQueue.then(()=>{s(new w(`Replay divergence: step ${c} (${t}) created but not found in invocation queue`,{eventId:n.eventId}))}),U.Finished):(r.hasCreatedEvent=!0,U.Consumed)}if(n.eventType===`step_started`||n.eventType===`step_retrying`)return U.Consumed;if(n.eventType===`step_failed`)return e.invocationsQueue.delete(n.correlationId),e.promiseQueue=e.promiseQueue.then(async()=>{try{s(await te(n.eventData.error,e.runId,e.encryptionKey,e.globalThis))}catch(e){P.error(`Failed to hydrate step_failed error`,{correlationId:n.correlationId,error:e instanceof Error?e.message:String(e)}),s(new v(`Failed to hydrate step error: ${e instanceof Error?e.message:String(e)}`))}}),U.Finished;if(n.eventType===`step_completed`){e.invocationsQueue.delete(n.correlationId);let t=n.eventId,r=n.eventData.result;return e.pendingDeliveries++,e.promiseQueue=e.promiseQueue.then(async()=>{try{o(await xv(e.stepHydrationCache,t,()=>De(r,e.runId,e.encryptionKey,e.globalThis)))}catch(e){s(e)}finally{e.pendingDeliveries--}}),U.Finished}return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new w(`Replay divergence: Unexpected event type for step ${c} (name: ${t}) "${n.eventType}"`,{eventId:n.eventId}))}),U.Finished}),a},a=t.split(`//`).pop();return Object.defineProperty(i,"name",{value:a}),Object.defineProperty(i,"stepId",{value:t,writable:!1,enumerable:!1,configurable:!1}),n&&Object.defineProperty(i,"__closureVarsFn",{value:n,writable:!1,enumerable:!1,configurable:!1}),Object.defineProperty(i,"bind",{value:function(e,...r){let i=Function.prototype.bind.call(this,e,...r);return Object.defineProperty(i,"stepId",{value:t,writable:!1,enumerable:!1,configurable:!1}),n&&Object.defineProperty(i,"__closureVarsFn",{value:n,writable:!1,enumerable:!1,configurable:!1}),Object.defineProperty(i,"__boundThis",{value:e,writable:!1,enumerable:!1,configurable:!1}),r.length>0&&Object.defineProperty(i,"__boundArgs",{value:r,writable:!1,enumerable:!1,configurable:!1}),i},writable:!1,enumerable:!1,configurable:!1}),i}}var Tv=n(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=o();t.next=function(){var e=2091639*t.s0+t.c*23283064365386963e-26;return t.s0=t.s1,t.s1=t.s2,t.s2=e-(t.c=e|0)},t.c=1,t.s0=n(` `),t.s1=n(` `),t.s2=n(` `),t.s0-=n(e),t.s0<0&&(t.s0+=1),t.s1-=n(e),t.s1<0&&(t.s1+=1),t.s2-=n(e),t.s2<0&&(t.s2+=1),n=null}function i(e,t){return t.c=e.c,t.s0=e.s0,t.s1=e.s1,t.s2=e.s2,t}function a(e,t){var n=new r(e),a=t&&t.state,o=n.next;return o.int32=function(){return n.next()*4294967296|0},o.double=function(){return o()+(o()*2097152|0)*11102230246251565e-32},o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}function o(){var e=4022871197;return function(t){t=String(t);for(var n=0;n<t.length;n++){e+=t.charCodeAt(n);var r=.02519603282416938*e;e=r>>>0,r-=e,r*=e,e=r>>>0,r-=e,e+=r*4294967296}return(e>>>0)*23283064365386963e-26}}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.alea=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),Ev=n(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=``;t.x=0,t.y=0,t.z=0,t.w=0,t.next=function(){var e=t.x^t.x<<11;return t.x=t.y,t.y=t.z,t.z=t.w,t.w^=t.w>>>19^e^e>>>8},e===(e|0)?t.x=e:n+=e;for(var r=0;r<n.length+64;r++)t.x^=n.charCodeAt(r)|0,t.next()}function i(e,t){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=e.w,t}function a(e,t){var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xor128=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),Dv=n(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=``;t.next=function(){var e=t.x^t.x>>>2;return t.x=t.y,t.y=t.z,t.z=t.w,t.w=t.v,(t.d=t.d+362437|0)+(t.v=t.v^t.v<<4^(e^e<<1))|0},t.x=0,t.y=0,t.z=0,t.w=0,t.v=0,e===(e|0)?t.x=e:n+=e;for(var r=0;r<n.length+64;r++)t.x^=n.charCodeAt(r)|0,r==n.length&&(t.d=t.x<<10^t.x>>>4),t.next()}function i(e,t){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=e.w,t.v=e.v,t.d=e.d,t}function a(e,t){var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xorwow=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),Ov=n(((e,t)=>{(function(e,t,n){function r(e){var t=this;t.next=function(){var e=t.x,n=t.i,r=e[n],i;return r^=r>>>7,i=r^r<<24,r=e[n+1&7],i^=r^r>>>10,r=e[n+3&7],i^=r^r>>>3,r=e[n+4&7],i^=r^r<<7,r=e[n+7&7],r^=r<<13,i^=r^r<<9,e[n]=i,t.i=n+1&7,i};function n(e,t){var n,r=[];if(t===(t|0))r[0]=t;else for(t=``+t,n=0;n<t.length;++n)r[n&7]=r[n&7]<<15^t.charCodeAt(n)+r[n+1&7]<<13;for(;r.length<8;)r.push(0);for(n=0;n<8&&r[n]===0;++n);for(n==8?r[7]=-1:r[n],e.x=r,e.i=0,n=256;n>0;--n)e.next()}n(t,e)}function i(e,t){return t.x=e.x.slice(),t.i=e.i,t}function a(e,t){e??=+new Date;var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(a.x&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xorshift7=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),kv=n(((e,t)=>{(function(e,t,n){function r(e){var t=this;t.next=function(){var e=t.w,n=t.X,r=t.i,i,a;return t.w=e=e+1640531527|0,a=n[r+34&127],i=n[r=r+1&127],a^=a<<13,i^=i<<17,a^=a>>>15,i^=i>>>12,a=n[r]=a^i,t.i=r,a+(e^e>>>16)|0};function n(e,t){var n,r,i,a,o,s=[],c=128;for(t===(t|0)?(r=t,t=null):(t+=`\0`,r=0,c=Math.max(c,t.length)),i=0,a=-32;a<c;++a)t&&(r^=t.charCodeAt((a+32)%t.length)),a===0&&(o=r),r^=r<<10,r^=r>>>15,r^=r<<4,r^=r>>>13,a>=0&&(o=o+1640531527|0,n=s[a&127]^=r+o,i=n==0?i+1:0);for(i>=128&&(s[(t&&t.length||0)&127]=-1),i=127,a=512;a>0;--a)r=s[i+34&127],n=s[i=i+1&127],r^=r<<13,n^=n<<17,r^=r>>>15,n^=n>>>12,s[i]=r^n;e.w=o,e.X=s,e.i=i}n(t,e)}function i(e,t){return t.i=e.i,t.w=e.w,t.X=e.X.slice(),t}function a(e,t){e??=+new Date;var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(a.X&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xor4096=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),Av=n(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=``;t.next=function(){var e=t.b,n=t.c,r=t.d,i=t.a;return e=e<<25^e>>>7^n,n=n-r|0,r=r<<24^r>>>8^i,i=i-e|0,t.b=e=e<<20^e>>>12^n,t.c=n=n-r|0,t.d=r<<16^n>>>16^i,t.a=i-e|0},t.a=0,t.b=0,t.c=-1640531527,t.d=1367130551,e===Math.floor(e)?(t.a=e/4294967296|0,t.b=e|0):n+=e;for(var r=0;r<n.length+20;r++)t.b^=n.charCodeAt(r)|0,t.next()}function i(e,t){return t.a=e.a,t.b=e.b,t.c=e.c,t.d=e.d,t}function a(e,t){var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.tychei=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),jv=n(((e,n)=>{(function(e,r,i){var a=256,o=6,s=52,c=`random`,l=i.pow(a,o),u=i.pow(2,s),d=u*2,f=a-1,p;function m(e,t,n){var s=[];t=t==1?{entropy:!0}:t||{};var f=v(_(t.entropy?[e,b(r)]:e??y(),3),s),p=new h(s),m=function(){for(var e=p.g(o),t=l,n=0;e<u;)e=(e+n)*a,t*=a,n=p.g(1);for(;e>=d;)e/=2,t/=2,n>>>=1;return(e+n)/t};return m.int32=function(){return p.g(4)|0},m.quick=function(){return p.g(4)/4294967296},m.double=m,v(b(p.S),r),(t.pass||n||function(e,t,n,r){return r&&(r.S&&g(r,p),e.state=function(){return g(p,{})}),n?(i[c]=e,t):e})(m,f,`global`in t?t.global:this==i,t.state)}function h(e){var t,n=e.length,r=this,i=0,o=r.i=r.j=0,s=r.S=[];for(n||(e=[n++]);i<a;)s[i]=i++;for(i=0;i<a;i++)s[i]=s[o=f&o+e[i%n]+(t=s[i])],s[o]=t;(r.g=function(e){for(var t,n=0,i=r.i,o=r.j,s=r.S;e--;)t=s[i=f&i+1],n=n*a+s[f&(s[i]=s[o=f&o+t])+(s[o]=t)];return r.i=i,r.j=o,n})(a)}function g(e,t){return t.i=e.i,t.j=e.j,t.S=e.S.slice(),t}function _(e,t){var n=[],r=typeof e,i;if(t&&r==`object`)for(i in e)try{n.push(_(e[i],t-1))}catch{}return n.length?n:r==`string`?e:e+`\0`}function v(e,t){for(var n=e+``,r,i=0;i<n.length;)t[f&i]=f&(r^=t[f&i]*19)+n.charCodeAt(i++);return b(t)}function y(){try{var t;return p&&(t=p.randomBytes)?t=t(a):(t=new Uint8Array(a),(e.crypto||e.msCrypto).getRandomValues(t)),b(t)}catch{var n=e.navigator,i=n&&n.plugins;return[+new Date,e,i,e.screen,b(r)]}}function b(e){return String.fromCharCode.apply(0,e)}if(v(i.random(),r),typeof n==`object`&&n.exports){n.exports=m;try{p=t(`crypto`)}catch{}}else typeof define==`function`&&define.amd?define(function(){return m}):i[`seed`+c]=m})(typeof self<`u`?self:e,[],Math)})),Mv=e(n(((e,t)=>{var n=Tv(),r=Ev(),i=Dv(),a=Ov(),o=kv(),s=Av(),c=jv();c.alea=n,c.xor128=r,c.xorwow=i,c.xorshift7=a,c.xor4096=o,c.tychei=s,t.exports=c}))(),1);const Nv=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,Pv=new Uint8Array(128).fill(255);for(let e=0;e<64;e++)Pv[Nv.charCodeAt(e)]=e;function Fv(e){return e===9||e===10||e===12||e===13||e===32}function Iv(e,t){for(;t<e.length&&Fv(e.charCodeAt(t));)t++;return t}function Lv(e,t){let n=e.length,r=e;n===2?r=e+`AA`:n===3&&(r=e+`A`);let i=Pv[r.charCodeAt(0)],a=Pv[r.charCodeAt(1)],o=Pv[r.charCodeAt(2)],s=Pv[r.charCodeAt(3)],c=i<<2|a>>4,l=(a&15)<<4|o>>2,u=(o&3)<<6|s;if(n===2){if(t&&l!==0)throw SyntaxError(`Extra bits in base64 chunk`);return[c]}if(n===3){if(t&&u!==0)throw SyntaxError(`Extra bits in base64 chunk`);return[c,l]}return[c,l,u]}function Rv(e,t,n,r){if(r===void 0&&(r=2**53-1),r===0)return{read:0,bytes:[],error:null};let i=0,a=[],o=``,s=0,c=0,l=e.length;for(;;){if(c=Iv(e,c),c===l){if(s>0){if(n===`stop-before-partial`)return{read:i,bytes:a,error:null};if(n===`loose`){if(s===1)return{read:i,bytes:a,error:SyntaxError(`Invalid base64: lone character in final chunk`)};a.push(...Lv(o,!1))}else return{read:i,bytes:a,error:SyntaxError(`Invalid base64: incomplete chunk in strict mode`)}}return{read:l,bytes:a,error:null}}let u=e[c];if(c++,u===`=`){if(s<2)return{read:i,bytes:a,error:SyntaxError(`Invalid base64: padding in unexpected place`)};if(c=Iv(e,c),s===2){if(c===l)return n===`stop-before-partial`?{read:i,bytes:a,error:null}:{read:i,bytes:a,error:SyntaxError(`Invalid base64: missing second padding character`)};u=e[c],u===`=`&&(c=Iv(e,c+1))}if(c<l)return{read:i,bytes:a,error:SyntaxError(`Invalid base64: unexpected characters after padding`)};let t=n===`strict`;try{a.push(...Lv(o,t))}catch(e){return{read:i,bytes:a,error:e}}return{read:l,bytes:a,error:null}}if(t===`base64url`){if(u===`+`||u===`/`)return{read:i,bytes:a,error:SyntaxError(`Invalid base64url: unexpected character '${u}'`)};u===`-`?u=`+`:u===`_`&&(u=`/`)}let d=u.charCodeAt(0);if(d>=128||Pv[d]===255)return{read:i,bytes:a,error:SyntaxError(`Invalid base64: unexpected character '${e[c-1]}'`)};let f=r-a.length;if(f===1&&s===2||f===2&&s===3||(o+=u,s=o.length,s===4&&(a.push(...Lv(o)),o=``,s=0,i=c,a.length===r)))return{read:i,bytes:a,error:null}}}function zv(e,t){t===void 0&&(t=2**53-1);let n=e.length,r=[],i=0;if(n%2!=0)return{read:0,bytes:[],error:SyntaxError(`Invalid hex: string length must be even`)};for(;i<n&&r.length<t;){let t=e.substring(i,i+2);if(!/^[0-9a-fA-F]{2}$/.test(t))return{read:i,bytes:r,error:SyntaxError(`Invalid hex: unexpected character at position ${i}`)};i+=2,r.push(Number.parseInt(t,16))}return{read:i,bytes:r,error:null}}function Bv(e,t){let n=t?.alphabet??`base64`;if(n!==`base64`&&n!==`base64url`)throw TypeError(`Invalid alphabet: expected "base64" or "base64url", got "${n}"`);let r=!!t?.omitPadding,i=``,a=e.length;for(let t=0;t<a;t+=3){let n=e[t],o=t+1<a?e[t+1]:0,s=t+2<a?e[t+2]:0;i+=Nv[n>>2&63],i+=Nv[(n&3)<<4|o>>4&15],t+1<a?i+=Nv[(o&15)<<2|s>>6&3]:r||(i+=`=`),t+2<a?i+=Nv[s&63]:r||(i+=`=`)}return n===`base64url`&&(i=i.replace(/\+/g,`-`).replace(/\//g,`_`)),i}function Vv(e){let t=``;for(let n=0;n<e.length;n++)t+=e[n].toString(16).padStart(2,`0`);return t}function Hv(e){let t=e.prototype,n=e;t.toBase64||Object.defineProperty(t,"toBase64",{value:function(t){if(!(this instanceof e))throw TypeError(`this is not a Uint8Array`);return Bv(this,t)},writable:!0,enumerable:!1,configurable:!0}),t.toHex||Object.defineProperty(t,"toHex",{value:function(){if(!(this instanceof e))throw TypeError(`this is not a Uint8Array`);return Vv(this)},writable:!0,enumerable:!1,configurable:!0}),t.setFromBase64||Object.defineProperty(t,"setFromBase64",{value:function(t,n){if(!(this instanceof e))throw TypeError(`this is not a Uint8Array`);if(typeof t!=`string`)throw TypeError(`expected a string`);let r=n?.alphabet??`base64`;if(r!==`base64`&&r!==`base64url`)throw TypeError(`Invalid alphabet: expected "base64" or "base64url", got "${r}"`);let i=n?.lastChunkHandling??`loose`;if(i!==`loose`&&i!==`strict`&&i!==`stop-before-partial`)throw TypeError(`Invalid lastChunkHandling: expected "loose", "strict", or "stop-before-partial", got "${i}"`);let a=Rv(t,r,i,this.length),o=a.bytes,s=o.length;for(let e=0;e<s;e++)this[e]=o[e];if(a.error)throw a.error;return{read:a.read,written:s}},writable:!0,enumerable:!1,configurable:!0}),t.setFromHex||Object.defineProperty(t,"setFromHex",{value:function(t){if(!(this instanceof e))throw TypeError(`this is not a Uint8Array`);if(typeof t!=`string`)throw TypeError(`expected a string`);let n=zv(t,this.length),r=n.bytes,i=r.length;for(let e=0;e<i;e++)this[e]=r[e];if(n.error)throw n.error;return{read:n.read,written:i}},writable:!0,enumerable:!1,configurable:!0}),n.fromBase64||Object.defineProperty(e,"fromBase64",{value:function(t,n){if(typeof t!=`string`)throw TypeError(`expected a string`);let r=n?.alphabet??`base64`;if(r!==`base64`&&r!==`base64url`)throw TypeError(`Invalid alphabet: expected "base64" or "base64url", got "${r}"`);let i=n?.lastChunkHandling??`loose`;if(i!==`loose`&&i!==`strict`&&i!==`stop-before-partial`)throw TypeError(`Invalid lastChunkHandling: expected "loose", "strict", or "stop-before-partial", got "${i}"`);let a=Rv(t,r,i);if(a.error)throw a.error;return new e(a.bytes)},writable:!0,enumerable:!1,configurable:!0}),n.fromHex||Object.defineProperty(e,"fromHex",{value:function(t){if(typeof t!=`string`)throw TypeError(`expected a string`);let n=zv(t);if(n.error)throw n.error;return new e(n.bytes)},writable:!0,enumerable:!1,configurable:!0})}function Uv(e){return function(){let t=`0123456789abcdef`,n=``;for(let r=0;r<36;r++)r===8||r===13||r===18||r===23?n+=`-`:r===14?n+=`4`:r===19?n+=t[Math.floor(e()*4)+8]:n+=t[Math.floor(e()*16)];return n}}function Wv(e){let{fixedTimestamp:t}=e,{seed:n}=e,r=(0,Mv.default)(n),i=gr(),a=_r(`globalThis`,i);a.Math.random=r;let o=a.Date;a.Date=function(...e){return e.length===0?new o(t):new o(...e)},a.Date.prototype=o.prototype,Object.setPrototypeOf(a.Date,o),a.Date.now=()=>t;let s=globalThis.crypto,c=s.subtle;function l(e){for(let t=0;t<e.length;t++)e[t]=Math.floor(r()*256);return e}let u=Uv(r),d=c.digest.bind(c);return a.crypto=new Proxy(s,{get(e,t){return t===`getRandomValues`?l:t===`randomUUID`?u:t===`subtle`?new Proxy(c,{get(e,t){return t===`generateKey`?()=>{throw new D("`crypto.subtle.generateKey()` is not available inside a workflow function. Move key generation to a step function where full Node.js crypto is available.")}:t===`digest`?d:e[t]}}):e[t]}}),a.process={env:Object.freeze({...process.env})},a.DOMException=globalThis.DOMException,a.Headers=globalThis.Headers,a.TextEncoder=globalThis.TextEncoder,a.TextDecoder=globalThis.TextDecoder,a.console=globalThis.console,a.URL=globalThis.URL,a.URLSearchParams=globalThis.URLSearchParams,a.structuredClone=globalThis.structuredClone,a.atob=globalThis.atob,a.btoa=globalThis.btoa,Hv(a.Uint8Array),a.Symbol.dispose??=Symbol.for(`Symbol.dispose`),a.Symbol.asyncDispose??=Symbol.for(`Symbol.asyncDispose`),a.exports={},a.module={exports:a.exports},{context:i,globalThis:a,updateTimestamp:e=>{t=e}}}const Gv=new Map;function Kv(e){let t=Gv.get(e);if(t!==void 0)return Gv.delete(e),Gv.set(e,t),t}function qv(e,t){let n=Kv(e);if(n===void 0)for(n=new Map,Gv.set(e,n);Gv.size>8;){let e=Gv.keys().next().value;if(e===void 0)break;Gv.delete(e)}let r=n.get(t);return r===void 0&&(r=new hr(e,{filename:t}),n.set(t,r)),r}function Jv(e,t,n){return qv(e,t).runInContext(n)}function Yv(e){return async function(t,n={}){let{promise:i,resolve:a}=r(),o=`attr_${e.generateUlid()}`,s={type:`attribute`,correlationId:o,changes:t,...n.allowReservedAttributes===!0?{allowReservedAttributes:!0}:{}};return e.invocationsQueue.set(o,s),e.eventsConsumer.subscribe(r=>r?r.correlationId===o?r.eventType!==`attr_set`||r.eventData.writer.type!==`workflow`||JSON.stringify(r.eventData.changes)!==JSON.stringify(t)||r.eventData.allowReservedAttributes===!0!=(n.allowReservedAttributes===!0)?(e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new w(`Replay divergence: Unexpected attribute event for ${o}`,{eventId:r.eventId}))}),U.Finished):(e.invocationsQueue.delete(o),e.promiseQueue=e.promiseQueue.then(()=>{a()}),U.Finished):U.NotConsumed:(Tn(e,()=>{e.onWorkflowError(new j(e.invocationsQueue,e.globalThis))}),U.NotConsumed)),i}}function Xv(e,t){if(typeof t!=`string`)return null;let n=$t(an,e.globalThis),r=n?.[Dt];return typeof r==`function`?r.call(n,{runId:t}):null}function Zv(e){return function(t={}){if(t.token===``)throw Error("`createHook()` was called with an empty string token. Pass a non-empty token, or omit the `token` option to use a randomly generated one.");let n=`hook_${e.generateUlid()}`,i=t.token??e.generateNanoid(),a=t.isWebhook??!1;e.invocationsQueue.set(n,{type:`hook`,correlationId:n,token:i,metadata:t.metadata,isWebhook:a});let o=[],s=[],c=[],l=!1,u=!1,d=!1,f=!1,p=null,h=null;We.debug(`Hook consumer setup`,{correlationId:n,token:i}),e.eventsConsumer.subscribe(t=>{if(!t)return l=!0,(s.length>0&&o.length===0||c.length>0&&!u&&!f)&&Tn(e,()=>{e.onWorkflowError(new j(e.invocationsQueue,e.globalThis))}),U.NotConsumed;if(t.correlationId!==n)return U.NotConsumed;let a=`eventData`in t&&t.eventData&&`token`in t.eventData?t.eventData.token:void 0;if(typeof a==`string`&&a!==i)return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new w(`Replay divergence: hook event ${t.eventType} for ${n} belongs to token "${a}", but the current hook consumer expects "${i}"`,{eventId:t.eventId}))}),U.Finished;if(t.eventType===`hook_created`){let t=e.invocationsQueue.get(n);t&&t.type===`hook`&&(t.hasCreatedEvent=!0),u=!0;let r=c.slice();return c.length=0,e.promiseQueue=e.promiseQueue.then(()=>{for(let e of r)e.resolve(null)}),U.Consumed}if(t.eventType===`hook_conflict`){e.invocationsQueue.delete(n);let r=t,i=new m(r.eventData.token,r.eventData.conflictingRunId);f=!0,p=i,h=Xv(e,r.eventData.conflictingRunId);let a=s.slice();s.length=0;let o=c.slice();return c.length=0,e.promiseQueue=e.promiseQueue.then(()=>{for(let e of a)e.reject(i);for(let e of o)h?e.resolve(h):e.reject(i)}),U.Consumed}if(t.eventType===`hook_received`){let n=e.eventsConsumer.eventIndex,i=wn(e,n,`hook`);if(s.length>0){let r=s.shift();if(r){e.pendingDeliveries++;let a;e.promiseQueue=e.promiseQueue.then(async()=>{try{a={ok:!0,value:await De(t.eventData.payload,e.runId,e.encryptionKey,e.globalThis)}}catch(e){a={ok:!1,error:e}}finally{e.pendingDeliveries--}Sn(e,n,[`wait`]).then(()=>{i.markDelivered(),a.ok?r.resolve(a.value):r.reject(a.error)})})}}else{let a,s=r();e.pendingDeliveries++,e.promiseQueue=e.promiseQueue.then(async()=>{try{a={ok:!0,value:await De(t.eventData.payload,e.runId,e.encryptionKey,e.globalThis)}}catch(e){a={ok:!1,error:e}}finally{e.pendingDeliveries--,s.resolve()}}),o.push({claim:()=>s.promise.then(()=>Sn(e,n,[`wait`])).then(()=>{if(i.markDelivered(),a&&!a.ok)throw a.error;return a.value})})}return U.Consumed}return t.eventType===`hook_disposed`?(e.invocationsQueue.delete(n),d=!0,U.Finished):(e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new w(`Replay divergence: Unexpected event type for hook ${n} (token: ${i}) "${t.eventType}"`,{eventId:t.eventId}))}),U.Finished)});let g=!1;function _(){let t=r();if(f&&p)return e.promiseQueue=e.promiseQueue.then(()=>{t.reject(p)}),t.promise;if(o.length>0){let e=o.shift();if(e)return e.claim()}return l&&Tn(e,()=>{e.onWorkflowError(new j(e.invocationsQueue,e.globalThis))}),s.push(t),t.promise}function v(){let t=r();if(u)return e.promiseQueue=e.promiseQueue.then(()=>{t.resolve(null)}),t.promise;if(f)return e.promiseQueue=e.promiseQueue.then(()=>{h?t.resolve(h):t.reject(p)}),t.promise;let i=e.invocationsQueue.get(n);return i&&i.type===`hook`&&(i.hasConflictAwaiter=!0),l&&Tn(e,()=>{e.onWorkflowError(new j(e.invocationsQueue,e.globalThis))}),c.push(t),t.promise}function y(){if(g||(g=!0,d))return;let t=e.invocationsQueue.get(n);t&&t.type===`hook`&&(t.disposed=!0),s.length>0&&(s.length=0,Tn(e,()=>{e.onWorkflowError(new j(e.invocationsQueue,e.globalThis))})),We.debug(`Hook disposed`,{correlationId:n,token:i})}let b={token:i,getConflict(){return v()},then(e,t){return _().then(e,t)},async*[Symbol.asyncIterator](){for(;!g;)yield await this},dispose:y,[Symbol.dispose]:y},x=e.globalThis.Symbol.dispose;return x&&x!==Symbol.dispose&&(b[x]=y),b}}function Qv(e){return async function(t){let{promise:n,resolve:i}=r(),a=`wait_${e.generateUlid()}`,o=c(t),s={type:`wait`,correlationId:a,resumeAt:o};return e.invocationsQueue.set(a,s),e.eventsConsumer.subscribe(t=>{if(!t)return Tn(e,()=>{e.onWorkflowError(new j(e.invocationsQueue,e.globalThis))}),U.NotConsumed;if(t.correlationId!==a)return U.NotConsumed;if(t.eventType===`wait_created`){let n=e.invocationsQueue.get(a);return n&&n.type===`wait`&&(n.hasCreatedEvent=!0,n.resumeAt=t.eventData.resumeAt),U.Consumed}if(t.eventType===`wait_completed`){let n=t.eventData?.resumeAt;if(n!==void 0){let r=e.invocationsQueue.get(a),i=r&&r.type===`wait`?r.resumeAt:o,s=new Date(n),c=s.getTime(),l=i.getTime(),u=Number.isFinite(c)?s.toISOString():String(n);if(c!==l)return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new w(`Replay divergence: wait_completed event for ${a} has resumeAt "${u}", but the current wait consumer expects "${i.toISOString()}"`,{eventId:t.eventId}))}),U.Finished}e.invocationsQueue.delete(a);let r=e.eventsConsumer.eventIndex,s=wn(e,r,`wait`);return e.promiseQueue.then(()=>Sn(e,r,[`hook`])).then(()=>{s.markDelivered(),i()}),U.Finished}return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new w(`Replay divergence: Unexpected event type for wait ${a} "${t.eventType}"`,{eventId:t.eventId}))}),U.Finished}),n}}async function $v(e,t,n,r,i,a){if(t.size!==0){for(let e of t.values())e.type===`hook`&&e.isSystem&&!e.disposed&&!e.abortRequested&&(e.disposed=!0);try{let e=await Gg();await u_({suspension:new j(t,n),world:e,run:r,runReadyBarrier:a})}catch(t){W.warn(`Failed to drain pending queue items for ${i} workflow run`,{workflowRunId:e,message:t instanceof Error?t.message:String(t)})}}}async function ey(e,t,n,i,a,s){return $e(`workflow.run ${t.workflowName}`,async c=>{c?.setAttributes({...me(t.workflowName),...Ye(t.runId),...V(t.status),...Me(n.length)});let l=t.startedAt;if(!l)throw new D(`Workflow run "${t.runId}" has no "startedAt" timestamp (should not happen)`);let u=Cv(t.runId)??+t.createdAt,d=process.env.VERCEL_URL!==void 0,f=d?void 0:await o_(),{context:p,globalThis:m,updateTimestamp:h}=Wv({seed:`${t.runId}:${t.workflowName}:${t.deploymentId}`,fixedTimestamp:u}),g=r(),_=R(()=>m.Math.random()),v=Sv(`useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict`,21,e=>new Uint8Array(e).map(()=>256*m.Math.random())),y={current:Promise.resolve()},b=new Ae(n,{onConsumedEvent:e=>{h(+e.createdAt)},onUnconsumedEvent:e=>{g.reject(new w(`Replay could not consume event: eventType=${e.eventType}, correlationId=${e.correlationId}, eventId=${e.eventId}.`,{eventId:e.eventId}))},getPromiseQueue:()=>y.current}),S={runId:t.runId,encryptionKey:i,globalThis:m,onWorkflowError:g.reject,eventsConsumer:b,generateUlid:()=>_(u),generateNanoid:v,invocationsQueue:new Map,get promiseQueue(){return y.current},set promiseQueue(e){y.current=e},pendingDeliveries:0,pendingDeliveryBarriers:new Map,stepHydrationCache:a};S.eventsConsumer.subscribe(e=>e&&(e.eventType===`run_created`||e.eventType===`run_started`||e.eventType===`attr_set`&&e.eventData.writer.type===`step`)?U.Consumed:U.NotConsumed);let C=wv(S),T=Zv(S),E=Qv(S),k=Yv(S);m[Vt]=C,m[St]=k,m[ln]=T,m[Jt]=E,m[_t]=e=>ye(t.runId,e);let A=d?`https://${process.env.VERCEL_URL}`:`http://localhost:${f??3e3}`;m[Yt]={workflowName:t.workflowName,workflowRunId:t.runId,workflowStartedAt:new m.Date(+l),url:A,features:{encryption:!!i}},m[lt]=_,m.fetch=()=>{throw new m.Error(`Global "fetch" is unavailable in workflow functions. Use the "fetch" step function from "workflow" to make HTTP requests.\n\nLearn more: https://workflow-sdk.dev/err/${x.FETCH_IN_WORKFLOW_FUNCTION}`)};let M=`Timeout functions like "setTimeout" and "setInterval" are not supported in workflow functions. Use the "sleep" function from "workflow" for time-based delays.`;m.setTimeout=()=>{throw new D(M,{slug:x.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},m.setInterval=()=>{throw new D(M,{slug:x.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},m.clearTimeout=()=>{throw new D(M,{slug:x.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},m.clearInterval=()=>{throw new D(M,{slug:x.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},m.setImmediate=()=>{throw new D(M,{slug:x.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},m.clearImmediate=()=>{throw new D(M,{slug:x.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},m.AbortController=Se(S);let P=Nt();m.AbortSignal={abort:P.abort,any:P.any,timeout:P.timeout};class F{cache;credentials;destination;headers;integrity;method;mode;redirect;referrer;referrerPolicy;url;keepalive;signal;duplex;body;constructor(e,t){if(typeof e==`string`||e instanceof m.URL){let t=String(e);try{new m.URL(t),this.url=t}catch(e){throw TypeError(`Failed to parse URL from ${t}`,{cause:e})}}else{if(this.url=e.url,!t){this.method=e.method,this.headers=new m.Headers(e.headers),this.body=e.body,this.mode=e.mode,this.credentials=e.credentials,this.cache=e.cache,this.redirect=e.redirect,this.referrer=e.referrer,this.referrerPolicy=e.referrerPolicy,this.integrity=e.integrity,this.keepalive=e.keepalive,this.signal=e.signal,this.duplex=e.duplex,this.destination=e.destination;return}this.method=e.method,this.headers=new m.Headers(e.headers),this.body=e.body,this.mode=e.mode,this.credentials=e.credentials,this.cache=e.cache,this.redirect=e.redirect,this.referrer=e.referrer,this.referrerPolicy=e.referrerPolicy,this.integrity=e.integrity,this.keepalive=e.keepalive,this.signal=e.signal,this.duplex=e.duplex,this.destination=e.destination}t?.method?this.method=t.method.toUpperCase():typeof this.method!=`string`&&(this.method=`GET`),t?.headers?this.headers=new m.Headers(t.headers):(typeof e==`string`||e instanceof m.URL)&&(this.headers=new m.Headers),t?.mode===void 0?typeof this.mode!=`string`&&(this.mode=`cors`):this.mode=t.mode,t?.credentials===void 0?typeof this.credentials!=`string`&&(this.credentials=`same-origin`):this.credentials=t.credentials,t?.cache===void 0?typeof this.cache!=`string`&&(this.cache=`default`):this.cache=t.cache,t?.redirect===void 0?typeof this.redirect!=`string`&&(this.redirect=`follow`):this.redirect=t.redirect,t?.referrer===void 0?typeof this.referrer!=`string`&&(this.referrer=`about:client`):this.referrer=t.referrer,t?.referrerPolicy===void 0?typeof this.referrerPolicy!=`string`&&(this.referrerPolicy=``):this.referrerPolicy=t.referrerPolicy,t?.integrity===void 0?typeof this.integrity!=`string`&&(this.integrity=``):this.integrity=t.integrity,t?.keepalive===void 0?typeof this.keepalive!=`boolean`&&(this.keepalive=!1):this.keepalive=t.keepalive,t?.signal===void 0?this.signal||={aborted:!1}:this.signal=t.signal,this.duplex||=`half`,this.destination||=`document`;let n=t?.body;if(n!=null&&(this.method===`GET`||this.method===`HEAD`))throw TypeError(`Request with GET/HEAD method cannot have body.`);n==null?this.body=null:this.body=Object.create(m.ReadableStream.prototype,{[jt]:{value:n,writable:!1}})}clone(){Pe()}get bodyUsed(){return!1}blob;formData;arrayBuffer;json;text;async bytes(){return new Uint8Array(await this.arrayBuffer())}}m.Request=F,Object.defineProperties(F.prototype,{arrayBuffer:{value:C(`__builtin_response_array_buffer`),writable:!0,configurable:!0},json:{value:C(`__builtin_response_json`),writable:!0,configurable:!0},text:{value:C(`__builtin_response_text`),writable:!0,configurable:!0}});class I{type;url;status;statusText;body;headers;redirected;constructor(e,t){if(this.status=t?.status??200,this.statusText=t?.statusText??``,this.headers=new m.Headers(t?.headers),this.type=`default`,this.url=``,this.redirected=!1,e!=null&&(this.status===204||this.status===205||this.status===304))throw TypeError(`Response constructor: Invalid response status code ${this.status}`);e==null?this.body=null:this.body=Object.create(m.ReadableStream.prototype,{[jt]:{value:e,writable:!1}})}clone;blob;formData;get ok(){return this.status>=200&&this.status<300}get bodyUsed(){return!1}arrayBuffer;json;text;async bytes(){return new Uint8Array(await this.arrayBuffer())}static json(e,t){let n=JSON.stringify(e),r=new m.Headers(t?.headers);return r.has(`content-type`)||r.set(`content-type`,`application/json`),new I(n,{...t,headers:r})}static error(){Pe()}static redirect(e,t=302){if(![301,302,303,307,308].includes(t))throw RangeError(`Invalid redirect status code: ${t}. Must be one of: 301, 302, 303, 307, 308`);let n=new m.Headers;n.set(`Location`,String(e));let r=Object.create(I.prototype);return r.status=t,r.statusText=``,r.headers=n,r.body=null,r.type=`default`,r.url=``,r.redirected=!1,r}}m.Response=I,Object.defineProperties(I.prototype,{arrayBuffer:{value:C(`__builtin_response_array_buffer`),writable:!0,configurable:!0},json:{value:C(`__builtin_response_json`),writable:!0,configurable:!0},text:{value:C(`__builtin_response_text`),writable:!0,configurable:!0}});class ee{constructor(){Pe()}get locked(){return!1}cancel(){Pe()}getReader(){Pe()}pipeThrough(){Pe()}pipeTo(){Pe()}tee(){Pe()}values(){Pe()}static from(){Pe()}[Symbol.asyncIterator](){Pe()}}m.ReadableStream=ee;class L{constructor(){Pe()}get locked(){return!1}abort(){Pe()}close(){Pe()}getWriter(){Pe()}}m.WritableStream=L;class te{readable;writable;constructor(){Pe()}}m.TransformStream=te,m.console=globalThis.console;let ne=Symbol.for(`@vercel/request-context`);m[ne]=globalThis[ne];let re=o(t.workflowName)?.moduleSpecifier||t.workflowName;Jv(e,re,p);let z=Jv(`globalThis.__private_workflows?.get(${JSON.stringify(t.workflowName)})`,re,p);if(typeof z!=`function`)throw new O(t.workflowName);let ie=[];S.promiseQueue=S.promiseQueue.then(async()=>{ie=await It(t.input,t.runId,i,m)}),await S.promiseQueue,c?.setAttributes({...N(ie.length)});try{let e=await Promise.race([z(...ie),g.promise]),n=await hn(e,t.runId,i,m,!1,(t.specVersion??0)>=5);return c?.setAttributes({...Le(typeof e)}),await $v(t.runId,S.invocationsQueue,m,t,`completed`,s),n}catch(e){throw j.is(e)||w.is(e)||await $v(t.runId,S.invocationsQueue,m,t,`failed`,s),e}})}function ty(e){return D.is(e)?f.RUNTIME_ERROR:Mn(e)?f.WORLD_CONTRACT_ERROR:null}async function ny({world:e,workflowRun:t,runId:n,requestId:r,err:i,errorCode:a,logMessage:o}){W.error(o,{workflowRunId:n,errorCode:a,error:i instanceof Error?i.message:String(i)});try{let o=zt(e,t??n);await e.events.create(n,{eventType:`run_failed`,specVersion:5,eventData:{error:await wt(i,n,await o(),globalThis,(t?.specVersion??0)>=5),errorCode:a}},{requestId:r})}catch(e){if(C.is(e)||y.is(e))return;if(Mn(e)){W.error(`Fatal world contract error while recording workflow failure`,{workflowRunId:n,errorCode:f.WORLD_CONTRACT_ERROR,error:e instanceof Error?e.message:String(e)});return}throw e}}function ry(e,t){let n=e.find(e=>e.runId===t&&(e.eventType===`run_completed`||e.eventType===`run_failed`||e.eventType===`run_cancelled`));return n?(W.debug(`Run reached terminal event, exiting`,{workflowRunId:t,eventType:n.eventType,eventId:n.eventId}),!0):!1}function iy(e){let t=new Set,n=new Set;for(let r of e)r.eventType===`hook_disposed`?t.add(r.correlationId):r.eventType===`wait_completed`&&n.add(r.correlationId);for(let r of e)if(r.eventType===`hook_created`&&!t.has(r.correlationId)||r.eventType===`wait_created`&&!n.has(r.correlationId))return!0;return!1}function ay(e,t){let n=Number(process.env.WORKFLOW_V2_TIMEOUT_MS)||12e4,r=Ge(t?.namespace),a=bn(`workflow`,r),s=t=>t.createQueueHandler(a,async(s,c)=>{let l=cn(s);if(l){await Gt(l,`workflow`,t.specVersion);return}let{runId:u,traceCarrier:d,requestedAt:p,stepId:m,stepName:h,replayDivergence:g,runInput:_}=Ie.parse(s),b=H(d)?d:void 0,{requestId:x}=c,S=c.queueName.slice(a.length),E=W.forRun(u,S);if(c.attempt>48){let e=br(void 0,f.MAX_DELIVERIES_EXCEEDED);E.error(`Workflow handler exceeded max deliveries (${c.attempt}/48)`,{attempt:c.attempt,errorCode:e.errorCode,errorAttribution:e.attribution});try{let e=await Gg(),t=zt(e,u),n=new v(`Workflow exceeded maximum queue deliveries (${c.attempt}/48)`);await e.events.create(u,{eventType:`run_failed`,specVersion:5,eventData:{error:await wt(n,u,await t()),errorCode:f.MAX_DELIVERIES_EXCEEDED}},{requestId:x})}catch(e){if(C.is(e)||y.is(e))return;E.error(`Failed to mark run as failed after ${c.attempt} delivery attempts. A persistent error is preventing the run from being terminated. The run will remain in its current state until manually resolved. This is most likely due to a persistent outage of the workflow backend or a bug in the workflow runtime and should be reported to the Workflow team.`,{attempt:c.attempt,errorName:e instanceof Error?e.name:`UnknownError`,errorMessage:e instanceof Error?e.message:String(e),errorStack:e instanceof Error?e.stack:void 0})}return}let O=ce(),k=()=>Ve(O,b),A=await le(O,b),M=new Jg,N=O===`continuous`?b:void 0,P=await qe(`CONSUMER`);return await Xe(N,async()=>await nt({workflowRunId:u,workflowName:S},async()=>{let t=await $e(`workflow.route.get_world`,async()=>Gg());return $e(`workflow.execute ${i(S)}`,{kind:P,links:A},async i=>{i?.setAttributes({...me(S),...xe(`execute_v2`),...vt(`vercel-queue`),...ht(c.queueName),...Bt(c.messageId),...un(`process`),...At({requestedAt:p}),...Ye(u),...tt(!!b),...ge(O)});let a=Date.now(),s=0,l=null,d=null,A=bv(),N=null,P,F=-1,I,ee,L=jr()&&_!==void 0&&c.attempt===1&&m===void 0&&!g;i?.setAttributes(Qe(L));let te,R=async()=>{if(te)try{await te}catch{}},ne=async e=>{if(!L)return{timeoutSeconds:e};await gt(t,ct(S,r),{runId:u,traceCarrier:await k(),requestedAt:new Date},e>0?{delaySeconds:e}:void 0)};if(m&&h)try{let e=await t.runs.get(u);if(e.status!==`running`){W.debug(`Run already finished, skipping background step`,{workflowRunId:u,status:e.status});return}let n=e.startedAt?+e.startedAt:Date.now();M.pause();let i;try{i=await c_({world:t,workflowRunId:u,workflowDeploymentId:e.deploymentId,workflowName:S,workflowStartedAt:n,stepId:m,stepName:h,runSpecVersion:e.specVersion})}finally{M.resume()}if(i.type===`retry`||i.type===`throttled`)return{timeoutSeconds:i.timeoutSeconds};if(i.type===`completed`&&i.hasPendingOps){await gt(t,ct(S,r),{runId:u,traceCarrier:await k(),requestedAt:new Date});return}if(i.type===`completed`||i.type===`failed`||i.type===`skipped`){let t=await pt(u);l=t.events,d=t.cursor;let r=new Set,i=new Set;for(let e of l)e.eventType===`step_created`?r.add(e.correlationId):(e.eventType===`step_completed`||e.eventType===`step_failed`)&&i.add(e.correlationId);let a=!1;for(let e of r)if(!i.has(e)){a=!0;break}if(a){W.debug(`Background step done but other steps pending, returning`,{workflowRunId:u});return}W.debug(`All parallel steps done, replaying inline after background step`,{workflowRunId:u}),P=e,F=n}else return}catch(e){let n=ty(e);if(!n)throw e;await ny({world:t,workflowRun:P,runId:u,requestId:x,err:e,errorCode:n,logMessage:`Fatal error while preparing background workflow step`});return}if(!P){let e={eventType:`run_started`,specVersion:_?.specVersion??5,..._?{eventData:{input:_.input,deploymentId:_.deploymentId,workflowName:_.workflowName,executionContext:_.executionContext,attributes:_.attributes,allowReservedAttributes:_.allowReservedAttributes}}:{}},n=e=>{i?.addEvent(`workflow.run_started.create.start`,{"workflow.run_started.skip_preload":e})};if(L&&_){n(!0);let r=t.events.create(u,e,{requestId:x,skipPreload:!0});te=r,r.catch(()=>{}),I=[];let a=new Date;P={runId:u,status:`running`,deploymentId:_.deploymentId,workflowName:_.workflowName,specVersion:_.specVersion,executionContext:_.executionContext,input:_.input,attributes:_.attributes??{},startedAt:a,createdAt:a,updatedAt:a},F=+a,i?.setAttributes({...V(`running`),...ve(F)})}else{try{n(!1);let r=await t.events.create(u,e,{requestId:x});if(!r.run)throw new D(`Event creation for 'run_started' did not return the run entity for run "${u}"`);if(P=r.run,r.events&&r.events.length>0&&r.hasMore!==!0&&(I=r.events,ee=r.cursor),!P.startedAt)throw new D(`Workflow run "${u}" has no "startedAt" timestamp`)}catch(e){if(C.is(e)||y.is(e)){W.info(`Run already finished during setup, skipping`,{workflowRunId:u,message:e.message});return}else{let n=ty(e);if(!n)throw e;await ny({world:t,workflowRun:P,runId:u,requestId:x,err:e,errorCode:n,logMessage:`Fatal runtime error during workflow setup`});return}}if(F=+P.startedAt,i?.setAttributes({...V(P.status),...ve(F)}),P.status!==`running`){W.info(`Workflow already completed or failed, skipping`,{workflowRunId:u,status:P.status});return}}}let re=await zt(t,P)();for(;;){if(s++,M.isExhausted()){await Yg({runId:u,workflowName:S,requestId:x,attempt:c.attempt,limitMs:M.configuredLimitMs});return}if(Date.now()-a>=n){W.info(`V2 timeout reached, re-scheduling workflow`,{workflowRunId:u,loopIteration:s,elapsedMs:Date.now()-a}),await gt(t,ct(S,r),{runId:u,traceCarrier:await k(),requestedAt:new Date});return}let p=0,m=null;try{let n;if(N&&l){let e=N;if(N=null,e.events.length>0){let t=new Set(l.map(e=>e.eventId));for(let n of e.events)t.has(n.eventId)||(t.add(n.eventId),l.push(n))}d=e.cursor??d,n=l}else if(l===null)if(I)n=I,d=ee??null;else{let e=await pt(u);n=e.events,d=e.cursor}else if(d){let e=await pt(u,d);if(e.events.length>0){let t=new Set(l.map(e=>e.eventId));for(let n of e.events)t.has(n.eventId)||(t.add(n.eventId),l.push(n))}d=e.cursor??d,n=l}else if(I){W.debug(`No cursor after preloaded-events first iteration; doing full reload to pick up cursor.`,{workflowRunId:u});let e=await pt(u);l=e.events,d=e.cursor,n=l}else{W.warn(`Event cursor missing after initial load — falling back to full reload. This indicates a bug in the World implementation.`,{workflowRunId:u});let e=await pt(u);l=e.events,d=e.cursor,n=l}if(ry(n,u))return;let r=Date.now(),a=new Set(n.filter(e=>e.eventType===`wait_completed`).map(e=>e.correlationId)),o=n.filter(e=>e.eventType===`wait_created`&&e.correlationId!==void 0&&!a.has(e.correlationId)&&r>=e.eventData.resumeAt.getTime()).map(e=>({eventType:`wait_completed`,specVersion:5,correlationId:e.correlationId,eventData:{resumeAt:e.eventData.resumeAt}}));for(let e of o)try{await t.events.create(u,e,{requestId:x})}catch(t){if(C.is(t)){W.info(`Wait already completed, skipping`,{workflowRunId:u,correlationId:e.correlationId});continue}throw t}if(o.length>0)if(d){let e=await pt(u,d),t=new Set(e.events.filter(e=>e.eventType===`wait_completed`).map(e=>e.correlationId));if(o.every(e=>t.has(e.correlationId))){let t=new Set(n.map(e=>e.eventId));for(let r of e.events)t.has(r.eventId)||(t.add(r.eventId),n.push(r));d=e.cursor??d}else{let e=await pt(u);n=e.events,d=e.cursor}}else{let e=await pt(u);n=e.events,d=e.cursor}if(ry(n,u))return;l=n,m=d,W.debug(`Starting workflow replay`,{workflowRunId:u,loopIteration:s,eventCount:n.length}),p=Date.now();let c=await ey(e,P,n,re,A,te);W.debug(`Workflow replay completed`,{workflowRunId:u,loopIteration:s,replayMs:Date.now()-p});try{await R(),await t.events.create(u,{eventType:`run_completed`,specVersion:5,eventData:{output:c}},{requestId:x})}catch(e){if(C.is(e)||y.is(e)){W.info(`Tried completing workflow run, but run has already finished.`,{workflowRunId:u,message:e.message});return}throw e}i?.setAttributes({...V(`completed`)});return}catch(n){if(j.is(n)){W.debug(`Workflow suspended`,{workflowRunId:u,loopIteration:s,replayMs:Date.now()-p,steps:n.stepCount,hooks:n.hookCount,waits:n.waitCount});let e=ae(n.stepCount,n.hookCount,n.waitCount);e&&W.debug(e);let a=Date.now(),o;try{o=await u_({suspension:n,world:t,run:P,span:i,requestId:x,runReadyBarrier:te})}catch(e){if(!v.is(e))throw e;let n=Bn(e);W.error(`Non-retryable error while committing workflow suspension; failing run`,{workflowRunId:u,errorCode:n,errorName:e.name,errorMessage:e.message});try{await R(),await t.events.create(u,{eventType:`run_failed`,specVersion:5,eventData:{error:await wt(e,u,re,globalThis,(P?.specVersion??0)>=5),errorCode:n}},{requestId:x})}catch(e){if(C.is(e)||y.is(e)){W.info(`Tried failing workflow run, but run has already finished.`,{workflowRunId:u,message:e.message});return}throw e}i?.setAttributes({...V(`failed`),...Ft(n),...Ee(e.name),...we(e.message),...sn(e.name)});return}if(W.debug(`Suspension handled`,{workflowRunId:u,suspensionMs:Date.now()-a,pendingSteps:o.pendingSteps.length,timeoutSeconds:o.waitTimeout?.seconds,hasHookConflict:o.hasHookConflict,hasAwaitedHookCreation:o.hasAwaitedHookCreation,hasAttributeEvents:o.hasAttributeEvents}),o.hasHookConflict||o.hasAttributeEvents)return await ne(0);let c=o.pendingSteps,d=o.lazyInlineSteps,f=new Set(d.map(e=>e.correlationId)),h=await k(),g=[];for(let e of c)f.has(e.correlationId)||g.push(gt(t,ct(S,r),{runId:u,stepId:e.correlationId,stepName:e.stepName,traceCarrier:h,requestedAt:new Date},{idempotencyKey:e.correlationId}));if(o.waitTimeout&&g.push(gt(t,ct(S,r),{runId:u,traceCarrier:h,requestedAt:new Date},p_(o.waitTimeout.seconds,o.waitTimeout.correlationId))),await Promise.all(g),d.length===0)return o.hasAwaitedHookCreation?await ne(0):void 0;let _=typeof m==`string`&&n.stepCount===1&&n.hookCount===0&&n.waitCount===0&&c.length===1&&d.length===1&&!o.waitTimeout&&!iy(l??[]),b=L&&!o.waitTimeout&&!o.hasHookEvents&&!o.hasAttributeEvents&&!o.hasAwaitedHookCreation&&!iy(l??[]);M.pause();let w;try{w=await Promise.all(d.map(e=>c_({world:t,workflowRunId:u,workflowDeploymentId:P.deploymentId,workflowName:S,workflowStartedAt:F,stepId:e.correlationId,stepName:e.stepName,runSpecVersion:P.specVersion,lazyStepInput:e.dehydratedInput,forceOptimisticStart:b,runReadyBarrier:te,..._&&m?{inlineDeltaSinceCursor:m}:{}})))}finally{M.resume()}let T=[],E=!1,D;for(let e=0;e<d.length;e++){let t=w[e],n=d[e];t.type===`retry`?T.push({step:n,delaySeconds:t.timeoutSeconds}):t.type===`throttled`?D=Math.max(D??0,t.timeoutSeconds):t.type===`completed`&&t.hasPendingOps&&(E=!0)}if(D!==void 0)return await ne(D);if(T.length>0){let e=await k();await Promise.all(T.map(({step:n,delaySeconds:i})=>gt(t,ct(S,r),{runId:u,stepId:n.correlationId,stepName:n.stepName,traceCarrier:e,requestedAt:new Date},{delaySeconds:i,idempotencyKey:n.correlationId})))}if(E){W.debug(`Breaking loop: inline step has pending ops`,{workflowRunId:u,loopIteration:s}),await gt(t,ct(S,r),{runId:u,traceCarrier:await k(),requestedAt:new Date});return}if(T.length>0)return;if(d.length===1){let e=w[0];e.type===`completed`&&e.inlineDelta&&!e.inlineDelta.hasMore&&(N={events:e.inlineDelta.events,cursor:e.inlineDelta.cursor})}}else{if(jn(n))throw E.warn(`Transient world error during replay; redelivering via queue instead of failing the run`,{errorName:n instanceof Error?n.name:`UnknownError`,errorMessage:n instanceof Error?n.message:String(n),deliveryAttempt:c.attempt}),n;let a=n;if(w.is(n)){let e=(g?.count??0)+1;if(e<=3){E.warn(`Workflow replay diverged; queueing a recovery replay before declaring the event log corrupted`,{errorCode:f.REPLAY_DIVERGENCE,divergenceEventId:n.eventId,priorDivergenceEventId:g?.eventId,divergenceCount:e,deliveryAttempt:c.attempt,maxRecoveryReplays:3,errorMessage:n.message}),await gt(t,ct(S,r),{runId:u,traceCarrier:await k(),requestedAt:new Date,replayDivergence:{eventId:n.eventId,count:e}});return}a=new T(`Workflow replay diverged ${e} times after 3 recovery replays; latest divergent event was ${n.eventId}. Last divergence: ${n.message}`,{cause:n})}a instanceof Error&&i?.recordException?.(a);let s=await n_(a),l=s.name||Xg(a),d=s.message,p=s.stack||Zg(a);if(p){let t=o(S)?.moduleSpecifier||S;p=_v(p,t,e)}let m=Bn(a);W.error(`Error while running workflow`,{workflowRunId:u,errorCode:m,errorName:l,errorStack:p}),Kn.isNativeError(a)&&p&&(a.stack=p);try{await R(),await t.events.create(u,{eventType:`run_failed`,specVersion:5,eventData:{error:await wt(a,u,re,globalThis,(P?.specVersion??0)>=5),errorCode:m}},{requestId:x})}catch(e){if(C.is(e)||y.is(e)){W.info(`Tried failing workflow run, but run has already finished.`,{workflowRunId:u,message:e.message});return}if(Mn(e)){W.error(`Fatal world contract error while recording workflow failure`,{workflowRunId:u,errorCode:f.WORLD_CONTRACT_ERROR,error:e instanceof Error?e.message:String(e)});return}throw e}i?.setAttributes({...V(`failed`),...Ft(m),...Ee(l),...we(d),...sn(l)});return}}}})}))}),c,l=0,u=Date.now(),d=typeof t?.routeModuleBodyStartedAt==`number`?u-t.routeModuleBodyStartedAt:void 0;return xt(async e=>{l+=1;let t=c!==void 0;return $e(`workflow.route.flow`,{kind:await qe(`SERVER`),attributes:{...Ue(`flow`),...I(t),...Ke(l),...xn(Date.now()-u),...d===void 0?{}:de(d),...dt(e.method),...rn(`/.well-known/workflow/v1/flow`)}},async t=>{c||=await $e(`workflow.route.init`,async()=>s(await $e(`workflow.route.get_world_handlers`,async()=>Wg())));let n=await c(e);return n instanceof Response&&t?.setAttributes(qt(n.status)),n})})}export{zn as Run,j as WorkflowSuspension,Ln as cancelRun,Ug as createWorld,On as getHookByToken,Fn as getRun,Gg as getWorld,Wg as getWorldHandlers,tn as healthCheck,xc as i,Nn as listStreams,od as n,Dc as r,kn as readStream,In as recreateRunFromExisting,Rn as reenqueueRun,En as resumeHook,Dn as resumeWebhook,Kg as setWorld,Pn as start,fd as t,An as wakeUpRun,ay as workflowEntrypoint};
|