@cotal-ai/core 0.16.0 → 0.18.0
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/acls.d.ts +21 -0
- package/dist/acls.d.ts.map +1 -1
- package/dist/acls.js +44 -1
- package/dist/acls.js.map +1 -1
- package/dist/artifact.d.ts +45 -0
- package/dist/artifact.d.ts.map +1 -0
- package/dist/artifact.js +82 -0
- package/dist/artifact.js.map +1 -0
- package/dist/backup-config.d.ts +9 -2
- package/dist/backup-config.d.ts.map +1 -1
- package/dist/backup-config.js +6 -2
- package/dist/backup-config.js.map +1 -1
- package/dist/broker-tls.d.ts +70 -0
- package/dist/broker-tls.d.ts.map +1 -0
- package/dist/broker-tls.js +195 -0
- package/dist/broker-tls.js.map +1 -0
- package/dist/canonical.d.ts +14 -1
- package/dist/canonical.d.ts.map +1 -1
- package/dist/canonical.js +21 -1
- package/dist/canonical.js.map +1 -1
- package/dist/channels.js +4 -4
- package/dist/channels.js.map +1 -1
- package/dist/endpoint-action.d.ts +108 -3
- package/dist/endpoint-action.d.ts.map +1 -1
- package/dist/endpoint-action.js +209 -20
- package/dist/endpoint-action.js.map +1 -1
- package/dist/endpoint-binding.d.ts +138 -8
- package/dist/endpoint-binding.d.ts.map +1 -1
- package/dist/endpoint-binding.js +233 -26
- package/dist/endpoint-binding.js.map +1 -1
- package/dist/endpoint-contract-store.d.ts +30 -1
- package/dist/endpoint-contract-store.d.ts.map +1 -1
- package/dist/endpoint-contract-store.js +100 -29
- package/dist/endpoint-contract-store.js.map +1 -1
- package/dist/endpoint-envelope.d.ts +15 -37
- package/dist/endpoint-envelope.d.ts.map +1 -1
- package/dist/endpoint-envelope.js +93 -44
- package/dist/endpoint-envelope.js.map +1 -1
- package/dist/endpoint-error.d.ts +33 -0
- package/dist/endpoint-error.d.ts.map +1 -0
- package/dist/endpoint-error.js +34 -0
- package/dist/endpoint-error.js.map +1 -0
- package/dist/endpoint-grants.d.ts +63 -7
- package/dist/endpoint-grants.d.ts.map +1 -1
- package/dist/endpoint-grants.js +118 -9
- package/dist/endpoint-grants.js.map +1 -1
- package/dist/endpoint-invoke.d.ts +138 -0
- package/dist/endpoint-invoke.d.ts.map +1 -0
- package/dist/endpoint-invoke.js +393 -0
- package/dist/endpoint-invoke.js.map +1 -0
- package/dist/endpoint-records.d.ts.map +1 -1
- package/dist/endpoint-records.js +17 -0
- package/dist/endpoint-records.js.map +1 -1
- package/dist/endpoint-serve-kv.d.ts +97 -0
- package/dist/endpoint-serve-kv.d.ts.map +1 -0
- package/dist/endpoint-serve-kv.js +336 -0
- package/dist/endpoint-serve-kv.js.map +1 -0
- package/dist/endpoint-serve.d.ts.map +1 -1
- package/dist/endpoint-serve.js +21 -1
- package/dist/endpoint-serve.js.map +1 -1
- package/dist/endpoint-service.d.ts +1 -1
- package/dist/endpoint-service.d.ts.map +1 -1
- package/dist/endpoint-service.js +34 -10
- package/dist/endpoint-service.js.map +1 -1
- package/dist/endpoint-session-rail.d.ts +127 -0
- package/dist/endpoint-session-rail.d.ts.map +1 -0
- package/dist/endpoint-session-rail.js +325 -0
- package/dist/endpoint-session-rail.js.map +1 -0
- package/dist/endpoint-session.d.ts +1 -115
- package/dist/endpoint-session.d.ts.map +1 -1
- package/dist/endpoint-session.js +4 -316
- package/dist/endpoint-session.js.map +1 -1
- package/dist/endpoint-subjects.d.ts +20 -1
- package/dist/endpoint-subjects.d.ts.map +1 -1
- package/dist/endpoint-subjects.js +20 -1
- package/dist/endpoint-subjects.js.map +1 -1
- package/dist/endpoint-verbs.d.ts +1 -2
- package/dist/endpoint-verbs.d.ts.map +1 -1
- package/dist/endpoint-verbs.js +6 -6
- package/dist/endpoint-verbs.js.map +1 -1
- package/dist/endpoint.d.ts +157 -11
- package/dist/endpoint.d.ts.map +1 -1
- package/dist/endpoint.js +471 -47
- package/dist/endpoint.js.map +1 -1
- package/dist/evict.d.ts +47 -0
- package/dist/evict.d.ts.map +1 -1
- package/dist/evict.js +191 -59
- package/dist/evict.js.map +1 -1
- package/dist/identity.d.ts +34 -0
- package/dist/identity.d.ts.map +1 -1
- package/dist/identity.js +46 -0
- package/dist/identity.js.map +1 -1
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -1
- package/dist/kv-scan.d.ts +8 -0
- package/dist/kv-scan.d.ts.map +1 -1
- package/dist/kv-scan.js +8 -0
- package/dist/kv-scan.js.map +1 -1
- package/dist/lease.d.ts +12 -5
- package/dist/lease.d.ts.map +1 -1
- package/dist/lease.js.map +1 -1
- package/dist/lifecycle-saga.d.ts +174 -0
- package/dist/lifecycle-saga.d.ts.map +1 -0
- package/dist/lifecycle-saga.js +418 -0
- package/dist/lifecycle-saga.js.map +1 -0
- package/dist/lifecycle-state.d.ts +202 -0
- package/dist/lifecycle-state.d.ts.map +1 -0
- package/dist/lifecycle-state.js +347 -0
- package/dist/lifecycle-state.js.map +1 -0
- package/dist/parts.d.ts +13 -0
- package/dist/parts.d.ts.map +1 -0
- package/dist/parts.js +17 -0
- package/dist/parts.js.map +1 -0
- package/dist/provision.d.ts +124 -15
- package/dist/provision.d.ts.map +1 -1
- package/dist/provision.js +578 -121
- package/dist/provision.js.map +1 -1
- package/dist/schema-profile.d.ts +3 -2
- package/dist/schema-profile.d.ts.map +1 -1
- package/dist/schema-profile.js +242 -18
- package/dist/schema-profile.js.map +1 -1
- package/dist/session-browser.d.ts +15 -0
- package/dist/session-browser.d.ts.map +1 -0
- package/dist/session-browser.js +14 -0
- package/dist/session-browser.js.map +1 -0
- package/dist/session-terminal-frames.d.ts +36 -0
- package/dist/session-terminal-frames.d.ts.map +1 -0
- package/dist/session-terminal-frames.js +149 -0
- package/dist/session-terminal-frames.js.map +1 -0
- package/dist/spaces.d.ts.map +1 -1
- package/dist/spaces.js +6 -1
- package/dist/spaces.js.map +1 -1
- package/dist/streams.d.ts +168 -1
- package/dist/streams.d.ts.map +1 -1
- package/dist/streams.js +299 -21
- package/dist/streams.js.map +1 -1
- package/dist/subjects.d.ts +34 -36
- package/dist/subjects.d.ts.map +1 -1
- package/dist/subjects.js +46 -35
- package/dist/subjects.js.map +1 -1
- package/dist/types.d.ts +27 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +6 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parts.js","sourceRoot":"","sources":["../src/parts.ts"],"names":[],"mappings":"AAWA;yFACyF;AACzF,SAAS,QAAQ,CAAC,CAAO;IACvB,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,CAAC,CAAC,IAAI,CAAC;IACrC,8FAA8F;IAC9F,4FAA4F;IAC5F,sEAAsE;IACtE,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,aAAa,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC;IACvG,OAAO,IAAI,CAAC,SAAS,CAAE,CAAwB,CAAC,IAAI,CAAC,CAAC;AACxD,CAAC;AAED,0DAA0D;AAC1D,MAAM,UAAU,WAAW,CAAC,KAAsB;IAChD,OAAO,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACvC,CAAC"}
|
package/dist/provision.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import
|
|
1
|
+
import type { BrokerTransport } from "./broker-tls.js";
|
|
2
|
+
import { type DeprovisionTarget } from "./subjects.js";
|
|
2
3
|
import { type EpCapability } from "./endpoint-grants.js";
|
|
3
4
|
import { type EpServeGrant, type EpIssuanceGate } from "./endpoint-service.js";
|
|
4
5
|
import { type Identity } from "./identity.js";
|
|
5
6
|
import { type BackupPermissionScope, type RestorePermissionScope } from "./backup.js";
|
|
6
7
|
/** Cred profiles. Each profile has an explicit permission arm and a D5 lifetime classification. */
|
|
7
|
-
export type Profile = "agent" | "observer" | "admin" | "supervisor" | "provisioner" | "deprovisioner" | "retirement-requester" | "operator" | "purger" | "backup" | "restore" | "delivery" | "membership-rw" | "probe" | "channel-writer" | "channel-purger" | "teardown" | "control-caller-privileged" | "control-caller-admin" | "deployer" | "endpoint-serve";
|
|
8
|
+
export type Profile = "agent" | "observer" | "admin" | "supervisor" | "provisioner" | "deprovisioner" | "retirement-requester" | "lifecycle-executor" | "endpoint-serve-executor" | "operator" | "purger" | "backup" | "restore" | "delivery" | "membership-rw" | "probe" | "channel-writer" | "channel-purger" | "teardown" | "control-caller-privileged" | "control-caller-admin" | "deployer" | "endpoint-serve" | "goal-writer" | "session-caller" | "session-serving" | "session-ledger" | "endpoint-evictor";
|
|
8
9
|
export type CredentialLifetimeClass = "standing-renewable" | "rotation-renewed" | "one-shot" | "static-operator-managed" | "mixed";
|
|
9
10
|
export type CredentialKind = Profile | "membership-observer" | "connection-evictor";
|
|
10
11
|
export interface CredentialLifetimePolicy {
|
|
@@ -161,8 +162,6 @@ export interface MintOpts {
|
|
|
161
162
|
allowPublish?: string[];
|
|
162
163
|
/** The agent's role — scopes its TASK-queue consumer to svc_<role>. */
|
|
163
164
|
role?: string;
|
|
164
|
-
/** Control service the agent may address. Defaults to `"manager"`. */
|
|
165
|
-
manager?: string;
|
|
166
165
|
/** Capabilities declared in the agent file (e.g. `"spawn"`). A capability gates the
|
|
167
166
|
* privileged control-subject grant in {@link permissionsFor}: `spawn` → the agent may
|
|
168
167
|
* publish to the privileged control subject (start/purge/definePersona/named stop).
|
|
@@ -209,22 +208,85 @@ export interface MintOpts {
|
|
|
209
208
|
* never a peer's, never the role-shared `svc_<role>`, and structurally never a same-alias
|
|
210
209
|
* successor's (its names carry a different uid). Ignored by every other profile. */
|
|
211
210
|
deprovisionTarget?: DeprovisionTarget;
|
|
212
|
-
/** `retirement-requester` profile only: the REQUESTING
|
|
213
|
-
* own `owner`/`actor`) whose auth-
|
|
214
|
-
* subject IS the attribution
|
|
215
|
-
*
|
|
216
|
-
*
|
|
217
|
-
* by
|
|
211
|
+
/** `retirement-requester` profile only: the REQUESTING CALLER TRIPLE (the current space-manager's
|
|
212
|
+
* own `owner`/`actor`/`uid`) whose auth-endpoint request subject the credential may publish, and
|
|
213
|
+
* whose reply rail it may read. The subject IS the attribution: the auth plane's rail derives
|
|
214
|
+
* the caller principal from the subject the broker admitted, and refuses unless the serve
|
|
215
|
+
* registration the request names belongs to THAT principal — so a requester cannot be authorized
|
|
216
|
+
* by another instance's registration.
|
|
217
|
+
*
|
|
218
|
+
* The `uid` is why this carries a triple and not the pre-#350 `{owner, actor}` pair: the `ctl`
|
|
219
|
+
* rail's two-token subject could express only a recyclable alias, while the `ep` caller triple
|
|
220
|
+
* is `<owner>.<actor>.<uid>` and the grant pins all three. Ignored by every other profile. */
|
|
218
221
|
retirementRequester?: {
|
|
219
222
|
owner: string;
|
|
220
223
|
actor: string;
|
|
224
|
+
uid: string;
|
|
225
|
+
/** The ONE incarnation this credential may ask to retire. It rides the SUBJECT as the
|
|
226
|
+
* `handle` target, so the grant pins it: a leaked requester cannot be re-aimed. */
|
|
227
|
+
target: {
|
|
228
|
+
owner: string;
|
|
229
|
+
actor: string;
|
|
230
|
+
lifecycleUid: string;
|
|
231
|
+
};
|
|
232
|
+
};
|
|
233
|
+
/** `lifecycle-executor` profile only (Unit B, the static §13.1 executor): the ONE incarnation
|
|
234
|
+
* whose lifecycle-state keys this credential may write — the head `lifecycle.<owner>.<actor>`,
|
|
235
|
+
* the reservation `uid.<lifecycleUid>`, the gate `gate.<lifecycleUid>`, the ledger family
|
|
236
|
+
* `cred.<lifecycleUid>.>`, and the manager's durable slot row `mgrslot.<owner>.<alias>`.
|
|
237
|
+
* REQUIRED for that profile (it throws without one). EVERY key is DERIVED inside the profile
|
|
238
|
+
* from (owner, actor, lifecycleUid, alias) — none is a caller-supplied literal — so the pin is
|
|
239
|
+
* coherent by construction and a leaked executor cred can move exactly one incarnation's state
|
|
240
|
+
* machine and nothing else. Ignored by every other profile. */
|
|
241
|
+
lifecycleExecutor?: {
|
|
242
|
+
owner: string;
|
|
243
|
+
actor: string;
|
|
244
|
+
lifecycleUid: string;
|
|
245
|
+
alias: string;
|
|
221
246
|
};
|
|
222
|
-
/** `
|
|
223
|
-
*
|
|
224
|
-
*
|
|
225
|
-
*
|
|
247
|
+
/** `endpoint-serve-executor` profile only (P2 item 1, 1a-serve): the ONE endpoint instance whose
|
|
248
|
+
* endpoint-serve state this credential may write — the endpoint gate `epgate.<endpoint>.
|
|
249
|
+
* <instanceId>` (the registration barrier's freeze/reopen CAS + the provisioner create) and the
|
|
250
|
+
* serving ledger family `epcred.<endpoint>.<instanceId>.>` (the mint fence's stage + the barrier's
|
|
251
|
+
* revoke). REQUIRED for that profile. Every key is DERIVED inside the profile from
|
|
252
|
+
* (endpoint, instanceId) — none is a caller literal — so the manager drives the gate CAS + serve
|
|
253
|
+
* mint through THIS scoped executor and nothing else (critic #1: the manager-specific "no seed
|
|
254
|
+
* shortcut"; the standing seed connection never writes the epgate or the epcred family). Ignored
|
|
226
255
|
* by every other profile. */
|
|
227
|
-
|
|
256
|
+
endpointServeExecutor?: {
|
|
257
|
+
endpoint: string;
|
|
258
|
+
instanceId: string;
|
|
259
|
+
};
|
|
260
|
+
/** `goal-writer` profile only (P2 item 2, spawn-as-action): the endpoint whose action goals this
|
|
261
|
+
* standing connection may bind + commit ({@link goalWriterGrants}). REQUIRED for that profile;
|
|
262
|
+
* ignored by every other. */
|
|
263
|
+
goalWriter?: {
|
|
264
|
+
endpoint: string;
|
|
265
|
+
};
|
|
266
|
+
/** `session-caller` profile only (P2 item 6): the ONE §13.6 session whose two eps rails this
|
|
267
|
+
* credential may use — the serving endpoint, the fresh sessionId, and the serving epoch. REQUIRED
|
|
268
|
+
* for that profile; ignored by every other. The rows pin all three, so the cred authorizes
|
|
269
|
+
* exactly that session's `in`+`out` and nothing else. */
|
|
270
|
+
sessionCaller?: {
|
|
271
|
+
endpoint: string;
|
|
272
|
+
sessionId: string;
|
|
273
|
+
epoch: number;
|
|
274
|
+
};
|
|
275
|
+
/** `session-serving` profile only (P2 item 6): the ONE §13.6 session this SERVING credential may
|
|
276
|
+
* serve — same three coordinates as {@link sessionCaller}, with the rail directions swapped.
|
|
277
|
+
* REQUIRED for that profile; ignored by every other. The `session-ledger` profile takes no pin
|
|
278
|
+
* at all: it holds no rail, so it has nothing to pin. */
|
|
279
|
+
sessionServing?: {
|
|
280
|
+
endpoint: string;
|
|
281
|
+
sessionId: string;
|
|
282
|
+
epoch: number;
|
|
283
|
+
};
|
|
284
|
+
/** `deployer` profile only: which v0.4 ep instrument set its `launch`/`ps` rows carry. Defaults
|
|
285
|
+
* to `"admin"` (the static operator's ephemeral deploy cred). The user-mode `deployer` VIEW
|
|
286
|
+
* mints `"privileged"` instead, so a spawn-scoped deploy reaches the manager where its
|
|
287
|
+
* owner-equality launch authorization governs — never the admin any-mode reach. Ignored by
|
|
288
|
+
* every other profile. */
|
|
289
|
+
controlTier?: "privileged" | "admin";
|
|
228
290
|
/** Override the profile default lifetime. Internal/test hook; command surfaces should prefer the
|
|
229
291
|
* centralized {@link CREDENTIAL_LIFETIMES} defaults so profile behavior stays auditable. */
|
|
230
292
|
expiresInSeconds?: number;
|
|
@@ -272,6 +334,11 @@ export interface DurableProvisioner {
|
|
|
272
334
|
* membership: boot durable membership is now the agent SELF-JOINING its durable channels via the
|
|
273
335
|
* daemon's `ctl.delivery` op at connect. */
|
|
274
336
|
commitAcl(principal: string, lifecycleUid: string, allowSubscribe: string[]): Promise<void>;
|
|
337
|
+
/**
|
|
338
|
+
* Raise the mint-time ceiling. Only the provisioning path that also remints the JWT.
|
|
339
|
+
* Process discipline, not crypto binding — see {@link reissueAcl}.
|
|
340
|
+
*/
|
|
341
|
+
reissueAcl(principal: string, lifecycleUid: string, allowSubscribe: string[]): Promise<void>;
|
|
275
342
|
provisionTaskQueue(role: string): Promise<void>;
|
|
276
343
|
}
|
|
277
344
|
/** The identity a cred is minted for: the owner+actor wire principal PLUS the connection nkey the cred
|
|
@@ -349,6 +416,33 @@ export declare function mintConnectionEvictorCreds(auth: SpaceAuth, identity: Id
|
|
|
349
416
|
* NOTE (W4): the MEMORY resolver is one static whole-broker map, so every mutation rewrites all of
|
|
350
417
|
* it. Concurrent add/remove of spaces needs a broker-authoritative inventory with generation/CAS
|
|
351
418
|
* and atomic promotion above this function; this renderer is deliberately pure. */
|
|
419
|
+
/**
|
|
420
|
+
* Render the config for an OPEN (no-auth) broker.
|
|
421
|
+
*
|
|
422
|
+
* This exists so that no path reaches a listener without naming its transport. Open mode used to
|
|
423
|
+
* start nats-server from bare CLI flags (`-js -sd … -p … -a …`) and never called `serverConfig` at
|
|
424
|
+
* all, which meant the required `transport` union protected the auth path and was silent on the
|
|
425
|
+
* open one: an operator could pass a cert and key, watch `up` print its normal banner, and get a
|
|
426
|
+
* cleartext listener. That is the silent downgrade this feature exists to prevent, reachable by
|
|
427
|
+
* someone who did everything right — so open mode renders a config too.
|
|
428
|
+
*
|
|
429
|
+
* It deliberately does NOT reuse `serverConfig`: that renders the operator, system account and
|
|
430
|
+
* MEMORY resolver, none of which a no-auth broker should carry. What the two share is the thing
|
|
431
|
+
* that matters — a REQUIRED transport, so the choice cannot be omitted on either path.
|
|
432
|
+
*
|
|
433
|
+
* IMPORTANT, and it must be said wherever open-mode TLS is surfaced to an operator: TLS ON AN
|
|
434
|
+
* OPEN MESH GIVES CONFIDENTIALITY, NOT AUTHENTICATION. It hides traffic from a passive observer.
|
|
435
|
+
* It does not verify who is connecting, because an open broker has no credentials to check — so
|
|
436
|
+
* anyone who can reach the port still gets in, encrypted. It is a legitimate configuration for a
|
|
437
|
+
* mesh crossing a network nobody controls, and it is NOT "secure" in the sense a reader will
|
|
438
|
+
* assume from seeing `cotals://`. Describe it as the caveat it is rather than as a feature.
|
|
439
|
+
*/
|
|
440
|
+
export declare function openServerConfig(opts: {
|
|
441
|
+
port?: number;
|
|
442
|
+
host?: string;
|
|
443
|
+
storeDir: string;
|
|
444
|
+
transport: BrokerTransport;
|
|
445
|
+
}): string;
|
|
352
446
|
export declare function serverConfig(broker: BrokerAuth, spaces: readonly SpaceAccountAuth[], opts: {
|
|
353
447
|
port?: number;
|
|
354
448
|
host?: string;
|
|
@@ -359,5 +453,20 @@ export declare function serverConfig(broker: BrokerAuth, spaces: readonly SpaceA
|
|
|
359
453
|
pub: string;
|
|
360
454
|
jwt: string;
|
|
361
455
|
}>;
|
|
456
|
+
/** How the client port is served. REQUIRED, and required on purpose: an optional TLS field
|
|
457
|
+
* would let any future path that regenerates this config omit it and silently render a
|
|
458
|
+
* plaintext listener. Callers must say `{ kind: "plaintext" }` when that is what they mean.
|
|
459
|
+
* TLS is listener-wide, so it lives here in the broker options rather than per space —
|
|
460
|
+
* no space can enable, disable or rotate it independently. */
|
|
461
|
+
transport: BrokerTransport;
|
|
462
|
+
/** OPT-IN NATS websocket listener port (P2 item 6): browsers cannot speak raw NATS TCP, so the
|
|
463
|
+
* console session client (a real mesh caller) needs one. This is a NEW ATTACK SURFACE the broker
|
|
464
|
+
* did not have — emitted only when set, DEFAULT-BOUND TO LOCALHOST ({@link wsHost}), no TLS
|
|
465
|
+
* (dev loopback; a remote/TLS dashboard is a later explicit opt-in). Omit it and no listener
|
|
466
|
+
* exists (a broker with no console need adds no surface). */
|
|
467
|
+
wsPort?: number;
|
|
468
|
+
/** Bind host for the websocket listener; defaults to loopback. Widening it (a remote dashboard)
|
|
469
|
+
* is a deliberate operator choice, never the default. */
|
|
470
|
+
wsHost?: string;
|
|
362
471
|
}): string;
|
|
363
472
|
//# sourceMappingURL=provision.d.ts.map
|
package/dist/provision.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provision.d.ts","sourceRoot":"","sources":["../src/provision.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"provision.d.ts","sourceRoot":"","sources":["../src/provision.ts"],"names":[],"mappings":"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"}
|