@antseed/node 0.2.156 → 0.2.158
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/discovery/announcer.d.ts +16 -1
- package/dist/discovery/announcer.d.ts.map +1 -1
- package/dist/discovery/announcer.js +69 -9
- package/dist/discovery/announcer.js.map +1 -1
- package/dist/discovery/http-metadata-resolver.d.ts +1 -1
- package/dist/discovery/http-metadata-resolver.d.ts.map +1 -1
- package/dist/discovery/http-metadata-resolver.js +7 -1
- package/dist/discovery/http-metadata-resolver.js.map +1 -1
- package/dist/discovery/index.d.ts +3 -2
- package/dist/discovery/index.d.ts.map +1 -1
- package/dist/discovery/index.js +2 -1
- package/dist/discovery/index.js.map +1 -1
- package/dist/discovery/metadata/define-version.d.ts +40 -0
- package/dist/discovery/metadata/define-version.d.ts.map +1 -0
- package/dist/discovery/metadata/define-version.js +104 -0
- package/dist/discovery/metadata/define-version.js.map +1 -0
- package/dist/discovery/metadata/field.d.ts +26 -0
- package/dist/discovery/metadata/field.d.ts.map +1 -0
- package/dist/discovery/metadata/field.js +2 -0
- package/dist/discovery/metadata/field.js.map +1 -0
- package/dist/discovery/metadata/fields/offerings.d.ts +7 -0
- package/dist/discovery/metadata/fields/offerings.d.ts.map +1 -0
- package/dist/discovery/metadata/fields/offerings.js +52 -0
- package/dist/discovery/metadata/fields/offerings.js.map +1 -0
- package/dist/discovery/metadata/fields/on-chain-stats.d.ts +6 -0
- package/dist/discovery/metadata/fields/on-chain-stats.d.ts.map +1 -0
- package/dist/discovery/metadata/fields/on-chain-stats.js +30 -0
- package/dist/discovery/metadata/fields/on-chain-stats.js.map +1 -0
- package/dist/discovery/metadata/fields/peer-capabilities.d.ts +4 -0
- package/dist/discovery/metadata/fields/peer-capabilities.d.ts.map +1 -0
- package/dist/discovery/metadata/fields/peer-capabilities.js +21 -0
- package/dist/discovery/metadata/fields/peer-capabilities.js.map +1 -0
- package/dist/discovery/metadata/fields/peer-profile.d.ts +11 -0
- package/dist/discovery/metadata/fields/peer-profile.d.ts.map +1 -0
- package/dist/discovery/metadata/fields/peer-profile.js +58 -0
- package/dist/discovery/metadata/fields/peer-profile.js.map +1 -0
- package/dist/discovery/metadata/fields/provider-basics.d.ts +12 -0
- package/dist/discovery/metadata/fields/provider-basics.d.ts.map +1 -0
- package/dist/discovery/metadata/fields/provider-basics.js +87 -0
- package/dist/discovery/metadata/fields/provider-basics.js.map +1 -0
- package/dist/discovery/metadata/fields/service-api-protocols.d.ts +4 -0
- package/dist/discovery/metadata/fields/service-api-protocols.d.ts.map +1 -0
- package/dist/discovery/metadata/fields/service-api-protocols.js +40 -0
- package/dist/discovery/metadata/fields/service-api-protocols.js.map +1 -0
- package/dist/discovery/metadata/fields/service-capabilities.d.ts +7 -0
- package/dist/discovery/metadata/fields/service-capabilities.d.ts.map +1 -0
- package/dist/discovery/metadata/fields/service-capabilities.js +229 -0
- package/dist/discovery/metadata/fields/service-capabilities.js.map +1 -0
- package/dist/discovery/metadata/fields/service-categories.d.ts +4 -0
- package/dist/discovery/metadata/fields/service-categories.d.ts.map +1 -0
- package/dist/discovery/metadata/fields/service-categories.js +37 -0
- package/dist/discovery/metadata/fields/service-categories.js.map +1 -0
- package/dist/discovery/metadata/fields/service-health.d.ts +7 -0
- package/dist/discovery/metadata/fields/service-health.d.ts.map +1 -0
- package/dist/discovery/metadata/fields/service-health.js +90 -0
- package/dist/discovery/metadata/fields/service-health.js.map +1 -0
- package/dist/discovery/metadata/fields/service-performance.d.ts +7 -0
- package/dist/discovery/metadata/fields/service-performance.d.ts.map +1 -0
- package/dist/discovery/metadata/fields/service-performance.js +63 -0
- package/dist/discovery/metadata/fields/service-performance.js.map +1 -0
- package/dist/discovery/metadata/fields/service-unit-billing.d.ts +8 -0
- package/dist/discovery/metadata/fields/service-unit-billing.d.ts.map +1 -0
- package/dist/discovery/metadata/fields/service-unit-billing.js +81 -0
- package/dist/discovery/metadata/fields/service-unit-billing.js.map +1 -0
- package/dist/discovery/metadata/fields/verifications.d.ts +7 -0
- package/dist/discovery/metadata/fields/verifications.d.ts.map +1 -0
- package/dist/discovery/metadata/fields/verifications.js +96 -0
- package/dist/discovery/metadata/fields/verifications.js.map +1 -0
- package/dist/discovery/metadata/index.d.ts +27 -0
- package/dist/discovery/metadata/index.d.ts.map +1 -0
- package/dist/discovery/metadata/index.js +56 -0
- package/dist/discovery/metadata/index.js.map +1 -0
- package/dist/discovery/metadata/versions/v10.d.ts +5 -0
- package/dist/discovery/metadata/versions/v10.d.ts.map +1 -0
- package/dist/discovery/metadata/versions/v10.js +32 -0
- package/dist/discovery/metadata/versions/v10.js.map +1 -0
- package/dist/discovery/metadata/versions/v11.d.ts +5 -0
- package/dist/discovery/metadata/versions/v11.d.ts.map +1 -0
- package/dist/discovery/metadata/versions/v11.js +11 -0
- package/dist/discovery/metadata/versions/v11.js.map +1 -0
- package/dist/discovery/metadata/versions/v12.d.ts +5 -0
- package/dist/discovery/metadata/versions/v12.d.ts.map +1 -0
- package/dist/discovery/metadata/versions/v12.js +66 -0
- package/dist/discovery/metadata/versions/v12.js.map +1 -0
- package/dist/discovery/metadata/versions/v13.d.ts +5 -0
- package/dist/discovery/metadata/versions/v13.d.ts.map +1 -0
- package/dist/discovery/metadata/versions/v13.js +16 -0
- package/dist/discovery/metadata/versions/v13.js.map +1 -0
- package/dist/discovery/metadata/versions/v14.d.ts +5 -0
- package/dist/discovery/metadata/versions/v14.d.ts.map +1 -0
- package/dist/discovery/metadata/versions/v14.js +16 -0
- package/dist/discovery/metadata/versions/v14.js.map +1 -0
- package/dist/discovery/metadata/wire.d.ts +54 -0
- package/dist/discovery/metadata/wire.d.ts.map +1 -0
- package/dist/discovery/metadata/wire.js +149 -0
- package/dist/discovery/metadata/wire.js.map +1 -0
- package/dist/discovery/metadata-codec.d.ts +1 -38
- package/dist/discovery/metadata-codec.d.ts.map +1 -1
- package/dist/discovery/metadata-codec.js +3 -1154
- package/dist/discovery/metadata-codec.js.map +1 -1
- package/dist/discovery/metadata-server.d.ts +3 -2
- package/dist/discovery/metadata-server.d.ts.map +1 -1
- package/dist/discovery/metadata-server.js +4 -1
- package/dist/discovery/metadata-server.js.map +1 -1
- package/dist/discovery/metadata-validator.d.ts.map +1 -1
- package/dist/discovery/metadata-validator.js +90 -1
- package/dist/discovery/metadata-validator.js.map +1 -1
- package/dist/discovery/service-catalog.d.ts +16 -2
- package/dist/discovery/service-catalog.d.ts.map +1 -1
- package/dist/discovery/service-catalog.js +8 -1
- package/dist/discovery/service-catalog.js.map +1 -1
- package/dist/health/gas-auto-refuel.d.ts +138 -0
- package/dist/health/gas-auto-refuel.d.ts.map +1 -0
- package/dist/health/gas-auto-refuel.js +216 -0
- package/dist/health/gas-auto-refuel.js.map +1 -0
- package/dist/health/gas-health-monitor.d.ts +4 -0
- package/dist/health/gas-health-monitor.d.ts.map +1 -1
- package/dist/health/gas-health-monitor.js +13 -0
- package/dist/health/gas-health-monitor.js.map +1 -1
- package/dist/health/model-health-checker.d.ts +67 -33
- package/dist/health/model-health-checker.d.ts.map +1 -1
- package/dist/health/model-health-checker.js +273 -121
- package/dist/health/model-health-checker.js.map +1 -1
- package/dist/health/self-health-error.d.ts +20 -0
- package/dist/health/self-health-error.d.ts.map +1 -0
- package/dist/health/self-health-error.js +60 -0
- package/dist/health/self-health-error.js.map +1 -0
- package/dist/health/seller-events.d.ts +1 -1
- package/dist/health/seller-events.d.ts.map +1 -1
- package/dist/health/seller-events.js.map +1 -1
- package/dist/health/service-performance.d.ts +28 -0
- package/dist/health/service-performance.d.ts.map +1 -0
- package/dist/health/service-performance.js +144 -0
- package/dist/health/service-performance.js.map +1 -0
- package/dist/health/stream-outcome.d.ts +19 -0
- package/dist/health/stream-outcome.d.ts.map +1 -0
- package/dist/health/stream-outcome.js +91 -0
- package/dist/health/stream-outcome.js.map +1 -0
- package/dist/index.d.ts +8 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -3
- package/dist/index.js.map +1 -1
- package/dist/interfaces/seller-provider.d.ts +11 -5
- package/dist/interfaces/seller-provider.d.ts.map +1 -1
- package/dist/node.d.ts +10 -2
- package/dist/node.d.ts.map +1 -1
- package/dist/node.js +43 -89
- package/dist/node.js.map +1 -1
- package/dist/p2p/connection-manager.d.ts +5 -1
- package/dist/p2p/connection-manager.d.ts.map +1 -1
- package/dist/p2p/connection-manager.js +48 -13
- package/dist/p2p/connection-manager.js.map +1 -1
- package/dist/payments/chain-config.d.ts +11 -0
- package/dist/payments/chain-config.d.ts.map +1 -1
- package/dist/payments/chain-config.js +7 -0
- package/dist/payments/chain-config.js.map +1 -1
- package/dist/payments/evm/usdc-eth-swap-client.d.ts +45 -0
- package/dist/payments/evm/usdc-eth-swap-client.d.ts.map +1 -0
- package/dist/payments/evm/usdc-eth-swap-client.js +83 -0
- package/dist/payments/evm/usdc-eth-swap-client.js.map +1 -0
- package/dist/payments/index.d.ts +2 -0
- package/dist/payments/index.d.ts.map +1 -1
- package/dist/payments/index.js +2 -0
- package/dist/payments/index.js.map +1 -1
- package/dist/payments/seller-payment-manager.d.ts +50 -0
- package/dist/payments/seller-payment-manager.d.ts.map +1 -1
- package/dist/payments/seller-payment-manager.js +320 -80
- package/dist/payments/seller-payment-manager.js.map +1 -1
- package/dist/routing/seller-health.d.ts +21 -0
- package/dist/routing/seller-health.d.ts.map +1 -1
- package/dist/routing/seller-health.js +19 -3
- package/dist/routing/seller-health.js.map +1 -1
- package/dist/seller-request-handler.d.ts +14 -0
- package/dist/seller-request-handler.d.ts.map +1 -1
- package/dist/seller-request-handler.js +207 -30
- package/dist/seller-request-handler.js.map +1 -1
- package/dist/types/peer.d.ts +6 -2
- package/dist/types/peer.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -1,18 +1,27 @@
|
|
|
1
|
+
import type { ServiceHealth, ServiceHealthReason, ServiceHealthSource, ServiceHealthState } from '../discovery/peer-metadata.js';
|
|
1
2
|
import type { Provider } from '../interfaces/seller-provider.js';
|
|
2
3
|
import type { SerializedHttpRequest } from '../types/http.js';
|
|
3
4
|
import { type ServiceApiProtocol } from '../types/service-api.js';
|
|
4
|
-
/** Default sweep interval. Each sweep sends one 1-token probe per
|
|
5
|
+
/** Default sweep interval. Each sweep sends one 1-token probe per service without recent buyer traffic. */
|
|
5
6
|
export declare const DEFAULT_HEALTH_CHECK_INTERVAL_MS: number;
|
|
6
|
-
/** Consecutive
|
|
7
|
+
/** Consecutive failed checks before a service is announced as failing. */
|
|
7
8
|
export declare const DEFAULT_HEALTH_CHECK_FAILURE_THRESHOLD = 3;
|
|
8
9
|
/** Per-probe timeout. A model that hangs this long is treated as failing. */
|
|
9
10
|
export declare const DEFAULT_HEALTH_CHECK_PROBE_TIMEOUT_MS = 60000;
|
|
11
|
+
/** Shortest gap between probes triggered by failed buyer requests for one service. */
|
|
12
|
+
export declare const LIVE_FAILURE_PROBE_MIN_GAP_MS = 30000;
|
|
13
|
+
/**
|
|
14
|
+
* A service that keeps failing is probed less often: every interval, then
|
|
15
|
+
* every second, then every third (with the default, 5, 10 and 15 minutes).
|
|
16
|
+
* Its upstream is often rate limited or out of credit, and each probe would
|
|
17
|
+
* add to that. A successful buyer request still marks it healthy at once.
|
|
18
|
+
*/
|
|
19
|
+
export declare const MAX_FAILING_PROBE_BACKOFF = 3;
|
|
10
20
|
export interface ModelHealthTarget {
|
|
11
21
|
/**
|
|
12
|
-
* The provider
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
* announced metadata.
|
|
22
|
+
* The provider registered with the node. The checker publishes results on
|
|
23
|
+
* its `serviceHealth`, which the announcer signs into metadata and the
|
|
24
|
+
* request handler quotes in errors.
|
|
16
25
|
*/
|
|
17
26
|
provider: Provider;
|
|
18
27
|
/**
|
|
@@ -33,9 +42,12 @@ export interface ModelHealthEvent {
|
|
|
33
42
|
/** The target's `id` (the configured provider name). */
|
|
34
43
|
providerId: string;
|
|
35
44
|
service: string;
|
|
36
|
-
|
|
45
|
+
/** `failing`: the service crossed the failure threshold; `recovered`: a check passed again. */
|
|
46
|
+
status: 'failing' | 'recovered';
|
|
37
47
|
consecutiveFailures: number;
|
|
38
|
-
/**
|
|
48
|
+
/** Why the service is failing (unset on recovery). */
|
|
49
|
+
reason?: ServiceHealthReason;
|
|
50
|
+
/** Short description of the most recent check outcome. Local only, never announced. */
|
|
39
51
|
detail: string;
|
|
40
52
|
}
|
|
41
53
|
/**
|
|
@@ -52,7 +64,7 @@ export interface UpstreamAccountEvent {
|
|
|
52
64
|
detail: string;
|
|
53
65
|
/** USD balance, when the provider can read it. */
|
|
54
66
|
balanceUsd: number | null;
|
|
55
|
-
/** The upstream's services
|
|
67
|
+
/** The upstream's services. */
|
|
56
68
|
services: string[];
|
|
57
69
|
}
|
|
58
70
|
export interface ServiceHealthSnapshot {
|
|
@@ -60,11 +72,18 @@ export interface ServiceHealthSnapshot {
|
|
|
60
72
|
/** The target's `id` (the configured provider name). */
|
|
61
73
|
providerId: string;
|
|
62
74
|
service: string;
|
|
63
|
-
|
|
75
|
+
status: ServiceHealthState;
|
|
64
76
|
consecutiveFailures: number;
|
|
77
|
+
failingSince: number | null;
|
|
78
|
+
reason: ServiceHealthReason | null;
|
|
79
|
+
/** When the evidence behind `status` was gathered, and from where. */
|
|
80
|
+
checkedAt: number | null;
|
|
81
|
+
source: ServiceHealthSource | null;
|
|
65
82
|
lastProbeAt: number | null;
|
|
66
83
|
lastStatusCode: number | null;
|
|
67
84
|
lastDetail: string | null;
|
|
85
|
+
/** Last successful billable buyer request. */
|
|
86
|
+
lastTrafficAt: number | null;
|
|
68
87
|
}
|
|
69
88
|
export interface ModelHealthCheckerConfig {
|
|
70
89
|
targets: ModelHealthTarget[];
|
|
@@ -72,8 +91,8 @@ export interface ModelHealthCheckerConfig {
|
|
|
72
91
|
failureThreshold?: number;
|
|
73
92
|
probeTimeoutMs?: number;
|
|
74
93
|
/**
|
|
75
|
-
* Invoked
|
|
76
|
-
*
|
|
94
|
+
* Invoked when a service starts failing or recovers. Callers should re-sign
|
|
95
|
+
* seller metadata here (e.g. `node.refreshSellerMetadata()`).
|
|
77
96
|
*/
|
|
78
97
|
onChange?: (event: ModelHealthEvent) => void | Promise<void>;
|
|
79
98
|
/** Invoked when an upstream account runs out of credit, drops below `lowBalanceUsd`, or is funded again. */
|
|
@@ -85,16 +104,16 @@ export interface ModelHealthCheckerConfig {
|
|
|
85
104
|
}
|
|
86
105
|
type ProbeOutcome = 'healthy' | 'unhealthy' | 'inconclusive';
|
|
87
106
|
/**
|
|
88
|
-
*
|
|
89
|
-
*
|
|
90
|
-
*
|
|
91
|
-
*
|
|
107
|
+
* The seller's self health check. Every service stays announced; its latest
|
|
108
|
+
* result is published on `provider.serviceHealth`, which goes into signed
|
|
109
|
+
* metadata (v13+) so buyers can hide failing services from catalogs and
|
|
110
|
+
* routing and explain why a pinned request failed.
|
|
92
111
|
*
|
|
93
|
-
*
|
|
94
|
-
*
|
|
95
|
-
*
|
|
96
|
-
*
|
|
97
|
-
*
|
|
112
|
+
* Buyer traffic is the main evidence: a successful billable response marks a
|
|
113
|
+
* service healthy, and a service that had one within the last interval is not
|
|
114
|
+
* probed. Idle services get a minimal (1-token) completion each interval, and
|
|
115
|
+
* a failed buyer request triggers an early probe. A service is failing after
|
|
116
|
+
* `failureThreshold` failed checks in a row and recovers on the first pass.
|
|
98
117
|
*/
|
|
99
118
|
export declare class ModelHealthChecker {
|
|
100
119
|
private readonly _targets;
|
|
@@ -113,13 +132,13 @@ export declare class ModelHealthChecker {
|
|
|
113
132
|
private readonly _onSweepComplete;
|
|
114
133
|
/** Each upstream's credit as last seen; unset until something said. */
|
|
115
134
|
private readonly _accounts;
|
|
116
|
-
/** Services
|
|
117
|
-
private
|
|
135
|
+
/** Services marked failing before `onChange` could be told; reported on the first start. */
|
|
136
|
+
private _failingAtInit;
|
|
118
137
|
constructor(config: ModelHealthCheckerConfig);
|
|
119
138
|
/** Start periodic sweeps. The first sweep runs immediately (async). */
|
|
120
139
|
start(): void;
|
|
121
140
|
stop(): void;
|
|
122
|
-
/**
|
|
141
|
+
/** Check every service once, skipping probes for services with recent buyer traffic. */
|
|
123
142
|
runSweep(): Promise<void>;
|
|
124
143
|
getSnapshot(): ServiceHealthSnapshot[];
|
|
125
144
|
private _runSweep;
|
|
@@ -128,25 +147,40 @@ export declare class ModelHealthChecker {
|
|
|
128
147
|
* upstream account check (key valid, account funded) once, and the model
|
|
129
148
|
* check (model still offered) for every service. A service is unavailable
|
|
130
149
|
* when either check says so, and available only when no check is unsure.
|
|
131
|
-
* `unavailable` counts as a failed check, `available`
|
|
150
|
+
* `unavailable` counts as a failed check, `available` as a pass,
|
|
132
151
|
* `unknown` changes nothing.
|
|
133
152
|
*/
|
|
134
153
|
private _checkServices;
|
|
135
154
|
private _stateFor;
|
|
136
155
|
private _probeService;
|
|
137
156
|
/**
|
|
138
|
-
* A live request's upstream answer (the seller's own traffic)
|
|
139
|
-
*
|
|
140
|
-
*
|
|
141
|
-
*
|
|
157
|
+
* A live request's upstream answer (the seller's own traffic). A billable
|
|
158
|
+
* success marks `service` healthy and spares it the next probe. A failure
|
|
159
|
+
* the upstream is responsible for (auth, limits, 5xx) triggers an early
|
|
160
|
+
* probe instead of counting directly, so one buyer's odd request cannot mark
|
|
161
|
+
* a service failing. An out-of-credit error is reported at once, and a
|
|
162
|
+
* billable success after one means the account pays again (polling or
|
|
163
|
+
* downloading a video already paid for is not billable and proves nothing).
|
|
142
164
|
*/
|
|
143
|
-
reportUpstreamResponse(provider: Provider, statusCode: number, body: string, billable?: boolean): void;
|
|
165
|
+
reportUpstreamResponse(provider: Provider, statusCode: number, body: string, billable?: boolean, service?: string): void;
|
|
166
|
+
/** A live request threw before the upstream answered (network error, timeout). */
|
|
167
|
+
reportUpstreamFailure(provider: Provider, service: string): void;
|
|
168
|
+
/** The announced health of `service`, if it has been checked. */
|
|
169
|
+
getServiceHealth(provider: Provider, service: string): ServiceHealth | undefined;
|
|
170
|
+
private _findTarget;
|
|
171
|
+
/** A failing service skips scheduled probes for longer the more checks it has failed in a row. */
|
|
172
|
+
private _backingOff;
|
|
173
|
+
private _probeSoon;
|
|
174
|
+
/** Probes never compete with paying buyers for concurrency slots. */
|
|
175
|
+
private _atCapacity;
|
|
144
176
|
private _lowLine;
|
|
145
177
|
/** Records an upstream's credit and reports a change; the first reading of a funded account is not a change. */
|
|
146
178
|
private _setAccount;
|
|
179
|
+
private _recordSuccess;
|
|
180
|
+
/** A failed check started at `checkStartedAt`; a buyer success since then outweighs it. */
|
|
147
181
|
private _recordFailure;
|
|
148
|
-
|
|
149
|
-
private
|
|
182
|
+
/** Writes the announced form of `state` onto the provider. */
|
|
183
|
+
private _publish;
|
|
150
184
|
private _emitChange;
|
|
151
185
|
}
|
|
152
186
|
export declare function supportsHealthProbe(protocol: ServiceApiProtocol): boolean;
|
|
@@ -166,7 +200,7 @@ export declare function buildHealthProbeRequest(service: string, protocol: Servi
|
|
|
166
200
|
* collapses upstream network errors/timeouts to 502.)
|
|
167
201
|
* - Everything else (400, 422, ...) — the endpoint is alive but the probe
|
|
168
202
|
* itself was rejected (for example, an unsupported parameter): inconclusive,
|
|
169
|
-
* so a working model is never
|
|
203
|
+
* so a working model is never marked failing over a probe quirk.
|
|
170
204
|
*/
|
|
171
205
|
export declare function classifyProbeStatus(statusCode: number): ProbeOutcome;
|
|
172
206
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-health-checker.d.ts","sourceRoot":"","sources":["../../src/health/model-health-checker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAA8C,MAAM,kCAAkC,CAAC;AAC7G,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAA4C,KAAK,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAI5G,
|
|
1
|
+
{"version":3,"file":"model-health-checker.d.ts","sourceRoot":"","sources":["../../src/health/model-health-checker.ts"],"names":[],"mappings":"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"}
|