@cotal-ai/auth 0.68.0 → 0.70.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/auth-service-contract.d.ts +2 -6
- package/dist/auth-service-contract.d.ts.map +1 -1
- package/dist/auth-service-contract.js +9 -15
- package/dist/auth-service-contract.js.map +1 -1
- package/dist/authority-client.d.ts +4 -4
- package/dist/authority-client.d.ts.map +1 -1
- package/dist/authority-client.js +5 -5
- package/dist/authority-client.js.map +1 -1
- package/dist/barrier-evict.d.ts +27 -5
- package/dist/barrier-evict.d.ts.map +1 -1
- package/dist/barrier-evict.js +9 -9
- package/dist/barrier-evict.js.map +1 -1
- package/dist/commands.js +1 -16
- package/dist/commands.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/ledger-scanner.d.ts.map +1 -1
- package/dist/ledger-scanner.js +2 -7
- package/dist/ledger-scanner.js.map +1 -1
- package/dist/login.d.ts +3 -2
- package/dist/login.d.ts.map +1 -1
- package/dist/login.js +19 -7
- package/dist/login.js.map +1 -1
- package/dist/managed-agent-enrollment.d.ts.map +1 -1
- package/dist/managed-agent-enrollment.js +18 -36
- package/dist/managed-agent-enrollment.js.map +1 -1
- package/dist/manager-admin-authorization.d.ts.map +1 -1
- package/dist/manager-admin-authorization.js +3 -18
- package/dist/manager-admin-authorization.js.map +1 -1
- package/dist/manager-authority.d.ts +18 -18
- package/dist/manager-authority.d.ts.map +1 -1
- package/dist/manager-authority.js +26 -29
- package/dist/manager-authority.js.map +1 -1
- package/dist/manager-contract.js +3 -3
- package/dist/manager-contract.js.map +1 -1
- package/dist/manager-goal-index.d.ts.map +1 -1
- package/dist/manager-goal-index.js +3 -20
- package/dist/manager-goal-index.js.map +1 -1
- package/dist/manager-maintenance.d.ts +1 -1
- package/dist/manager-maintenance.d.ts.map +1 -1
- package/dist/manager-maintenance.js +12 -9
- package/dist/manager-maintenance.js.map +1 -1
- package/dist/plane-claim.d.ts +12 -2
- package/dist/plane-claim.d.ts.map +1 -1
- package/dist/plane-claim.js +30 -23
- package/dist/plane-claim.js.map +1 -1
- package/dist/provider.d.ts.map +1 -1
- package/dist/provider.js +3 -24
- package/dist/provider.js.map +1 -1
- package/dist/records-scanner.d.ts.map +1 -1
- package/dist/records-scanner.js +3 -8
- package/dist/records-scanner.js.map +1 -1
- package/dist/retained-manager-validation.d.ts.map +1 -1
- package/dist/retained-manager-validation.js +4 -19
- package/dist/retained-manager-validation.js.map +1 -1
- package/dist/serialized.d.ts +8 -0
- package/dist/serialized.d.ts.map +1 -0
- package/dist/serialized.js +15 -0
- package/dist/serialized.js.map +1 -0
- package/dist/service.d.ts +16 -3
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +69 -72
- package/dist/service.js.map +1 -1
- package/dist/token.d.ts +0 -2
- package/dist/token.d.ts.map +1 -1
- package/dist/token.js +1 -1
- package/dist/token.js.map +1 -1
- package/package.json +4 -4
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EpEnvelopeError, REMOTE_MANAGER_IDENTITY_NAMES, assertDerivedOwnerToken, assertPrincipalOwnerToken, assertLifecycleToken, assertValidOwnerToken, managedRetirementOpId, parseRemoteManagerIdentities, remoteManagerActors, EP_RAIL_V1, EP_UNBOUND_CALLER_AUTHORITY, admissionKey, admissionSnapshot, createRunAdmission, isDerivedOwner, isIssuedCaller, issuedPermitsSubject, parseEpSubject, parseEndpointRequest, checkRequestSubjectAgreement, } from "@cotal-ai/core";
|
|
1
|
+
import { EpEnvelopeError, REMOTE_MANAGER_IDENTITY_NAMES, assertDerivedOwnerToken, assertPrincipalOwnerToken, assertLifecycleToken, assertValidOwnerToken, managedRetirementOpId, parseRemoteManagerEnvelope, parseRemoteManagerIdentities, remoteManagerActors, EP_RAIL_V1, EP_UNBOUND_CALLER_AUTHORITY, admissionKey, admissionSnapshot, createRunAdmission, isDerivedOwner, isIssuedCaller, isUserNkey, issuedPermitsSubject, parseEpSubject, parseEndpointRequest, checkRequestSubjectAgreement, } from "@cotal-ai/core";
|
|
2
2
|
import { CheckpointNotAmendable, CheckpointNotOpen, openCheckpointToken, settledPauseToken } from "@cotal-ai/lang";
|
|
3
3
|
import { timingSafeEqual } from "node:crypto";
|
|
4
4
|
import { remoteManagerCurrentRegistrationProof } from "./retained-manager-validation.js";
|
|
@@ -49,6 +49,7 @@ export function parseRemoteManagerAuthorityRequest(raw, opts = {}) {
|
|
|
49
49
|
for (const key of ["space", "actor", "instanceId", "managerLifecycleUid", "requestId"])
|
|
50
50
|
if (typeof o[key] !== "string" || o[key].length === 0)
|
|
51
51
|
requestError(`requires non-empty ${key}`);
|
|
52
|
+
assertValidOwnerToken(o.actor);
|
|
52
53
|
assertLifecycleToken(o.instanceId, "manager authority instanceId");
|
|
53
54
|
assertLifecycleToken(o.managerLifecycleUid, "manager authority lifecycleUid");
|
|
54
55
|
if (!/^[A-Za-z0-9_-]{22,64}$/.test(o.requestId))
|
|
@@ -80,8 +81,7 @@ export function parseRemoteManagerAuthorityRequest(raw, opts = {}) {
|
|
|
80
81
|
typeof r.takeoverId !== "string" || !/^[0-9a-f]{16}$/.test(r.takeoverId) ||
|
|
81
82
|
typeof r.epoch !== "number" || !Number.isSafeInteger(r.epoch) || r.epoch < 1 ||
|
|
82
83
|
typeof r.fencingToken !== "number" || !Number.isSafeInteger(r.fencingToken) || r.fencingToken < 1 ||
|
|
83
|
-
|
|
84
|
-
typeof r.mediatorId !== "string" || !/^U[A-Z2-7]{55}$/.test(r.mediatorId) || r.driverId === r.mediatorId ||
|
|
84
|
+
!isUserNkey(r.driverId) || !isUserNkey(r.mediatorId) || r.driverId === r.mediatorId ||
|
|
85
85
|
!r.holder.endsWith(`.${r.takeoverId}`))
|
|
86
86
|
requestError("renewRunDriver requires valid runId, holder, takeoverId, epoch, fencingToken, and distinct driverId/mediatorId");
|
|
87
87
|
run = r;
|
|
@@ -90,7 +90,7 @@ export function parseRemoteManagerAuthorityRequest(raw, opts = {}) {
|
|
|
90
90
|
requestError(`${o.operation} must not carry run`);
|
|
91
91
|
if (o.operation === "session") {
|
|
92
92
|
const s = o.session;
|
|
93
|
-
if (!s ||
|
|
93
|
+
if (!s || !isUserNkey(s.id) || s.endpoint !== "manager" ||
|
|
94
94
|
typeof s.sessionId !== "string" || s.sessionId.length === 0 || typeof s.epoch !== "number" || !Number.isSafeInteger(s.epoch) || s.epoch < 0 ||
|
|
95
95
|
typeof s.exp !== "number" || !Number.isSafeInteger(s.exp) || s.exp <= 0)
|
|
96
96
|
requestError("session requires { id, endpoint:\"manager\", sessionId, epoch, exp }");
|
|
@@ -103,7 +103,7 @@ export function parseRemoteManagerAuthorityRequest(raw, opts = {}) {
|
|
|
103
103
|
if (!r || Object.keys(r).sort().join(",") !== "id,opId,serveEpoch,target")
|
|
104
104
|
requestError("retire requires retirement exactly { id, target, opId, serveEpoch }");
|
|
105
105
|
const target = r.target;
|
|
106
|
-
if (
|
|
106
|
+
if (!isUserNkey(r.id) ||
|
|
107
107
|
!target || Object.keys(target).sort().join(",") !== "actor,lifecycleUid,owner" ||
|
|
108
108
|
typeof target.owner !== "string" || typeof target.actor !== "string" || typeof target.lifecycleUid !== "string" ||
|
|
109
109
|
typeof r.opId !== "string" || typeof r.serveEpoch !== "number" || !Number.isSafeInteger(r.serveEpoch) || r.serveEpoch < 0)
|
|
@@ -127,7 +127,7 @@ export function parseRemoteManagerAuthorityRequest(raw, opts = {}) {
|
|
|
127
127
|
requestError(`${o.operation} must not carry retirement`);
|
|
128
128
|
if (o.operation === "transferReader") {
|
|
129
129
|
const t = o.transferReader;
|
|
130
|
-
if (!t || Object.keys(t).join(",") !== "id" ||
|
|
130
|
+
if (!t || Object.keys(t).join(",") !== "id" || !isUserNkey(t.id))
|
|
131
131
|
requestError("transferReader requires transferReader exactly { id } with a user nkey");
|
|
132
132
|
}
|
|
133
133
|
else if (o.transferReader !== undefined)
|
|
@@ -232,26 +232,17 @@ export function parseRemoteRunAdmissionRequest(raw) {
|
|
|
232
232
|
for (const k of Object.keys(o))
|
|
233
233
|
if (!allowed.includes(k))
|
|
234
234
|
admissionError(`has unknown field ${k}`);
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
if (typeof o[k] !== "string" || o[k].length === 0)
|
|
239
|
-
admissionError(`requires ${k}`);
|
|
240
|
-
assertLifecycleToken(o.instanceId, "instanceId");
|
|
241
|
-
assertLifecycleToken(o.managerLifecycleUid, "managerLifecycleUid");
|
|
242
|
-
if (typeof o.registrationProof !== "string" || !/^sha256:[0-9a-f]{64}$/.test(o.registrationProof))
|
|
243
|
-
admissionError("requires a sha256 registrationProof");
|
|
235
|
+
const envelope = parseRemoteManagerEnvelope(o, "manager-run-admission", "manager run admission");
|
|
236
|
+
if (typeof o.accountPublicKey !== "string" || o.accountPublicKey.length === 0)
|
|
237
|
+
admissionError("requires accountPublicKey");
|
|
244
238
|
if (!Number.isSafeInteger(o.processEpoch) || o.processEpoch < 0)
|
|
245
239
|
admissionError("requires a non-negative processEpoch");
|
|
246
|
-
const identities = parseRemoteManagerIdentities(o.identities, admissionError);
|
|
247
240
|
const run = o.run;
|
|
248
241
|
if (run === null || typeof run !== "object" || Object.keys(run).sort().join(",") !== "runId,subject" ||
|
|
249
242
|
typeof run.runId !== "string" || !/^run-[0-9a-f]{32}$/.test(run.runId) || typeof run.subject !== "string")
|
|
250
243
|
admissionError("requires exactly run.runId (host-minted) and run.subject");
|
|
251
244
|
return {
|
|
252
|
-
v: 1, kind: "manager-run-admission",
|
|
253
|
-
managerLifecycleUid: o.managerLifecycleUid, requestId: o.requestId, registrationProof: o.registrationProof,
|
|
254
|
-
accountPublicKey: o.accountPublicKey, processEpoch: o.processEpoch, identities,
|
|
245
|
+
v: 1, kind: "manager-run-admission", ...envelope, accountPublicKey: o.accountPublicKey, processEpoch: o.processEpoch,
|
|
255
246
|
run: { runId: run.runId, subject: run.subject },
|
|
256
247
|
};
|
|
257
248
|
}
|
|
@@ -274,10 +265,11 @@ async function authenticateRegisteredManager(r, args, what) {
|
|
|
274
265
|
}
|
|
275
266
|
/**
|
|
276
267
|
* Host-side first-run admission for a registered signerless manager. The manager is trusted only to
|
|
277
|
-
* forward the `ep.v1` request subject it served
|
|
278
|
-
*
|
|
268
|
+
* forward the `ep.v1` request subject it served, and only once for a request this host observed its
|
|
269
|
+
* caller publish. Everything else is derived here: the caller and generation come from the
|
|
279
270
|
* subject, the evidence and live sources from the issued store, the ceiling from that evidence.
|
|
280
|
-
* Every refusal happens before the create; an
|
|
271
|
+
* Every refusal happens before the create; an observed forward whose run is already admitted for
|
|
272
|
+
* the same caller and instance returns the admission already written.
|
|
281
273
|
*/
|
|
282
274
|
export async function admitRemoteRun(args) {
|
|
283
275
|
const r = parseRemoteRunAdmissionRequest(args.request);
|
|
@@ -287,6 +279,10 @@ export async function admitRemoteRun(args) {
|
|
|
287
279
|
parsed.endpoint !== args.endpoint || parsed.command !== "run-start" || parsed.target !== null ||
|
|
288
280
|
(parsed.route === "inst" && parsed.instanceId !== r.instanceId) || !isIssuedCaller(parsed.caller))
|
|
289
281
|
throw new EpEnvelopeError("permission-denied", "manager run admission needs the served v1 run-start subject of this space, endpoint and instance with an issued caller");
|
|
282
|
+
// The subject's caller is the broker's word only if the broker carried it: a manager can name any
|
|
283
|
+
// live issuance in a subject it never received.
|
|
284
|
+
if ((await args.takeObserved(r.run.subject)) === undefined)
|
|
285
|
+
throw new EpEnvelopeError("permission-denied", "the issuing host did not observe this run-start request, or already admitted a forward of it (SPEC 14.8)");
|
|
290
286
|
const caller = parsed.caller;
|
|
291
287
|
if (isDerivedOwner(caller.owner) && caller.owner !== args.owner)
|
|
292
288
|
throw new EpEnvelopeError("permission-denied", "a user's run is admitted only on the participant manager that user registered");
|
|
@@ -321,7 +317,6 @@ export async function admitRemoteRun(args) {
|
|
|
321
317
|
return { v: 1, kind: "manager-run-admission", requestId: r.requestId, runId: r.run.runId, revision: entry.revision, admission: written };
|
|
322
318
|
}
|
|
323
319
|
}
|
|
324
|
-
const NKEY_USER = /^U[A-Z2-7]{55}$/;
|
|
325
320
|
const ID_TOKEN = /^[A-Za-z0-9_-]{1,64}$/;
|
|
326
321
|
/** Closed parser for {@link RemoteRunAttemptRequest}. */
|
|
327
322
|
export function parseRemoteRunAttemptRequest(raw) {
|
|
@@ -349,14 +344,14 @@ export function parseRemoteRunAttemptRequest(raw) {
|
|
|
349
344
|
const a = plain(attempt, ["runId", "takeoverId", "epoch", "fencingToken", "driverId", "mediatorId"], ["served"]);
|
|
350
345
|
if (!runIdOk(a.runId) || typeof a.takeoverId !== "string" || !ID_TOKEN.test(a.takeoverId) ||
|
|
351
346
|
!Number.isSafeInteger(a.epoch) || a.epoch < 1 || !Number.isSafeInteger(a.fencingToken) || a.fencingToken < 1 ||
|
|
352
|
-
|
|
347
|
+
!isUserNkey(a.driverId) || !isUserNkey(a.mediatorId) || a.driverId === a.mediatorId)
|
|
353
348
|
admissionError("attempt requires a run id, takeover id, positive epoch/fencingToken and distinct driver/mediator nkeys");
|
|
354
349
|
if (!servedOk(a.served))
|
|
355
350
|
admissionError("attempt served must be a request subject");
|
|
356
351
|
return { ...registered, kind: "manager-run-attempt", attempt: { runId: a.runId, takeoverId: a.takeoverId, epoch: a.epoch, fencingToken: a.fencingToken, driverId: a.driverId, mediatorId: a.mediatorId, ...(a.served !== undefined ? { served: a.served } : {}) } };
|
|
357
352
|
}
|
|
358
353
|
const op = plain(operator, ["id", "takeoverId"], ["runId", "answers", "served"]);
|
|
359
|
-
if (
|
|
354
|
+
if (!isUserNkey(op.id) || typeof op.takeoverId !== "string" || !ID_TOKEN.test(op.takeoverId) ||
|
|
360
355
|
(op.runId !== undefined && !runIdOk(op.runId)))
|
|
361
356
|
admissionError("operator requires an nkey id, a takeover id and an optional run id");
|
|
362
357
|
let answers;
|
|
@@ -371,8 +366,8 @@ export function parseRemoteRunAttemptRequest(raw) {
|
|
|
371
366
|
admissionError("operator served is the run-answer subject, and only an answering operator carries one");
|
|
372
367
|
return { ...registered, kind: "manager-run-attempt", operator: { id: op.id, takeoverId: op.takeoverId, ...(op.runId !== undefined ? { runId: op.runId } : {}), ...(answers ? { answers } : {}), ...(op.served !== undefined ? { served: op.served } : {}) } };
|
|
373
368
|
}
|
|
374
|
-
/** The resume or answer request its caller published on `subject`, or undefined for a
|
|
375
|
-
* manager serves. */
|
|
369
|
+
/** The run-start, resume or answer request its caller published on `subject`, or undefined for a
|
|
370
|
+
* request no manager serves. */
|
|
376
371
|
export function observedRunRequest(subject, data) {
|
|
377
372
|
const parsed = parseEpSubject(subject);
|
|
378
373
|
if (parsed === null || parsed.plane !== "request")
|
|
@@ -385,10 +380,12 @@ export function observedRunRequest(subject, data) {
|
|
|
385
380
|
catch {
|
|
386
381
|
return undefined;
|
|
387
382
|
}
|
|
383
|
+
const envelope = { class: env.class, op: env.op, bind: env.bind };
|
|
384
|
+
if (parsed.command === "run-start")
|
|
385
|
+
return { operation: { command: "run-start" }, envelope };
|
|
388
386
|
const args = env.args;
|
|
389
387
|
if (args === null || args === undefined || typeof args.runId !== "string")
|
|
390
388
|
return undefined;
|
|
391
|
-
const envelope = { class: env.class, op: env.op, bind: env.bind };
|
|
392
389
|
if (parsed.command === "run-resume")
|
|
393
390
|
return { operation: { command: "run-resume", runId: args.runId }, envelope };
|
|
394
391
|
if (parsed.command !== "run-answer")
|
|
@@ -422,7 +419,7 @@ async function authorizeServedRunCaller(args) {
|
|
|
422
419
|
const forwarded = args.operation, observed = observation.operation;
|
|
423
420
|
if (observed.command === "run-resume"
|
|
424
421
|
? forwarded.command !== "run-resume" || forwarded.runId !== observed.runId
|
|
425
|
-
: forwarded.command !== "run-answer" || forwarded.endpoint !== observed.endpoint || forwarded.runId !== observed.runId ||
|
|
422
|
+
: observed.command !== "run-answer" || forwarded.command !== "run-answer" || forwarded.endpoint !== observed.endpoint || forwarded.runId !== observed.runId ||
|
|
426
423
|
forwarded.stepKey !== observed.stepKey || forwarded.amend !== observed.amend)
|
|
427
424
|
throw new EpEnvelopeError("permission-denied", `the forwarded ${command} names another run, step, endpoint or amendment than the request the issuing host observed (SPEC 14.8)`);
|
|
428
425
|
// The manager serving at another incarnation than the bound one refuses the request unrun, so a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager-authority.js","sourceRoot":"","sources":["../src/manager-authority.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,6BAA6B,EAC7B,uBAAuB,EACvB,yBAAyB,EACzB,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,EACrB,4BAA4B,EAC5B,mBAAmB,EAenB,UAAU,EACV,2BAA2B,EAC3B,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,cAAc,EACd,oBAAoB,EACpB,4BAA4B,GAC7B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,iBAAiB,EAAqB,MAAM,gBAAgB,CAAC;AAEtI,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,qCAAqC,EAAE,MAAM,kCAAkC,CAAC;AACzF,OAAO,EAAE,6BAA6B,EAA+B,MAAM,uBAAuB,CAAC;AAGnG;+FAC+F;AAC/F,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAAC,IAUnD;IACC,MAAM,CAAC,GAAG,kCAAkC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3D,IAAI,CAAC,CAAC,SAAS,KAAK,qBAAqB,IAAI,CAAC,CAAC,SAAS,KAAK,gBAAgB;QAC3E,YAAY,CAAC,8BAA8B,CAAC,CAAC;IAC/C,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,gBAAgB,KAAK,IAAI,CAAC,gBAAgB;QACxE,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,yEAAyE,CAAC,CAAC;IAC5H,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACzD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM;QAChC,MAAM,IAAI,eAAe,CAAC,qBAAqB,EAAE,uDAAuD,CAAC,CAAC;IAC5G,IAAI,IAAI,CAAC,SAAS,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE;QAC/E,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,uDAAuD,CAAC,CAAC;IAC1G,IAAI,IAAI,CAAC,YAAY,KAAK,CAAC,CAAC,YAAY;QACtC,MAAM,IAAI,eAAe,CAAC,UAAU,EAAE,+CAA+C,CAAC,CAAC;IACzF,MAAM,QAAQ,GAAG,qCAAqC,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IAC9F,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAkB,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5E,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,uEAAuE,CAAC,CAAC;IAC1H,IAAI,CAAC,CAAC,SAAS,KAAK,gBAAgB,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,GAAI,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,GAAG,CAAC,UAAU,KAAK,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,GAAI,CAAC,MAAM;YAClG,GAAG,CAAC,UAAU,KAAK,CAAC,CAAC,GAAI,CAAC,UAAU,IAAI,GAAG,CAAC,KAAK,KAAK,CAAC,CAAC,GAAI,CAAC,KAAK,IAAI,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,GAAI,CAAC,YAAY;YAChH,MAAM,IAAI,eAAe,CAAC,UAAU,EAAE,gFAAgF,CAAC,CAAC;IAC5H,CAAC;AACH,CAAC;AAmBD,SAAS,YAAY,CAAC,IAAY;IAChC,MAAM,IAAI,eAAe,CAAC,aAAa,EAAE,qCAAqC,IAAI,EAAE,CAAC,CAAC;AACxF,CAAC;AAED;;mGAEmG;AACnG,MAAM,UAAU,kCAAkC,CAAC,GAAY,EAAE,OAAoC,EAAE;IACrG,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,YAAY,CAAC,mBAAmB,CAAC,CAAC;IACrG,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,WAAW,EAAE,mBAAmB,EAAE,SAAS,EAAE,YAAY,EAAE,mBAAmB,EAAE,YAAY,EAAE,kBAAkB,EAAE,cAAc,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC;IACtQ,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,YAAY,CAAC,yBAAyB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IAC/I,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,2BAA2B;QAAE,YAAY,CAAC,wDAAwD,CAAC,CAAC;IAChI,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,CAAC,SAAS,KAAK,UAAU,IAAI,CAAC,CAAC,SAAS,KAAK,OAAO,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,CAAC,SAAS,KAAK,qBAAqB,IAAI,CAAC,CAAC,SAAS,KAAK,gBAAgB,IAAI,CAAC,CAAC,SAAS,KAAK,gBAAgB;QAC9P,YAAY,CAAC,qIAAqI,CAAC,CAAC;IACtJ,KAAK,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,WAAW,CAAU;QAC7F,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE,YAAY,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAAC;IACnG,oBAAoB,CAAC,CAAC,CAAC,UAAoB,EAAE,8BAA8B,CAAC,CAAC;IAC7E,oBAAoB,CAAC,CAAC,CAAC,mBAA6B,EAAE,gCAAgC,CAAC,CAAC;IACxF,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC,SAAmB,CAAC;QAAE,YAAY,CAAC,uDAAuD,CAAC,CAAC;IACjI,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,CAAC,CAAC,iBAAiB,KAAK,SAAS,IAAI,CAAC,CAAC,iBAAiB,KAAK,SAAS,CAAC;QACvG,YAAY,CAAC,+DAA+D,CAAC,CAAC;IAChF,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,CAAC,iBAAiB,KAAK,QAAQ,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;QAC9H,YAAY,CAAC,GAAG,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC;IACrE,IAAI,CAAC,CAAC,SAAS,KAAK,UAAU,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,MAAM,GAAG,EAAE,CAAC;QAC5I,YAAY,CAAC,4DAA4D,CAAC,CAAC;IAC7E,IAAI,CAAC,CAAC,SAAS,KAAK,UAAU,IAAI,CAAC,CAAC,iBAAiB,KAAK,SAAS;QACjE,YAAY,CAAC,GAAG,CAAC,CAAC,SAAS,mCAAmC,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,KAAK,qBAAqB,IAAI,CAAC,CAAC,SAAS,KAAK,gBAAgB,CAAC;IAC1F,IAAI,OAAO,EAAE,CAAC;QACZ,IAAI,OAAO,CAAC,CAAC,gBAAgB,KAAK,QAAQ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC;YACvF,YAAY,CAAC,GAAG,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC;QAC9D,IAAI,OAAO,CAAC,CAAC,YAAY,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,YAAY,GAAG,CAAC;YACnG,YAAY,CAAC,GAAG,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC;IACxE,CAAC;SAAM,IAAI,CAAC,CAAC,gBAAgB,KAAK,SAAS,IAAI,CAAC,CAAC,YAAY,KAAK,SAAS;QACzE,YAAY,CAAC,GAAG,CAAC,CAAC,SAAS,kDAAkD,CAAC,CAAC;IACjF,IAAI,GAAyC,CAAC;IAC9C,IAAI,CAAC,CAAC,SAAS,KAAK,gBAAgB,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,CAAC,CAAC,GAA0C,CAAC;QACvD,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,gEAAgE;YAC5G,YAAY,CAAC,sGAAsG,CAAC,CAAC;QACvH,IAAI,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;YAClE,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;YACzE,OAAO,CAAC,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;YACxE,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;YAC5E,OAAO,CAAC,CAAC,YAAY,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,YAAY,GAAG,CAAC;YACjG,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;YACrE,OAAO,CAAC,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,UAAU;YACxG,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;YACxC,YAAY,CAAC,gHAAgH,CAAC,CAAC;QACjI,GAAG,GAAG,CAAiE,CAAC;IAC1E,CAAC;SAAM,IAAI,CAAC,CAAC,GAAG,KAAK,SAAS;QAAE,YAAY,CAAC,GAAG,CAAC,CAAC,SAAS,qBAAqB,CAAC,CAAC;IAClF,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,CAAC,GAAG,CAAC,CAAC,OAA8C,CAAC;QAC3D,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS;YAC3F,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;YAC3I,OAAO,CAAC,CAAC,GAAG,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;YACzE,YAAY,CAAC,sEAAsE,CAAC,CAAC;IACzF,CAAC;SAAM,IAAI,CAAC,CAAC,OAAO,KAAK,SAAS;QAAE,YAAY,CAAC,GAAG,CAAC,CAAC,SAAS,yBAAyB,CAAC,CAAC;IAC1F,IAAI,UAAuD,CAAC;IAC5D,IAAI,CAAC,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,UAAiD,CAAC;QAC9D,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,2BAA2B;YACvE,YAAY,CAAC,qEAAqE,CAAC,CAAC;QACtF,MAAM,MAAM,GAAG,CAAC,CAAC,MAA6C,CAAC;QAC/D,IAAI,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,0BAA0B;YAC9E,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,YAAY,KAAK,QAAQ;YAC/G,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,UAAU,GAAG,CAAC;YAC3H,YAAY,CAAC,uGAAuG,CAAC,CAAC;QACxH,oBAAoB,CAAC,MAAM,CAAC,YAAY,EAAE,kDAAkD,CAAC,CAAC;QAC9F,oBAAoB,CAAC,CAAC,CAAC,IAAI,EAAE,mCAAmC,CAAC,CAAC;QAClE,IAAI,CAAC,CAAC,IAAI,KAAK,qBAAqB,CAAC,MAAM,CAAC,YAAY,CAAC;YACvD,YAAY,CAAC,iFAAiF,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;QACvH,UAAU,GAAG;YACX,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,MAAM,EAAE;gBACN,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,yBAAyB,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,MAAM,CAAC,KAAK,CAAC;gBACpI,KAAK,EAAE,qBAAqB,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC1C,YAAY,EAAE,MAAM,CAAC,YAAY;aAClC;YACD,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,UAAU,EAAE,CAAC,CAAC,UAAU;SACzB,CAAC;IACJ,CAAC;SAAM,IAAI,CAAC,CAAC,UAAU,KAAK,SAAS;QAAE,YAAY,CAAC,GAAG,CAAC,CAAC,SAAS,4BAA4B,CAAC,CAAC;IAChG,IAAI,CAAC,CAAC,SAAS,KAAK,gBAAgB,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,CAAC,CAAC,cAAqD,CAAC;QAClE,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACtG,YAAY,CAAC,wEAAwE,CAAC,CAAC;IAC3F,CAAC;SAAM,IAAI,CAAC,CAAC,cAAc,KAAK,SAAS;QAAE,YAAY,CAAC,GAAG,CAAC,CAAC,SAAS,gCAAgC,CAAC,CAAC;IACxG,MAAM,UAAU,GAAG,4BAA4B,CAAC,CAAC,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IAC5E,OAAO;QACL,CAAC,EAAE,CAAC;QACJ,IAAI,EAAE,2BAA2B;QACjC,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,KAAK,EAAE,CAAC,CAAC,KAAe;QACxB,KAAK,EAAE,CAAC,CAAC,KAAe;QACxB,UAAU,EAAE,CAAC,CAAC,UAAoB;QAClC,mBAAmB,EAAE,CAAC,CAAC,mBAA6B;QACpD,SAAS,EAAE,CAAC,CAAC,SAAmB;QAChC,GAAG,CAAC,OAAO,CAAC,CAAC,iBAAiB,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9F,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,gBAA0B,EAAE,YAAY,EAAE,CAAC,CAAC,YAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9G,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvB,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAmD,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzH,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrC,GAAG,CAAC,CAAC,CAAC,SAAS,KAAK,gBAAgB,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,EAAE,EAAE,EAAG,CAAC,CAAC,cAAiC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChH,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,UAAU;KACX,CAAC;AACJ,CAAC;AAED,yFAAyF;AACzF,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,IAAqC;IACrF,MAAM,CAAC,GAAG,kCAAkC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC,CAAC;IAC1G,6BAA6B,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,EAAE,gFAAgF,CAAC,CAAC;IACpI,MAAM,MAAM,GAAG,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACjD,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvE,IAAI,CAAC,CAAC,UAAU;QAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IAC5C,IAAI,CAAC,CAAC,cAAc;QAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IACpD,IAAI,CAAC,CAAC,GAAG;QAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACtD,IAAI,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,MAAM;QAClC,MAAM,IAAI,eAAe,CAAC,aAAa,EAAE,oGAAoG,CAAC,CAAC;IACjJ,IAAI,CAAC,CAAC,SAAS,KAAK,qBAAqB,IAAI,CAAC,CAAC,SAAS,KAAK,gBAAgB,EAAE,CAAC;QAC9E,IAAI,CAAC,IAAI,CAAC,gBAAgB;YACxB,MAAM,IAAI,eAAe,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC,SAAS,kEAAkE,CAAC,CAAC;QAC7I,MAAM,IAAI,CAAC,gBAAgB,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAC3E,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IACvC,MAAM,QAAQ,GAAG,CAAC,CAAC,SAAS,KAAK,qBAAqB;QACpD,CAAC,CAAC,6BAA6B;QAC/B,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,gBAAgB;YAChC,CAAC,CAAC,CAAC,WAAW,EAAE,aAAa,CAAC;YAC9B,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS;gBAC7B,CAAC,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC;gBAC5B,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,UAAU;oBAC1B,CAAC,CAAC,CAAC,OAAO,EAAE,YAAY,EAAE,eAAe,CAAC;oBAC1C,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,OAAO;wBACvB,CAAC,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC;wBAC9B,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS;4BACzB,CAAC,CAAC,CAAC,gBAAgB,CAAC;4BACpB,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,QAAQ;gCACxB,CAAC,CAAC,CAAC,qBAAqB,CAAC;gCAC3B,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,gBAAgB;oCAChC,CAAC,CAAC,CAAC,gBAAgB,CAAC;oCACtB,CAAC,CAAC,6BAA6B,CAAC;IACtC,KAAK,MAAM,IAAI,IAAI,QAAQ;QACzB,IAAI,CAAC,CAAC,IAAI,IAAI,WAAW,CAAC;YACxB,MAAM,IAAI,eAAe,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC,SAAS,sCAAsC,IAAI,EAAE,CAAC,CAAC;IACtH,IAAI,CAAC,CAAC,CAAC,SAAS,KAAK,qBAAqB,IAAI,CAAC,CAAC,SAAS,KAAK,gBAAgB,CAAC;QAC3E,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;QAC9E,MAAM,IAAI,eAAe,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC,SAAS,sDAAsD,CAAC,CAAC;IAC9H,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;IAC1C,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAW,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;IACpF,OAAO;QACL,CAAC,EAAE,CAAC;QACJ,IAAI,EAAE,2BAA2B;QACjC,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,YAAY,EAAE,CAAC,CAAC,mBAAmB;QACnC,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,GAAG,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,gBAAgB,EAAE,YAAY,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,QAAQ;QACR,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;QAC5B,MAAM;QACN,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,GAAG,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,MAAM,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChG,WAAW;KACZ,CAAC;AACJ,CAAC;AAID,SAAS,cAAc,CAAC,IAAY;IAClC,MAAM,IAAI,eAAe,CAAC,aAAa,EAAE,iCAAiC,IAAI,EAAE,CAAC,CAAC;AACpF,CAAC;AAED,iGAAiG;AACjG,MAAM,UAAU,8BAA8B,CAAC,GAAY;IACzD,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,cAAc,CAAC,mBAAmB,CAAC,CAAC;IACvG,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,WAAW,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,cAAc,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;IAChL,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,cAAc,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;IACnG,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,uBAAuB;QAAE,cAAc,CAAC,kCAAkC,CAAC,CAAC;IACxG,KAAK,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,WAAW,EAAE,kBAAkB,CAAU;QAC/G,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAK,CAAC,CAAC,CAAC,CAAY,CAAC,MAAM,KAAK,CAAC;YAAE,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IACjG,oBAAoB,CAAC,CAAC,CAAC,UAAoB,EAAE,YAAY,CAAC,CAAC;IAC3D,oBAAoB,CAAC,CAAC,CAAC,mBAA6B,EAAE,qBAAqB,CAAC,CAAC;IAC7E,IAAI,OAAO,CAAC,CAAC,iBAAiB,KAAK,QAAQ,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC;QAAE,cAAc,CAAC,qCAAqC,CAAC,CAAC;IACzJ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,IAAK,CAAC,CAAC,YAAuB,GAAG,CAAC;QAAE,cAAc,CAAC,sCAAsC,CAAC,CAAC;IACpI,MAAM,UAAU,GAAG,4BAA4B,CAAC,CAAC,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAC9E,MAAM,GAAG,GAAG,CAAC,CAAC,GAAqC,CAAC;IACpD,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,eAAe;QAChG,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;QAC3G,cAAc,CAAC,0DAA0D,CAAC,CAAC;IAC7E,OAAO;QACL,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,CAAC,CAAC,KAAe,EAAE,KAAK,EAAE,CAAC,CAAC,KAAe,EAAE,UAAU,EAAE,CAAC,CAAC,UAAoB;QAC3H,mBAAmB,EAAE,CAAC,CAAC,mBAA6B,EAAE,SAAS,EAAE,CAAC,CAAC,SAAmB,EAAE,iBAAiB,EAAE,CAAC,CAAC,iBAA2B;QACxI,gBAAgB,EAAE,CAAC,CAAC,gBAA0B,EAAE,YAAY,EAAE,CAAC,CAAC,YAAsB,EAAE,UAAU;QAClG,GAAG,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,KAAe,EAAE,OAAO,EAAE,GAAG,CAAC,OAAiB,EAAE;KACpE,CAAC;AACJ,CAAC;AAED;sFACsF;AACtF,KAAK,UAAU,6BAA6B,CAC1C,CAAuK,EACvK,IAA0I,EAC1I,IAAY;IAEZ,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,gBAAgB,KAAK,IAAI,CAAC,gBAAgB;QACxE,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,mBAAmB,IAAI,kDAAkD,CAAC,CAAC;IAC5H,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACzD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM;QAChC,MAAM,IAAI,eAAe,CAAC,qBAAqB,EAAE,mBAAmB,IAAI,gCAAgC,CAAC,CAAC;IAC5G,IAAI,IAAI,CAAC,SAAS,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE;QAC/E,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,mBAAmB,IAAI,gCAAgC,CAAC,CAAC;IAC1G,IAAI,IAAI,CAAC,YAAY,KAAK,CAAC,CAAC,YAAY;QACtC,MAAM,IAAI,eAAe,CAAC,UAAU,EAAE,mBAAmB,IAAI,wBAAwB,CAAC,CAAC;IACzF,MAAM,QAAQ,GAAG,qCAAqC,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IAC9F,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAkB,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5E,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,mBAAmB,IAAI,gDAAgD,CAAC,CAAC;IAC1H,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAYpC;IACC,MAAM,CAAC,GAAG,8BAA8B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,MAAM,6BAA6B,CAAC,CAAC,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;IAC9D,MAAM,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7C,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,GAAG,CAAC,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU;QAC7H,MAAM,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO,KAAK,WAAW,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI;QAC7F,CAAC,MAAM,CAAC,KAAK,KAAK,MAAM,IAAI,MAAM,CAAC,UAAU,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC;QACnG,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,wHAAwH,CAAC,CAAC;IAC3K,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7B,IAAI,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK;QAC7D,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,+EAA+E,CAAC,CAAC;IAClI,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;IACzH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACnE,MAAM,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC;IAChC,IAAI,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,UAAU,KAAK,GAAG,CAAC,UAAU;QACjI,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,+DAA+D,CAAC,CAAC;IAClH,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;QAC7E,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,oEAAoE,CAAC,CAAC;IACvH,MAAM,SAAS,GAAiB;QAC9B,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU;QACjG,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,WAAW;QAC9C,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,gBAAgB,EAAE,QAAQ,CAAC,QAAQ,EAAE;QACxE,UAAU,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE;KACrC,CAAC;IACF,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QACtE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;IAChJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,CAAC,GAAG,YAAY,eAAe,CAAC,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU;YAAE,MAAM,GAAG,CAAC;QAC5E,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QAClF,IAAI,KAAK,KAAK,IAAI;YAAE,MAAM,GAAG,CAAC;QAC9B,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACrF,MAAM,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC;QAC7B,IAAI,OAAO,CAAC,UAAU,KAAK,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK;YACpH,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,UAAU,KAAK,GAAG,CAAC,UAAU;YAC9D,MAAM,IAAI,eAAe,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,qDAAqD,CAAC,CAAC;QACjH,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;IAC3I,CAAC;AACH,CAAC;AAED,MAAM,SAAS,GAAG,iBAAiB,CAAC;AACpC,MAAM,QAAQ,GAAG,uBAAuB,CAAC;AAEzC,yDAAyD;AACzD,MAAM,UAAU,4BAA4B,CAAC,GAAY;IACvD,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,cAAc,CAAC,mBAAmB,CAAC,CAAC;IACvG,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,IAAI,CAAC,CAAC,IAAI,KAAK,qBAAqB;QAAE,cAAc,CAAC,gCAAgC,CAAC,CAAC;IACvF,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC;IACzC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC;QAAE,cAAc,CAAC,4CAA4C,CAAC,CAAC;IACvH,MAAM,IAAI,GAAG,8BAA8B,CAAC,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,uBAAuB,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,OAAO,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAC9I,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,UAAU,EAAE,GAAG,IAAI,CAAC;IACvD,MAAM,KAAK,GAAG,CAAC,CAAU,EAAE,IAAc,EAAE,WAAqB,EAAE,EAAE,EAAE;QACpE,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YAAE,cAAc,CAAC,oCAAoC,CAAC,CAAC;QAClH,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAW,CAAC,CAAC;QACnC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAAE,cAAc,CAAC,uCAAuC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5K,OAAO,CAA4B,CAAC;IACtC,CAAC,CAAC;IACF,MAAM,OAAO,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACtF,MAAM,QAAQ,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC;IAChH,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,YAAY,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;QACjH,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;YACrF,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,IAAK,CAAC,CAAC,KAAgB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,IAAK,CAAC,CAAC,YAAuB,GAAG,CAAC;YACpI,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,UAAU;YACnK,cAAc,CAAC,wGAAwG,CAAC,CAAC;QAC3H,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;YAAE,cAAc,CAAC,0CAA0C,CAAC,CAAC;QACpF,OAAO,EAAE,GAAG,UAAU,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAe,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC,KAAe,EAAE,YAAY,EAAE,CAAC,CAAC,YAAsB,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;IAC9S,CAAC;IACD,MAAM,EAAE,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;IACjF,IAAI,OAAO,EAAE,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC;QACzH,CAAC,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;QAChD,cAAc,CAAC,oEAAoE,CAAC,CAAC;IACvF,IAAI,OAAqE,CAAC;IAC1E,IAAI,EAAE,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7D,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC,KAAK,KAAK,SAAS;YACjI,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC;YAC7C,cAAc,CAAC,4GAA4G,CAAC,CAAC;QAC/H,OAAO,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,KAAe,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IACpH,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,CAAC;QAC5E,cAAc,CAAC,uFAAuF,CAAC,CAAC;IAC1G,OAAO,EAAE,GAAG,UAAU,EAAE,IAAI,EAAE,qBAAqB,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,MAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;AACpR,CAAC;AAiBD;sBACsB;AACtB,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,IAAgB;IAClE,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IACvC,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACpE,IAAI,GAAoB,CAAC;IACzB,IAAI,CAAC;QACH,GAAG,GAAG,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACvE,4BAA4B,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;IACtB,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAC5F,MAAM,QAAQ,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;IAClE,IAAI,MAAM,CAAC,OAAO,KAAK,YAAY;QAAE,OAAO,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,CAAC;IAClH,IAAI,MAAM,CAAC,OAAO,KAAK,YAAY;QAAE,OAAO,SAAS,CAAC;IACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC;IAClD,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC;QAAE,OAAO,SAAS,CAAC;IACxJ,OAAO,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC;AAC5I,CAAC;AAED;;;;;;;iGAOiG;AACjG,KAAK,UAAU,wBAAwB,CAAC,IAgBvC;IACC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;IACvC,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS;QAChG,MAAM,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC;QAC5H,CAAC,MAAM,CAAC,KAAK,KAAK,MAAM,IAAI,MAAM,CAAC,UAAU,KAAK,IAAI,CAAC,UAAU,CAAC;QACpE,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,YAAY,OAAO,2EAA2E,CAAC,CAAC;IACjJ,kGAAkG;IAClG,gDAAgD;IAChD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACzD,IAAI,WAAW,KAAK,SAAS;QAC3B,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,yCAAyC,OAAO,2DAA2D,CAAC,CAAC;IAC9J,6FAA6F;IAC7F,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,GAAG,WAAW,CAAC,SAAS,CAAC;IACnE,IAAI,QAAQ,CAAC,OAAO,KAAK,YAAY;QACnC,CAAC,CAAC,SAAS,CAAC,OAAO,KAAK,YAAY,IAAI,SAAS,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK;QAC1E,CAAC,CAAC,SAAS,CAAC,OAAO,KAAK,YAAY,IAAI,SAAS,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ,IAAI,SAAS,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK;YACpH,SAAS,CAAC,OAAO,KAAK,QAAQ,CAAC,OAAO,IAAI,SAAS,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK;QAC9E,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,iBAAiB,OAAO,wGAAwG,CAAC,CAAC;IACnL,gGAAgG;IAChG,iFAAiF;IACjF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,EAAE,GAAG,WAAW,CAAC,QAAQ,CAAC;IAChE,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,YAAY,CAAC;QACjG,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,gBAAgB,OAAO,0HAA0H,CAAC,CAAC;IACpM,+FAA+F;IAC/F,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;IACrG,IAAI,aAAa,KAAK,UAAU,CAAC,KAAK,IAAI,EAAE,CAAC,WAAW,KAAK,UAAU,CAAC,WAAW,IAAI,EAAE,CAAC,YAAY,KAAK,UAAU,CAAC,YAAY;QAChI,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,gBAAgB,OAAO,uIAAuI,CAAC,CAAC;IACjN,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7B,IAAI,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,QAAQ;QAChE,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,mHAAmH,CAAC,CAAC;IACtK,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,IAAI,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;QACzD,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;QAC5H,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACnE,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC;YAC3E,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,oDAAoD,OAAO,UAAU,CAAC,CAAC;QACxH,OAAO;IACT,CAAC;IACD,IAAI,OAAO,KAAK,YAAY,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC;QAAE,OAAO;IAC1I,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,GAAG,OAAO,8JAA8J,EACrN,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;AACxG,CAAC;AAeD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,IAuB/C;IACC,MAAM,CAAC,GAAG,4BAA4B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,MAAM,6BAA6B,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;IACzE,MAAM,QAAQ,GAAG,KAAK,EAAE,KAAa,EAAE,EAAE;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAC5B,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,OAAO,KAAK,2DAA2D,CAAC,CAAC;QAC1H,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,KAAK,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK;YAC7H,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,OAAO,KAAK,uDAAuD,CAAC,CAAC;QACtH,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,OAAe,EAAE,SAA8B,EAAE,QAAgB,EAAE,EAAE;QACnF,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,IAAI,IAAI,CAAC,kBAAkB,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS;YACxI,IAAI,CAAC,iBAAiB,KAAK,SAAS;YACtC,MAAM,IAAI,eAAe,CAAC,UAAU,EAAE,0IAA0I,CAAC,CAAC;QACpL,OAAO,wBAAwB,CAAC;YAC9B,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,YAAY,EAAE,CAAC,CAAC,YAAY;YACrI,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY;YAClI,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;SAC1C,CAAC,CAAC;IACL,CAAC,CAAC;IACF,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;QACd,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;QACpB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS;YAAE,MAAM,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACtH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACjD,IAAI,MAAM,EAAE,KAAK,KAAK,WAAW,IAAI,MAAM,EAAE,KAAK,KAAK,QAAQ;YAC7D,MAAM,IAAI,eAAe,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC,KAAK,OAAO,MAAM,CAAC,KAAK,sCAAsC,CAAC,CAAC;QAC5H,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,YAAY,KAAK,CAAC,MAAM,EAAE,YAAY,IAAI,CAAC,CAAC,GAAG,CAAC;YAC5F,MAAM,IAAI,eAAe,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,KAAK,wDAAwD,CAAC,CAAC;QAChH,MAAM,GAAG,GAAuB,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;QAC/K,gGAAgG;QAChG,mGAAmG;QACnG,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,EAAE,GAAG,GAAG,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,CAAC;IAC3N,CAAC;IACD,MAAM,EAAE,GAAG,CAAC,CAAC,QAAS,CAAC;IACvB,IAAI,EAAE,CAAC,KAAK,KAAK,SAAS;QAAE,MAAM,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IACrD,IAAI,KAAyB,CAAC;IAC9B,IAAI,EAAE,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,KAAK,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC;QACzE,MAAM,QAAQ,CAAC,KAAK,CAAC,CAAC;QACtB,2FAA2F;QAC3F,wFAAwF;QACxF,KAAK,GAAG,UAAU,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QACzE,6FAA6F;QAC7F,+DAA+D;QAC/D,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACzF,MAAM,IAAI,eAAe,CAAC,qBAAqB,EAAE,KAAK;gBACpD,CAAC,CAAC,iEAAiE;gBACnE,CAAC,CAAC,8DAA8D,CAAC,CAAC;QACtE,iGAAiG;QACjG,IAAI,EAAE,CAAC,MAAM,KAAK,SAAS;YACzB,MAAM,IAAI,eAAe,CAAC,mBAAmB,EAAE,0GAA0G,CAAC,CAAC;QAC7J,MAAM,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACjH,CAAC;IACD,MAAM,WAAW,GAAyB,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IACjN,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,EAAE,CAAC;AAC7F,CAAC;AAED,yGAAyG;AACzG,SAAS,UAAU,CAAC,OAAgC,EAAE,KAAa,EAAE,OAAe,EAAE,KAAc;IAClG,IAAI,CAAC;QACH,IAAI,CAAC,KAAK;YAAE,OAAO,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAChE,MAAM,KAAK,GAAG,iBAAiB,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QACzD,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;QACxF,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,iBAAiB,IAAI,CAAC,YAAY,sBAAsB;YAAE,MAAM,IAAI,eAAe,CAAC,qBAAqB,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;QACvI,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"manager-authority.js","sourceRoot":"","sources":["../src/manager-authority.ts"],"names":[],"mappings":"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"}
|
package/dist/manager-contract.js
CHANGED
|
@@ -11,14 +11,14 @@ export function reconstructRemoteManagerServeGrant(request, owner, observed) {
|
|
|
11
11
|
export function remoteManagerSurface(document) {
|
|
12
12
|
const cluster = document;
|
|
13
13
|
if (!cluster || !Number.isSafeInteger(cluster.revision) || !Array.isArray(cluster.commands) || cluster.commands.length === 0)
|
|
14
|
-
throw new Error("
|
|
14
|
+
throw new Error("found no canonical manager cluster document");
|
|
15
15
|
const surface = Object.create(null);
|
|
16
16
|
for (const command of cluster.commands) {
|
|
17
17
|
if (typeof command.name !== "string" || command.class !== "ephemeral" || typeof command.targeted !== "boolean" ||
|
|
18
18
|
typeof command.capability !== "string" || typeof command.inputDigest !== "string" || typeof command.outputDigest !== "string")
|
|
19
|
-
throw new Error("manager
|
|
19
|
+
throw new Error("the manager cluster document carries a malformed command declaration");
|
|
20
20
|
if (surface[command.name])
|
|
21
|
-
throw new Error(`manager
|
|
21
|
+
throw new Error(`the manager cluster document declares command ${command.name} twice`);
|
|
22
22
|
surface[command.name] = {
|
|
23
23
|
clusterDigest: contractDigest(cluster),
|
|
24
24
|
class: "ephemeral",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager-contract.js","sourceRoot":"","sources":["../src/manager-contract.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,EAC7B,cAAc,GAIf,MAAM,gBAAgB,CAAC;AAExB;;qFAEqF;AACrF,MAAM,UAAU,kCAAkC,CAChD,OAAsC,EACtC,KAAa,EACb,QAAqB;IAErB,MAAM,SAAS,GAAG,OAAO,CAAC,iBAAiB,IAAI,EAAE,CAAC;IAClD,OAAO,kCAAkC,CACvC,OAAO,EAAE,KAAK,EACd,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAK,KAA2B,CAAC,GAAG,KAAK,kBAAkB,CAAC,EACxH,QAAQ,CACT,CAAC;AACJ,CAAC;AAED;WACW;AACX,MAAM,UAAU,oBAAoB,CAAC,QAAiB;IACpD,MAAM,OAAO,GAAG,QAIH,CAAC;IACd,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;QAC1H,MAAM,IAAI,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"manager-contract.js","sourceRoot":"","sources":["../src/manager-contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager-goal-index.d.ts","sourceRoot":"","sources":["../src/manager-goal-index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"manager-goal-index.d.ts","sourceRoot":"","sources":["../src/manager-goal-index.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,iCAAiC,EACtC,KAAK,gCAAgC,EACtC,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAiC,KAAK,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACnG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAIxE,wBAAgB,sCAAsC,CAAC,GAAG,EAAE,OAAO,GAAG,iCAAiC,CAQtG;AAED,wBAAsB,mCAAmC,CAAC,IAAI,EAAE,sBAAsB,GAAG;IACvF,OAAO,EAAE,iCAAiC,CAAC;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,GAAG,UAAU,CAAC;IACjC,kBAAkB,EAAE,kBAAkB,CAAC;CACxC,GAAG,OAAO,CAAC,iCAAiC,CAAC,CAc7C;AAED,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,iCAAiC,EAC1C,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,cAAc,EAAE,GACxB,gCAAgC,CASlC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EpEnvelopeError,
|
|
1
|
+
import { EpEnvelopeError, remoteManagerActors, parseRemoteManagerEnvelope, } from "@cotal-ai/core";
|
|
2
2
|
import { remoteManagerCurrentRegistrationProof } from "./retained-manager-validation.js";
|
|
3
3
|
import { timingSafeEqual } from "node:crypto";
|
|
4
4
|
import { requireManagerAuthorityHolder } from "./platform-control.js";
|
|
@@ -11,27 +11,10 @@ export function parseRemoteManagerGoalIndexScanRequest(raw) {
|
|
|
11
11
|
for (const key of Object.keys(o))
|
|
12
12
|
if (!fields.includes(key))
|
|
13
13
|
bad(`carries unknown field ${JSON.stringify(key)} (the protocol is closed)`);
|
|
14
|
-
|
|
15
|
-
bad('must carry { v: 1, kind: "manager-goal-index-scan" }');
|
|
16
|
-
for (const key of ["space", "actor", "instanceId", "managerLifecycleUid", "requestId", "registrationProof"])
|
|
17
|
-
if (typeof o[key] !== "string" || o[key].length === 0)
|
|
18
|
-
bad(`requires non-empty ${key}`);
|
|
19
|
-
assertValidOwnerToken(o.actor);
|
|
20
|
-
assertLifecycleToken(o.instanceId, "manager goal-index scan instanceId");
|
|
21
|
-
assertLifecycleToken(o.managerLifecycleUid, "manager goal-index scan lifecycleUid");
|
|
22
|
-
if (!/^[A-Za-z0-9_-]{22,64}$/.test(o.requestId))
|
|
23
|
-
bad("requestId must be a 22-64 character idempotency token");
|
|
24
|
-
if (!/^sha256:[0-9a-f]{64}$/.test(o.registrationProof))
|
|
25
|
-
bad("requires a sha256 registrationProof");
|
|
14
|
+
const envelope = parseRemoteManagerEnvelope(o, "manager-goal-index-scan", "manager goal-index scan");
|
|
26
15
|
if (typeof o.serveEpoch !== "number" || !Number.isSafeInteger(o.serveEpoch) || o.serveEpoch < 0)
|
|
27
16
|
bad("serveEpoch must be a non-negative safe integer");
|
|
28
|
-
|
|
29
|
-
return {
|
|
30
|
-
v: 1, kind: "manager-goal-index-scan", space: o.space, actor: o.actor,
|
|
31
|
-
instanceId: o.instanceId, managerLifecycleUid: o.managerLifecycleUid,
|
|
32
|
-
requestId: o.requestId, registrationProof: o.registrationProof,
|
|
33
|
-
serveEpoch: o.serveEpoch, identities,
|
|
34
|
-
};
|
|
17
|
+
return { v: 1, kind: "manager-goal-index-scan", ...envelope, serveEpoch: o.serveEpoch };
|
|
35
18
|
}
|
|
36
19
|
export async function authorizeRemoteManagerGoalIndexScan(args) {
|
|
37
20
|
const request = parseRemoteManagerGoalIndexScanRequest(args.request);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager-goal-index.js","sourceRoot":"","sources":["../src/manager-goal-index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,
|
|
1
|
+
{"version":3,"file":"manager-goal-index.js","sourceRoot":"","sources":["../src/manager-goal-index.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,5 +9,5 @@ export declare function authorizeRemoteManagerMaintenance(args: ManagerAuthority
|
|
|
9
9
|
observeManagerGate: ObserveManagerGate;
|
|
10
10
|
scanner: AuthLedgerScanner;
|
|
11
11
|
}): Promise<RemoteManagerMaintenanceRequest>;
|
|
12
|
-
export declare function completeRemoteManagerMaintenance(request: RemoteManagerMaintenanceRequest, owner: string, result: Pick<RemoteManagerMaintenanceResult, "
|
|
12
|
+
export declare function completeRemoteManagerMaintenance(request: RemoteManagerMaintenanceRequest, owner: string, result: Pick<RemoteManagerMaintenanceResult, "evictions" | "reconciliation">): RemoteManagerMaintenanceResult;
|
|
13
13
|
//# sourceMappingURL=manager-maintenance.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager-maintenance.d.ts","sourceRoot":"","sources":["../src/manager-maintenance.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"manager-maintenance.d.ts","sourceRoot":"","sources":["../src/manager-maintenance.ts"],"names":[],"mappings":"AAAA,OAAO,EASL,KAAK,+BAA+B,EACpC,KAAK,8BAA8B,EACpC,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAiC,KAAK,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAMnG,wBAAgB,oCAAoC,CAAC,GAAG,EAAE,OAAO,GAAG,+BAA+B,CAuClG;AAED,wBAAsB,iCAAiC,CAAC,IAAI,EAAE,sBAAsB,GAAG;IACrF,OAAO,EAAE,+BAA+B,CAAC;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,OAAO,EAAE,iBAAiB,CAAC;CAC5B,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAoC3C;AAED,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,+BAA+B,EACxC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,IAAI,CAAC,8BAA8B,EAAE,WAAW,GAAG,gBAAgB,CAAC,GAC3E,8BAA8B,CAEhC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EpEnvelopeError, assertLifecycleToken, assertValidOwnerToken, epcredFamilyPrefix, parseLedgerRow, remoteManagerActors, parseRemoteManagerIdentities, } from "@cotal-ai/core";
|
|
1
|
+
import { EVICT_PRINCIPALS_MAX, EpEnvelopeError, assertLifecycleToken, assertValidOwnerToken, epcredFamilyPrefix, parseLedgerRow, remoteManagerActors, parseRemoteManagerIdentities, } from "@cotal-ai/core";
|
|
2
2
|
import { requireManagerAuthorityHolder } from "./platform-control.js";
|
|
3
3
|
function requestError(what) {
|
|
4
4
|
throw new EpEnvelopeError("bad-request", `manager-service maintenance request ${what}`);
|
|
@@ -9,7 +9,7 @@ export function parseRemoteManagerMaintenanceRequest(raw) {
|
|
|
9
9
|
const o = raw;
|
|
10
10
|
const allowed = new Set([
|
|
11
11
|
"v", "kind", "operation", "space", "actor", "instanceId", "managerLifecycleUid",
|
|
12
|
-
"requestId", "identities", "targetInstanceId", "
|
|
12
|
+
"requestId", "identities", "targetInstanceId", "principals",
|
|
13
13
|
]);
|
|
14
14
|
for (const key of Object.keys(o))
|
|
15
15
|
if (!allowed.has(key))
|
|
@@ -28,11 +28,13 @@ export function parseRemoteManagerMaintenanceRequest(raw) {
|
|
|
28
28
|
if (!/^[A-Za-z0-9_-]{22,64}$/.test(o.requestId))
|
|
29
29
|
requestError("requestId must be a 22-64 character idempotency token");
|
|
30
30
|
if (o.operation === "evict-family-principal") {
|
|
31
|
-
|
|
32
|
-
|
|
31
|
+
const p = o.principals;
|
|
32
|
+
if (!Array.isArray(p) || p.length === 0 || p.length > EVICT_PRINCIPALS_MAX ||
|
|
33
|
+
p.some((x) => typeof x !== "string" || x.length === 0) || new Set(p).size !== p.length)
|
|
34
|
+
requestError(`evict-family-principal requires 1 to ${EVICT_PRINCIPALS_MAX} distinct non-empty principals`);
|
|
33
35
|
}
|
|
34
|
-
else if (o.
|
|
35
|
-
requestError("reconcile-registration must not carry
|
|
36
|
+
else if (o.principals !== undefined)
|
|
37
|
+
requestError("reconcile-registration must not carry principals");
|
|
36
38
|
const identities = parseRemoteManagerIdentities(o.identities, requestError);
|
|
37
39
|
return {
|
|
38
40
|
v: 1,
|
|
@@ -45,7 +47,7 @@ export function parseRemoteManagerMaintenanceRequest(raw) {
|
|
|
45
47
|
requestId: o.requestId,
|
|
46
48
|
identities,
|
|
47
49
|
targetInstanceId: o.targetInstanceId,
|
|
48
|
-
...(
|
|
50
|
+
...(Array.isArray(o.principals) ? { principals: [...o.principals] } : {}),
|
|
49
51
|
};
|
|
50
52
|
}
|
|
51
53
|
export async function authorizeRemoteManagerMaintenance(args) {
|
|
@@ -79,8 +81,9 @@ export async function authorizeRemoteManagerMaintenance(args) {
|
|
|
79
81
|
if (!entry.key.startsWith(prefix))
|
|
80
82
|
throw new EpEnvelopeError("internal", `the sealed manager-family scan returned foreign key ${entry.key}`);
|
|
81
83
|
}
|
|
82
|
-
|
|
83
|
-
|
|
84
|
+
const outside = r.principals.filter((p) => !holders.has(p));
|
|
85
|
+
if (outside.length > 0)
|
|
86
|
+
throw new EpEnvelopeError("permission-denied", `manager maintenance may evict only holders enumerated in ${epcredFamilyPrefix("manager", r.targetInstanceId)}; outside that family: ${outside.join(", ")}`);
|
|
84
87
|
}
|
|
85
88
|
return r;
|
|
86
89
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager-maintenance.js","sourceRoot":"","sources":["../src/manager-maintenance.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,4BAA4B,GAG7B,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,6BAA6B,EAA+B,MAAM,uBAAuB,CAAC;AAEnG,SAAS,YAAY,CAAC,IAAY;IAChC,MAAM,IAAI,eAAe,CAAC,aAAa,EAAE,uCAAuC,IAAI,EAAE,CAAC,CAAC;AAC1F,CAAC;AAED,MAAM,UAAU,oCAAoC,CAAC,GAAY;IAC/D,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,YAAY,CAAC,mBAAmB,CAAC,CAAC;IACrG,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC;QACtB,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,qBAAqB;QAC/E,WAAW,EAAE,YAAY,EAAE,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"manager-maintenance.js","sourceRoot":"","sources":["../src/manager-maintenance.ts"],"names":[],"mappings":"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"}
|
package/dist/plane-claim.d.ts
CHANGED
|
@@ -40,10 +40,20 @@ export interface PlaneClaimHold {
|
|
|
40
40
|
/** Fence the guard permanently (the mid-life scanner-death path): every subsequent assertHeld
|
|
41
41
|
* throws `reason`. First fence wins. */
|
|
42
42
|
fence(reason: string): void;
|
|
43
|
-
/** Clean close: CAS `held → released` (call ONLY after the scanner clients are closed).
|
|
44
|
-
* no longer held by this
|
|
43
|
+
/** Clean close: CAS `held → released` (call ONLY after the scanner clients are closed). Rejects
|
|
44
|
+
* when the row was not released: a row no longer held by this open is left alone (a successor
|
|
45
|
+
* may own it), and a failed write leaves it held for the next open to reclaim like a crash. */
|
|
45
46
|
release(): Promise<void>;
|
|
46
47
|
}
|
|
48
|
+
/** `details[].kind` on every plane-claim refusal (SPEC 13.13). The copy is written for an
|
|
49
|
+
* operator and the codes pair unlike cases, so a host that retries contention without masking
|
|
50
|
+
* corruption keys on `reason`. */
|
|
51
|
+
export declare const PLANE_CLAIM_REFUSED = "ai.cotal.auth.plane-claim-refused";
|
|
52
|
+
/** `unknown` is the inconclusive-liveness refusal, coded `unavailable`; every other reason is
|
|
53
|
+
* `failed-precondition`. `lost` is a row no longer held by this open. */
|
|
54
|
+
export type PlaneClaimRefusal = "corrupt" | "live-peer" | "unknown" | "concurrent" | "fenced" | "released" | "lost";
|
|
55
|
+
/** The reason a plane-claim refusal carries, or `undefined` for any other error. */
|
|
56
|
+
export declare function planeClaimRefusal(e: unknown): PlaneClaimRefusal | undefined;
|
|
47
57
|
/** Closed parse of a claim row. Returns undefined on ANY structural violation — the caller turns
|
|
48
58
|
* that into a loud corruption refusal (an unparseable exclusion row must never be reasoned over). */
|
|
49
59
|
export declare function parsePlaneClaimRow(bytes: Uint8Array): PlaneClaimRow | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plane-claim.d.ts","sourceRoot":"","sources":["../src/plane-claim.ts"],"names":[],"mappings":"AA6CA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,
|
|
1
|
+
{"version":3,"file":"plane-claim.d.ts","sourceRoot":"","sources":["../src/plane-claim.ts"],"names":[],"mappings":"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"}
|