@ia-qa/self-healing 1.19.1 → 1.23.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/README.md +55 -0
- package/TUTORIAL.md +22 -0
- package/dist/aom.d.ts +20 -0
- package/dist/aom.js +25 -0
- package/dist/aom.js.map +1 -1
- package/dist/browser/resolve.js +4 -1
- package/dist/browser/resolve.js.map +1 -1
- package/dist/cli/args.js +1 -1
- package/dist/cli/args.js.map +1 -1
- package/dist/cli/diff.d.ts +62 -0
- package/dist/cli/diff.js +104 -4
- package/dist/cli/diff.js.map +1 -1
- package/dist/cli/explain.js +57 -12
- package/dist/cli/explain.js.map +1 -1
- package/dist/cli/fix.js +2 -1
- package/dist/cli/fix.js.map +1 -1
- package/dist/cli/index.js +6 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/map.d.ts +2 -0
- package/dist/cli/map.js +13 -0
- package/dist/cli/map.js.map +1 -1
- package/dist/cli-ai/index.js +2 -1
- package/dist/cli-ai/index.js.map +1 -1
- package/dist/explain.d.ts +78 -3
- package/dist/explain.js +87 -9
- package/dist/explain.js.map +1 -1
- package/dist/htmlReport.js +39 -0
- package/dist/htmlReport.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js.map +1 -1
- package/dist/ingest.d.ts +30 -0
- package/dist/ingest.js +46 -1
- package/dist/ingest.js.map +1 -1
- package/dist/junit.js +41 -0
- package/dist/junit.js.map +1 -1
- package/dist/mcp/server.js +11 -0
- package/dist/mcp/server.js.map +1 -1
- package/dist/redirectFix.d.ts +60 -0
- package/dist/redirectFix.js +73 -0
- package/dist/redirectFix.js.map +1 -0
- package/dist/resolution.d.ts +41 -4
- package/dist/resolution.js +66 -5
- package/dist/resolution.js.map +1 -1
- package/dist/routeDrift.d.ts +105 -0
- package/dist/routeDrift.js +96 -0
- package/dist/routeDrift.js.map +1 -0
- package/dist/ui/server.js +5 -6
- package/dist/ui/server.js.map +1 -1
- package/package.json +1 -1
- package/skills/ia-qa-heal/SKILL.md +22 -0
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import type { MappedElement } from './aom';
|
|
2
|
+
import type { RouteSite, Usage } from './ingest';
|
|
3
|
+
/**
|
|
4
|
+
* A link whose **destination** changed — not merely its address.
|
|
5
|
+
*
|
|
6
|
+
* `stableSelector` prefers `a[href="…"]`, so moving a route rewrites the link's selector and
|
|
7
|
+
* `diffMappings` reports `healable`: same role, same accessible name, new selector. Correct,
|
|
8
|
+
* and rendered next to a button that slid one slot down the DOM:
|
|
9
|
+
*
|
|
10
|
+
* ```
|
|
11
|
+
* 🔧 drifted button "▶ Run" div:nth-of-type(5) > … → div:nth-of-type(9) > …
|
|
12
|
+
* 🔧 drifted link "Write a contract in the browser →"
|
|
13
|
+
* a[href="/devtools/eval-contract-runner"] → a[href="/qatools/eval-contract"]
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* The first moved. The second now takes the user to a different page — measured the same day:
|
|
17
|
+
* the old route answered 404, the new one 200, and a `test.fail` in the suite pinning that 404
|
|
18
|
+
* had silently become a failing test because the app was fixed by moving the route.
|
|
19
|
+
*
|
|
20
|
+
* Reported **beside** the row, never instead of it: `healable` keeps its promise at the
|
|
21
|
+
* element level (`fix` rewrites the locator, it still reaches the same link) and breaks it at
|
|
22
|
+
* the navigation level (nothing repairs `page.goto('/devtools/eval-contract-runner')`).
|
|
23
|
+
*
|
|
24
|
+
* Measured on two real corpora two captures apart: **2 findings over 4 563 named links** on
|
|
25
|
+
* ia-qa.com, **0** on the other. The pre-build script said 3 — it paired links by name, and a
|
|
26
|
+
* *new* link added beside an unchanged one read as a destination change. That is precisely the
|
|
27
|
+
* false positive rule 2 (identity must have held) removes. See `SPEC-route-drift.md`.
|
|
28
|
+
*
|
|
29
|
+
* It lives outside `src/browser/match.js` for the reason `attachBaselineHrefs` already states
|
|
30
|
+
* in `cli/diff.ts`: href is not identity, and that file ships three times.
|
|
31
|
+
*/
|
|
32
|
+
export interface RouteChange {
|
|
33
|
+
/** The link's accessible name. Unchanged by construction — that is what pairs the two. */
|
|
34
|
+
name: string;
|
|
35
|
+
/** Where it used to go. */
|
|
36
|
+
from: string;
|
|
37
|
+
/** Where it goes now. */
|
|
38
|
+
to: string;
|
|
39
|
+
/** The baseline selector, so a reader can tie this to the row above it. */
|
|
40
|
+
selector: string;
|
|
41
|
+
/**
|
|
42
|
+
* Which page carries the link. Added after the first run on real data: `--dir` flattens
|
|
43
|
+
* findings from 148 pages into one list, and two links to the same moved route came back
|
|
44
|
+
* as two lines nobody could locate.
|
|
45
|
+
*/
|
|
46
|
+
page?: string;
|
|
47
|
+
/**
|
|
48
|
+
* Where the suite navigates to `from`, from `usage.routes`.
|
|
49
|
+
*
|
|
50
|
+
* Present only when the inventory holds it. Absent means *not measured* — never "no test
|
|
51
|
+
* goes there" — and it is the only thing that lets this finding touch the verdict.
|
|
52
|
+
*/
|
|
53
|
+
usedAt?: RouteSite[];
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Is this the same destination written differently?
|
|
57
|
+
*
|
|
58
|
+
* Three things are address, not destination, and folding them is what keeps the finding at
|
|
59
|
+
* 0.07 %: **absolute vs relative** on the same host (an app that starts emitting full URLs
|
|
60
|
+
* changed nothing for the user), the **trailing slash**, and the **fragment** (`/docs#install`
|
|
61
|
+
* and `/docs#usage` are one page; an in-page anchor is not a navigation).
|
|
62
|
+
*
|
|
63
|
+
* The query string is **kept**. `?tab=billing` is where the user lands, and a link repointed
|
|
64
|
+
* from one tab to another is exactly the kind of change this exists to surface.
|
|
65
|
+
*
|
|
66
|
+
* A base URL is used only to give a relative href a host to be compared against. Without one
|
|
67
|
+
* both sides are normalised against the same placeholder, so relative-vs-relative still works
|
|
68
|
+
* and relative-vs-absolute conservatively reads as a change — the safe direction.
|
|
69
|
+
*/
|
|
70
|
+
export declare function sameDestination(a: string, b: string, baseUrl?: string): boolean;
|
|
71
|
+
export interface RouteDriftInput {
|
|
72
|
+
/** Diff rows, already masked — this reads them, it never recomputes a status. */
|
|
73
|
+
rows: Array<{
|
|
74
|
+
status: string;
|
|
75
|
+
role: string;
|
|
76
|
+
name: string;
|
|
77
|
+
selector: string;
|
|
78
|
+
healedSelector?: string;
|
|
79
|
+
}>;
|
|
80
|
+
before: MappedElement[];
|
|
81
|
+
after: MappedElement[];
|
|
82
|
+
baseUrl?: string;
|
|
83
|
+
usage?: Usage | null;
|
|
84
|
+
/** The page these rows describe, carried onto every finding. */
|
|
85
|
+
page?: string;
|
|
86
|
+
}
|
|
87
|
+
export declare function routeDrift({ rows, before, after, baseUrl, usage, page }: RouteDriftInput): RouteChange[];
|
|
88
|
+
/**
|
|
89
|
+
* Call sites in the suite that navigate to this route.
|
|
90
|
+
*
|
|
91
|
+
* Matched through `sameDestination`, not by string equality: a suite writing
|
|
92
|
+
* `page.goto('https://app.test/cart')` against a contract holding `/cart` is the same
|
|
93
|
+
* navigation, and comparing the raw strings would report *not measured* over a suite that
|
|
94
|
+
* demonstrably goes there.
|
|
95
|
+
*/
|
|
96
|
+
export declare function navigationsTo(route: string, baseUrl: string | undefined, usage: Usage | null | undefined): RouteSite[];
|
|
97
|
+
/**
|
|
98
|
+
* Does a destination change hold the verdict?
|
|
99
|
+
*
|
|
100
|
+
* Only when the suite navigates to the old route — then that suite is red and this can prove
|
|
101
|
+
* it. On its own the finding never gates: an app is allowed to reorganise its URLs, that is
|
|
102
|
+
* not a regression, and a gate that goes red on it is a gate someone switches off. Same shape
|
|
103
|
+
* as `nameDrift`: no inventory ⇒ no escalation, so an un-ingested project is unaffected.
|
|
104
|
+
*/
|
|
105
|
+
export declare function routeDriftBlocks(changes: RouteChange[]): RouteChange[];
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.sameDestination = sameDestination;
|
|
4
|
+
exports.routeDrift = routeDrift;
|
|
5
|
+
exports.navigationsTo = navigationsTo;
|
|
6
|
+
exports.routeDriftBlocks = routeDriftBlocks;
|
|
7
|
+
/** Rows whose element identity held. A `lost` link has no "after" to compare a destination to. */
|
|
8
|
+
const COMPARABLE = new Set(['ok', 'renamed', 'healable']);
|
|
9
|
+
/**
|
|
10
|
+
* Is this the same destination written differently?
|
|
11
|
+
*
|
|
12
|
+
* Three things are address, not destination, and folding them is what keeps the finding at
|
|
13
|
+
* 0.07 %: **absolute vs relative** on the same host (an app that starts emitting full URLs
|
|
14
|
+
* changed nothing for the user), the **trailing slash**, and the **fragment** (`/docs#install`
|
|
15
|
+
* and `/docs#usage` are one page; an in-page anchor is not a navigation).
|
|
16
|
+
*
|
|
17
|
+
* The query string is **kept**. `?tab=billing` is where the user lands, and a link repointed
|
|
18
|
+
* from one tab to another is exactly the kind of change this exists to surface.
|
|
19
|
+
*
|
|
20
|
+
* A base URL is used only to give a relative href a host to be compared against. Without one
|
|
21
|
+
* both sides are normalised against the same placeholder, so relative-vs-relative still works
|
|
22
|
+
* and relative-vs-absolute conservatively reads as a change — the safe direction.
|
|
23
|
+
*/
|
|
24
|
+
function sameDestination(a, b, baseUrl) {
|
|
25
|
+
return destination(a, baseUrl) === destination(b, baseUrl);
|
|
26
|
+
}
|
|
27
|
+
function destination(href, baseUrl) {
|
|
28
|
+
const raw = href.trim();
|
|
29
|
+
try {
|
|
30
|
+
const u = new URL(raw, baseUrl || 'http://route-drift.invalid');
|
|
31
|
+
const path = u.pathname.replace(/\/+$/, '') || '/';
|
|
32
|
+
return `${u.protocol}//${u.host}${path}${u.search}`;
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
// A href the URL parser refuses (`javascript:`, `mailto:`, a template left in the DOM)
|
|
36
|
+
// is compared as written. Never dropped: silence would read as "unchanged".
|
|
37
|
+
return raw;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
function routeDrift({ rows, before, after, baseUrl, usage, page }) {
|
|
41
|
+
const beforeHref = hrefIndex(before);
|
|
42
|
+
const afterHref = hrefIndex(after);
|
|
43
|
+
const out = [];
|
|
44
|
+
for (const row of rows) {
|
|
45
|
+
if (row.role !== 'link' || !COMPARABLE.has(row.status))
|
|
46
|
+
continue;
|
|
47
|
+
const from = beforeHref.get(row.selector);
|
|
48
|
+
const to = afterHref.get(row.healedSelector ?? row.selector);
|
|
49
|
+
// No href on either side is an ordinary link the capture recorded without one — not a
|
|
50
|
+
// destination that disappeared. `map` writes `href` from the attribute; absent means the
|
|
51
|
+
// element never had one to compare.
|
|
52
|
+
if (!from || !to || sameDestination(from, to, baseUrl))
|
|
53
|
+
continue;
|
|
54
|
+
const usedAt = navigationsTo(from, baseUrl, usage);
|
|
55
|
+
out.push({ name: row.name, from, to, selector: row.selector, ...(page ? { page } : {}), ...(usedAt.length > 0 ? { usedAt } : {}) });
|
|
56
|
+
}
|
|
57
|
+
return out;
|
|
58
|
+
}
|
|
59
|
+
function hrefIndex(elements) {
|
|
60
|
+
const out = new Map();
|
|
61
|
+
for (const e of elements)
|
|
62
|
+
if (e.href)
|
|
63
|
+
out.set(e.selector, e.href);
|
|
64
|
+
return out;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Call sites in the suite that navigate to this route.
|
|
68
|
+
*
|
|
69
|
+
* Matched through `sameDestination`, not by string equality: a suite writing
|
|
70
|
+
* `page.goto('https://app.test/cart')` against a contract holding `/cart` is the same
|
|
71
|
+
* navigation, and comparing the raw strings would report *not measured* over a suite that
|
|
72
|
+
* demonstrably goes there.
|
|
73
|
+
*/
|
|
74
|
+
function navigationsTo(route, baseUrl, usage) {
|
|
75
|
+
const routes = usage?.routes;
|
|
76
|
+
if (!routes)
|
|
77
|
+
return [];
|
|
78
|
+
const out = [];
|
|
79
|
+
for (const [written, sites] of Object.entries(routes)) {
|
|
80
|
+
if (sameDestination(written, route, baseUrl))
|
|
81
|
+
out.push(...sites);
|
|
82
|
+
}
|
|
83
|
+
return out;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Does a destination change hold the verdict?
|
|
87
|
+
*
|
|
88
|
+
* Only when the suite navigates to the old route — then that suite is red and this can prove
|
|
89
|
+
* it. On its own the finding never gates: an app is allowed to reorganise its URLs, that is
|
|
90
|
+
* not a regression, and a gate that goes red on it is a gate someone switches off. Same shape
|
|
91
|
+
* as `nameDrift`: no inventory ⇒ no escalation, so an un-ingested project is unaffected.
|
|
92
|
+
*/
|
|
93
|
+
function routeDriftBlocks(changes) {
|
|
94
|
+
return changes.filter((c) => (c.usedAt?.length ?? 0) > 0);
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=routeDrift.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routeDrift.js","sourceRoot":"","sources":["../src/routeDrift.ts"],"names":[],"mappings":"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"}
|
package/dist/ui/server.js
CHANGED
|
@@ -57,6 +57,7 @@ const ingest_1 = require("../ingest");
|
|
|
57
57
|
const evidence_1 = require("../evidence");
|
|
58
58
|
const history_1 = require("../history");
|
|
59
59
|
const update_1 = require("../update");
|
|
60
|
+
const aom_1 = require("../aom");
|
|
60
61
|
const checks_1 = require("../checks");
|
|
61
62
|
const audit_1 = require("../cli/audit");
|
|
62
63
|
const page_1 = require("./page");
|
|
@@ -421,12 +422,10 @@ function getActiveProject() {
|
|
|
421
422
|
* layouts, shots and resolutions, never pages.
|
|
422
423
|
*/
|
|
423
424
|
function hasContracts(dir) {
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
return false;
|
|
429
|
-
}
|
|
425
|
+
// Through `contractFilesIn`, not a sixth hand-written copy of the same predicate. This one
|
|
426
|
+
// happened to be right; three of the five were, and the two that were not refused `diff`
|
|
427
|
+
// and `fix` outright on a file the tool writes itself.
|
|
428
|
+
return (0, aom_1.contractFilesIn)(dir).length > 0;
|
|
430
429
|
}
|
|
431
430
|
function buildState() {
|
|
432
431
|
if (activeDir)
|
package/dist/ui/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/ui/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/ui/server.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8QA,0CAIC;AAiBD,kCA4CC;AAmBD,wCAYC;AAaD,8BASC;AAUD,8BAiBC;AAOD,wCAIC;AAwCD,4CAGC;AAED,4CAEC;AA0KD,0BA6DC;AAoUD,8BAoBC;AAxhCD,2CAA6B;AAC7B,uCAAyB;AACzB,2CAA6B;AAC7B,+CAAiC;AACjC,iDAAsC;AACtC,sCAA0I;AAC1I,yCAAkG;AAClG,mCAAgF;AAChF,sCAA+D;AAC/D,sCAAsC;AACtC,0CAAwD;AACxD,wCAAoD;AACpD,sCAAyC;AAEzC,gCAAyC;AACzC,sCAA4F;AAC5F,wCAA4E;AAC5E,iCAA2C;AAuD3C;;;;;;;;;;;;;;GAcG;AACH,MAAM,kBAAkB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAC1C,6EAA6E;AAC7E,6EAA6E;AAC7E,gFAAgF;AAChF,gFAAgF;AAChF,iEAAiE;AACjE,MAAM,iBAAiB,GAAG,EAAE,GAAG,IAAI,CAAC;AACpC,MAAM,YAAY,GAAG,IAAI,CAAC;AAC1B,2FAA2F;AAC9E,QAAA,qBAAqB,GAAG,KAAK,CAAC;AAsC3C,MAAM,OAAO,GAA2B;IACtC,GAAG,EAAE;QACH,IAAI,EAAE,CAAC,KAAK,EAAE,eAAe,CAAC;QAC9B,KAAK,EAAE,uBAAuB;QAC9B,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,qHAAqH;KAC7H;IACD,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,QAAQ,CAAC;QAChB,KAAK,EAAE,0BAA0B;QACjC,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,iGAAiG;KACzG;IACD,IAAI,EAAE;QACJ,IAAI,EAAE,CAAC,MAAM,CAAC;QACd,KAAK,EAAE,mBAAmB;QAC1B,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,iHAAiH;KACzH;IACD,KAAK,EAAE;QACL,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;QACzB,KAAK,EAAE,kCAAkC;QACzC,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,8HAA8H;QACrI,sEAAsE;QACtE,yEAAyE;QACzE,2EAA2E;QAC3E,KAAK,EAAE;YACL,GAAG,EAAE,sCAAsC;YAC3C,KAAK,EAAE,sCAAsC;SAC9C;KACF;IACD,KAAK,EAAE;QACL,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;QACzB,KAAK,EAAE,4BAA4B;QACnC,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,0HAA0H;QACjI,KAAK,EAAE,EAAE,KAAK,EAAE,gCAAgC,EAAE;KACnD;IACD;;;;;;;;;;OAUG;IACH,YAAY,EAAE;QACZ,IAAI,EAAE,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,QAAQ,CAAC;QAC/C,KAAK,EAAE,kCAAkC;QACzC,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,iLAAiL;QACxL,SAAS,EAAE,IAAI;QACf,KAAK,EAAE,EAAE,KAAK,EAAE,gCAAgC,EAAE;KACnD;IACD,eAAe,EAAE;QACf,IAAI,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC;QACtC,KAAK,EAAE,wCAAwC;QAC/C,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,4KAA4K;QACnL,SAAS,EAAE,IAAI;QACf,KAAK,EAAE,EAAE,KAAK,EAAE,gCAAgC,EAAE;KACnD;IACD,SAAS,EAAE;QACT,IAAI,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC;QAC1B,KAAK,EAAE,qBAAqB;QAC5B,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,2GAA2G;KACnH;IACD,WAAW,EAAE;QACX,IAAI,EAAE,CAAC,KAAK,CAAC;QACb,KAAK,EAAE,sBAAsB;QAC7B,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,uGAAuG;KAC/G;IACD;;;;;;;;;;;OAWG;IACH,QAAQ,EAAE;QACR,IAAI,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC;QAC/B,KAAK,EAAE,mCAAmC;QAC1C,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,qKAAqK;KAC7K;IACD;;;;OAIG;IACH,gBAAgB,EAAE;QAChB,IAAI,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;QAC7B,KAAK,EAAE,iCAAiC;QACxC,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,iMAAiM;QACxM,SAAS,EAAE,IAAI;KAChB;IACD;;;;;OAKG;IACH,gBAAgB,EAAE;QAChB,IAAI,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,SAAS,CAAC;QAC1C,KAAK,EAAE,8BAA8B;QACrC,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,kIAAkI;QACzI,SAAS,EAAE,IAAI;KAChB;IACD,sBAAsB,EAAE;QACtB,IAAI,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC;QACxC,KAAK,EAAE,8BAA8B;QACrC,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,4IAA4I;QACnJ,SAAS,EAAE,IAAI;KAChB;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,CAAC,UAAU,CAAC;QAClB,KAAK,EAAE,6BAA6B;QACpC,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,yFAAyF;KACjG;CACF,CAAC;AAEF,SAAgB,eAAe;IAC7B,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;SAC3B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;SAC/B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAClF,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAgB,WAAW,CAAC,QAAgB,EAAE,IAAY,EAAE,KAA0B;IACpF,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,GAAG,GAAG,CAAC,EAAU,EAAQ,EAAE;QAC/B,IAAI,EAAE,KAAK,QAAQ,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC,CAAC;IACF,IAAI,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9E,2EAA2E;QAC3E,uCAAuC;QACvC,GAAG,CAAC,YAAY,CAAC,CAAC;QAClB,GAAG,CAAC,eAAe,CAAC,CAAC;IACvB,CAAC;IACD,IAAI,QAAQ,KAAK,MAAM,IAAI,IAAI,KAAK,KAAK;QAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IAC1D,IAAI,QAAQ,KAAK,SAAS,IAAI,IAAI,KAAK,KAAK;QAAE,GAAG,CAAC,WAAW,CAAC,CAAC;IAC/D;;;;;;;;;;;OAWG;IACH;;;;;;;;OAQG;IACH,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;QAC5B,IAAI,IAAI,KAAK,MAAM;YAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAC3C,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACxB,CAAC;IACD,IAAI,QAAQ,KAAK,gBAAgB,IAAI,IAAI,KAAK,MAAM;QAAE,GAAG,CAAC,sBAAsB,CAAC,CAAC;IAClF,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,OAAO,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,MAAM,CAAC,CAAC;QACZ,GAAG,CAAC,KAAK,CAAC,CAAC;IACb,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,cAAc,CAAC,MAAc;IAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAClC,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACpC,IAAI,KAAK,KAAK,CAAC,CAAC,IAAI,GAAG,IAAI,KAAK;QAAE,OAAO,IAAI,CAAC;IAC9C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,GAAG,CAAC,CAAC,CAA4C,CAAC;QACnG,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QACvD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QACxF,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,GAAiC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AAE7F,SAAgB,SAAS,CAAC,MAAc;IACtC,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAC/B,OAAO;QACL,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,MAAM;QACnC,QAAQ,EAAE,CAAC,IAAA,sBAAa,EAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,IAAA,oBAAW,EAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QAC9E,KAAK,EAAE,MAAM;KACd,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,GAA2B,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAEtF;;;;;GAKG;AACH,SAAgB,SAAS,CAAC,MAAc;IACtC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAClC,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACpC,IAAI,KAAK,KAAK,CAAC,CAAC,IAAI,GAAG,IAAI,KAAK;QAAE,OAAO,IAAI,CAAC;IAC9C,IAAI,MAAmB,CAAC;IACxB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,GAAG,CAAC,CAAC,CAAgB,CAAC;IACnE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9F,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IACjC,OAAO;QACL,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,MAAM;QAC1C,QAAQ,EAAE,CAAC,IAAA,qBAAa,EAAC,MAAM,CAAC,EAAE,GAAG,IAAA,mBAAW,EAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QACrE,KAAK,EAAE,MAAM;KACd,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAgB,cAAc,CAAC,IAAwB;IACrD,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7E,OAAO,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,KAAK,CAAC;AACxE,CAAC;AAED,SAAS,QAAQ;IACf,8EAA8E;IAC9E,6DAA6D;IAC7D,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;AACvD,CAAC;AAgBD;;;;;GAKG;AACH;;;;;;;;;GASG;AACH,IAAI,SAAS,GAAkB,IAAI,CAAC;AAEpC,SAAgB,gBAAgB,CAAC,GAAW;IAC1C,SAAS,GAAG,GAAG,CAAC;IAChB,IAAA,mBAAU,EAAC,GAAG,CAAC,CAAC;AAClB,CAAC;AAED,SAAgB,gBAAgB;IAC9B,OAAO,SAAS,IAAI,IAAA,gBAAO,GAAE,CAAC;AAChC,CAAC;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,GAAW;IAC/B,2FAA2F;IAC3F,yFAAyF;IACzF,uDAAuD;IACvD,OAAO,IAAA,qBAAe,EAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,UAAU;IACjB,IAAI,SAAS;QAAE,IAAA,mBAAU,EAAC,SAAS,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,IAAA,oBAAW,GAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,IAAA,mBAAU,GAAE,CAAC;IAE7B,6EAA6E;IAC7E,8EAA8E;IAC9E,0EAA0E;IAC1E,+CAA+C;IAC/C,IAAI,OAAO,GAA4B,EAAE,OAAO,EAAE,IAAA,0BAAiB,GAAE,EAAE,CAAC;IACxE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAA,mBAAU,GAAE,CAAC;QACzB,OAAO,GAAG;YACR,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM;YACvB,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YACpD,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,IAAI;YACpC,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,EAAE;YAC9B,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC;YAC5C,GAAG,EAAE,IAAA,gBAAO,GAAE;YACd,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,IAAA,gBAAO,GAAE,EAAE,mBAAU,EAAE,aAAa,CAAC;SAC5D,CAAC;IACJ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,GAAG,IAAA,gBAAO,GAAE,CAAC;QACxB,uFAAuF;QACvF,yFAAyF;QACzF,IAAI,EAAE,CAAC,UAAU,CAAC,IAAA,mBAAU,GAAE,CAAC,EAAE,CAAC;YAChC,OAAO,CAAC,KAAK,GAAG,mDAAmD,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QAClH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;YAC1B,OAAO,CAAC,KAAK,GAAG,6DAA6D,CAAC;QAChF,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,8EAA8E;IAC9E,mCAAmC;IACnC,MAAM,SAAS,GAAG,IAAA,kBAAS,GAAE,CAAC;IAC9B,MAAM,UAAU,GAAG,SAAS;QAC1B,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;QACpF,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,OAAO,GAAG,IAAA,qBAAW,GAAE,CAAC;IAC9B,MAAM,KAAK,GAA4B;QACrC,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,IAAI,CAAC,EAAE;QAC1E,yEAAyE;QACzE,+DAA+D;QAC/D,QAAQ,EAAE,IAAA,uBAAY,GAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;QACnG,SAAS,EAAE,gBAAgB,EAAE;QAC7B,sEAAsE;QACtE,MAAM,EAAE,IAAA,qBAAY,GAAE;QACtB,WAAW,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;QAChC,6EAA6E;QAC7E,6EAA6E;QAC7E,UAAU,EAAE,YAAY,CAAC,OAAO,CAAC;QACjC,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAA,mBAAS,EAAC,OAAO,CAAC,EAAE;QAC1D,OAAO,EAAE,eAAe,EAAE;KAC3B,CAAC;IAEF,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACpD,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACrB,KAAK,CAAC,SAAS,GAAG,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,SAAS,CAAC;IACd,IAAI,CAAC;QACH,SAAS,GAAG,IAAA,qBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACrB,KAAK,CAAC,SAAS,GAAG,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;IAC/C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5D,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACrB,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC;QAC5B,KAAK,CAAC,SAAS,GAAG,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,GAAG,GAAG,IAAA,uBAAgB,EAAC,OAAO,CAAC,CAAC;IACtC,+EAA+E;IAC/E,mFAAmF;IACnF,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC;IACxD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,CAAC,aAAa,GAAG,KAAK,CAAC;IAChD,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;IACpB,KAAK,CAAC,QAAQ,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;IAE9F,2EAA2E;IAC3E,MAAM,KAAK,GAAG,IAAA,kBAAS,GAAE,CAAC;IAC1B,MAAM,SAAS,GAAkB,EAAE,CAAC;IACpC,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,OAAO,EAAE,CAAC;QACjD,IAAI,QAAQ;YAAE,SAAS;QACvB,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAC/B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,OAAO,KAAK,IAAI,CAC7E,CAAC;QACF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAElC,MAAM,IAAI,GAAG,IAAA,uBAAY,EAAC,IAAI,CAAC,CAAC;QAChC,IAAI,KAAK,GAAuB,IAAI,CAAC;QACrC,IAAI,CAAC;YACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,OAAO,CAAC,EAAE,MAAM,CAAC,CAAgB,CAAC;QACjG,CAAC;QAAC,MAAM,CAAC;YACP,KAAK,GAAG,IAAI,CAAC;QACf,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACvB,MAAM,EAAE,GAAG,IAAA,sBAAW,EAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACvC,SAAS,CAAC,IAAI,CAAC;gBACb,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,cAAc;gBACnG,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,KAAK,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBACxF,KAAK,EAAE,EAAE,EAAE,KAAK;gBAChB,UAAU,EAAE,EAAE,EAAE,UAAU,IAAI,EAAE;gBAChC,IAAI,EAAE,EAAE,EAAE,IAAI;aACf,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IAC5B,KAAK,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC;IACtC,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,IAAI,CAAC,GAAwB,EAAE,IAAY,EAAE,IAAY,EAAE,IAAqB;IACvF,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE;QAClB,cAAc,EAAE,IAAI;QACpB,eAAe,EAAE,UAAU;QAC3B,2EAA2E;QAC3E,4DAA4D;QAC5D,wBAAwB,EAAE,SAAS;QACnC,iBAAiB,EAAE,MAAM;QACzB,yBAAyB,EACvB,iKAAiK;KACpK,CAAC,CAAC;IACH,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,QAAQ,CAAC,GAAyB,EAAE,KAAK,GAAG,EAAE,GAAG,IAAI;IAC5D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;YACnB,IAAI,IAAI,CAAC,CAAC;YACV,IAAI,IAAI,CAAC,MAAM,GAAG,KAAK;gBAAE,MAAM,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QACH,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACnC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,OAAO,CAC3B,OAAkB,EAAE;IAEpB,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAErD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,WAAW,GAAwB,IAAI,CAAC;IAE5C,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC5C,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,KAAK,GAAG,CAAC,CAAC;QACV,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;YAChC,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YACZ,IAAI,CAAC;gBACH,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,2BAA2B,EAAE,gBAAgB,CAAC,CAAC;YAChE,CAAC;YAAC,MAAM,CAAC;gBACP,8CAA8C;YAChD,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,4EAA4E;IAC5E,4EAA4E;IAC5E,wBAAwB;IACxB,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;QAChC,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,IAAI,GACR,CAAC,KAAK,KAAK,CAAC,IAAI,GAAG,GAAG,KAAK,GAAG,YAAY,CAAC;YAC3C,CAAC,QAAQ,KAAK,CAAC,IAAI,GAAG,GAAG,QAAQ,GAAG,iBAAiB,CAAC;YACtD,CAAC,QAAQ,KAAK,CAAC,IAAI,GAAG,GAAG,SAAS,GAAG,kBAAkB,CAAC,CAAC;QAC3D,IAAI,IAAI,EAAE,CAAC;YACT,aAAa,CAAC,QAAQ,CAAC,CAAC;YACxB,WAAW,EAAE,EAAE,CAAC;QAClB,CAAC;IACH,CAAC,EAAE,IAAI,CAAC,CAAC;IACT,QAAQ,CAAC,KAAK,EAAE,CAAC;IAEjB,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC1C,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7B,8EAA8E;QAC9E,8EAA8E;QAC9E,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;IAC9B,MAAM,IAAI,GAAG,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;IACtE,MAAM,GAAG,GAAG,oBAAoB,IAAI,OAAO,KAAK,EAAE,CAAC;IACnD,OAAO;QACL,GAAG;QACH,KAAK,EAAE,GAAG,EAAE;YACV,aAAa,CAAC,QAAQ,CAAC,CAAC;YACxB,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;QACD,MAAM,EAAE,CAAC,EAAc,EAAE,EAAE;YACzB,WAAW,GAAG,EAAE,CAAC;QACnB,CAAC;KACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,MAAM,CACnB,GAAyB,EACzB,GAAwB,EACxB,KAAa,EACb,KAAiB;IAEjB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,2BAA2B,EAAE,gDAAgD,CAAC,CAAC;QAC9F,OAAO;IACT,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,kBAAkB,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,IAAK,GAAG,CAAC,OAAO,CAAC,cAAc,CAAwB,IAAI,EAAE,CAAC;IACrG,8EAA8E;IAC9E,gDAAgD;IAChD,MAAM,EAAE,GACN,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;QAC7B,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACjE,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,2BAA2B,EAAE,yCAAyC,CAAC,CAAC;QACvF,OAAO;IACT,CAAC;IAED,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,IAAI,GAAG,CAAC,QAAQ,KAAK,GAAG,EAAE,CAAC;QACjD,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,0BAA0B,EAAE,IAAA,wBAAiB,EAAC,KAAK,CAAC,CAAC,CAAC;QACrE,OAAO;IACT,CAAC;IAED,uEAAuE;IACvE,sEAAsE;IACtE,8EAA8E;IAC9E,iEAAiE;IACjE,IAAI,GAAG,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;QACjC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,2BAA2B,EAAE,EAAE,CAAC,CAAC;QAChD,OAAO;IACT,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;QAChC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,2BAA2B,EAAE,EAAE,CAAC,CAAC;QAChD,OAAO;IACT,CAAC;IAED,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,IAAI,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;QAC1D,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,iCAAiC,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAChF,OAAO;IACT,CAAC;IAED,+EAA+E;IAC/E,0EAA0E;IAC1E,0EAA0E;IAC1E,qDAAqD;IACrD,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9D,IAAI,SAAS;YAAE,IAAA,mBAAU,EAAC,SAAS,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QACpE,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;QACjE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAA,iBAAQ,GAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,CAAC;QACjF,IAAI,CAAC;YACH,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;QACtD,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,2BAA2B,EAAE,6BAA6B,CAAC,CAAC;QAC7E,CAAC;QACD,OAAO;IACT,CAAC;IAED,2EAA2E;IAC3E,6EAA6E;IAC7E,2EAA2E;IAC3E,mBAAmB;IACnB,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,IAAI,GAAG,CAAC,QAAQ,KAAK,cAAc,EAAE,CAAC;QAC7D,IAAI,IAAsB,CAAC;QAC3B,IAAI,CAAC;YACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAqB,CAAC;QAC7D,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC;YAClF,OAAO;QACT,CAAC;QACD,MAAM,GAAG,GAAG,IAAA,kCAAuB,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9C,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,IAAI,CACF,GAAG,EACH,GAAG,EACH,kBAAkB,EAClB,IAAI,CAAC,SAAS,CAAC;gBACb,KAAK,EACH,6GAA6G;aAChH,CAAC,CACH,CAAC;YACF,OAAO;QACT,CAAC;QACD,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACtB,+DAA+D;QAC/D,IAAI,IAAwB,CAAC;QAC7B,IAAI,CAAC;YACH,IAAI,GAAG,IAAA,mBAAU,GAAE,CAAC,OAAO,CAAC;QAC9B,CAAC;QAAC,MAAM,CAAC;YACP,8EAA8E;QAChF,CAAC;QACD,IAAA,0BAAe,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,iCAAiC,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAChF,OAAO;IACT,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,IAAI,GAAG,CAAC,QAAQ,KAAK,kBAAkB,EAAE,CAAC;QACjE,IAAI,IAAsB,CAAC;QAC3B,IAAI,CAAC;YACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAqB,CAAC;QAC7D,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC;YAClF,OAAO;QACT,CAAC;QACD,MAAM,GAAG,GAAG,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5F,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;YACf,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,sCAAsC,EAAE,CAAC,CAAC,CAAC;YACtG,OAAO;QACT,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,mBAAU,EAAE,CAAC;YACtC,IAAI,CACF,GAAG,EACH,GAAG,EACH,kBAAkB,EAClB,IAAI,CAAC,SAAS,CAAC;gBACb,KAAK,EAAE,eAAe,mBAAU,wFAAwF;aACzH,CAAC,CACH,CAAC;YACF,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC;YACH,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;QAC5C,CAAC;QAAC,MAAM,CAAC;YACP,QAAQ,GAAG,KAAK,CAAC;QACnB,CAAC;QACD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,GAAG,mCAAmC,EAAE,CAAC,CAAC,CAAC;YACzG,OAAO;QACT,CAAC;QACD,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACtB,IAAI,IAAA,uBAAY,EAAC,GAAG,CAAC,EAAE,CAAC;YACtB,IAAI,QAA4B,CAAC;YACjC,IAAI,CAAC;gBACH,QAAQ,GAAG,IAAA,mBAAU,GAAE,CAAC,OAAO,CAAC;YAClC,CAAC;YAAC,MAAM,CAAC;gBACP,sFAAsF;YACxF,CAAC;YACD,IAAA,0BAAe,EAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACjC,CAAC;QACD,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,iCAAiC,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAChF,OAAO;IACT,CAAC;IAED;;;;;;OAMG;IACH,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QACpE,IAAI,IAAkB,CAAC;QACvB,IAAI,CAAC;YACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAiB,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC;YAClF,OAAO;QACT,CAAC;QACD,MAAM,GAAG,GAAG,gBAAgB,EAAE,CAAC;QAE/B,IAAI,GAAG,CAAC,QAAQ,KAAK,oBAAoB,EAAE,CAAC;YAC1C,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,IAAA,mBAAW,EAAC,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC7F,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,iCAAiC,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YAC3E,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC5G,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,GAAG,CAAC,QAAQ,KAAK,oBAAoB,EAAE,CAAC;YAC1C,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,iCAAiC,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,IAAA,iBAAS,EAAC,IAAI,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,IAAA,mBAAU,EAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YACtH,OAAO;QACT,CAAC;QAED,IAAI,GAAG,CAAC,QAAQ,KAAK,kBAAkB,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,IAAA,kBAAU,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,QAAQ,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;gBACnH,OAAO;YACT,CAAC;YACD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;YACjD,IAAA,0BAAe,EAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;YACrC,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;YAC9B,mFAAmF;YACnF,uFAAuF;YACvF,MAAM,OAAO,GAAG,IAAI,KAAK,MAAM,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YAChF,IAAI,CACF,GAAG,EACH,GAAG,EACH,iCAAiC,EACjC,IAAI,CAAC,SAAS,CAAC;gBACb,OAAO,EAAE,MAAM,CAAC,IAAI;gBACpB,QAAQ,EAAE,gCAAgC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE;gBACvE,KAAK,EAAE,IAAI;gBACX,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,IAAI,IAAI;gBAC9C,UAAU;gBACV,IAAI,EAAE,OAAO;oBACX,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;oBACjG,CAAC,CAAC,EAAE;gBACN,KAAK,EAAE,UAAU,EAAE;aACpB,CAAC,CACH,CAAC;YACF,OAAO;QACT,CAAC;IACH,CAAC;IAED,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,IAAI,GAAG,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;QACzD,IAAI,IAAyB,CAAC;QAC9B,IAAI,CAAC;YACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAwB,CAAC;QAChE,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC;YAClF,OAAO;QACT,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QACjC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;YAChF,OAAO;QACT,CAAC;QACD,2EAA2E;QAC3E,qEAAqE;QACrE,8DAA8D;QAC9D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;QAC9E,2EAA2E;QAC3E,6EAA6E;QAC7E,gEAAgE;QAChE,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC;YAC7C,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;YAC1B,CAAC,CAAC,QAAQ,KAAK,OAAO;gBACpB,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;gBAC1B,CAAC,CAAC,IAAI,CAAC;QACX,MAAM,IAAI,GAAG,UAAU,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QACjE,MAAM,IAAI,GAAG,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAG,UAAsC,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YACzG,EAAE;YACF,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK;YACxB,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK;YACxB,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,MAAM;SAC3B,CAAC,CAAC,CAAC;QACJ,IAAI,CACF,GAAG,EACH,GAAG,EACH,iCAAiC,EACjC,IAAI,CAAC,SAAS,CAAC;YACb,GAAG,MAAM;YACT,GAAG,IAAI;YACP,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,IAAI;YACJ,uEAAuE;YACvE,2CAA2C;YAC3C,IAAI,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI;SACxC,CAAC,CACH,CAAC;QACF,OAAO;IACT,CAAC;IAED,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,2BAA2B,EAAE,WAAW,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;GAMG;AACH;;;;;;;;;;;;GAYG;AACH,2EAA2E;AAC3E,yEAAyE;AACzE,sCAAsC;AACtC,MAAM,UAAU,GAAG,0CAA0C,CAAC;AAE9D,MAAM,YAAY,GAA2B;IAC3C,GAAG,EAAE,IAAI;IACT,IAAI,EAAE,KAAK;IACX,GAAG,EAAE,OAAO;IACZ,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,MAAM;IACX,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,MAAM;CACZ,CAAC;AAEF,SAAgB,SAAS,CAAC,MAAc,EAAE,IAAY;IACpD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACtE,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACpC,IAAI,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACvE,CAAC;IAED,+EAA+E;IAC/E,wEAAwE;IACxE,yEAAyE;IACzE,2EAA2E;IAC3E,wEAAwE;IACxE,WAAW;IACX,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACxE,OAAO;QACL,IAAI,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;QACrC,QAAQ,EACN,QAAQ,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;YAChD,qEAAqE;KACxE,CAAC;AACJ,CAAC;AAED,SAAS,MAAM,CAAC,IAAc;IAC5B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,KAAK,GAAG,IAAA,qBAAK,EAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,EAAE;YAC3D,KAAK,EAAE,KAAK;YACZ,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE;SACnD,CAAC,CAAC;QACH,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,CAAC,KAAa,EAAQ,EAAE;YAClC,GAAG,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACxB,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG,GAAG,IAAI;gBAAE,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;QAC5D,CAAC,CAAC;QACF,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC7B,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC7B,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QACvE,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;AACL,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ia-qa/self-healing",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.23.0",
|
|
4
4
|
"description": "Your Playwright, Cypress or Selenium tests break when a selector moves — this finds the element again and rewrites the test. Deterministic: no LLM decides whether your build passes. Runs entirely on your machine, with a local MCP server for agents.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"self-healing",
|
|
@@ -92,6 +92,28 @@ BLOCK is raised by `lost` (element gone), `ambiguous` (several candidates — a
|
|
|
92
92
|
(the old selector still resolves, but onto a **different** element: the test stays green while
|
|
93
93
|
clicking the wrong thing), or a name-drift finding that is not attributable.
|
|
94
94
|
|
|
95
|
+
`explain` also answers the route question now. A failure that names a URL the suite navigates
|
|
96
|
+
to, on a route the app moved, comes back **BLOCK** with both URLs — where before every locator
|
|
97
|
+
resolved and it said PASS, i.e. "not drift, go look at timing". If you see that BLOCK, report
|
|
98
|
+
the two URLs and stop; do not edit the `page.goto`.
|
|
99
|
+
|
|
100
|
+
`routeDrift` is a third list: links whose **destination** changed while the element stayed the
|
|
101
|
+
same. Report both URLs and the page. It is **not** a failure on its own — an app may reorganise
|
|
102
|
+
its URLs — unless the entry carries `usedAt`, which means the suite navigates to the old route
|
|
103
|
+
and is red now. **Never rewrite a `page.goto` from it**: nothing on disk says whether the new
|
|
104
|
+
route is the same page renamed or a different page, so that is the human's call, not yours.
|
|
105
|
+
When `map` reports a declared page that moved, `ia-qa-heal map --fix-redirects` writes the
|
|
106
|
+
config change; if it refuses because several pages landed in one place, run `session --check`
|
|
107
|
+
rather than reaching for the flag again — that shape is an expired session, not a migration.
|
|
108
|
+
|
|
109
|
+
`bindingDrift` rows are the other half, about the literal strings the suite writes: `broken`
|
|
110
|
+
(repairable), `rebound`, `gone`, `dangling`, and `ambiguous`. Read `ambiguous` off `was`, not off
|
|
111
|
+
the word: **with** `was` the string now matches several elements; **without** it, the string
|
|
112
|
+
matched several and now matches none — a route migration is the usual cause, the suite is red, and
|
|
113
|
+
`candidates` lists where those elements went. Report the candidates to the user and let them pick.
|
|
114
|
+
Never turn one into an edit, however obvious it looks: a binding that was already ambiguous never
|
|
115
|
+
established which element the test meant.
|
|
116
|
+
|
|
95
117
|
## 4. Never do this
|
|
96
118
|
|
|
97
119
|
1. **Never hand-rewrite a locator reported `unattributable`.** `getByText`, `cy.contains`,
|