@sentropic/llm-mesh 0.21.0 → 0.21.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/enrollment/muse-code.d.ts +12 -0
- package/dist/enrollment/muse-code.d.ts.map +1 -1
- package/dist/enrollment/muse-code.js +30 -22
- package/dist/enrollment/muse-code.js.map +1 -1
- package/dist/enrollment/muse.d.ts +9 -0
- package/dist/enrollment/muse.d.ts.map +1 -1
- package/dist/enrollment/muse.js +38 -5
- package/dist/enrollment/muse.js.map +1 -1
- package/package.json +1 -1
|
@@ -11,6 +11,18 @@ export interface MuseCodeEnrollmentOptions {
|
|
|
11
11
|
clientId?: string;
|
|
12
12
|
fetchFn?: typeof fetch;
|
|
13
13
|
}
|
|
14
|
+
export interface MintedMuseApiKey {
|
|
15
|
+
apiKey: string;
|
|
16
|
+
email: string | null;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Shared Meta key-mint wire (POST /muse-code/key, JSON { dca_token } +
|
|
20
|
+
* Bearer, x-api-version 1.0.0 — live-probed 2026-09-21: body-only mints 401).
|
|
21
|
+
* Mutualized across the muse providers: the device path mints the grant
|
|
22
|
+
* token, the CLI-import path mints the stored login token. Same endpoint,
|
|
23
|
+
* same headers, same error shape — no new wire path.
|
|
24
|
+
*/
|
|
25
|
+
export declare function mintMuseApiKey(accessToken: string, fetchFn?: typeof fetch): Promise<MintedMuseApiKey>;
|
|
14
26
|
export declare class MuseCodeEnrollmentProvider implements EnrollmentProvider {
|
|
15
27
|
private readonly clientId;
|
|
16
28
|
private readonly fetchFn;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"muse-code.d.ts","sourceRoot":"","sources":["../../src/enrollment/muse-code.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EACV,mBAAmB,EACnB,uBAAuB,EACvB,kBAAkB,EAClB,iBAAiB,EAEjB,kBAAkB,EAClB,YAAY,EACZ,wBAAwB,EACxB,oBAAoB,EACrB,MAAM,gBAAgB,CAAC;AAExB,eAAO,MAAM,gBAAgB,0BAA0B,CAAC;AACxD,eAAO,MAAM,6BAA6B,qDAAmD,CAAC;AAC9F,eAAO,MAAM,qBAAqB,6CAA2C,CAAC;AAC9E,eAAO,MAAM,cAAc,qBAAqB,CAAC;AACjD,eAAO,MAAM,qBAAqB,+CAA+C,CAAC;AAClF,eAAO,MAAM,iBAAiB,sCAAsC,CAAC;AACrE,eAAO,MAAM,yBAAyB,UAAU,CAAC;AACjD,eAAO,MAAM,0BAA0B,wBAAwB,CAAC;AAEhE,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;CACxB;AAWD,qBAAa,0BAA2B,YAAW,kBAAkB;IACnE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IACvC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoC;IAC7D,OAAO,CAAC,QAAQ,CAAK;gBAET,OAAO,GAAE,yBAA8B;IAK7C,KAAK,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,iBAAiB,CAAC;YAiEtD,SAAS;YAoCT,UAAU;
|
|
1
|
+
{"version":3,"file":"muse-code.d.ts","sourceRoot":"","sources":["../../src/enrollment/muse-code.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EACV,mBAAmB,EACnB,uBAAuB,EACvB,kBAAkB,EAClB,iBAAiB,EAEjB,kBAAkB,EAClB,YAAY,EACZ,wBAAwB,EACxB,oBAAoB,EACrB,MAAM,gBAAgB,CAAC;AAExB,eAAO,MAAM,gBAAgB,0BAA0B,CAAC;AACxD,eAAO,MAAM,6BAA6B,qDAAmD,CAAC;AAC9F,eAAO,MAAM,qBAAqB,6CAA2C,CAAC;AAC9E,eAAO,MAAM,cAAc,qBAAqB,CAAC;AACjD,eAAO,MAAM,qBAAqB,+CAA+C,CAAC;AAClF,eAAO,MAAM,iBAAiB,sCAAsC,CAAC;AACrE,eAAO,MAAM,yBAAyB,UAAU,CAAC;AACjD,eAAO,MAAM,0BAA0B,wBAAwB,CAAC;AAEhE,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;CACxB;AAWD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAClC,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,OAAO,KAAa,GAC5B,OAAO,CAAC,gBAAgB,CAAC,CAwB3B;AAED,qBAAa,0BAA2B,YAAW,kBAAkB;IACnE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IACvC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoC;IAC7D,OAAO,CAAC,QAAQ,CAAK;gBAET,OAAO,GAAE,yBAA8B;IAK7C,KAAK,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,iBAAiB,CAAC;YAiEtD,SAAS;YAoCT,UAAU;IAIxB,OAAO,CAAC,eAAe;IAoBjB,iBAAiB,CACrB,YAAY,EAAE,MAAM,EACpB,WAAW,SAAK,GACf,OAAO,CAAC,mBAAmB,CAAC;IAkCzB,QAAQ,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IASrE,OAAO,CAAC,UAAU,EAAE,kBAAkB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAO1E,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAuCzD,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAMlD"}
|
|
@@ -25,6 +25,35 @@ export const MUSE_KEY_MINT_URL = 'https://api.meta.ai/muse-code/key';
|
|
|
25
25
|
export const MUSE_KEY_MINT_API_VERSION = '1.0.0';
|
|
26
26
|
export const MUSE_NATIVE_CONFIG_VERSION = 'muse-device-flow-v1';
|
|
27
27
|
const textOf = (value) => typeof value === 'string' && value.trim().length > 0 ? value.trim() : null;
|
|
28
|
+
/**
|
|
29
|
+
* Shared Meta key-mint wire (POST /muse-code/key, JSON { dca_token } +
|
|
30
|
+
* Bearer, x-api-version 1.0.0 — live-probed 2026-09-21: body-only mints 401).
|
|
31
|
+
* Mutualized across the muse providers: the device path mints the grant
|
|
32
|
+
* token, the CLI-import path mints the stored login token. Same endpoint,
|
|
33
|
+
* same headers, same error shape — no new wire path.
|
|
34
|
+
*/
|
|
35
|
+
export async function mintMuseApiKey(accessToken, fetchFn = fetch) {
|
|
36
|
+
const response = await fetchFn(MUSE_KEY_MINT_URL, {
|
|
37
|
+
method: 'POST',
|
|
38
|
+
headers: {
|
|
39
|
+
'content-type': 'application/json',
|
|
40
|
+
accept: 'application/json',
|
|
41
|
+
'x-api-version': MUSE_KEY_MINT_API_VERSION,
|
|
42
|
+
authorization: `Bearer ${accessToken}`,
|
|
43
|
+
},
|
|
44
|
+
body: JSON.stringify({ dca_token: accessToken }),
|
|
45
|
+
});
|
|
46
|
+
if (!response.ok) {
|
|
47
|
+
const text = await response.text().catch(() => '');
|
|
48
|
+
throw new Error(`Muse key mint failed (${response.status}): ${text.slice(0, 200)}`);
|
|
49
|
+
}
|
|
50
|
+
const payload = (await response.json());
|
|
51
|
+
const apiKey = textOf(payload.api_key);
|
|
52
|
+
if (!apiKey) {
|
|
53
|
+
throw new Error('Muse key mint returned no api_key');
|
|
54
|
+
}
|
|
55
|
+
return { apiKey, email: textOf(payload.user_email) };
|
|
56
|
+
}
|
|
28
57
|
export class MuseCodeEnrollmentProvider {
|
|
29
58
|
clientId;
|
|
30
59
|
fetchFn;
|
|
@@ -121,28 +150,7 @@ export class MuseCodeEnrollmentProvider {
|
|
|
121
150
|
return { status: 'complete', payload };
|
|
122
151
|
}
|
|
123
152
|
async mintApiKey(accessToken) {
|
|
124
|
-
|
|
125
|
-
method: 'POST',
|
|
126
|
-
headers: {
|
|
127
|
-
'content-type': 'application/json',
|
|
128
|
-
accept: 'application/json',
|
|
129
|
-
'x-api-version': MUSE_KEY_MINT_API_VERSION,
|
|
130
|
-
// Live-probed 2026-09-21: body-only mints 401; the dca token must
|
|
131
|
-
// ALSO ride as Bearer alongside the { dca_token } body (200).
|
|
132
|
-
authorization: `Bearer ${accessToken}`,
|
|
133
|
-
},
|
|
134
|
-
body: JSON.stringify({ dca_token: accessToken }),
|
|
135
|
-
});
|
|
136
|
-
if (!response.ok) {
|
|
137
|
-
const text = await response.text().catch(() => '');
|
|
138
|
-
throw new Error(`Muse key mint failed (${response.status}): ${text.slice(0, 200)}`);
|
|
139
|
-
}
|
|
140
|
-
const payload = (await response.json());
|
|
141
|
-
const apiKey = textOf(payload.api_key);
|
|
142
|
-
if (!apiKey) {
|
|
143
|
-
throw new Error('Muse key mint returned no api_key');
|
|
144
|
-
}
|
|
145
|
-
return { apiKey, email: textOf(payload.user_email) };
|
|
153
|
+
return mintMuseApiKey(accessToken, this.fetchFn);
|
|
146
154
|
}
|
|
147
155
|
buildCredential(input) {
|
|
148
156
|
// Same stable-id convention as the CLI import so the same Meta login
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"muse-code.js","sourceRoot":"","sources":["../../src/enrollment/muse-code.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,EAAE;AACF,8EAA8E;AAC9E,uEAAuE;AACvE,uEAAuE;AACvE,oEAAoE;AACpE,0DAA0D;AAC1D,kEAAkE;AAClE,sEAAsE;AACtE,8DAA8D;AAC9D,6EAA6E;AAC7E,gFAAgF;AAChF,oEAAoE;AACpE,+DAA+D;AAC/D,0EAA0E;AAC1E,2EAA2E;AAE3E,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAa9D,MAAM,CAAC,MAAM,gBAAgB,GAAG,uBAAuB,CAAC;AACxD,MAAM,CAAC,MAAM,6BAA6B,GAAG,GAAG,gBAAgB,6BAA6B,CAAC;AAC9F,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,gBAAgB,qBAAqB,CAAC;AAC9E,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAAC;AACjD,MAAM,CAAC,MAAM,qBAAqB,GAAG,4CAA4C,CAAC;AAClF,MAAM,CAAC,MAAM,iBAAiB,GAAG,mCAAmC,CAAC;AACrE,MAAM,CAAC,MAAM,yBAAyB,GAAG,OAAO,CAAC;AACjD,MAAM,CAAC,MAAM,0BAA0B,GAAG,qBAAqB,CAAC;AAahE,MAAM,MAAM,GAAG,CAAC,KAAc,EAAiB,EAAE,CAC/C,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"muse-code.js","sourceRoot":"","sources":["../../src/enrollment/muse-code.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,13 +11,22 @@ export declare const buildMuseDirectAuthPayload: (apiKey: string) => MuseDirectA
|
|
|
11
11
|
export interface MuseEnrollmentOptions {
|
|
12
12
|
readAuthFile?: (path: string) => Promise<string>;
|
|
13
13
|
authFilePath?: string;
|
|
14
|
+
fetchFn?: typeof fetch;
|
|
14
15
|
}
|
|
15
16
|
export declare class MuseEnrollmentProvider implements EnrollmentProvider {
|
|
16
17
|
private readonly readAuthFile;
|
|
17
18
|
private readonly authFilePath;
|
|
19
|
+
private readonly fetchFn;
|
|
18
20
|
private readonly sessions;
|
|
19
21
|
private sequence;
|
|
20
22
|
constructor(options?: MuseEnrollmentOptions);
|
|
23
|
+
/**
|
|
24
|
+
* Serving parity with the device path: the raw CLI login token is not a
|
|
25
|
+
* serving key (live 401), so complete mints one via the shared wire and
|
|
26
|
+
* returns it as the credential token. Stability (accountId, email) still
|
|
27
|
+
* derives from the CLI store entry.
|
|
28
|
+
*/
|
|
29
|
+
private mintServingKey;
|
|
21
30
|
start(input: StartEnrollmentInput): Promise<EnrollmentSession>;
|
|
22
31
|
private readEntry;
|
|
23
32
|
private buildCredential;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"muse.d.ts","sourceRoot":"","sources":["../../src/enrollment/muse.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,uBAAuB,EACvB,kBAAkB,EAClB,iBAAiB,EAEjB,kBAAkB,EAClB,YAAY,EACZ,wBAAwB,EACxB,oBAAoB,EACrB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"muse.d.ts","sourceRoot":"","sources":["../../src/enrollment/muse.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,uBAAuB,EACvB,kBAAkB,EAClB,iBAAiB,EAEjB,kBAAkB,EAClB,YAAY,EACZ,wBAAwB,EACxB,oBAAoB,EACrB,MAAM,gBAAgB,CAAC;AAGxB,eAAO,MAAM,qBAAqB,uBAAuB,CAAC;AAE1D,oFAAoF;AACpF,eAAO,MAAM,wBAAwB,WAAW,CAAC;AAEjD,2EAA2E;AAC3E,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,SAAS,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,0BAA0B,WAAY,MAAM,KAAG,qBAQ3D,CAAC;AAoBF,MAAM,WAAW,qBAAqB;IACpC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;CACxB;AAuBD,qBAAa,sBAAuB,YAAW,kBAAkB;IAC/D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAoC;IACjE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IACvC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkC;IAC3D,OAAO,CAAC,QAAQ,CAAK;gBAET,OAAO,GAAE,qBAA0B;IAO/C;;;;;OAKG;YACW,cAAc;IAKtB,KAAK,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,iBAAiB,CAAC;YA0BtD,SAAS;IA+BvB,OAAO,CAAC,eAAe;IAkBvB;;;;;;OAMG;IACG,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAW/D,QAAQ,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAgBrE,OAAO,CAAC,UAAU,EAAE,kBAAkB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAO1E,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA0BzD,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAMlD"}
|
package/dist/enrollment/muse.js
CHANGED
|
@@ -2,6 +2,7 @@ import { createHash } from 'node:crypto';
|
|
|
2
2
|
import { readFile } from 'node:fs/promises';
|
|
3
3
|
import { homedir } from 'node:os';
|
|
4
4
|
import { join } from 'node:path';
|
|
5
|
+
import { mintMuseApiKey } from './muse-code.js';
|
|
5
6
|
export const MUSE_AUTH_FILE_SOURCE = 'muse-cli-auth-file';
|
|
6
7
|
/** Marker recorded on accounts enrolled from a raw MUSE_API_KEY (pay-as-you-go). */
|
|
7
8
|
export const MUSE_DIRECT_BILLING_TYPE = 'direct';
|
|
@@ -29,12 +30,24 @@ const DIRECT_API_KEY_CONFIG_VERSION = 'direct-api-key-v1';
|
|
|
29
30
|
export class MuseEnrollmentProvider {
|
|
30
31
|
readAuthFile;
|
|
31
32
|
authFilePath;
|
|
33
|
+
fetchFn;
|
|
32
34
|
sessions = new Map();
|
|
33
35
|
sequence = 0;
|
|
34
36
|
constructor(options = {}) {
|
|
35
37
|
this.readAuthFile = options.readAuthFile
|
|
36
38
|
?? ((path) => readFile(path, 'utf8'));
|
|
37
39
|
this.authFilePath = options.authFilePath ?? defaultAuthFilePath();
|
|
40
|
+
this.fetchFn = options.fetchFn ?? fetch;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Serving parity with the device path: the raw CLI login token is not a
|
|
44
|
+
* serving key (live 401), so complete mints one via the shared wire and
|
|
45
|
+
* returns it as the credential token. Stability (accountId, email) still
|
|
46
|
+
* derives from the CLI store entry.
|
|
47
|
+
*/
|
|
48
|
+
async mintServingKey(token) {
|
|
49
|
+
const minted = await mintMuseApiKey(token, this.fetchFn);
|
|
50
|
+
return minted.apiKey;
|
|
38
51
|
}
|
|
39
52
|
async start(input) {
|
|
40
53
|
this.sequence += 1;
|
|
@@ -134,7 +147,11 @@ export class MuseEnrollmentProvider {
|
|
|
134
147
|
throw new Error(`Enrollment session ${input.enrollmentId} was cancelled`);
|
|
135
148
|
}
|
|
136
149
|
const { entry: providerEntry, schemaVersion } = await this.readEntry();
|
|
137
|
-
|
|
150
|
+
const credential = this.buildCredential(providerEntry, schemaVersion);
|
|
151
|
+
return {
|
|
152
|
+
...credential,
|
|
153
|
+
accessToken: await this.mintServingKey(credential.accessToken),
|
|
154
|
+
};
|
|
138
155
|
}
|
|
139
156
|
async resolve(credential) {
|
|
140
157
|
return {
|
|
@@ -143,14 +160,30 @@ export class MuseEnrollmentProvider {
|
|
|
143
160
|
};
|
|
144
161
|
}
|
|
145
162
|
async refresh(input) {
|
|
146
|
-
//
|
|
147
|
-
//
|
|
148
|
-
|
|
163
|
+
// Direct-billed keys have no CLI store to re-read and no rotation wire:
|
|
164
|
+
// re-import is the rotation path (same rule as documented on the TTL).
|
|
165
|
+
if (input.credentialVersion === DIRECT_API_KEY_CONFIG_VERSION) {
|
|
166
|
+
throw new Error('Muse token refresh failed: direct API keys do not rotate; re-import the key');
|
|
167
|
+
}
|
|
168
|
+
// The CLI owns login lifecycle; mesh refresh re-imports the current CLI
|
|
169
|
+
// store for the same account, then re-mints the serving key via the
|
|
170
|
+
// shared wire (same shape as the codex/cloud-code refresh errors).
|
|
171
|
+
let entry;
|
|
172
|
+
let schemaVersion;
|
|
173
|
+
try {
|
|
174
|
+
({ entry, schemaVersion } = await this.readEntry());
|
|
175
|
+
}
|
|
176
|
+
catch (error) {
|
|
177
|
+
throw new Error(`Muse token refresh failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
178
|
+
}
|
|
149
179
|
const credential = this.buildCredential(entry, schemaVersion);
|
|
150
180
|
if (credential.accountId !== input.accountId) {
|
|
151
181
|
throw new Error('Muse CLI store now holds a different login than the enrolled account');
|
|
152
182
|
}
|
|
153
|
-
return
|
|
183
|
+
return {
|
|
184
|
+
...credential,
|
|
185
|
+
accessToken: await this.mintServingKey(credential.accessToken),
|
|
186
|
+
};
|
|
154
187
|
}
|
|
155
188
|
async cancel(enrollmentId) {
|
|
156
189
|
const entry = this.sessions.get(enrollmentId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"muse.js","sourceRoot":"","sources":["../../src/enrollment/muse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"muse.js","sourceRoot":"","sources":["../../src/enrollment/muse.ts"],"names":[],"mappings":"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"}
|