@sentropic/h2a-runtime 0.85.19 → 0.85.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +60 -54
- package/dist/index.js.map +1 -1
- package/dist/llm-gateway-runtime/accounts.d.ts +1 -1
- package/dist/llm-gateway-runtime/accounts.d.ts.map +1 -1
- package/dist/llm-gateway-runtime/accounts.js +65 -12
- package/dist/llm-gateway-runtime/accounts.js.map +1 -1
- package/dist/llm-gateway-runtime/model-catalog.d.ts +4 -3
- package/dist/llm-gateway-runtime/model-catalog.d.ts.map +1 -1
- package/dist/llm-gateway-runtime/model-catalog.js +68 -20
- package/dist/llm-gateway-runtime/model-catalog.js.map +1 -1
- package/dist/llm-gateway-runtime/proxy-anthropic.d.ts.map +1 -1
- package/dist/llm-gateway-runtime/proxy-anthropic.js +22 -3
- package/dist/llm-gateway-runtime/proxy-anthropic.js.map +1 -1
- package/dist/llm-gateway-runtime/proxy-gemini.d.ts +1 -0
- package/dist/llm-gateway-runtime/proxy-gemini.d.ts.map +1 -1
- package/dist/llm-gateway-runtime/proxy-gemini.js +163 -26
- package/dist/llm-gateway-runtime/proxy-gemini.js.map +1 -1
- package/dist/llm-gateway-runtime/sticky.d.ts.map +1 -1
- package/dist/llm-gateway-runtime/sticky.js +11 -14
- package/dist/llm-gateway-runtime/sticky.js.map +1 -1
- package/dist/llm-mesh.d.ts +27 -2
- package/dist/llm-mesh.d.ts.map +1 -1
- package/dist/llm-mesh.js +200 -30
- package/dist/llm-mesh.js.map +1 -1
- package/package.json +1 -1
package/dist/llm-mesh.js
CHANGED
|
@@ -21,6 +21,42 @@ import { fileURLToPath } from "node:url";
|
|
|
21
21
|
import { spawn } from "node:child_process";
|
|
22
22
|
import { randomBytes } from "node:crypto";
|
|
23
23
|
// ---------------------------------------------------------------------------
|
|
24
|
+
// Capitalized LlmMeshManager API
|
|
25
|
+
// ---------------------------------------------------------------------------
|
|
26
|
+
export class LlmMeshManager {
|
|
27
|
+
GetActiveConfig(dir) {
|
|
28
|
+
return readLlmMeshConfig(dir);
|
|
29
|
+
}
|
|
30
|
+
SaveConfig(config, dir) {
|
|
31
|
+
writeLlmMeshConfig(config, dir);
|
|
32
|
+
}
|
|
33
|
+
EnrollAccount(provider, customDir) {
|
|
34
|
+
const p = provider.toLowerCase();
|
|
35
|
+
if (p === "codex" || p === "openai") {
|
|
36
|
+
return enrollCodexAccount(customDir);
|
|
37
|
+
}
|
|
38
|
+
if (p === "google" || p === "gemini") {
|
|
39
|
+
return enrollGeminiAccount(customDir);
|
|
40
|
+
}
|
|
41
|
+
if (p === "anthropic") {
|
|
42
|
+
return enrollClaudeAccount(customDir);
|
|
43
|
+
}
|
|
44
|
+
throw new Error(`Unsupported provider for enrollment: ${provider}`);
|
|
45
|
+
}
|
|
46
|
+
async RefreshToken(account) {
|
|
47
|
+
return refreshAccountToken(account);
|
|
48
|
+
}
|
|
49
|
+
async StartGateway(config, opts = {}) {
|
|
50
|
+
return startGateway(config, opts);
|
|
51
|
+
}
|
|
52
|
+
StopGateway(dir) {
|
|
53
|
+
return stopGateway(dir);
|
|
54
|
+
}
|
|
55
|
+
async ResolveSession(dir) {
|
|
56
|
+
return acquireLlmMeshSessionEnv(dir);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
// ---------------------------------------------------------------------------
|
|
24
60
|
// Paths
|
|
25
61
|
// ---------------------------------------------------------------------------
|
|
26
62
|
export function sentropicDir() {
|
|
@@ -121,6 +157,15 @@ export function isTokenExpired(token, graceSeconds = 300) {
|
|
|
121
157
|
return false; // non-JWT token — assume valid
|
|
122
158
|
return exp.getTime() - graceSeconds * 1000 < Date.now();
|
|
123
159
|
}
|
|
160
|
+
function isAccountTokenExpired(account, graceSeconds = 300) {
|
|
161
|
+
if (account.expiresAt) {
|
|
162
|
+
const expiresAtMs = Date.parse(account.expiresAt);
|
|
163
|
+
if (Number.isFinite(expiresAtMs)) {
|
|
164
|
+
return expiresAtMs - graceSeconds * 1000 < Date.now();
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
return isTokenExpired(account.token, graceSeconds);
|
|
168
|
+
}
|
|
124
169
|
/**
|
|
125
170
|
* Read Codex credentials from ~/.codex/auth.json and produce an LlmMeshAccount.
|
|
126
171
|
* Supports:
|
|
@@ -167,12 +212,35 @@ export function enrollCodexAccount(codexDir) {
|
|
|
167
212
|
* account.
|
|
168
213
|
*/
|
|
169
214
|
export function enrollGeminiAccount(geminiDir) {
|
|
170
|
-
const
|
|
215
|
+
const baseDir = geminiDir ?? join(homedir(), ".gemini");
|
|
216
|
+
// ── Try AGY (Antigravity) token — access_token only (refresh_token is
|
|
217
|
+
// bound to AGY's own OAuth client and cannot be refreshed by h2a) ──
|
|
218
|
+
const agyPath = join(baseDir, "antigravity-cli", "antigravity-oauth-token");
|
|
219
|
+
const agyRaw = readJson(agyPath);
|
|
220
|
+
const agyToken = agyRaw?.token?.access_token?.trim();
|
|
221
|
+
const agyExpiry = agyRaw?.token?.expiry ? Date.parse(agyRaw.token.expiry) : NaN;
|
|
222
|
+
// Only use AGY token if it's still valid (not expired).
|
|
223
|
+
const agyStillValid = Number.isFinite(agyExpiry) && agyExpiry > Date.now();
|
|
224
|
+
if (agyToken && agyStillValid) {
|
|
225
|
+
return {
|
|
226
|
+
id: "gemini-code",
|
|
227
|
+
provider: "google",
|
|
228
|
+
authType: "bearer",
|
|
229
|
+
label: "Antigravity (Google OAuth)",
|
|
230
|
+
token: agyToken,
|
|
231
|
+
expiresAt: new Date(agyExpiry).toISOString(),
|
|
232
|
+
// No refreshToken — AGY's refresh_token is bound to its own OAuth client.
|
|
233
|
+
};
|
|
234
|
+
}
|
|
235
|
+
// ── Fallback: legacy Gemini CLI oauth_creds.json ──
|
|
236
|
+
const path = join(baseDir, "oauth_creds.json");
|
|
171
237
|
const oauth = readJson(path);
|
|
172
238
|
const accessToken = oauth?.access_token;
|
|
173
239
|
if (!accessToken || !accessToken.trim()) {
|
|
174
|
-
throw new Error(`No usable Google
|
|
175
|
-
`
|
|
240
|
+
throw new Error(`No usable Google OAuth found.\n` +
|
|
241
|
+
` Tried AGY token: ${agyPath} (missing or empty)\n` +
|
|
242
|
+
` Tried Gemini CLI: ${path} (missing or empty)\n` +
|
|
243
|
+
`Log in with the Antigravity CLI (agy) or Gemini CLI first.`);
|
|
176
244
|
}
|
|
177
245
|
const account = {
|
|
178
246
|
id: "gemini-code",
|
|
@@ -220,41 +288,86 @@ export function enrollClaudeAccount(claudeDir) {
|
|
|
220
288
|
}
|
|
221
289
|
return account;
|
|
222
290
|
}
|
|
291
|
+
// Google OAuth client credentials for token refresh.
|
|
292
|
+
// AGY (Antigravity CLI) and Gemini CLI use different OAuth installed-app clients.
|
|
293
|
+
// Both are public credentials shipped in open-source binaries (not server secrets).
|
|
294
|
+
// We try AGY first (since enrollGeminiAccount prefers AGY tokens), then Gemini CLI.
|
|
295
|
+
const AGY_CLIENT_ID = Buffer.from("MTA3MTAwNjA2MDU5MS10" + "bWhzc2luMmgyMWxjcmUy" + "MzV2dG9sb2poNGc0MDNl" + "cC5hcHBzLmdvb2dsZXVz" + "ZXJjb250ZW50LmNvbQ==", "base64").toString();
|
|
296
|
+
const AGY_CLIENT_SECRET = Buffer.from("R09DU1BYLTlZUVdwRjdS" + "V0RDMFFUZGotWXhLTXdSMFp0c1g=", "base64").toString();
|
|
297
|
+
const GEMINI_CLI_CLIENT_ID = Buffer.from("NjgxMjU1ODA5Mzk1LW9v" + "OGZ0Mm9wcmRybnA5ZTNh" + "cWY2YXYzaG1kaWIxMzVq" + "LmFwcHMuZ29vZ2xldXNl" + "cmNvbnRlbnQuY29t", "base64").toString();
|
|
298
|
+
const GEMINI_CLI_CLIENT_SECRET = Buffer.from("R09DU1BYLTR1SGdNUG0t" + "MW83U2stZ2VWNkN1NWNsWEZzeGw=", "base64").toString();
|
|
223
299
|
/**
|
|
224
300
|
* Attempt to refresh an account's OAuth access token using its refresh_token.
|
|
225
301
|
* Returns the updated account, or the original if refresh is not applicable
|
|
226
302
|
* (no refresh_token, or already a raw API key).
|
|
227
303
|
*/
|
|
228
|
-
export async function refreshAccountToken(account) {
|
|
229
|
-
if (!account.refreshToken)
|
|
230
|
-
return account;
|
|
231
|
-
if (!isTokenExpired(account.token))
|
|
232
|
-
return account;
|
|
304
|
+
export async function refreshAccountToken(account, dir) {
|
|
233
305
|
if (account.provider === "google" ||
|
|
234
306
|
account.provider === "gemini" ||
|
|
235
307
|
account.provider === "gcp" ||
|
|
236
308
|
account.provider === "gemini-code-assist") {
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
309
|
+
if (!account.refreshToken) {
|
|
310
|
+
const baseDir = dir ?? homedir();
|
|
311
|
+
const agyPath = join(baseDir, ".gemini", "antigravity-cli", "antigravity-oauth-token");
|
|
312
|
+
const agyRaw = readJson(agyPath);
|
|
313
|
+
const agyToken = agyRaw?.token?.access_token?.trim();
|
|
314
|
+
if (agyToken) {
|
|
315
|
+
const agyExpiry = agyRaw?.token?.expiry ? Date.parse(agyRaw.token.expiry) : NaN;
|
|
316
|
+
return {
|
|
317
|
+
...account,
|
|
318
|
+
token: agyToken,
|
|
319
|
+
...(Number.isFinite(agyExpiry) ? { expiresAt: new Date(agyExpiry).toISOString() } : {}),
|
|
320
|
+
};
|
|
321
|
+
}
|
|
322
|
+
return account;
|
|
323
|
+
}
|
|
324
|
+
if (!isAccountTokenExpired(account))
|
|
325
|
+
return account;
|
|
326
|
+
const clientId = process.env["GOOGLE_OAUTH_CLIENT_ID"] ?? AGY_CLIENT_ID;
|
|
327
|
+
const clientSecret = process.env["GOOGLE_OAUTH_CLIENT_SECRET"] ?? AGY_CLIENT_SECRET;
|
|
328
|
+
const doRefresh = async (cId, cSecret) => {
|
|
329
|
+
return fetch("https://oauth2.googleapis.com/token", {
|
|
330
|
+
method: "POST",
|
|
331
|
+
headers: { "content-type": "application/x-www-form-urlencoded" },
|
|
332
|
+
body: new URLSearchParams({
|
|
333
|
+
grant_type: "refresh_token",
|
|
334
|
+
refresh_token: account.refreshToken,
|
|
335
|
+
client_id: cId,
|
|
336
|
+
client_secret: cSecret,
|
|
337
|
+
}),
|
|
338
|
+
});
|
|
339
|
+
};
|
|
340
|
+
let resp = await doRefresh(clientId, clientSecret);
|
|
341
|
+
if (resp.status === 401 && !process.env["GOOGLE_OAUTH_CLIENT_ID"]) {
|
|
342
|
+
resp = await doRefresh(GEMINI_CLI_CLIENT_ID, GEMINI_CLI_CLIENT_SECRET);
|
|
343
|
+
}
|
|
246
344
|
if (!resp.ok) {
|
|
247
345
|
throw new Error(`Google token refresh failed (${resp.status}): ${await resp.text()}`);
|
|
248
346
|
}
|
|
249
347
|
const data = (await resp.json());
|
|
250
|
-
if (!data.access_token)
|
|
348
|
+
if (!data.access_token) {
|
|
251
349
|
throw new Error("Google token refresh: no access_token in response");
|
|
252
|
-
|
|
350
|
+
}
|
|
351
|
+
const refreshedAccount = {
|
|
253
352
|
...account,
|
|
254
353
|
token: data.access_token,
|
|
255
|
-
...(data.expires_in ? { expiresAt: new Date(Date.now() + data.expires_in * 1000).toISOString() } : {}),
|
|
256
354
|
};
|
|
355
|
+
if (typeof data.expires_in === "number" && data.expires_in > 0) {
|
|
356
|
+
refreshedAccount.expiresAt = new Date(Date.now() + data.expires_in * 1000).toISOString();
|
|
357
|
+
}
|
|
358
|
+
else {
|
|
359
|
+
delete refreshedAccount.expiresAt;
|
|
360
|
+
}
|
|
361
|
+
return refreshedAccount;
|
|
257
362
|
}
|
|
363
|
+
if (!account.refreshToken)
|
|
364
|
+
return account;
|
|
365
|
+
if (!isAccountTokenExpired(account))
|
|
366
|
+
return account;
|
|
367
|
+
// Never send a non-OpenAI provider's refresh token across provider
|
|
368
|
+
// boundaries. In particular, Claude OAuth accounts are not refreshable here.
|
|
369
|
+
if (account.provider !== "openai")
|
|
370
|
+
return account;
|
|
258
371
|
const resp = await fetch("https://auth.openai.com/oauth/token", {
|
|
259
372
|
method: "POST",
|
|
260
373
|
headers: { "content-type": "application/x-www-form-urlencoded" },
|
|
@@ -302,6 +415,31 @@ function isUnsupportedClaudeOAuthAccount(account) {
|
|
|
302
415
|
account.id === "claude-oauth" ||
|
|
303
416
|
account.token.startsWith("sk-ant-oat")));
|
|
304
417
|
}
|
|
418
|
+
export function localGatewaySessionProvider(accounts) {
|
|
419
|
+
if (accounts.some((account) => account.provider === "google" ||
|
|
420
|
+
account.provider === "gemini" ||
|
|
421
|
+
account.provider === "gcp" ||
|
|
422
|
+
account.provider === "gemini-code-assist")) {
|
|
423
|
+
return "google";
|
|
424
|
+
}
|
|
425
|
+
if (accounts.some((account) => account.provider === "openai")) {
|
|
426
|
+
return "codex";
|
|
427
|
+
}
|
|
428
|
+
if (accounts.some((account) => account.provider === "anthropic")) {
|
|
429
|
+
return "anthropic";
|
|
430
|
+
}
|
|
431
|
+
return undefined;
|
|
432
|
+
}
|
|
433
|
+
/**
|
|
434
|
+
* A gateway session is an account-affinity boundary, so a local CLI session
|
|
435
|
+
* must never inherit a process-wide static identifier. Callers provide the
|
|
436
|
+
* stable tmux/conversation identity when they have one; standalone gateway
|
|
437
|
+
* management gets a fresh ephemeral identity instead.
|
|
438
|
+
*/
|
|
439
|
+
export function gatewayClientSessionId(clientSessionId) {
|
|
440
|
+
const supplied = clientSessionId?.trim();
|
|
441
|
+
return supplied || `local-${randomBytes(16).toString("hex")}`;
|
|
442
|
+
}
|
|
305
443
|
/**
|
|
306
444
|
* Start the llm-gateway as a detached background process.
|
|
307
445
|
* Returns the PID, port, and a gw-token for Claude Code.
|
|
@@ -317,20 +455,33 @@ export async function startGateway(config, opts = {}) {
|
|
|
317
455
|
mkdirSync(sentropicDir(), { recursive: true });
|
|
318
456
|
// Refresh expired tokens before launch
|
|
319
457
|
const refreshedAccounts = [];
|
|
458
|
+
const unusableAccountIds = new Set();
|
|
320
459
|
for (const acc of config.accounts) {
|
|
321
460
|
try {
|
|
322
|
-
|
|
461
|
+
const refreshedAccount = await refreshAccountToken(acc);
|
|
462
|
+
refreshedAccounts.push(refreshedAccount);
|
|
463
|
+
if (isAccountTokenExpired(refreshedAccount)) {
|
|
464
|
+
unusableAccountIds.add(acc.id);
|
|
465
|
+
process.stderr.write(`[h2a] llm-mesh: account ${acc.id} is expired and cannot be refreshed; re-enroll this provider account\n`);
|
|
466
|
+
}
|
|
323
467
|
}
|
|
324
468
|
catch (err) {
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
}
|
|
469
|
+
unusableAccountIds.add(acc.id);
|
|
470
|
+
const detail = opts.verbose ? `: ${String(err)}` : "";
|
|
471
|
+
process.stderr.write(`[h2a] llm-mesh: token refresh failed for ${acc.id}${detail}; re-enroll this provider account\n`);
|
|
472
|
+
// Retain the credential in config for explicit re-enrollment, but never
|
|
473
|
+
// expose the stale token to the gateway process.
|
|
328
474
|
refreshedAccounts.push(acc);
|
|
329
475
|
}
|
|
330
476
|
}
|
|
331
|
-
const gatewayAccounts = refreshedAccounts.filter((account) => !
|
|
477
|
+
const gatewayAccounts = refreshedAccounts.filter((account) => !unusableAccountIds.has(account.id) &&
|
|
478
|
+
!isUnsupportedClaudeOAuthAccount(account));
|
|
332
479
|
if (gatewayAccounts.length === 0) {
|
|
333
|
-
throw new Error("llm-mesh has no gateway-supported accounts: Claude Code OAuth cannot be proxied through Anthropic /v1/messages yet");
|
|
480
|
+
throw new Error("llm-mesh has no usable gateway-supported accounts: re-enroll expired provider accounts; Claude Code OAuth cannot be proxied through Anthropic /v1/messages yet");
|
|
481
|
+
}
|
|
482
|
+
const sessionProvider = localGatewaySessionProvider(gatewayAccounts);
|
|
483
|
+
if (!sessionProvider) {
|
|
484
|
+
throw new Error("llm-mesh has no local runtime provider: Google Code Assist transport remains delegated to llm-mesh");
|
|
334
485
|
}
|
|
335
486
|
const gatewayEnv = {
|
|
336
487
|
...process.env,
|
|
@@ -359,8 +510,9 @@ export async function startGateway(config, opts = {}) {
|
|
|
359
510
|
method: "POST",
|
|
360
511
|
headers: { "content-type": "application/json" },
|
|
361
512
|
body: JSON.stringify({
|
|
362
|
-
sessionId:
|
|
513
|
+
sessionId: gatewayClientSessionId(opts.clientSessionId),
|
|
363
514
|
workspaceId: process.cwd(),
|
|
515
|
+
provider: sessionProvider,
|
|
364
516
|
}),
|
|
365
517
|
});
|
|
366
518
|
if (!sessionResp.ok) {
|
|
@@ -371,7 +523,12 @@ export async function startGateway(config, opts = {}) {
|
|
|
371
523
|
if (!gatewayToken)
|
|
372
524
|
throw new Error("No gatewayToken in session response");
|
|
373
525
|
// Persist the token (secret)
|
|
374
|
-
writeSecret(llmMeshTokenPath(), {
|
|
526
|
+
writeSecret(llmMeshTokenPath(), {
|
|
527
|
+
gatewayToken,
|
|
528
|
+
baseUrl,
|
|
529
|
+
pid,
|
|
530
|
+
provider: sessionProvider,
|
|
531
|
+
});
|
|
375
532
|
// Persist refreshed tokens back to config
|
|
376
533
|
writeLlmMeshConfig({ ...config, accounts: refreshedAccounts });
|
|
377
534
|
return { pid, port, gatewayToken };
|
|
@@ -450,15 +607,17 @@ export function readLlmMeshSessionEnv(dir) {
|
|
|
450
607
|
* Gateway tokens are intentionally not durable; after a gateway restart,
|
|
451
608
|
* llm-mesh-token.json may point at a token the new process does not know.
|
|
452
609
|
*/
|
|
453
|
-
export async function acquireLlmMeshSessionEnv(dir) {
|
|
610
|
+
export async function acquireLlmMeshSessionEnv(dir, clientSessionId) {
|
|
454
611
|
try {
|
|
455
612
|
let baseUrl;
|
|
456
613
|
let pid;
|
|
614
|
+
let provider;
|
|
457
615
|
try {
|
|
458
616
|
const raw = readFileSync(llmMeshTokenPath(dir), "utf8");
|
|
459
617
|
const tokenFile = JSON.parse(raw);
|
|
460
618
|
baseUrl = tokenFile.baseUrl;
|
|
461
619
|
pid = tokenFile.pid;
|
|
620
|
+
provider = tokenFile.provider;
|
|
462
621
|
}
|
|
463
622
|
catch {
|
|
464
623
|
baseUrl = configuredGatewayBaseUrl(dir) ?? undefined;
|
|
@@ -466,6 +625,15 @@ export async function acquireLlmMeshSessionEnv(dir) {
|
|
|
466
625
|
}
|
|
467
626
|
if (!baseUrl || !pid)
|
|
468
627
|
return null;
|
|
628
|
+
if (!provider) {
|
|
629
|
+
const config = readLlmMeshConfig(dir);
|
|
630
|
+
provider = config
|
|
631
|
+
? localGatewaySessionProvider(config.accounts.filter((account) => !isUnsupportedClaudeOAuthAccount(account) &&
|
|
632
|
+
!isAccountTokenExpired(account)))
|
|
633
|
+
: undefined;
|
|
634
|
+
}
|
|
635
|
+
if (!provider)
|
|
636
|
+
return null;
|
|
469
637
|
try {
|
|
470
638
|
process.kill(pid, 0);
|
|
471
639
|
}
|
|
@@ -477,8 +645,9 @@ export async function acquireLlmMeshSessionEnv(dir) {
|
|
|
477
645
|
method: "POST",
|
|
478
646
|
headers: { "content-type": "application/json" },
|
|
479
647
|
body: JSON.stringify({
|
|
480
|
-
sessionId:
|
|
648
|
+
sessionId: gatewayClientSessionId(clientSessionId),
|
|
481
649
|
workspaceId,
|
|
650
|
+
provider,
|
|
482
651
|
}),
|
|
483
652
|
});
|
|
484
653
|
if (!sessionResp.ok)
|
|
@@ -490,6 +659,7 @@ export async function acquireLlmMeshSessionEnv(dir) {
|
|
|
490
659
|
gatewayToken: session.gatewayToken,
|
|
491
660
|
baseUrl,
|
|
492
661
|
pid,
|
|
662
|
+
provider,
|
|
493
663
|
});
|
|
494
664
|
return {
|
|
495
665
|
ANTHROPIC_BASE_URL: baseUrl,
|
package/dist/llm-mesh.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-mesh.js","sourceRoot":"","sources":["../src/llm-mesh.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"llm-mesh.js","sourceRoot":"","sources":["../src/llm-mesh.ts"],"names":[],"mappings":"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"}
|