openai-ws-opencode
Advanced tools
+1
-1
@@ -23,3 +23,3 @@ #!/usr/bin/env node | ||
| var CODEX_ORIGINATOR = "opencode"; | ||
| var USER_AGENT = "openai-ws-opencode/0.1.28"; | ||
| var USER_AGENT = "openai-ws-opencode/0.1.29"; | ||
@@ -26,0 +26,0 @@ // src/models/catalog.ts |
@@ -16,3 +16,3 @@ export declare const PROVIDER_ID = "openai-ws"; | ||
| export declare const CODEX_RESPONSES_BETA_FEATURES = "remote_compaction_v2"; | ||
| export declare const USER_AGENT = "openai-ws-opencode/0.1.28"; | ||
| export declare const USER_AGENT = "openai-ws-opencode/0.1.29"; | ||
| export declare const CODEX_OAUTH_SCOPE = "openid profile email offline_access"; | ||
@@ -19,0 +19,0 @@ export declare const OAUTH_PORT = 1455; |
@@ -16,3 +16,3 @@ export const PROVIDER_ID = "openai-ws"; | ||
| export const CODEX_RESPONSES_BETA_FEATURES = "remote_compaction_v2"; | ||
| export const USER_AGENT = "openai-ws-opencode/0.1.28"; | ||
| export const USER_AGENT = "openai-ws-opencode/0.1.29"; | ||
| export const CODEX_OAUTH_SCOPE = "openid profile email offline_access"; | ||
@@ -19,0 +19,0 @@ export const OAUTH_PORT = 1455; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAS,MAAM,EAAE,MAAM,qBAAqB,CAAA;AA6ExD,QAAA,MAAM,qBAAqB,EAAE,MAuK5B,CAAA;AAED,eAAe,qBAAqB,CAAA"} | ||
| {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAS,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAiGxD,QAAA,MAAM,qBAAqB,EAAE,MAuM5B,CAAA;AAED,eAAe,qBAAqB,CAAA"} |
+42
-7
@@ -9,4 +9,4 @@ import crypto from "node:crypto"; | ||
| import { prepareHttpFallbackBody } from "./transport/body.js"; | ||
| import { bridgeWebSocket } from "./transport/bridge.js"; | ||
| import { closeConnections, ensureWarmConnection, invalidateStaleAuthConnections } from "./transport/pool.js"; | ||
| import { abortAllBridgeStreams, abortBridgeStreamsForSession, bridgeWebSocket } from "./transport/bridge.js"; | ||
| import { clearAllTransportState, clearSessionTransportState, closeConnections, ensureWarmConnection, invalidateStaleAuthConnections, } from "./transport/pool.js"; | ||
| import { extractTransportContext, httpAuthHeaders, transportIdentity } from "./transport/headers.js"; | ||
@@ -56,3 +56,13 @@ function stableHash(value) { | ||
| } | ||
| function matchesSessionConnection(conn, sessionID) { | ||
| return (conn.activeSessionID === sessionID || | ||
| conn.lastSessionID === sessionID || | ||
| conn.headers.session_id === sessionID || | ||
| conn.headers["session-id"] === sessionID); | ||
| } | ||
| const OpenAIWebSocketPlugin = async ({ client }) => { | ||
| let currentIdentity; | ||
| const setIdentity = (identity) => { | ||
| currentIdentity = identity; | ||
| }; | ||
| const hooks = { | ||
@@ -67,2 +77,14 @@ "chat.headers": async (input, output) => { | ||
| headers[INTERNAL_PREFIX_HASH_HEADER] = stableHash(input.message); | ||
| const identity = currentIdentity; | ||
| if (!identity) | ||
| return; | ||
| try { | ||
| ensureWarmConnection(identity.wsUrl, identity.wsHeaders, { | ||
| sessionID: input.sessionID, | ||
| agent: input.agent, | ||
| }); | ||
| } | ||
| catch { | ||
| // Best-effort prewarm: admission/network failures must not break chat.headers. | ||
| } | ||
| }, | ||
@@ -91,3 +113,7 @@ "chat.params": async (input, _output) => { | ||
| const deletedSessionID = event.properties?.info?.id; | ||
| closeConnections((conn) => conn.activeSessionID === deletedSessionID || conn.lastSessionID === deletedSessionID); | ||
| if (typeof deletedSessionID === "string" && deletedSessionID) { | ||
| abortBridgeStreamsForSession(deletedSessionID, new Error("Session disposed")); | ||
| closeConnections((conn) => matchesSessionConnection(conn, deletedSessionID)); | ||
| clearSessionTransportState(deletedSessionID); | ||
| } | ||
| return; | ||
@@ -97,3 +123,5 @@ } | ||
| if (eventType === "server.instance.disposed" || eventType === "global.disposed") { | ||
| abortAllBridgeStreams(new Error("Session disposed")); | ||
| closeConnections(); | ||
| clearAllTransportState(); | ||
| } | ||
@@ -105,4 +133,6 @@ }, | ||
| const auth = (await getAuth().catch(() => undefined)); | ||
| if (!auth) | ||
| if (!auth) { | ||
| setIdentity(undefined); | ||
| return {}; | ||
| } | ||
| if (auth?.type === "api" && auth.key) { | ||
@@ -116,3 +146,3 @@ const apiKey = auth.key; | ||
| invalidateStaleAuthConnections(identity.wsUrl, identity.wsHeaders); | ||
| ensureWarmConnection(identity.wsUrl, identity.wsHeaders); | ||
| setIdentity({ wsUrl: identity.wsUrl, wsHeaders: identity.wsHeaders }); | ||
| return { | ||
@@ -162,2 +192,3 @@ apiKey, | ||
| catch { | ||
| setIdentity(undefined); | ||
| if (provider) | ||
@@ -174,3 +205,3 @@ provider.models = resolveModelsForOAuth(undefined, provider.models); | ||
| invalidateStaleAuthConnections(initialIdentity.wsUrl, initialIdentity.wsHeaders); | ||
| ensureWarmConnection(initialIdentity.wsUrl, initialIdentity.wsHeaders); | ||
| setIdentity({ wsUrl: initialIdentity.wsUrl, wsHeaders: initialIdentity.wsHeaders }); | ||
| return { | ||
@@ -181,4 +212,6 @@ apiKey: initialAuth.accessToken, | ||
| const currentAuth = (await getAuth()); | ||
| if (currentAuth?.type !== "oauth") | ||
| if (currentAuth?.type !== "oauth") { | ||
| setIdentity(undefined); | ||
| throw new Error("OpenAI WebSocket OAuth auth is missing"); | ||
| } | ||
| const { accessToken, accountId } = await resolveOAuthAuth(currentAuth, client); | ||
@@ -188,2 +221,3 @@ const clientVersion = await resolveCodexClientVersion(); | ||
| invalidateStaleAuthConnections(identity.wsUrl, identity.wsHeaders); | ||
| setIdentity({ wsUrl: identity.wsUrl, wsHeaders: identity.wsHeaders }); | ||
| const url = typeof input === "string" ? new URL(input) : input instanceof URL ? input : new URL(input.url); | ||
@@ -225,2 +259,3 @@ const context = extractTransportContext(init?.headers); | ||
| } | ||
| setIdentity(undefined); | ||
| return {}; | ||
@@ -227,0 +262,0 @@ }, |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,aAAa,CAAA;AAChC,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,2BAA2B,EAC3B,uBAAuB,EACvB,eAAe,EACf,WAAW,GACZ,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,WAAW,EAAwB,MAAM,kBAAkB,CAAA;AAC1G,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AACvG,OAAO,EAAE,8BAA8B,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACjH,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAC7D,OAAO,EAAE,qBAAqB,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5G,OAAO,EACL,sBAAsB,EACtB,0BAA0B,EAC1B,gBAAgB,EAChB,oBAAoB,EACpB,8BAA8B,GAC/B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,uBAAuB,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAWpG,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;AACnG,CAAC;AAED,MAAM,qBAAqB,GAAG;IAC5B,OAAO,EAAE,8BAA8B;IACvC,KAAK,EAAE,8BAA8B;IACrC,MAAM,EAAE,wBAAwB;CACjC,CAAA;AAED,SAAS,eAAe,CAAC,OAAgB;IACvC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;QACvC,IAAI,KAAK,EAAE,KAAK,EAAE,OAAO;YAAE,OAAO,KAAK,CAAC,KAAK,CAAA;IAC/C,CAAC;IACD,OAAO,qBAAqB,CAAA;AAC9B,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAA;AACzE,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,IAAe,EAAE,MAAW;IAC1D,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA;IACpC,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc,EAAE,CAAC;QAC9E,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAA;IAChE,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACrD,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,SAAS,CAAA;IAC5D,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;QACpB,IAAI,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE;QACzB,IAAI,EAAE;YACJ,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC,OAAO;YAC7C,MAAM,EAAE,MAAM,CAAC,YAAY;YAC3B,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC;YACvC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpC;KACF,CAAC,CAAA;IACF,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS,EAAE,CAAA;AACxD,CAAC;AAED,SAAS,YAAY,CAAC,GAAQ,EAAE,IAAkB;IAChD,OAAO,CACL,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,MAAM;QACtC,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,8BAA8B,CAAC,CAAC;QACjG,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAC9B,CAAA;AACH,CAAC;AAED,SAAS,wBAAwB,CAAC,IAA2F,EAAE,SAAiB;IAC9I,OAAO,CACL,IAAI,CAAC,eAAe,KAAK,SAAS;QAClC,IAAI,CAAC,aAAa,KAAK,SAAS;QAChC,IAAI,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS;QACrC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,SAAS,CACzC,CAAA;AACH,CAAC;AAED,MAAM,qBAAqB,GAAW,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;IACzD,IAAI,eAA8C,CAAA;IAElD,MAAM,WAAW,GAAG,CAAC,QAAuC,EAAE,EAAE;QAC9D,eAAe,GAAG,QAAQ,CAAA;IAC5B,CAAC,CAAA;IAED,MAAM,KAAK,GAAU;QACnB,cAAc,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACtC,IAAI,KAAK,CAAC,KAAK,CAAC,UAAU,KAAK,WAAW;gBAAE,OAAM;YAClD,MAAM,OAAO,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,EAAE,CAAC,CAAA;YACvC,OAAO,CAAC,uBAAuB,CAAC,GAAG,KAAK,CAAC,SAAS,CAAA;YAClD,OAAO,CAAC,qBAAqB,CAAC,GAAG,KAAK,CAAC,KAAK,CAAA;YAC5C,OAAO,CAAC,qBAAqB,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,EAAE,IAAK,KAAK,CAAC,KAAa,CAAC,OAAO,CAAA;YAC/E,OAAO,CAAC,2BAA2B,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAEhE,MAAM,QAAQ,GAAG,eAAe,CAAA;YAChC,IAAI,CAAC,QAAQ;gBAAE,OAAM;YACrB,IAAI,CAAC;gBACH,oBAAoB,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,EAAE;oBACvD,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;iBACnB,CAAC,CAAA;YACJ,CAAC;YAAC,MAAM,CAAC;gBACP,+EAA+E;YACjF,CAAC;QACH,CAAC;QAED,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACtC,IAAI,KAAK,CAAC,KAAK,CAAC,UAAU,KAAK,WAAW;gBAAE,OAAM;YAClD,MAAM,KAAK,GAAG,KAAK,CAAC,KAA0E,CAAA;YAC9F,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,IAAK,KAAK,CAAC,KAAa,CAAC,OAAO,CAAC,CAAA;YACpF,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,IAAI,EAAE,CAAA;YACjC,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAA;YAC1F,MAAM,cAAc,GAAG,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC;gBACpD,CAAC,CAAC,OAAO,CAAC,KAAK;gBACf,CAAC,CAAC,gBAAgB,CAAC,YAAY,CAAC,KAAK,CAAC;oBACpC,CAAC,CAAC,YAAY,CAAC,KAAK;oBACpB,CAAC,CAAC,YAAY,CAAC,OAAO,CAAA;YAC1B,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAA;YACtF,KAAK,CAAC,KAAK,GAAG;gBACZ,OAAO;gBACP,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC;gBACxC,MAAM;aACP,CAAA;QACH,CAAC;QAED,KAAK,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;YACzB,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBACrC,MAAM,gBAAgB,GAAI,KAAa,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,CAAA;gBAC5D,IAAI,OAAO,gBAAgB,KAAK,QAAQ,IAAI,gBAAgB,EAAE,CAAC;oBAC7D,4BAA4B,CAAC,gBAAgB,EAAE,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAA;oBAC7E,gBAAgB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,wBAAwB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAA;oBAC5E,0BAA0B,CAAC,gBAAgB,CAAC,CAAA;gBAC9C,CAAC;gBACD,OAAM;YACR,CAAC;YACD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YACpC,IAAI,SAAS,KAAK,0BAA0B,IAAI,SAAS,KAAK,iBAAiB,EAAE,CAAC;gBAChF,qBAAqB,CAAC,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAA;gBACpD,gBAAgB,EAAE,CAAA;gBAClB,sBAAsB,EAAE,CAAA;YAC1B,CAAC;QACH,CAAC;QAED,IAAI,EAAE;YACJ,QAAQ,EAAE,WAAW;YACrB,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ;gBAC5B,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAiB,CAAA;gBAErE,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,WAAW,CAAC,SAAS,CAAC,CAAA;oBACtB,OAAO,EAAE,CAAA;gBACX,CAAC;gBAED,IAAI,IAAI,EAAE,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;oBACrC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAA;oBACvB,IAAI,QAAQ,EAAE,CAAC;wBACb,MAAM,UAAU,GAAG,MAAM,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;wBACxD,QAAQ,CAAC,MAAM,GAAG,sBAAsB,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAa,CAAQ,CAAA;oBACrF,CAAC;oBACD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;oBAC3D,8BAA8B,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAA;oBAClE,WAAW,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAA;oBACrE,OAAO;wBACL,MAAM;wBACN,OAAO,EAAE,eAAe;wBACxB,KAAK,CAAC,KAAK,CAAC,KAAwB,EAAE,IAAkB;4BACtD,MAAM,GAAG,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,YAAY,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;4BAC1G,MAAM,OAAO,GAAG,uBAAuB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;4BACtD,IAAI,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC;gCAC5B,IAAI,CAAC;oCACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAc,CAA4B,CAAA;oCACxE,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;wCAC1B,OAAO,eAAe,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,SAAS,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,EAAE;4CAC9I,MAAM,QAAQ,GAAG,uBAAuB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;4CACrD,IAAI,eAAe,EAAE,uBAAuB;gDAAE,OAAO,QAAQ,CAAC,oBAAoB,CAAA;4CAClF,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE;gDAC7B,GAAG,IAAI;gDACP,MAAM,EAAE,cAAc;gDACtB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;gDAC9B,OAAO,EAAE,eAAe,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;6CAC1E,CAAC,CAAA;wCACJ,CAAC,CAAC,CAAA;oCACJ,CAAC;gCACH,CAAC;gCAAC,MAAM,CAAC,CAAA,CAAC;4BACZ,CAAC;4BAED,IAAI,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,MAAM,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gCAC5E,IAAI,CAAC;oCACH,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAA;gCACjG,CAAC;gCAAC,MAAM,CAAC,CAAA,CAAC;4BACZ,CAAC;4BACD,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE;gCAC7B,GAAG,IAAI;gCACP,OAAO,EAAE,eAAe,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;6BAC1E,CAAC,CAAA;wBACJ,CAAC;qBACF,CAAA;gBACH,CAAC;gBAED,IAAI,IAAI,EAAE,IAAI,KAAK,OAAO,EAAE,CAAC;oBAC3B,IAAI,WAAwD,CAAA;oBAC5D,IAAI,CAAC;wBACH,WAAW,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;oBACpD,CAAC;oBAAC,MAAM,CAAC;wBACP,WAAW,CAAC,SAAS,CAAC,CAAA;wBACtB,IAAI,QAAQ;4BAAE,QAAQ,CAAC,MAAM,GAAG,qBAAqB,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAa,CAAQ,CAAA;wBAC/F,OAAO,EAAE,CAAA;oBACX,CAAC;oBACD,MAAM,oBAAoB,GAAG,MAAM,yBAAyB,EAAE,CAAA;oBAC9D,IAAI,QAAQ,EAAE,CAAC;wBACb,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC,WAAW,EAAE,SAAS,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,CAAA;wBACnH,QAAQ,CAAC,MAAM,GAAG,qBAAqB,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAa,CAAQ,CAAA;oBACjF,CAAC;oBACD,MAAM,eAAe,GAAG,iBAAiB,CACvC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,CAAC,WAAW,EAAE,SAAS,EAAE,WAAW,CAAC,SAAS,EAAE,EACzF,oBAAoB,CACrB,CAAA;oBACD,8BAA8B,CAAC,eAAe,CAAC,KAAK,EAAE,eAAe,CAAC,SAAS,CAAC,CAAA;oBAChF,WAAW,CAAC,EAAE,KAAK,EAAE,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,eAAe,CAAC,SAAS,EAAE,CAAC,CAAA;oBACnF,OAAO;wBACL,MAAM,EAAE,WAAW,CAAC,WAAW;wBAC/B,OAAO,EAAE,cAAc;wBACvB,KAAK,CAAC,KAAK,CAAC,KAAwB,EAAE,IAAkB;4BACtD,MAAM,WAAW,GAAG,CAAC,MAAM,OAAO,EAAE,CAA0B,CAAA;4BAC9D,IAAI,WAAW,EAAE,IAAI,KAAK,OAAO,EAAE,CAAC;gCAClC,WAAW,CAAC,SAAS,CAAC,CAAA;gCACtB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;4BAC3D,CAAC;4BACD,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,MAAM,gBAAgB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;4BAC9E,MAAM,aAAa,GAAG,MAAM,yBAAyB,EAAE,CAAA;4BACvD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,aAAa,CAAC,CAAA;4BAC5F,8BAA8B,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAA;4BAClE,WAAW,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAA;4BACrE,MAAM,GAAG,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,YAAY,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;4BAC1G,MAAM,OAAO,GAAG,uBAAuB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;4BACtD,IAAI,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC;gCAC5B,IAAI,CAAC;oCACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAc,CAA4B,CAAA;oCACxE,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;wCAC1B,MAAM,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;wCAC/F,OAAO,eAAe,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,SAAS,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,EAAE;4CAC7I,MAAM,QAAQ,GAAG,uBAAuB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;4CACpD,IAAI,eAAe,EAAE,uBAAuB;gDAAE,OAAO,QAAQ,CAAC,oBAAoB,CAAA;4CAClF,OAAO,UAAU,CAAC,KAAK,CAAC,YAAY,EAAE;gDACpC,GAAG,IAAI;gDACP,MAAM,EAAE,cAAc;gDACtB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;gDAC9B,OAAO,EAAE,eAAe,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,aAAa,CAAC;6CAC3G,CAAC,CAAA;wCACJ,CAAC,CAAC,CAAA;oCACJ,CAAC;gCACH,CAAC;gCAAC,MAAM,CAAC,CAAA,CAAC;4BACZ,CAAC;4BAED,IAAI,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,MAAM,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gCAC5E,IAAI,CAAC;oCACH,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAA;gCAChG,CAAC;gCAAC,MAAM,CAAC,CAAA,CAAC;4BACZ,CAAC;4BAED,MAAM,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;4BAC/F,OAAO,UAAU,CAAC,KAAK,CAAC,YAAY,EAAE;gCACpC,GAAG,IAAI;gCACP,OAAO,EAAE,eAAe,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,aAAa,CAAC;6BAC3G,CAAC,CAAA;wBACJ,CAAC;qBACF,CAAA;gBACH,CAAC;gBAED,WAAW,CAAC,SAAS,CAAC,CAAA;gBACtB,OAAO,EAAE,CAAA;YACX,CAAC;YACD,OAAO,EAAE,YAAY;SACtB;KACF,CAAA;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,eAAe,qBAAqB,CAAA"} |
| export { oauthTesting } from "./auth/oauth.js"; | ||
| export { prepareBody, prepareHttpFallbackBody } from "./transport/body.js"; | ||
| export { apiKeyWebSocketHeaders, oauthWebSocketHeaders, extractTransportContext, transportIdentity } from "./transport/headers.js"; | ||
| export { connectionPool, readyState, ensureWarmConnection, invalidateStaleAuthConnections, resetPoolForTesting, resetWebSocketConstructorForTesting, setWebSocketConstructorForTesting, getTransportSnapshotForTesting, } from "./transport/pool.js"; | ||
| export { connectionPool, readyState, ensureWarmConnection, clearTransportContextState, clearSessionTransportState, clearAllTransportState, invalidateStaleAuthConnections, resetPoolForTesting, resetWebSocketConstructorForTesting, setWebSocketConstructorForTesting, getTransportSnapshotForTesting, } from "./transport/pool.js"; | ||
| export { bridgeWebSocket } from "./transport/bridge.js"; | ||
@@ -16,2 +16,3 @@ export { fallbackCodexClientVersion, fetchCodexCatalog, fetchOpenAIModelIds, resetCatalogCacheForTesting, resolveCodexClientVersion } from "./models/catalog.js"; | ||
| export declare function transportSnapshot(): { | ||
| contextEntries: number; | ||
| physicalSockets: number; | ||
@@ -50,2 +51,3 @@ connecting: number; | ||
| stale_auth: number; | ||
| other: number; | ||
| }; | ||
@@ -64,4 +66,6 @@ httpByReason: { | ||
| handshake_timeout: number; | ||
| stale_auth: number; | ||
| provider_connection_limit: number; | ||
| previous_response_not_found: number; | ||
| other: number; | ||
| }; | ||
@@ -68,0 +72,0 @@ leaseAttempts: number; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../src/testing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAC1E,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAClI,OAAO,EACL,cAAc,EACd,UAAU,EACV,oBAAoB,EACpB,8BAA8B,EAC9B,mBAAmB,EACnB,mCAAmC,EACnC,iCAAiC,EACjC,8BAA8B,GAC/B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AAChK,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAClH,OAAO,EACL,sBAAsB,EACtB,eAAe,EACf,KAAK,eAAe,GACrB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAU5D,oEAAoE;AACpE,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,QAG7E;AAED,+EAA+E;AAC/E,wBAAgB,8BAA8B,SAG7C;AAED,qEAAqE;AACrE,wBAAgB,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEhC"} | ||
| {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../src/testing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAC1E,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAClI,OAAO,EACL,cAAc,EACd,UAAU,EACV,oBAAoB,EACpB,0BAA0B,EAC1B,0BAA0B,EAC1B,sBAAsB,EACtB,8BAA8B,EAC9B,mBAAmB,EACnB,mCAAmC,EACnC,iCAAiC,EACjC,8BAA8B,GAC/B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AAChK,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAClH,OAAO,EACL,sBAAsB,EACtB,eAAe,EACf,KAAK,eAAe,GACrB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAU5D,oEAAoE;AACpE,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,QAG7E;AAED,+EAA+E;AAC/E,wBAAgB,8BAA8B,SAG7C;AAED,qEAAqE;AACrE,wBAAgB,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEhC"} |
+1
-1
| export { oauthTesting } from "./auth/oauth.js"; | ||
| export { prepareBody, prepareHttpFallbackBody } from "./transport/body.js"; | ||
| export { apiKeyWebSocketHeaders, oauthWebSocketHeaders, extractTransportContext, transportIdentity } from "./transport/headers.js"; | ||
| export { connectionPool, readyState, ensureWarmConnection, invalidateStaleAuthConnections, resetPoolForTesting, resetWebSocketConstructorForTesting, setWebSocketConstructorForTesting, getTransportSnapshotForTesting, } from "./transport/pool.js"; | ||
| export { connectionPool, readyState, ensureWarmConnection, clearTransportContextState, clearSessionTransportState, clearAllTransportState, invalidateStaleAuthConnections, resetPoolForTesting, resetWebSocketConstructorForTesting, setWebSocketConstructorForTesting, getTransportSnapshotForTesting, } from "./transport/pool.js"; | ||
| export { bridgeWebSocket } from "./transport/bridge.js"; | ||
@@ -6,0 +6,0 @@ export { fallbackCodexClientVersion, fetchCodexCatalog, fetchOpenAIModelIds, resetCatalogCacheForTesting, resolveCodexClientVersion } from "./models/catalog.js"; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"testing.js","sourceRoot":"","sources":["../src/testing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAC1E,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAClI,OAAO,EACL,cAAc,EACd,UAAU,EACV,oBAAoB,EACpB,8BAA8B,EAC9B,mBAAmB,EACnB,mCAAmC,EACnC,iCAAiC,EACjC,8BAA8B,GAC/B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AAChK,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAClH,OAAO,EACL,sBAAsB,EACtB,eAAe,GAEhB,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EACL,8BAA8B,IAAI,uBAAuB,EACzD,4BAA4B,IAAI,qBAAqB,GACtD,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EACL,8BAA8B,EAC9B,kCAAkC,GACnC,MAAM,qBAAqB,CAAA;AAE5B,oEAAoE;AACpE,MAAM,UAAU,4BAA4B,CAAC,OAAiC;IAC5E,qBAAqB,CAAC,OAAO,CAAC,CAAA;IAC9B,kCAAkC,EAAE,CAAA;AACtC,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,8BAA8B;IAC5C,uBAAuB,EAAE,CAAA;IACzB,kCAAkC,EAAE,CAAA;AACtC,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,iBAAiB;IAC/B,OAAO,8BAA8B,EAAE,CAAA;AACzC,CAAC"} | ||
| {"version":3,"file":"testing.js","sourceRoot":"","sources":["../src/testing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAC1E,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAClI,OAAO,EACL,cAAc,EACd,UAAU,EACV,oBAAoB,EACpB,0BAA0B,EAC1B,0BAA0B,EAC1B,sBAAsB,EACtB,8BAA8B,EAC9B,mBAAmB,EACnB,mCAAmC,EACnC,iCAAiC,EACjC,8BAA8B,GAC/B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AAChK,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAClH,OAAO,EACL,sBAAsB,EACtB,eAAe,GAEhB,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EACL,8BAA8B,IAAI,uBAAuB,EACzD,4BAA4B,IAAI,qBAAqB,GACtD,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EACL,8BAA8B,EAC9B,kCAAkC,GACnC,MAAM,qBAAqB,CAAA;AAE5B,oEAAoE;AACpE,MAAM,UAAU,4BAA4B,CAAC,OAAiC;IAC5E,qBAAqB,CAAC,OAAO,CAAC,CAAA;IAC9B,kCAAkC,EAAE,CAAA;AACtC,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,8BAA8B;IAC5C,uBAAuB,EAAE,CAAA;IACzB,kCAAkC,EAAE,CAAA;AACtC,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,iBAAiB;IAC/B,OAAO,8BAA8B,EAAE,CAAA;AACzC,CAAC"} |
@@ -8,4 +8,10 @@ import type { TransportContext } from "./headers.js"; | ||
| type FallbackFetch = (signal: AbortSignal, context?: FallbackFetchContext) => Promise<Response>; | ||
| /** Fixed-cardinality active bridge count for tests (no session IDs). */ | ||
| export declare function activeBridgeStreamCountForTesting(): number; | ||
| /** Abort active bridge turns for a session (hashed identity; idempotent). */ | ||
| export declare function abortBridgeStreamsForSession(sessionID: string, reason?: unknown): void; | ||
| /** Abort every active bridge turn (idempotent). */ | ||
| export declare function abortAllBridgeStreams(reason?: unknown): void; | ||
| export declare function bridgeWebSocket(wsUrl: string, headers: Record<string, string>, requestBody: Record<string, unknown>, isOAuth: boolean, context?: TransportContext, signal?: AbortSignal, fallbackFetch?: FallbackFetch): Response; | ||
| export {}; | ||
| //# sourceMappingURL=bridge.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../../src/transport/bridge.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAEpD,gEAAgE;AAChE,MAAM,MAAM,oBAAoB,GAAG;IACjC,mFAAmF;IACnF,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAClC,CAAA;AAED,KAAK,aAAa,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,oBAAoB,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;AA2L/F,wBAAgB,eAAe,CAC7B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE,gBAAqB,EAC9B,MAAM,CAAC,EAAE,WAAW,EACpB,aAAa,CAAC,EAAE,aAAa,GAC5B,QAAQ,CAkOV"} | ||
| {"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../../src/transport/bridge.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAEpD,gEAAgE;AAChE,MAAM,MAAM,oBAAoB,GAAG;IACjC,mFAAmF;IACnF,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAClC,CAAA;AAED,KAAK,aAAa,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,oBAAoB,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;AAqC/F,wEAAwE;AACxE,wBAAgB,iCAAiC,IAAI,MAAM,CAE1D;AAED,6EAA6E;AAC7E,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI,CAItF;AAED,mDAAmD;AACnD,wBAAgB,qBAAqB,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI,CAE5D;AA0MD,wBAAgB,eAAe,CAC7B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE,gBAAqB,EAC9B,MAAM,CAAC,EAAE,WAAW,EACpB,aAAa,CAAC,EAAE,aAAa,GAC5B,QAAQ,CAuSV"} |
+139
-7
@@ -0,3 +1,4 @@ | ||
| import { createHash } from "node:crypto"; | ||
| import { prepareBody } from "./body.js"; | ||
| import { acquireConnection, allocateStreamKey, closeConnection, closeConnections, sendPending, } from "./pool.js"; | ||
| import { acquireConnection, allocateStreamKey, clearTransportContextState, closeConnection, closeConnections, sendPending, } from "./pool.js"; | ||
| import { transportConfig } from "./config.js"; | ||
@@ -8,2 +9,48 @@ import { getTransportCoordinator } from "./coordinator.js"; | ||
| const encoder = new TextEncoder(); | ||
| const activeBridgeStreams = new Set(); | ||
| const activeBridgeStreamsBySession = new Map(); | ||
| function hashSessionIdentity(sessionID) { | ||
| return createHash("sha256").update(sessionID).digest("hex"); | ||
| } | ||
| function registerBridgeStream(sessionID, handle) { | ||
| activeBridgeStreams.add(handle); | ||
| if (!sessionID) | ||
| return; | ||
| const key = hashSessionIdentity(sessionID); | ||
| let set = activeBridgeStreamsBySession.get(key); | ||
| if (!set) { | ||
| set = new Set(); | ||
| activeBridgeStreamsBySession.set(key, set); | ||
| } | ||
| set.add(handle); | ||
| } | ||
| function unregisterBridgeStream(sessionID, handle) { | ||
| activeBridgeStreams.delete(handle); | ||
| if (!sessionID) | ||
| return; | ||
| const key = hashSessionIdentity(sessionID); | ||
| const set = activeBridgeStreamsBySession.get(key); | ||
| if (!set) | ||
| return; | ||
| set.delete(handle); | ||
| if (set.size === 0) | ||
| activeBridgeStreamsBySession.delete(key); | ||
| } | ||
| /** Fixed-cardinality active bridge count for tests (no session IDs). */ | ||
| export function activeBridgeStreamCountForTesting() { | ||
| return activeBridgeStreams.size; | ||
| } | ||
| /** Abort active bridge turns for a session (hashed identity; idempotent). */ | ||
| export function abortBridgeStreamsForSession(sessionID, reason) { | ||
| const set = activeBridgeStreamsBySession.get(hashSessionIdentity(sessionID)); | ||
| if (!set || set.size === 0) | ||
| return; | ||
| for (const handle of [...set]) | ||
| handle.abort(reason); | ||
| } | ||
| /** Abort every active bridge turn (idempotent). */ | ||
| export function abortAllBridgeStreams(reason) { | ||
| for (const handle of [...activeBridgeStreams]) | ||
| handle.abort(reason); | ||
| } | ||
| function providerForUrl(wsUrl) { | ||
@@ -50,2 +97,9 @@ return wsUrl === CODEX_WS_URL || wsUrl.includes("chatgpt.com/backend-api/codex") ? "codex" : "openai"; | ||
| } | ||
| function asAbortError(reason) { | ||
| if (reason instanceof Error) | ||
| return reason; | ||
| if (reason === undefined) | ||
| return new DOMException("Aborted", "AbortError"); | ||
| return new DOMException(String(reason), "AbortError"); | ||
| } | ||
| function queueOverflowError() { | ||
@@ -61,2 +115,12 @@ return new WebSocketTransportError({ | ||
| } | ||
| function isSseContentType(value) { | ||
| if (!value) | ||
| return false; | ||
| const media = value.split(";", 1)[0].trim().toLowerCase(); | ||
| return media === "text/event-stream"; | ||
| } | ||
| function fallbackResponseError(response) { | ||
| const contentType = response.headers.get("content-type") ?? ""; | ||
| return new Error(`HTTP fallback failed: status=${response.status} content-type=${contentType || "unknown"}`); | ||
| } | ||
| class BoundedSseSink { | ||
@@ -198,7 +262,10 @@ provider; | ||
| let fallbackContext; | ||
| let fallbackReader = null; | ||
| let sink; | ||
| let streamController; | ||
| let streamSettled = false; | ||
| let registered = false; | ||
| const streamKey = allocateStreamKey(); | ||
| const provider = providerForUrl(wsUrl); | ||
| const sessionID = context.sessionID; | ||
| const cleanupAbort = () => { | ||
@@ -208,6 +275,28 @@ if (signal) | ||
| }; | ||
| const cancelFallbackReader = () => { | ||
| const reader = fallbackReader; | ||
| fallbackReader = null; | ||
| if (!reader) | ||
| return; | ||
| try { | ||
| void reader.cancel().catch(() => { }); | ||
| } | ||
| catch { } | ||
| try { | ||
| reader.releaseLock(); | ||
| } | ||
| catch { } | ||
| }; | ||
| const unregister = () => { | ||
| if (!registered) | ||
| return; | ||
| registered = false; | ||
| unregisterBridgeStream(sessionID, bridgeHandle); | ||
| }; | ||
| const finalize = () => { | ||
| finalized = true; | ||
| cleanupAbort(); | ||
| cancelFallbackReader(); | ||
| fallbackController.abort(new DOMException("Stream finalized", "AbortError")); | ||
| unregister(); | ||
| }; | ||
@@ -246,4 +335,21 @@ const settleError = (error) => { | ||
| const response = await fallbackFetch(fallbackController.signal, fallbackContext); | ||
| if (finalized || sink.getError()) | ||
| if (finalized || sink.getError()) { | ||
| try { | ||
| await response.body?.cancel(); | ||
| } | ||
| catch { } | ||
| return; | ||
| } | ||
| if (!response.ok || !isSseContentType(response.headers.get("content-type"))) { | ||
| const error = fallbackResponseError(response); | ||
| try { | ||
| await response.body?.cancel(); | ||
| } | ||
| catch { } | ||
| try { | ||
| sink.error(error); | ||
| } | ||
| catch { } | ||
| return; | ||
| } | ||
| if (!response.body) { | ||
@@ -254,2 +360,3 @@ sink.close(); | ||
| const reader = response.body.getReader(); | ||
| fallbackReader = reader; | ||
| try { | ||
@@ -271,3 +378,8 @@ while (!finalized && !sink.getError()) { | ||
| finally { | ||
| reader.releaseLock(); | ||
| if (fallbackReader === reader) | ||
| fallbackReader = null; | ||
| try { | ||
| reader.releaseLock(); | ||
| } | ||
| catch { } | ||
| } | ||
@@ -295,2 +407,5 @@ if (!finalized && !sink.getError()) | ||
| fallbackStarted = true; | ||
| // Clear WSS continuation + turn state for this exact hashed context once before HTTP fallback. | ||
| // Does not mutate the caller request body; previous_response hint stays typed below. | ||
| clearTransportContextState(wsUrl, headers, context); | ||
| if (error instanceof WebSocketTransportError && error.code === "previous_response_not_found") { | ||
@@ -302,3 +417,3 @@ fallbackContext = { clearPreviousResponseId: true }; | ||
| }; | ||
| const onAbort = () => { | ||
| const abortBridge = (reason) => { | ||
| if (finalized) | ||
@@ -308,3 +423,4 @@ return; | ||
| cleanupAbort(); | ||
| const error = abortError(signal); | ||
| const error = asAbortError(reason ?? (signal ? abortError(signal) : undefined)); | ||
| cancelFallbackReader(); | ||
| fallbackController.abort(error); | ||
@@ -320,3 +436,10 @@ if (conn) | ||
| } | ||
| unregister(); | ||
| }; | ||
| const bridgeHandle = { | ||
| abort: abortBridge, | ||
| }; | ||
| const onAbort = () => { | ||
| abortBridge(signal ? abortError(signal) : undefined); | ||
| }; | ||
| const startStream = (acquired, streamSink) => { | ||
@@ -355,2 +478,4 @@ conn = acquired; | ||
| }; | ||
| // highWaterMark: 0 so pull() reflects real reader demand; unread first chunks | ||
| // stay in BoundedSseSink and honor per-stream / aggregate queue caps. | ||
| const readable = new ReadableStream({ | ||
@@ -365,2 +490,4 @@ start(controller) { | ||
| } | ||
| registered = true; | ||
| registerBridgeStream(sessionID, bridgeHandle); | ||
| sink = new BoundedSseSink(provider, streamKey, () => { | ||
@@ -427,7 +554,11 @@ const err = sink?.getError(); | ||
| // Terminal-but-undrained sinks set finalized before the consumer drains; still release. | ||
| if (streamSettled) | ||
| if (streamSettled) { | ||
| cancelFallbackReader(); | ||
| unregister(); | ||
| return; | ||
| } | ||
| streamSettled = true; | ||
| finalized = true; | ||
| cleanupAbort(); | ||
| cancelFallbackReader(); | ||
| fallbackController.abort(new DOMException("Aborted", "AbortError")); | ||
@@ -437,4 +568,5 @@ sink?.cancel(); | ||
| abortPending(conn, new DOMException("Aborted", "AbortError")); | ||
| unregister(); | ||
| }, | ||
| }); | ||
| }, { highWaterMark: 0 }); | ||
| return new Response(readable, { | ||
@@ -441,0 +573,0 @@ status: 200, |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../src/transport/bridge.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../src/transport/bridge.ts"],"names":[],"mappings":"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"} |
@@ -86,3 +86,3 @@ import { type TransportBreaker } from "./breaker.js"; | ||
| private memoryBlocked; | ||
| private boundMap; | ||
| private isFixedRateKey; | ||
| reserveSocket(input: { | ||
@@ -105,2 +105,5 @@ accountFp: string; | ||
| private rateBlock; | ||
| private activeRateKeys; | ||
| /** Make room for required rate keys without evicting process/provider windows. */ | ||
| private ensureRateCapacity; | ||
| private recordRates; | ||
@@ -180,2 +183,3 @@ private boundRateWindows; | ||
| stale_auth: number; | ||
| other: number; | ||
| }; | ||
@@ -194,4 +198,6 @@ httpByReason: { | ||
| handshake_timeout: number; | ||
| stale_auth: number; | ||
| provider_connection_limit: number; | ||
| previous_response_not_found: number; | ||
| other: number; | ||
| }; | ||
@@ -198,0 +204,0 @@ leaseAttempts: number; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../src/transport/coordinator.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../src/transport/coordinator.ts"],"names":[],"mappings":"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"} |
@@ -16,2 +16,3 @@ import { monitorEventLoopDelay } from "node:perf_hooks"; | ||
| "stale_auth", | ||
| "other", | ||
| ]; | ||
@@ -30,4 +31,6 @@ const HTTP_REASONS = [ | ||
| "handshake_timeout", | ||
| "stale_auth", | ||
| "provider_connection_limit", | ||
| "previous_response_not_found", | ||
| "other", | ||
| ]; | ||
@@ -209,9 +212,4 @@ const DEFAULT_PROCESS_MAX_SOCKETS = 64; | ||
| } | ||
| boundMap(map) { | ||
| while (map.size > this.maxAccountingEntries) { | ||
| const key = map.keys().next().value; | ||
| if (key === undefined) | ||
| break; | ||
| map.delete(key); | ||
| } | ||
| isFixedRateKey(key) { | ||
| return key === "process" || key.startsWith("provider:"); | ||
| } | ||
@@ -233,3 +231,3 @@ reserveSocket(input) { | ||
| if (accountCount === 0 && this.accountSockets.size >= this.maxAccountingEntries) { | ||
| return { ok: false, reason: "queue_overflow" }; | ||
| return { ok: false, reason: "memory_guard" }; | ||
| } | ||
@@ -268,2 +266,30 @@ this.physicalSockets++; | ||
| } | ||
| activeRateKeys(scopes) { | ||
| return scopes.filter(([, limit]) => limit > 0).map(([key]) => key); | ||
| } | ||
| /** Make room for required rate keys without evicting process/provider windows. */ | ||
| ensureRateCapacity(scopes, now) { | ||
| for (const key of [...this.rateWindows.keys()]) | ||
| this.pruneWindow(key, now); | ||
| const required = this.activeRateKeys(scopes); | ||
| const missing = required.filter((key) => !this.rateWindows.has(key)); | ||
| if (missing.length === 0) { | ||
| this.boundRateWindows(now); | ||
| return true; | ||
| } | ||
| const requiredSet = new Set(required); | ||
| const evictable = [...this.rateWindows.keys()].filter((key) => !this.isFixedRateKey(key) && !requiredSet.has(key)); | ||
| const sizeAfterEvict = this.rateWindows.size - evictable.length; | ||
| const room = this.maxAccountingEntries - sizeAfterEvict; | ||
| if (missing.length > room) | ||
| return false; | ||
| let need = missing.length - Math.max(0, this.maxAccountingEntries - this.rateWindows.size); | ||
| for (const key of evictable) { | ||
| if (need <= 0) | ||
| break; | ||
| this.rateWindows.delete(key); | ||
| need--; | ||
| } | ||
| return true; | ||
| } | ||
| recordRates(scopes, now) { | ||
@@ -287,3 +313,8 @@ for (const [key, limit] of scopes) { | ||
| } | ||
| this.boundMap(this.rateWindows); | ||
| while (this.rateWindows.size > this.maxAccountingEntries) { | ||
| const victim = [...this.rateWindows.keys()].find((key) => !this.isFixedRateKey(key)); | ||
| if (victim === undefined) | ||
| break; | ||
| this.rateWindows.delete(victim); | ||
| } | ||
| } | ||
@@ -306,2 +337,4 @@ startConnect(input) { | ||
| return { ok: false, reason: "handshake_rate" }; | ||
| if (!this.ensureRateCapacity(scopes, now)) | ||
| return { ok: false, reason: "handshake_rate" }; | ||
| const breakerDecision = this.breaker.allow(input.scopeKey); | ||
@@ -415,11 +448,19 @@ if (!breakerDecision.allowed) | ||
| noteAdmissionMiss(reason) { | ||
| if (reason in this.counters.admissionMissesByReason) { | ||
| this.counters.admissionMissesByReason[reason]++; | ||
| const map = this.counters.admissionMissesByReason; | ||
| if (Object.hasOwn(map, reason)) { | ||
| map[reason]++; | ||
| } | ||
| else { | ||
| map.other++; | ||
| } | ||
| } | ||
| noteFallback(reason) { | ||
| this.counters.fallbacks++; | ||
| if (reason in this.counters.httpByReason) { | ||
| this.counters.httpByReason[reason]++; | ||
| const map = this.counters.httpByReason; | ||
| if (Object.hasOwn(map, reason)) { | ||
| map[reason]++; | ||
| } | ||
| else { | ||
| map.other++; | ||
| } | ||
| } | ||
@@ -426,0 +467,0 @@ noteAuthStale() { |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"coordinator.js","sourceRoot":"","sources":["../../src/transport/coordinator.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"coordinator.js","sourceRoot":"","sources":["../../src/transport/coordinator.ts"],"names":[],"mappings":"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"} |
@@ -78,2 +78,5 @@ import { type WebSocketConstructor, type WebSocketLike } from "./bun-websocket.js"; | ||
| breakerDomain: string; | ||
| contextEpoch: number; | ||
| sawConnectTimeout: boolean; | ||
| sawConnectNonTimeout: boolean; | ||
| } | ||
@@ -91,3 +94,6 @@ export declare const connectionPool: PooledConnection[]; | ||
| export declare function acquireConnection(wsUrl: string, headers: Record<string, string>, context: TransportContext, _signal?: AbortSignal): PooledConnection; | ||
| export declare function ensureWarmConnection(wsUrl: string, headers: Record<string, string>): PooledConnection | undefined; | ||
| export declare function ensureWarmConnection(wsUrl: string, headers: Record<string, string>, context?: TransportContext): PooledConnection | undefined; | ||
| export declare function clearTransportContextState(wsUrl: string, headers: Record<string, string>, context: TransportContext): void; | ||
| export declare function clearSessionTransportState(sessionID: string): void; | ||
| export declare function clearAllTransportState(): void; | ||
| export declare function closeConnections(predicate?: (conn: PooledConnection) => boolean, message?: string): void; | ||
@@ -98,2 +104,3 @@ export declare function nextStreamKeyForTesting(): string; | ||
| export declare function getTransportSnapshotForTesting(): { | ||
| contextEntries: number; | ||
| physicalSockets: number; | ||
@@ -132,2 +139,3 @@ connecting: number; | ||
| stale_auth: number; | ||
| other: number; | ||
| }; | ||
@@ -146,4 +154,6 @@ httpByReason: { | ||
| handshake_timeout: number; | ||
| stale_auth: number; | ||
| provider_connection_limit: number; | ||
| previous_response_not_found: number; | ||
| other: number; | ||
| }; | ||
@@ -150,0 +160,0 @@ leaseAttempts: number; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../../src/transport/pool.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../../src/transport/pool.ts"],"names":[],"mappings":"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"} |
+264
-27
@@ -12,6 +12,10 @@ import crypto from "node:crypto"; | ||
| const lastResponseIDByContext = new Map(); | ||
| const contextEpochByKey = new Map(); | ||
| const contextOwnerByKey = new Map(); | ||
| const scopeCooldowns = new Map(); | ||
| const authEndpoints = new Map(); | ||
| const OAUTH_MISSING_ACCOUNT_SEED = "codex-oauth-missing-account"; | ||
| let nextConnectionID = 1; | ||
| let nextStreamID = 1; | ||
| let contextEpochClock = 1; | ||
| export const readyState = { | ||
@@ -43,3 +47,3 @@ CONNECTING: 0, | ||
| } | ||
| function accountFingerprint(headers) { | ||
| function accountFingerprint(headers, wsUrl) { | ||
| const account = headers["ChatGPT-Account-ID"] ?? headers["ChatGPT-Account-Id"] ?? headers["chatgpt-account-id"] ?? ""; | ||
@@ -49,5 +53,16 @@ if (account) { | ||
| } | ||
| // Codex OAuth without account id: stable shared sentinel so bearer rotation cannot bypass account caps. | ||
| if (providerForUrl(wsUrl) === "codex") { | ||
| return crypto.createHash("sha256").update(`acct:${OAUTH_MISSING_ACCOUNT_SEED}`).digest("hex").slice(0, 32); | ||
| } | ||
| // Public API keys: fingerprint by auth material. | ||
| const auth = headers.Authorization ?? headers.authorization ?? ""; | ||
| return crypto.createHash("sha256").update(`auth:${auth}`).digest("hex").slice(0, 32); | ||
| } | ||
| function authGenerationKey(endpoint, accountFp) { | ||
| return `${endpoint}::${accountFp}`; | ||
| } | ||
| function hashIdentity(kind, value) { | ||
| return crypto.createHash("sha256").update(`${kind}:${value}`).digest("hex").slice(0, 32); | ||
| } | ||
| function breakerDomainKey(provider, origin, accountFp) { | ||
@@ -66,4 +81,89 @@ return crypto.createHash("sha256").update(`${provider}\n${origin}\n${accountFp}`).digest("hex"); | ||
| function contextScopeKey(wsUrl, headers, context) { | ||
| return `${scopeKey(wsUrl, headers)}::session:${context.sessionID ?? ""}::agent:${context.agent ?? ""}`; | ||
| const sessionHash = context.sessionID ? hashIdentity("session", context.sessionID) : ""; | ||
| const agentHash = context.agent ? hashIdentity("agent", context.agent) : ""; | ||
| return `${scopeKey(wsUrl, headers)}::ctx:${sessionHash}::agt:${agentHash}`; | ||
| } | ||
| function contextKeyMatchesSession(contextKey, sessionID) { | ||
| const sessionHash = hashIdentity("session", sessionID); | ||
| return contextKey.includes(`::ctx:${sessionHash}::`); | ||
| } | ||
| function contextEntryCount() { | ||
| const keys = new Set(); | ||
| for (const key of turnStateByContext.keys()) | ||
| keys.add(key); | ||
| for (const key of lastResponseIDByContext.keys()) | ||
| keys.add(key); | ||
| for (const key of contextEpochByKey.keys()) | ||
| keys.add(key); | ||
| for (const key of contextOwnerByKey.keys()) | ||
| keys.add(key); | ||
| return keys.size; | ||
| } | ||
| function scrubIdleConnectionContext(contextKey) { | ||
| for (const conn of connectionPool) { | ||
| if (conn.contextKey !== contextKey || conn.busy) | ||
| continue; | ||
| conn.lastResponseID = undefined; | ||
| conn.turnState = undefined; | ||
| } | ||
| } | ||
| function boundContextMaps() { | ||
| const max = transportConfig.maxAccountingEntries; | ||
| while (contextEntryCount() > max) { | ||
| const oldest = contextEpochByKey.keys().next().value ?? | ||
| turnStateByContext.keys().next().value ?? | ||
| lastResponseIDByContext.keys().next().value ?? | ||
| contextOwnerByKey.keys().next().value; | ||
| if (oldest === undefined) | ||
| break; | ||
| turnStateByContext.delete(oldest); | ||
| lastResponseIDByContext.delete(oldest); | ||
| contextEpochByKey.delete(oldest); | ||
| contextOwnerByKey.delete(oldest); | ||
| // Evicted map keys must not be reintroduced from idle local connection state. | ||
| scrubIdleConnectionContext(oldest); | ||
| } | ||
| } | ||
| function currentContextEpoch(contextKey) { | ||
| return contextEpochByKey.get(contextKey) ?? 0; | ||
| } | ||
| function bumpContextEpoch(contextKey) { | ||
| const next = Math.max(contextEpochClock, currentContextEpoch(contextKey) + 1); | ||
| contextEpochClock = next + 1; | ||
| contextEpochByKey.delete(contextKey); | ||
| contextEpochByKey.set(contextKey, next); | ||
| boundContextMaps(); | ||
| return next; | ||
| } | ||
| function setContextMapValue(map, contextKey, value) { | ||
| map.delete(contextKey); | ||
| map.set(contextKey, value); | ||
| if (!contextEpochByKey.has(contextKey)) { | ||
| contextEpochByKey.set(contextKey, currentContextEpoch(contextKey)); | ||
| } | ||
| else { | ||
| const epoch = contextEpochByKey.get(contextKey); | ||
| contextEpochByKey.delete(contextKey); | ||
| contextEpochByKey.set(contextKey, epoch); | ||
| } | ||
| boundContextMaps(); | ||
| } | ||
| function clearContextAccounting(contextKey, options = {}) { | ||
| turnStateByContext.delete(contextKey); | ||
| lastResponseIDByContext.delete(contextKey); | ||
| contextOwnerByKey.delete(contextKey); | ||
| if (options.bumpEpoch !== false) | ||
| bumpContextEpoch(contextKey); | ||
| else | ||
| boundContextMaps(); | ||
| } | ||
| function canPublishContextState(conn) { | ||
| if (conn.staleAuth || !isCurrentAuth(conn)) | ||
| return false; | ||
| return conn.contextEpoch === currentContextEpoch(conn.contextKey); | ||
| } | ||
| function admitContextTurn(conn) { | ||
| conn.contextEpoch = currentContextEpoch(conn.contextKey); | ||
| setContextMapValue(contextOwnerByKey, conn.contextKey, conn.id); | ||
| } | ||
| function headersForConnection(wsUrl, baseHeaders, context, key) { | ||
@@ -150,7 +250,8 @@ const headers = { ...baseHeaders }; | ||
| } | ||
| function bindAuthGeneration(endpoint, hash) { | ||
| let state = authEndpoints.get(endpoint); | ||
| function bindAuthGeneration(endpoint, accountFp, hash) { | ||
| const key = authGenerationKey(endpoint, accountFp); | ||
| let state = authEndpoints.get(key); | ||
| if (!state) { | ||
| state = { currentGeneration: 1, currentHash: hash, bindings: new Map([[hash, 1]]), order: [hash] }; | ||
| authEndpoints.set(endpoint, state); | ||
| authEndpoints.set(key, state); | ||
| boundAuthEndpoints(); | ||
@@ -179,9 +280,13 @@ return 1; | ||
| } | ||
| // Refresh map insertion order for bounded eviction fairness. | ||
| authEndpoints.delete(key); | ||
| authEndpoints.set(key, state); | ||
| boundAuthEndpoints(); | ||
| return state.currentGeneration; | ||
| } | ||
| function currentAuthGeneration(endpoint) { | ||
| return authEndpoints.get(endpoint)?.currentGeneration ?? 0; | ||
| function currentAuthGeneration(endpoint, accountFp) { | ||
| return authEndpoints.get(authGenerationKey(endpoint, accountFp))?.currentGeneration ?? 0; | ||
| } | ||
| function isCurrentAuth(conn) { | ||
| return conn.authGeneration === currentAuthGeneration(conn.endpointKey); | ||
| return conn.authGeneration === currentAuthGeneration(conn.endpointKey, conn.accountFp); | ||
| } | ||
@@ -563,4 +668,6 @@ function finishConnectPermit(conn, result) { | ||
| function persistLastResponseID(conn, responseID) { | ||
| if (!canPublishContextState(conn)) | ||
| return; | ||
| conn.lastResponseID = responseID; | ||
| lastResponseIDByContext.set(conn.contextKey, responseID); | ||
| setContextMapValue(lastResponseIDByContext, conn.contextKey, responseID); | ||
| } | ||
@@ -815,2 +922,3 @@ function frameResponseID(frame) { | ||
| conn.lastCloseReason = "connection timed out"; | ||
| conn.sawConnectTimeout = true; | ||
| finishConnectPermit(conn, { success: false, breakerEligible: true, timeout: true }); | ||
@@ -833,5 +941,5 @@ handleSocketLoss(conn); | ||
| const turnState = headerValue(response, X_CODEX_TURN_STATE_HEADER); | ||
| if (turnState) { | ||
| if (turnState && canPublishContextState(conn)) { | ||
| conn.turnState = turnState; | ||
| turnStateByContext.set(conn.contextKey, turnState); | ||
| setContextMapValue(turnStateByContext, conn.contextKey, turnState); | ||
| } | ||
@@ -842,2 +950,20 @@ conn.serverReasoningIncluded = headerValue(response, X_REASONING_INCLUDED_HEADER) !== undefined; | ||
| }; | ||
| const rejectInboundOverflow = (message, probeBytes) => { | ||
| const streamKey = conn.pending?.streamKey ?? `overflow:${conn.id}`; | ||
| // Non-mutating reject path: oversized probe increments queueOverflows and retains zero bytes. | ||
| getTransportCoordinator().adjustQueue({ | ||
| provider: conn.provider, | ||
| streamKey, | ||
| bytes: probeBytes, | ||
| messages: 1, | ||
| }); | ||
| fail(conn, transportError({ | ||
| code: "queue_overflow", | ||
| phase: "active", | ||
| message, | ||
| fallbackEligible: false, | ||
| breakerEligible: false, | ||
| safeToReplay: false, | ||
| }), true); | ||
| }; | ||
| const handleMessage = (data, isBinary) => { | ||
@@ -851,3 +977,19 @@ if (generation !== conn.generation) | ||
| } | ||
| const decoded = decodeFrameData(data); | ||
| const maxBytes = transportConfig.queueMaxBytesPerStream; | ||
| const incomingBytes = Buffer.byteLength(decoded, "utf8"); | ||
| if (incomingBytes > maxBytes) { | ||
| rejectInboundOverflow("OpenAI WebSocket inbound frame queue overflow", incomingBytes); | ||
| return; | ||
| } | ||
| const carryBytes = Buffer.byteLength(conn.frameCarryover, "utf8"); | ||
| if (carryBytes + incomingBytes > maxBytes) { | ||
| rejectInboundOverflow("OpenAI WebSocket inbound carryover queue overflow", carryBytes + incomingBytes); | ||
| return; | ||
| } | ||
| const parsed = parseFrames(data, conn.frameCarryover); | ||
| if (Buffer.byteLength(parsed.carryover, "utf8") > maxBytes) { | ||
| rejectInboundOverflow("OpenAI WebSocket inbound carryover queue overflow", Buffer.byteLength(parsed.carryover, "utf8")); | ||
| return; | ||
| } | ||
| conn.frameCarryover = parsed.carryover; | ||
@@ -861,2 +1003,3 @@ for (const frame of parsed.frames) | ||
| conn.lastErrorMessage = messageFromError(error) ?? "unknown websocket error"; | ||
| conn.sawConnectNonTimeout = true; | ||
| finishConnectPermit(conn, { success: false, breakerEligible: true }); | ||
@@ -875,2 +1018,4 @@ handleSocketLoss(conn); | ||
| } | ||
| if (conn.lastCloseReason !== "connection timed out") | ||
| conn.sawConnectNonTimeout = true; | ||
| finishConnectPermit(conn, { success: false, breakerEligible: true }); | ||
@@ -887,2 +1032,3 @@ handleSocketLoss(conn); | ||
| conn.lastCloseReason = `websocket handshake failed${status !== undefined ? ` with status ${status}` : ""}`; | ||
| conn.sawConnectNonTimeout = true; | ||
| finishConnectPermit(conn, { success: false, breakerEligible: true }); | ||
@@ -896,3 +1042,3 @@ handleSocketLoss(conn); | ||
| headers: conn.headers, | ||
| perMessageDeflate: true, | ||
| perMessageDeflate: false, | ||
| finishRequest(request) { | ||
@@ -907,2 +1053,3 @@ if (attachUpgrade) | ||
| conn.lastErrorMessage = messageFromError(error) ?? "websocket constructor failed"; | ||
| conn.sawConnectNonTimeout = true; | ||
| finishConnectPermit(conn, { success: false, breakerEligible: true }); | ||
@@ -983,2 +1130,13 @@ queueMicrotask(() => handleSocketLoss(conn)); | ||
| } | ||
| if (conn.staleAuth || !isCurrentAuth(conn)) { | ||
| getTransportCoordinator().noteAuthStale(); | ||
| fail(conn, transportError({ | ||
| code: "stale_auth", | ||
| phase: "pre_send", | ||
| message: "OpenAI WebSocket auth generation is stale; refusing reconnect", | ||
| fallbackEligible: true, | ||
| safeToReplay: true, | ||
| }), true); | ||
| return; | ||
| } | ||
| connect(conn); | ||
@@ -988,4 +1146,5 @@ }, retryDelay(conn.reconnectAttempts, retryAfterMs))); | ||
| } | ||
| const allTimeouts = conn.sawConnectTimeout && !conn.sawConnectNonTimeout; | ||
| fail(conn, transportError({ | ||
| code: "connect_failure", | ||
| code: allTimeouts ? "handshake_timeout" : "connect_failure", | ||
| phase: "handshake", | ||
@@ -1008,3 +1167,3 @@ message: formatFailureMessage(conn, "retry limit reached before response.create was sent"), | ||
| const origin = canonicalWebSocketOrigin(wsUrl); | ||
| const accountFp = accountFingerprint(headers); | ||
| const accountFp = accountFingerprint(headers, wsUrl); | ||
| const now = Date.now(); | ||
@@ -1023,3 +1182,3 @@ const conn = { | ||
| origin, | ||
| authGeneration: bindAuthGeneration(endpoint, hash), | ||
| authGeneration: bindAuthGeneration(endpoint, accountFp, hash), | ||
| busy: false, | ||
@@ -1048,2 +1207,5 @@ warm, | ||
| breakerDomain: breakerDomainKey(provider, origin, accountFp), | ||
| contextEpoch: currentContextEpoch(key), | ||
| sawConnectTimeout: false, | ||
| sawConnectNonTimeout: false, | ||
| }; | ||
@@ -1079,16 +1241,21 @@ connectionPool.push(conn); | ||
| const endpoint = endpointKey(wsUrl); | ||
| const accountFp = accountFingerprint(headers, wsUrl); | ||
| const hash = authScopeHash(headers); | ||
| const state = authEndpoints.get(endpoint); | ||
| const authKey = authGenerationKey(endpoint, accountFp); | ||
| const state = authEndpoints.get(authKey); | ||
| // ABA: presenting an old remembered binding must not become current or stale newer sockets. | ||
| if (state && hash !== state.currentHash && state.bindings.has(hash)) | ||
| return; | ||
| const generation = bindAuthGeneration(endpoint, hash); | ||
| const keepHash = authEndpoints.get(endpoint)?.currentHash ?? hash; | ||
| const keepGen = authEndpoints.get(endpoint)?.currentGeneration ?? generation; | ||
| const generation = bindAuthGeneration(endpoint, accountFp, hash); | ||
| const keepHash = authEndpoints.get(authKey)?.currentHash ?? hash; | ||
| const keepGen = authEndpoints.get(authKey)?.currentGeneration ?? generation; | ||
| for (const conn of [...connectionPool]) { | ||
| if (conn.wsUrl !== wsUrl) | ||
| continue; | ||
| if (conn.accountFp !== accountFp) | ||
| continue; | ||
| if (conn.scopeHash === keepHash && conn.authGeneration === keepGen) | ||
| continue; | ||
| conn.staleAuth = true; | ||
| clearContextAccounting(conn.contextKey); | ||
| if (conn.busy) | ||
@@ -1149,4 +1316,5 @@ continue; | ||
| const hash = authScopeHash(headers); | ||
| const generation = bindAuthGeneration(endpoint, hash); | ||
| if (generation !== currentAuthGeneration(endpoint)) { | ||
| const accountFp = accountFingerprint(headers, wsUrl); | ||
| const generation = bindAuthGeneration(endpoint, accountFp, hash); | ||
| if (generation !== currentAuthGeneration(endpoint, accountFp)) { | ||
| coordinator.noteAuthStale(); | ||
@@ -1163,6 +1331,9 @@ admitMiss("stale_auth", "OpenAI WebSocket auth generation is stale"); | ||
| reusable.turnCount += 1; | ||
| // Always take the bounded map as source of truth, including absences after clear/eviction. | ||
| reusable.lastResponseID = lastResponseIDByContext.get(key); | ||
| reusable.turnState = turnStateByContext.get(key); | ||
| admitContextTurn(reusable); | ||
| coordinator.noteLeaseAdmission(); | ||
| return reusable; | ||
| } | ||
| const accountFp = accountFingerprint(headers); | ||
| const provider = providerForUrl(wsUrl); | ||
@@ -1188,2 +1359,3 @@ const origin = canonicalWebSocketOrigin(wsUrl); | ||
| conn.turnCount += 1; | ||
| admitContextTurn(conn); | ||
| coordinator.noteLeaseAdmission(); | ||
@@ -1195,7 +1367,7 @@ return conn; | ||
| } | ||
| export function ensureWarmConnection(wsUrl, headers) { | ||
| export function ensureWarmConnection(wsUrl, headers, context = {}) { | ||
| const coordinator = getTransportCoordinator(); | ||
| coordinator.notePrewarmAttempt(); | ||
| invalidateStaleAuthConnections(wsUrl, headers); | ||
| const key = contextScopeKey(wsUrl, headers, {}); | ||
| const key = contextScopeKey(wsUrl, headers, context); | ||
| const now = Date.now(); | ||
@@ -1214,3 +1386,3 @@ cleanupExpiredIdle(now); | ||
| } | ||
| const accountFp = accountFingerprint(headers); | ||
| const accountFp = accountFingerprint(headers, wsUrl); | ||
| const provider = providerForUrl(wsUrl); | ||
@@ -1235,4 +1407,63 @@ const origin = canonicalWebSocketOrigin(wsUrl); | ||
| } | ||
| return create(wsUrl, headers, {}, true, started.permit); | ||
| return create(wsUrl, headers, context, true, started.permit); | ||
| } | ||
| export function clearTransportContextState(wsUrl, headers, context) { | ||
| const key = contextScopeKey(wsUrl, headers, context); | ||
| clearContextAccounting(key); | ||
| for (const conn of connectionPool) { | ||
| if (conn.contextKey !== key) | ||
| continue; | ||
| conn.lastResponseID = undefined; | ||
| conn.turnState = undefined; | ||
| } | ||
| } | ||
| export function clearSessionTransportState(sessionID) { | ||
| const keys = new Set(); | ||
| for (const key of turnStateByContext.keys()) { | ||
| if (contextKeyMatchesSession(key, sessionID)) | ||
| keys.add(key); | ||
| } | ||
| for (const key of lastResponseIDByContext.keys()) { | ||
| if (contextKeyMatchesSession(key, sessionID)) | ||
| keys.add(key); | ||
| } | ||
| for (const key of contextEpochByKey.keys()) { | ||
| if (contextKeyMatchesSession(key, sessionID)) | ||
| keys.add(key); | ||
| } | ||
| for (const key of contextOwnerByKey.keys()) { | ||
| if (contextKeyMatchesSession(key, sessionID)) | ||
| keys.add(key); | ||
| } | ||
| for (const key of scopeCooldowns.keys()) { | ||
| if (contextKeyMatchesSession(key, sessionID)) | ||
| scopeCooldowns.delete(key); | ||
| } | ||
| for (const key of keys) | ||
| clearContextAccounting(key); | ||
| for (const conn of connectionPool) { | ||
| if (!contextKeyMatchesSession(conn.contextKey, sessionID)) | ||
| continue; | ||
| conn.lastResponseID = undefined; | ||
| conn.turnState = undefined; | ||
| } | ||
| } | ||
| export function clearAllTransportState() { | ||
| const keys = new Set([ | ||
| ...turnStateByContext.keys(), | ||
| ...lastResponseIDByContext.keys(), | ||
| ...contextEpochByKey.keys(), | ||
| ...contextOwnerByKey.keys(), | ||
| ]); | ||
| for (const key of keys) | ||
| clearContextAccounting(key); | ||
| turnStateByContext.clear(); | ||
| lastResponseIDByContext.clear(); | ||
| contextOwnerByKey.clear(); | ||
| // Keep bumped epochs so in-flight completions cannot republish under a recycled 0 epoch. | ||
| for (const conn of connectionPool) { | ||
| conn.lastResponseID = undefined; | ||
| conn.turnState = undefined; | ||
| } | ||
| } | ||
| export function closeConnections(predicate = () => true, message = "Session disposed") { | ||
@@ -1282,3 +1513,6 @@ for (const conn of [...connectionPool]) { | ||
| export function getTransportSnapshotForTesting() { | ||
| return getTransportCoordinator().snapshot(); | ||
| return { | ||
| ...getTransportCoordinator().snapshot(), | ||
| contextEntries: contextEntryCount(), | ||
| }; | ||
| } | ||
@@ -1299,4 +1533,7 @@ export function resetPoolForTesting() { | ||
| lastResponseIDByContext.clear(); | ||
| contextEpochByKey.clear(); | ||
| contextOwnerByKey.clear(); | ||
| scopeCooldowns.clear(); | ||
| authEndpoints.clear(); | ||
| contextEpochClock = 1; | ||
| nextStreamID = 1; | ||
@@ -1303,0 +1540,0 @@ resetTransportCoordinatorForTesting(); |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"pool.js","sourceRoot":"","sources":["../../src/transport/pool.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAA;AAChC,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,6BAA6B,EAC7B,8BAA8B,EAC9B,sBAAsB,EACtB,8BAA8B,EAC9B,yBAAyB,EACzB,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,2BAA2B,GAC5B,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,+BAA+B,EAAiD,MAAM,oBAAoB,CAAA;AACnH,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAA;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EACL,wBAAwB,EACxB,6BAA6B,EAC7B,uBAAuB,EACvB,mCAAmC,GAGpC,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAA2B,MAAM,aAAa,CAAA;AAGzG,IAAI,aAAa,GAAyB,+BAA+B,EAAE,CAAA;AAiF3E,MAAM,CAAC,MAAM,cAAc,GAAuB,EAAE,CAAA;AAEpD,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAkB,CAAA;AACpD,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAkB,CAAA;AACzD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAA;AAChD,MAAM,aAAa,GAAG,IAAI,GAAG,EAQ1B,CAAA;AAEH,IAAI,gBAAgB,GAAG,CAAC,CAAA;AACxB,IAAI,YAAY,GAAG,CAAC,CAAA;AAEpB,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,UAAU,EAAE,CAAC;IACb,IAAI,EAAE,CAAC;IACP,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,CAAC;CACD,CAAA;AAEV,SAAS,EAAE,CAAC,EAAiB,EAAE,KAAa,EAAE,QAAkC;IAC9E,IAAI,EAAE,CAAC,EAAE;QAAE,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;;QAC5B,EAAE,CAAC,gBAAgB,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;AAC7C,CAAC;AAED,SAAS,GAAG,CAAC,EAAiB,EAAE,KAAa,EAAE,QAAkC;IAC/E,IAAI,EAAE,CAAC,GAAG;QAAE,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;;QAC9B,EAAE,CAAC,mBAAmB,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;AAChD,CAAC;AAED,SAAS,aAAa,CAAC,OAA+B;IACpD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;SACjC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,eAAe,EAAE,oBAAoB,EAAE,YAAY,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;SACnH,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;SACtC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;SACxC,IAAI,CAAC,IAAI,CAAC,CAAA;IACb,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AAC/D,CAAC;AAED,SAAS,kBAAkB,CAAC,OAA+B;IACzD,MAAM,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,OAAO,CAAC,oBAAoB,CAAC,IAAI,OAAO,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAA;IACrH,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IACzF,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,aAAa,IAAI,EAAE,CAAA;IACjE,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;AACtF,CAAC;AAED,SAAS,gBAAgB,CAAC,QAA2B,EAAE,MAAc,EAAE,SAAiB;IACtF,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,QAAQ,KAAK,MAAM,KAAK,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AACjG,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACnC,OAAO,KAAK,KAAK,YAAY,IAAI,KAAK,CAAC,QAAQ,CAAC,+BAA+B,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAA;AACvG,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,wBAAwB,CAAC,KAAK,CAAC,CAAA;AACxC,CAAC;AAED,SAAS,QAAQ,CAAC,KAAa,EAAE,OAA+B;IAC9D,OAAO,GAAG,KAAK,KAAK,aAAa,CAAC,OAAO,CAAC,EAAE,CAAA;AAC9C,CAAC;AAED,SAAS,eAAe,CAAC,KAAa,EAAE,OAA+B,EAAE,OAAyB;IAChG,OAAO,GAAG,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,aAAa,OAAO,CAAC,SAAS,IAAI,EAAE,WAAW,OAAO,CAAC,KAAK,IAAI,EAAE,EAAE,CAAA;AACxG,CAAC;AAED,SAAS,oBAAoB,CAC3B,KAAa,EACb,WAAmC,EACnC,OAAyB,EACzB,GAAW;IAEX,MAAM,OAAO,GAAG,EAAE,GAAG,WAAW,EAAE,CAAA;IAClC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,CAAA;QACtC,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,SAAS,CAAA;QACzC,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;QACrC,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,SAAS,CAAA;QACxC,OAAO,CAAC,qBAAqB,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAC/H,OAAO,CAAC,wBAAwB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAA;IACvD,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,CAAC,wBAAwB,CAAC,GAAG,OAAO,CAAC,KAAK,CAAA;IACnG,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAA;IACjE,IAAI,cAAc;QAAE,OAAO,CAAC,8BAA8B,CAAC,GAAG,cAAc,CAAA;IAC5E,MAAM,SAAS,GAAG,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC7C,IAAI,SAAS;QAAE,OAAO,CAAC,yBAAyB,CAAC,GAAG,SAAS,CAAA;IAC7D,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,SAAS,WAAW,CAAC,MAAe,EAAE,IAAY;IAChD,MAAM,OAAO,GAAI,MAA4C,EAAE,OAAO,CAAA;IACtE,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAA;IAC9B,IAAI,OAAO,YAAY,OAAO;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,SAAS,CAAA;IACrE,IAAI,OAAQ,OAA6B,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;QAC7D,MAAM,KAAK,GAAI,OAA6C,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACtE,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACpH,CAAC;IACD,MAAM,MAAM,GAAG,OAAkC,CAAA;IACjD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;IACxD,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AACpH,CAAC;AAED,SAAS,oBAAoB,CAAC,WAAiC;IAC7D,OAAO,OAAO,CAAC,QAAQ,CAAC,GAAG,KAAK,SAAS,IAAI,WAAW,CAAC,IAAI,KAAK,WAAW,CAAA;AAC/E,CAAC;AAED,SAAS,UAAU,CAAC,KAA2C;IAC7D,IAAI,KAAK;QAAE,YAAY,CAAC,KAAK,CAAC,CAAA;AAChC,CAAC;AAED,SAAS,UAAU,CAAC,KAAoC;IACtD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;QACpE,CAAC;QAAC,KAAgC,CAAC,KAAK,EAAE,EAAE,CAAA;IAC9C,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,iBAAiB,CAAC,OAA0C;IACnE,IAAI,CAAC,OAAO;QAAE,OAAM;IACpB,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IAC7B,OAAO,CAAC,SAAS,GAAG,IAAI,CAAA;AAC1B,CAAC;AAED,SAAS,eAAe,CAAC,OAA0C;IACjE,IAAI,CAAC,OAAO;QAAE,OAAM;IACpB,iBAAiB,CAAC,OAAO,CAAC,CAAA;IAC1B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAA;IACtB,OAAO,CAAC,UAAU,GAAG,SAAS,CAAA;AAChC,CAAC;AAED,SAAS,cAAc,CAAC,OAQvB;IACC,OAAO,IAAI,uBAAuB,CAAC;QACjC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;QAC1C,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,KAAK;QACjD,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,gBAAgB;QAC9D,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,kBAAkB;IACzB,MAAM,GAAG,GAAG,eAAe,CAAC,oBAAoB,CAAA;IAChD,OAAO,aAAa,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAA;QAChD,IAAI,MAAM,KAAK,SAAS;YAAE,MAAK;QAC/B,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAC9B,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAgB,EAAE,IAAY;IACxD,IAAI,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACvC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,KAAK,GAAG,EAAE,iBAAiB,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAA;QAClG,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;QAClC,kBAAkB,EAAE,CAAA;QACpB,OAAO,CAAC,CAAA;IACV,CAAC;IACD,IAAI,IAAI,KAAK,KAAK,CAAC,WAAW;QAAE,OAAO,KAAK,CAAC,iBAAiB,CAAA;IAE9D,wEAAwE;IACxE,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC3C,IAAI,UAAU,KAAK,SAAS;QAAE,OAAO,UAAU,CAAA;IAE/C,KAAK,CAAC,iBAAiB,IAAI,CAAC,CAAA;IAC5B,KAAK,CAAC,WAAW,GAAG,IAAI,CAAA;IACxB,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAA;IACjD,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACtB,MAAM,GAAG,GAAG,eAAe,CAAC,yBAAyB,CAAA;IACrD,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;QAClC,IAAI,CAAC,MAAM,IAAI,MAAM,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC;YAC5C,IAAI,MAAM;gBAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACpC,MAAK;QACP,CAAC;QACD,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAC/B,CAAC;IACD,OAAO,KAAK,CAAC,iBAAiB,CAAA;AAChC,CAAC;AAED,SAAS,qBAAqB,CAAC,QAAgB;IAC7C,OAAO,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,iBAAiB,IAAI,CAAC,CAAA;AAC5D,CAAC;AAED,SAAS,aAAa,CAAC,IAAsB;IAC3C,OAAO,IAAI,CAAC,cAAc,KAAK,qBAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;AACxE,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAsB,EAAE,MAA0E;IAC7H,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,eAAe;QAAE,OAAM;IACvD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAA;IAC3B,uBAAuB,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,CAAA;IACnE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAA;AAC3B,CAAC;AAED,SAAS,uBAAuB,CAAC,IAAsB;IACrD,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc;QAAE,OAAM;IACvD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAA;IAC1B,uBAAuB,EAAE,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC/F,uBAAuB,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;AACtG,CAAC;AAED,SAAS,wBAAwB,CAAC,IAAsB;IACtD,IAAI,CAAC,IAAI,CAAC,cAAc;QAAE,OAAM;IAChC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAA;IAC3B,uBAAuB,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAA;AAC9C,CAAC;AAED,SAAS,MAAM,CAAC,IAAsB;IACpC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,IAAI,CAAC,MAAM,EAAE,CAAA;QACb,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;IACpB,CAAC;IACD,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAC7B,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC1B,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAC3B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;IACxB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;IACrB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAA;AACxB,CAAC;AAED,SAAS,MAAM,CAAC,IAAsB;IACpC,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1C,IAAI,KAAK,IAAI,CAAC;QAAE,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;IAC/C,MAAM,CAAC,IAAI,CAAC,CAAA;IACZ,mBAAmB,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,CAAA;IACrE,uBAAuB,CAAC,IAAI,CAAC,CAAA;IAC7B,wBAAwB,CAAC,IAAI,CAAC,CAAA;AAChC,CAAC;AAED,SAAS,UAAU,CAAC,OAAe,EAAE,YAAqB;IACxD,IAAI,YAAY,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,eAAe,CAAC,oBAAoB,CAAC,CAAA;IACnG,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAC1B,eAAe,CAAC,mBAAmB,EACnC,eAAe,CAAC,oBAAoB,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,CACrE,CAAA;IACD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,eAAe,CAAC,oBAAoB,CAAC,CAAC,CAAA;IAClF,IAAI,WAAW,KAAK,CAAC;QAAE,OAAO,WAAW,CAAA;IACzC,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,GAAG,WAAW,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AACnE,CAAC;AAED,SAAS,WAAW,CAAC,IAAsB,EAAE,IAAY,EAAE,MAAc;IACvE,IAAI,CAAC;QACH,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,CAAA;IACxB,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;IACV,IAAI,CAAC;QACH,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAC9B,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAsB,EAAE,MAAM,GAAG,mBAAmB,EAAE,QAAQ,GAAG,KAAK;IACpG,MAAM,CAAC,IAAI,CAAC,CAAA;IACZ,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,CAAC;YACH,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAC9B,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;QACV,OAAM;IACR,CAAC;IACD,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;AACjC,CAAC;AAED,SAAS,OAAO,CAAC,IAAsB;IACrC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,eAAe,CAAA;IACzC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAA;IACjC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC7B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;IACnB,IAAI,CAAC,eAAe,GAAG,SAAS,CAAA;IAChC,IAAI,CAAC,WAAW,GAAG,SAAS,CAAA;IAC5B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAA;IACjB,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAA;IAC1B,IAAI,CAAC,cAAc,GAAG,EAAE,CAAA;IACxB,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC1B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;IAErB,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3C,MAAM,CAAC,IAAI,CAAC,CAAA;QACZ,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAA;QACvC,OAAM;IACR,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACjC,uBAAuB,EAAE,CAAC,gBAAgB,EAAE,CAAA;QAC5C,MAAM,CAAC,IAAI,CAAC,CAAA;QACZ,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,CAAA;QAClC,OAAM;IACR,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACf,IAAI,CAAC,SAAS,GAAG,UAAU,CACzB,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;YACrB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,CAAA;gBACZ,IAAI,CAAC;oBACH,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,eAAe,CAAC,CAAA;gBACvC,CAAC;gBAAC,MAAM,CAAC,CAAA,CAAC;YACZ,CAAC;QACH,CAAC,EAAE,eAAe,CAAC,WAAW,CAAC,CAChC,CAAA;IACH,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAsB;IACjD,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,IAAI,EAAE,CAAA;IACzC,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;QAChC,IAAI,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YAAE,OAAO,iDAAiD,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;QACjI,OAAO,qCAAqC,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;IAC3E,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAsB,EAAE,MAAc;IAClE,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAA;IAC9E,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,CAAA;IAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;IACxF,MAAM,YAAY,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAA;IAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;IAC5B,MAAM,mBAAmB,GAAG,OAAO;QACjC,CAAC,CAAC,wBAAwB,OAAO,CAAC,IAAI,kCAAkC,OAAO,CAAC,cAAc,4BAA4B,OAAO,CAAC,cAAc,EAAE;QAClJ,CAAC,CAAC,EAAE,CAAA;IACN,OAAO,CACL,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,IAAI,CAAC,CAAC,CAAC,EAAE,oEAAoE,MAAM,IAAI;QACxH,qBAAqB,IAAI,CAAC,iBAAiB,IAAI,eAAe,CAAC,oBAAoB,IAAI;QACvF,aAAa,IAAI,iBAAiB,WAAW,eAAe,SAAS,GAAG,mBAAmB,EAAE,CAC9F,CAAA;AACH,CAAC;AAED,SAAS,IAAI,CAAC,IAAsB,EAAE,KAAY,EAAE,iBAA0B;IAC5E,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;IAC5B,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,KAAK,CAAA;QAC1D,OAAO,CAAC,IAAI,GAAG,IAAI,CAAA;QACnB,IAAI,OAAO,EAAE,CAAC;YACZ,iBAAiB,CAAC,OAAO,CAAC,CAAA;YAC1B,OAAO,CAAC,UAAU,GAAG,SAAS,CAAA;YAC9B,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;QAC7B,CAAC;aAAM,CAAC;YACN,eAAe,CAAC,OAAO,CAAC,CAAA;YACxB,IAAI,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAC3B,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;QACZ,CAAC;IACH,CAAC;IACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;IACnB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAA;IACjB,IAAI,CAAC,eAAe,GAAG,SAAS,CAAA;IAChC,IAAI,CAAC,WAAW,GAAG,SAAS,CAAA;IAC5B,IAAI,iBAAiB,EAAE,CAAC;QACtB,MAAM,CAAC,IAAI,CAAC,CAAA;QACZ,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,CAAA;IACpC,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,SAAiB;IACxC,OAAO,CAAC,oBAAoB,EAAE,iBAAiB,EAAE,qBAAqB,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;AAC7F,CAAC;AAED,SAAS,wBAAwB,CAAC,KAA8B;IAC9D,IAAI,KAAK,CAAC,IAAI,KAAK,2BAA2B;QAAE,OAAO,KAAK,CAAA;IAC5D,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;IACvB,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAA;IAC1E,MAAM,KAAK,GAAG,IAA+B,CAAA;IAC7C,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;QAAE,OAAO,KAAK,CAAA;IAC1C,OAAO,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,CAAA;AACnE,CAAC;AAED,SAAS,0BAA0B,CAAC,IAAsB,EAAE,MAAc;IACxE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;IAC5B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI;QAAE,OAAM;IACpC,iBAAiB,CAAC,OAAO,CAAC,CAAA;IAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;IAClC,OAAO,CAAC,SAAS,GAAG,UAAU,CAC5B,UAAU,CAAC,GAAG,EAAE;QACd,IAAI,UAAU,KAAK,IAAI,CAAC,UAAU;YAAE,OAAM;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;QAC5B,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,OAAO,IAAI,OAAO,CAAC,IAAI;YAAE,OAAM;QAC3D,OAAO,CAAC,SAAS,GAAG,IAAI,CAAA;QACxB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAA;QACzB,IAAI,CAAC,eAAe,GAAG,oCAAoC,CAAA;QAC3D,IAAI,CACF,IAAI,EACJ,cAAc,CAAC;YACb,IAAI,EAAE,oBAAoB;YAC1B,KAAK,EAAE,QAAQ;YACf,OAAO,EAAE,oBAAoB,CAAC,IAAI,EAAE,4CAA4C,MAAM,EAAE,CAAC;YACzF,gBAAgB,EAAE,KAAK;SACxB,CAAC,EACF,IAAI,CACL,CAAA;IACH,CAAC,EAAE,eAAe,CAAC,mBAAmB,CAAC,CACxC,CAAA;AACH,CAAC;AAED,SAAS,eAAe,CAAC,IAAa;IACpC,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAA;IACzC,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IACvD,IAAI,IAAI,YAAY,WAAW;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC1E,IAAI,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IAChH,OAAO,MAAM,CAAC,IAAI,CAAC,CAAA;AACrB,CAAC;AAED,SAAS,sBAAsB,CAAC,MAAc;IAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;IAClC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,CAAC,CAAC,CAAA;IAE/C,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,IAAI,QAAQ,GAAG,KAAK,CAAA;IACpB,IAAI,MAAM,GAAG,KAAK,CAAA;IAClB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QACnD,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QACrC,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,MAAM;gBAAE,MAAM,GAAG,KAAK,CAAA;iBACrB,IAAI,IAAI,KAAK,IAAI;gBAAE,MAAM,GAAG,IAAI,CAAA;iBAChC,IAAI,IAAI,KAAK,IAAI;gBAAE,QAAQ,GAAG,KAAK,CAAA;YACxC,SAAQ;QACV,CAAC;QACD,IAAI,IAAI,KAAK,IAAI;YAAE,QAAQ,GAAG,IAAI,CAAA;aAC7B,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI;YAAE,KAAK,IAAI,CAAC,CAAA;aAC9C,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YACxC,KAAK,IAAI,CAAC,CAAA;YACV,IAAI,KAAK,KAAK,CAAC;gBAAE,OAAO,KAAK,GAAG,CAAC,CAAA;QACnC,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAC,CAAA;AACX,CAAC;AAED,SAAS,WAAW,CAAC,IAAa,EAAE,SAAS,GAAG,EAAE;IAChD,IAAI,MAAM,GAAG,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;IAC9C,MAAM,MAAM,GAAmC,EAAE,CAAA;IAEjD,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACnC,IAAI,CAAC,MAAM;YAAE,MAAK;QAClB,MAAM,QAAQ,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAA;QAC/C,IAAI,QAAQ,GAAG,CAAC;YAAE,MAAK;QACvB,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;QAC3C,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAC/B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YACpC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAmC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YAC7I,CAAC;iBAAM,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAChD,MAAM,CAAC,IAAI,CAAC,MAAiC,CAAC,CAAA;YAChD,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAA;AACtC,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC3C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;QAC5B,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAA;IAC5C,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,KAAK,YAAY,KAAK;QAAE,OAAO,KAAK,CAAC,OAAO,CAAA;IAChD,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;QAC7D,MAAM,OAAO,GAAI,KAA+B,CAAC,OAAO,CAAA;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO;YAAE,OAAO,OAAO,CAAA;IAC5D,CAAC;IACD,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;AAC1E,CAAC;AAED,SAAS,kBAAkB,CAAC,KAA8B;IACxD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAE,KAAK,CAAC,KAAiC,CAAC,CAAC,CAAC,EAAE,CAAA;IAC5G,OAAO,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;AAC9G,CAAC;AAED,SAAS,kBAAkB,CAAC,IAA6B;IACvD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;IACxB,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAA;IACtD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACvC,OAAO,CACL,KAAK,CAAC,MAAM,GAAG,CAAC;QAChB,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE;YACnB,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;gBAAE,OAAO,KAAK,CAAA;YAC1E,MAAM,KAAK,GAAG,IAA+B,CAAA;YAC7C,OAAO,KAAK,CAAC,IAAI,KAAK,SAAS,CAAA;QACjC,CAAC,CAAC,CACH,CAAA;AACH,CAAC;AAED,SAAS,wBAAwB,CAAC,KAA8B,EAAE,OAAuB;IACvF,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,SAAS,CAAA;IAC5C,MAAM,IAAI,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAA;IACtC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAE,KAAK,CAAC,KAAiC,CAAC,CAAC,CAAC,EAAE,CAAA;IAC5G,MAAM,OAAO,GACX,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;IAE9G,IAAI,IAAI,KAAK,6BAA6B,EAAE,CAAC;QAC3C,OAAO,CAAC,QAAQ,CAAC,UAAU,GAAG,SAAS,CAAA;QACvC,MAAM,UAAU,GAAG,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAA;QAC9E,OAAO,cAAc,CAAC;YACpB,IAAI,EAAE,6BAA6B;YACnC,KAAK,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU;YACrD,OAAO,EAAE,UAAU;gBACjB,CAAC,CAAC,OAAO,IAAI,6BAA6B;gBAC1C,CAAC,CAAC,kKAAkK;YACtK,gBAAgB,EAAE,UAAU;YAC5B,YAAY,EAAE,UAAU;YACxB,eAAe,EAAE,KAAK;SACvB,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,IAAI,KAAK,oCAAoC,EAAE,CAAC;QAClD,OAAO,cAAc,CAAC;YACpB,IAAI,EAAE,2BAA2B;YACjC,KAAK,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU;YACrD,OAAO,EACL,OAAO;gBACP,2GAA2G;YAC7G,gBAAgB,EAAE,CAAC,OAAO,CAAC,cAAc;YACzC,YAAY,EAAE,CAAC,OAAO,CAAC,cAAc;YACrC,eAAe,EAAE,KAAK;SACvB,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,qBAAqB,CAAC,KAA8B;IAC3D,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,SAAS,CAAA;IAC5C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAE,KAAK,CAAC,KAAiC,CAAC,CAAC,CAAC,EAAE,CAAA;IAC5G,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;IAClH,MAAM,OAAO,GACX,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;IAC9G,MAAM,MAAM,GACV,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC;QACxB,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC;QAC7B,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC;QACxB,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC;QAC7B,CAAC,IAAI,KAAK,qBAAqB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IACpD,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG;QAAE,OAAO,SAAS,CAAA;IAC3E,OAAO,IAAI,KAAK,CACd,yBAAyB,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAC7H,CAAA;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAsB;IAC/C,OAAO,IAAI,CAAC,QAAQ,KAAK,OAAO,CAAA;AAClC,CAAC;AAED,SAAS,2BAA2B,CAAC,IAAsB;IACzD,IAAI,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,KAAK,GAAG;QAAE,OAAO,KAAK,CAAA;IACrE,IAAI,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,KAAK,GAAG;QAAE,OAAO,IAAI,CAAA;IAC5D,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;AAChC,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAsB,EAAE,OAAuB,EAAE,SAAiB;IAC/F,IAAI,SAAS,KAAK,oBAAoB;QAAE,OAAM;IAC9C,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC;QAAE,OAAM;IAC9C,IAAI,OAAO,CAAC,gBAAgB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU;QAAE,OAAM;IACpE,IAAI,CAAC;QACH,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAA;QACvG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAA;IACjC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,gBAAgB,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAChF,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAsB;IACjD,IAAI,CAAC,cAAc,GAAG,SAAS,CAAA;IAC/B,uBAAuB,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;AACjD,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAsB,EAAE,UAAkB;IACvE,IAAI,CAAC,cAAc,GAAG,UAAU,CAAA;IAChC,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;AAC1D,CAAC;AAED,SAAS,eAAe,CAAC,KAA8B;IACrD,IAAI,UAA8B,CAAA;IAClC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAA;IAC/B,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG,QAAmC,CAAA;QACjD,IAAI,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ;YAAE,UAAU,GAAG,KAAK,CAAC,EAAE,CAAA;IACzD,CAAC;IACD,IAAI,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ;QAAE,UAAU,GAAG,KAAK,CAAC,WAAW,CAAA;IACzE,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAsB,EAAE,OAAuB,EAAE,UAA8B;IAC5G,IAAI,CAAC,UAAU;QAAE,OAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU,GAAG,UAAU,CAAA;IACxC,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,KAAK,SAAS,IAAI,UAAU,KAAK,OAAO,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC;QACxG,OAAO,CAAC,QAAQ,CAAC,gBAAgB,GAAG,UAAU,CAAA;IAChD,CAAC;IACD,qBAAqB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;AACzC,CAAC;AAED,SAAS,oBAAoB,CAAC,OAAuB,EAAE,UAA8B;IACnF,OAAO,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,IAAI,UAAU,KAAK,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA;AACrH,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAW;IACtC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,cAAc,EAAE,CAAC;QAC1C,IAAI,KAAK,IAAI,GAAG;YAAE,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IAC9C,CAAC;IACD,MAAM,GAAG,GAAG,eAAe,CAAC,oBAAoB,CAAA;IAChD,OAAO,cAAc,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAA;QACjD,IAAI,MAAM,KAAK,SAAS;YAAE,MAAK;QAC/B,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAC/B,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,aAAqB;IAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IACtB,mBAAmB,CAAC,GAAG,CAAC,CAAA;IACxB,cAAc,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,GAAG,eAAe,CAAC,iBAAiB,CAAC,CAAA;IAC1E,mBAAmB,CAAC,GAAG,CAAC,CAAA;IACxB,uBAAuB,EAAE,CAAC,YAAY,EAAE,CAAA;AAC1C,CAAC;AAED,SAAS,UAAU,CAAC,IAAsB,EAAE,KAA8B;IACxE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;IAC5B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI;QAAE,OAAM;IACpC,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,CAAA;IACzC,MAAM,SAAS,GAAG,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;IACzE,IAAI,SAAS,KAAK,kBAAkB,IAAI,oBAAoB,CAAC,OAAO,EAAE,UAAU,CAAC;QAAE,OAAM;IAEzF,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAClE,IAAI,iBAAiB,EAAE,CAAC;QACtB,IAAI,iBAAiB,CAAC,IAAI,KAAK,6BAA6B;YAAE,mBAAmB,CAAC,IAAI,CAAC,CAAA;QACvF,IAAI,iBAAiB,CAAC,IAAI,KAAK,2BAA2B;YAAE,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC3F,IAAI,CAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,CAAC,CAAA;QACnC,OAAM;IACR,CAAC;IAED,MAAM,WAAW,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAA;IAChD,IAAI,WAAW,EAAE,CAAC;QAChB,mBAAmB,CAAC,IAAI,CAAC,CAAA;QACzB,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,CAAA;QAC7B,OAAM;IACR,CAAC;IAED,OAAO,CAAC,cAAc,GAAG,IAAI,CAAA;IAC7B,OAAO,CAAC,cAAc,GAAG,IAAI,CAAA;IAC7B,qBAAqB,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA;IAChD,IAAI,wBAAwB,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAA;IAE9E,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,UAAU,SAAS,WAAW,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IACnG,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,yBAAyB,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;YACxE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;YACvB,OAAM;QACR,CAAC;QACD,IAAI,CAAC,IAAI,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;QAC3E,OAAM;IACR,CAAC;IACD,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC;QAAE,0BAA0B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;IAC5E,IAAI,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,eAAe,CAAC,OAAO,CAAC,CAAA;QACxB,OAAO,CAAC,IAAI,GAAG,IAAI,CAAA;QACnB,qBAAqB,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,CAAA;QAC/C,IAAI,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;QACtB,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;QACV,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU;YAAE,qBAAqB,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;;YACpF,mBAAmB,CAAC,IAAI,CAAC,CAAA;QAC9B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;QACnB,OAAO,CAAC,IAAI,CAAC,CAAA;IACf,CAAC;AACH,CAAC;AAED,SAAS,iCAAiC,CAAC,IAAsB,EAAE,OAAuB;IACxF,eAAe,CAAC,OAAO,CAAC,CAAA;IACxB,OAAO,CAAC,IAAI,GAAG,IAAI,CAAA;IACnB,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;IACtB,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;IACV,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU;QAAE,qBAAqB,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;;QACpF,mBAAmB,CAAC,IAAI,CAAC,CAAA;IAC9B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;IACnB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAA;IACjB,IAAI,CAAC,eAAe,GAAG,SAAS,CAAA;IAChC,IAAI,CAAC,WAAW,GAAG,SAAS,CAAA;IAC5B,MAAM,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAAsB;IAChD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;IAC5B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI;QAAE,OAAO,KAAK,CAAA;IAC1D,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAA;IAClB,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,UAAU,KAAK,UAAU,CAAC,IAAI;QAAE,OAAO,KAAK,CAAA;IAE1D,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QAC3C,uBAAuB,EAAE,CAAC,aAAa,EAAE,CAAA;QACzC,IAAI,CACF,IAAI,EACJ,cAAc,CAAC;YACb,IAAI,EAAE,YAAY;YAClB,KAAK,EAAE,UAAU;YACjB,OAAO,EAAE,qEAAqE;YAC9E,gBAAgB,EAAE,IAAI;YACtB,YAAY,EAAE,IAAI;SACnB,CAAC,EACF,IAAI,CACL,CAAA;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;IAClC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;QAChC,IAAI,IAAI,CAAC,oBAAoB,KAAK,SAAS,IAAI,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,cAAc,CAAA;QACnH,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAA;QACpE,OAAO,CAAC,IAAI,GAAG,IAAI,CAAA;QACnB,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAa,EAAE,EAAE;YACjC,IAAI,UAAU,KAAK,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,IAAI,OAAO,CAAC,IAAI;gBAAE,OAAM;YACtF,IAAI,KAAK,EAAE,CAAC;gBACV,OAAO,CAAC,IAAI,GAAG,KAAK,CAAA;gBACpB,OAAO,CAAC,cAAc,GAAG,KAAK,CAAA;gBAC9B,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,KAAK,CAAC,IAAI,uBAAuB,CAAA;gBAC1E,cAAc,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAA;gBAC5C,OAAM;YACR,CAAC;YACD,OAAO,CAAC,cAAc,GAAG,IAAI,CAAA;YAC7B,0BAA0B,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;QACrD,CAAC,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,GAAG,KAAK,CAAA;QACpB,OAAO,CAAC,cAAc,GAAG,KAAK,CAAA;QAC9B,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,KAAK,CAAC,IAAI,uBAAuB,CAAA;QAC1E,cAAc,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAA;QAC5C,OAAO,KAAK,CAAA;IACd,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,oBAAoB,CAAC,MAAe;IAC3C,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,SAAS,CAAA;IAC7D,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAA;IAC7C,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC3D,IAAI,MAAM,YAAY,UAAU;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC7E,OAAO,MAAM,CAAC,MAAM,CAAC,CAAA;AACvB,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC3C,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvC,MAAM,IAAI,GAAI,KAA4B,CAAC,IAAI,CAAA;QAC/C,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAA;IAC3C,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,eAAe,CAAC,WAAoB,EAAE,MAAe;IAC5D,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAA;IAC7D,IAAI,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,QAAQ,IAAI,WAAW,EAAE,CAAC;QAC9E,OAAO,oBAAoB,CAAE,WAAoC,CAAC,MAAM,CAAC,CAAA;IAC3E,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAe;IACxC,MAAM,GAAG,GAAG,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IAC9C,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAA;IAC1B,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IAC3B,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,IAAI,CAAC;QAAE,OAAO,OAAO,GAAG,IAAI,CAAA;IACnE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC5B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;IAC9D,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,cAAc,CAAC,IAAsB;IAC5C,MAAM,WAAW,GAAG,uBAAuB,EAAE,CAAA;IAC7C,MAAM,OAAO,GAAG,WAAW,CAAC,YAAY,CAAC;QACvC,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,QAAQ,EAAE,IAAI,CAAC,aAAa;KAC7B,CAAC,CAAA;IACF,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QAChB,WAAW,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAC7C,IAAI,CACF,IAAI,EACJ,cAAc,CAAC;YACb,IAAI,EAAE,OAAO,CAAC,MAAM;YACpB,KAAK,EAAE,WAAW;YAClB,OAAO,EAAE,gDAAgD,OAAO,CAAC,MAAM,EAAE;YACzE,gBAAgB,EAAE,IAAI;YACtB,eAAe,EAAE,OAAO,CAAC,MAAM,KAAK,kBAAkB;SACvD,CAAC,EACF,IAAI,CACL,CAAA;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IACD,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,MAAM,CAAA;IACnC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAA;IAC5B,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,OAAO,CAAC,IAAsB;IACrC,2FAA2F;IAC3F,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;QAChD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;YAAE,OAAM;IACnC,CAAC;IACD,MAAM,UAAU,GAAG,EAAE,IAAI,CAAC,UAAU,CAAA;IACpC,IAAI,CAAC,cAAc,GAAG,EAAE,CAAA;IACxB,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAC3B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAA;IACtB,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAC7B,MAAM,YAAY,GAAG,UAAU,CAAC,GAAG,EAAE;QACnC,IAAI,UAAU,KAAK,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,EAAE,EAAE,UAAU,KAAK,UAAU,CAAC,IAAI;YAAE,OAAM;QACrF,IAAI,CAAC,aAAa,GAAG,IAAI,CAAA;QACzB,IAAI,CAAC,eAAe,GAAG,sBAAsB,CAAA;QAC7C,mBAAmB,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;QACnF,gBAAgB,CAAC,IAAI,CAAC,CAAA;IACxB,CAAC,EAAE,eAAe,CAAC,gBAAgB,CAAC,CAAA;IACpC,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC,CAAA;IAE5C,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,IAAI,UAAU,KAAK,IAAI,CAAC,UAAU;YAAE,OAAM;QAC1C,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QAC7B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;QACxB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAChC,mBAAmB,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;QAC5C,WAAW,CAAC,IAAI,CAAC,CAAA;IACnB,CAAC,CAAA;IAED,MAAM,aAAa,GAAG,CAAC,QAAiB,EAAE,EAAE;QAC1C,IAAI,UAAU,KAAK,IAAI,CAAC,UAAU;YAAE,OAAM;QAC1C,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,EAAE,yBAAyB,CAAC,CAAA;QAClE,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;YAC1B,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;QACpD,CAAC;QACD,IAAI,CAAC,uBAAuB,GAAG,WAAW,CAAC,QAAQ,EAAE,2BAA2B,CAAC,KAAK,SAAS,CAAA;QAC/F,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAA;QAC7D,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAA;IAC/D,CAAC,CAAA;IAED,MAAM,aAAa,GAAG,CAAC,IAAa,EAAE,QAAkB,EAAE,EAAE;QAC1D,IAAI,UAAU,KAAK,IAAI,CAAC,UAAU;YAAE,OAAM;QAC1C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAChC,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,mCAAmC,CAAC,EAAE,IAAI,CAAC,CAAA;YAChE,OAAM;QACR,CAAC;QACD,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;QACrD,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,SAAS,CAAA;QACtC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM;YAAE,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IAC5D,CAAC,CAAA;IAED,MAAM,WAAW,GAAG,CAAC,KAAc,EAAE,EAAE;QACrC,IAAI,UAAU,KAAK,IAAI,CAAC,UAAU;YAAE,OAAM;QAC1C,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,KAAK,CAAC,IAAI,yBAAyB,CAAA;QAC5E,mBAAmB,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAA;QACpE,gBAAgB,CAAC,IAAI,CAAC,CAAA;IACxB,CAAC,CAAA;IAED,MAAM,WAAW,GAAG,CAAC,WAAqB,EAAE,MAAgB,EAAE,EAAE;QAC9D,IAAI,UAAU,KAAK,IAAI,CAAC,UAAU;YAAE,OAAM;QAC1C,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAA;QAC7E,MAAM,gBAAgB,GAAG,eAAe,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;QAC7D,IAAI,gBAAgB,KAAK,SAAS;YAAE,IAAI,CAAC,eAAe,GAAG,gBAAgB,CAAA;aACtE,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,IAAI,aAAa,CAAC,WAAW,CAAC,KAAK,SAAS,EAAE,CAAC;YACxF,IAAI,CAAC,eAAe,GAAG,kCAAkC,CAAA;QAC3D,CAAC;QACD,mBAAmB,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAA;QACpE,gBAAgB,CAAC,IAAI,CAAC,CAAA;IACxB,CAAC,CAAA;IAED,MAAM,wBAAwB,GAAG,CAAC,QAAiB,EAAE,QAAiB,EAAE,EAAE;QACxE,IAAI,UAAU,KAAK,IAAI,CAAC,UAAU;YAAE,OAAM;QAC1C,MAAM,MAAM,GAAG,UAAU,CAAE,QAAiD,EAAE,UAAU,CAAC,CAAA;QACzF,IAAI,MAAM,KAAK,SAAS;YAAE,IAAI,CAAC,aAAa,GAAG,MAAM,CAAA;QACrD,IAAI,CAAC,YAAY,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAA;QAC/C,IAAI,CAAC,eAAe,GAAG,6BAA6B,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;QAC1G,mBAAmB,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAA;QACpE,gBAAgB,CAAC,IAAI,CAAC,CAAA;IACxB,CAAC,CAAA;IAED,MAAM,aAAa,GAAG,oBAAoB,CAAC,aAAa,CAAC,CAAA;IACzD,IAAI,EAAiB,CAAA;IACrB,IAAI,CAAC;QACH,EAAE,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE;YACjC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,iBAAiB,EAAE,IAAI;YACvB,aAAa,CAAC,OAAO;gBACnB,IAAI,aAAa;oBAAE,OAAO,CAAC,EAAE,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;gBACzD,OAAO,CAAC,GAAG,EAAE,EAAE,CAAA;YACjB,CAAC;SACF,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,KAAK,CAAC,IAAI,8BAA8B,CAAA;QACjF,mBAAmB,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAA;QACpE,cAAc,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAA;QAC5C,OAAM;IACR,CAAC;IACD,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;IACZ,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,CAAA;IAC1B,IAAI,aAAa;QAAE,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC,CAAA;IACnD,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC,CAAA;IAChC,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAA;IAC5B,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAA;IAC5B,IAAI,aAAa;QAAE,EAAE,CAAC,EAAE,EAAE,qBAAqB,EAAE,wBAAwB,CAAC,CAAA;IAE1E,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE;QACjB,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,CAAA;QAC3B,IAAI,aAAa;YAAE,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC,CAAA;QACpD,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC,CAAA;QACjC,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAA;QAC7B,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAA;QAC7B,IAAI,aAAa;YAAE,GAAG,CAAC,EAAE,EAAE,qBAAqB,EAAE,wBAAwB,CAAC,CAAA;IAC7E,CAAC,CAAA;IACD,IAAI,EAAE,CAAC,UAAU,KAAK,UAAU,CAAC,IAAI;QAAE,cAAc,CAAC,UAAU,CAAC,CAAA;AACnE,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAsB;IAC9C,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAC7B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;IACxB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;IAC5B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QAC7B,eAAe,CAAC,OAAO,CAAC,CAAA;QACxB,MAAM,CAAC,IAAI,CAAC,CAAA;QACZ,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,aAAa,CAAC,CAAA;QACtC,OAAM;IACR,CAAC;IACD,IAAI,OAAO,CAAC,0BAA0B,EAAE,CAAC;QACvC,iCAAiC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAChD,OAAM;IACR,CAAC;IACD,IAAI,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;QACrD,IAAI,CACF,IAAI,EACJ,cAAc,CAAC;YACb,IAAI,EAAE,oBAAoB;YAC1B,KAAK,EAAE,QAAQ;YACf,OAAO,EAAE,oBAAoB,CAAC,IAAI,EAAE,kCAAkC,CAAC;YACvE,gBAAgB,EAAE,KAAK;SACxB,CAAC,EACF,IAAI,CACL,CAAA;QACD,OAAM;IACR,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,GAAG,eAAe,CAAC,oBAAoB,CAAA;IAC9E,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,CAAC,iBAAiB,EAAE,CAAA;QACxB,IAAI,CAAC,UAAU,EAAE,CAAA;QACjB,OAAO,CAAC,IAAI,GAAG,KAAK,CAAA;QACpB,OAAO,CAAC,cAAc,GAAG,KAAK,CAAA;QAC9B,IAAI,CAAC,cAAc,GAAG,EAAE,CAAA;QACxB,iBAAiB,CAAC,OAAO,CAAC,CAAA;QAC1B,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAA;QACtC,IAAI,CAAC,YAAY,GAAG,SAAS,CAAA;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAA;QACvB,MAAM,CAAC,IAAI,CAAC,CAAA;QACZ,IAAI,CAAC;YACH,OAAO,EAAE,SAAS,EAAE,EAAE,CAAA;QACxB,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;QACV,IAAI,CAAC;YACH,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;QAClC,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;QACV,IAAI,CAAC,EAAE,GAAG,IAAI,CAAA;QACd,IAAI,CAAC,UAAU,GAAG,UAAU,CAC1B,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,UAAU,GAAG,IAAI,CAAA;YACtB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;gBAC7H,OAAM;YACR,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAA;QACf,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC,CACrD,CAAA;QACD,OAAM;IACR,CAAC;IAED,IAAI,CACF,IAAI,EACJ,cAAc,CAAC;QACb,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,oBAAoB,CAAC,IAAI,EAAE,qDAAqD,CAAC;QAC1F,gBAAgB,EAAE,IAAI;QACtB,eAAe,EAAE,IAAI;QACrB,YAAY,EAAE,IAAI;KACnB,CAAC,EACF,IAAI,CACL,CAAA;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAW;IACnC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,eAAe,CAAC,wBAAwB,GAAG,CAAC,CAAC,CAAC,CAAA;IACzF,OAAO,GAAG,GAAG,eAAe,CAAC,kBAAkB,GAAG,MAAM,CAAA;AAC1D,CAAC;AAED,SAAS,MAAM,CACb,KAAa,EACb,OAA+B,EAC/B,UAA4B,EAAE,EAC9B,IAAI,GAAG,KAAK,EACZ,MAAqB;IAErB,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA;IACnC,MAAM,GAAG,GAAG,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;IACpD,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;IACnC,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;IACtC,MAAM,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAA;IAC9C,MAAM,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IACtB,MAAM,IAAI,GAAqB;QAC7B,EAAE,EAAE,MAAM,gBAAgB,EAAE,EAAE;QAC9B,EAAE,EAAE,IAAI;QACR,KAAK;QACL,OAAO,EAAE,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC;QAC3D,QAAQ,EAAE,GAAG;QACb,SAAS,EAAE,IAAI;QACf,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,QAAQ;QACrB,SAAS;QACT,QAAQ;QACR,MAAM;QACN,cAAc,EAAE,kBAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC;QAClD,IAAI,EAAE,KAAK;QACX,IAAI;QACJ,SAAS,EAAE,KAAK;QAChB,OAAO,EAAE,IAAI;QACb,cAAc,EAAE,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC;QAChD,UAAU,EAAE,CAAC;QACb,iBAAiB,EAAE,CAAC;QACpB,SAAS,EAAE,GAAG;QACd,SAAS,EAAE,gBAAgB,CAAC,GAAG,CAAC;QAChC,cAAc,EAAE,GAAG;QACnB,SAAS,EAAE,IAAI;QACf,YAAY,EAAE,IAAI;QAClB,UAAU,EAAE,IAAI;QAChB,cAAc,EAAE,EAAE;QAClB,MAAM,EAAE,IAAI;QACZ,cAAc,EAAE,IAAI;QACpB,cAAc,EAAE,KAAK;QACrB,cAAc,EAAE,IAAI;QACpB,aAAa,EAAE,MAAM;QACrB,eAAe,EAAE,KAAK;QACtB,SAAS,EAAE,CAAC;QACZ,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;QACnC,aAAa,EAAE,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC;KAC7D,CAAA;IACD,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACzB,uBAAuB,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAA;IAC3C,OAAO,CAAC,IAAI,CAAC,CAAA;IACb,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,UAAU,CAAC,IAAsB,EAAE,GAAW,EAAE,OAAyB,EAAE,GAAW;IAC7F,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAA;IACxD,IAAI,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAA;IAC3B,IAAI,IAAI,CAAC,QAAQ,KAAK,GAAG;QAAE,OAAO,KAAK,CAAA;IACvC,IAAI,IAAI,CAAC,EAAE,EAAE,UAAU,KAAK,UAAU,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,EAAE,UAAU,KAAK,UAAU,CAAC,UAAU;QAAE,OAAO,KAAK,CAAA;IAC1G,IAAI,GAAG,GAAG,IAAI,CAAC,cAAc,GAAG,eAAe,CAAC,YAAY;QAAE,OAAO,KAAK,CAAA;IAC1E,IAAI,GAAG,IAAI,IAAI,CAAC,SAAS;QAAE,OAAO,KAAK,CAAA;IACvC,IAAI,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,KAAK,OAAO,CAAC,SAAS;QAAE,OAAO,KAAK,CAAA;IACrG,IAAI,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,KAAK,OAAO,CAAC,KAAK;QAAE,OAAO,KAAK,CAAA;IACrF,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,UAAU,CAAC,GAAW;IAC7B,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,CAAA;AAC1E,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,KAAa,EAAE,OAA+B;IAC3F,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;IACnC,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA;IACnC,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACzC,4FAA4F;IAC5F,IAAI,KAAK,IAAI,IAAI,KAAK,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAM;IAE3E,MAAM,UAAU,GAAG,kBAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IACrD,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,WAAW,IAAI,IAAI,CAAA;IACjE,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,iBAAiB,IAAI,UAAU,CAAA;IAC5E,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,cAAc,CAAC,EAAE,CAAC;QACvC,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK;YAAE,SAAQ;QAClC,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,IAAI,CAAC,cAAc,KAAK,OAAO;YAAE,SAAQ;QAC5E,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;QACrB,IAAI,IAAI,CAAC,IAAI;YAAE,SAAQ;QACvB,MAAM,CAAC,IAAI,CAAC,CAAA;QACZ,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAA;IACzC,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAW;IACrC,mBAAmB,CAAC,GAAG,CAAC,CAAA;IACxB,KAAK,MAAM,SAAS,IAAI,CAAC,GAAG,cAAc,CAAC,EAAE,CAAC;QAC5C,IAAI,SAAS,CAAC,IAAI;YAAE,SAAQ;QAC5B,MAAM,KAAK,GAAG,SAAS,CAAC,EAAE,EAAE,UAAU,CAAA;QACtC,IAAI,KAAK,KAAK,UAAU,CAAC,IAAI,IAAI,KAAK,KAAK,UAAU,CAAC,UAAU;YAAE,SAAQ;QAC1E,MAAM,aAAa,GAAG,GAAG,IAAI,SAAS,CAAC,SAAS,CAAA;QAChD,MAAM,SAAS,GAAG,GAAG,GAAG,SAAS,CAAC,cAAc,GAAG,eAAe,CAAC,YAAY,CAAA;QAC/E,IAAI,CAAC,aAAa,IAAI,CAAC,SAAS;YAAE,SAAQ;QAC1C,0EAA0E;QAC1E,IAAI,aAAa;YAAE,uBAAuB,EAAE,CAAC,gBAAgB,EAAE,CAAA;QAC/D,MAAM,CAAC,SAAS,CAAC,CAAA;QACjB,IAAI,CAAC;YACH,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAA;QACrE,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,IAAwB,EAAE,OAAe;IAC1D,uBAAuB,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;IACjD,MAAM,cAAc,CAAC;QACnB,IAAI;QACJ,KAAK,EAAE,WAAW;QAClB,OAAO;QACP,gBAAgB,EAAE,IAAI;QACtB,eAAe,EAAE,IAAI,KAAK,kBAAkB;QAC5C,YAAY,EAAE,IAAI;KACnB,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAa,EAAE,OAA+B,EAAE,OAAyB;IAClG,MAAM,WAAW,GAAG,uBAAuB,EAAE,CAAA;IAC7C,WAAW,CAAC,gBAAgB,EAAE,CAAA;IAC9B,8BAA8B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAE9C,MAAM,GAAG,GAAG,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;IACpD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IACtB,kBAAkB,CAAC,GAAG,CAAC,CAAA;IAEvB,MAAM,aAAa,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC7C,IAAI,aAAa,IAAI,GAAG,GAAG,aAAa,EAAE,CAAC;QACzC,SAAS,CAAC,kBAAkB,EAAE,gDAAgD,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,GAAG,GAAG,CAAC,IAAI,CAAC,CAAA;IACrH,CAAC;IAED,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACpB,SAAS,CAAC,cAAc,EAAE,qDAAqD,CAAC,CAAA;IAClF,CAAC;IAED,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;IACnC,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA;IACnC,MAAM,UAAU,GAAG,kBAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IACrD,IAAI,UAAU,KAAK,qBAAqB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnD,WAAW,CAAC,aAAa,EAAE,CAAA;QAC3B,SAAS,CAAC,YAAY,EAAE,2CAA2C,CAAC,CAAA;IACtE,CAAC;IAED,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAA;IACnF,IAAI,QAAQ,EAAE,CAAC;QACb,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QAC9B,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAA;QACzB,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAA;QACpB,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAA;QACrB,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAA;QAC1B,QAAQ,CAAC,SAAS,IAAI,CAAC,CAAA;QACvB,WAAW,CAAC,kBAAkB,EAAE,CAAA;QAChC,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,MAAM,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAC7C,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;IACtC,MAAM,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAA;IAC9C,MAAM,QAAQ,GAAG,WAAW,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;IACrF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,6CAA6C,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;IAC5F,CAAC;IAED,MAAM,OAAO,GAAG,WAAW,CAAC,YAAY,CAAC;QACvC,MAAM,EAAE,QAAQ;QAChB,QAAQ;QACR,MAAM;QACN,SAAS;QACT,QAAQ,EAAE,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC;KACxD,CAAC,CAAA;IACF,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QAChB,WAAW,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAA;QAClD,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,8CAA8C,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;IAC3F,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;IACnE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAChB,IAAI,CAAC,SAAS,IAAI,CAAC,CAAA;IACnB,WAAW,CAAC,kBAAkB,EAAE,CAAA;IAChC,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,KAAa,EACb,OAA+B,EAC/B,OAAyB,EACzB,OAAqB;IAErB,OAAO,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;AACnD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,KAAa,EAAE,OAA+B;IACjF,MAAM,WAAW,GAAG,uBAAuB,EAAE,CAAA;IAC7C,WAAW,CAAC,kBAAkB,EAAE,CAAA;IAChC,8BAA8B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAC9C,MAAM,GAAG,GAAG,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CAAA;IAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IACtB,kBAAkB,CAAC,GAAG,CAAC,CAAA;IACvB,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAClC,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,QAAQ,KAAK,GAAG;QACrB,CAAC,IAAI,CAAC,IAAI;QACV,CAAC,IAAI,CAAC,SAAS;QACf,aAAa,CAAC,IAAI,CAAC;QACnB,CAAC,IAAI,CAAC,EAAE,EAAE,UAAU,KAAK,UAAU,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,EAAE,UAAU,KAAK,UAAU,CAAC,UAAU,CAAC,CAC7F,CAAA;IACD,IAAI,QAAQ,EAAE,CAAC;QACb,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAA;QACpB,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QAC9B,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAA;QACzB,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,MAAM,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAC7C,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;IACtC,MAAM,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAA;IAC9C,MAAM,QAAQ,GAAG,WAAW,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;IACtF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,WAAW,CAAC,mBAAmB,EAAE,CAAA;QACjC,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,MAAM,OAAO,GAAG,WAAW,CAAC,YAAY,CAAC;QACvC,MAAM,EAAE,SAAS;QACjB,QAAQ;QACR,MAAM;QACN,SAAS;QACT,QAAQ,EAAE,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC;KACxD,CAAC,CAAA;IACF,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QAChB,WAAW,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAA;QAClD,WAAW,CAAC,mBAAmB,EAAE,CAAA;QACjC,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,OAAO,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;AACzD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,YAAiD,GAAG,EAAE,CAAC,IAAI,EAAE,OAAO,GAAG,kBAAkB;IACxH,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,cAAc,CAAC,EAAE,CAAC;QACvC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAAE,SAAQ;QAC9B,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAA;IACtC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,UAAU,YAAY,EAAE,EAAE,CAAA;AACnC,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,OAAO,UAAU,YAAY,EAAE,EAAE,CAAA;AACnC,CAAC;AAED,MAAM,UAAU,kCAAkC;IAChD,6BAA6B,CAAC;QAC5B,iBAAiB,EAAE,eAAe,CAAC,iBAAiB;QACpD,qBAAqB,EAAE,eAAe,CAAC,qBAAqB;QAC5D,oBAAoB,EAAE,eAAe,CAAC,oBAAoB;QAC1D,aAAa,EAAE,eAAe,CAAC,aAAa;QAC5C,oBAAoB,EAAE,eAAe,CAAC,oBAAoB;QAC1D,oBAAoB,EAAE,eAAe,CAAC,oBAAoB;QAC1D,wBAAwB,EAAE,eAAe,CAAC,wBAAwB;QAClE,yBAAyB,EAAE,eAAe,CAAC,yBAAyB;QACpE,uBAAuB,EAAE,eAAe,CAAC,uBAAuB;QAChE,wBAAwB,EAAE,eAAe,CAAC,wBAAwB;QAClE,oBAAoB,EAAE,eAAe,CAAC,oBAAoB;QAC1D,sBAAsB,EAAE,eAAe,CAAC,sBAAsB;QAC9D,kBAAkB,EAAE,eAAe,CAAC,kBAAkB;QACtD,WAAW,EAAE,eAAe,CAAC,eAAe;QAC5C,cAAc,EAAE,eAAe,CAAC,SAAS;QACzC,KAAK,EAAE,eAAe,CAAC,SAAS;QAChC,OAAO,EAAE,sBAAsB,CAAC;YAC9B,QAAQ,EAAE,eAAe,CAAC,eAAe;YACzC,UAAU,EAAE,eAAe,CAAC,iBAAiB;YAC7C,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,mBAAmB,GAAG,GAAG,CAAC;YACrE,MAAM,EAAE,eAAe,CAAC,aAAa;YACrC,QAAQ,EAAE,eAAe,CAAC,eAAe;YACzC,iBAAiB,EAAE,eAAe,CAAC,wBAAwB;YAC3D,UAAU,EAAE,eAAe,CAAC,iBAAiB;YAC7C,OAAO,EAAE,eAAe,CAAC,cAAc;SACxC,CAAC;KACH,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,8BAA8B;IAC5C,OAAO,uBAAuB,EAAE,CAAC,QAAQ,EAAE,CAAA;AAC7C,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,cAAc,CAAC,EAAE,CAAC;QACvC,IAAI,CAAC;YACH,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,CAAA;QACxB,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;QACV,IAAI,CAAC;YACH,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,YAAY,CAAC,CAAA;QACpC,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;QACV,MAAM,CAAC,IAAI,CAAC,CAAA;IACd,CAAC;IACD,kBAAkB,CAAC,KAAK,EAAE,CAAA;IAC1B,uBAAuB,CAAC,KAAK,EAAE,CAAA;IAC/B,cAAc,CAAC,KAAK,EAAE,CAAA;IACtB,aAAa,CAAC,KAAK,EAAE,CAAA;IACrB,YAAY,GAAG,CAAC,CAAA;IAChB,mCAAmC,EAAE,CAAA;IACrC,kCAAkC,EAAE,CAAA;AACtC,CAAC;AAED,MAAM,UAAU,iCAAiC,CAAC,IAA0B;IAC1E,aAAa,GAAG,IAAI,CAAA;AACtB,CAAC;AAED,MAAM,UAAU,mCAAmC;IACjD,aAAa,GAAG,+BAA+B,EAAE,CAAA;AACnD,CAAC;AAED,sDAAsD;AACtD,kCAAkC,EAAE,CAAA"} | ||
| {"version":3,"file":"pool.js","sourceRoot":"","sources":["../../src/transport/pool.ts"],"names":[],"mappings":"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"} |
+1
-1
| { | ||
| "name": "openai-ws-opencode", | ||
| "version": "0.1.28", | ||
| "version": "0.1.29", | ||
| "description": "OpenCode plugin for OpenAI Responses WebSocket transport.", | ||
@@ -5,0 +5,0 @@ "type": "module", |
+1
-1
@@ -124,3 +124,3 @@ # openai-ws-opencode | ||
| bun run typecheck | ||
| bun test | ||
| bun run test | ||
| bun run build | ||
@@ -127,0 +127,0 @@ npm pack --dry-run |
AI-detected potential code anomaly
Supply chain riskAI has identified unusual behaviors that may pose a security risk.
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
AI-detected potential code anomaly
Supply chain riskAI has identified unusual behaviors that may pose a security risk.
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
431763
8.9%6042
8.49%