@hilbras/omnihilbras 1.71.1 → 1.75.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/claude-code.d.ts +165 -0
- package/dist/adapters/claude-code.d.ts.map +1 -0
- package/dist/adapters/claude-code.js +517 -0
- package/dist/adapters/claude-code.js.map +1 -0
- package/dist/adapters/cline.d.ts +37 -2
- package/dist/adapters/cline.d.ts.map +1 -1
- package/dist/adapters/cline.js +66 -3
- package/dist/adapters/cline.js.map +1 -1
- package/dist/adapters/tokenharbor-web.d.ts +201 -0
- package/dist/adapters/tokenharbor-web.d.ts.map +1 -0
- package/dist/adapters/tokenharbor-web.js +619 -0
- package/dist/adapters/tokenharbor-web.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/adapters/cline.js
CHANGED
|
@@ -35,7 +35,7 @@ export const CLINE_OAUTH = {
|
|
|
35
35
|
};
|
|
36
36
|
const defaultRefreshSkewMs = 60_000;
|
|
37
37
|
/** Reported to Cline as this client's version. */
|
|
38
|
-
const omnihilbrasVersion = '1.
|
|
38
|
+
const omnihilbrasVersion = '1.75.1';
|
|
39
39
|
/** Cline only accepts WorkOS JWTs with an explicit prefix. */
|
|
40
40
|
export function toClineAccessToken(token) {
|
|
41
41
|
const trimmed = token.trim();
|
|
@@ -85,8 +85,11 @@ export function clineHeaders(token, extra = {}, userAgent = 'omnihilbras') {
|
|
|
85
85
|
};
|
|
86
86
|
}
|
|
87
87
|
/**
|
|
88
|
-
* Builds the Cline sign-in URL.
|
|
89
|
-
*
|
|
88
|
+
* Builds the Cline sign-in URL.
|
|
89
|
+
*
|
|
90
|
+
* `state` is sent, and it is the strongest cross-check *if it comes back*. Cline replaces it with a
|
|
91
|
+
* blob of its own — see `clineStateMatchesCallback` — so the loopback session id in the path is what
|
|
92
|
+
* actually correlates the callback, and `state` narrows it when Cline hands one back.
|
|
90
93
|
*/
|
|
91
94
|
export function buildClineAuthorizeUrl(redirectUri, state, authorizeUrl = CLINE_OAUTH.authorizeUrl) {
|
|
92
95
|
const url = new URL(authorizeUrl);
|
|
@@ -97,6 +100,66 @@ export function buildClineAuthorizeUrl(redirectUri, state, authorizeUrl = CLINE_
|
|
|
97
100
|
url.searchParams.set('state', state);
|
|
98
101
|
return url.toString();
|
|
99
102
|
}
|
|
103
|
+
/**
|
|
104
|
+
* Decodes the `callback_url` Cline recorded in the blob it signs at authorize time.
|
|
105
|
+
*
|
|
106
|
+
* Cline's blob is base64url of a flat JSON object followed by binary signature bytes,
|
|
107
|
+
* so only the leading object is readable and only the `callback_url` in it is of use.
|
|
108
|
+
* Returns nothing for anything that is not that shape — an unrecognised blob is not a
|
|
109
|
+
* failure here, it is simply a value this cannot vouch for.
|
|
110
|
+
*/
|
|
111
|
+
export function clineStateCallbackUrl(state) {
|
|
112
|
+
let text;
|
|
113
|
+
try {
|
|
114
|
+
const padded = state.padEnd(state.length + ((4 - (state.length % 4)) % 4), '=');
|
|
115
|
+
text = Buffer.from(padded.replace(/-/g, '+').replace(/_/g, '/'), 'base64').toString('utf8');
|
|
116
|
+
}
|
|
117
|
+
catch {
|
|
118
|
+
return undefined;
|
|
119
|
+
}
|
|
120
|
+
// The JSON is flat and holds no nested braces, so the first `}` closes it and the
|
|
121
|
+
// signature bytes after it are not part of the object.
|
|
122
|
+
const end = text.indexOf('}');
|
|
123
|
+
if (end < 0)
|
|
124
|
+
return undefined;
|
|
125
|
+
let blob;
|
|
126
|
+
try {
|
|
127
|
+
blob = JSON.parse(text.slice(0, end + 1));
|
|
128
|
+
}
|
|
129
|
+
catch {
|
|
130
|
+
return undefined;
|
|
131
|
+
}
|
|
132
|
+
return typeof blob.callback_url === 'string' ? blob.callback_url : undefined;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Whether a callback's `state` can be trusted to belong to this sign-in.
|
|
136
|
+
*
|
|
137
|
+
* Cline replaces the caller's `state` rather than echoing it. Verified against
|
|
138
|
+
* `api.cline.bot`: the blob on its authorize redirect decodes to
|
|
139
|
+
* `{"client_type":"extension","callback_url":"<our loopback callback>"}` plus a
|
|
140
|
+
* signature, with nothing of the value we sent. A check that demanded our exact
|
|
141
|
+
* `state` therefore rejected every callback Cline actually produced, and the sign-in
|
|
142
|
+
* could never complete.
|
|
143
|
+
*
|
|
144
|
+
* So three shapes are accepted, and they are not equally strong:
|
|
145
|
+
*
|
|
146
|
+
* - **our own `state`**, echoed verbatim — the full guarantee it was sent for;
|
|
147
|
+
* - **Cline's blob naming this exact `callback_url`** — not our value, but it could
|
|
148
|
+
* only have been minted by Cline's authorize endpoint for *this* sign-in, so it
|
|
149
|
+
* still ties the callback to the session;
|
|
150
|
+
* - **nothing at all** — a provider that echoes nothing cannot be cross-checked. The
|
|
151
|
+
* correlation rests entirely on the unguessable session id in the loopback path,
|
|
152
|
+
* which is the same guarantee the flow already relied on before `state` existed.
|
|
153
|
+
*
|
|
154
|
+
* Anything else is refused.
|
|
155
|
+
*/
|
|
156
|
+
export function clineStateMatchesCallback(state, ours, redirectUri) {
|
|
157
|
+
if (state === undefined)
|
|
158
|
+
return true;
|
|
159
|
+
if (ours !== undefined && state === ours)
|
|
160
|
+
return true;
|
|
161
|
+
return clineStateCallbackUrl(state) === redirectUri;
|
|
162
|
+
}
|
|
100
163
|
/**
|
|
101
164
|
* Cline sometimes returns the tokens base64-encoded inside the `code` instead
|
|
102
165
|
* of a bare authorization code, so both shapes are accepted.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cline.js","sourceRoot":"","sources":["../../src/adapters/cline.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cline.js","sourceRoot":"","sources":["../../src/adapters/cline.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
import type { ChatMessage, ChatRequest, ChatResponse, CredentialValidation, Model, ProviderAdapter, ProviderCredential, ProviderHealth, ProviderId, ProviderRequestContext } from '../types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Token Harbor Web — the chat application at tokenharbor.ai, driven by the Supabase session
|
|
4
|
+
* cookie a signed-in browser already holds.
|
|
5
|
+
*
|
|
6
|
+
* ## Read this before building on it
|
|
7
|
+
*
|
|
8
|
+
* Token Harbor's terms **prohibit** what this adapter does. Their product is itself a gateway,
|
|
9
|
+
* and the metered API key is its architectural guardrail; driving the web chat with a harvested
|
|
10
|
+
* session cookie routes around that guardrail. The two clauses that name it:
|
|
11
|
+
*
|
|
12
|
+
* > **Proxy Reselling:** Utilize the Service to construct a direct, white-labeled proxy
|
|
13
|
+
* > alternative to Token Harbor without adding substantive unique value or without prior written
|
|
14
|
+
* > enterprise authorization.
|
|
15
|
+
* >
|
|
16
|
+
* > ...designed to compromise the security, stability, or **architectural guardrails of the
|
|
17
|
+
* > Token Harbor gateway**.
|
|
18
|
+
*
|
|
19
|
+
* There is a legitimate path — `https://tokenharbor.ai/v1` with a Bearer key, OpenAI-compatible,
|
|
20
|
+
* documented, and free on the `:free` models — and it is the card beside this one. This adapter
|
|
21
|
+
* exists because the operator asked for the session-cookie route with that trade stated, and it
|
|
22
|
+
* carries the same warning in the dashboard catalog (`riskSeverity: 'high'`) so a user meets it
|
|
23
|
+
* before pasting a credential. It is the same shape as the Kiro notice: the vendor's terms and
|
|
24
|
+
* the gateway's behaviour are both on the card, and using it is the user's decision to make.
|
|
25
|
+
*
|
|
26
|
+
* ## What the credential is
|
|
27
|
+
*
|
|
28
|
+
* Auth is Supabase (`auth.tokenharbor.ai`), so the browser cookie is `sb-<ref>-auth-token`,
|
|
29
|
+
* where `<ref>` is the first label of the Supabase host — `auth`, giving `sb-auth-auth-token`.
|
|
30
|
+
* Above Supabase's size limit the value is split into `sb-...-auth-token.0`, `.1`, ... and the
|
|
31
|
+
* chunks are reassembled in order. It is written with `document.cookie`, so unlike ChatGPT Web's
|
|
32
|
+
* `HttpOnly` session it can be read from the Application panel or the Network tab's Cookie
|
|
33
|
+
* header — which is why the guide offers both.
|
|
34
|
+
*
|
|
35
|
+
* ## The wire format is not OpenAI's, and that is the whole adapter
|
|
36
|
+
*
|
|
37
|
+
* A turn is two requests and a decode:
|
|
38
|
+
*
|
|
39
|
+
* 1. `POST /api/direct-chat/sessions` with `{ model, temporary: true }` → `{ session: { id } }`.
|
|
40
|
+
* `temporary` is sent so a stateless gateway does not litter the user's sidebar with a
|
|
41
|
+
* conversation per request.
|
|
42
|
+
* 2. `POST /api/direct-chat/stream` with `{ sessionId, content, model, webSearch, tz }` → an SSE
|
|
43
|
+
* body whose events are **named**, not OpenAI's `choices[].delta`:
|
|
44
|
+
* `chunk` (the answer text in `delta`), `thinking` (reasoning in `delta`), `tool_use`,
|
|
45
|
+
* `citation`, `image`, `file`, `miniapp`, and `done`. `error` carries `{ code, message }`.
|
|
46
|
+
*
|
|
47
|
+
* Only `chunk`, `thinking`, `done` and `error` are consumed. The others are attachments and
|
|
48
|
+
* citations for a UI, and inventing an OpenAI shape for them here would be guessing at a
|
|
49
|
+
* contract this adapter cannot test without the session.
|
|
50
|
+
*
|
|
51
|
+
* ## What is not claimed
|
|
52
|
+
*
|
|
53
|
+
* `capabilities.streaming` is false and no `streamChat` is implemented: the transport is SSE,
|
|
54
|
+
* but the gateway consumes the whole body and returns one completion. A streaming surface would
|
|
55
|
+
* need the chunk boundary semantics verified against a live session first.
|
|
56
|
+
*
|
|
57
|
+
* `healthCheck` reports `verified: 'credential'`. It reads `/api/me/profile`, which proves the
|
|
58
|
+
* session cookie is accepted and nothing more — the same distinction the type exists to force.
|
|
59
|
+
*/
|
|
60
|
+
export declare const tokenHarborWebProviderId: ProviderId;
|
|
61
|
+
export declare const TOKENHARBOR_WEB: {
|
|
62
|
+
readonly origin: "https://tokenharbor.ai";
|
|
63
|
+
readonly apiBase: "https://tokenharbor.ai/api";
|
|
64
|
+
readonly profileUrl: "https://tokenharbor.ai/api/me/profile";
|
|
65
|
+
readonly sessionsUrl: "https://tokenharbor.ai/api/direct-chat/sessions";
|
|
66
|
+
readonly streamUrl: "https://tokenharbor.ai/api/direct-chat/stream";
|
|
67
|
+
readonly cookiePrefix: "sb-auth-auth-token";
|
|
68
|
+
readonly defaultModel: "th-rudder:free";
|
|
69
|
+
/** The page a user signs in on and copies the cookie from. */
|
|
70
|
+
readonly signInUrl: "https://tokenharbor.ai/login";
|
|
71
|
+
};
|
|
72
|
+
/**
|
|
73
|
+
* The catalog, read from `https://tokenharbor.ai/models` on 2026-10-07.
|
|
74
|
+
*
|
|
75
|
+
* A dated snapshot rather than a promise: the page is the live list and this is what it showed.
|
|
76
|
+
* Prices are per 1M tokens, which is the unit the SDK normalises to and the unit the page itself
|
|
77
|
+
* prints. The two `:free` ids are the ones that bill nothing.
|
|
78
|
+
*
|
|
79
|
+
* No context window is claimed because the page publishes none.
|
|
80
|
+
*/
|
|
81
|
+
export declare const TOKENHARBOR_WEB_MODELS: ReadonlyArray<{
|
|
82
|
+
id: string;
|
|
83
|
+
label: string;
|
|
84
|
+
family: string;
|
|
85
|
+
inputPer1M: number;
|
|
86
|
+
outputPer1M: number;
|
|
87
|
+
}>;
|
|
88
|
+
export declare function allTokenHarborWebModels(): string[];
|
|
89
|
+
/**
|
|
90
|
+
* Reads the Supabase session cookie out of whatever the user pasted.
|
|
91
|
+
*
|
|
92
|
+
* Two pastes are accepted, because both are things the guide tells people to copy:
|
|
93
|
+
*
|
|
94
|
+
* - the whole `Cookie:` request header (space for the Cloudflare clearance and the other cookies
|
|
95
|
+
* the SSR layer reads), and
|
|
96
|
+
* - just the `sb-auth-auth-token` value or the `sb-auth-auth-token=...` pair, from the
|
|
97
|
+
* Application panel.
|
|
98
|
+
*
|
|
99
|
+
* The chunks are **joined in numeric order**, which is not the order they appear in a header:
|
|
100
|
+
* a large token is stored as `.0`, `.1`, ... and a header that happens to list `.1` before `.0`
|
|
101
|
+
* would otherwise reassemble to a garbage session that fails later as an unexplained refusal.
|
|
102
|
+
*/
|
|
103
|
+
export declare function parseTokenHarborCookieHeader(raw: string): string;
|
|
104
|
+
/**
|
|
105
|
+
* Decodes the session cookie and reports what is wrong with it, or `undefined` when it is intact.
|
|
106
|
+
*
|
|
107
|
+
* Returns a sentence rather than a boolean because the two failures need different instructions: a
|
|
108
|
+
* value that does not decode is a **truncated paste**, and a value that decodes but carries no
|
|
109
|
+
* access token is a **shape this adapter does not recognise**. "Sign in again" is wrong for the
|
|
110
|
+
* first — the session is fine, the paste was short.
|
|
111
|
+
*/
|
|
112
|
+
export declare function sessionValueProblem(session: string): string | undefined;
|
|
113
|
+
/** The `expires_at` epoch seconds inside the session, when it is one this adapter can read.
|
|
114
|
+
*
|
|
115
|
+
* Accepts either the bare value or a whole Cookie header, because the two callers have different
|
|
116
|
+
* shapes in hand: the parser has the value, the refusal path has the assembled header.
|
|
117
|
+
*/
|
|
118
|
+
export declare function sessionExpiresAt(sessionOrCookie: string): number | undefined;
|
|
119
|
+
export declare function tokenHarborWebCredential(raw: string): ProviderCredential;
|
|
120
|
+
export declare function tokenHarborWebCookieFromCredential(credential: ProviderCredential | undefined): string;
|
|
121
|
+
export declare class TokenHarborWebAdapter implements ProviderAdapter {
|
|
122
|
+
readonly id: string;
|
|
123
|
+
readonly name = "Token Harbor Web";
|
|
124
|
+
readonly capabilities: {
|
|
125
|
+
readonly chat: true;
|
|
126
|
+
readonly models: true;
|
|
127
|
+
};
|
|
128
|
+
private readonly now;
|
|
129
|
+
private readonly fetchImpl;
|
|
130
|
+
constructor(options?: {
|
|
131
|
+
now?: () => number;
|
|
132
|
+
fetch?: typeof fetch;
|
|
133
|
+
});
|
|
134
|
+
/**
|
|
135
|
+
* The dated catalog above, not a request.
|
|
136
|
+
*
|
|
137
|
+
* Token Harbor publishes no public models JSON — the live list is rendered into the `/models`
|
|
138
|
+
* page — so there is nothing to read without a session, and an authenticated read per call
|
|
139
|
+
* would be a cost for a list that changes weekly. The snapshot is what the page showed on the
|
|
140
|
+
* date beside it, and the free-only policy narrows it the way the dialog's checkbox promises.
|
|
141
|
+
*/
|
|
142
|
+
listModels(context?: ProviderRequestContext): Promise<Model[]>;
|
|
143
|
+
/**
|
|
144
|
+
* A real round trip to `/api/me/profile`, which answers `{ ok: false }` with a 401 to a session
|
|
145
|
+
* it does not recognise. That is the cheapest endpoint that proves the cookie is accepted, and
|
|
146
|
+
* it is the whole of what this establishes — see `healthCheck`.
|
|
147
|
+
*/
|
|
148
|
+
validateCredential(credential: ProviderCredential | undefined, context?: ProviderRequestContext): Promise<CredentialValidation>;
|
|
149
|
+
/**
|
|
150
|
+
* `verified: 'credential'` — deliberately.
|
|
151
|
+
*
|
|
152
|
+
* Reading the profile proves the cookie is live; it says nothing about whether a model can
|
|
153
|
+
* answer. Claiming `inference` would need a real turn on every 60-second poll, which is a real
|
|
154
|
+
* request against someone else's service on a timer, and the type exists precisely so this
|
|
155
|
+
* distinction is stated rather than implied.
|
|
156
|
+
*/
|
|
157
|
+
healthCheck(context?: ProviderRequestContext): Promise<ProviderHealth>;
|
|
158
|
+
chat(request: ChatRequest, context?: ProviderRequestContext): Promise<ChatResponse>;
|
|
159
|
+
private createSession;
|
|
160
|
+
private request;
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Flattens the message list into the single `content` string the endpoint takes.
|
|
164
|
+
*
|
|
165
|
+
* Labelled rather than concatenated: a bare join of `["You are terse.", "2+2?"]` loses which was
|
|
166
|
+
* which, and the model then answers as if the instruction were part of the question.
|
|
167
|
+
*/
|
|
168
|
+
export declare function flattenMessages(messages: readonly ChatMessage[]): string;
|
|
169
|
+
/**
|
|
170
|
+
* Reads a completed answer out of Token Harbor's named-event SSE body.
|
|
171
|
+
*
|
|
172
|
+
* The client's own parser is the source of truth for the shapes, and it is not OpenAI's:
|
|
173
|
+
*
|
|
174
|
+
* ```text
|
|
175
|
+
* event: chunk
|
|
176
|
+
* data: {"delta":"working"}
|
|
177
|
+
*
|
|
178
|
+
* event: thinking
|
|
179
|
+
* data: {"delta":"..."}
|
|
180
|
+
*
|
|
181
|
+
* event: done
|
|
182
|
+
* data: {}
|
|
183
|
+
* ```
|
|
184
|
+
*
|
|
185
|
+
* `chunk` is the answer text and `thinking` is the reasoning, split into their own events — so a
|
|
186
|
+
* model that thinks before answering does not have its reasoning read as the reply. `error`
|
|
187
|
+
* carries `{ code, message }` and is returned rather than thrown so the caller can name the code.
|
|
188
|
+
*
|
|
189
|
+
* **`done` is what makes a truncated body detectable.** A stream that closes without it was cut
|
|
190
|
+
* off, and the caller reports that instead of handing back half an answer labelled complete.
|
|
191
|
+
*/
|
|
192
|
+
export declare function decodeTokenHarborStream(body: string): {
|
|
193
|
+
content: string;
|
|
194
|
+
reasoning: string;
|
|
195
|
+
finished: boolean;
|
|
196
|
+
error?: {
|
|
197
|
+
code: string;
|
|
198
|
+
message: string;
|
|
199
|
+
};
|
|
200
|
+
};
|
|
201
|
+
//# sourceMappingURL=tokenharbor-web.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokenharbor-web.d.ts","sourceRoot":"","sources":["../../src/adapters/tokenharbor-web.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,oBAAoB,EAAgB,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,cAAc,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAE9M;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AAEH,eAAO,MAAM,wBAAwB,EAAE,UAA8B,CAAC;AA6BtE,eAAO,MAAM,eAAe;;;;;;;;IAQ1B,8DAA8D;;CAEtD,CAAC;AAEX;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,EAAE,aAAa,CAAC;IACjD,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB,CAuBA,CAAC;AAEF,wBAAgB,uBAAuB,IAAI,MAAM,EAAE,CAElD;AAgBD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CA2EhE;AAwBD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAuBvE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAW5E;AAUD,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAExE;AAED,wBAAgB,kCAAkC,CAAC,UAAU,EAAE,kBAAkB,GAAG,SAAS,GAAG,MAAM,CAOrG;AA2BD,qBAAa,qBAAsB,YAAW,eAAe;IAC3D,QAAQ,CAAC,EAAE,SAA4B;IACvC,QAAQ,CAAC,IAAI,sBAAsB;IACnC,QAAQ,CAAC,YAAY;;;MAAyC;IAE9D,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;IACnC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;gBAE7B,OAAO,GAAE;QAAE,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAA;KAAO;IAKtE;;;;;;;OAOG;IACH,UAAU,CAAC,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAalE;;;;OAIG;IACG,kBAAkB,CAAC,UAAU,EAAE,kBAAkB,GAAG,SAAS,EAAE,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAQzI;;;;;;;OAOG;IACG,WAAW,CAAC,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC,cAAc,CAAC;IAc1E,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC,YAAY,CAAC;YAkE/E,aAAa;IAgB3B,OAAO,CAAC,OAAO;CAYhB;AAsBD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,GAAG,MAAM,CAYxE;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAyC1J"}
|