switchboard-router 0.9.19 → 0.9.21
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/app/.next/static/chunks/{1321-01d6c3198a6dd868.js → 1321-de2662d28ab47cf8.js} +1 -1
- package/app/.next-cli-build/BUILD_ID +1 -1
- package/app/.next-cli-build/app-path-routes-manifest.json +10 -10
- package/app/.next-cli-build/build-manifest.json +2 -2
- package/app/.next-cli-build/prerender-manifest.json +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/agent-library/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/routing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_global-error.html +1 -1
- package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_not-found.html +1 -1
- package/app/.next-cli-build/server/app/_not-found.rsc +3 -3
- package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/aider-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +5 -5
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/gemini-cli-settings/route.js +3 -3
- package/app/.next-cli-build/server/app/api/cli-tools/grok-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/pi-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/route.js +1 -1
- package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/callback.html +1 -1
- package/app/.next-cli-build/server/app/callback.rsc +3 -3
- package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/index.html +1 -1
- package/app/.next-cli-build/server/app/index.rsc +3 -3
- package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/landing.html +1 -1
- package/app/.next-cli-build/server/app/landing.rsc +3 -3
- package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/login.html +1 -1
- package/app/.next-cli-build/server/app/login.rsc +3 -3
- package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app-paths-manifest.json +10 -10
- package/app/.next-cli-build/server/chunks/3423.js +1 -1
- package/app/.next-cli-build/server/chunks/369.js +5 -5
- package/app/.next-cli-build/server/chunks/519.js +1 -1
- package/app/.next-cli-build/server/chunks/7454.js +1 -1
- package/app/.next-cli-build/server/chunks/8400.js +2 -2
- package/app/.next-cli-build/server/chunks/869.js +1 -1
- package/app/.next-cli-build/server/chunks/8998.js +2 -2
- package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
- package/app/.next-cli-build/server/pages/404.html +1 -1
- package/app/.next-cli-build/server/pages/500.html +1 -1
- package/app/.next-cli-build/server/server-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/server-reference-manifest.json +1 -1
- package/app/.next-cli-build/static/chunks/{1321-01d6c3198a6dd868.js → 1321-de2662d28ab47cf8.js} +1 -1
- package/app/open-sse/identity/tls/bin/darwin/arm64/switchboard-claude-tls +0 -0
- package/app/open-sse/identity/tls/bin/darwin/x64/switchboard-claude-tls +0 -0
- package/app/open-sse/identity/tls/bin/linux/arm64/switchboard-claude-tls +0 -0
- package/app/open-sse/identity/tls/bin/linux/x64/switchboard-claude-tls +0 -0
- package/app/open-sse/identity/tls/bin/win32/arm64/switchboard-claude-tls.exe +0 -0
- package/app/open-sse/identity/tls/bin/win32/x64/switchboard-claude-tls.exe +0 -0
- package/app/package.json +1 -1
- package/package.json +1 -1
- /package/app/.next/static/{lpJKSCNHmXiuvzItFS9ky → lkpY_OQyrCAqK5SbBagdh}/_buildManifest.js +0 -0
- /package/app/.next/static/{lpJKSCNHmXiuvzItFS9ky → lkpY_OQyrCAqK5SbBagdh}/_ssgManifest.js +0 -0
- /package/app/.next-cli-build/static/{lpJKSCNHmXiuvzItFS9ky → lkpY_OQyrCAqK5SbBagdh}/_buildManifest.js +0 -0
- /package/app/.next-cli-build/static/{lpJKSCNHmXiuvzItFS9ky → lkpY_OQyrCAqK5SbBagdh}/_ssgManifest.js +0 -0
|
@@ -387,7 +387,7 @@ ${a.format(b)}`.trim():`${b.length} interceptors are pending:
|
|
|
387
387
|
|
|
388
388
|
${a.format(b)}`.trim())}}a.exports=G},65737:(a,b,c)=>{var d=c(45654);c(45518),c(63070),c(88819),c(1277),c(15529),c(36105),c(49345),c(87981),c(10401),c(33889);var e=d.asn1,f=a.exports=d.pki=d.pki||{},g=f.oids,h={};h.CN=g.commonName,h.commonName="CN",h.C=g.countryName,h.countryName="C",h.L=g.localityName,h.localityName="L",h.ST=g.stateOrProvinceName,h.stateOrProvinceName="ST",h.O=g.organizationName,h.organizationName="O",h.OU=g.organizationalUnitName,h.organizationalUnitName="OU",h.E=g.emailAddress,h.emailAddress="E";var i=d.pki.rsa.publicKeyValidator,j={name:"Certificate",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"tbsCertificate",value:[{name:"Certificate.TBSCertificate.version",tagClass:e.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.version.integer",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"certVersion"}]},{name:"Certificate.TBSCertificate.serialNumber",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"certSerialNumber"},{name:"Certificate.TBSCertificate.signature",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.signature.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"certinfoSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:e.Class.UNIVERSAL,optional:!0,captureAsn1:"certinfoSignatureParams"}]},{name:"Certificate.TBSCertificate.issuer",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"certIssuer"},{name:"Certificate.TBSCertificate.validity",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.validity.notBefore (utc)",tagClass:e.Class.UNIVERSAL,type:e.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity1UTCTime"},{name:"Certificate.TBSCertificate.validity.notBefore (generalized)",tagClass:e.Class.UNIVERSAL,type:e.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity2GeneralizedTime"},{name:"Certificate.TBSCertificate.validity.notAfter (utc)",tagClass:e.Class.UNIVERSAL,type:e.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity3UTCTime"},{name:"Certificate.TBSCertificate.validity.notAfter (generalized)",tagClass:e.Class.UNIVERSAL,type:e.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity4GeneralizedTime"}]},{name:"Certificate.TBSCertificate.subject",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"certSubject"},i,{name:"Certificate.TBSCertificate.issuerUniqueID",tagClass:e.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.issuerUniqueID.id",tagClass:e.Class.UNIVERSAL,type:e.Type.BITSTRING,constructed:!1,captureBitStringValue:"certIssuerUniqueId"}]},{name:"Certificate.TBSCertificate.subjectUniqueID",tagClass:e.Class.CONTEXT_SPECIFIC,type:2,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.subjectUniqueID.id",tagClass:e.Class.UNIVERSAL,type:e.Type.BITSTRING,constructed:!1,captureBitStringValue:"certSubjectUniqueId"}]},{name:"Certificate.TBSCertificate.extensions",tagClass:e.Class.CONTEXT_SPECIFIC,type:3,constructed:!0,captureAsn1:"certExtensions",optional:!0}]},{name:"Certificate.signatureAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.signatureAlgorithm.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"certSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:e.Class.UNIVERSAL,optional:!0,captureAsn1:"certSignatureParams"}]},{name:"Certificate.signatureValue",tagClass:e.Class.UNIVERSAL,type:e.Type.BITSTRING,constructed:!1,captureBitStringValue:"certSignature"}]},k={name:"rsapss",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.hashAlgorithm",tagClass:e.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier",tagClass:e.Class.UNIVERSAL,type:e.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"hashOid"}]}]},{name:"rsapss.maskGenAlgorithm",tagClass:e.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier",tagClass:e.Class.UNIVERSAL,type:e.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"maskGenOid"},{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"maskGenHashOid"}]}]}]},{name:"rsapss.saltLength",tagClass:e.Class.CONTEXT_SPECIFIC,type:2,optional:!0,value:[{name:"rsapss.saltLength.saltLength",tagClass:e.Class.UNIVERSAL,type:e.Class.INTEGER,constructed:!1,capture:"saltLength"}]},{name:"rsapss.trailerField",tagClass:e.Class.CONTEXT_SPECIFIC,type:3,optional:!0,value:[{name:"rsapss.trailer.trailer",tagClass:e.Class.UNIVERSAL,type:e.Class.INTEGER,constructed:!1,capture:"trailer"}]}]},l={name:"CertificationRequestInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfo",value:[{name:"CertificationRequestInfo.integer",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"certificationRequestInfoVersion"},{name:"CertificationRequestInfo.subject",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfoSubject"},i,{name:"CertificationRequestInfo.attributes",tagClass:e.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"certificationRequestInfoAttributes",value:[{name:"CertificationRequestInfo.attributes",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequestInfo.attributes.type",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1},{name:"CertificationRequestInfo.attributes.value",tagClass:e.Class.UNIVERSAL,type:e.Type.SET,constructed:!0}]}]}]},m={name:"CertificationRequest",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"csr",value:[l,{name:"CertificationRequest.signatureAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequest.signatureAlgorithm.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"csrSignatureOid"},{name:"CertificationRequest.signatureAlgorithm.parameters",tagClass:e.Class.UNIVERSAL,optional:!0,captureAsn1:"csrSignatureParams"}]},{name:"CertificationRequest.signature",tagClass:e.Class.UNIVERSAL,type:e.Type.BITSTRING,constructed:!1,captureBitStringValue:"csrSignature"}]};function n(a,b){"string"==typeof b&&(b={shortName:b});for(var c,d=null,e=0;null===d&&e<a.attributes.length;++e)c=a.attributes[e],b.type&&b.type===c.type||b.name&&b.name===c.name?d=c:b.shortName&&b.shortName===c.shortName&&(d=c);return d}f.RDNAttributesAsArray=function(a,b){for(var c,d,f,i=[],j=0;j<a.value.length;++j){c=a.value[j];for(var k=0;k<c.value.length;++k)f={},d=c.value[k],f.type=e.derToOid(d.value[0].value),f.value=d.value[1].value,f.valueTagClass=d.value[1].type,f.type in g&&(f.name=g[f.type],f.name in h&&(f.shortName=h[f.name])),b&&(b.update(f.type),b.update(f.value)),i.push(f)}return i},f.CRIAttributesAsArray=function(a){for(var b=[],c=0;c<a.length;++c)for(var d=a[c],i=e.derToOid(d.value[0].value),j=d.value[1].value,k=0;k<j.length;++k){var l={};if(l.type=i,l.value=j[k].value,l.valueTagClass=j[k].type,l.type in g&&(l.name=g[l.type],l.name in h&&(l.shortName=h[l.name])),l.type===g.extensionRequest){l.extensions=[];for(var m=0;m<l.value.length;++m)l.extensions.push(f.certificateExtensionFromAsn1(l.value[m]))}b.push(l)}return b};var o=function(a,b,c){var d={};if(a!==g["RSASSA-PSS"])return d;c&&(d={hash:{algorithmOid:g.sha1},mgf:{algorithmOid:g.mgf1,hash:{algorithmOid:g.sha1}},saltLength:20});var f={},h=[];if(!e.validate(b,k,f,h)){var i=Error("Cannot read RSASSA-PSS parameter block.");throw i.errors=h,i}return void 0!==f.hashOid&&(d.hash=d.hash||{},d.hash.algorithmOid=e.derToOid(f.hashOid)),void 0!==f.maskGenOid&&(d.mgf=d.mgf||{},d.mgf.algorithmOid=e.derToOid(f.maskGenOid),d.mgf.hash=d.mgf.hash||{},d.mgf.hash.algorithmOid=e.derToOid(f.maskGenHashOid)),void 0!==f.saltLength&&(d.saltLength=f.saltLength.charCodeAt(0)),d},p=function(a){switch(g[a.signatureOid]){case"sha1WithRSAEncryption":case"sha1WithRSASignature":return d.md.sha1.create();case"md5WithRSAEncryption":return d.md.md5.create();case"sha256WithRSAEncryption":case"RSASSA-PSS":return d.md.sha256.create();case"sha384WithRSAEncryption":return d.md.sha384.create();case"sha512WithRSAEncryption":return d.md.sha512.create();default:var b=Error("Could not compute "+a.type+" digest. Unknown signature OID.");throw b.signatureOid=a.signatureOid,b}},q=function(a){var b,c,e,f=a.certificate;switch(f.signatureOid){case g.sha1WithRSAEncryption:case g.sha1WithRSASignature:break;case g["RSASSA-PSS"]:if(void 0===(c=g[f.signatureParameters.mgf.hash.algorithmOid])||void 0===d.md[c]){var h=Error("Unsupported MGF hash function.");throw h.oid=f.signatureParameters.mgf.hash.algorithmOid,h.name=c,h}if(void 0===(e=g[f.signatureParameters.mgf.algorithmOid])||void 0===d.mgf[e]){var h=Error("Unsupported MGF function.");throw h.oid=f.signatureParameters.mgf.algorithmOid,h.name=e,h}if(e=d.mgf[e].create(d.md[c].create()),void 0===(c=g[f.signatureParameters.hash.algorithmOid])||void 0===d.md[c]){var h=Error("Unsupported RSASSA-PSS hash function.");throw h.oid=f.signatureParameters.hash.algorithmOid,h.name=c,h}b=d.pss.create(d.md[c].create(),e,f.signatureParameters.saltLength)}return f.publicKey.verify(a.md.digest().getBytes(),a.signature,b)};function r(a){for(var b,c,f=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[]),g=a.attributes,h=0;h<g.length;++h){var i=(b=g[h]).value,j=e.Type.PRINTABLESTRING;"valueTagClass"in b&&(j=b.valueTagClass)===e.Type.UTF8&&(i=d.util.encodeUtf8(i)),c=e.create(e.Class.UNIVERSAL,e.Type.SET,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(b.type).getBytes()),e.create(e.Class.UNIVERSAL,j,!1,i)])]),f.value.push(c)}return f}function s(a){for(var b,c=0;c<a.length;++c){if(void 0===(b=a[c]).name&&(b.type&&b.type in f.oids?b.name=f.oids[b.type]:b.shortName&&b.shortName in h&&(b.name=f.oids[h[b.shortName]])),void 0===b.type)if(b.name&&b.name in f.oids)b.type=f.oids[b.name];else{var d=Error("Attribute type not specified.");throw d.attribute=b,d}if(void 0===b.shortName&&b.name&&b.name in h&&(b.shortName=h[b.name]),b.type===g.extensionRequest&&(b.valueConstructed=!0,b.valueTagClass=e.Type.SEQUENCE,!b.value&&b.extensions)){b.value=[];for(var i=0;i<b.extensions.length;++i)b.value.push(f.certificateExtensionToAsn1(t(b.extensions[i])))}if(void 0===b.value){var d=Error("Attribute value not specified.");throw d.attribute=b,d}}}function t(a,b){if(b=b||{},void 0===a.name&&a.id&&a.id in f.oids&&(a.name=f.oids[a.id]),void 0===a.id)if(a.name&&a.name in f.oids)a.id=f.oids[a.name];else{var c=Error("Extension ID not specified.");throw c.extension=a,c}if(void 0!==a.value)return a;if("keyUsage"===a.name){var h=0,i=0,j=0;a.digitalSignature&&(i|=128,h=7),a.nonRepudiation&&(i|=64,h=6),a.keyEncipherment&&(i|=32,h=5),a.dataEncipherment&&(i|=16,h=4),a.keyAgreement&&(i|=8,h=3),a.keyCertSign&&(i|=4,h=2),a.cRLSign&&(i|=2,h=1),a.encipherOnly&&(i|=1,h=0),a.decipherOnly&&(j|=128,h=7);var k=String.fromCharCode(h);0!==j?k+=String.fromCharCode(i)+String.fromCharCode(j):0!==i&&(k+=String.fromCharCode(i)),a.value=e.create(e.Class.UNIVERSAL,e.Type.BITSTRING,!1,k)}else if("basicConstraints"===a.name)a.value=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[]),a.cA&&a.value.value.push(e.create(e.Class.UNIVERSAL,e.Type.BOOLEAN,!1,String.fromCharCode(255))),"pathLenConstraint"in a&&a.value.value.push(e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,e.integerToDer(a.pathLenConstraint).getBytes()));else if("extKeyUsage"===a.name){a.value=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[]);var l=a.value.value;for(var m in a)!0===a[m]&&(m in g?l.push(e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(g[m]).getBytes())):-1!==m.indexOf(".")&&l.push(e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(m).getBytes())))}else if("nsCertType"===a.name){var h=0,i=0;a.client&&(i|=128,h=7),a.server&&(i|=64,h=6),a.email&&(i|=32,h=5),a.objsign&&(i|=16,h=4),a.reserved&&(i|=8,h=3),a.sslCA&&(i|=4,h=2),a.emailCA&&(i|=2,h=1),a.objCA&&(i|=1,h=0);var k=String.fromCharCode(h);0!==i&&(k+=String.fromCharCode(i)),a.value=e.create(e.Class.UNIVERSAL,e.Type.BITSTRING,!1,k)}else if("subjectAltName"===a.name||"issuerAltName"===a.name){a.value=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[]);for(var n,o=0;o<a.altNames.length;++o){var k=(n=a.altNames[o]).value;if(7===n.type&&n.ip){if(null===(k=d.util.bytesFromIP(n.ip))){var c=Error('Extension "ip" value is not a valid IPv4 or IPv6 address.');throw c.extension=a,c}}else 8===n.type&&(k=n.oid?e.oidToDer(e.oidToDer(n.oid)):e.oidToDer(k));a.value.value.push(e.create(e.Class.CONTEXT_SPECIFIC,n.type,!1,k))}}else if("nsComment"===a.name&&b.cert){if(!/^[\x00-\x7F]*$/.test(a.comment)||a.comment.length<1||a.comment.length>128)throw Error('Invalid "nsComment" content.');a.value=e.create(e.Class.UNIVERSAL,e.Type.IA5STRING,!1,a.comment)}else if("subjectKeyIdentifier"===a.name&&b.cert){var p=b.cert.generateSubjectKeyIdentifier();a.subjectKeyIdentifier=p.toHex(),a.value=e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,p.getBytes())}else if("authorityKeyIdentifier"===a.name&&b.cert){a.value=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[]);var l=a.value.value;if(a.keyIdentifier){var q=!0===a.keyIdentifier?b.cert.generateSubjectKeyIdentifier().getBytes():a.keyIdentifier;l.push(e.create(e.Class.CONTEXT_SPECIFIC,0,!1,q))}if(a.authorityCertIssuer){var s=[e.create(e.Class.CONTEXT_SPECIFIC,4,!0,[r(!0===a.authorityCertIssuer?b.cert.issuer:a.authorityCertIssuer)])];l.push(e.create(e.Class.CONTEXT_SPECIFIC,1,!0,s))}if(a.serialNumber){var t=d.util.hexToBytes(!0===a.serialNumber?b.cert.serialNumber:a.serialNumber);l.push(e.create(e.Class.CONTEXT_SPECIFIC,2,!1,t))}}else if("cRLDistributionPoints"===a.name){a.value=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[]);for(var n,l=a.value.value,u=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[]),v=e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[]),o=0;o<a.altNames.length;++o){var k=(n=a.altNames[o]).value;if(7===n.type&&n.ip){if(null===(k=d.util.bytesFromIP(n.ip))){var c=Error('Extension "ip" value is not a valid IPv4 or IPv6 address.');throw c.extension=a,c}}else 8===n.type&&(k=n.oid?e.oidToDer(e.oidToDer(n.oid)):e.oidToDer(k));v.value.push(e.create(e.Class.CONTEXT_SPECIFIC,n.type,!1,k))}u.value.push(e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[v])),l.push(u)}if(void 0===a.value){var c=Error("Extension value not specified.");throw c.extension=a,c}return a}function u(a,b){if(a!==g["RSASSA-PSS"])return e.create(e.Class.UNIVERSAL,e.Type.NULL,!1,"");var c=[];return void 0!==b.hash.algorithmOid&&c.push(e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(b.hash.algorithmOid).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.NULL,!1,"")])])),void 0!==b.mgf.algorithmOid&&c.push(e.create(e.Class.CONTEXT_SPECIFIC,1,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(b.mgf.algorithmOid).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(b.mgf.hash.algorithmOid).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.NULL,!1,"")])])])),void 0!==b.saltLength&&c.push(e.create(e.Class.CONTEXT_SPECIFIC,2,!0,[e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,e.integerToDer(b.saltLength).getBytes())])),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,c)}f.certificateFromPem=function(a,b,c){var g=d.pem.decode(a)[0];if("CERTIFICATE"!==g.type&&"X509 CERTIFICATE"!==g.type&&"TRUSTED CERTIFICATE"!==g.type){var h=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".');throw h.headerType=g.type,h}if(g.procType&&"ENCRYPTED"===g.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");var i=e.fromDer(g.body,c);return f.certificateFromAsn1(i,b)},f.certificateToPem=function(a,b){var c={type:"CERTIFICATE",body:e.toDer(f.certificateToAsn1(a)).getBytes()};return d.pem.encode(c,{maxline:b})},f.publicKeyFromPem=function(a){var b=d.pem.decode(a)[0];if("PUBLIC KEY"!==b.type&&"RSA PUBLIC KEY"!==b.type){var c=Error('Could not convert public key from PEM; PEM header type is not "PUBLIC KEY" or "RSA PUBLIC KEY".');throw c.headerType=b.type,c}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert public key from PEM; PEM is encrypted.");var g=e.fromDer(b.body);return f.publicKeyFromAsn1(g)},f.publicKeyToPem=function(a,b){var c={type:"PUBLIC KEY",body:e.toDer(f.publicKeyToAsn1(a)).getBytes()};return d.pem.encode(c,{maxline:b})},f.publicKeyToRSAPublicKeyPem=function(a,b){var c={type:"RSA PUBLIC KEY",body:e.toDer(f.publicKeyToRSAPublicKey(a)).getBytes()};return d.pem.encode(c,{maxline:b})},f.getPublicKeyFingerprint=function(a,b){var c,g=(b=b||{}).md||d.md.sha1.create();switch(b.type||"RSAPublicKey"){case"RSAPublicKey":c=e.toDer(f.publicKeyToRSAPublicKey(a)).getBytes();break;case"SubjectPublicKeyInfo":c=e.toDer(f.publicKeyToAsn1(a)).getBytes();break;default:throw Error('Unknown fingerprint type "'+b.type+'".')}g.start(),g.update(c);var h=g.digest();if("hex"===b.encoding){var i=h.toHex();return b.delimiter?i.match(/.{2}/g).join(b.delimiter):i}if("binary"===b.encoding)return h.getBytes();if(b.encoding)throw Error('Unknown encoding "'+b.encoding+'".');return h},f.certificationRequestFromPem=function(a,b,c){var g=d.pem.decode(a)[0];if("CERTIFICATE REQUEST"!==g.type){var h=Error('Could not convert certification request from PEM; PEM header type is not "CERTIFICATE REQUEST".');throw h.headerType=g.type,h}if(g.procType&&"ENCRYPTED"===g.procType.type)throw Error("Could not convert certification request from PEM; PEM is encrypted.");var i=e.fromDer(g.body,c);return f.certificationRequestFromAsn1(i,b)},f.certificationRequestToPem=function(a,b){var c={type:"CERTIFICATE REQUEST",body:e.toDer(f.certificationRequestToAsn1(a)).getBytes()};return d.pem.encode(c,{maxline:b})},f.createCertificate=function(){var a={};return a.version=2,a.serialNumber="00",a.signatureOid=null,a.signature=null,a.siginfo={},a.siginfo.algorithmOid=null,a.validity={},a.validity.notBefore=new Date,a.validity.notAfter=new Date,a.issuer={},a.issuer.getField=function(b){return n(a.issuer,b)},a.issuer.addField=function(b){s([b]),a.issuer.attributes.push(b)},a.issuer.attributes=[],a.issuer.hash=null,a.subject={},a.subject.getField=function(b){return n(a.subject,b)},a.subject.addField=function(b){s([b]),a.subject.attributes.push(b)},a.subject.attributes=[],a.subject.hash=null,a.extensions=[],a.publicKey=null,a.md=null,a.setSubject=function(b,c){s(b),a.subject.attributes=b,delete a.subject.uniqueId,c&&(a.subject.uniqueId=c),a.subject.hash=null},a.setIssuer=function(b,c){s(b),a.issuer.attributes=b,delete a.issuer.uniqueId,c&&(a.issuer.uniqueId=c),a.issuer.hash=null},a.setExtensions=function(b){for(var c=0;c<b.length;++c)t(b[c],{cert:a});a.extensions=b},a.getExtension=function(b){"string"==typeof b&&(b={name:b});for(var c,d=null,e=0;null===d&&e<a.extensions.length;++e)c=a.extensions[e],b.id&&c.id===b.id?d=c:b.name&&c.name===b.name&&(d=c);return d},a.sign=function(b,c){a.md=c||d.md.sha1.create();var h=g[a.md.algorithm+"WithRSAEncryption"];if(!h){var i=Error("Could not compute certificate digest. Unknown message digest algorithm OID.");throw i.algorithm=a.md.algorithm,i}a.signatureOid=a.siginfo.algorithmOid=h,a.tbsCertificate=f.getTBSCertificate(a);var j=e.toDer(a.tbsCertificate);a.md.update(j.getBytes()),a.signature=b.sign(a.md)},a.verify=function(b){var c=!1;if(!a.issued(b)){var d=b.issuer,g=a.subject,h=Error("The parent certificate did not issue the given child certificate; the child certificate's issuer does not match the parent's subject.");throw h.expectedIssuer=g.attributes,h.actualIssuer=d.attributes,h}var i=b.md;if(null===i){i=p({signatureOid:b.signatureOid,type:"certificate"});var j=b.tbsCertificate||f.getTBSCertificate(b),k=e.toDer(j);i.update(k.getBytes())}return null!==i&&(c=q({certificate:a,md:i,signature:b.signature})),c},a.isIssuer=function(b){var c=!1,d=a.issuer,e=b.subject;if(d.hash&&e.hash)c=d.hash===e.hash;else if(d.attributes.length===e.attributes.length){c=!0;for(var f,g,h=0;c&&h<d.attributes.length;++h)f=d.attributes[h],g=e.attributes[h],(f.type!==g.type||f.value!==g.value)&&(c=!1)}return c},a.issued=function(b){return b.isIssuer(a)},a.generateSubjectKeyIdentifier=function(){return f.getPublicKeyFingerprint(a.publicKey,{type:"RSAPublicKey"})},a.verifySubjectKeyIdentifier=function(){for(var b=g.subjectKeyIdentifier,c=0;c<a.extensions.length;++c){var e=a.extensions[c];if(e.id===b){var f=a.generateSubjectKeyIdentifier().getBytes();return d.util.hexToBytes(e.subjectKeyIdentifier)===f}}return!1},a},f.certificateFromAsn1=function(a,b){var c={},g=[];if(!e.validate(a,j,c,g)){var h=Error("Cannot read X.509 certificate. ASN.1 object is not an X509v3 Certificate.");throw h.errors=g,h}if(e.derToOid(c.publicKeyOid)!==f.oids.rsaEncryption)throw Error("Cannot read public key. OID is not RSA.");var i=f.createCertificate();i.version=c.certVersion?c.certVersion.charCodeAt(0):0,i.serialNumber=d.util.createBuffer(c.certSerialNumber).toHex(),i.signatureOid=d.asn1.derToOid(c.certSignatureOid),i.signatureParameters=o(i.signatureOid,c.certSignatureParams,!0),i.siginfo.algorithmOid=d.asn1.derToOid(c.certinfoSignatureOid),i.siginfo.parameters=o(i.siginfo.algorithmOid,c.certinfoSignatureParams,!1),i.signature=c.certSignature;var k=[];if(void 0!==c.certValidity1UTCTime&&k.push(e.utcTimeToDate(c.certValidity1UTCTime)),void 0!==c.certValidity2GeneralizedTime&&k.push(e.generalizedTimeToDate(c.certValidity2GeneralizedTime)),void 0!==c.certValidity3UTCTime&&k.push(e.utcTimeToDate(c.certValidity3UTCTime)),void 0!==c.certValidity4GeneralizedTime&&k.push(e.generalizedTimeToDate(c.certValidity4GeneralizedTime)),k.length>2)throw Error("Cannot read notBefore/notAfter validity times; more than two times were provided in the certificate.");if(k.length<2)throw Error("Cannot read notBefore/notAfter validity times; they were not provided as either UTCTime or GeneralizedTime.");if(i.validity.notBefore=k[0],i.validity.notAfter=k[1],i.tbsCertificate=c.tbsCertificate,b){i.md=p({signatureOid:i.signatureOid,type:"certificate"});var l=e.toDer(i.tbsCertificate);i.md.update(l.getBytes())}var m=d.md.sha1.create(),q=e.toDer(c.certIssuer);m.update(q.getBytes()),i.issuer.getField=function(a){return n(i.issuer,a)},i.issuer.addField=function(a){s([a]),i.issuer.attributes.push(a)},i.issuer.attributes=f.RDNAttributesAsArray(c.certIssuer),c.certIssuerUniqueId&&(i.issuer.uniqueId=c.certIssuerUniqueId),i.issuer.hash=m.digest().toHex();var r=d.md.sha1.create(),t=e.toDer(c.certSubject);return r.update(t.getBytes()),i.subject.getField=function(a){return n(i.subject,a)},i.subject.addField=function(a){s([a]),i.subject.attributes.push(a)},i.subject.attributes=f.RDNAttributesAsArray(c.certSubject),c.certSubjectUniqueId&&(i.subject.uniqueId=c.certSubjectUniqueId),i.subject.hash=r.digest().toHex(),c.certExtensions?i.extensions=f.certificateExtensionsFromAsn1(c.certExtensions):i.extensions=[],i.publicKey=f.publicKeyFromAsn1(c.subjectPublicKeyInfo),i},f.certificateExtensionsFromAsn1=function(a){for(var b=[],c=0;c<a.value.length;++c)for(var d=a.value[c],e=0;e<d.value.length;++e)b.push(f.certificateExtensionFromAsn1(d.value[e]));return b},f.certificateExtensionFromAsn1=function(a){var b={};if(b.id=e.derToOid(a.value[0].value),b.critical=!1,a.value[1].type===e.Type.BOOLEAN?(b.critical=0!==a.value[1].value.charCodeAt(0),b.value=a.value[2].value):b.value=a.value[1].value,b.id in g){if(b.name=g[b.id],"keyUsage"===b.name){var c=e.fromDer(b.value),f=0,h=0;c.value.length>1&&(f=c.value.charCodeAt(1),h=c.value.length>2?c.value.charCodeAt(2):0),b.digitalSignature=(128&f)==128,b.nonRepudiation=(64&f)==64,b.keyEncipherment=(32&f)==32,b.dataEncipherment=(16&f)==16,b.keyAgreement=(8&f)==8,b.keyCertSign=(4&f)==4,b.cRLSign=(2&f)==2,b.encipherOnly=(1&f)==1,b.decipherOnly=(128&h)==128}else if("basicConstraints"===b.name){var c=e.fromDer(b.value);c.value.length>0&&c.value[0].type===e.Type.BOOLEAN?b.cA=0!==c.value[0].value.charCodeAt(0):b.cA=!1;var i=null;c.value.length>0&&c.value[0].type===e.Type.INTEGER?i=c.value[0].value:c.value.length>1&&(i=c.value[1].value),null!==i&&(b.pathLenConstraint=e.derToInteger(i))}else if("extKeyUsage"===b.name)for(var c=e.fromDer(b.value),j=0;j<c.value.length;++j){var k=e.derToOid(c.value[j].value);k in g?b[g[k]]=!0:b[k]=!0}else if("nsCertType"===b.name){var c=e.fromDer(b.value),f=0;c.value.length>1&&(f=c.value.charCodeAt(1)),b.client=(128&f)==128,b.server=(64&f)==64,b.email=(32&f)==32,b.objsign=(16&f)==16,b.reserved=(8&f)==8,b.sslCA=(4&f)==4,b.emailCA=(2&f)==2,b.objCA=(1&f)==1}else if("subjectAltName"===b.name||"issuerAltName"===b.name){b.altNames=[];for(var l,c=e.fromDer(b.value),m=0;m<c.value.length;++m){var n={type:(l=c.value[m]).type,value:l.value};switch(b.altNames.push(n),l.type){case 1:case 2:case 6:break;case 7:n.ip=d.util.bytesToIP(l.value);break;case 8:n.oid=e.derToOid(l.value)}}}else if("subjectKeyIdentifier"===b.name){var c=e.fromDer(b.value);b.subjectKeyIdentifier=d.util.bytesToHex(c.value)}}return b},f.certificationRequestFromAsn1=function(a,b){var c={},g=[];if(!e.validate(a,m,c,g)){var h=Error("Cannot read PKCS#10 certificate request. ASN.1 object is not a PKCS#10 CertificationRequest.");throw h.errors=g,h}if(e.derToOid(c.publicKeyOid)!==f.oids.rsaEncryption)throw Error("Cannot read public key. OID is not RSA.");var i=f.createCertificationRequest();if(i.version=c.csrVersion?c.csrVersion.charCodeAt(0):0,i.signatureOid=d.asn1.derToOid(c.csrSignatureOid),i.signatureParameters=o(i.signatureOid,c.csrSignatureParams,!0),i.siginfo.algorithmOid=d.asn1.derToOid(c.csrSignatureOid),i.siginfo.parameters=o(i.siginfo.algorithmOid,c.csrSignatureParams,!1),i.signature=c.csrSignature,i.certificationRequestInfo=c.certificationRequestInfo,b){i.md=p({signatureOid:i.signatureOid,type:"certification request"});var j=e.toDer(i.certificationRequestInfo);i.md.update(j.getBytes())}var k=d.md.sha1.create();return i.subject.getField=function(a){return n(i.subject,a)},i.subject.addField=function(a){s([a]),i.subject.attributes.push(a)},i.subject.attributes=f.RDNAttributesAsArray(c.certificationRequestInfoSubject,k),i.subject.hash=k.digest().toHex(),i.publicKey=f.publicKeyFromAsn1(c.subjectPublicKeyInfo),i.getAttribute=function(a){return n(i,a)},i.addAttribute=function(a){s([a]),i.attributes.push(a)},i.attributes=f.CRIAttributesAsArray(c.certificationRequestInfoAttributes||[]),i},f.createCertificationRequest=function(){var a={};return a.version=0,a.signatureOid=null,a.signature=null,a.siginfo={},a.siginfo.algorithmOid=null,a.subject={},a.subject.getField=function(b){return n(a.subject,b)},a.subject.addField=function(b){s([b]),a.subject.attributes.push(b)},a.subject.attributes=[],a.subject.hash=null,a.publicKey=null,a.attributes=[],a.getAttribute=function(b){return n(a,b)},a.addAttribute=function(b){s([b]),a.attributes.push(b)},a.md=null,a.setSubject=function(b){s(b),a.subject.attributes=b,a.subject.hash=null},a.setAttributes=function(b){s(b),a.attributes=b},a.sign=function(b,c){a.md=c||d.md.sha1.create();var h=g[a.md.algorithm+"WithRSAEncryption"];if(!h){var i=Error("Could not compute certification request digest. Unknown message digest algorithm OID.");throw i.algorithm=a.md.algorithm,i}a.signatureOid=a.siginfo.algorithmOid=h,a.certificationRequestInfo=f.getCertificationRequestInfo(a);var j=e.toDer(a.certificationRequestInfo);a.md.update(j.getBytes()),a.signature=b.sign(a.md)},a.verify=function(){var b=!1,c=a.md;if(null===c){c=p({signatureOid:a.signatureOid,type:"certification request"});var d=a.certificationRequestInfo||f.getCertificationRequestInfo(a),g=e.toDer(d);c.update(g.getBytes())}return null!==c&&(b=q({certificate:a,md:c,signature:a.signature})),b},a};var v=new Date("1950-01-01T00:00:00Z"),w=new Date("2050-01-01T00:00:00Z");function x(a){return a>=v&&a<w?e.create(e.Class.UNIVERSAL,e.Type.UTCTIME,!1,e.dateToUtcTime(a)):e.create(e.Class.UNIVERSAL,e.Type.GENERALIZEDTIME,!1,e.dateToGeneralizedTime(a))}f.getTBSCertificate=function(a){var b=x(a.validity.notBefore),c=x(a.validity.notAfter),g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,e.integerToDer(a.version).getBytes())]),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,d.util.hexToBytes(a.serialNumber)),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(a.siginfo.algorithmOid).getBytes()),u(a.siginfo.algorithmOid,a.siginfo.parameters)]),r(a.issuer),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[b,c]),r(a.subject),f.publicKeyToAsn1(a.publicKey)]);return a.issuer.uniqueId&&g.value.push(e.create(e.Class.CONTEXT_SPECIFIC,1,!0,[e.create(e.Class.UNIVERSAL,e.Type.BITSTRING,!1,"\0"+a.issuer.uniqueId)])),a.subject.uniqueId&&g.value.push(e.create(e.Class.CONTEXT_SPECIFIC,2,!0,[e.create(e.Class.UNIVERSAL,e.Type.BITSTRING,!1,"\0"+a.subject.uniqueId)])),a.extensions.length>0&&g.value.push(f.certificateExtensionsToAsn1(a.extensions)),g},f.getCertificationRequestInfo=function(a){return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,e.integerToDer(a.version).getBytes()),r(a.subject),f.publicKeyToAsn1(a.publicKey),function(a){var b=e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[]);if(0===a.attributes.length)return b;for(var c=a.attributes,f=0;f<c.length;++f){var g=c[f],h=g.value,i=e.Type.UTF8;"valueTagClass"in g&&(i=g.valueTagClass),i===e.Type.UTF8&&(h=d.util.encodeUtf8(h));var j=!1;"valueConstructed"in g&&(j=g.valueConstructed);var k=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(g.type).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SET,!0,[e.create(e.Class.UNIVERSAL,i,j,h)])]);b.value.push(k)}return b}(a)])},f.distinguishedNameToAsn1=function(a){return r(a)},f.certificateToAsn1=function(a){var b=a.tbsCertificate||f.getTBSCertificate(a);return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[b,e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(a.signatureOid).getBytes()),u(a.signatureOid,a.signatureParameters)]),e.create(e.Class.UNIVERSAL,e.Type.BITSTRING,!1,"\0"+a.signature)])},f.certificateExtensionsToAsn1=function(a){var b=e.create(e.Class.CONTEXT_SPECIFIC,3,!0,[]),c=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[]);b.value.push(c);for(var d=0;d<a.length;++d)c.value.push(f.certificateExtensionToAsn1(a[d]));return b},f.certificateExtensionToAsn1=function(a){var b=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[]);b.value.push(e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(a.id).getBytes())),a.critical&&b.value.push(e.create(e.Class.UNIVERSAL,e.Type.BOOLEAN,!1,String.fromCharCode(255)));var c=a.value;return"string"!=typeof a.value&&(c=e.toDer(c).getBytes()),b.value.push(e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,c)),b},f.certificationRequestToAsn1=function(a){var b=a.certificationRequestInfo||f.getCertificationRequestInfo(a);return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[b,e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(a.signatureOid).getBytes()),u(a.signatureOid,a.signatureParameters)]),e.create(e.Class.UNIVERSAL,e.Type.BITSTRING,!1,"\0"+a.signature)])},f.createCaStore=function(a){var b={certs:{}};function c(a){return g(a),b.certs[a.hash]||null}function g(a){if(!a.hash){var b=d.md.sha1.create();a.attributes=f.RDNAttributesAsArray(r(a),b),a.hash=b.digest().toHex()}}if(b.getIssuer=function(a){return c(a.issuer)},b.addCertificate=function(a){if("string"==typeof a&&(a=d.pki.certificateFromPem(a)),g(a.subject),!b.hasCertificate(a))if(a.subject.hash in b.certs){var c=b.certs[a.subject.hash];d.util.isArray(c)||(c=[c]),c.push(a),b.certs[a.subject.hash]=c}else b.certs[a.subject.hash]=a},b.hasCertificate=function(a){"string"==typeof a&&(a=d.pki.certificateFromPem(a));var b=c(a.subject);if(!b)return!1;d.util.isArray(b)||(b=[b]);for(var g=e.toDer(f.certificateToAsn1(a)).getBytes(),h=0;h<b.length;++h)if(g===e.toDer(f.certificateToAsn1(b[h])).getBytes())return!0;return!1},b.listAllCertificates=function(){var a=[];for(var c in b.certs)if(b.certs.hasOwnProperty(c)){var e=b.certs[c];if(d.util.isArray(e))for(var f=0;f<e.length;++f)a.push(e[f]);else a.push(e)}return a},b.removeCertificate=function(a){if("string"==typeof a&&(a=d.pki.certificateFromPem(a)),g(a.subject),!b.hasCertificate(a))return null;var h,i=c(a.subject);if(!d.util.isArray(i))return h=b.certs[a.subject.hash],delete b.certs[a.subject.hash],h;for(var j=e.toDer(f.certificateToAsn1(a)).getBytes(),k=0;k<i.length;++k)j===e.toDer(f.certificateToAsn1(i[k])).getBytes()&&(h=i[k],i.splice(k,1));return 0===i.length&&delete b.certs[a.subject.hash],h},a)for(var h=0;h<a.length;++h){var i=a[h];b.addCertificate(i)}return b},f.certificateError={bad_certificate:"forge.pki.BadCertificate",unsupported_certificate:"forge.pki.UnsupportedCertificate",certificate_revoked:"forge.pki.CertificateRevoked",certificate_expired:"forge.pki.CertificateExpired",certificate_unknown:"forge.pki.CertificateUnknown",unknown_ca:"forge.pki.UnknownCertificateAuthority"},f.verifyCertificateChain=function(a,b,c){"function"==typeof c&&(c={verify:c}),c=c||{};var e=(b=b.slice(0)).slice(0),g=c.validityCheckDate;void 0===g&&(g=new Date);var h=!0,i=null,j=0;do{var k=b.shift(),l=null,m=!1;if(g&&(g<k.validity.notBefore||g>k.validity.notAfter)&&(i={message:"Certificate is not valid yet or has expired.",error:f.certificateError.certificate_expired,notBefore:k.validity.notBefore,notAfter:k.validity.notAfter,now:g}),null===i){if(null===(l=b[0]||a.getIssuer(k))&&k.isIssuer(k)&&(m=!0,l=k),l){var n=l;d.util.isArray(n)||(n=[n]);for(var o=!1;!o&&n.length>0;){l=n.shift();try{o=l.verify(k)}catch(a){}}o||(i={message:"Certificate signature is invalid.",error:f.certificateError.bad_certificate})}null!==i||l&&!m||a.hasCertificate(k)||(i={message:"Certificate is not trusted.",error:f.certificateError.unknown_ca})}if(null===i&&l&&!k.isIssuer(l)&&(i={message:"Certificate issuer is invalid.",error:f.certificateError.bad_certificate}),null===i)for(var p={keyUsage:!0,basicConstraints:!0},q=0;null===i&&q<k.extensions.length;++q){var r=k.extensions[q];!r.critical||r.name in p||(i={message:"Certificate has an unsupported critical extension.",error:f.certificateError.unsupported_certificate})}if(null===i&&(!h||0===b.length&&(!l||m))){var s=k.getExtension("basicConstraints"),t=k.getExtension("keyUsage");null===t||t.keyCertSign&&null!==s||(i={message:"Certificate keyUsage or basicConstraints conflict or indicate that the certificate is not a CA. If the certificate is the only one in the chain or isn't the first then the certificate must be a valid CA.",error:f.certificateError.bad_certificate}),null===i&&null===s&&(i={message:"Certificate is missing basicConstraints extension and cannot be used as a CA.",error:f.certificateError.bad_certificate}),null!==i||null===s||s.cA||(i={message:"Certificate basicConstraints indicates the certificate is not a CA.",error:f.certificateError.bad_certificate}),null===i&&null!==t&&"pathLenConstraint"in s&&j-1>s.pathLenConstraint&&(i={message:"Certificate basicConstraints pathLenConstraint violated.",error:f.certificateError.bad_certificate})}var u=null===i||i.error,v=c.verify?c.verify(u,j,e):u;if(!0===v)i=null;else throw!0===u&&(i={message:"The application rejected the certificate.",error:f.certificateError.bad_certificate}),(v||0===v)&&("object"!=typeof v||d.util.isArray(v)?"string"==typeof v&&(i.error=v):(v.message&&(i.message=v.message),v.error&&(i.error=v.error))),i;h=!1,++j}while(b.length>0);return!0}},66498:(a,b,c)=>{"use strict";let{promisify:d}=c(57975),e=c(40106),{buildMockDispatch:f}=c(70634),{kDispatches:g,kMockAgent:h,kClose:i,kOriginalClose:j,kOrigin:k,kOriginalDispatch:l,kConnected:m,kIgnoreTrailingSlash:n}=c(80830),{MockInterceptor:o}=c(55720),p=c(49176),{InvalidArgumentError:q}=c(61448);class r extends e{constructor(a,b){if(!b||!b.agent||"function"!=typeof b.agent.dispatch)throw new q("Argument opts.agent must implement Agent");super(a,b),this[h]=b.agent,this[k]=a,this[n]=b.ignoreTrailingSlash??!1,this[g]=[],this[m]=1,this[l]=this.dispatch,this[j]=this.close.bind(this),this.dispatch=f.call(this),this.close=this[i]}get[p.kConnected](){return this[m]}intercept(a){return new o(a&&{ignoreTrailingSlash:this[n],...a},this[g])}cleanMocks(){this[g]=[]}async [i](){await d(this[j])(),this[m]=0,this[h][p.kClients].delete(this[k])}}a.exports=r},66568:(a,b,c)=>{var d=c(45654);c(33889),a.exports=d.cipher=d.cipher||{},d.cipher.algorithms=d.cipher.algorithms||{},d.cipher.createCipher=function(a,b){var c=a;if("string"==typeof c&&(c=d.cipher.getAlgorithm(c))&&(c=c()),!c)throw Error("Unsupported algorithm: "+a);return new d.cipher.BlockCipher({algorithm:c,key:b,decrypt:!1})},d.cipher.createDecipher=function(a,b){var c=a;if("string"==typeof c&&(c=d.cipher.getAlgorithm(c))&&(c=c()),!c)throw Error("Unsupported algorithm: "+a);return new d.cipher.BlockCipher({algorithm:c,key:b,decrypt:!0})},d.cipher.registerAlgorithm=function(a,b){a=a.toUpperCase(),d.cipher.algorithms[a]=b},d.cipher.getAlgorithm=function(a){return(a=a.toUpperCase())in d.cipher.algorithms?d.cipher.algorithms[a]:null};var e=d.cipher.BlockCipher=function(a){this.algorithm=a.algorithm,this.mode=this.algorithm.mode,this.blockSize=this.mode.blockSize,this._finish=!1,this._input=null,this.output=null,this._op=a.decrypt?this.mode.decrypt:this.mode.encrypt,this._decrypt=a.decrypt,this.algorithm.initialize(a)};e.prototype.start=function(a){var b={};for(var c in a=a||{})b[c]=a[c];b.decrypt=this._decrypt,this._finish=!1,this._input=d.util.createBuffer(),this.output=a.output||d.util.createBuffer(),this.mode.start(b)},e.prototype.update=function(a){for(a&&this._input.putBuffer(a);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()},e.prototype.finish=function(a){a&&("ECB"===this.mode.name||"CBC"===this.mode.name)&&(this.mode.pad=function(b){return a(this.blockSize,b,!1)},this.mode.unpad=function(b){return a(this.blockSize,b,!0)});var b={};return b.decrypt=this._decrypt,b.overflow=this._input.length()%this.blockSize,(!!this._decrypt||!this.mode.pad||!!this.mode.pad(this._input,b))&&(this._finish=!0,this.update(),(!this._decrypt||!this.mode.unpad||!!this.mode.unpad(this.output,b))&&(!this.mode.afterFinish||!!this.mode.afterFinish(this.output,b)))}},67382:(a,b,c)=>{var d=c(45654);c(33889);var e=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],f=[1,2,3,5];a.exports=d.rc2=d.rc2||{},d.rc2.expandKey=function(a,b){"string"==typeof a&&(a=d.util.createBuffer(a)),b=b||128;var c,f=a,g=a.length(),h=b,i=Math.ceil(h/8);for(c=g;c<128;c++)f.putByte(e[f.at(c-1)+f.at(c-g)&255]);for(f.setAt(128-i,e[f.at(128-i)&255>>(7&h)]),c=127-i;c>=0;c--)f.setAt(c,e[f.at(c+1)^f.at(c+i)]);return f};var g=function(a,b,c){var e,g,h,i,j=!1,k=null,l=null,m=null,n=[];for(a=d.rc2.expandKey(a,b),h=0;h<64;h++)n.push(a.getInt16Le());c?(e=function(a){for(h=0;h<4;h++){var b,c;a[h]+=n[i]+(a[(h+3)%4]&a[(h+2)%4])+(~a[(h+3)%4]&a[(h+1)%4]),a[h]=(b=a[h])<<(c=f[h])&65535|(65535&b)>>16-c,i++}},g=function(a){for(h=0;h<4;h++)a[h]+=n[63&a[(h+3)%4]]}):(e=function(a){for(h=3;h>=0;h--){var b,c;a[h]=(65535&(b=a[h]))>>(c=f[h])|b<<16-c&65535,a[h]-=n[i]+(a[(h+3)%4]&a[(h+2)%4])+(~a[(h+3)%4]&a[(h+1)%4]),i--}},g=function(a){for(h=3;h>=0;h--)a[h]-=n[63&a[(h+3)%4]]});var o=function(a){var b=[];for(h=0;h<4;h++){var d=k.getInt16Le();null!==m&&(c?d^=m.getInt16Le():m.putInt16Le(d)),b.push(65535&d)}i=63*!c;for(var e=0;e<a.length;e++)for(var f=0;f<a[e][0];f++)a[e][1](b);for(h=0;h<4;h++)null!==m&&(c?m.putInt16Le(b[h]):b[h]^=m.getInt16Le()),l.putInt16Le(b[h])},p=null;return p={start:function(a,b){a&&"string"==typeof a&&(a=d.util.createBuffer(a)),j=!1,k=d.util.createBuffer(),l=b||new d.util.createBuffer,m=a,p.output=l},update:function(a){for(j||k.putBuffer(a);k.length()>=8;)o([[5,e],[1,g],[6,e],[1,g],[5,e]])},finish:function(a){var b=!0;if(c)if(a)b=a(8,k,!c);else{var d=8===k.length()?8:8-k.length();k.fillWithByte(d,d)}if(b&&(j=!0,p.update()),!c&&(b=0===k.length()))if(a)b=a(8,l,!c);else{var e=l.length(),f=l.at(e-1);f>e?b=!1:l.truncate(f)}return b}}};d.rc2.startEncrypting=function(a,b,c){var e=d.rc2.createEncryptionCipher(a,128);return e.start(b,c),e},d.rc2.createEncryptionCipher=function(a,b){return g(a,b,!0)},d.rc2.startDecrypting=function(a,b,c){var e=d.rc2.createDecryptionCipher(a,128);return e.start(b,c),e},d.rc2.createDecryptionCipher=function(a,b){return g(a,b,!1)}},67449:a=>{"use strict";let b=new TextDecoder;a.exports={utf8DecodeBytes:function(a){return 0===a.length?"":(239===a[0]&&187===a[1]&&191===a[2]&&(a=a.subarray(3)),b.decode(a))}}},67519:(a,b,c)=>{"use strict";let d=c(84285),e=c(34589),{InvalidArgumentError:f}=c(61448),g=[300,301,302,303,307,308],h=()=>{};class i{static buildDispatch(a,b){if(null!=b&&(!Number.isInteger(b)||b<0))throw new f("maxRedirections must be a positive number");let c=a.dispatch.bind(a);return(a,d)=>c(a,new i(c,b,a,d))}constructor(a,b,c,e){if(null!=b&&(!Number.isInteger(b)||b<0))throw new f("maxRedirections must be a positive number");if(null!=c.throwOnMaxRedirect&&"boolean"!=typeof c.throwOnMaxRedirect)throw new f("throwOnMaxRedirect must be a boolean");this.dispatch=a,this.location=null;const{maxRedirections:g,stripHeadersOnRedirect:h,stripHeadersOnCrossOriginRedirect:i,...j}=c;this.opts=j,this.opts.body=d.wrapRequestBody(this.opts.body),this.stripHeadersOnRedirect=k(h,"stripHeadersOnRedirect"),this.stripHeadersOnCrossOriginRedirect=k(i,"stripHeadersOnCrossOriginRedirect"),this.maxRedirections=b,this.handler=e,this.history=[]}onRequestStart(a,b){this.handler.onRequestStart?.(a,{...b,history:this.history})}onRequestUpgrade(a,b,c,d){this.handler.onRequestUpgrade?.(a,b,c,d)}onResponseStart(a,b,c,i){if(this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections)throw Error("max redirects");let k=303===b;if((301===b||302===b)&&"POST"===this.opts.method&&(this.opts.method="GET",d.isStream(this.opts.body)&&d.destroy(this.opts.body.on("error",h)),this.opts.body=null,k=!0),303===b&&"HEAD"!==this.opts.method&&(this.opts.method="GET",d.isStream(this.opts.body)&&d.destroy(this.opts.body.on("error",h)),this.opts.body=null),this.location=this.history.length>=this.maxRedirections||d.isDisturbed(this.opts.body)||-1===g.indexOf(b)?null:c.location,this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return void this.handler.onResponseStart?.(a,b,c,i);let{origin:l,pathname:m,search:n}=d.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),o=n?`${m}${n}`:m,p=`${l}${o}`;for(let a of this.history)if(a.toString()===p)throw new f(`Redirect loop detected. Cannot redirect to ${l}. This typically happens when using a Client or Pool with cross-origin redirects. Use an Agent for cross-origin redirects.`);this.opts.headers=function(a,b,c,f,g){let h=[];if(Array.isArray(a))for(let d=0;d<a.length;d+=2)j(a[d],b,c,f,g)||h.push(a[d],a[d+1]);else if(a&&"object"==typeof a)for(let[e,i]of d.hasSafeIterator(a)?a:Object.entries(a))j(e,b,c,f,g)||h.push(e,i);else e(null==a,"headers must be an object or an array");return h}(this.opts.headers,k,this.opts.origin!==l,this.stripHeadersOnRedirect,this.stripHeadersOnCrossOriginRedirect),this.opts.path=o,this.opts.origin=l,this.opts.query=null}onResponseData(a,b){this.location||this.handler.onResponseData?.(a,b)}onResponseEnd(a,b){this.location?this.dispatch(this.opts,this):this.handler.onResponseEnd(a,b)}onResponseError(a,b){this.handler.onResponseError?.(a,b)}}function j(a,b,c,e,f){let g=d.headerNameToString(a);return!!("host"===g||e?.has(g)||c&&f?.has(g)||b&&g.startsWith("content-"))||!!c&&("authorization"===g||"cookie"===g||"proxy-authorization"===g)}function k(a,b){if(null==a)return null;if(!Array.isArray(a))throw new f(`${b} must be an array`);let c=new Set;for(let e of a){if("string"!=typeof e)throw new f(`${b} must contain header names`);c.add(d.headerNameToString(e))}return c}a.exports=i},67594:(a,b,c)=>{"use strict";c.d(b,{j:()=>i});var d=c(67671),e=c(38421),f=c(77321),g=c(49623);let h=new Set;class i extends d.Hv{constructor(){super("opencode",e.xq.opencode)}transformRequest(a,b,c,d){return super.transformRequest(a,b,c,d),(0,f.Z)({provider:this.provider,model:a,body:b})}buildUrl(a){let b=this.config.baseUrl;return h.has(a)?`${b}/zen/v1/messages`:`${b}/zen/v1/chat/completions`}buildHeaders(a,b=!0){let c={"Content-Type":"application/json",Authorization:"Bearer public","x-opencode-client":"desktop"};return c["x-opencode-session"]||(c["x-opencode-session"]=(0,g.oV)({headers:a?.rawHeaders,connectionId:a?.connectionId,scope:"opencode"})),b&&(c.Accept="text/event-stream"),c}}},67671:(a,b,c)=>{"use strict";c.d(b,{Hv:()=>z,_2:()=>y});var d=c(82689),e=c(98976),f=c(50969),g=c(86363),h=c(74570),i=c(22884),j=c(71553),k=c(77030);let l=new Set(["localhost","ip6-localhost","ip6-loopback","metadata.google.internal"]),m=[".internal",".local",".localhost"];function n(a){return String(a).toLowerCase().replace(/^\[|\]$/g,"").replace(/\.+$/,"")}function o(a){if(!a)return null;let b=new Set((Array.isArray(a)?a:[a]).map(n).filter(Boolean));return b.size?b:null}function p(a){let b=a.split(".");if(4!==b.length)return null;let c=0;for(let a of b){if(!/^\d{1,3}$/.test(a))return null;let b=Number(a);if(b>255)return null;c=256*c+b}return c>>>0}let q=[[p("0.0.0.0"),8],[p("10.0.0.0"),8],[p("127.0.0.0"),8],[p("169.254.0.0"),16],[p("172.16.0.0"),12],[p("192.168.0.0"),16],[p("100.64.0.0"),10]];function r(a){return q.some(([b,c])=>{let d=0===c?0:0xffffffff<<32-c>>>0;return(a&d)==(b&d)})}function s(a){let b=p(a);return null!==b&&r(b)}function t(a){let b=a.replace(/^\[|\]$/g,"").toLowerCase(),c=b.match(/^::ffff:(\d+\.\d+\.\d+\.\d+)$/),d=c?.[1]||function(a){let b=a.split("::");if(b.length>2)return null;let c=b[0]?b[0].split(":").filter(Boolean):[],d=2===b.length&&b[1]?b[1].split(":").filter(Boolean):[],e=8-c.length-d.length;if(e<0||1===b.length&&0!==e)return null;let f=[...c,...Array(e).fill("0"),...d];if(8!==f.length||f.slice(0,5).some(a=>"0"!==a)||"ffff"!==f[5])return null;let g=Number.parseInt(f[6],16),h=Number.parseInt(f[7],16);return[g,h].every(a=>Number.isInteger(a)&&a>=0&&a<=65535)?`${g>>>8}.${255&g}.${h>>>8}.${255&h}`:null}(b);if(d)return s(d);let e=function(a){let b=a.split("::");if(b.length>2)return null;let c=b[0]?b[0].split(":").filter(Boolean):[],d=2===b.length&&b[1]?b[1].split(":").filter(Boolean):[],e=8-c.length-d.length;if(e<0||1===b.length&&0!==e)return null;let f=[...c,...Array(e).fill("0"),...d];if(8!==f.length)return null;let g=f.map(a=>parseInt(a,16));return g.some(a=>!Number.isInteger(a)||Number.isNaN(a)||a<0||a>65535)?null:g}(b);return e?!!(e.every(a=>0===a)||e.every((a,b)=>7===b?1===a:0===a))||(65472&e[0])==65152||(65024&e[0])==64512:b.startsWith("fe80:")||b.startsWith("fc")||b.startsWith("fd")}function u(a,b=null){let c=n(a);if(b?.has(c))return;if(l.has(c)||m.some(a=>c.endsWith(a)))throw Error("Blocked URL: internal host");let d=function(a){if(/^\d+$/.test(a)){let b=Number(a);if(Number.isSafeInteger(b)&&b>=0&&b<=0xffffffff)return b>>>0}if(/^0x[0-9a-f]+$/i.test(a)){let b=parseInt(a,16);if(Number.isFinite(b)&&b>=0&&b<=0xffffffff)return b>>>0}let b=a.split(".");if(4===b.length&&b.every(a=>/^(0x[0-9a-f]+|0[0-7]*|[1-9]\d*)$/i.test(a))){let a=0;for(let c of b){let b;if(!Number.isFinite(b=/^0x/i.test(c)?parseInt(c,16):c.startsWith("0")&&c.length>1?parseInt(c,8):parseInt(c,10))||b<0||b>255)return null;a=256*a+b}return a>>>0}let c=a.split(".");if((2===c.length||3===c.length)&&c.every(a=>/^\d{1,3}$/.test(a))){let a=c.map(Number),b=2**(8*(4-c.length))-1;if(a.slice(0,-1).every(a=>a<=255)&&a[c.length-1]<=b)return(2===c.length?0x1000000*a[0]+a[1]:0x1000000*a[0]+65536*a[1]+a[2])>>>0}return null}(c);if(null!==d&&r(d)||s(c)||c.includes(":")&&t(c)||4===(0,k.isIP)(c)&&s(c)||6===(0,k.isIP)(c)&&t(c))throw Error("Blocked URL: private IP")}async function v(a,b=null){let c,d=o(b);!function(a,b=null){let c;try{c=new URL(a)}catch{throw Error("Blocked URL: invalid URL")}if("http:"!==c.protocol&&"https:"!==c.protocol)throw Error("Blocked URL: unsupported scheme");u(c.hostname,o(b))}(a,b);let e=n(new URL(a).hostname);if(!d?.has(e)&&!(0,k.isIP)(e)){try{c=await (0,j.lookup)(e,{all:!0,verbatim:!0})}catch{throw Error("Blocked URL: DNS resolution failed")}if(!c?.length)throw Error("Blocked URL: DNS resolution failed");for(let a of c)u(a.address,d)}}var w=c(17438);let x=["user-agent","anthropic-beta","anthropic-version","anthropic-dangerous-direct-browser-access","x-app","x-stainless-helper-method","x-stainless-retry-count","x-stainless-runtime-version","x-stainless-package-version","x-stainless-runtime","x-stainless-lang","x-stainless-arch","x-stainless-os","x-stainless-timeout","x-claude-code-session-id","package-version","runtime-version","os","arch"];function y(a){return a?.format==="gemini"||a?.format==="vertex"}class z{constructor(a,b){this.provider=a,this.config=b,this.noAuth=b?.noAuth||!1}getProvider(){return this.provider}getBaseUrls(){return this.config.baseUrls||(this.config.baseUrl?[this.config.baseUrl]:[])}getFallbackCount(){return this.getBaseUrls().length||1}buildUrl(a,b,c=0,d=null){if(this.provider?.startsWith?.("openai-compatible-")){let a=(d?.providerSpecificData?.baseUrl||h.Es).replace(/\/$/,""),b="responses"===(0,i.jD)(this.provider,d)?"/responses":"/chat/completions";return`${a}${b}`}if(this.provider?.startsWith?.("anthropic-compatible-")){let a=(d?.providerSpecificData?.baseUrl||h.ky).replace(/\/$/,"");return`${a}/messages`}let e=this.getBaseUrls();return e[c]||e[0]||this.config.baseUrl}buildHeaders(a,b=!0){let c={"Content-Type":"application/json",...this.config.headers};return this.provider?.startsWith?.("anthropic-compatible-")?(a.apiKey?c["x-api-key"]=a.apiKey:a.accessToken&&(c.Authorization=`Bearer ${a.accessToken}`),c["anthropic-version"]||(c["anthropic-version"]=h.b8)):a.accessToken?c.Authorization=`Bearer ${a.accessToken}`:a.apiKey&&(c.Authorization=`Bearer ${a.apiKey}`),b&&(c.Accept="text/event-stream"),c}transformRequest(a,b,c,d){return c&&b&&Array.isArray(b.messages)&&!b.stream_options&&(b.stream_options={include_usage:!0}),y(this.config)&&b&&"object"==typeof b?delete b.stream:c&&b&&"object"==typeof b&&!0!==b.stream&&(b.stream=!0),b}shouldRetry(a,b){return a===d.gx.RATE_LIMITED&&b+1<this.getFallbackCount()}async refreshCredentials(a,b,c=null){return null}needsRefresh(a){return(0,e.fp)(this.provider,a)}isUserConfiguredBase(a){return this.provider?.startsWith?.("openai-compatible-")||this.provider?.startsWith?.("anthropic-compatible-")||!!a?.providerSpecificData?.baseUrl||!!a?.runtimeTransport?.baseUrl}resolveIdentity(a){return a?.runtimeTransport?.identity?a.runtimeTransport.identity:this.provider?.startsWith?.("anthropic-compatible-")&&(a?.providerSpecificData?.baseUrl||h.ky).includes("api.anthropic.com")?"claude-cli":this.config?.identity}parseError(a,b){return{status:a.status,message:b||`HTTP ${a.status}`}}async execute({model:a,body:b,stream:c,credentials:e,signal:h,log:i,proxyOptions:j=null}){let k=this.getFallbackCount(),l=null,m=0,n={},o={...d.cI,...this.config.retry},p=d.mY,q=async(a,b,c,e=null)=>{var f;if(h?.aborted)return!1;let{attempts:g,delayMs:j}=(0,d.DR)(o[b]);if(g<=0||n[a]>=g)return!1;let k=j;if(e&&this.computeRetryDelay){let b=await this.computeRetryDelay(e,n[a]+1,j);if(!1===b)return!1;null!=b&&(k=b)}return k>p?(i?.debug?.("RETRY",`${c} skipped: ${k/1e3}s exceeds remaining budget ${p/1e3}s`),!1):(p-=k,n[a]++,i?.debug?.("RETRY",`${c} retry ${n[a]}/${g} after ${k/1e3}s`),await (f=k,h?.aborted?Promise.resolve():new Promise(a=>{let b=()=>{clearTimeout(c),h?.removeEventListener?.("abort",b),a()},c=setTimeout(b,f);h?.addEventListener?.("abort",b,{once:!0})})),!h?.aborted)};for(let o=0;o<k;o++){let p=this.transformRequest(a,b,c,e),r=this.buildUrl(a,c,o,e),s=this.buildHeaders(e,c,r,a);if(this.config?.format==="claude"&&e?._clientSessionId&&(s["X-Claude-Code-Session-Id"]=e._clientSessionId),n[o]||(n[o]=0),this.isUserConfiguredBase(e)){let a=null;try{a=(await (0,w.oC)().getSettings?.())?.ssrfAllowHosts||null}catch{}try{await v(r,a)}catch(a){throw Error(`SSRF blocked: ${a.message}`)}}let t=new AbortController,u=this.config?.timeoutMs||d.pH,y=setTimeout(()=>t.abort(Error("fetch connect timeout")),u),z=h?AbortSignal.any([h,t.signal]):t.signal;try{let a=JSON.stringify(p),b=Date.now();(0,g.s)("FETCH",`${this.provider.toUpperCase()} → ${r} | body=${a.length}B | connectTimeout=${u}ms`);let d=await (0,f.Fm)(r,{method:"POST",headers:s,body:a,signal:z,redirect:"error",identity:this.resolveIdentity(e),provider:this.provider,format:e?.runtimeTransport?.format||this.config?.format,overlay:e?.rawHeaders?function(a){if(!a||"object"!=typeof a)return null;let b={};for(let c of x)void 0!==a[c]&&null!==a[c]&&(b[c]=a[c]);return Object.keys(b).length>0?b:null}(e.rawHeaders):void 0,credentialId:e?.connectionId||e?.apiKey||e?.accessToken,stream:c,retryCount:n[o]||0},j);clearTimeout(y);let h=d.headers?.get?.("content-type")||"",k=d.headers?.get?.("content-length")||"?";if((0,g.s)("FETCH",`${this.provider.toUpperCase()} ← ${d.status} | ttft=${Date.now()-b}ms | ct=${h} | cl=${k}`),await q(o,d.status,`status ${d.status}`,d)){try{await d.body?.cancel?.()}catch{}o--;continue}if(this.shouldRetry(d.status,o)){try{await d.body?.cancel?.()}catch{}i?.debug?.("RETRY",`${d.status} on ${r}, trying fallback ${o+1}`),m=d.status;continue}return{response:d,url:r,headers:s,transformedBody:p}}catch(b){clearTimeout(y),l=b;let a=t.signal.aborted&&"AbortError"===b.name;if((0,g.s)("FETCH",`${this.provider.toUpperCase()} ✖ ${b.name}: ${b.message}${a?" (connect timeout)":""}`),"AbortError"===b.name&&!a)throw b;if(await q(o,d.gx.BAD_GATEWAY,`network "${b.message}"`)){o--;continue}if(o+1<k){i?.debug?.("RETRY",`Error on ${r}, trying fallback ${o+1}`);continue}throw b}}throw l||Error(`All ${k} URLs failed with status ${m}`)}}},68176:(a,b,c)=>{"use strict";c.d(b,{H:()=>g});let d=Symbol.for("switchboard.adapterShutdownRegistry"),e=globalThis[d]??={closers:new Set,flushers:new Set,listener:null,signalHandlers:null};function f(){for(let a of[e.flushers,e.closers])for(let b of[...a])if(a.delete(b))try{b()}catch{}}if(e.flushers??=new Set,!e.listener)for(let[a,b]of(e.listener=()=>{f()},process.on("beforeExit",e.listener),process.on("exit",e.listener),e.signalHandlers=Object.fromEntries(["SIGTERM","SIGINT",..."win32"===process.platform?["SIGBREAK"]:[]].map(a=>[a,()=>(a=>{if(f(),e.signalHandlers){for(let[a,b]of Object.entries(e.signalHandlers))process.removeListener(a,b);e.signalHandlers=null}if(!(process.listenerCount(a)>0))try{process.kill(process.pid,a)}catch{process.exit("SIGINT"===a?130:143)}})(a)])),Object.entries(e.signalHandlers)))process.on(a,b);function g(a,{flush:b=!1}={}){let c=b?e.flushers:e.closers;c.add(a);let d=!0;return()=>!!d&&(d=!1,c.delete(a))}},68531:(a,b,c)=>{"use strict";c.d(b,{h:()=>d});let d={OPENAI:"openai",OPENAI_RESPONSES:"openai-responses",OPENAI_RESPONSE:"openai-response",CLAUDE:"claude",GEMINI:"gemini",GEMINI_CLI:"gemini-cli",VERTEX:"vertex",CODEX:"codex",ANTIGRAVITY:"antigravity",KIRO:"kiro",CURSOR:"cursor",OLLAMA:"ollama",COMMANDCODE:"commandcode"}},68759:(a,b,c)=>{"use strict";let d;a=c.nmd(a);let{Buffer:e}=c(4573);Object.defineProperty(a,"exports",{get:()=>d||(d=e.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/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==","base64"))})},69226:(a,b,c)=>{"use strict";c.d(b,{$G:()=>g,bf:()=>e,n6:()=>f,xr:()=>d});let d="EpwGCkYIChgCKkCzVUuRrg7CcglSUWEef4rH6o35g9UYS8ZPe0/VomQTBsFx6sttYNj5l8GqgW6ejuHyYqpFToxIbZl0bw17l5dJEgzCnqDO0Z8fRlMrNgsaDLS1cnCjC53KBqE0CCIwAADQdo1eO+7qPAmo8J4WR3JPmr92S97kmvr5K1iPMiOpkZNj8mEXW8uzBoOJs/9ZKoMFiqHJ3UObwaJDqFOW70E9oCwDoc6jesaWVAEdN5vWfKMpIkjFJjECdjIdkxyJNJ8Ib8yXVal3qwE7uThoPRqSZDdHB5mmwPEjWE/90cSYCbtX2YsJki1265CabBb8/QEkODXg4kgRrL+c8e8rRXz/dr1RswvaPuzEdGKHRNi9UooNUeOK4/ebx1KkP9YZttyohN9GWqlts36kOoW0Cfie/ABDgF9g534BPth/sstxDM6d79QlRmh6NxizyTF74DXJI34u0M4tTRchqE5pAq85SgdJaa+dix1yJPMji8m6nZkwJbscJb9rdc2MKyKWjz8QL2+rTSSuZ2F1k1qSsW0xNcI7qLcI12Vncfn/VqY6YOIZy/saZBR0ezXvN6g+UYbuIdyVg7AyIFZt3nbrO7/kmOEb2VKzygwklHGEIJHfFgMpH3JSrAzbZIowVHOF7VaJ+KXRFDCFin7hHTOiOsdg+1ij1mML9Z/x/9CP4b7OUcaQm1llDZPSHc6rZMNL3DdB+fW5YfmNgKU35S+7AMtA10nVILzDAk1UV4T2K9Do09JlI6rjOs9UuULlIN2Z0eE8YTlANR6uQcw7lMcdfqYE8tke4rDKc2dDiaS5vVe45VewICNpdXGN11yw8QqH7p27CR1HtN30e0tHXOR3bIwWk/Yb6O5fTaKG6Ri8e5ZCPvdD9HqepVi188nM0iTjJqL58F3ni04ECIhcbyaQWnuTes1Kw4CMwiZDLQkk8Hgz7HkUOf1btQTF/0nhD7ry0n0hAEg2PaDM3V6TjOjf4hEldRmeqERcQF1PfgKb6ZM12rlIIfUqKACczWJSzTV158+47HX36o0cgux6nFlv/DE+sEiRVxgB",e="EuwGCukGAXLI2nxwZIq54WWSoL/YN0P3TsDZ7zRnLi8g0S4aVr2HUGxvaHKySuY6HAVzcE0GPGjXrytLIldxthSvfxgUlJh6Qa9Z+Oj5QZBlYdg6HaJ6yuY5R7waE6rdwBsRf7Ft2j3DJ9rMi9qhWFqApewYtPhls3VHtuvND3l8Rm09+lbAXQs6KKWEWrxNLKTBkfpMgXhRERc/TQRMZu1twAablm6/Zk1tsYRvfWKLsNbeKF+CCojJdXJKvnR/8Ouuoa+Y2Ti20hcW7aZIIjZDFYPU//k6Ybmhg69J/imbFai2ckhfLaisqdDkdoIiBJScTOUvYqP6AE9d4MsydSC+UlhIMk4hoP76R8vUSCZRMkjOaDXstf/QoVZKbt94wyRZgAJ1G0BqI8L5ow86kLpA4wJEtxsRGymOE4bKUvApveBakYDNM9APkf+LbtbzWSseGjoZcSlycF9iN8Q2XNYKRrHbv3Lr5Y8JjdH/5y/6SHkNehTEZugaeGnSPSyCTWto1kQgHpxdWmhkLfJGNUGLmue7Mesj4TSms4J33mRpYVhNB/J333FCqIP0hr/E7BkkjEn7yZ4X7SQlh+xKPurapsnHRwiKmtsilmEFrnTE9iQr+pMr6M29qqFNv1tr5yumbaJw8JW9sB15tNsRv+dW6BjNanbsKz7HCgKUBc8tGy+7YuhXzAfViyRefcjK7eZW0Fbyt7AbybJTKz78W8NH7ye6LAwzOebXpeZ4D43fNIt8bKh26qgduSQv/7o+pAflkuqHZ99YWgHQ8h8OkZFi3eOiSYjsjhdZ/czWOdoPI/OnqIldzMPF5YlrKBLFX8VhRKVmqgsmWf5PHGulHhMkVlS+XG2UIseGy69ARa93D78Gsa+1n1kJr7EEB7Rh+27vUMxVYLdz1yMSvE5nalTAlg/ZeG8+XQ0cHuAI3KbQpHW2Q++RdXfm5JzD5WdJZUU+Zn8t8UUn85BH4RxZLeE0qJikgSsKoYVBc6YhiMjhPgkR95ReimY4Z0xCJdRo1gjexOFeODZMpQF6Yxnoic7IrdgsFA3iePTbFnPp3IAM1fAThWhXJUn3QInUOTd5o1qmTmn6REbL15g/JQNl+dqUoPkhleeb2V3kjqp1okmO3wMZbPknR3S1LZNmlS72/iBQUm+n2b/RCn4PjmM2",f="CloBjz1rX5+yg1ILh/Ag+suum5k1f/9m/hI0XDQ33lsQIYnOHLn9KZwN0C7E4jgep5MzZvz5Se1Z1xxYrA1+Iz0Il4tabBhaDfMKNa5dGdEA3KnikfjfIpMlPaAKaQGPPWtf2hodPdBgguiZqDn+Qz2LwGEqHVJ16LVBUpeSx7UnYBLSwio8cyNy0jPijOh5QXKLTeHVdO2tKKcCCrtG2JCW3dOSrW2qA8eyAg40iQUnMNECjbcjkqB1+zrab7jX9ILwg7L9OgqYAQGPPWtfT4nzaPzSkXePAa920abYxPs3fg/RHDlg8PUVFLa+ko6qOjt7nXJTMxN0cpCwUCFX7eHHcMnA6vApyA/rXvJiAABkHZ3HilAktXRtxr/thHU0H8/4H5gT3kzoQcq9aMznrKomd3ct0mFi0ioSKnOEfoY1Mrfj00p/ZWm0tT7Wrjcm3BQXZ+T9Vrb94k+6CjtcEBrGCq8BAY89a1/vTMczqwB1NP3HCCuBdnds2vDXkj6XAYaXjsjmik8tGqwMKHz8R9RAWsx6SO6pkGEpXXpRzAaUx6c+aofsL/z1xOcN7ArCAa6uEeQKEgNngZuCP05p4+9P95epVmgOjFa4KfsPnyg+NKUkEFmpPSDrIRyMT+xERlclVcCI98/u7i8a9+vTbgzl8TRFYryClNH37K1ye5i6kqSGDUcMyiEasjke5BxbUh3i6wqMAgGPPWtfk+A+iY38QAldu117FEkTIkzbYOIt67lk9c6Ou3Y3Ct8TFHFw5QwGfSFc0YWjeTFHdm9UdV5jPK35p6VfhiRSva3w2+JLIHb4jvv5HutZPOJ3yQTt/+hUDj80oMNMbwnxNZvCEdzKS+D9vwmTACAm5H0ZetBSH2gPJXnhhuQo9AegS3wIWVR2a5k643Vx9r4u4pOvij4476lxKswIHvqsjL4jnTzRCvd44G6dn7vD0ENGb1K/i+dMRQMcOBaOxPN0ynk9bKxXWRDbZ+Rhakfr+y74z+6eYCdRPVqO9I7s+riilFuRIfaQ+U6/vuVKGIWEVKCfZZi0z6H5Xgz1xmse0u0AsittDlIKxwEBjz1rX783A0vehvUeabRia+/pX46IsN5efTAxFEBUeUce3jLuXIghkMV2b8KNhUs2G0aZldDDewRQbkluQabBMDT82N5I7reJP0VZgLIKccCL5DoGv1J7YWM2npLMIgZ6aP8aSlT3PFFJ0IXbUZUrzduczmIm6nzAJf9zxmq1aIFYw8YrgW8RjUdy0UvUmRoBEShSGUrvsyaRTl7J//KJW5utIPunFMu53GPWLidCFHzM1QA3Cj1+4zv5UXajP/V92RQayWbzCvYBAY89a1+yzoVSWukUGH7kX71Tg9dx7HA7OyKYwnYaqekG98zJfcUM/3KoiiiotW5t4xYu//ksEl36bSWvUHsRnxGByg+3WYdnZqKg0AtdRB/EXbI5PsjvS5ko96bkjSuFkY3TjHGwAM2B94K6/t6OTE/NBbxCsY9sT4d+1sbFv/iyfmfCnfvJaSzGmC9CDWKy4iqQ/vBNWps9j1JXk0p5uPAYC2BaMkxl5xoTVZqI3zAuRtQF5JLmPPy+PdqOgFxMKcLGNhwp7dbhIFLF68vCYQ9CL0NnK2d3CFk1UFVYxsi1TsolR1xahe/Rxt5HZDz/z65nevrQ",g="CiQBjz1rX/AlslZWMe5RgBt4Tv9j4+YNZTTez+JH2/+5oAlICygKXgGPPWtf7/Sux9eLYap/bmYAdPqFThLXj+l7o0DLu/hdgU98MA9ZrlRDNHXx+T0tuY8AcnjPZbiDyOq2bE11Fjhsk6p5axqayaapC/Pt9GczcgIQf1z15WTxCeKWAPYKYQGPPWtfDYj0nlNFNoTlU39RC91Z16xFKJ2MLEmkm+NvimsoOJ6be3g2BssNPtJ/9BKDXRA5cVs17tBeeW72lH8TMB5999udtxHM2SiUsnWsrHlfVuGSCpNQQ+5REw8HNvEKkgEBjz1rXzBNWrqZGbjun55K+vgYPBhJO2qZ67uRWXUA5/qcU12U/mbi5XoA3swoxYE8LEXfZvFFC9WG/W28QNCA0Qd4Trk/WkWiAwZmB8a84Fs14rkv3wqyxwFavPkJorqurAfd2XzGiFy0sB0ITCOPYi1HzDGV5WfXk6b9k+jT66/RuzGa8EcSOWo/QtC3Bkhgowo4AY89a1/f/tw8A02zjIoK7JVDAbf8W4UfmbApJJhwXIiGtu1M0JItObx7g2reYqT+HHL2Q/R4VDc="},69353:(a,b,c)=>{"use strict";c.d(b,{Qm:()=>d,lc:()=>e});let d=2e4;function e(a){let b="string"==typeof a?a:String(a??""),c=b.indexOf("/");return -1===c?b:b.slice(0,c)}},69445:(a,b,c)=>{a.exports=c(1277),c(38627),c(4554),c(6680),c(37691)},69493:(a,b,c)=>{"use strict";c(68531),c(9960),c(75371),c(22268),c(80152),c(82689),c(82703),c(81556),c(17438),c(25720),c(39490)},69632:(a,b,c)=>{"use strict";c.d(b,{H:()=>o});var d=c(99887),e=c(68531),f=c(11897),g=c(18184),h=c(90694),i=c(29055),j=c(52655),k=c(96684);function l(a,b){a.responseId||(a.responseId=`chatcmpl-${Date.now()}`,a.created=Math.floor(Date.now()/1e3),a.model=a.model||b||"commandcode",a.chunkIndex=0,a.toolIndex=0,a.finishReason=null,a.usage=null),a.toolIndexById instanceof Map||(a.toolIndexById=new Map),a.openTools instanceof Set||(a.openTools=new Set),"number"!=typeof a.toolIndex&&(a.toolIndex=0),"number"!=typeof a.chunkIndex&&(a.chunkIndex=0)}function m(a,b,c=null){return(0,g.k)({id:a.responseId,created:a.created,model:a.model},b,c)}let n=a=>(0,k.F)(a,"commandcode");function o(a,b){if(!a){if(b.commandcodeFinished||!((b.chunkIndex||0)>0||(b.toolIndex||0)>0))return null;b.commandcodeFinished=!0,l(b);let a=m(b,{},b.finishReason||f.bC.STOP),c=(0,h.B)(b.usage,"commandcode");return c&&(a.usage=c),[a]}if(a&&"object"==typeof a&&"chat.completion.chunk"===a.object)return a;let c=a;if("string"==typeof a){let b=a.trim();if(!b)return null;let d=b.startsWith("data:")?b.slice(5).trim():b;if(!d||"[DONE]"===d)return null;try{c=JSON.parse(d)}catch{return null}}if(!c||"object"!=typeof c||!c.type)return null;l(b,c.model);let d=[];switch(c.type){case"text-delta":{let a=c.text||c.delta||"";if(!a)break;let e=0===b.chunkIndex?{role:f.z7.ASSISTANT,content:a}:{content:a};b.chunkIndex++,d.push(m(b,e));break}case"reasoning-delta":{let a=c.text||"";if(!a)break;let e=(0,i.B)(a,0===b.chunkIndex);b.chunkIndex++,d.push(m(b,e));break}case"tool-input-start":{let a=c.id||c.toolCallId||(0,j.eG)(b.toolIndex),e=b.toolIndexById.get(a);null==e&&(e=b.toolIndex++,b.toolIndexById.set(a,e)),b.openTools.add(a);let g={...0===b.chunkIndex?{role:f.z7.ASSISTANT}:{},tool_calls:[{index:e,id:a,type:f.x4.FUNCTION,function:{name:c.toolName||"",arguments:""}}]};b.chunkIndex++,d.push(m(b,g));break}case"tool-input-delta":{let a=c.id||c.toolCallId||(b.openTools?.size===1?[...b.openTools][0]:void 0),e=b.toolIndexById.get(a);if(null==e)break;let f={tool_calls:[{index:e,function:{arguments:c.delta||c.inputTextDelta||""}}]};d.push(m(b,f));break}case"tool-call":{let a=c.toolCallId||c.id||(0,j.eG)(b.toolIndex);if(b.toolIndexById.has(a))break;let e=b.toolIndex++;b.toolIndexById.set(a,e);let g="string"==typeof c.input?c.input:JSON.stringify(c.input??{}),h={...0===b.chunkIndex?{role:f.z7.ASSISTANT}:{},tool_calls:[{index:e,id:a,type:f.x4.FUNCTION,function:{name:c.toolName||"",arguments:g}}]};b.chunkIndex++,d.push(m(b,h));break}case"finish-step":b.finishReason=n(c.finishReason),c.usage&&(b.usage=c.usage);break;case"finish":{if(b.commandcodeFinished)break;b.commandcodeFinished=!0;let a=b.finishReason||n(c.finishReason||"stop"),e=m(b,{},a),f=c.totalUsage||b.usage,g=(0,h.B)(f,"commandcode");g&&(e.usage=g),d.push(e);break}case"error":{if(b.commandcodeFinished)break;b.commandcodeFinished=!0,b.finishReason=f.bC.STOP;let a=c.error??c.message??"unknown",e="string"==typeof a?a:JSON.stringify(a);d.push(m(b,{content:`
|
|
389
389
|
|
|
390
|
-
[CommandCode error: ${e}]`})),d.push(m(b,{},f.bC.STOP))}}return d.length?d:null}(0,d.kz)(e.h.COMMANDCODE,e.h.OPENAI,null,o)},69641:(a,b,c)=>{"use strict";c.a(a,async(a,b)=>{try{c(22884),c(87350),c(39541);var d=c(68531);c(82812),c(18762),c(20830),c(96997),c(1654),c(98976),c(6125),c(50969),c(13161),c(38421),c(80152),c(82689),c(7878),c(17438);var e=c(95695);c(81556),c(49926),c(69493),c(52748),c(978),c(76441),c(55261),c(4879),c(34578),c(78116),c(31629),c(23493),c(33871),c(50132),c(49471),c(46036),c(14896);var f=a([e]);e=(f.then?(await f)():f)[0],d.h.GEMINI,d.h.GEMINI_CLI,d.h.ANTIGRAVITY,d.h.VERTEX,b()}catch(a){b(a)}})},70106:(a,b,c)=>{"use strict";let{parseSetCookie:d}=c(5831),{stringify:e}=c(84698),{webidl:f}=c(32984),{Headers:g}=c(28665),h=f.brandCheckMultiple([g,globalThis.Headers].filter(Boolean));function i(a,b){f.argumentLengthCheck(arguments,2,"setCookie"),h(a);let c=e(b=f.converters.Cookie(b));c&&a.append("set-cookie",c,!0)}f.converters.DeleteCookieAttributes=f.dictionaryConverter([{converter:f.nullableConverter(f.converters.DOMString),key:"path",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.DOMString),key:"domain",defaultValue:()=>null}]),f.converters.Cookie=f.dictionaryConverter([{converter:f.converters.DOMString,key:"name"},{converter:f.converters.DOMString,key:"value"},{converter:f.nullableConverter(a=>"number"==typeof a?f.converters["unsigned long long"](a):new Date(a)),key:"expires",defaultValue:()=>null},{converter:f.nullableConverter(f.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.DOMString),key:"path",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.boolean),key:"secure",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:f.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:f.sequenceConverter(f.converters.DOMString),key:"unparsed",defaultValue:()=>[]}]),a.exports={getCookies:function(a){f.argumentLengthCheck(arguments,1,"getCookies"),h(a);let b=a.get("cookie"),c={};if(!b)return c;for(let a of b.split(";")){let[b,...d]=a.split("=");c[b.trim()]=d.join("=")}return c},deleteCookie:function(a,b,c){h(a);let d="deleteCookie";f.argumentLengthCheck(arguments,2,d),b=f.converters.DOMString(b,d,"name"),c=f.converters.DeleteCookieAttributes(c),i(a,{name:b,value:"",expires:new Date(0),...c})},getSetCookies:function(a){f.argumentLengthCheck(arguments,1,"getSetCookies"),h(a);let b=a.getSetCookie();return b?b.map(a=>d(a)):[]},setCookie:i,parseCookie:function(a){return d(a=f.converters.DOMString(a))}}},70459:(a,b,c)=>{"use strict";let{Transform:d}=c(57075),{Console:e}=c(37540),f=process.versions.icu?"✅":"Y ",g=process.versions.icu?"❌":"N ";a.exports=class{constructor({disableColors:a}={}){this.transform=new d({transform(a,b,c){c(null,a)}}),this.logger=new e({stdout:this.transform,inspectOptions:{colors:!a&&!process.env.CI}})}format(a){let b=a.map(({method:a,path:b,data:{statusCode:c},persist:d,times:e,timesInvoked:h,origin:i})=>({Method:a,Origin:i,Path:b,"Status code":c,Persistent:d?f:g,Invocations:h,Remaining:d?1/0:e-h}));return this.logger.table(b),this.transform.read().toString()}}},70625:(a,b,c)=>{"use strict";c.d(b,{Iq:()=>B,Kn:()=>v,dV:()=>w,zi:()=>x});var d=c(73024),e=c(76760),f=c(77598),g=c(59882),h=c(3507);let i=["claude-cli","codex-cli","gemini-cli"],j=new Map,k=new Map,l=new Set,m=null;function n(){let a=process.env.DATA_DIR||e.join(process.env.HOME||process.env.USERPROFILE||".",".switchboard");return e.join(a,"identity")}function o(a){return e.join(n(),`${a}.json`)}let p=function(){try{return JSON.parse(d.readFileSync(e.join(process.cwd(),"open-sse","identity","snapshots","versions.json"),"utf8"))}catch{try{return JSON.parse(d.readFileSync(new c.U(c(13839)),"utf8"))}catch{return{}}}}();function q(a){let b=p[a],c=b?.version;if(!c)return null;if("claude-cli"!==a)return{version:c,latestVersion:b.latestVersion};let d=b.tlsSpecRev||c;return{version:c,billingVersion:c,tlsSpecRev:d,latestVersion:b.latestVersion,capturedAt:b.capturedAt,entrypoint:b.entrypoint||"cli",userAgent:`claude-cli/${c} (external, ${b.entrypoint||"cli"})`,packageVersion:b.packageVersion||"0.112.1",runtimeVersion:b.runtimeVersion||"v26.3.0",betas:b.betas||"claude-code-20250219,interleaved-thinking-2025-05-14,redact-thinking-2026-02-12,thinking-token-count-2026-05-13,context-management-2025-06-27,prompt-caching-scope-2026-01-05,mid-conversation-system-2026-04-07,effort-2025-11-24,structured-outputs-2025-12-15"}}function r(a){let b=String(a||"").split(".").map(Number);return 3===b.length&&b.every(Number.isInteger)?b:null}function s(a){let b=String(a?.tlsSpecRev||"").match(/(\d+\.\d+\.\d+)/);return b?.[1]||null}function t(a,b){let c=r(a),d=r(b);if(!c||!d)return 0;for(let a=0;a<3;a++)if(c[a]!==d[a])return c[a]-d[a];return 0}function u(a){return!!(a?.version&&a?.billingVersion===a.version&&s(a)===a.version&&a.version===(z(p["claude-cli"]?.tlsSpecRev)||p["claude-cli"]?.version||null)&&a?.userAgent?.includes(`claude-cli/${a.version}`)&&a?.packageVersion&&a?.runtimeVersion&&a?.betas)}function v(a){return{version:a?.version||null,billingVersion:a?.billingVersion||null,tlsVersion:s(a),userAgentVersion:z(a?.userAgent)}}function w(a){if(j.has(a))return j.get(a);let b=null;try{b=JSON.parse(d.readFileSync(o(a),"utf8"))}catch{b=q(a)}return"claude-cli"!==a||u(b)||(b=q(a)),b&&j.set(a,b),b}function x(a){let b=w(a);return"claude-cli"!==a||u(b)?b:q(a)}function y(a,b){if(b&&"object"==typeof b){j.set(a,b);try{d.mkdirSync(n(),{recursive:!0}),d.writeFileSync(o(a),JSON.stringify(b,null,2))}catch{}}}function z(a){if("string"!=typeof a)return null;let b=a.match(/claude-cli\/(\d+\.\d+\.\d+)/i)||a.match(/codex_cli_rs\/(\d+\.\d+\.\d+)/i)||a.match(/GeminiCLI\/(\d+\.\d+\.\d+)/i)||a.match(/Cline\/(\d+\.\d+\.\d+)/i)||a.match(/antigravity\/(\d+\.\d+\.\d+)/i)||a.match(/QwenCode\/(\d+\.\d+\.\d+)/i)||a.match(/GitHubCopilotChat\/(\d+\.\d+\.\d+)/i);return b?b[1]:null}let A={"claude-cli":/claude-(?:cli|code)\//i,"codex-cli":/codex_cli_rs\//i,"gemini-cli":/GeminiCLI\//i,cline:/Cline\//i,antigravity:/antigravity\//i,qwen:/QwenCode\//i,copilot:/GitHubCopilotChat\//i};function B(a){let b=a||"anonymous";if(k.has(b))return k.get(b);let c=(0,f.createHash)("sha256").update(`device:${b}`).digest("hex"),d={buildHash:c.slice(0,3),deviceId:c,accountUuid:`${c.slice(0,8)}-${c.slice(8,12)}-4${c.slice(13,16)}-a${c.slice(17,20)}-${c.slice(20,32)}`,os:(0,h.vv)(),arch:(0,h.Tc)()};return k.set(b,d),d}function C(a,b){l.has(a)||(l.add(a),console.warn(`[IDENTITY_STALE] ${a}: ${b}`))}async function D(a,b){let c=g.jI[a]?.source?.npm;if(!c)return null;let d=await b(`https://registry.npmjs.org/${encodeURIComponent(c)}/latest`,{headers:{Accept:"application/json"}});if(!d.ok)return null;let e=await d.json();return r(e?.version)?e.version:null}async function E(a=globalThis.fetch){"function"==typeof a&&await Promise.all(i.map(async b=>{try{var c;let d,e=await D(b,a);if(!e)return;let f=x(b)||q(b)||{};if("claude-cli"===b){t(e,f.version)>0&&(y(b,{...f,latestVersion:e,checkedAt:Date.now()}),C(b,`npm ${e} is ahead of captured tuple ${f.version}`));return}if(c=f,!(!((d=A[b])&&c?.userAgent)||d.test(c.userAgent))||t(f.version,e)>0)C(b,`stored snapshot ${f.version} cannot belong to ${b}; reset to npm ${e}`),f=q(b)||{};else if(0>=t(e,f.version))return;let g="codex-cli"===b?`codex_cli_rs/${e}`:f.userAgent;y(b,{...f,version:e,...g?{userAgent:g}:{},checkedAt:Date.now()})}catch{}}))}function F(){let a=Date.now();for(let b of Object.keys(g.jI)){let c=x(b)||q(b),d=c?.capturedAt;if(!d)continue;let e=a-new Date(d).getTime();if(Number.isFinite(e)&&e>2592e6){let a=Math.floor(e/864e5);C(b,`snapshot is ${a}d old; run npm run identity:refresh`)}}}"1"!==process.env.SWITCHBOARD_DISABLE_IDENTITY_POLL&&queueMicrotask(()=>(function(a=globalThis.fetch){return m||"function"!=typeof a||(E(a),F(),m=setInterval(()=>{E(a),F()},216e5),m.unref?.()),m})())},70634:(a,b,c)=>{"use strict";let{MockNotMatchedError:d}=c(28998),{kDispatches:e,kMockAgent:f,kOriginalDispatch:g,kOrigin:h,kGetNetConnect:i,kTotalDispatchCount:j}=c(80830),{serializePathWithQuery:k,parseHeaders:l}=c(84285),{STATUS_CODES:m}=c(37067),{types:{isPromise:n}}=c(57975),{InvalidArgumentError:o}=c(61448),p=Symbol("request aborted");function q(a,b){return"string"==typeof a?a===b:a instanceof RegExp?a.test(b):"function"==typeof a&&!0===a(b)}function r(a){return Object.fromEntries(Object.entries(a).map(([a,b])=>[a.toLocaleLowerCase(),b]))}function s(a,b){if(Array.isArray(a)){for(let c=0;c<a.length;c+=2)if(a[c].toLocaleLowerCase()===b.toLocaleLowerCase())return a[c+1];return}return"function"==typeof a.get?a.get(b):r(a)[b.toLocaleLowerCase()]}function t(a){let b=a.slice(),c=[];for(let a=0;a<b.length;a+=2)c.push([b[a],b[a+1]]);return Object.fromEntries(c)}function u(a,b){if("function"==typeof a.headers)return Array.isArray(b)&&(b=t(b)),a.headers(b?r(b):{});if(void 0===a.headers)return!0;if("object"!=typeof b||"object"!=typeof a.headers)return!1;for(let[c,d]of Object.entries(a.headers))if(!q(d,s(b,c)))return!1;return!0}function v(a){if("string"!=typeof a)return a;let b=a.split("?",3);if(2!==b.length)return a;let c=new URLSearchParams(b.pop());return c.sort(),[...b,c.toString()].join("?")}function w(a){if(Buffer.isBuffer(a)||a instanceof Uint8Array)return a;if(a instanceof ArrayBuffer)return a;if(ArrayBuffer.isView(a))return new Uint8Array(a.buffer,a.byteOffset,a.byteLength);if("object"==typeof a)return JSON.stringify(a);else if(a)return a.toString();else return""}function x(a,b){let c=b.query?k(b.path,b.query):b.path,e="string"==typeof c?v(c):c,f=z(e),g=a.filter(({consumed:a})=>!a).filter(({path:a,ignoreTrailingSlash:b})=>b?q(z(v(a)),f):q(v(a),e));if(0===g.length)throw new d(`Mock dispatch not matched for path '${e}'`);if(0===(g=g.filter(({method:a})=>q(a,b.method))).length)throw new d(`Mock dispatch not matched for method '${b.method}' on path '${e}'`);if(0===(g=g.filter(({body:a})=>void 0===a||q(a,b.body))).length)throw new d(`Mock dispatch not matched for body '${b.body}' on path '${e}'`);if(0===(g=g.filter(a=>u(a,b.headers))).length){let a="object"==typeof b.headers?JSON.stringify(b.headers):b.headers;throw new d(`Mock dispatch not matched for headers '${a}' on path '${e}'`)}return g[0]}function y(a,b){let c=a.findIndex(a=>!!a.consumed&&function(a,{path:b,method:c,body:d,headers:e}){let f=q(a.path,b),g=q(a.method,c),h=void 0===a.body||q(a.body,d),i=u(a,e);return f&&g&&h&&i}(a,b));-1!==c&&a.splice(c,1)}function z(a){if("string"!=typeof a)return a;for(;a.endsWith("/");)a=a.slice(0,-1);return 0===a.length&&(a="/"),a}function A(a){let{path:b,method:c,body:d,headers:e,query:f}=a;return{path:b,method:c,body:d,headers:e,query:f}}function B(a){let b=Object.keys(a),c=[];for(let d=0;d<b.length;++d){let e=b[d],f=a[e],g=Buffer.from(`${e}`);if(Array.isArray(f))for(let a=0;a<f.length;++a)c.push(g,Buffer.from(`${f[a]}`));else c.push(g,Buffer.from(`${f}`))}return c}function C(a){return m[a]||"unknown"}function D(a,b){let c=A(a),d=x(this[e],c),f=this[e];d.timesInvoked++;let{timesInvoked:g,times:h}=d;d.consumed=!d.persist&&g>=h,d.pending=g<h;let i="function"==typeof b.onBodySent||"function"==typeof b.onRequestSent;if(d.data.callback&&(!i||null==a.body)){let{callback:e,...g}=d.data,h=e(a);if(n(h))return h.then(e=>{null==e||"object"!=typeof e?b.onResponseError(null,new o("reply options callback must return an object")):(d.data={...g,...e},E(f,d,c,a,b))},a=>{b.onResponseError(null,a)}),!0;if(null==h||"object"!=typeof h)throw new o("reply options callback must return an object");d.data={...g,...h}}return E(f,d,c,a,b)}function E(a,b,c,d,e){let{data:f,delay:g}=b;if(null!==f.error)return y(a,c),e.onResponseError(null,f.error),!0;let h=!1,i=null,j={paused:!1,rawHeaders:null,rawTrailers:null,pause(){this.paused=!0},resume(){this.paused=!1},abort:a=>{h||(h=!0,null!==i&&(clearTimeout(i),i=null),e.onResponseError?.(j,a))}},k=d;if(e.onRequestStart?.(j,null),h)return!0;let m=function(a,b,c,d){var e;if("function"!=typeof b.onBodySent&&"function"!=typeof b.onRequestSent)return a;if(null==a)return H(b,c,d)?a:p;if(a&&"function"==typeof a[Symbol.asyncIterator])return F(a,b,c,d);if("string"!=typeof(e=a)&&!Buffer.isBuffer(e)&&!ArrayBuffer.isView(e)&&"function"==typeof e[Symbol.iterator]){let e=[];for(let f of a)if(d()||(e.push(f),!G(b,c,f)||d()))return p;return H(b,c,d)?e:p}return d()||!G(b,c,a)?p:H(b,c,d)?a:p}(d.body,e,j,()=>h);if(n(m))return m.then(a=>{a!==p&&(a!==d.body&&(k={...d,body:a}),q())},a=>j.abort(a)),!0;if(m===p)return!0;function q(){if(f.callback){let d,{callback:g,...h}=f;try{d=g(k)}catch(b){y(a,c),e.onResponseError(null,b);return}if(n(d))return void d.then(c=>{null==c||"object"!=typeof c?e.onResponseError(null,new o("reply options callback must return an object")):(b.data={...h,...c},r(a,b.data))},a=>{e.onResponseError(null,a)});if(null==d||"object"!=typeof d)throw new o("reply options callback must return an object");return b.data={...h,...d},void r(a,b.data)}"number"==typeof g&&g>0?i=setTimeout(()=>{i=null,r(a)},g):r(a)}function r(a,b=f){if(h)return;let{statusCode:g,data:i,headers:m,trailers:o}=b,p=Array.isArray(d.headers)?t(d.headers):d.headers,q="function"==typeof i?i({...k,headers:p}):i;if(n(q))return q.then(c=>r(a,{...b,data:c}));if(h)return;let s=w(q),u=B(m??{}),v=B(o??{});j.rawHeaders=u,j.rawTrailers=v,e.onResponseStart?.(j,g,l(u),C(g)),e.onResponseData?.(j,Buffer.from(s)),e.onResponseEnd?.(j,l(v)),y(a,c)}return m!==d.body&&(k={...d,body:m}),q(),!0}async function F(a,b,c,d){let e=[];for await(let f of a)if(d()||(e.push(f),!G(b,c,f)||d()))return p;return H(b,c,d)?{async *[Symbol.asyncIterator](){yield*e}}:p}function G(a,b,c){try{return a.onBodySent?.(c),!0}catch(a){return b.abort(a),!1}}function H(a,b,c){try{return a.onRequestSent?.(),!c()}catch(a){return b.abort(a),!1}}function I(a,b){let c=new URL(b);return!0===a||!!(Array.isArray(a)&&a.some(a=>q(a,c.host)))}a.exports={getResponseData:w,getMockDispatch:x,addMockDispatch:function(a,b,c,d){let e={timesInvoked:0,times:1,persist:!1,consumed:!1,...d},f="function"==typeof c?{callback:c}:{...c},g={...e,...b,pending:!0,data:{error:null,...f}};return a.push(g),a[j]=(a[j]||0)+1,g},deleteMockDispatch:y,buildKey:A,generateKeyValues:B,matchValue:q,getResponse:async function a(a){let b=[];for await(let c of a)b.push(c);return Buffer.concat(b).toString("utf8")},getStatusText:C,mockDispatch:D,buildMockDispatch:function(){let a=this[f],b=this[h],c=this[g];return function(f,g){if(a.isMockActive)try{D.call(this,f,g)}catch(h){if("UND_MOCK_ERR_MOCK_NOT_MATCHED"===h.code){let k=a[i](),l=this[e][j]||this[e].length,m=this[e].filter(({consumed:a})=>!a).length,n=`, ${m} interceptor(s) remaining out of ${l} defined`;if(!1===k)throw new d(`${h.message}: subsequent request to origin ${b} was not allowed (net.connect disabled)${n}`);if(I(k,b))c.call(this,"__mockAgentBodyForDispatch"in f?{...f,body:f.__mockAgentBodyForDispatch}:f,g);else throw new d(`${h.message}: subsequent request to origin ${b} was not allowed (net.connect is not enabled for this origin)${n}`)}else throw h}else c.call(this,f,g)}},checkNetConnect:I,buildAndValidateMockOptions:function(a){let{agent:b,...c}=a;if("enableCallHistory"in c&&"boolean"!=typeof c.enableCallHistory)throw new o("options.enableCallHistory must to be a boolean");if("acceptNonStandardSearchParameters"in c&&"boolean"!=typeof c.acceptNonStandardSearchParameters)throw new o("options.acceptNonStandardSearchParameters must to be a boolean");if("ignoreTrailingSlash"in c&&"boolean"!=typeof c.ignoreTrailingSlash)throw new o("options.ignoreTrailingSlash must to be a boolean");return c},getHeaderByName:s,buildHeadersFromArray:t,normalizeSearchParams:function(a){if("string"!=typeof a)return a;let b=new URLSearchParams(a),c=new URLSearchParams;for(let[a,d]of b.entries()){if(a=a.replace("[]",""),/^(['"]).*\1$/.test(d)){c.append(a,d);continue}if(d.includes(",")){for(let b of d.split(","))c.append(a,b);continue}c.append(a,d)}return c},normalizeOrigin:function(a){return"string"==typeof a||a instanceof URL?a instanceof URL?a.origin:a.toLowerCase():a}}},70707:(a,b,c)=>{"use strict";let d=c(67519);a.exports=function({maxRedirections:a,throwOnMaxRedirect:b,stripHeadersOnRedirect:c,stripHeadersOnCrossOriginRedirect:e}={}){return f=>function(g,h){let{maxRedirections:i=a,throwOnMaxRedirect:j=b,stripHeadersOnRedirect:k=c,stripHeadersOnCrossOriginRedirect:l=e,...m}=g;if(null==i||0===i)return f(g,h);let n={...m,throwOnMaxRedirect:j,stripHeadersOnRedirect:k,stripHeadersOnCrossOriginRedirect:l},o=new d(f,i,n,h);return f(n,o)}}},70710:(a,b,c)=>{var d,e=c(45654);c(76632),c(1277),c(33889);var f=e.pkcs5=e.pkcs5||{};e.util.isNodejs&&!e.options.usePureJavaScript&&(d=c(55511)),a.exports=e.pbkdf2=f.pbkdf2=function(a,b,c,f,g,h){if("function"==typeof g&&(h=g,g=null),e.util.isNodejs&&!e.options.usePureJavaScript&&d.pbkdf2&&(null===g||"object"!=typeof g)&&(d.pbkdf2Sync.length>4||!g||"sha1"===g))return("string"!=typeof g&&(g="sha1"),a=Buffer.from(a,"binary"),b=Buffer.from(b,"binary"),h)?4===d.pbkdf2Sync.length?d.pbkdf2(a,b,c,f,function(a,b){if(a)return h(a);h(null,b.toString("binary"))}):d.pbkdf2(a,b,c,f,g,function(a,b){if(a)return h(a);h(null,b.toString("binary"))}):4===d.pbkdf2Sync.length?d.pbkdf2Sync(a,b,c,f).toString("binary"):d.pbkdf2Sync(a,b,c,f,g).toString("binary");if(null==g&&(g="sha1"),"string"==typeof g){if(!(g in e.md.algorithms))throw Error("Unknown hash algorithm: "+g);g=e.md[g].create()}var i=g.digestLength;if(f>0xffffffff*i){var j=Error("Derived key is too long.");if(h)return h(j);throw j}var k=Math.ceil(f/i),l=f-(k-1)*i,m=e.hmac.create();m.start(g,a);var n="";if(!h){for(var o=1;o<=k;++o){m.start(null,null),m.update(b),m.update(e.util.int32ToBytes(o)),q=s=m.digest().getBytes();for(var p=2;p<=c;++p)m.start(null,null),m.update(s),r=m.digest().getBytes(),q=e.util.xorBytes(q,r,i),s=r;n+=o<k?q:q.substr(0,l)}return n}var q,r,s,p,o=1;!function a(){if(o>k)return h(null,n);m.start(null,null),m.update(b),m.update(e.util.int32ToBytes(o)),q=s=m.digest().getBytes(),p=2,function b(){if(p<=c)return m.start(null,null),m.update(s),r=m.digest().getBytes(),q=e.util.xorBytes(q,r,i),s=r,++p,e.util.setImmediate(b);n+=o<k?q:q.substr(0,l),++o,a()}()}()}},70745:(a,b,c)=>{"use strict";let d=c(34589),{utf8DecodeBytes:e}=c(67449),f=/[\u0009\u000A\u000C\u000D\u0020]/g;function g(a){return 9===a||10===a||12===a||13===a||32===a}let h=/[^\x00-\xFF]/;function i(a,b,c,d){let e=0,f=a.length-1;if(b)for(;e<a.length&&d(a.charCodeAt(e));)e++;if(c)for(;f>0&&d(a.charCodeAt(f));)f--;return 0===e&&f===a.length-1?a:a.slice(e,f+1)}a.exports={collectASequenceOfCodePoints:function(a,b,c){let d="";for(;c.position<b.length&&a(b[c.position]);)d+=b[c.position],c.position++;return d},collectASequenceOfCodePointsFast:function(a,b,c){let d=b.indexOf(a,c.position),e=c.position;return -1===d?(c.position=b.length,b.slice(e)):(c.position=d,b.slice(e,c.position))},forgivingBase64:function(a){let b=(a=a.replace(f,"")).length;if(b%4==0&&61===a.charCodeAt(b-1)&&(--b,61===a.charCodeAt(b-1)&&--b),b%4==1||/[^+/0-9A-Za-z]/.test(a.length===b?a:a.substring(0,b)))return"failure";let c=Buffer.from(a,"base64");return new Uint8Array(c.buffer,c.byteOffset,c.byteLength)},isASCIIWhitespace:g,isomorphicDecode:function(a){let b=a.length;if(65535>b)return String.fromCharCode.apply(null,a);let c="",d=0,e=65535;for(;d<b;)d+e>b&&(e=b-d),c+=String.fromCharCode.apply(null,a.subarray(d,d+=e));return c},isomorphicEncode:function(a){return d(!h.test(a)),a},parseJSONFromBytes:function(a){return JSON.parse(e(a))},removeASCIIWhitespace:function(a,b=!0,c=!0){return i(a,b,c,g)},removeChars:i,serializeJavascriptValueToJSONString:function(a){let b=JSON.stringify(a);if(void 0===b)throw TypeError("Value is not JSON serializable");return d("string"==typeof b),b}}},70799:(a,b,c)=>{"use strict";c.d(b,{JA:()=>l});var d=c(55511),e=c(77598);let f=function(a){return Array.isArray(a)?a=Buffer.from(a):"string"==typeof a&&(a=Buffer.from(a,"utf8")),(0,e.createHash)("sha1").update(a).digest()},g=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i,h=function(a){let b;if(!("string"==typeof a&&g.test(a)))throw TypeError("Invalid UUID");return Uint8Array.of((b=parseInt(a.slice(0,8),16))>>>24,b>>>16&255,b>>>8&255,255&b,(b=parseInt(a.slice(9,13),16))>>>8,255&b,(b=parseInt(a.slice(14,18),16))>>>8,255&b,(b=parseInt(a.slice(19,23),16))>>>8,255&b,(b=parseInt(a.slice(24,36),16))/0x10000000000&255,b/0x100000000&255,b>>>24&255,b>>>16&255,b>>>8&255,255&b)};var i=c(82009);function j(a,b,c,d){var e=b,g=d;let j="string"==typeof a?function(a){let b=new Uint8Array((a=unescape(encodeURIComponent(a))).length);for(let c=0;c<a.length;++c)b[c]=a.charCodeAt(c);return b}(a):a,k="string"==typeof e?h(e):e;if("string"==typeof e&&(e=h(e)),e?.length!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let l=new Uint8Array(16+j.length);if(l.set(k),l.set(j,k.length),(l=f(l))[6]=15&l[6]|80,l[8]=63&l[8]|128,c){if((g??=0)<0||g+16>c.length)throw RangeError(`UUID byte range ${g}:${g+15} is out of buffer bounds`);for(let a=0;a<16;++a)c[g+a]=l[a];return c}return(0,i.k)(l)}function k(a,b=""){return d.createHash("sha256").update(a+b).digest("hex")}function l(a,b=null,c=!0){let e=a.includes("::")?a.split("::")[1]:a,f=b||k(e,"machineId"),g=j(e,j.DNS),h=k(e),i=function(a){let b=Math.floor(Date.now()/1e6),c=new Uint8Array([b>>40&255,b>>32&255,b>>24&255,b>>16&255,b>>8&255,255&b]),d=165;for(let a=0;a<c.length;a++)c[a]=(c[a]^d)+a%256&255,d=c[a];let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",f="";for(let a=0;a<c.length;a+=3){let b=c[a],d=a+1<c.length?c[a+1]:0,g=a+2<c.length?c[a+2]:0;f+=e[b>>2],f+=e[(3&b)<<4|d>>4],a+1<c.length&&(f+=e[(15&d)<<2|g>>6]),a+2<c.length&&(f+=e[63&g])}return`${f}${a}`}(f),m="linux";"u">typeof process&&("win32"===process.platform?m="windows":"darwin"===process.platform&&(m="macos"));let n="x64";return"u">typeof process&&"arm64"===process.arch&&(n="aarch64"),{authorization:`Bearer ${e}`,"connect-accept-encoding":"gzip","connect-protocol-version":"1","content-type":"application/connect+proto","user-agent":"connect-es/1.6.1","x-amzn-trace-id":`Root=${d.randomUUID()}`,"x-client-key":h,"x-cursor-checksum":i,"x-cursor-client-version":"3.1.0","x-cursor-client-type":"ide","x-cursor-client-os":m,"x-cursor-client-arch":n,"x-cursor-client-device-type":"desktop","x-cursor-config-version":d.randomUUID(),"x-cursor-timezone":Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC","x-ghost-mode":c?"true":"false","x-request-id":d.randomUUID(),"x-session-id":g}}j.DNS="6ba7b810-9dad-11d1-80b4-00c04fd430c8",j.URL="6ba7b811-9dad-11d1-80b4-00c04fd430c8"},70815:(a,b,c)=>{"use strict";c.d(b,{$s:()=>i,Bl:()=>j,M8:()=>h,ui:()=>k});var d=c(24081);let e="vault_fts",f=null;function g(a){if(null!==f)return f;try{a.run("CREATE VIRTUAL TABLE IF NOT EXISTS vault_fts USING fts5(text, entryId UNINDEXED, chunkIndex UNINDEXED, conversationId UNINDEXED, tokenize='porter unicode61')"),f=!0}catch{f=!1}return f}async function h({id:a,conversationId:b,toolName:c,content:f,chunks:i,ttlMs:j}={}){try{if("string"!=typeof a||!a||"string"!=typeof b||!b||"string"!=typeof f||!f)return!1;let h=Buffer.byteLength(f,"utf8"),k=Number(j);if(h>5242880||!Number.isFinite(k)||k<=0)return!1;let l=await (0,d.c)(),m=Date.now(),n=new Date(m).toISOString(),o=new Date(m+k).toISOString(),p=Array.isArray(i)&&i.length>0?i:[f];if(p.length>2e3)return!1;l.run(`INSERT OR REPLACE INTO vault_entries(id, conversationId, toolName, content, sizeBytes, createdAt, expiresAt, lastAccessedAt)
|
|
390
|
+
[CommandCode error: ${e}]`})),d.push(m(b,{},f.bC.STOP))}}return d.length?d:null}(0,d.kz)(e.h.COMMANDCODE,e.h.OPENAI,null,o)},69641:(a,b,c)=>{"use strict";c.a(a,async(a,b)=>{try{c(22884),c(87350),c(39541);var d=c(68531);c(82812),c(18762),c(20830),c(96997),c(1654),c(98976),c(6125),c(50969),c(13161),c(38421),c(80152),c(82689),c(7878),c(17438);var e=c(95695);c(81556),c(49926),c(69493),c(52748),c(978),c(96998),c(76441),c(55261),c(4879),c(34578),c(78116),c(31629),c(23493),c(33871),c(50132),c(49471),c(46036),c(14896);var f=a([e]);e=(f.then?(await f)():f)[0],d.h.GEMINI,d.h.GEMINI_CLI,d.h.ANTIGRAVITY,d.h.VERTEX,b()}catch(a){b(a)}})},70106:(a,b,c)=>{"use strict";let{parseSetCookie:d}=c(5831),{stringify:e}=c(84698),{webidl:f}=c(32984),{Headers:g}=c(28665),h=f.brandCheckMultiple([g,globalThis.Headers].filter(Boolean));function i(a,b){f.argumentLengthCheck(arguments,2,"setCookie"),h(a);let c=e(b=f.converters.Cookie(b));c&&a.append("set-cookie",c,!0)}f.converters.DeleteCookieAttributes=f.dictionaryConverter([{converter:f.nullableConverter(f.converters.DOMString),key:"path",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.DOMString),key:"domain",defaultValue:()=>null}]),f.converters.Cookie=f.dictionaryConverter([{converter:f.converters.DOMString,key:"name"},{converter:f.converters.DOMString,key:"value"},{converter:f.nullableConverter(a=>"number"==typeof a?f.converters["unsigned long long"](a):new Date(a)),key:"expires",defaultValue:()=>null},{converter:f.nullableConverter(f.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.DOMString),key:"path",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.boolean),key:"secure",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:f.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:f.sequenceConverter(f.converters.DOMString),key:"unparsed",defaultValue:()=>[]}]),a.exports={getCookies:function(a){f.argumentLengthCheck(arguments,1,"getCookies"),h(a);let b=a.get("cookie"),c={};if(!b)return c;for(let a of b.split(";")){let[b,...d]=a.split("=");c[b.trim()]=d.join("=")}return c},deleteCookie:function(a,b,c){h(a);let d="deleteCookie";f.argumentLengthCheck(arguments,2,d),b=f.converters.DOMString(b,d,"name"),c=f.converters.DeleteCookieAttributes(c),i(a,{name:b,value:"",expires:new Date(0),...c})},getSetCookies:function(a){f.argumentLengthCheck(arguments,1,"getSetCookies"),h(a);let b=a.getSetCookie();return b?b.map(a=>d(a)):[]},setCookie:i,parseCookie:function(a){return d(a=f.converters.DOMString(a))}}},70459:(a,b,c)=>{"use strict";let{Transform:d}=c(57075),{Console:e}=c(37540),f=process.versions.icu?"✅":"Y ",g=process.versions.icu?"❌":"N ";a.exports=class{constructor({disableColors:a}={}){this.transform=new d({transform(a,b,c){c(null,a)}}),this.logger=new e({stdout:this.transform,inspectOptions:{colors:!a&&!process.env.CI}})}format(a){let b=a.map(({method:a,path:b,data:{statusCode:c},persist:d,times:e,timesInvoked:h,origin:i})=>({Method:a,Origin:i,Path:b,"Status code":c,Persistent:d?f:g,Invocations:h,Remaining:d?1/0:e-h}));return this.logger.table(b),this.transform.read().toString()}}},70625:(a,b,c)=>{"use strict";c.d(b,{Iq:()=>B,Kn:()=>v,dV:()=>w,zi:()=>x});var d=c(73024),e=c(76760),f=c(77598),g=c(59882),h=c(3507);let i=["claude-cli","codex-cli","gemini-cli"],j=new Map,k=new Map,l=new Set,m=null;function n(){let a=process.env.DATA_DIR||e.join(process.env.HOME||process.env.USERPROFILE||".",".switchboard");return e.join(a,"identity")}function o(a){return e.join(n(),`${a}.json`)}let p=function(){try{return JSON.parse(d.readFileSync(e.join(process.cwd(),"open-sse","identity","snapshots","versions.json"),"utf8"))}catch{try{return JSON.parse(d.readFileSync(new c.U(c(13839)),"utf8"))}catch{return{}}}}();function q(a){let b=p[a],c=b?.version;if(!c)return null;if("claude-cli"!==a)return{version:c,latestVersion:b.latestVersion};let d=b.tlsSpecRev||c;return{version:c,billingVersion:c,tlsSpecRev:d,latestVersion:b.latestVersion,capturedAt:b.capturedAt,entrypoint:b.entrypoint||"cli",userAgent:`claude-cli/${c} (external, ${b.entrypoint||"cli"})`,packageVersion:b.packageVersion||"0.112.1",runtimeVersion:b.runtimeVersion||"v26.3.0",betas:b.betas||"claude-code-20250219,interleaved-thinking-2025-05-14,redact-thinking-2026-02-12,thinking-token-count-2026-05-13,context-management-2025-06-27,prompt-caching-scope-2026-01-05,mid-conversation-system-2026-04-07,effort-2025-11-24,structured-outputs-2025-12-15"}}function r(a){let b=String(a||"").split(".").map(Number);return 3===b.length&&b.every(Number.isInteger)?b:null}function s(a){let b=String(a?.tlsSpecRev||"").match(/(\d+\.\d+\.\d+)/);return b?.[1]||null}function t(a,b){let c=r(a),d=r(b);if(!c||!d)return 0;for(let a=0;a<3;a++)if(c[a]!==d[a])return c[a]-d[a];return 0}function u(a){return!!(a?.version&&a?.billingVersion===a.version&&s(a)===a.version&&a.version===(z(p["claude-cli"]?.tlsSpecRev)||p["claude-cli"]?.version||null)&&a?.userAgent?.includes(`claude-cli/${a.version}`)&&a?.packageVersion&&a?.runtimeVersion&&a?.betas)}function v(a){return{version:a?.version||null,billingVersion:a?.billingVersion||null,tlsVersion:s(a),userAgentVersion:z(a?.userAgent)}}function w(a){if(j.has(a))return j.get(a);let b=null;try{b=JSON.parse(d.readFileSync(o(a),"utf8"))}catch{b=q(a)}return"claude-cli"!==a||u(b)||(b=q(a)),b&&j.set(a,b),b}function x(a){let b=w(a);return"claude-cli"!==a||u(b)?b:q(a)}function y(a,b){if(b&&"object"==typeof b){j.set(a,b);try{d.mkdirSync(n(),{recursive:!0}),d.writeFileSync(o(a),JSON.stringify(b,null,2))}catch{}}}function z(a){if("string"!=typeof a)return null;let b=a.match(/claude-cli\/(\d+\.\d+\.\d+)/i)||a.match(/codex_cli_rs\/(\d+\.\d+\.\d+)/i)||a.match(/GeminiCLI\/(\d+\.\d+\.\d+)/i)||a.match(/Cline\/(\d+\.\d+\.\d+)/i)||a.match(/antigravity\/(\d+\.\d+\.\d+)/i)||a.match(/QwenCode\/(\d+\.\d+\.\d+)/i)||a.match(/GitHubCopilotChat\/(\d+\.\d+\.\d+)/i);return b?b[1]:null}let A={"claude-cli":/claude-(?:cli|code)\//i,"codex-cli":/codex_cli_rs\//i,"gemini-cli":/GeminiCLI\//i,cline:/Cline\//i,antigravity:/antigravity\//i,qwen:/QwenCode\//i,copilot:/GitHubCopilotChat\//i};function B(a){let b=a||"anonymous";if(k.has(b))return k.get(b);let c=(0,f.createHash)("sha256").update(`device:${b}`).digest("hex"),d={buildHash:c.slice(0,3),deviceId:c,accountUuid:`${c.slice(0,8)}-${c.slice(8,12)}-4${c.slice(13,16)}-a${c.slice(17,20)}-${c.slice(20,32)}`,os:(0,h.vv)(),arch:(0,h.Tc)()};return k.set(b,d),d}function C(a,b){l.has(a)||(l.add(a),console.warn(`[IDENTITY_STALE] ${a}: ${b}`))}async function D(a,b){let c=g.jI[a]?.source?.npm;if(!c)return null;let d=await b(`https://registry.npmjs.org/${encodeURIComponent(c)}/latest`,{headers:{Accept:"application/json"}});if(!d.ok)return null;let e=await d.json();return r(e?.version)?e.version:null}async function E(a=globalThis.fetch){"function"==typeof a&&await Promise.all(i.map(async b=>{try{var c;let d,e=await D(b,a);if(!e)return;let f=x(b)||q(b)||{};if("claude-cli"===b){t(e,f.version)>0&&(y(b,{...f,latestVersion:e,checkedAt:Date.now()}),C(b,`npm ${e} is ahead of captured tuple ${f.version}`));return}if(c=f,!(!((d=A[b])&&c?.userAgent)||d.test(c.userAgent))||t(f.version,e)>0)C(b,`stored snapshot ${f.version} cannot belong to ${b}; reset to npm ${e}`),f=q(b)||{};else if(0>=t(e,f.version))return;let g="codex-cli"===b?`codex_cli_rs/${e}`:f.userAgent;y(b,{...f,version:e,...g?{userAgent:g}:{},checkedAt:Date.now()})}catch{}}))}function F(){let a=Date.now();for(let b of Object.keys(g.jI)){let c=x(b)||q(b),d=c?.capturedAt;if(!d)continue;let e=a-new Date(d).getTime();if(Number.isFinite(e)&&e>2592e6){let a=Math.floor(e/864e5);C(b,`snapshot is ${a}d old; run npm run identity:refresh`)}}}"1"!==process.env.SWITCHBOARD_DISABLE_IDENTITY_POLL&&queueMicrotask(()=>(function(a=globalThis.fetch){return m||"function"!=typeof a||(E(a),F(),m=setInterval(()=>{E(a),F()},216e5),m.unref?.()),m})())},70634:(a,b,c)=>{"use strict";let{MockNotMatchedError:d}=c(28998),{kDispatches:e,kMockAgent:f,kOriginalDispatch:g,kOrigin:h,kGetNetConnect:i,kTotalDispatchCount:j}=c(80830),{serializePathWithQuery:k,parseHeaders:l}=c(84285),{STATUS_CODES:m}=c(37067),{types:{isPromise:n}}=c(57975),{InvalidArgumentError:o}=c(61448),p=Symbol("request aborted");function q(a,b){return"string"==typeof a?a===b:a instanceof RegExp?a.test(b):"function"==typeof a&&!0===a(b)}function r(a){return Object.fromEntries(Object.entries(a).map(([a,b])=>[a.toLocaleLowerCase(),b]))}function s(a,b){if(Array.isArray(a)){for(let c=0;c<a.length;c+=2)if(a[c].toLocaleLowerCase()===b.toLocaleLowerCase())return a[c+1];return}return"function"==typeof a.get?a.get(b):r(a)[b.toLocaleLowerCase()]}function t(a){let b=a.slice(),c=[];for(let a=0;a<b.length;a+=2)c.push([b[a],b[a+1]]);return Object.fromEntries(c)}function u(a,b){if("function"==typeof a.headers)return Array.isArray(b)&&(b=t(b)),a.headers(b?r(b):{});if(void 0===a.headers)return!0;if("object"!=typeof b||"object"!=typeof a.headers)return!1;for(let[c,d]of Object.entries(a.headers))if(!q(d,s(b,c)))return!1;return!0}function v(a){if("string"!=typeof a)return a;let b=a.split("?",3);if(2!==b.length)return a;let c=new URLSearchParams(b.pop());return c.sort(),[...b,c.toString()].join("?")}function w(a){if(Buffer.isBuffer(a)||a instanceof Uint8Array)return a;if(a instanceof ArrayBuffer)return a;if(ArrayBuffer.isView(a))return new Uint8Array(a.buffer,a.byteOffset,a.byteLength);if("object"==typeof a)return JSON.stringify(a);else if(a)return a.toString();else return""}function x(a,b){let c=b.query?k(b.path,b.query):b.path,e="string"==typeof c?v(c):c,f=z(e),g=a.filter(({consumed:a})=>!a).filter(({path:a,ignoreTrailingSlash:b})=>b?q(z(v(a)),f):q(v(a),e));if(0===g.length)throw new d(`Mock dispatch not matched for path '${e}'`);if(0===(g=g.filter(({method:a})=>q(a,b.method))).length)throw new d(`Mock dispatch not matched for method '${b.method}' on path '${e}'`);if(0===(g=g.filter(({body:a})=>void 0===a||q(a,b.body))).length)throw new d(`Mock dispatch not matched for body '${b.body}' on path '${e}'`);if(0===(g=g.filter(a=>u(a,b.headers))).length){let a="object"==typeof b.headers?JSON.stringify(b.headers):b.headers;throw new d(`Mock dispatch not matched for headers '${a}' on path '${e}'`)}return g[0]}function y(a,b){let c=a.findIndex(a=>!!a.consumed&&function(a,{path:b,method:c,body:d,headers:e}){let f=q(a.path,b),g=q(a.method,c),h=void 0===a.body||q(a.body,d),i=u(a,e);return f&&g&&h&&i}(a,b));-1!==c&&a.splice(c,1)}function z(a){if("string"!=typeof a)return a;for(;a.endsWith("/");)a=a.slice(0,-1);return 0===a.length&&(a="/"),a}function A(a){let{path:b,method:c,body:d,headers:e,query:f}=a;return{path:b,method:c,body:d,headers:e,query:f}}function B(a){let b=Object.keys(a),c=[];for(let d=0;d<b.length;++d){let e=b[d],f=a[e],g=Buffer.from(`${e}`);if(Array.isArray(f))for(let a=0;a<f.length;++a)c.push(g,Buffer.from(`${f[a]}`));else c.push(g,Buffer.from(`${f}`))}return c}function C(a){return m[a]||"unknown"}function D(a,b){let c=A(a),d=x(this[e],c),f=this[e];d.timesInvoked++;let{timesInvoked:g,times:h}=d;d.consumed=!d.persist&&g>=h,d.pending=g<h;let i="function"==typeof b.onBodySent||"function"==typeof b.onRequestSent;if(d.data.callback&&(!i||null==a.body)){let{callback:e,...g}=d.data,h=e(a);if(n(h))return h.then(e=>{null==e||"object"!=typeof e?b.onResponseError(null,new o("reply options callback must return an object")):(d.data={...g,...e},E(f,d,c,a,b))},a=>{b.onResponseError(null,a)}),!0;if(null==h||"object"!=typeof h)throw new o("reply options callback must return an object");d.data={...g,...h}}return E(f,d,c,a,b)}function E(a,b,c,d,e){let{data:f,delay:g}=b;if(null!==f.error)return y(a,c),e.onResponseError(null,f.error),!0;let h=!1,i=null,j={paused:!1,rawHeaders:null,rawTrailers:null,pause(){this.paused=!0},resume(){this.paused=!1},abort:a=>{h||(h=!0,null!==i&&(clearTimeout(i),i=null),e.onResponseError?.(j,a))}},k=d;if(e.onRequestStart?.(j,null),h)return!0;let m=function(a,b,c,d){var e;if("function"!=typeof b.onBodySent&&"function"!=typeof b.onRequestSent)return a;if(null==a)return H(b,c,d)?a:p;if(a&&"function"==typeof a[Symbol.asyncIterator])return F(a,b,c,d);if("string"!=typeof(e=a)&&!Buffer.isBuffer(e)&&!ArrayBuffer.isView(e)&&"function"==typeof e[Symbol.iterator]){let e=[];for(let f of a)if(d()||(e.push(f),!G(b,c,f)||d()))return p;return H(b,c,d)?e:p}return d()||!G(b,c,a)?p:H(b,c,d)?a:p}(d.body,e,j,()=>h);if(n(m))return m.then(a=>{a!==p&&(a!==d.body&&(k={...d,body:a}),q())},a=>j.abort(a)),!0;if(m===p)return!0;function q(){if(f.callback){let d,{callback:g,...h}=f;try{d=g(k)}catch(b){y(a,c),e.onResponseError(null,b);return}if(n(d))return void d.then(c=>{null==c||"object"!=typeof c?e.onResponseError(null,new o("reply options callback must return an object")):(b.data={...h,...c},r(a,b.data))},a=>{e.onResponseError(null,a)});if(null==d||"object"!=typeof d)throw new o("reply options callback must return an object");return b.data={...h,...d},void r(a,b.data)}"number"==typeof g&&g>0?i=setTimeout(()=>{i=null,r(a)},g):r(a)}function r(a,b=f){if(h)return;let{statusCode:g,data:i,headers:m,trailers:o}=b,p=Array.isArray(d.headers)?t(d.headers):d.headers,q="function"==typeof i?i({...k,headers:p}):i;if(n(q))return q.then(c=>r(a,{...b,data:c}));if(h)return;let s=w(q),u=B(m??{}),v=B(o??{});j.rawHeaders=u,j.rawTrailers=v,e.onResponseStart?.(j,g,l(u),C(g)),e.onResponseData?.(j,Buffer.from(s)),e.onResponseEnd?.(j,l(v)),y(a,c)}return m!==d.body&&(k={...d,body:m}),q(),!0}async function F(a,b,c,d){let e=[];for await(let f of a)if(d()||(e.push(f),!G(b,c,f)||d()))return p;return H(b,c,d)?{async *[Symbol.asyncIterator](){yield*e}}:p}function G(a,b,c){try{return a.onBodySent?.(c),!0}catch(a){return b.abort(a),!1}}function H(a,b,c){try{return a.onRequestSent?.(),!c()}catch(a){return b.abort(a),!1}}function I(a,b){let c=new URL(b);return!0===a||!!(Array.isArray(a)&&a.some(a=>q(a,c.host)))}a.exports={getResponseData:w,getMockDispatch:x,addMockDispatch:function(a,b,c,d){let e={timesInvoked:0,times:1,persist:!1,consumed:!1,...d},f="function"==typeof c?{callback:c}:{...c},g={...e,...b,pending:!0,data:{error:null,...f}};return a.push(g),a[j]=(a[j]||0)+1,g},deleteMockDispatch:y,buildKey:A,generateKeyValues:B,matchValue:q,getResponse:async function a(a){let b=[];for await(let c of a)b.push(c);return Buffer.concat(b).toString("utf8")},getStatusText:C,mockDispatch:D,buildMockDispatch:function(){let a=this[f],b=this[h],c=this[g];return function(f,g){if(a.isMockActive)try{D.call(this,f,g)}catch(h){if("UND_MOCK_ERR_MOCK_NOT_MATCHED"===h.code){let k=a[i](),l=this[e][j]||this[e].length,m=this[e].filter(({consumed:a})=>!a).length,n=`, ${m} interceptor(s) remaining out of ${l} defined`;if(!1===k)throw new d(`${h.message}: subsequent request to origin ${b} was not allowed (net.connect disabled)${n}`);if(I(k,b))c.call(this,"__mockAgentBodyForDispatch"in f?{...f,body:f.__mockAgentBodyForDispatch}:f,g);else throw new d(`${h.message}: subsequent request to origin ${b} was not allowed (net.connect is not enabled for this origin)${n}`)}else throw h}else c.call(this,f,g)}},checkNetConnect:I,buildAndValidateMockOptions:function(a){let{agent:b,...c}=a;if("enableCallHistory"in c&&"boolean"!=typeof c.enableCallHistory)throw new o("options.enableCallHistory must to be a boolean");if("acceptNonStandardSearchParameters"in c&&"boolean"!=typeof c.acceptNonStandardSearchParameters)throw new o("options.acceptNonStandardSearchParameters must to be a boolean");if("ignoreTrailingSlash"in c&&"boolean"!=typeof c.ignoreTrailingSlash)throw new o("options.ignoreTrailingSlash must to be a boolean");return c},getHeaderByName:s,buildHeadersFromArray:t,normalizeSearchParams:function(a){if("string"!=typeof a)return a;let b=new URLSearchParams(a),c=new URLSearchParams;for(let[a,d]of b.entries()){if(a=a.replace("[]",""),/^(['"]).*\1$/.test(d)){c.append(a,d);continue}if(d.includes(",")){for(let b of d.split(","))c.append(a,b);continue}c.append(a,d)}return c},normalizeOrigin:function(a){return"string"==typeof a||a instanceof URL?a instanceof URL?a.origin:a.toLowerCase():a}}},70707:(a,b,c)=>{"use strict";let d=c(67519);a.exports=function({maxRedirections:a,throwOnMaxRedirect:b,stripHeadersOnRedirect:c,stripHeadersOnCrossOriginRedirect:e}={}){return f=>function(g,h){let{maxRedirections:i=a,throwOnMaxRedirect:j=b,stripHeadersOnRedirect:k=c,stripHeadersOnCrossOriginRedirect:l=e,...m}=g;if(null==i||0===i)return f(g,h);let n={...m,throwOnMaxRedirect:j,stripHeadersOnRedirect:k,stripHeadersOnCrossOriginRedirect:l},o=new d(f,i,n,h);return f(n,o)}}},70710:(a,b,c)=>{var d,e=c(45654);c(76632),c(1277),c(33889);var f=e.pkcs5=e.pkcs5||{};e.util.isNodejs&&!e.options.usePureJavaScript&&(d=c(55511)),a.exports=e.pbkdf2=f.pbkdf2=function(a,b,c,f,g,h){if("function"==typeof g&&(h=g,g=null),e.util.isNodejs&&!e.options.usePureJavaScript&&d.pbkdf2&&(null===g||"object"!=typeof g)&&(d.pbkdf2Sync.length>4||!g||"sha1"===g))return("string"!=typeof g&&(g="sha1"),a=Buffer.from(a,"binary"),b=Buffer.from(b,"binary"),h)?4===d.pbkdf2Sync.length?d.pbkdf2(a,b,c,f,function(a,b){if(a)return h(a);h(null,b.toString("binary"))}):d.pbkdf2(a,b,c,f,g,function(a,b){if(a)return h(a);h(null,b.toString("binary"))}):4===d.pbkdf2Sync.length?d.pbkdf2Sync(a,b,c,f).toString("binary"):d.pbkdf2Sync(a,b,c,f,g).toString("binary");if(null==g&&(g="sha1"),"string"==typeof g){if(!(g in e.md.algorithms))throw Error("Unknown hash algorithm: "+g);g=e.md[g].create()}var i=g.digestLength;if(f>0xffffffff*i){var j=Error("Derived key is too long.");if(h)return h(j);throw j}var k=Math.ceil(f/i),l=f-(k-1)*i,m=e.hmac.create();m.start(g,a);var n="";if(!h){for(var o=1;o<=k;++o){m.start(null,null),m.update(b),m.update(e.util.int32ToBytes(o)),q=s=m.digest().getBytes();for(var p=2;p<=c;++p)m.start(null,null),m.update(s),r=m.digest().getBytes(),q=e.util.xorBytes(q,r,i),s=r;n+=o<k?q:q.substr(0,l)}return n}var q,r,s,p,o=1;!function a(){if(o>k)return h(null,n);m.start(null,null),m.update(b),m.update(e.util.int32ToBytes(o)),q=s=m.digest().getBytes(),p=2,function b(){if(p<=c)return m.start(null,null),m.update(s),r=m.digest().getBytes(),q=e.util.xorBytes(q,r,i),s=r,++p,e.util.setImmediate(b);n+=o<k?q:q.substr(0,l),++o,a()}()}()}},70745:(a,b,c)=>{"use strict";let d=c(34589),{utf8DecodeBytes:e}=c(67449),f=/[\u0009\u000A\u000C\u000D\u0020]/g;function g(a){return 9===a||10===a||12===a||13===a||32===a}let h=/[^\x00-\xFF]/;function i(a,b,c,d){let e=0,f=a.length-1;if(b)for(;e<a.length&&d(a.charCodeAt(e));)e++;if(c)for(;f>0&&d(a.charCodeAt(f));)f--;return 0===e&&f===a.length-1?a:a.slice(e,f+1)}a.exports={collectASequenceOfCodePoints:function(a,b,c){let d="";for(;c.position<b.length&&a(b[c.position]);)d+=b[c.position],c.position++;return d},collectASequenceOfCodePointsFast:function(a,b,c){let d=b.indexOf(a,c.position),e=c.position;return -1===d?(c.position=b.length,b.slice(e)):(c.position=d,b.slice(e,c.position))},forgivingBase64:function(a){let b=(a=a.replace(f,"")).length;if(b%4==0&&61===a.charCodeAt(b-1)&&(--b,61===a.charCodeAt(b-1)&&--b),b%4==1||/[^+/0-9A-Za-z]/.test(a.length===b?a:a.substring(0,b)))return"failure";let c=Buffer.from(a,"base64");return new Uint8Array(c.buffer,c.byteOffset,c.byteLength)},isASCIIWhitespace:g,isomorphicDecode:function(a){let b=a.length;if(65535>b)return String.fromCharCode.apply(null,a);let c="",d=0,e=65535;for(;d<b;)d+e>b&&(e=b-d),c+=String.fromCharCode.apply(null,a.subarray(d,d+=e));return c},isomorphicEncode:function(a){return d(!h.test(a)),a},parseJSONFromBytes:function(a){return JSON.parse(e(a))},removeASCIIWhitespace:function(a,b=!0,c=!0){return i(a,b,c,g)},removeChars:i,serializeJavascriptValueToJSONString:function(a){let b=JSON.stringify(a);if(void 0===b)throw TypeError("Value is not JSON serializable");return d("string"==typeof b),b}}},70799:(a,b,c)=>{"use strict";c.d(b,{JA:()=>l});var d=c(55511),e=c(77598);let f=function(a){return Array.isArray(a)?a=Buffer.from(a):"string"==typeof a&&(a=Buffer.from(a,"utf8")),(0,e.createHash)("sha1").update(a).digest()},g=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i,h=function(a){let b;if(!("string"==typeof a&&g.test(a)))throw TypeError("Invalid UUID");return Uint8Array.of((b=parseInt(a.slice(0,8),16))>>>24,b>>>16&255,b>>>8&255,255&b,(b=parseInt(a.slice(9,13),16))>>>8,255&b,(b=parseInt(a.slice(14,18),16))>>>8,255&b,(b=parseInt(a.slice(19,23),16))>>>8,255&b,(b=parseInt(a.slice(24,36),16))/0x10000000000&255,b/0x100000000&255,b>>>24&255,b>>>16&255,b>>>8&255,255&b)};var i=c(82009);function j(a,b,c,d){var e=b,g=d;let j="string"==typeof a?function(a){let b=new Uint8Array((a=unescape(encodeURIComponent(a))).length);for(let c=0;c<a.length;++c)b[c]=a.charCodeAt(c);return b}(a):a,k="string"==typeof e?h(e):e;if("string"==typeof e&&(e=h(e)),e?.length!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let l=new Uint8Array(16+j.length);if(l.set(k),l.set(j,k.length),(l=f(l))[6]=15&l[6]|80,l[8]=63&l[8]|128,c){if((g??=0)<0||g+16>c.length)throw RangeError(`UUID byte range ${g}:${g+15} is out of buffer bounds`);for(let a=0;a<16;++a)c[g+a]=l[a];return c}return(0,i.k)(l)}function k(a,b=""){return d.createHash("sha256").update(a+b).digest("hex")}function l(a,b=null,c=!0){let e=a.includes("::")?a.split("::")[1]:a,f=b||k(e,"machineId"),g=j(e,j.DNS),h=k(e),i=function(a){let b=Math.floor(Date.now()/1e6),c=new Uint8Array([b>>40&255,b>>32&255,b>>24&255,b>>16&255,b>>8&255,255&b]),d=165;for(let a=0;a<c.length;a++)c[a]=(c[a]^d)+a%256&255,d=c[a];let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",f="";for(let a=0;a<c.length;a+=3){let b=c[a],d=a+1<c.length?c[a+1]:0,g=a+2<c.length?c[a+2]:0;f+=e[b>>2],f+=e[(3&b)<<4|d>>4],a+1<c.length&&(f+=e[(15&d)<<2|g>>6]),a+2<c.length&&(f+=e[63&g])}return`${f}${a}`}(f),m="linux";"u">typeof process&&("win32"===process.platform?m="windows":"darwin"===process.platform&&(m="macos"));let n="x64";return"u">typeof process&&"arm64"===process.arch&&(n="aarch64"),{authorization:`Bearer ${e}`,"connect-accept-encoding":"gzip","connect-protocol-version":"1","content-type":"application/connect+proto","user-agent":"connect-es/1.6.1","x-amzn-trace-id":`Root=${d.randomUUID()}`,"x-client-key":h,"x-cursor-checksum":i,"x-cursor-client-version":"3.1.0","x-cursor-client-type":"ide","x-cursor-client-os":m,"x-cursor-client-arch":n,"x-cursor-client-device-type":"desktop","x-cursor-config-version":d.randomUUID(),"x-cursor-timezone":Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC","x-ghost-mode":c?"true":"false","x-request-id":d.randomUUID(),"x-session-id":g}}j.DNS="6ba7b810-9dad-11d1-80b4-00c04fd430c8",j.URL="6ba7b811-9dad-11d1-80b4-00c04fd430c8"},70815:(a,b,c)=>{"use strict";c.d(b,{$s:()=>i,Bl:()=>j,M8:()=>h,ui:()=>k});var d=c(24081);let e="vault_fts",f=null;function g(a){if(null!==f)return f;try{a.run("CREATE VIRTUAL TABLE IF NOT EXISTS vault_fts USING fts5(text, entryId UNINDEXED, chunkIndex UNINDEXED, conversationId UNINDEXED, tokenize='porter unicode61')"),f=!0}catch{f=!1}return f}async function h({id:a,conversationId:b,toolName:c,content:f,chunks:i,ttlMs:j}={}){try{if("string"!=typeof a||!a||"string"!=typeof b||!b||"string"!=typeof f||!f)return!1;let h=Buffer.byteLength(f,"utf8"),k=Number(j);if(h>5242880||!Number.isFinite(k)||k<=0)return!1;let l=await (0,d.c)(),m=Date.now(),n=new Date(m).toISOString(),o=new Date(m+k).toISOString(),p=Array.isArray(i)&&i.length>0?i:[f];if(p.length>2e3)return!1;l.run(`INSERT OR REPLACE INTO vault_entries(id, conversationId, toolName, content, sizeBytes, createdAt, expiresAt, lastAccessedAt)
|
|
391
391
|
VALUES(?, ?, ?, ?, ?, ?, ?, ?)`,[a,b,c||null,f,h,n,o,n]),l.run("DELETE FROM vault_chunks WHERE entryId = ?",[a]);for(let c=0;c<p.length;c+=1){let d=p[c];if("string"!=typeof d)throw Error("invalid vault chunk");l.run("INSERT INTO vault_chunks(entryId, chunkIndex, conversationId, text) VALUES(?, ?, ?, ?)",[a,c,b,d])}if(g(l))try{l.run(`DELETE FROM ${e} WHERE entryId = ?`,[a]);for(let c=0;c<p.length;c+=1)l.run(`INSERT INTO ${e}(text, entryId, chunkIndex, conversationId) VALUES(?, ?, ?, ?)`,[p[c],a,c,b])}catch{}let q=l.get("SELECT COUNT(*) AS count FROM vault_entries")?.count||0,r=Number(q)-200;return r>0&&function(a,b){if(!Number.isInteger(b)||b<=0)return;let c="SELECT id FROM vault_entries ORDER BY lastAccessedAt ASC LIMIT ?";if(a.run(`DELETE FROM vault_chunks WHERE entryId IN (${c})`,[b]),g(a))try{a.run(`DELETE FROM ${e} WHERE entryId IN (${c})`,[b])}catch{}a.run(`DELETE FROM vault_entries WHERE id IN (${c})`,[b])}(l,r),!0}catch{return!1}}async function i({conversationId:a,query:b,vaultId:c=null,limit:f=5}={}){try{if("string"!=typeof a||!a||"string"!=typeof b||!b.trim())return[];let i=Math.max(1,Math.min(20,Math.floor(Number(f)||5))),l=function(a){try{if("string"!=typeof a)return[];return(a.toLowerCase().match(/[\p{L}\p{N}]+/gu)||[]).filter(a=>a.length>=2).slice(0,12)}catch{return[]}}(b),m=await (0,d.c)(),n=new Date().toISOString(),o=[];if(l.length>0&&g(m))try{let b=l.map(a=>`"${a}"`).join(" OR "),d=c?` AND ${e}.entryId = ?`:"",f=c?[b,a,n,c,i]:[b,a,n,i];o=m.all(`SELECT ${e}.entryId AS entryId, ${e}.chunkIndex AS chunkIndex, ${e}.text AS text, bm25(${e}) AS rank
|
|
392
392
|
FROM ${e} JOIN vault_entries ON vault_entries.id = ${e}.entryId
|
|
393
393
|
WHERE ${e} MATCH ? AND ${e}.conversationId = ? AND vault_entries.expiresAt > ?${d} ORDER BY rank LIMIT ?`,f)}catch{o=[]}if(0===o.length&&l.length>0){var h;let b=l.map(()=>"lower(vault_chunks.text) LIKE ?").join(" OR "),d=c?[a,n,c,...l.map(a=>`%${a}%`),4*i]:[a,n,...l.map(a=>`%${a}%`),4*i];h=m.all(`SELECT vault_chunks.entryId AS entryId, vault_chunks.chunkIndex AS chunkIndex, vault_chunks.text AS text
|
|
@@ -498,7 +498,7 @@ ${l}`:l),m&&(a.encrypted_content=m);else{let a={role:g.z7.ASSISTANT,content:""};
|
|
|
498
498
|
fi
|
|
499
499
|
fi
|
|
500
500
|
done
|
|
501
|
-
`;return new Promise(a=>{f(d,{shell:"/bin/bash"},()=>a())})}async function y(a,b){if(!h()){k(`🔐 Cert: cannot install to system store without sudo — trust this file on clients: ${b}`),await x(b,"add");return}let c=p(),d=`${c.dir}/switchboard-root-ca.crt`,e=`cp "${b}" "${d}" && (${c.cmd} 2>/dev/null || true)`;try{await g(e,a),await x(b,"add"),k(`🔐 Cert: ✅ installed to Linux trust store (${c.dir}) and user browser databases`)}catch(a){throw Error(`Certificate install failed: ${a.message}`)}}async function z(a){if(await x(null,"delete"),!h())return;let b=p(),c=`${b.dir}/switchboard-root-ca.crt`,d=`rm -f "${c}" && (${b.cmd} 2>/dev/null || true)`;try{await g(d,a),k("\uD83D\uDD10 Cert: ✅ uninstalled from Linux trust store and user browser databases")}catch(a){throw Error("Failed to uninstall certificate")}}a.exports={installCert:async function a(a,b){if(!d.existsSync(b))throw Error(`Certificate file not found: ${b}`);await s(b)?k("\uD83D\uDD10 Cert: already trusted ✅"):m?await u(b):n?await t(a,b):await y(a,b)},uninstallCert:async function a(a,b){await s(b)?m?await w():n?await v(a,b):await z(a):k("\uD83D\uDD10 Cert: not found in system store")},checkCertInstalled:s}},94463:(a,b,c)=>{var d=c(45654);c(63070),c(36105),c(20308),c(49345),c(70710),c(15873),c(87981),c(10401),c(33889),c(65737);var e=d.asn1,f=a.exports=d.pki=d.pki||{};f.pemToDer=function(a){var b=d.pem.decode(a)[0];if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert PEM to DER; PEM is encrypted.");return d.util.createBuffer(b.body)},f.privateKeyFromPem=function(a){var b=d.pem.decode(a)[0];if("PRIVATE KEY"!==b.type&&"RSA PRIVATE KEY"!==b.type){var c=Error('Could not convert private key from PEM; PEM header type is not "PRIVATE KEY" or "RSA PRIVATE KEY".');throw c.headerType=b.type,c}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert private key from PEM; PEM is encrypted.");var g=e.fromDer(b.body);return f.privateKeyFromAsn1(g)},f.privateKeyToPem=function(a,b){var c={type:"RSA PRIVATE KEY",body:e.toDer(f.privateKeyToAsn1(a)).getBytes()};return d.pem.encode(c,{maxline:b})},f.privateKeyInfoToPem=function(a,b){var c={type:"PRIVATE KEY",body:e.toDer(a).getBytes()};return d.pem.encode(c,{maxline:b})}},95095:(a,b,c)=>{"use strict";let d=c(7344),e=c(31825);class f extends d{#bR=null;#bS=null;constructor(a,b={}){super(b),this.#bR=a,this.#bS=b}dispatch(a,b){let c=new e({...a,retryOptions:this.#bS},{dispatch:this.#bR.dispatch.bind(this.#bR),handler:b});return this.#bR.dispatch(a,c)}close(){return this.#bR.close()}destroy(){return this.#bR.destroy()}}a.exports=f},95695:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{SB:()=>B});var e=c(65369),f=c(30322),g=c(59529),h=c(4620),i=c(16542),j=c(33113),k=c(62692),l=c(84263),m=c(40404),n=c(51171),o=c(41883),p=c(99120),q=c(67594),r=c(49209),s=c(37606),t=c(18205),u=c(94107),v=c(14071),w=c(76558),x=c(16276),y=c(46248),z=c(72285);c(67671);var A=a([n]);n=(A.then?(await A)():A)[0];let C={antigravity:new e.c,azure:new f.P,"gemini-cli":new g.VG,github:new h.x,iflow:new i.r,qoder:new j.DH,kiro:new k.B,kimchi:new l.BL,codex:new m.T,cursor:new n.ou,cu:new n.ou,vertex:new o.w("vertex"),"vertex-partner":new o.w("vertex-partner"),qwen:new p.R,opencode:new q.j,"grok-web":new r.$,"perplexity-web":new s.Ay,"ollama-local":new t.D,commandcode:new u.A,"xiaomi-tokenplan":new v.F,"mimo-free":new w.Yh,mmf:new w.Yh,"codebuddy-cn":new x.v,"grok-cli":new z.h},D=new Map;function B(a){return C[a]?C[a]:(D.has(a)||D.set(a,new y.L(a)),D.get(a))}d()}catch(a){d(a)}})},96684:(a,b,c)=>{"use strict";c.d(b,{F:()=>e,Q:()=>f});var d=c(62457);function e(a,b){switch(b){case"claude":switch(a){case d.Ut.END_TURN:return d.bC.STOP;case d.Ut.MAX_TOKENS:return d.bC.LENGTH;case d.Ut.TOOL_USE:return d.bC.TOOL_CALLS;case d.Ut.STOP_SEQUENCE:default:return d.bC.STOP}case"commandcode":switch(a){case"stop":case"error":default:return d.bC.STOP;case"length":return d.bC.LENGTH;case"tool-calls":case"tool_use":return d.bC.TOOL_CALLS;case"content-filter":return d.bC.CONTENT_FILTER}case"gemini":{let b=String(a).toUpperCase();if(d.lW.has(b))return d.bC.ERROR;if(d.zh.has(b))return d.bC.CONTENT_FILTER;switch(b){case d.a_.STOP:return d.bC.STOP;case d.a_.MAX_TOKENS:return d.bC.LENGTH;default:return d.bC.STOP}}case"kiro":case"ollama":switch(a){case"tool_calls":case"tool_use":return d.bC.TOOL_CALLS;case"length":case"max_tokens":return d.bC.LENGTH;default:return d.bC.STOP}default:return a||d.bC.STOP}}function f(a,b){if("claude"!==b)return a;switch(a){case d.bC.STOP:return d.Ut.END_TURN;case d.bC.LENGTH:return d.Ut.MAX_TOKENS;case d.bC.TOOL_CALLS:return d.Ut.TOOL_USE;case d.bC.ERROR:default:return d.Ut.END_TURN}}},96997:(a,b,c)=>{"use strict";c.d(b,{oD:()=>B,Og:()=>D,jT:()=>C,Sc:()=>E,jR:()=>z,I9:()=>r,AH:()=>x,Ql:()=>w,$B:()=>J,pb:()=>G});var d=c(38421),e=c(10793),f=c(50969);let g=new Map;function h(a,b){g.get(a)===b&&(g.delete(a),b.cleanupTimer&&clearTimeout(b.cleanupTimer))}async function i(a,b,c,d){if(!b)return c();let e=`${a}:${b}`,f=g.get(e);if(f){if(f.promise)return d?.info?.("TOKEN_REFRESH",`Reusing in-flight refresh for ${a}`),f.promise;if(f.expiresAt>Date.now())return d?.info?.("TOKEN_REFRESH",`Reusing recent refresh result for ${a}`),f.result;h(e,f)}let i={promise:null},j=(async()=>{try{let a=await c();if(a&&(a.accessToken||a.copilotToken||a.refreshToken)){let b;(b={result:a,expiresAt:Date.now()+1e4,cleanupTimer:null}).cleanupTimer=setTimeout(()=>{g.get(e)===b&&(g.delete(e),b.cleanupTimer=null)},1e4),b.cleanupTimer.unref?.(),g.set(e,b)}else h(e,i);return a}catch(a){throw h(e,i),a}})();return i.promise=j,g.set(e,i),j}var j=c(17438),k=c(85513);function l(a,b,c,d){let e=t(c,d);return e.permanent?(a?.error?.("TOKEN_REFRESH",`${b} refresh token revoked or expired. Re-auth required.`,{status:d,code:e.code}),{error:"unrecoverable_refresh_error",code:e.code}):null}function m(a="",b=0){let c="";try{let b=a?JSON.parse(a):null;c=b?.error||b?.error_code||b?.code||""}catch{}return{status:b,errorCode:c||void 0,bodyLen:a?.length||0}}let n=null;async function o(a,b){return a?i("xai",a,async()=>{try{if(!n){let a=(0,j.oC)().createXaiService;if(!a)return b?.warn?.("TOKEN_REFRESH","xAI service not wired (setOpenSseDeps)"),null;n=await a()}let c=await n.refreshAccessToken(a);return{accessToken:c.access_token,refreshToken:c.refresh_token||a,expiresIn:c.expires_in,idToken:c.id_token}}catch(d){let a=String(d?.message||""),c=a.includes("invalid_grant")?"invalid_grant":a.includes("invalid_request")?"invalid_request":null;if(b?.warn?.("TOKEN_REFRESH","xai refresh failed",c?{errorCode:c}:void 0),c)return{error:c};return null}},b):null}async function p(a,b,c,e,g=null){let h=d.xq[a],j=h?.refreshUrl||d.sr[a]?.refreshUrl||d.sr[a]?.tokenUrl;return h&&j?b?i(a,b,async()=>{try{let c=new URLSearchParams({grant_type:"refresh_token",refresh_token:b,client_id:h.clientId});h.clientSecret&&c.set("client_secret",h.clientSecret);let d=await (0,f.Fm)(j,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:c,identity:h.identity,provider:a,format:h.format},g);if(!d.ok){let b=await d.text(),c=l(e,a,b,d.status);if(c)return c;return e?.error?.("TOKEN_REFRESH",`Failed to refresh token for ${a}`,{status:d.status,error:m(b,d.status)}),null}let i=await d.json();return e?.info?.("TOKEN_REFRESH",`Successfully refreshed token for ${a}`,{hasNewAccessToken:!!i.access_token,hasNewRefreshToken:!!i.refresh_token,expiresIn:i.expires_in}),{accessToken:i.access_token,refreshToken:i.refresh_token||b,expiresIn:i.expires_in}}catch(b){return e?.error?.("TOKEN_REFRESH",`Error refreshing token for ${a}`,{error:b.message}),null}},e):(e?.warn?.("TOKEN_REFRESH",`No refresh token available for provider: ${a}`),null):(e?.warn?.("TOKEN_REFRESH",`No refresh URL configured for provider: ${a}`),null)}async function q(a,b){return a?i("claude",a,async()=>{try{let c=await (0,f.Fm)(e.NA.anthropic.token,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({grant_type:"refresh_token",refresh_token:a,client_id:d.xq.claude.clientId}),identity:d.xq.claude?.identity,provider:"claude",format:d.xq.claude?.format});if(!c.ok){let a=await c.text(),d=l(b,"Claude",a,c.status);if(d)return d;return b?.error?.("TOKEN_REFRESH","Failed to refresh Claude OAuth token",{status:c.status,error:m(a,c.status)}),null}let g=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Claude OAuth token",{hasNewAccessToken:!!g.access_token,expiresIn:g.expires_in}),{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Claude token: ${a.message}`),null}},b):null}async function r(a,b,c,g,h=null,j=null){if(!a)return null;let k=h||(b===d.xq.antigravity?.clientId?"antigravity":"gemini-cli"),n=d.xq[k];return i(`google:${b}`,a,async()=>{try{let d=await (0,f.Fm)(e.NA.google.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:b,client_secret:c}),identity:n?.identity,provider:k,format:n?.format},j);if(!d.ok){let a=await d.text(),b=l(g,"Google",a,d.status);if(b)return b;return g?.error?.("TOKEN_REFRESH","Failed to refresh Google token",{status:d.status,error:m(a,d.status)}),null}let h=await d.json();return g?.info?.("TOKEN_REFRESH","Successfully refreshed Google token",{hasNewAccessToken:!!h.access_token,expiresIn:h.expires_in}),{accessToken:h.access_token,refreshToken:h.refresh_token||a,expiresIn:h.expires_in}}catch(a){return g?.error?.("TOKEN_REFRESH",`Network error refreshing Google token: ${a.message}`),null}},g)}async function s(a,b){return a?i("qwen",a,async()=>{let c=e.NA.qwen.token;try{let e=await (0,f.Fm)(c,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:d.xq.qwen.clientId}),identity:d.xq.qwen?.identity,provider:"qwen",format:d.xq.qwen?.format});if(200===e.status){let c=await e.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Qwen token",{hasNewAccessToken:!!c.access_token,hasNewRefreshToken:!!c.refresh_token,expiresIn:c.expires_in}),{accessToken:c.access_token,refreshToken:c.refresh_token||a,expiresIn:c.expires_in,providerSpecificData:c.resource_url?{resourceUrl:c.resource_url}:void 0}}{let a=await e.text().catch(()=>""),c=l(b,"Qwen",a,e.status);if(c)return c;b?.warn?.("TOKEN_REFRESH","Error with Qwen endpoint",{status:e.status,error:m(a,e.status)})}}catch(a){b?.warn?.("TOKEN_REFRESH","Network error trying Qwen endpoint",{error:a.message})}return b?.error?.("TOKEN_REFRESH","Failed to refresh Qwen token"),null},b):null}function t(a="",b=0){let c=null;try{c=a?JSON.parse(a):null}catch{c=null}let d=c?.error,e=("string"==typeof d?d:d?.code||d?.type)||c?.error_code||"",f=c?.error_description||c?.message||d?.message||a||"",g=`${e} ${f}`.toLowerCase(),h=b<500&&["refresh_token_expired","refresh_token_reused","refresh_token_invalidated","invalid_grant","bad_refresh_token"].some(a=>g.includes(a));return{status:b,code:e,description:f,permanent:h}}async function u(a,b){return a?i("codex",a,async()=>{try{let c=await (0,f.Fm)(e.NA.openai.token,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({client_id:d.xq.codex.clientId,grant_type:"refresh_token",refresh_token:a}),identity:d.xq.codex?.identity,provider:"codex",format:d.xq.codex?.format});if(!c.ok){let a=await c.text(),d=t(a,c.status);if(d.permanent)return b?.error?.("TOKEN_REFRESH","Codex refresh token already used or invalid. Re-auth required.",{status:c.status,code:d.code}),{error:"unrecoverable_refresh_error",code:d.code};return b?.error?.("TOKEN_REFRESH","Failed to refresh Codex token",{status:c.status,error:m(a,c.status),code:d.code,permanent:d.permanent}),null}let g=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Codex token",{hasNewAccessToken:!!g.access_token,hasNewRefreshToken:!!g.refresh_token,hasIdToken:!!g.id_token,expiresIn:g.expires_in}),{accessToken:g.access_token,refreshToken:g.refresh_token||a,idToken:g.id_token,expiresIn:g.expires_in}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Codex token: ${a.message}`),null}},b):null}async function v(a,b,c){if(a?.profileArn)return{};let d=c?.trim?.()||null;if(!d){let c=(0,j.oC)().fetchKiroProfileArn;c&&(d=await c(b,a?.region))}return d?{providerSpecificData:{profileArn:d}}:{}}async function w(a,b,c,e=null){return a?i("kiro",a,async()=>{let g=b?.authMethod,h=b?.clientId,i=b?.clientSecret,l=b?.region;if("external_idp"===g){let g;try{let c=(0,j.oC)().buildExternalIdpRefreshParams;if(!c)throw Error("buildExternalIdpRefreshParams not wired");g=await c(a,b)}catch(a){return c?.warn?.("TOKEN_REFRESH",`Invalid Kiro external_idp refresh config: ${a.message}`),null}let h=await (0,f.Fm)(g.tokenEndpoint,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:g.body,identity:d.xq.kiro?.identity,provider:"kiro",format:d.xq.kiro?.format},e);if(!h.ok){let a=await h.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro external_idp token",{status:h.status,error:m(a,h.status)}),null}let i=await h.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro external_idp token",{hasNewAccessToken:!!i.access_token,hasNewRefreshToken:!!i.refresh_token,expiresIn:i.expires_in}),{accessToken:i.access_token,refreshToken:i.refresh_token||a,expiresIn:i.expires_in,providerSpecificData:g.providerSpecificData}}if(h&&i){let j="idc"===g&&(0,k.i7)(l)?`https://oidc.${l}.amazonaws.com/token`:"https://oidc.us-east-1.amazonaws.com/token",n=await (0,f.Fm)(j,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientId:h,clientSecret:i,refreshToken:a,grantType:"refresh_token"}),identity:d.xq.kiro?.identity,provider:"kiro",format:d.xq.kiro?.format},e);if(!n.ok){let a=await n.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro AWS token",{status:n.status,error:m(a,n.status)}),null}let o=await n.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro AWS token",{hasNewAccessToken:!!o.accessToken,expiresIn:o.expiresIn}),{accessToken:o.accessToken,refreshToken:o.refreshToken||a,expiresIn:o.expiresIn,...await v(b,o.accessToken,o.profileArn)}}let n=await (0,f.Fm)(d.xq.kiro.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"kiro-cli/1.0.0"},body:JSON.stringify({refreshToken:a}),identity:d.xq.kiro?.identity,provider:"kiro",format:d.xq.kiro?.format},e);if(!n.ok){let a=await n.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro social token",{status:n.status,error:m(a,n.status)}),null}let o=await n.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro social token",{hasNewAccessToken:!!o.accessToken,expiresIn:o.expiresIn}),{accessToken:o.accessToken,refreshToken:o.refreshToken||a,expiresIn:o.expiresIn,...await v(b,o.accessToken,o.profileArn)}},c):null}async function x(a,b){return a?i("iflow",a,async()=>{let c=btoa(`${d.xq.iflow.clientId}:${d.xq.iflow.clientSecret}`),g=await (0,f.Fm)(e.NA.iflow.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json",Authorization:`Basic ${c}`},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:d.xq.iflow.clientId,client_secret:d.xq.iflow.clientSecret}),identity:d.xq.iflow?.identity,provider:"iflow",format:d.xq.iflow?.format});if(!g.ok){let a=await g.text(),c=l(b,"iFlow",a,g.status);return c||(b?.error?.("TOKEN_REFRESH","Failed to refresh iFlow token",{status:g.status,error:m(a,g.status)}),null)}let h=await g.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed iFlow token",{hasNewAccessToken:!!h.access_token,hasNewRefreshToken:!!h.refresh_token,expiresIn:h.expires_in}),{accessToken:h.access_token,refreshToken:h.refresh_token||a,expiresIn:h.expires_in}},b):null}async function y(a,b){return a?i("github",a,async()=>{let c={grant_type:"refresh_token",refresh_token:a,client_id:d.xq.github.clientId};d.xq.github.clientSecret&&(c.client_secret=d.xq.github.clientSecret);let g=await (0,f.Fm)(e.NA.github.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams(c),identity:d.xq.github?.identity,provider:"github",format:d.xq.github?.format});if(!g.ok){let a=await g.text(),c=l(b,"GitHub",a,g.status);return c||(b?.error?.("TOKEN_REFRESH","Failed to refresh GitHub token",{status:g.status,error:m(a,g.status)}),null)}let h=await g.json();if(h.error||!h.access_token){let a=JSON.stringify(h),c=l(b,"GitHub",a,g.status);return c||(b?.error?.("TOKEN_REFRESH","Failed to refresh GitHub token",{status:g.status,error:m(a,g.status)}),null)}return b?.info?.("TOKEN_REFRESH","Successfully refreshed GitHub token",{hasNewAccessToken:!!h.access_token,hasNewRefreshToken:!!h.refresh_token,expiresIn:h.expires_in}),{accessToken:h.access_token,refreshToken:h.refresh_token||a,expiresIn:h.expires_in}},b):null}async function z(a,b){return a?i("copilot",a,async()=>{try{let c=await (0,f.Fm)(d.sr.github?.copilotTokenUrl,{headers:{Authorization:`token ${a}`,Accept:"application/json"},identity:d.xq.github?.identity,provider:"github",format:d.xq.github?.format});if(!c.ok){let a=await c.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh Copilot token",{status:c.status,error:m(a,c.status)}),null}let e=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Copilot token",{hasToken:!!e.token,expiresAt:e.expires_at}),{token:e.token,expiresAt:e.expires_at}}catch(a){return b?.error?.("TOKEN_REFRESH","Error refreshing Copilot token",{error:a.message}),null}},b):null}async function A(a,b){return a?i("codebuddy-cn",a,async()=>{let c=d.sr["codebuddy-cn"]||{},e=await (0,f.Fm)(c.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":c.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"copilot.tencent.com","X-Refresh-Token":a},body:JSON.stringify({refreshToken:a}),identity:d.xq["codebuddy-cn"]?.identity,provider:"codebuddy-cn",format:d.xq["codebuddy-cn"]?.format});if(!e.ok){let a=await e.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh CodeBuddy token",{status:e.status,error:m(a,e.status)}),null}let g=await e.json();return 0===g.code&&g.data?.accessToken?(b?.info?.("TOKEN_REFRESH","Successfully refreshed CodeBuddy token",{hasNewAccessToken:!!g.data.accessToken,hasNewRefreshToken:!!g.data.refreshToken,expiresIn:g.data.expiresIn}),{accessToken:g.data.accessToken,refreshToken:g.data.refreshToken||a,expiresIn:g.data.expiresIn}):(b?.error?.("TOKEN_REFRESH","CodeBuddy token refresh returned no token",{code:g.code,msg:g.msg}),null)},b):null}let B=3e5;function C(a){return a&&"object"==typeof a&&("unrecoverable_refresh_error"===a.error||"refresh_token_reused"===a.error||"invalid_request"===a.error||"invalid_grant"===a.error)}function D(a){return e.Wu[a]||B}function E(a){if("string"!=typeof a)return null;try{let b=JSON.parse(a);if("service_account"===b.type&&b.client_email&&b.private_key&&b.project_id)return b;return null}catch{return null}}let F=new Map;async function G(a,b,g="vertex",h=null){let i=a.client_email,j=F.get(i);if(j&&j.expiresAt-Date.now()>3e5)return{accessToken:j.token,expiresAt:j.expiresAt};try{let{SignJWT:j,importPKCS8:k}=await c.e(3675).then(c.bind(c,3675));b?.debug?.("TOKEN_REFRESH",`Vertex minting token for ${a.client_email}`);let l=await k(a.private_key.replace(/\\n/g,"\n"),"RS256"),m=Math.floor(Date.now()/1e3),n=await new j({scope:"https://www.googleapis.com/auth/cloud-platform"}).setProtectedHeader({alg:"RS256"}).setIssuer(a.client_email).setAudience(e.NA.google.token).setIssuedAt(m).setExpirationTime(m+3600).sign(l),o=d.xq[g]||d.xq.vertex,p=await (0,f.Fm)(e.NA.google.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:jwt-bearer",assertion:n}),identity:o.identity,provider:g,format:o.format},h);if(!p.ok){let a=await p.text();return b?.error?.("TOKEN_REFRESH",`Vertex token mint failed: ${a}`),null}let{access_token:q,expires_in:r}=await p.json(),s=Date.now()+(r??3600)*1e3;return F.set(i,{token:q,expiresAt:s}),b?.info?.("TOKEN_REFRESH",`Vertex token minted for ${a.client_email}`),{accessToken:q,expiresAt:s}}catch(a){return b?.error?.("TOKEN_REFRESH",`Vertex token error: ${a.message}`),null}}function H(a,b,c="vertex"){let d=E(a.apiKey);if(d)return G(d,b,c);try{let d="string"==typeof a.apiKey?JSON.parse(a.apiKey):null;if(d?.type==="authorized_user"&&d.refresh_token&&d.client_id&&d.client_secret)return r(d.refresh_token,d.client_id,d.client_secret,b,c)}catch{}return null}let I={"gemini-cli":(a,b)=>r(a.refreshToken,d.xq["gemini-cli"].clientId,d.xq["gemini-cli"].clientSecret,b),antigravity:(a,b)=>r(a.refreshToken,d.xq.antigravity.clientId,d.xq.antigravity.clientSecret,b),claude:(a,b)=>q(a.refreshToken,b),codex:(a,b)=>u(a.refreshToken,b),qwen:(a,b)=>s(a.refreshToken,b),iflow:(a,b)=>x(a.refreshToken,b),github:(a,b)=>y(a.refreshToken,b),kiro:(a,b)=>w(a.refreshToken,a.providerSpecificData,b),xai:(a,b)=>o(a.refreshToken,b),"grok-cli":(a,b,c)=>p("grok-cli",a.refreshToken,a,b,c),"codebuddy-cn":(a,b)=>A(a.refreshToken,b),vertex:(a,b)=>H(a,b,"vertex"),"vertex-partner":(a,b)=>H(a,b,"vertex-partner")};async function J(a,b,c,d=null){let e="vertex"===a||"vertex-partner"===a;if(!b.refreshToken&&!(e&&b?.apiKey))return null;let f=I[a];return f?f(b,c,d):p(a,b.refreshToken,b,c,d)}},97137:(a,b,c)=>{"use strict";c.d(b,{v:()=>k});var d=c(82689);let e=["server_is_overloaded","service_unavailable_error"];function f(a){let b=Error(a?.reason?.message||"Request aborted");return b.name="AbortError",b}function g(a){let b="",c=[];for(let d of a.split(/\r?\n/))d.startsWith("event:")?b=d.slice(6).trim():d.startsWith("data:")&&c.push(d.slice(5).trimStart());let d=c.join("\n"),e=null;try{e=JSON.parse(d)}catch{}return{event:b,parsed:e,rawData:d}}function h({event:a,parsed:b,rawData:c}){let d=b?.type||a,f=b?.error||b?.response?.error;if(!("error"===a||"error"===d||"response.failed"===d||d?.endsWith?.(".error")||f))return null;let g=b?JSON.stringify(f||b):c;return e.find(a=>g.includes(a))||null}async function i(a,b){let c;if(!b)return a.read();if(b.aborted)throw f(b);try{return await Promise.race([a.read(),new Promise((a,d)=>{c=()=>d(f(b)),b.addEventListener?.("abort",c,{once:!0})})])}catch(c){if(b.aborted)try{await a.cancel(f(b))}catch{}throw c}finally{c&&b.removeEventListener?.("abort",c)}}async function j(a,b){let c;if(!a?.ok||!a.body)return{matched:null,replacementBody:null};let d=a.body.getReader(),e=new TextDecoder,j=[],k=0,l="",m=!1,n=null;try{for(;k<4096&&!n&&!m;){if(b?.aborted)throw f(b);let{done:a,value:c}=await i(d,b);if(a)break;j.push(c),k+=c.byteLength;let o=(l+=e.decode(c,{stream:!0})).split(/\r?\n\r?\n/);for(let a of(l=o.pop()||"",o)){let b=g(a);(function({event:a,parsed:b}){let c=b?.type||a;return!(!c||"error"===c||"response.failed"===c||c?.endsWith?.(".error")||b?.error||b?.response?.error)&&(c.startsWith("response.output_")||c.startsWith("response.content_part.")||c.startsWith("response.function_call")||c.startsWith("response.reasoning")||c.startsWith("response.refusal")||c.startsWith("response.image_generation_call."))})(b)&&(m=!0);let c=h(b);if(c&&!m){n=c;break}}}n||m||(n=h(g(l)))}catch(a){if(b?.aborted||a?.name==="AbortError")throw a}return{matched:n,replacementBody:(c=0,new ReadableStream({async pull(a){if(c<j.length)return void a.enqueue(j[c++]);try{let{done:b,value:c}=await d.read();b?a.close():a.enqueue(c)}catch(b){a.error(b)}},cancel:a=>d.cancel(a)}))}}async function k({execute:a,retryConfig:b,signal:c,log:e,provider:g="UPSTREAM"}){let h={...d.cI,...b},{attempts:i,delayMs:l}=(0,d.DR)(h.sseTransient??h[503]);for(let b=0;;b++){var m;if(c?.aborted)throw f(c);let d=await a(),h=await j(d.response,c),k=(m=h.replacementBody)?{...d,response:new Response(m,{status:d.response.status,statusText:d.response.statusText,headers:d.response.headers})}:d;if(!h.matched)return k;if(b>=i)return e?.warn?.("RETRY",`${g.toUpperCase()} | SSE transient "${h.matched}" — retries exhausted (${b}/${i})`),k;e?.debug?.("RETRY",`${g.toUpperCase()} | SSE "${h.matched}" retry ${b+1}/${i} after ${l/1e3}s`);try{await k.response.body?.cancel?.("retrying transient SSE error")}catch{}await function(a,b){return b?.aborted?Promise.reject(f(b)):a<=0?Promise.resolve():new Promise((c,d)=>{let e=()=>{clearTimeout(g),b?.removeEventListener?.("abort",e),d(f(b))},g=setTimeout(()=>{clearTimeout(g),b?.removeEventListener?.("abort",e),c()},a);b?.addEventListener?.("abort",e,{once:!0})})}(l,c)}}},97210:(a,b,c)=>{"use strict";let{createInflateRaw:d,Z_DEFAULT_WINDOWBITS:e}=c(38522),{isValidClientWindowBits:f}=c(94050),{MessageSizeExceededError:g}=c(61448),h=Buffer.from([0,0,255,255]),i=Symbol("kBuffer"),j=Symbol("kLength");class k{#bT;#bS={};#br=0;constructor(a,b){this.#bS.serverNoContextTakeover=a.has("server_no_context_takeover"),this.#bS.serverMaxWindowBits=a.get("server_max_window_bits"),this.#br=b.maxPayloadSize}decompress(a,b,c){if(!this.#bT){let a=e;if(this.#bS.serverMaxWindowBits){if(!f(this.#bS.serverMaxWindowBits))return void c(Error("Invalid server_max_window_bits"));a=Number.parseInt(this.#bS.serverMaxWindowBits)}try{this.#bT=d({windowBits:a})}catch(a){c(a);return}this.#bT[i]=[],this.#bT[j]=0,this.#bT.on("data",a=>{if(this.#bT[j]+=a.length,this.#br>0&&this.#bT[j]>this.#br){c(new g),this.#bT.removeAllListeners(),this.#bT=null;return}this.#bT[i].push(a)}),this.#bT.on("error",a=>{this.#bT=null,c(a)})}this.#bT.write(a),b&&this.#bT.write(h),this.#bT.flush(()=>{if(!this.#bT)return;let a=Buffer.concat(this.#bT[i],this.#bT[j]);this.#bT[i].length=0,this.#bT[j]=0,c(null,a)})}}a.exports={PerMessageDeflate:k}},97356:(a,b,c)=>{"use strict";let{Transform:d}=c(57075),{isASCIINumber:e,isValidLastEventId:f}=c(26376),g=Buffer.from("data"),h=Buffer.from("event"),i=Buffer.from("id"),j=Buffer.from("retry");function k(a,b,c){if(b!==c.length)return!1;for(let d=0;d<b;d++)if(a[d]!==c[d])return!1;return!0}class l extends d{state;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;chunks=[];chunkIndex=0;pos=0;lineChunkIndex=0;linePos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(a={}){a.readableObjectMode=!0,super(a),this.state=a.eventSourceSettings||{},a.push&&(this.push=a.push)}_transform(a,b,c){if(0===a.length||(this.chunks.push(a),this.checkBOM&&this.handleBOM()))return void c();for(;this.hasCurrentByte();){let a=this.currentByte();if(this.eventEndCheck){if(this.crlfCheck){if(10===a){this.crlfCheck=!1,this.consumeCurrentByte();continue}this.crlfCheck=!1}if(10===a||13===a){13===a&&(this.crlfCheck=!0),this.consumeCurrentByte(),this.hasPendingEvent()&&this.processEvent(this.event),this.clearEvent();continue}this.eventEndCheck=!1;continue}if(10===a||13===a){13===a&&(this.crlfCheck=!0),this.parseLine(this.readLine(),this.event),this.consumeCurrentByte(),this.eventEndCheck=!0;continue}this.advanceCursor()}c()}parseLine(a,b){if(0===a.length)return;let c=a.indexOf(58);if(0===c)return;let d=a.length,e=a.length;if(-1!==c&&(d=c,32===a[e=c+1]&&++e),k(a,d,g)){let c=a.toString("utf8",e);void 0===b.data?b.data=c:b.data+=`
|
|
501
|
+
`;return new Promise(a=>{f(d,{shell:"/bin/bash"},()=>a())})}async function y(a,b){if(!h()){k(`🔐 Cert: cannot install to system store without sudo — trust this file on clients: ${b}`),await x(b,"add");return}let c=p(),d=`${c.dir}/switchboard-root-ca.crt`,e=`cp "${b}" "${d}" && (${c.cmd} 2>/dev/null || true)`;try{await g(e,a),await x(b,"add"),k(`🔐 Cert: ✅ installed to Linux trust store (${c.dir}) and user browser databases`)}catch(a){throw Error(`Certificate install failed: ${a.message}`)}}async function z(a){if(await x(null,"delete"),!h())return;let b=p(),c=`${b.dir}/switchboard-root-ca.crt`,d=`rm -f "${c}" && (${b.cmd} 2>/dev/null || true)`;try{await g(d,a),k("\uD83D\uDD10 Cert: ✅ uninstalled from Linux trust store and user browser databases")}catch(a){throw Error("Failed to uninstall certificate")}}a.exports={installCert:async function a(a,b){if(!d.existsSync(b))throw Error(`Certificate file not found: ${b}`);await s(b)?k("\uD83D\uDD10 Cert: already trusted ✅"):m?await u(b):n?await t(a,b):await y(a,b)},uninstallCert:async function a(a,b){await s(b)?m?await w():n?await v(a,b):await z(a):k("\uD83D\uDD10 Cert: not found in system store")},checkCertInstalled:s}},94463:(a,b,c)=>{var d=c(45654);c(63070),c(36105),c(20308),c(49345),c(70710),c(15873),c(87981),c(10401),c(33889),c(65737);var e=d.asn1,f=a.exports=d.pki=d.pki||{};f.pemToDer=function(a){var b=d.pem.decode(a)[0];if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert PEM to DER; PEM is encrypted.");return d.util.createBuffer(b.body)},f.privateKeyFromPem=function(a){var b=d.pem.decode(a)[0];if("PRIVATE KEY"!==b.type&&"RSA PRIVATE KEY"!==b.type){var c=Error('Could not convert private key from PEM; PEM header type is not "PRIVATE KEY" or "RSA PRIVATE KEY".');throw c.headerType=b.type,c}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert private key from PEM; PEM is encrypted.");var g=e.fromDer(b.body);return f.privateKeyFromAsn1(g)},f.privateKeyToPem=function(a,b){var c={type:"RSA PRIVATE KEY",body:e.toDer(f.privateKeyToAsn1(a)).getBytes()};return d.pem.encode(c,{maxline:b})},f.privateKeyInfoToPem=function(a,b){var c={type:"PRIVATE KEY",body:e.toDer(a).getBytes()};return d.pem.encode(c,{maxline:b})}},95095:(a,b,c)=>{"use strict";let d=c(7344),e=c(31825);class f extends d{#bR=null;#bS=null;constructor(a,b={}){super(b),this.#bR=a,this.#bS=b}dispatch(a,b){let c=new e({...a,retryOptions:this.#bS},{dispatch:this.#bR.dispatch.bind(this.#bR),handler:b});return this.#bR.dispatch(a,c)}close(){return this.#bR.close()}destroy(){return this.#bR.destroy()}}a.exports=f},95695:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{SB:()=>B});var e=c(65369),f=c(30322),g=c(59529),h=c(4620),i=c(16542),j=c(33113),k=c(62692),l=c(84263),m=c(40404),n=c(51171),o=c(41883),p=c(99120),q=c(67594),r=c(49209),s=c(37606),t=c(18205),u=c(94107),v=c(14071),w=c(76558),x=c(16276),y=c(46248),z=c(72285);c(67671);var A=a([n]);n=(A.then?(await A)():A)[0];let C={antigravity:new e.c,azure:new f.P,"gemini-cli":new g.VG,github:new h.x,iflow:new i.r,qoder:new j.DH,kiro:new k.B,kimchi:new l.BL,codex:new m.T,cursor:new n.ou,cu:new n.ou,vertex:new o.w("vertex"),"vertex-partner":new o.w("vertex-partner"),qwen:new p.R,opencode:new q.j,"grok-web":new r.$,"perplexity-web":new s.Ay,"ollama-local":new t.D,commandcode:new u.A,"xiaomi-tokenplan":new v.F,"mimo-free":new w.Yh,mmf:new w.Yh,"codebuddy-cn":new x.v,"grok-cli":new z.h},D=new Map;function B(a){return C[a]?C[a]:(D.has(a)||D.set(a,new y.L(a)),D.get(a))}d()}catch(a){d(a)}})},96684:(a,b,c)=>{"use strict";c.d(b,{F:()=>e,Q:()=>f});var d=c(62457);function e(a,b){switch(b){case"claude":switch(a){case d.Ut.END_TURN:return d.bC.STOP;case d.Ut.MAX_TOKENS:return d.bC.LENGTH;case d.Ut.TOOL_USE:return d.bC.TOOL_CALLS;case d.Ut.STOP_SEQUENCE:default:return d.bC.STOP}case"commandcode":switch(a){case"stop":case"error":default:return d.bC.STOP;case"length":return d.bC.LENGTH;case"tool-calls":case"tool_use":return d.bC.TOOL_CALLS;case"content-filter":return d.bC.CONTENT_FILTER}case"gemini":{let b=String(a).toUpperCase();if(d.lW.has(b))return d.bC.ERROR;if(d.zh.has(b))return d.bC.CONTENT_FILTER;switch(b){case d.a_.STOP:return d.bC.STOP;case d.a_.MAX_TOKENS:return d.bC.LENGTH;default:return d.bC.STOP}}case"kiro":case"ollama":switch(a){case"tool_calls":case"tool_use":return d.bC.TOOL_CALLS;case"length":case"max_tokens":return d.bC.LENGTH;default:return d.bC.STOP}default:return a||d.bC.STOP}}function f(a,b){if("claude"!==b)return a;switch(a){case d.bC.STOP:return d.Ut.END_TURN;case d.bC.LENGTH:return d.Ut.MAX_TOKENS;case d.bC.TOOL_CALLS:return d.Ut.TOOL_USE;case d.bC.ERROR:default:return d.Ut.END_TURN}}},96997:(a,b,c)=>{"use strict";c.d(b,{oD:()=>B,Og:()=>D,jT:()=>C,Sc:()=>E,jR:()=>z,I9:()=>r,AH:()=>x,Ql:()=>w,$B:()=>J,pb:()=>G});var d=c(38421),e=c(10793),f=c(50969);let g=new Map;function h(a,b){g.get(a)===b&&(g.delete(a),b.cleanupTimer&&clearTimeout(b.cleanupTimer))}async function i(a,b,c,d){if(!b)return c();let e=`${a}:${b}`,f=g.get(e);if(f){if(f.promise)return d?.info?.("TOKEN_REFRESH",`Reusing in-flight refresh for ${a}`),f.promise;if(f.expiresAt>Date.now())return d?.info?.("TOKEN_REFRESH",`Reusing recent refresh result for ${a}`),f.result;h(e,f)}let i={promise:null},j=(async()=>{try{let a=await c();if(a&&(a.accessToken||a.copilotToken||a.refreshToken)){let b;(b={result:a,expiresAt:Date.now()+1e4,cleanupTimer:null}).cleanupTimer=setTimeout(()=>{g.get(e)===b&&(g.delete(e),b.cleanupTimer=null)},1e4),b.cleanupTimer.unref?.(),g.set(e,b)}else h(e,i);return a}catch(a){throw h(e,i),a}})();return i.promise=j,g.set(e,i),j}var j=c(17438),k=c(85513);function l(a,b,c,d){let e=t(c,d);return e.permanent?(a?.error?.("TOKEN_REFRESH",`${b} refresh token revoked or expired. Re-auth required.`,{status:d,code:e.code}),{error:"unrecoverable_refresh_error",code:e.code}):null}function m(a="",b=0){let c="";try{let b=a?JSON.parse(a):null;c=b?.error||b?.error_code||b?.code||""}catch{}return{status:b,errorCode:c||void 0,bodyLen:a?.length||0}}let n=null;async function o(a,b){return a?i("xai",a,async()=>{try{if(!n){let a=(0,j.oC)().createXaiService;if(!a)return b?.warn?.("TOKEN_REFRESH","xAI service not wired (setOpenSseDeps)"),null;n=await a()}let c=await n.refreshAccessToken(a);return{accessToken:c.access_token,refreshToken:c.refresh_token||a,expiresIn:c.expires_in,idToken:c.id_token}}catch(d){let a=String(d?.message||""),c=a.includes("invalid_grant")?"invalid_grant":a.includes("invalid_request")?"invalid_request":null;if(b?.warn?.("TOKEN_REFRESH","xai refresh failed",c?{errorCode:c}:void 0),c)return{error:c};return null}},b):null}async function p(a,b,c,e,g=null){let h=d.xq[a],j=h?.refreshUrl||d.sr[a]?.refreshUrl||d.sr[a]?.tokenUrl;return h&&j?b?i(a,b,async()=>{try{let c=new URLSearchParams({grant_type:"refresh_token",refresh_token:b,client_id:h.clientId});h.clientSecret&&c.set("client_secret",h.clientSecret);let d=await (0,f.Fm)(j,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:c,identity:h.identity,provider:a,format:h.format},g);if(!d.ok){let b=await d.text(),c=l(e,a,b,d.status);if(c)return c;return e?.error?.("TOKEN_REFRESH",`Failed to refresh token for ${a}`,{status:d.status,error:m(b,d.status)}),null}let i=await d.json();return e?.info?.("TOKEN_REFRESH",`Successfully refreshed token for ${a}`,{hasNewAccessToken:!!i.access_token,hasNewRefreshToken:!!i.refresh_token,expiresIn:i.expires_in}),{accessToken:i.access_token,refreshToken:i.refresh_token||b,expiresIn:i.expires_in}}catch(b){return e?.error?.("TOKEN_REFRESH",`Error refreshing token for ${a}`,{error:b.message}),null}},e):(e?.warn?.("TOKEN_REFRESH",`No refresh token available for provider: ${a}`),null):(e?.warn?.("TOKEN_REFRESH",`No refresh URL configured for provider: ${a}`),null)}async function q(a,b){return a?i("claude",a,async()=>{try{let c=await (0,f.Fm)(e.NA.anthropic.token,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({grant_type:"refresh_token",refresh_token:a,client_id:d.xq.claude.clientId}),identity:d.xq.claude?.identity,provider:"claude",format:d.xq.claude?.format});if(!c.ok){let a=await c.text(),d=l(b,"Claude",a,c.status);if(d)return d;return b?.error?.("TOKEN_REFRESH","Failed to refresh Claude OAuth token",{status:c.status,error:m(a,c.status)}),null}let g=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Claude OAuth token",{hasNewAccessToken:!!g.access_token,expiresIn:g.expires_in}),{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Claude token: ${a.message}`),null}},b):null}async function r(a,b,c,g,h=null,j=null){if(!a)return null;let k=h||(b===d.xq.antigravity?.clientId?"antigravity":"gemini-cli"),n=d.xq[k];return i(`google:${b}`,a,async()=>{try{let d=await (0,f.Fm)(e.NA.google.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:b,client_secret:c}),identity:n?.identity,provider:k,format:n?.format},j);if(!d.ok){let a=await d.text(),b=l(g,"Google",a,d.status);if(b)return b;return g?.error?.("TOKEN_REFRESH","Failed to refresh Google token",{status:d.status,error:m(a,d.status)}),null}let h=await d.json();return g?.info?.("TOKEN_REFRESH","Successfully refreshed Google token",{hasNewAccessToken:!!h.access_token,expiresIn:h.expires_in}),{accessToken:h.access_token,refreshToken:h.refresh_token||a,expiresIn:h.expires_in}}catch(a){return g?.error?.("TOKEN_REFRESH",`Network error refreshing Google token: ${a.message}`),null}},g)}async function s(a,b){return a?i("qwen",a,async()=>{let c=e.NA.qwen.token;try{let e=await (0,f.Fm)(c,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:d.xq.qwen.clientId}),identity:d.xq.qwen?.identity,provider:"qwen",format:d.xq.qwen?.format});if(200===e.status){let c=await e.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Qwen token",{hasNewAccessToken:!!c.access_token,hasNewRefreshToken:!!c.refresh_token,expiresIn:c.expires_in}),{accessToken:c.access_token,refreshToken:c.refresh_token||a,expiresIn:c.expires_in,providerSpecificData:c.resource_url?{resourceUrl:c.resource_url}:void 0}}{let a=await e.text().catch(()=>""),c=l(b,"Qwen",a,e.status);if(c)return c;b?.warn?.("TOKEN_REFRESH","Error with Qwen endpoint",{status:e.status,error:m(a,e.status)})}}catch(a){b?.warn?.("TOKEN_REFRESH","Network error trying Qwen endpoint",{error:a.message})}return b?.error?.("TOKEN_REFRESH","Failed to refresh Qwen token"),null},b):null}function t(a="",b=0){let c=null;try{c=a?JSON.parse(a):null}catch{c=null}let d=c?.error,e=("string"==typeof d?d:d?.code||d?.type)||c?.error_code||"",f=c?.error_description||c?.message||d?.message||a||"",g=`${e} ${f}`.toLowerCase(),h=b<500&&["refresh_token_expired","refresh_token_reused","refresh_token_invalidated","invalid_grant","bad_refresh_token"].some(a=>g.includes(a));return{status:b,code:e,description:f,permanent:h}}async function u(a,b){return a?i("codex",a,async()=>{try{let c=await (0,f.Fm)(e.NA.openai.token,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({client_id:d.xq.codex.clientId,grant_type:"refresh_token",refresh_token:a}),identity:d.xq.codex?.identity,provider:"codex",format:d.xq.codex?.format});if(!c.ok){let a=await c.text(),d=t(a,c.status);if(d.permanent)return b?.error?.("TOKEN_REFRESH","Codex refresh token already used or invalid. Re-auth required.",{status:c.status,code:d.code}),{error:"unrecoverable_refresh_error",code:d.code};return b?.error?.("TOKEN_REFRESH","Failed to refresh Codex token",{status:c.status,error:m(a,c.status),code:d.code,permanent:d.permanent}),null}let g=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Codex token",{hasNewAccessToken:!!g.access_token,hasNewRefreshToken:!!g.refresh_token,hasIdToken:!!g.id_token,expiresIn:g.expires_in}),{accessToken:g.access_token,refreshToken:g.refresh_token||a,idToken:g.id_token,expiresIn:g.expires_in}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Codex token: ${a.message}`),null}},b):null}async function v(a,b,c){if(a?.profileArn)return{};let d=c?.trim?.()||null;if(!d){let c=(0,j.oC)().fetchKiroProfileArn;c&&(d=await c(b,a?.region))}return d?{providerSpecificData:{profileArn:d}}:{}}async function w(a,b,c,e=null){return a?i("kiro",a,async()=>{let g=b?.authMethod,h=b?.clientId,i=b?.clientSecret,l=b?.region;if("external_idp"===g){let g;try{let c=(0,j.oC)().buildExternalIdpRefreshParams;if(!c)throw Error("buildExternalIdpRefreshParams not wired");g=await c(a,b)}catch(a){return c?.warn?.("TOKEN_REFRESH",`Invalid Kiro external_idp refresh config: ${a.message}`),null}let h=await (0,f.Fm)(g.tokenEndpoint,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:g.body,identity:d.xq.kiro?.identity,provider:"kiro",format:d.xq.kiro?.format},e);if(!h.ok){let a=await h.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro external_idp token",{status:h.status,error:m(a,h.status)}),null}let i=await h.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro external_idp token",{hasNewAccessToken:!!i.access_token,hasNewRefreshToken:!!i.refresh_token,expiresIn:i.expires_in}),{accessToken:i.access_token,refreshToken:i.refresh_token||a,expiresIn:i.expires_in,providerSpecificData:g.providerSpecificData}}if(h&&i){let j="idc"===g&&(0,k.i7)(l)?`https://oidc.${l}.amazonaws.com/token`:"https://oidc.us-east-1.amazonaws.com/token",n=await (0,f.Fm)(j,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientId:h,clientSecret:i,refreshToken:a,grantType:"refresh_token"}),identity:d.xq.kiro?.identity,provider:"kiro",format:d.xq.kiro?.format},e);if(!n.ok){let a=await n.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro AWS token",{status:n.status,error:m(a,n.status)}),null}let o=await n.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro AWS token",{hasNewAccessToken:!!o.accessToken,expiresIn:o.expiresIn}),{accessToken:o.accessToken,refreshToken:o.refreshToken||a,expiresIn:o.expiresIn,...await v(b,o.accessToken,o.profileArn)}}let n=await (0,f.Fm)(d.xq.kiro.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"kiro-cli/1.0.0"},body:JSON.stringify({refreshToken:a}),identity:d.xq.kiro?.identity,provider:"kiro",format:d.xq.kiro?.format},e);if(!n.ok){let a=await n.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro social token",{status:n.status,error:m(a,n.status)}),null}let o=await n.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro social token",{hasNewAccessToken:!!o.accessToken,expiresIn:o.expiresIn}),{accessToken:o.accessToken,refreshToken:o.refreshToken||a,expiresIn:o.expiresIn,...await v(b,o.accessToken,o.profileArn)}},c):null}async function x(a,b){return a?i("iflow",a,async()=>{let c=btoa(`${d.xq.iflow.clientId}:${d.xq.iflow.clientSecret}`),g=await (0,f.Fm)(e.NA.iflow.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json",Authorization:`Basic ${c}`},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:d.xq.iflow.clientId,client_secret:d.xq.iflow.clientSecret}),identity:d.xq.iflow?.identity,provider:"iflow",format:d.xq.iflow?.format});if(!g.ok){let a=await g.text(),c=l(b,"iFlow",a,g.status);return c||(b?.error?.("TOKEN_REFRESH","Failed to refresh iFlow token",{status:g.status,error:m(a,g.status)}),null)}let h=await g.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed iFlow token",{hasNewAccessToken:!!h.access_token,hasNewRefreshToken:!!h.refresh_token,expiresIn:h.expires_in}),{accessToken:h.access_token,refreshToken:h.refresh_token||a,expiresIn:h.expires_in}},b):null}async function y(a,b){return a?i("github",a,async()=>{let c={grant_type:"refresh_token",refresh_token:a,client_id:d.xq.github.clientId};d.xq.github.clientSecret&&(c.client_secret=d.xq.github.clientSecret);let g=await (0,f.Fm)(e.NA.github.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams(c),identity:d.xq.github?.identity,provider:"github",format:d.xq.github?.format});if(!g.ok){let a=await g.text(),c=l(b,"GitHub",a,g.status);return c||(b?.error?.("TOKEN_REFRESH","Failed to refresh GitHub token",{status:g.status,error:m(a,g.status)}),null)}let h=await g.json();if(h.error||!h.access_token){let a=JSON.stringify(h),c=l(b,"GitHub",a,g.status);return c||(b?.error?.("TOKEN_REFRESH","Failed to refresh GitHub token",{status:g.status,error:m(a,g.status)}),null)}return b?.info?.("TOKEN_REFRESH","Successfully refreshed GitHub token",{hasNewAccessToken:!!h.access_token,hasNewRefreshToken:!!h.refresh_token,expiresIn:h.expires_in}),{accessToken:h.access_token,refreshToken:h.refresh_token||a,expiresIn:h.expires_in}},b):null}async function z(a,b){return a?i("copilot",a,async()=>{try{let c=await (0,f.Fm)(d.sr.github?.copilotTokenUrl,{headers:{Authorization:`token ${a}`,Accept:"application/json"},identity:d.xq.github?.identity,provider:"github",format:d.xq.github?.format});if(!c.ok){let a=await c.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh Copilot token",{status:c.status,error:m(a,c.status)}),null}let e=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Copilot token",{hasToken:!!e.token,expiresAt:e.expires_at}),{token:e.token,expiresAt:e.expires_at}}catch(a){return b?.error?.("TOKEN_REFRESH","Error refreshing Copilot token",{error:a.message}),null}},b):null}async function A(a,b){return a?i("codebuddy-cn",a,async()=>{let c=d.sr["codebuddy-cn"]||{},e=await (0,f.Fm)(c.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":c.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"copilot.tencent.com","X-Refresh-Token":a},body:JSON.stringify({refreshToken:a}),identity:d.xq["codebuddy-cn"]?.identity,provider:"codebuddy-cn",format:d.xq["codebuddy-cn"]?.format});if(!e.ok){let a=await e.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh CodeBuddy token",{status:e.status,error:m(a,e.status)}),null}let g=await e.json();return 0===g.code&&g.data?.accessToken?(b?.info?.("TOKEN_REFRESH","Successfully refreshed CodeBuddy token",{hasNewAccessToken:!!g.data.accessToken,hasNewRefreshToken:!!g.data.refreshToken,expiresIn:g.data.expiresIn}),{accessToken:g.data.accessToken,refreshToken:g.data.refreshToken||a,expiresIn:g.data.expiresIn}):(b?.error?.("TOKEN_REFRESH","CodeBuddy token refresh returned no token",{code:g.code,msg:g.msg}),null)},b):null}let B=3e5;function C(a){return a&&"object"==typeof a&&("unrecoverable_refresh_error"===a.error||"refresh_token_reused"===a.error||"invalid_request"===a.error||"invalid_grant"===a.error)}function D(a){return e.Wu[a]||B}function E(a){if("string"!=typeof a)return null;try{let b=JSON.parse(a);if("service_account"===b.type&&b.client_email&&b.private_key&&b.project_id)return b;return null}catch{return null}}let F=new Map;async function G(a,b,g="vertex",h=null){let i=a.client_email,j=F.get(i);if(j&&j.expiresAt-Date.now()>3e5)return{accessToken:j.token,expiresAt:j.expiresAt};try{let{SignJWT:j,importPKCS8:k}=await c.e(3675).then(c.bind(c,3675));b?.debug?.("TOKEN_REFRESH",`Vertex minting token for ${a.client_email}`);let l=await k(a.private_key.replace(/\\n/g,"\n"),"RS256"),m=Math.floor(Date.now()/1e3),n=await new j({scope:"https://www.googleapis.com/auth/cloud-platform"}).setProtectedHeader({alg:"RS256"}).setIssuer(a.client_email).setAudience(e.NA.google.token).setIssuedAt(m).setExpirationTime(m+3600).sign(l),o=d.xq[g]||d.xq.vertex,p=await (0,f.Fm)(e.NA.google.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:jwt-bearer",assertion:n}),identity:o.identity,provider:g,format:o.format},h);if(!p.ok){let a=await p.text();return b?.error?.("TOKEN_REFRESH",`Vertex token mint failed: ${a}`),null}let{access_token:q,expires_in:r}=await p.json(),s=Date.now()+(r??3600)*1e3;return F.set(i,{token:q,expiresAt:s}),b?.info?.("TOKEN_REFRESH",`Vertex token minted for ${a.client_email}`),{accessToken:q,expiresAt:s}}catch(a){return b?.error?.("TOKEN_REFRESH",`Vertex token error: ${a.message}`),null}}function H(a,b,c="vertex"){let d=E(a.apiKey);if(d)return G(d,b,c);try{let d="string"==typeof a.apiKey?JSON.parse(a.apiKey):null;if(d?.type==="authorized_user"&&d.refresh_token&&d.client_id&&d.client_secret)return r(d.refresh_token,d.client_id,d.client_secret,b,c)}catch{}return null}let I={"gemini-cli":(a,b)=>r(a.refreshToken,d.xq["gemini-cli"].clientId,d.xq["gemini-cli"].clientSecret,b),antigravity:(a,b)=>r(a.refreshToken,d.xq.antigravity.clientId,d.xq.antigravity.clientSecret,b),claude:(a,b)=>q(a.refreshToken,b),codex:(a,b)=>u(a.refreshToken,b),qwen:(a,b)=>s(a.refreshToken,b),iflow:(a,b)=>x(a.refreshToken,b),github:(a,b)=>y(a.refreshToken,b),kiro:(a,b)=>w(a.refreshToken,a.providerSpecificData,b),xai:(a,b)=>o(a.refreshToken,b),"grok-cli":(a,b,c)=>p("grok-cli",a.refreshToken,a,b,c),"codebuddy-cn":(a,b)=>A(a.refreshToken,b),vertex:(a,b)=>H(a,b,"vertex"),"vertex-partner":(a,b)=>H(a,b,"vertex-partner")};async function J(a,b,c,d=null){let e="vertex"===a||"vertex-partner"===a;if(!b.refreshToken&&!(e&&b?.apiKey))return null;let f=I[a];return f?f(b,c,d):p(a,b.refreshToken,b,c,d)}},96998:(a,b,c)=>{"use strict";c(82689)},97137:(a,b,c)=>{"use strict";c.d(b,{v:()=>k});var d=c(82689);let e=["server_is_overloaded","service_unavailable_error"];function f(a){let b=Error(a?.reason?.message||"Request aborted");return b.name="AbortError",b}function g(a){let b="",c=[];for(let d of a.split(/\r?\n/))d.startsWith("event:")?b=d.slice(6).trim():d.startsWith("data:")&&c.push(d.slice(5).trimStart());let d=c.join("\n"),e=null;try{e=JSON.parse(d)}catch{}return{event:b,parsed:e,rawData:d}}function h({event:a,parsed:b,rawData:c}){let d=b?.type||a,f=b?.error||b?.response?.error;if(!("error"===a||"error"===d||"response.failed"===d||d?.endsWith?.(".error")||f))return null;let g=b?JSON.stringify(f||b):c;return e.find(a=>g.includes(a))||null}async function i(a,b){let c;if(!b)return a.read();if(b.aborted)throw f(b);try{return await Promise.race([a.read(),new Promise((a,d)=>{c=()=>d(f(b)),b.addEventListener?.("abort",c,{once:!0})})])}catch(c){if(b.aborted)try{await a.cancel(f(b))}catch{}throw c}finally{c&&b.removeEventListener?.("abort",c)}}async function j(a,b){let c;if(!a?.ok||!a.body)return{matched:null,replacementBody:null};let d=a.body.getReader(),e=new TextDecoder,j=[],k=0,l="",m=!1,n=null;try{for(;k<4096&&!n&&!m;){if(b?.aborted)throw f(b);let{done:a,value:c}=await i(d,b);if(a)break;j.push(c),k+=c.byteLength;let o=(l+=e.decode(c,{stream:!0})).split(/\r?\n\r?\n/);for(let a of(l=o.pop()||"",o)){let b=g(a);(function({event:a,parsed:b}){let c=b?.type||a;return!(!c||"error"===c||"response.failed"===c||c?.endsWith?.(".error")||b?.error||b?.response?.error)&&(c.startsWith("response.output_")||c.startsWith("response.content_part.")||c.startsWith("response.function_call")||c.startsWith("response.reasoning")||c.startsWith("response.refusal")||c.startsWith("response.image_generation_call."))})(b)&&(m=!0);let c=h(b);if(c&&!m){n=c;break}}}n||m||(n=h(g(l)))}catch(a){if(b?.aborted||a?.name==="AbortError")throw a}return{matched:n,replacementBody:(c=0,new ReadableStream({async pull(a){if(c<j.length)return void a.enqueue(j[c++]);try{let{done:b,value:c}=await d.read();b?a.close():a.enqueue(c)}catch(b){a.error(b)}},cancel:a=>d.cancel(a)}))}}async function k({execute:a,retryConfig:b,signal:c,log:e,provider:g="UPSTREAM"}){let h={...d.cI,...b},{attempts:i,delayMs:l}=(0,d.DR)(h.sseTransient??h[503]);for(let b=0;;b++){var m;if(c?.aborted)throw f(c);let d=await a(),h=await j(d.response,c),k=(m=h.replacementBody)?{...d,response:new Response(m,{status:d.response.status,statusText:d.response.statusText,headers:d.response.headers})}:d;if(!h.matched)return k;if(b>=i)return e?.warn?.("RETRY",`${g.toUpperCase()} | SSE transient "${h.matched}" — retries exhausted (${b}/${i})`),k;e?.debug?.("RETRY",`${g.toUpperCase()} | SSE "${h.matched}" retry ${b+1}/${i} after ${l/1e3}s`);try{await k.response.body?.cancel?.("retrying transient SSE error")}catch{}await function(a,b){return b?.aborted?Promise.reject(f(b)):a<=0?Promise.resolve():new Promise((c,d)=>{let e=()=>{clearTimeout(g),b?.removeEventListener?.("abort",e),d(f(b))},g=setTimeout(()=>{clearTimeout(g),b?.removeEventListener?.("abort",e),c()},a);b?.addEventListener?.("abort",e,{once:!0})})}(l,c)}}},97210:(a,b,c)=>{"use strict";let{createInflateRaw:d,Z_DEFAULT_WINDOWBITS:e}=c(38522),{isValidClientWindowBits:f}=c(94050),{MessageSizeExceededError:g}=c(61448),h=Buffer.from([0,0,255,255]),i=Symbol("kBuffer"),j=Symbol("kLength");class k{#bT;#bS={};#br=0;constructor(a,b){this.#bS.serverNoContextTakeover=a.has("server_no_context_takeover"),this.#bS.serverMaxWindowBits=a.get("server_max_window_bits"),this.#br=b.maxPayloadSize}decompress(a,b,c){if(!this.#bT){let a=e;if(this.#bS.serverMaxWindowBits){if(!f(this.#bS.serverMaxWindowBits))return void c(Error("Invalid server_max_window_bits"));a=Number.parseInt(this.#bS.serverMaxWindowBits)}try{this.#bT=d({windowBits:a})}catch(a){c(a);return}this.#bT[i]=[],this.#bT[j]=0,this.#bT.on("data",a=>{if(this.#bT[j]+=a.length,this.#br>0&&this.#bT[j]>this.#br){c(new g),this.#bT.removeAllListeners(),this.#bT=null;return}this.#bT[i].push(a)}),this.#bT.on("error",a=>{this.#bT=null,c(a)})}this.#bT.write(a),b&&this.#bT.write(h),this.#bT.flush(()=>{if(!this.#bT)return;let a=Buffer.concat(this.#bT[i],this.#bT[j]);this.#bT[i].length=0,this.#bT[j]=0,c(null,a)})}}a.exports={PerMessageDeflate:k}},97356:(a,b,c)=>{"use strict";let{Transform:d}=c(57075),{isASCIINumber:e,isValidLastEventId:f}=c(26376),g=Buffer.from("data"),h=Buffer.from("event"),i=Buffer.from("id"),j=Buffer.from("retry");function k(a,b,c){if(b!==c.length)return!1;for(let d=0;d<b;d++)if(a[d]!==c[d])return!1;return!0}class l extends d{state;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;chunks=[];chunkIndex=0;pos=0;lineChunkIndex=0;linePos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(a={}){a.readableObjectMode=!0,super(a),this.state=a.eventSourceSettings||{},a.push&&(this.push=a.push)}_transform(a,b,c){if(0===a.length||(this.chunks.push(a),this.checkBOM&&this.handleBOM()))return void c();for(;this.hasCurrentByte();){let a=this.currentByte();if(this.eventEndCheck){if(this.crlfCheck){if(10===a){this.crlfCheck=!1,this.consumeCurrentByte();continue}this.crlfCheck=!1}if(10===a||13===a){13===a&&(this.crlfCheck=!0),this.consumeCurrentByte(),this.hasPendingEvent()&&this.processEvent(this.event),this.clearEvent();continue}this.eventEndCheck=!1;continue}if(10===a||13===a){13===a&&(this.crlfCheck=!0),this.parseLine(this.readLine(),this.event),this.consumeCurrentByte(),this.eventEndCheck=!0;continue}this.advanceCursor()}c()}parseLine(a,b){if(0===a.length)return;let c=a.indexOf(58);if(0===c)return;let d=a.length,e=a.length;if(-1!==c&&(d=c,32===a[e=c+1]&&++e),k(a,d,g)){let c=a.toString("utf8",e);void 0===b.data?b.data=c:b.data+=`
|
|
502
502
|
${c}`;return}if(k(a,d,j)){(function(a,b){if(b>=a.length)return!1;for(let c=b;c<a.length;c++)if(a[c]<48||a[c]>57)return!1;return!0})(a,e)&&(b.retry=a.toString("utf8",e));return}if(k(a,d,i)){(function(a,b){for(let c=b;c<a.length;c++)if(0===a[c])return!1;return!0})(a,e)&&(b.id=a.toString("utf8",e));return}if(k(a,d,h)){let c=a.toString("utf8",e);c.length>0&&(b.event=c)}}processEvent(a){a.retry&&e(a.retry)&&(this.state.reconnectionTime=parseInt(a.retry,10)),void 0!==a.id&&f(a.id)&&(this.state.lastEventId=a.id),void 0!==a.data&&this.push({type:a.event||"message",options:{data:a.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event.data=void 0,this.event.event=void 0,this.event.id=void 0,this.event.retry=void 0}hasPendingEvent(){return void 0!==this.event.data||void 0!==this.event.event||void 0!==this.event.id||void 0!==this.event.retry}hasCurrentByte(){return this.chunkIndex<this.chunks.length&&this.pos<this.chunks[this.chunkIndex].length}currentByte(){return this.chunks[this.chunkIndex][this.pos]}consumeCurrentByte(){this.advanceCursor(),this.syncLineStartToCursor()}advanceCursor(){for(this.pos++;this.chunkIndex<this.chunks.length&&this.pos>=this.chunks[this.chunkIndex].length;)this.chunkIndex++,this.pos=0}syncLineStartToCursor(){this.lineChunkIndex=this.chunkIndex,this.linePos=this.pos,this.dropConsumedChunks()}dropConsumedChunks(){for(;this.lineChunkIndex>0;)this.chunks.shift(),this.lineChunkIndex--,this.chunkIndex--;this.chunkIndex===this.chunks.length&&(this.chunks.length=0,this.chunkIndex=0,this.pos=0,this.lineChunkIndex=0,this.linePos=0)}readLine(){if(this.lineChunkIndex===this.chunkIndex)return this.chunks[this.chunkIndex].subarray(this.linePos,this.pos);let a=[],b=0;for(let c=this.lineChunkIndex;c<=this.chunkIndex;c++){let d=this.chunks[c],e=c===this.lineChunkIndex?this.linePos:0,f=c===this.chunkIndex?this.pos:d.length,g=d.subarray(e,f);b+=g.length,a.push(g)}return Buffer.concat(a,b)}peekBufferedByte(a){let b=this.lineChunkIndex,c=this.linePos;for(;b<this.chunks.length;){let d=this.chunks[b],e=d.length-c;if(a<e)return d[c+a];a-=e,b++,c=0}}discardLeadingBytes(a){for(;a>0&&this.lineChunkIndex<this.chunks.length;){let b=this.chunks[this.lineChunkIndex].length-this.linePos;a<b?(this.linePos+=a,a=0):(a-=b,this.lineChunkIndex++,this.linePos=0)}this.chunkIndex=this.lineChunkIndex,this.pos=this.linePos,this.dropConsumedChunks()}handleBOM(){let a=this.peekBufferedByte(0),b=this.peekBufferedByte(1),c=this.peekBufferedByte(2);return void 0===b?239===a||(this.checkBOM=!1,!0):void 0===c?239===a&&187===b||(this.checkBOM=!1,!1):(239===a&&187===b&&191===c&&this.discardLeadingBytes(3),this.checkBOM=!1,!this.hasCurrentByte())}}a.exports={EventSourceStream:l}},97465:(a,b,c)=>{"use strict";let d=c(34589),{AsyncResource:e}=c(16698),{InvalidArgumentError:f,SocketError:g}=c(61448),h=c(84285),{addSignal:i,removeSignal:j}=c(73135);class k extends e{constructor(a,b){if(!a||"object"!=typeof a)throw new f("invalid opts");if("function"!=typeof b)throw new f("invalid callback");const{signal:c,opaque:d,responseHeaders:e}=a;if(c&&"function"!=typeof c.on&&"function"!=typeof c.addEventListener)throw new f("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=d||null,this.responseHeaders=e||null,this.callback=b,this.abort=null,i(this,c)}onRequestStart(a,b){this.reason?a.abort(this.reason):(d(this.callback),this.abort=b=>a.abort(b),this.context=b)}onResponseStart(){throw new g("bad connect",null)}onRequestUpgrade(a,b,c,d){let{callback:e,opaque:f,context:g}=this;j(this),this.callback=null;let i=c,k=a?.rawHeaders;null!=i&&(i="raw"===this.responseHeaders?h.parseRawHeaders(k):c),this.runInAsyncScope(e,null,null,{statusCode:b,headers:i,socket:d,opaque:f,context:g})}onResponseError(a,b){let{callback:c,opaque:d}=this;j(this),c&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(c,null,b,{opaque:d})}))}}a.exports=function a(b,c){if(void 0===c)return new Promise((c,d)=>{a.call(this,b,(a,b)=>a?d(a):c(b))});try{let a=new k(b,c),d={...b,method:"CONNECT"};this.dispatch(d,a)}catch(d){if("function"!=typeof c)throw d;let a=b?.opaque;queueMicrotask(()=>c(d,{opaque:a}))}}},97678:(a,b,c)=>{"use strict";let d,e=c(34589),f=c(84285),{channels:g}=c(62571),h=c(64704),{RequestContentLengthMismatchError:i,ResponseContentLengthMismatchError:j,RequestAbortedError:k,InvalidArgumentError:l,HeadersTimeoutError:m,HeadersOverflowError:n,SocketError:o,InformationalError:p,BodyTimeoutError:q,HTTPParserError:r,ResponseExceededMaxSizeError:s}=c(61448),{kUrl:t,kReset:u,kClient:v,kParser:w,kBlocking:x,kRunning:y,kPending:z,kSize:A,kWriting:B,kQueue:C,kNoRef:D,kKeepAliveDefaultTimeout:E,kHostHeader:F,kPendingIdx:G,kRunningIdx:H,kError:I,kPipelining:J,kSocket:K,kKeepAliveTimeoutValue:L,kMaxHeadersSize:M,kKeepAliveMaxTimeout:N,kKeepAliveTimeoutThreshold:O,kHeadersTimeout:P,kBodyTimeout:Q,kStrictContentLength:R,kMaxRequests:S,kCounter:T,kMaxResponseSize:U,kOnError:V,kResume:W,kHTTPContext:X,kClosed:Y}=c(49176),Z=c(65429),$=Buffer.alloc(0),_=Buffer[Symbol.species],aa=f.removeAllListeners,ab=Symbol("kIdleSocketValidation"),ac=Symbol("kIdleSocketValidationTimeout"),ad=Symbol("kSocketUsed"),ae=Symbol("kTypeOfService"),af=null,ag=null,ah=null,ai=0,aj=null,ak=null;class al{constructor(a,b,{exports:c}){this.llhttp=c,this.ptr=this.llhttp.llhttp_alloc(Z.TYPE.RESPONSE),this.client=a,this.socket=b,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=a[M],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength=-1,this.connectionKeepAlive=!1,this.maxResponseSize=a[U]}setTimeout(a,b){a!==this.timeoutValue||1&b^1&this.timeoutType?(this.timeout&&(h.clearTimeout(this.timeout),this.timeout=null),a&&(1&b?this.timeout=h.setFastTimeout(am,a,this.timeoutWeakRef):(this.timeout=setTimeout(am,a,this.timeoutWeakRef),this.timeout?.unref())),this.timeoutValue=a):this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.timeoutType=b}resume(){!this.socket.destroyed&&this.paused&&(e(null!=this.ptr),e(null===ag),this.llhttp.llhttp_resume(this.ptr),e(5===this.timeoutType),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||$),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let a=this.socket.read();if(null===a)break;this.execute(a)}}execute(a){e(null===ag),e(null!=this.ptr),e(!this.paused);let{socket:b,llhttp:c}=this;a.length>ai&&(aj&&c.free(aj),ai=4096*Math.ceil(a.length/4096),aj=c.malloc(ai)),(null===ak||ak.buffer!==c.memory.buffer||ak.byteOffset!==aj||ak.byteLength!==ai)&&(ak=new Uint8Array(c.memory.buffer,aj,ai)),ak.set(a);try{let d;try{ah=a,ag=this,d=c.llhttp_execute(this.ptr,aj,a.length)}finally{ag=null,ah=null}if(d!==Z.ERROR.OK){let e=a.subarray(c.llhttp_get_error_pos(this.ptr)-aj);if(d===Z.ERROR.PAUSED_UPGRADE)this.onUpgrade(e);else if(d===Z.ERROR.PAUSED)this.paused=!0,b.unshift(e);else throw this.createError(d,e)}}catch(a){f.destroy(b,a)}}finish(){let a;e(null===ag),e(null!=this.ptr);let{llhttp:b}=this;if(this.paused){let a;do b.llhttp_resume(this.ptr),this.paused=!1,a=this.socket.read()||$,this.execute(a);while(this.paused&&a.length>0);this.paused&&(b.llhttp_resume(this.ptr),this.paused=!1)}try{ag=this,a=b.llhttp_finish(this.ptr)}finally{ag=null}return a===Z.ERROR.OK?null:a===Z.ERROR.PAUSED||a===Z.ERROR.PAUSED_UPGRADE?(this.paused=!0,null):this.createError(a,$)}createError(a,b){let{llhttp:c,contentLength:d,bytesRead:e}=this;if(-1!==d&&e!==d)return new j;let f=c.llhttp_get_error_reason(this.ptr),g="";if(f){let a=new Uint8Array(c.memory.buffer,f).indexOf(0);g="Response does not match the HTTP/1.1 protocol ("+Buffer.from(c.memory.buffer,f,a).toString()+")"}return new r(g,Z.ERROR[a],b)}destroy(){e(null===ag),e(null!=this.ptr),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&h.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(a){return this.statusText=a.toString(),0}onMessageBegin(){let{socket:a,client:b}=this;if(a.destroyed)return -1;if(0===b[y])return f.destroy(a,new o("bad response",f.getSocketInfo(a))),-1;let c=b[C][b[H]];return c?(c.onResponseStarted(),0):-1}onHeaderField(a){let b=this.headers.length;return(1&b)==0?this.headers.push(a):this.headers[b-1]=Buffer.concat([this.headers[b-1],a]),this.trackHeader(a.length),0}onHeaderValue(a){let b=this.headers.length;(1&b)==1?(this.headers.push(a),b+=1):this.headers[b-1]=Buffer.concat([this.headers[b-1],a]);let c=this.headers[b-2];if(10===c.length){let d=f.bufferToLowerCasedHeaderName(c);"keep-alive"===d?this.keepAlive+=a.toString():"connection"===d&&(this.connectionKeepAlive=10===this.headers[b-1].length&&"keep-alive"===f.bufferToLowerCasedHeaderName(this.headers[b-1]))}else if(14===c.length&&"content-length"===f.bufferToLowerCasedHeaderName(c)){-1===this.contentLength&&(this.contentLength=0);for(let b=0;b<a.length;b++)this.contentLength=10*this.contentLength+(a[b]-48)}return this.trackHeader(a.length),0}trackHeader(a){this.headersSize+=a,this.headersSize>=this.headersMaxSize&&f.destroy(this.socket,new n)}onUpgrade(a){let{upgrade:b,client:c,socket:d,headers:g,statusCode:h}=this;e(b),e(c[K]===d),e(!d.destroyed),e(!this.paused),e((1&g.length)==0);let i=c[C][c[H]];e(i),e(i.upgrade||"CONNECT"===i.method),this.statusCode=0,this.statusText="",this.shouldKeepAlive=!1,this.headers=[],this.headersSize=0,d.unshift(a),d[w].destroy(),d[w]=null,d[v]=null,d[I]=null,aa(d),c[K]=null,c[X]=null,c[C][c[H]++]=null,c.emit("disconnect",c[t],[c],new p("upgrade"));try{i.onRequestUpgrade(h,g,d)}catch(a){f.destroy(d,a)}c[W]()}onHeadersComplete(a,b,c){let{client:d,socket:g,headers:h,statusText:i}=this;if(g.destroyed)return -1;if(0===d[y])return f.destroy(g,new o("bad response",f.getSocketInfo(g))),-1;let j=d[C][d[H]];if(!j)return -1;if(e(!this.upgrade),e(this.statusCode<200),100===a)return f.destroy(g,new o("bad response",f.getSocketInfo(g))),-1;if(b&&!j.upgrade)return f.destroy(g,new o("bad upgrade",f.getSocketInfo(g))),-1;if(e(3===this.timeoutType),this.statusCode=a,this.shouldKeepAlive=c||"HEAD"===j.method&&!g[u]&&this.connectionKeepAlive,this.statusCode>=200){let a=null!=j.bodyTimeout?j.bodyTimeout:d[Q];this.setTimeout(a,5)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if("CONNECT"===j.method||b)return e(1===d[y]),this.upgrade=!0,2;if(e((1&this.headers.length)==0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&d[J]){let a=this.keepAlive?f.parseKeepAliveTimeout(this.keepAlive):null;if(null!=a){let b=Math.min(a-d[O],d[N]);b<=0?g[u]=!0:d[L]=b}else d[L]=d[E]}else g[u]=!0;let k=!1===j.onResponseStart(a,h,this.resume,i);return j.aborted?-1:"HEAD"===j.method||a<200?1:(g[x]&&(g[x]=!1,d[W]()),k?Z.ERROR.PAUSED:0)}onBody(a){let{client:b,socket:c,statusCode:d,maxResponseSize:g}=this;if(c.destroyed)return -1;let h=b[C][b[H]];return(e(h),e(5===this.timeoutType),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),e(d>=200),g>-1&&this.bytesRead+a.length>g)?(f.destroy(c,new s),-1):(this.bytesRead+=a.length,!1===h.onResponseData(a))?Z.ERROR.PAUSED:0}onMessageComplete(){let{client:a,socket:b,statusCode:c,upgrade:d,headers:g,contentLength:h,bytesRead:i,shouldKeepAlive:k}=this;if(b.destroyed&&(!c||k))return -1;if(d)return 0;e(c>=100),e((1&this.headers.length)==0);let l=a[C][a[H]];return(e(l),this.statusCode=0,this.statusText="",this.bytesRead=0,this.contentLength=-1,this.keepAlive="",this.connectionKeepAlive=!1,this.headers=[],this.headersSize=0,c<200)?0:"HEAD"!==l.method&&-1!==h&&i!==h?(f.destroy(b,new j),-1):(l.onResponseEnd(g),a[C][a[H]++]=null,b[ad]=0===a[z],b[B])?(e(0===a[y]),f.destroy(b,new p("reset")),Z.ERROR.PAUSED):k?b[u]&&0===a[y]?(f.destroy(b,new p("reset")),Z.ERROR.PAUSED):(null==a[J]||1===a[J]?setImmediate(a[W]):a[W](),0):(f.destroy(b,new p("reset")),Z.ERROR.PAUSED)}}function am(a){let b=a.deref();if(!b)return;let{socket:c,timeoutType:d,client:g,paused:h}=b;3===d?(!c[B]||c.writableNeedDrain||g[y]>1)&&(e(!h,"cannot be paused while waiting for headers"),f.destroy(c,new m)):5===d?h||f.destroy(c,new q):8===d&&(e(0===g[y]&&g[L]),f.destroy(c,new p("socket idle timeout")))}function an(a){e("ERR_TLS_CERT_ALTNAME_INVALID"!==a.code);let b=this[w];if("ECONNRESET"===a.code&&b.statusCode&&!b.shouldKeepAlive){let a=b.finish();a&&(this[I]=a,this[v][V](a));return}this[I]=a,this[v][V](a)}function ao(){this[w]?.readMore()}function ap(){let a=this[w];if(a.statusCode&&!a.shouldKeepAlive){let b=a.finish();b&&f.destroy(this,b);return}f.destroy(this,new o("other side closed",f.getSocketInfo(this)))}function aq(){let a=this[w];as(this),a&&(this[I]||!a.statusCode||a.shouldKeepAlive||(this[I]=a.finish()||this[I]),this[w].destroy(),this[w]=null);let b=this[I]||new o("closed",f.getSocketInfo(this)),c=this[v];if(c[K]=null,c[X]=null,c.destroyed){e(0===c[z]);let a=c[C].splice(c[H]);for(let d=0;d<a.length;d++){let e=a[d];f.errorRequest(c,e,b)}}else if(c[y]>0&&"UND_ERR_INFO"!==b.code){let a=c[C][c[H]];c[C][c[H]++]=null,f.errorRequest(c,a,b)}c[G]=c[H],e(0===c[y]),c.emit("disconnect",c[t],[c],b),c[W]()}function ar(){this[Y]=!0}function as(a){a[ac]&&(clearTimeout(a[ac]),a[ac]=null),a[ab]=0}function at(a,b,c,d,g,h,i,j){try{b?f.isBuffer(b)&&(e(h===b.byteLength,"buffer body must have content length"),g.cork(),g.write(`${i}content-length: ${h}\r
|
|
503
503
|
\r
|
|
504
504
|
`,"latin1"),g.write(b),g.uncork(),d.onBodySent(b),j||!1===d.reset||(g[u]=!0)):0===h?g.write(`${i}content-length: 0\r
|