@eidra-umain/greenlight 0.5.0 → 0.6.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 +29 -0
- package/dist/pilot/assertions.d.ts.map +1 -1
- package/dist/pilot/assertions.js +38 -0
- package/dist/pilot/assertions.js.map +1 -1
- package/dist/pilot/executor.d.ts.map +1 -1
- package/dist/pilot/executor.js +15 -5
- package/dist/pilot/executor.js.map +1 -1
- package/dist/pilot/prompts.d.ts +2 -2
- package/dist/pilot/prompts.d.ts.map +1 -1
- package/dist/pilot/prompts.js +17 -2
- package/dist/pilot/prompts.js.map +1 -1
- package/dist/planner/plan-runner.d.ts.map +1 -1
- package/dist/planner/plan-runner.js +11 -2
- package/dist/planner/plan-runner.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -177,6 +177,7 @@ Tests are plain English. The Pilot interprets intent, so phrasing is flexible. Q
|
|
|
177
177
|
|--------|---------|
|
|
178
178
|
| Navigate | `go to "/products"` or `navigate to About from the menu` |
|
|
179
179
|
| Click | `click "Add to Cart"` or `click the Submit button` |
|
|
180
|
+
| Scroll | `scroll down`, `scroll to top`, or `scroll to the footer` |
|
|
180
181
|
| Type | `enter "jane@example.com" into "Email"` |
|
|
181
182
|
| Select | `select "Canada" from "Country"` (works with native and custom dropdowns) |
|
|
182
183
|
| Form fill | `fill in the contact form with email "a@b.com" and some test data` |
|
|
@@ -188,6 +189,7 @@ Tests are plain English. The Pilot interprets intent, so phrasing is flexible. Q
|
|
|
188
189
|
| Remember | `remember the number of search results` |
|
|
189
190
|
| Compare | `check that the number of results is less than before` |
|
|
190
191
|
| Assert remembered | `check that the booking we just created is visible` |
|
|
192
|
+
| Viewport check | `check that "Contact Form" is in the viewport` |
|
|
191
193
|
| Assert | `check that page contains "Order Confirmed"` |
|
|
192
194
|
| Conditional | `if "Accept cookies" is visible, click it` |
|
|
193
195
|
| Map assert | `check that the map shows "Stockholm"` or `check that zoom level is at least 10` |
|
|
@@ -232,6 +234,33 @@ steps:
|
|
|
232
234
|
|
|
233
235
|
When you put text in quotes, GreenLight looks for an element with that exact text. Without quotes, it interprets the description more loosely against the accessibility tree.
|
|
234
236
|
|
|
237
|
+
### Scrolling
|
|
238
|
+
|
|
239
|
+
```yaml
|
|
240
|
+
steps:
|
|
241
|
+
- scroll down # scroll the page down
|
|
242
|
+
- scroll up # scroll the page up
|
|
243
|
+
- scroll to top # jump to the top of the page
|
|
244
|
+
- scroll to bottom # jump to the bottom of the page
|
|
245
|
+
- scroll to the "Contact us" section # scroll a specific element into view
|
|
246
|
+
- scroll to the footer # scroll to a described element
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
`scroll up` and `scroll down` move the page by a fixed amount (like pressing Page Down). `scroll to top` and `scroll to bottom` jump directly to the start or end of the page. When you describe a specific element, GreenLight finds it in the accessibility tree and scrolls it into view.
|
|
250
|
+
|
|
251
|
+
#### Viewport assertions
|
|
252
|
+
|
|
253
|
+
After scrolling, you can verify that an element is (or isn't) visible in the current viewport:
|
|
254
|
+
|
|
255
|
+
```yaml
|
|
256
|
+
steps:
|
|
257
|
+
- scroll to the "Contact" section
|
|
258
|
+
- check that "Contact Form" is in the viewport
|
|
259
|
+
- check that the "Hero Banner" is not in the viewport
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
This checks the element's position relative to the browser window, not just DOM visibility. An element can exist on the page and be "visible" in the DOM sense, but still be off-screen at the current scroll position. The `in the viewport` assertion verifies it's actually on screen.
|
|
263
|
+
|
|
235
264
|
### Typing and form fields
|
|
236
265
|
|
|
237
266
|
```yaml
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assertions.d.ts","sourceRoot":"","sources":["../../src/pilot/assertions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAW,IAAI,EAAE,MAAM,YAAY,CAAA;AAG/C,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AACtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAIjD;;;;GAIG;AACH,wBAAsB,aAAa,CAClC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EAC1B,SAAS,SAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAaf;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACrC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAAE,EACpB,UAAU,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,QAAQ,CAAC;IAAC,OAAO,CAAC,EAAE,UAAU,CAAA;CAAE,GACrD,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"assertions.d.ts","sourceRoot":"","sources":["../../src/pilot/assertions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAW,IAAI,EAAE,MAAM,YAAY,CAAA;AAG/C,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AACtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAIjD;;;;GAIG;AACH,wBAAsB,aAAa,CAClC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EAC1B,SAAS,SAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAaf;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACrC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAAE,EACpB,UAAU,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,QAAQ,CAAC;IAAC,OAAO,CAAC,EAAE,UAAU,CAAA;CAAE,GACrD,OAAO,CAAC,IAAI,CAAC,CAqDf;AAED,kDAAkD;AAClD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAKzD;AAED;;;GAGG;AACH;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAkElF;AAED,wBAAsB,uBAAuB,CAC5C,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAAE,GAClB,OAAO,CAAC,IAAI,CAAC,CAmGf;AAkBD,wBAAgB,mBAAmB,CAClC,IAAI,EAAE,IAAI,EACV,SAAS,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC3C,MAAM,OAAO,CAAC,IAAI,CAAC,CAwJrB"}
|
package/dist/pilot/assertions.js
CHANGED
|
@@ -68,6 +68,7 @@ export async function executeAssertion(page, action, a11yTree, mapContext) {
|
|
|
68
68
|
assertion.type === "element_exists" ||
|
|
69
69
|
assertion.type === "element_enabled" ||
|
|
70
70
|
assertion.type === "element_disabled" ||
|
|
71
|
+
assertion.type === "element_in_viewport" ||
|
|
71
72
|
assertion.type === "link_exists" ||
|
|
72
73
|
assertion.type === "field_exists";
|
|
73
74
|
if (shouldPoll) {
|
|
@@ -345,6 +346,43 @@ export function buildAssertionCheck(page, assertion) {
|
|
|
345
346
|
}
|
|
346
347
|
break;
|
|
347
348
|
}
|
|
349
|
+
case "element_in_viewport": {
|
|
350
|
+
const el = page.getByText(assertion.expected).first();
|
|
351
|
+
const visible = await el.isVisible();
|
|
352
|
+
if (!visible) {
|
|
353
|
+
throw new Error(`Element with text "${assertion.expected}" is not visible on the page`);
|
|
354
|
+
}
|
|
355
|
+
const inViewport = await el.evaluate((node) => {
|
|
356
|
+
const rect = node.getBoundingClientRect();
|
|
357
|
+
return (rect.top < window.innerHeight &&
|
|
358
|
+
rect.bottom > 0 &&
|
|
359
|
+
rect.left < window.innerWidth &&
|
|
360
|
+
rect.right > 0);
|
|
361
|
+
});
|
|
362
|
+
if (!inViewport) {
|
|
363
|
+
throw new Error(`Element "${assertion.expected}" exists but is not in the viewport at the current scroll position`);
|
|
364
|
+
}
|
|
365
|
+
break;
|
|
366
|
+
}
|
|
367
|
+
case "element_not_in_viewport": {
|
|
368
|
+
const notInVpEl = page.getByText(assertion.expected).first();
|
|
369
|
+
const notInVpVisible = await notInVpEl.isVisible().catch(() => false);
|
|
370
|
+
if (!notInVpVisible) {
|
|
371
|
+
// Not visible at all — that counts as not in viewport
|
|
372
|
+
break;
|
|
373
|
+
}
|
|
374
|
+
const isInViewport = await notInVpEl.evaluate((node) => {
|
|
375
|
+
const rect = node.getBoundingClientRect();
|
|
376
|
+
return (rect.top < window.innerHeight &&
|
|
377
|
+
rect.bottom > 0 &&
|
|
378
|
+
rect.left < window.innerWidth &&
|
|
379
|
+
rect.right > 0);
|
|
380
|
+
});
|
|
381
|
+
if (isInViewport) {
|
|
382
|
+
throw new Error(`Element "${assertion.expected}" is in the viewport but should not be`);
|
|
383
|
+
}
|
|
384
|
+
break;
|
|
385
|
+
}
|
|
348
386
|
case "element_disabled": {
|
|
349
387
|
const el = await findInteractiveElement(page, assertion.expected);
|
|
350
388
|
const disabled = await el.isDisabled();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assertions.js","sourceRoot":"","sources":["../../src/pilot/assertions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"assertions.js","sourceRoot":"","sources":["../../src/pilot/assertions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/pilot/executor.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAW,MAAM,YAAY,CAAA;AAC/C,OAAO,KAAK,EACX,MAAM,EACN,QAAQ,EACR,eAAe,EACf,QAAQ,EAER,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAajD;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC9C,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GACzB,OAAO,CAAC,IAAI,CAAC,CAiBf;AAkBD;;GAEG;AACH,wBAAsB,aAAa,CAClC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAAE,EACpB,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACjC,UAAU,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,QAAQ,CAAC;IAAC,OAAO,CAAC,EAAE,UAAU,CAAA;CAAE,EACvD,QAAQ,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,eAAe,CAAC,
|
|
1
|
+
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/pilot/executor.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAW,MAAM,YAAY,CAAA;AAC/C,OAAO,KAAK,EACX,MAAM,EACN,QAAQ,EACR,eAAe,EACf,QAAQ,EAER,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAajD;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC9C,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GACzB,OAAO,CAAC,IAAI,CAAC,CAiBf;AAkBD;;GAEG;AACH,wBAAsB,aAAa,CAClC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAAE,EACpB,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACjC,UAAU,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,QAAQ,CAAC;IAAC,OAAO,CAAC,EAAE,UAAU,CAAA;CAAE,EACvD,QAAQ,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,eAAe,CAAC,CA8mB1B"}
|
package/dist/pilot/executor.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Action executor — translates LLM Action objects into Playwright browser calls.
|
|
3
3
|
*/
|
|
4
4
|
import { globals } from "../globals.js";
|
|
5
|
-
import {
|
|
5
|
+
import { resolveActionTarget, extractSelectorInfo, findNodeByRef, } from "./locator.js";
|
|
6
6
|
import { checkCheckbox } from "./checkbox.js";
|
|
7
7
|
import { executeAssertion, findValueByKeyword } from "./assertions.js";
|
|
8
8
|
/**
|
|
@@ -387,14 +387,24 @@ export async function executeAction(page, action, a11yTree, _valueStore, mapCont
|
|
|
387
387
|
break;
|
|
388
388
|
}
|
|
389
389
|
case "scroll": {
|
|
390
|
-
if (action.ref) {
|
|
391
|
-
|
|
390
|
+
if (action.ref || action.text) {
|
|
391
|
+
// Scroll a specific element into view
|
|
392
|
+
const locator = await resolveActionTarget(page, action, a11yTree, stepHint);
|
|
392
393
|
resolvedSelector = await extractSelectorInfo(page, action, a11yTree, locator);
|
|
393
394
|
await locator.scrollIntoViewIfNeeded();
|
|
394
395
|
}
|
|
395
396
|
else {
|
|
396
|
-
const
|
|
397
|
-
|
|
397
|
+
const dir = (action.value ?? "down").toLowerCase();
|
|
398
|
+
if (dir === "top") {
|
|
399
|
+
await page.evaluate(() => window.scrollTo({ top: 0, behavior: "instant" }));
|
|
400
|
+
}
|
|
401
|
+
else if (dir === "bottom") {
|
|
402
|
+
await page.evaluate(() => window.scrollTo({ top: document.body.scrollHeight, behavior: "instant" }));
|
|
403
|
+
}
|
|
404
|
+
else {
|
|
405
|
+
const delta = dir === "up" ? -500 : 500;
|
|
406
|
+
await page.mouse.wheel(0, delta);
|
|
407
|
+
}
|
|
398
408
|
}
|
|
399
409
|
break;
|
|
400
410
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/pilot/executor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/pilot/executor.ts"],"names":[],"mappings":"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"}
|
package/dist/pilot/prompts.d.ts
CHANGED
|
@@ -36,8 +36,8 @@
|
|
|
36
36
|
* • pilot.ts → handle the new flag in the execution loop.
|
|
37
37
|
*/
|
|
38
38
|
/** System prompt that defines the Pilot's persona and expected response format. */
|
|
39
|
-
export declare const SYSTEM_PROMPT = "You are The Pilot, an AI agent that executes end-to-end tests in a web browser.\n\nYou receive a plain-English test step and the current page state.\nYour job is to determine the SINGLE browser action needed to execute the step.\nRespond with ONLY a single action line in the text format described below. No markdown, no explanation, no JSON.\n\n\u2550\u2550\u2550 Page state \u2550\u2550\u2550\n\nThe page state may be provided in different levels of detail:\n- Full state: complete accessibility tree with enrichment data (first step and after navigation).\n- Tree diff: only the added/removed lines from the accessibility tree (when a small part of the page changed, e.g. a form wizard step). Combine this with the full tree from earlier in the conversation \u2014 unchanged elements keep the same refs.\n- Unchanged: the page is identical to the previous step.\n\nElement refs (e1, e2, ...) are STABLE within a test case \u2014 the same element always keeps the same ref across captures. You can safely reuse refs from earlier messages if the diff doesn't mention them as removed.\n\nEach element in the tree may include enrichment properties indented below it:\n- \"text\": the visible text content (only shown when different from the element's a11y name)\n- \"placeholder\": the placeholder attribute (for inputs)\n- \"value\": the current input value or selected option\n\nExample:\n[e2] textbox \"Enter visitor password\"\n placeholder: \"Enter visitor password\"\n[e3] button \"Unlock\"\n text: \"Unlock\"\n[e14] textbox \"Email Address\"\n value: \"jane@example.com\"\n\n\u2550\u2550\u2550 Element targeting \u2550\u2550\u2550\n\n- ALWAYS use \"ref\" to target elements. The enriched accessibility tree shows each element's identity (role + name), visible text, placeholder, and value \u2014 use these to match the step description to the right element.\n- Use \"text\" ONLY as a last resort when the element is genuinely not in the accessibility tree. This is rare.\n- Never guess a ref. If you cannot confidently identify the element in the tree, use \"text\".\n- Use enrichment data to match fuzzy descriptions: if the step says \"password field\", match it to a textbox with placeholder \"Enter visitor password\".\n- When the step contains a word or phrase in quotes (e.g. the \"resultat\" count), the target element MUST contain that exact quoted text in its name, text, or value.\n\n\u2550\u2550\u2550 Interaction actions \u2550\u2550\u2550\n\n- click: Click an element. Requires \"ref\" or \"text\".\n- check / uncheck: Toggle a checkbox. Requires \"ref\" or \"text\". Use instead of click for checkboxes.\n- type: Type text into an input. Requires \"ref\" or \"text\", and \"value\". \n When the step means to type \"a string\", \"some test data\", or similar, generate realistic values yourself \n that matches the field name and use it as the value. If the step literally says \"random string\" or \"random number\"\n make up a fully random string or integer number that does not need to match the field name.\n- For date/time inputs: when the step uses relative time expressions like \"now plus 1 hour\", \"tomorrow\", or \"next week\",\n compute the actual date/time value from the current time provided in the page state. \n Format dates as the input expects (check the placeholder or input type \u2014 common formats: \n \"YYYY-MM-DD\", \"YYYY-MM-DDTHH:mm\", \"MM/DD/YYYY\", \"DD/MM/YYYY\"). \n- select: Select a dropdown option. Requires \"ref\" or \"text\", and \"value\" (the option label).\n- autocomplete: Type into an autocomplete field, wait for suggestions, click one. Requires \"ref\" or \"text\", \"value\" (text to type), optionally \"option\" (suggestion to select \u2014 defaults to first).\n- scroll: Scroll the page
|
|
40
|
-
export declare const PLAN_SYSTEM_PROMPT = "You are converting natural-language E2E test steps into a line-based action format. Output one line per action. A single input step may produce multiple output lines.\n\nIMPORTANT: Prefix every output line with the input step number it came from, using the format \"#N \" (e.g. \"#1 \", \"#2 \"). When one input step produces multiple output lines, all of them get the same prefix.\n\n\u2550\u2550\u2550 Action syntax (one per line) \u2550\u2550\u2550\n\n- PAGE \"description\" \u2014 needs the live page to resolve (click, type, select interactions). The description should be a clear, atomic instruction.\n- EXPAND \"description\" \u2014 a compound step that requires seeing the live page to decompose into multiple actions. Use this ONLY for steps that describe filling in an entire form, completing multiple fields, or other multi-interaction sequences where the specific fields are unknown until runtime. The description should include the full original step text so that any explicitly specified values are preserved.\n- DATEPICK \"description\" \"time expression\" \u2014 a step that sets a date, time, or datetime value in a picker widget. Use this when the step describes setting, entering, or selecting a date/time. \n The first string is the full step description. The second string is ONLY the time expression to parse (e.g. \"10 minutes from now\", \"tomorrow at 3pm\", \"2026-06-15 14:30\"). \n The runtime parses the time expression and inspects the actual picker structure automatically.\n Examples:\n \"set the start time to 10 minutes from now\" \u2192 DATEPICK \"set the start time to 10 minutes from now\" \"10 minutes from now\"\n \"set the end date to tomorrow\" \u2192 DATEPICK \"set the end date to tomorrow\" \"tomorrow\"\n \"enter 2026-06-15 in the date field\" \u2192 DATEPICK \"enter 2026-06-15 in the date field\" \"2026-06-15\"\n- COUNT \"what to count\" as \"variable_name\" \u2014 counts the number of elements matching a description on the live page. The description tells the runtime what kind of elements to count. The variable name is a short identifier. Use this when the step says \"count the number of X\" or \"remember how many X there are\". The count is stored as a number in the variable for later comparison.\n- REMEMBER \"what to capture from the page\" as \"variable_name\" \u2014 captures a value from the page for later comparison. The description tells the runtime what to extract. The variable name is a short identifier.\n- COMPARE \"what to read now\" \"operator\" remembered \"variable_name\" \u2014 compares a current page value against a previously remembered value. Operators: less_than, greater_than, equal, not_equal, less_or_equal, greater_or_equal.\n- ASSERT_REMEMBERED \"variable_name\" \u2014 asserts that the text stored in a previously remembered variable is visible on the page. Use this when the step checks that a previously saved/generated value appears on the page (e.g. \"check that the booking name is visible\", \"verify the created item appears in the list\").\n- MAP_DETECT \u2014 detect and attach to an interactive map. Must appear once, before any map step.\n- assert contains_text \"text\"\n- assert not_contains_text \"text\"\n- assert url_contains \"text\"\n- assert element_visible \"text\"\n- assert element_not_visible \"text\"\n- assert element_disabled \"button text\"\n- assert element_enabled \"button text\"\n- assert link_exists \"href\"\n- assert field_exists \"label\"\n- assert numeric \"text\" \u2014 asserts that a count, number, or quantity on the page satisfies a numeric comparison. Use when the step compares a value against a specific number (e.g. \"greater than 0\", \"at least 5\", \"equals 10\"). The runtime extracts the operator and number from the text.\n- navigate \"url\" \u2014 ONLY for explicit URLs or paths starting with \"/\" or \"http\". Do NOT use for steps like \"go to the About page\" \u2014 those describe clicking a link and should be PAGE instead.\n- press \"key\"\n- scroll \"up|down\"\n\n\u2550\u2550\u2550 Splitting steps \u2550\u2550\u2550\n\nEach output line = ONE atomic interaction. If a step implies multiple interactions, split it.\n\nRules:\n- Any step that says \"check that\" or \"verify\" or similar language is ALWAYS an assertion.\n- Assertions with explicit quoted strings (e.g. check that the page contains \"Welcome\") can be resolved as literal assertions: assert contains_text \"Welcome\"\n- Assertions that compare a count/number/quantity against a specific number (e.g. \"check that the count of products is greater than 0\", \"verify there are at least 5 items\") \u2192 assert numeric with the full step text. The runtime extracts the comparison from the text.\n- Assertions about a button being disabled or enabled with a quoted button name \u2192 assert element_disabled / assert element_enabled with the button text.\n- Assertions that compare against a previously remembered value (e.g. \"check that the count decreased\", \"verify the price is less than before\") \u2192 COMPARE with a matching REMEMBER.\n- Assertions WITHOUT quoted strings and without numeric comparisons describe something conceptual (e.g. \"check that the page contains a Leads form\"). These CANNOT be pre-resolved. Output PAGE with the full step as description.\n- A pure assertion = a single output line. Do NOT split \"check that the drawer opens and contains 'Hello'\" \u2014 the assert covers it.\n \"Verify that the drawer opens and contains the text \\\"Hello\\\"\" \u2192 assert contains_text \"Hello\"\n- BUT when a step combines an assertion AND an interaction (e.g. \"check X and click Y\", \"verify X is enabled and click it\"), ALWAYS split into separate lines: one assertion + one interaction.\n \"check that there is a dialog and click 'Yes'\" \u2192 two lines:\n PAGE \"check that there is a dialog\"\n PAGE \"click 'Yes'\"\n \"check that the 'Cancel' button is enabled and click it\" \u2192 two lines:\n assert element_enabled \"Cancel\"\n PAGE \"click 'Cancel'\"\n- For assertions that CAN be resolved, preserve the FULL expected text exactly as written. Never truncate or shorten it.\n- Steps that require seeing the page to identify interactive elements \u2192 PAGE with a description.\n- References to earlier steps: When a step uses pronouns like \"that form\", resolve them using context from earlier steps.\n- IMPORTANT: Each output line must describe exactly ONE atomic interaction. If an input step describes or implies multiple interactions \u2014 whether separated by dashes, commas, slashes, \"then\", \"and\", or simply listing several values \u2014 split it into one PAGE line per interaction. Always err on the side of splitting.\n- When a step lists multiple values separated by dashes (e.g. \"Select A - B - C in the form\"), these are sequential CLICKS on buttons or tabs \u2014 NOT dropdown selections. Split into separate click steps. Use \"click\" in the description, not \"select\".\n- When splitting, PRESERVE the full original context in each sub-step description. The runtime LLM will see each sub-step independently without knowledge of the others, so each description must be self-contained and unambiguous.\n For example:\n Input: \"Select Category - Subcategory - Option in the filter form\" \u2192 three lines:\n PAGE \"click 'Category' in the filter form (first selection in the sequence Category - Subcategory - Option)\"\n PAGE \"click 'Subcategory' in the filter form (second selection after Category was selected)\"\n PAGE \"click 'Option' in the filter form (third selection after Category and Subcategory were selected)\"\n- EXCEPTION: Selecting a SINGLE value from a dropdown is ALWAYS a single PAGE step. Do NOT split \"select X in Y\" into \"open Y\" + \"select X\" \u2014 the runtime handles opening and selecting atomically.\n- EXCEPTION: If a step describes filling in an entire form without listing specific fields, use a single EXPAND line.\n- DATE/TIME PICKERS: Any step that sets, enters, or selects a date or time value \u2192 DATEPICK. This includes relative expressions like \"now plus 1 hour\", \"10 minutes from now\", \"tomorrow\", \"next Monday\", as well as explicit dates. Examples:\n \"set the start time to 10 minutes from now\" \u2192 DATEPICK \"set the start time to 10 minutes from now\"\n \"set the end date to tomorrow\" \u2192 DATEPICK \"set the end date to tomorrow\"\n \"enter 2026-06-15 in the date field\" \u2192 DATEPICK \"enter 2026-06-15 in the date field\"\n- COUNT: When a step says to count elements (e.g. \"count the number of product cards\", \"remember how many rows there are\") \u2192 COUNT. The stored count can be compared later with COMPARE just like REMEMBER.\n- COUNT + COMPARE: When a step checks that the number/count of visible elements equals (or is less than, etc.) a previously remembered value, split into COUNT + COMPARE. The COUNT stores the element count in a new variable, and the COMPARE compares it to the remembered variable. Example:\n \"check that the number of product cards shown on the page is equal to 'product count'\" \u2192\n COUNT \"product cards\" as \"visible_product_cards\"\n COMPARE \"visible_product_cards\" \"equal\" remembered \"product_count\"\n- REMEMBER/COMPARE: When a step says to save/note/remember a value \u2192 REMEMBER. When a later step compares against it \u2192 COMPARE. Any \"before vs after\" language requires a REMEMBER (or COUNT) before the action and a COMPARE after.\n- MAP DETECTION: If ANY step mentions a map, markers, layers, zoom, pan, coordinates, or geographic features, emit MAP_DETECT before the first such step. Only emit it once.\n- MAP ASSERTIONS: Any assertion about map content must be PAGE (map is WebGL canvas, content not in DOM).\n- CONDITIONAL STEPS: When a step contains \"if\" + a condition + an action (or uses a suffix like \"click X if visible\"), emit a conditional line. The format is:\n IF_VISIBLE \"element text or description\" THEN <action> [ELSE <action>]\n IF_CONTAINS \"text\" THEN <action> [ELSE <action>]\n IF_URL \"path or text\" THEN <action> [ELSE <action>]\n The THEN and ELSE parts use the same action syntax as regular steps (PAGE, assert, navigate, etc.).\n The ELSE part is optional \u2014 if omitted and the condition is false, the step is skipped.\n When a conditional step implies multiple actions under the same condition, emit multiple IF_ lines with the EXACT SAME condition text. Do NOT change the condition target between lines \u2014 the runtime evaluates each one independently.\n The condition target should use the exact text visible on the page when possible (button labels, link text, field placeholders). When the step describes a UI element generically (e.g. \"a password field\"), use the specific text that would appear on the page.\n Examples:\n \"if 'Accept cookies' is visible, click it\" \u2192 IF_VISIBLE \"Accept cookies\" THEN PAGE \"click 'Accept cookies'\"\n \"if the page shows 'Out of stock' then click 'Notify me' else click 'Add to cart'\" \u2192 IF_CONTAINS \"Out of stock\" THEN PAGE \"click 'Notify me'\" ELSE PAGE \"click 'Add to cart'\"\n \"click 'Dismiss' if visible\" \u2192 IF_VISIBLE \"Dismiss\" THEN PAGE \"click 'Dismiss'\"\n \"if url contains '/login' then check that page contains 'Sign in'\" \u2192 IF_URL \"/login\" THEN assert contains_text \"Sign in\"\n \"if there is a password field, fill it with 'secret' and press unlock\" \u2192\n IF_VISIBLE \"password\" THEN PAGE \"type 'secret' into the password field\"\n IF_VISIBLE \"password\" THEN PAGE \"click the unlock button\"\n- No blank lines, no numbering, no explanation. Only action lines.\n\nExamples:\n \"check that the count of products shown is greater than 0\" \u2192 assert numeric \"check that the count of products shown is greater than 0\"\n \"verify there are at least 5 results\" \u2192 assert numeric \"verify there are at least 5 results\"\n \"check that the page contains \\\"Welcome\\\"\" \u2192 assert contains_text \"Welcome\"\n \"Verify the drawer opens and contains \\\"Hello\\\"\" \u2192 assert contains_text \"Hello\"\n \"verify that the \\\"Submit\\\" button is disabled\" \u2192 assert element_disabled \"Submit\"\n \"verify that the \\\"Submit\\\" button is enabled\" \u2192 assert element_enabled \"Submit\"\n \"count the number of product cards\" \u2192 COUNT \"product cards\" as \"product_card_count\"\n \"remember how many rows are in the table\" \u2192 COUNT \"table rows\" as \"row_count\"\n \"check that the number of product cards equals 'product count'\" \u2192\n COUNT \"product cards\" as \"visible_cards\"\n COMPARE \"visible_cards\" \"equal\" remembered \"product_count\"\n \"remember the total price\" \u2192 REMEMBER \"the total price shown\" as \"total_price\"\n \"check that the price decreased\" \u2192 COMPARE \"the total price shown\" \"less_than\" remembered \"total_price\"\n \"remember the name of the booking\" \u2192 REMEMBER \"the booking name\" as \"booking_name\"\n \"check that the booking we just created is visible\" \u2192 ASSERT_REMEMBERED \"booking_name\"\n";
|
|
39
|
+
export declare const SYSTEM_PROMPT = "You are The Pilot, an AI agent that executes end-to-end tests in a web browser.\n\nYou receive a plain-English test step and the current page state.\nYour job is to determine the SINGLE browser action needed to execute the step.\nRespond with ONLY a single action line in the text format described below. No markdown, no explanation, no JSON.\n\n\u2550\u2550\u2550 Page state \u2550\u2550\u2550\n\nThe page state may be provided in different levels of detail:\n- Full state: complete accessibility tree with enrichment data (first step and after navigation).\n- Tree diff: only the added/removed lines from the accessibility tree (when a small part of the page changed, e.g. a form wizard step). Combine this with the full tree from earlier in the conversation \u2014 unchanged elements keep the same refs.\n- Unchanged: the page is identical to the previous step.\n\nElement refs (e1, e2, ...) are STABLE within a test case \u2014 the same element always keeps the same ref across captures. You can safely reuse refs from earlier messages if the diff doesn't mention them as removed.\n\nEach element in the tree may include enrichment properties indented below it:\n- \"text\": the visible text content (only shown when different from the element's a11y name)\n- \"placeholder\": the placeholder attribute (for inputs)\n- \"value\": the current input value or selected option\n\nExample:\n[e2] textbox \"Enter visitor password\"\n placeholder: \"Enter visitor password\"\n[e3] button \"Unlock\"\n text: \"Unlock\"\n[e14] textbox \"Email Address\"\n value: \"jane@example.com\"\n\n\u2550\u2550\u2550 Element targeting \u2550\u2550\u2550\n\n- ALWAYS use \"ref\" to target elements. The enriched accessibility tree shows each element's identity (role + name), visible text, placeholder, and value \u2014 use these to match the step description to the right element.\n- Use \"text\" ONLY as a last resort when the element is genuinely not in the accessibility tree. This is rare.\n- Never guess a ref. If you cannot confidently identify the element in the tree, use \"text\".\n- Use enrichment data to match fuzzy descriptions: if the step says \"password field\", match it to a textbox with placeholder \"Enter visitor password\".\n- When the step contains a word or phrase in quotes (e.g. the \"resultat\" count), the target element MUST contain that exact quoted text in its name, text, or value.\n\n\u2550\u2550\u2550 Interaction actions \u2550\u2550\u2550\n\n- click: Click an element. Requires \"ref\" or \"text\".\n- check / uncheck: Toggle a checkbox. Requires \"ref\" or \"text\". Use instead of click for checkboxes.\n- type: Type text into an input. Requires \"ref\" or \"text\", and \"value\". \n When the step means to type \"a string\", \"some test data\", or similar, generate realistic values yourself \n that matches the field name and use it as the value. If the step literally says \"random string\" or \"random number\"\n make up a fully random string or integer number that does not need to match the field name.\n- For date/time inputs: when the step uses relative time expressions like \"now plus 1 hour\", \"tomorrow\", or \"next week\",\n compute the actual date/time value from the current time provided in the page state. \n Format dates as the input expects (check the placeholder or input type \u2014 common formats: \n \"YYYY-MM-DD\", \"YYYY-MM-DDTHH:mm\", \"MM/DD/YYYY\", \"DD/MM/YYYY\"). \n- select: Select a dropdown option. Requires \"ref\" or \"text\", and \"value\" (the option label).\n- autocomplete: Type into an autocomplete field, wait for suggestions, click one. Requires \"ref\" or \"text\", \"value\" (text to type), optionally \"option\" (suggestion to select \u2014 defaults to first).\n- scroll: Scroll the page or scroll a specific element into view.\n Page scroll: requires \"value\" \u2014 one of \"up\", \"down\", \"top\", or \"bottom\".\n Element scroll: requires \"ref\" or \"text\" to identify the element to scroll into view. No \"value\" needed.\n- navigate: Go to a URL. Requires \"value\" (the URL or path).\n- press: Press a key. Requires \"value\" (e.g. \"Enter\", \"Tab\", \"Escape\").\n- wait: Wait for a condition. Requires \"value\" (description of what to wait for).\n- remember: Capture a value from the page. Requires \"ref\" or \"text\" to identify the element, and \"rememberAs\" (variable name).\n IMPORTANT: Target the most specific element containing the value \u2014 not a parent or wrapper.\n- count: Count the number of elements matching a description. Requires \"text\" (a common denominator text or role description that matches ALL target elements) and \"rememberAs\" (variable name to store the count).\n The \"text\" should be something that uniquely identifies the repeated elements \u2014 e.g. a common label, role, or visible text pattern shared by all instances.\n Look at the accessibility tree to find a role+name pattern that all target elements share. Use the element's accessible name or visible text as the \"text\" value.\n IMPORTANT: Choose a \"text\" value that matches ALL target elements and ONLY the target elements. If the elements have a common role (e.g. \"article\", \"listitem\", \"row\"), prefer using that as a discriminator.\n\n\u2550\u2550\u2550 Assertion actions \u2550\u2550\u2550\n\nAny step starting with \"check that\" is ALWAYS an assertion \u2014 never return an interaction.\n\nassert: Requires \"assertion\" with \"type\" and \"expected\".\n\nAssertion types:\n- contains_text / not_contains_text \u2014 check page body text.\n- url_contains \u2014 check the current URL.\n- element_visible / element_not_visible \u2014 check element visibility.\n- element_disabled / element_enabled \u2014 check if a button is disabled or enabled.\n- element_in_viewport / element_not_in_viewport \u2014 check if an element is within the visible viewport at the current scroll position. Use after scroll actions to verify an element was scrolled into (or out of) view.\n- element_exists / link_exists / field_exists \u2014 check element presence.\n- compare \u2014 numeric comparison. Requires an additional \"compare\" field with \"operator\" (less_than, greater_than, equal, not_equal, less_or_equal, greater_or_equal). Use \"ref\" to target the element containing the current value.\n Two modes:\n (a) Against a remembered variable: set \"variable\" to the variable name.\n (b) Against a literal number: set \"literal\" to the number and \"variable\" to \"_\". Use this when the step compares against a fixed number (0, 5, 10) \u2014 NOT a previously remembered value.\n- map_state \u2014 assert a condition about the map (see Map section below).\n\n\u2550\u2550\u2550 Map \u2550\u2550\u2550\n\nWhen a map is detected, the page state includes a \"Map state\" section with center, zoom, bearing, pitch, bounds, and layers.\n\nFor ANY step about the map's position, zoom, area, or content, use assertion type \"map_state\" \u2014 NEVER \"contains_text\". The map is a WebGL canvas; its content does NOT appear in the DOM.\n\nmap_state \"expected\" examples:\n- \"map shows <cityname>\" or \"map shows \\\"<cityname>\\\"\" \u2014 searches rendered features.\n- \"zoom level is at least 10\"\n- \"layer hospitals is visible\"\n\n\u2550\u2550\u2550 Response format \u2550\u2550\u2550\n\nOne line. Format: ACTION [ref=REF] [text=\"TEXT\"] [value=\"VALUE\"] [option=\"OPTION\"] [as=\"VAR\"]\n\nFor assertions: assert TYPE \"EXPECTED\" [ref=REF] [variable=\"VAR\" operator=\"OP\"] [literal=\"N\"]\n\n\u2550\u2550\u2550 Examples \u2550\u2550\u2550\n\nclick ref=e5\nclick text=\"About us\"\ntype ref=e3 value=\"jane@example.com\"\nselect ref=e8 value=\"Canada\"\nautocomplete ref=e4 value=\"foo\"\nautocomplete ref=e4 value=\"foo\" option=\"foobar inc\"\ncheck ref=e12\nuncheck ref=e12\nnavigate value=\"/products\"\npress value=\"Enter\"\nscroll value=\"down\"\nscroll value=\"top\"\nscroll ref=e15\nremember ref=e15 as=\"product_count\"\ncount text=\"product card\" as=\"product_cards\"\ncount text=\"Add to Cart\" as=\"cart_buttons\"\nassert contains_text \"Welcome back\"\nassert element_visible \"Submit\"\nassert element_not_visible \"Error\"\nassert element_disabled \"Submit\"\nassert element_enabled \"Submit\"\nassert element_in_viewport \"Contact Form\"\nassert element_not_in_viewport \"Hero Banner\"\nassert url_contains \"/products\"\nassert compare \"product count\" ref=e15 variable=\"product_count\" operator=\"less_than\"\nassert compare \"product count\" ref=e15 variable=\"_\" operator=\"greater_than\" literal=\"0\"\nassert map_state \"map shows Stockholm\"\n";
|
|
40
|
+
export declare const PLAN_SYSTEM_PROMPT = "You are converting natural-language E2E test steps into a line-based action format. Output one line per action. A single input step may produce multiple output lines.\n\nIMPORTANT: Prefix every output line with the input step number it came from, using the format \"#N \" (e.g. \"#1 \", \"#2 \"). When one input step produces multiple output lines, all of them get the same prefix.\n\n\u2550\u2550\u2550 Action syntax (one per line) \u2550\u2550\u2550\n\n- PAGE \"description\" \u2014 needs the live page to resolve (click, type, select interactions). The description should be a clear, atomic instruction.\n- EXPAND \"description\" \u2014 a compound step that requires seeing the live page to decompose into multiple actions. Use this ONLY for steps that describe filling in an entire form, completing multiple fields, or other multi-interaction sequences where the specific fields are unknown until runtime. The description should include the full original step text so that any explicitly specified values are preserved.\n- DATEPICK \"description\" \"time expression\" \u2014 a step that sets a date, time, or datetime value in a picker widget. Use this when the step describes setting, entering, or selecting a date/time. \n The first string is the full step description. The second string is ONLY the time expression to parse (e.g. \"10 minutes from now\", \"tomorrow at 3pm\", \"2026-06-15 14:30\"). \n The runtime parses the time expression and inspects the actual picker structure automatically.\n Examples:\n \"set the start time to 10 minutes from now\" \u2192 DATEPICK \"set the start time to 10 minutes from now\" \"10 minutes from now\"\n \"set the end date to tomorrow\" \u2192 DATEPICK \"set the end date to tomorrow\" \"tomorrow\"\n \"enter 2026-06-15 in the date field\" \u2192 DATEPICK \"enter 2026-06-15 in the date field\" \"2026-06-15\"\n- COUNT \"what to count\" as \"variable_name\" \u2014 counts the number of elements matching a description on the live page. The description tells the runtime what kind of elements to count. The variable name is a short identifier. Use this when the step says \"count the number of X\" or \"remember how many X there are\". The count is stored as a number in the variable for later comparison.\n- REMEMBER \"what to capture from the page\" as \"variable_name\" \u2014 captures a value from the page for later comparison. The description tells the runtime what to extract. The variable name is a short identifier.\n- COMPARE \"what to read now\" \"operator\" remembered \"variable_name\" \u2014 compares a current page value against a previously remembered value. Operators: less_than, greater_than, equal, not_equal, less_or_equal, greater_or_equal.\n- ASSERT_REMEMBERED \"variable_name\" \u2014 asserts that the text stored in a previously remembered variable is visible on the page. Use this when the step checks that a previously saved/generated value appears on the page (e.g. \"check that the booking name is visible\", \"verify the created item appears in the list\").\n- MAP_DETECT \u2014 detect and attach to an interactive map. Must appear once, before any map step.\n- assert contains_text \"text\"\n- assert not_contains_text \"text\"\n- assert url_contains \"text\"\n- assert element_visible \"text\"\n- assert element_not_visible \"text\"\n- assert element_disabled \"button text\"\n- assert element_enabled \"button text\"\n- assert element_in_viewport \"text\" \u2014 check that an element is within the visible viewport at the current scroll position.\n- assert element_not_in_viewport \"text\" \u2014 check that an element is NOT within the visible viewport.\n- assert link_exists \"href\"\n- assert field_exists \"label\"\n- assert numeric \"text\" \u2014 asserts that a count, number, or quantity on the page satisfies a numeric comparison. Use when the step compares a value against a specific number (e.g. \"greater than 0\", \"at least 5\", \"equals 10\"). The runtime extracts the operator and number from the text.\n- navigate \"url\" \u2014 ONLY for explicit URLs or paths starting with \"/\" or \"http\". Do NOT use for steps like \"go to the About page\" \u2014 those describe clicking a link and should be PAGE instead.\n- press \"key\"\n- scroll \"up|down|top|bottom\" \u2014 scroll the page in a direction, or to the top/bottom.\n- PAGE \"scroll to ...\" \u2014 scroll a specific element into view. Needs the live page to identify the element.\n\n\u2550\u2550\u2550 Splitting steps \u2550\u2550\u2550\n\nEach output line = ONE atomic interaction. If a step implies multiple interactions, split it.\n\nRules:\n- Any step that says \"check that\" or \"verify\" or similar language is ALWAYS an assertion.\n- Assertions with explicit quoted strings (e.g. check that the page contains \"Welcome\") can be resolved as literal assertions: assert contains_text \"Welcome\"\n- Assertions that compare a count/number/quantity against a specific number (e.g. \"check that the count of products is greater than 0\", \"verify there are at least 5 items\") \u2192 assert numeric with the full step text. The runtime extracts the comparison from the text.\n- Assertions about a button being disabled or enabled with a quoted button name \u2192 assert element_disabled / assert element_enabled with the button text.\n- Assertions that compare against a previously remembered value (e.g. \"check that the count decreased\", \"verify the price is less than before\") \u2192 COMPARE with a matching REMEMBER.\n- Assertions WITHOUT quoted strings and without numeric comparisons describe something conceptual (e.g. \"check that the page contains a Leads form\"). These CANNOT be pre-resolved. Output PAGE with the full step as description.\n- A pure assertion = a single output line. Do NOT split \"check that the drawer opens and contains 'Hello'\" \u2014 the assert covers it.\n \"Verify that the drawer opens and contains the text \\\"Hello\\\"\" \u2192 assert contains_text \"Hello\"\n- BUT when a step combines an assertion AND an interaction (e.g. \"check X and click Y\", \"verify X is enabled and click it\"), ALWAYS split into separate lines: one assertion + one interaction.\n \"check that there is a dialog and click 'Yes'\" \u2192 two lines:\n PAGE \"check that there is a dialog\"\n PAGE \"click 'Yes'\"\n \"check that the 'Cancel' button is enabled and click it\" \u2192 two lines:\n assert element_enabled \"Cancel\"\n PAGE \"click 'Cancel'\"\n- For assertions that CAN be resolved, preserve the FULL expected text exactly as written. Never truncate or shorten it.\n- Steps that require seeing the page to identify interactive elements \u2192 PAGE with a description.\n- References to earlier steps: When a step uses pronouns like \"that form\", resolve them using context from earlier steps.\n- IMPORTANT: Each output line must describe exactly ONE atomic interaction. If an input step describes or implies multiple interactions \u2014 whether separated by dashes, commas, slashes, \"then\", \"and\", or simply listing several values \u2014 split it into one PAGE line per interaction. Always err on the side of splitting.\n- When a step lists multiple values separated by dashes (e.g. \"Select A - B - C in the form\"), these are sequential CLICKS on buttons or tabs \u2014 NOT dropdown selections. Split into separate click steps. Use \"click\" in the description, not \"select\".\n- When splitting, PRESERVE the full original context in each sub-step description. The runtime LLM will see each sub-step independently without knowledge of the others, so each description must be self-contained and unambiguous.\n For example:\n Input: \"Select Category - Subcategory - Option in the filter form\" \u2192 three lines:\n PAGE \"click 'Category' in the filter form (first selection in the sequence Category - Subcategory - Option)\"\n PAGE \"click 'Subcategory' in the filter form (second selection after Category was selected)\"\n PAGE \"click 'Option' in the filter form (third selection after Category and Subcategory were selected)\"\n- EXCEPTION: Selecting a SINGLE value from a dropdown is ALWAYS a single PAGE step. Do NOT split \"select X in Y\" into \"open Y\" + \"select X\" \u2014 the runtime handles opening and selecting atomically.\n- EXCEPTION: If a step describes filling in an entire form without listing specific fields, use a single EXPAND line.\n- DATE/TIME PICKERS: Any step that sets, enters, or selects a date or time value \u2192 DATEPICK. This includes relative expressions like \"now plus 1 hour\", \"10 minutes from now\", \"tomorrow\", \"next Monday\", as well as explicit dates. Examples:\n \"set the start time to 10 minutes from now\" \u2192 DATEPICK \"set the start time to 10 minutes from now\"\n \"set the end date to tomorrow\" \u2192 DATEPICK \"set the end date to tomorrow\"\n \"enter 2026-06-15 in the date field\" \u2192 DATEPICK \"enter 2026-06-15 in the date field\"\n- COUNT: When a step says to count elements (e.g. \"count the number of product cards\", \"remember how many rows there are\") \u2192 COUNT. The stored count can be compared later with COMPARE just like REMEMBER.\n- COUNT + COMPARE: When a step checks that the number/count of visible elements equals (or is less than, etc.) a previously remembered value, split into COUNT + COMPARE. The COUNT stores the element count in a new variable, and the COMPARE compares it to the remembered variable. Example:\n \"check that the number of product cards shown on the page is equal to 'product count'\" \u2192\n COUNT \"product cards\" as \"visible_product_cards\"\n COMPARE \"visible_product_cards\" \"equal\" remembered \"product_count\"\n- REMEMBER/COMPARE: When a step says to save/note/remember a value \u2192 REMEMBER. When a later step compares against it \u2192 COMPARE. Any \"before vs after\" language requires a REMEMBER (or COUNT) before the action and a COMPARE after.\n- MAP DETECTION: If ANY step mentions a map, markers, layers, zoom, pan, coordinates, or geographic features, emit MAP_DETECT before the first such step. Only emit it once.\n- MAP ASSERTIONS: Any assertion about map content must be PAGE (map is WebGL canvas, content not in DOM).\n- CONDITIONAL STEPS: When a step contains \"if\" + a condition + an action (or uses a suffix like \"click X if visible\"), emit a conditional line. The format is:\n IF_VISIBLE \"element text or description\" THEN <action> [ELSE <action>]\n IF_CONTAINS \"text\" THEN <action> [ELSE <action>]\n IF_URL \"path or text\" THEN <action> [ELSE <action>]\n The THEN and ELSE parts use the same action syntax as regular steps (PAGE, assert, navigate, etc.).\n The ELSE part is optional \u2014 if omitted and the condition is false, the step is skipped.\n When a conditional step implies multiple actions under the same condition, emit multiple IF_ lines with the EXACT SAME condition text. Do NOT change the condition target between lines \u2014 the runtime evaluates each one independently.\n The condition target should use the exact text visible on the page when possible (button labels, link text, field placeholders). When the step describes a UI element generically (e.g. \"a password field\"), use the specific text that would appear on the page.\n Examples:\n \"if 'Accept cookies' is visible, click it\" \u2192 IF_VISIBLE \"Accept cookies\" THEN PAGE \"click 'Accept cookies'\"\n \"if the page shows 'Out of stock' then click 'Notify me' else click 'Add to cart'\" \u2192 IF_CONTAINS \"Out of stock\" THEN PAGE \"click 'Notify me'\" ELSE PAGE \"click 'Add to cart'\"\n \"click 'Dismiss' if visible\" \u2192 IF_VISIBLE \"Dismiss\" THEN PAGE \"click 'Dismiss'\"\n \"if url contains '/login' then check that page contains 'Sign in'\" \u2192 IF_URL \"/login\" THEN assert contains_text \"Sign in\"\n \"if there is a password field, fill it with 'secret' and press unlock\" \u2192\n IF_VISIBLE \"password\" THEN PAGE \"type 'secret' into the password field\"\n IF_VISIBLE \"password\" THEN PAGE \"click the unlock button\"\n- No blank lines, no numbering, no explanation. Only action lines.\n\nExamples:\n \"check that the count of products shown is greater than 0\" \u2192 assert numeric \"check that the count of products shown is greater than 0\"\n \"verify there are at least 5 results\" \u2192 assert numeric \"verify there are at least 5 results\"\n \"check that the page contains \\\"Welcome\\\"\" \u2192 assert contains_text \"Welcome\"\n \"Verify the drawer opens and contains \\\"Hello\\\"\" \u2192 assert contains_text \"Hello\"\n \"verify that the \\\"Submit\\\" button is disabled\" \u2192 assert element_disabled \"Submit\"\n \"verify that the \\\"Submit\\\" button is enabled\" \u2192 assert element_enabled \"Submit\"\n \"check that the \\\"Contact Form\\\" is visible in the viewport\" \u2192 assert element_in_viewport \"Contact Form\"\n \"check that the hero banner is not visible after scrolling\" \u2192 assert element_not_in_viewport \"Hero Banner\"\n \"scroll to the footer and check that \\\"Contact\\\" is in view\" \u2192\n PAGE \"scroll to the footer\"\n assert element_in_viewport \"Contact\"\n \"count the number of product cards\" \u2192 COUNT \"product cards\" as \"product_card_count\"\n \"remember how many rows are in the table\" \u2192 COUNT \"table rows\" as \"row_count\"\n \"check that the number of product cards equals 'product count'\" \u2192\n COUNT \"product cards\" as \"visible_cards\"\n COMPARE \"visible_cards\" \"equal\" remembered \"product_count\"\n \"remember the total price\" \u2192 REMEMBER \"the total price shown\" as \"total_price\"\n \"check that the price decreased\" \u2192 COMPARE \"the total price shown\" \"less_than\" remembered \"total_price\"\n \"remember the name of the booking\" \u2192 REMEMBER \"the booking name\" as \"booking_name\"\n \"check that the booking we just created is visible\" \u2192 ASSERT_REMEMBERED \"booking_name\"\n";
|
|
41
41
|
export declare const EXPAND_SYSTEM_PROMPT = "You are expanding a high-level test step into concrete atomic actions based on the actual form fields visible on the page.\n\nYou receive:\n1. The original step instruction (which may specify some values explicitly).\n2. The accessibility tree of the current page (with element refs).\n3. A detailed list of form fields with label, placeholder, input type, required status, and options.\n\n\u2550\u2550\u2550 Action syntax \u2550\u2550\u2550\n\nOne line per interaction:\n- PAGE \"type <value> into the <field label> field\"\n- PAGE \"type <value> into the <field label> autocomplete field and select the first suggestion\"\n- PAGE \"type <value> into the <field label> autocomplete field and select <specific option>\"\n- PAGE \"select <option> in the <field label> dropdown\"\n- PAGE \"check the <label> checkbox\"\n- PAGE \"click the <button text> button\"\n- press \"Enter\"\n\n\u2550\u2550\u2550 Autocomplete fields \u2550\u2550\u2550\n\nFields marked [autocomplete] are typeahead/combobox fields.\n- ALWAYS use \"autocomplete field\" phrasing so the runtime handles the dropdown.\n- Default to first suggestion unless the step names a specific choice.\n- Type a short search term likely to produce results.\n\n\u2550\u2550\u2550 Test data \u2550\u2550\u2550\n\n- Explicit values in the step \u2192 use EXACTLY (match by field purpose, not label language).\n- Unspecified fields \u2192 generate realistic fake data based on label, placeholder, and input type.\n - Use input type (email, tel, url, number) to pick the right format.\n - For free-text/message fields \u2192 \"Test message\".\n- Select/dropdown \u2192 first non-empty option unless specified.\n- Checkboxes \u2192 check if needed (especially consent/terms checkboxes).\n- Required fields \u2192 always fill. Optional fields \u2192 fill too.\n- \"Submit\" in the step \u2192 include a click on the submit button as the last action.\n\n\u2550\u2550\u2550 Output format \u2550\u2550\u2550\n\nOne action per line. No blank lines, no numbering, no explanation.\n";
|
|
42
42
|
export declare const DATEPICK_SYSTEM_PROMPT = "You are filling in a date/time picker based on the actual widget visible on the page.\n\nYou receive:\n1. The original step instruction (e.g. \"set the start date to now plus 1 hour\").\n2. The current time (ISO 8601).\n3. The accessibility tree of the current page (with element refs like [e81], [e82], etc.).\n\n\u2550\u2550\u2550 Your task \u2550\u2550\u2550\n\n1. Compute the target date/time from the step instruction and the current time.\n2. Find the date/time picker elements in the accessibility tree.\n3. Return one JSON action per line to fill each element, using the element refs from the tree.\n\n\u2550\u2550\u2550 Response format \u2550\u2550\u2550\n\nRespond with one JSON object per line (no markdown, no explanation). Use the same format as The Pilot:\n\n{\"action\":\"type\",\"ref\":\"<ref>\",\"value\":\"<value>\"}\n{\"action\":\"click\",\"ref\":\"<ref>\"}\n{\"action\":\"select\",\"ref\":\"<ref>\",\"value\":\"<option>\"}\n\n\u2550\u2550\u2550 Picker types \u2550\u2550\u2550\n\n1. **Native HTML5 input** (type=\"date\", \"datetime-local\", \"time\"):\n - Single textbox element in the tree.\n - Return one type action: {\"action\":\"type\",\"ref\":\"e42\",\"value\":\"2026-03-18T21:30\"}\n - Formats: date \u2192 \"YYYY-MM-DD\", datetime-local \u2192 \"YYYY-MM-DDTHH:mm\", time \u2192 \"HH:mm\"\n\n2. **Sectioned picker** (MUI v7, etc.) \u2014 separate spinbutton elements:\n - The tree shows elements like: [e81] spinbutton \"Day\", [e82] spinbutton \"Month\", etc.\n - These are often inside a named group (e.g. group \"Start date and time\").\n - Return one type action per section using the EXACT ref from the tree:\n {\"action\":\"type\",\"ref\":\"e81\",\"value\":\"18\"}\n {\"action\":\"type\",\"ref\":\"e82\",\"value\":\"03\"}\n {\"action\":\"type\",\"ref\":\"e83\",\"value\":\"2026\"}\n {\"action\":\"type\",\"ref\":\"e84\",\"value\":\"21\"}\n {\"action\":\"type\",\"ref\":\"e85\",\"value\":\"30\"}\n - IMPORTANT: When there are multiple pickers (start/end), use the refs from the CORRECT group.\n - Use 2-digit values for month, day, hours, minutes. Use 4-digit values for year.\n - For 12-hour pickers with AM/PM (meridiem spinbutton): include a type action for it.\n\n3. **Calendar popup picker** (readonly input + calendar button):\n - Click the calendar button to open, then click the target day.\n\n\u2550\u2550\u2550 Relative time \u2550\u2550\u2550\n\n- \"now\", \"current time\" \u2192 use the provided current time\n- \"now plus 1 hour\", \"1 hour from now\" \u2192 add 1 hour to current time\n- \"10 minutes from now\" \u2192 add 10 minutes to current time\n- \"tomorrow\" \u2192 next day, same time\n- Round minutes to the nearest 5 if the picker appears to use 5-minute increments.\n\n\u2550\u2550\u2550 Output \u2550\u2550\u2550\n\nOne JSON action per line. No blank lines, no numbering, no explanation. ONLY JSON.\n";
|
|
43
43
|
//# sourceMappingURL=prompts.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/pilot/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAMH,mFAAmF;AACnF,eAAO,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/pilot/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAMH,mFAAmF;AACnF,eAAO,MAAM,aAAa,g5QAgIzB,CAAA;AAMD,eAAO,MAAM,kBAAkB,oobAyH9B,CAAA;AAMD,eAAO,MAAM,oBAAoB,g/DAuChC,CAAA;AAMD,eAAO,MAAM,sBAAsB,y1FAuDlC,CAAA"}
|
package/dist/pilot/prompts.js
CHANGED
|
@@ -89,7 +89,9 @@ Example:
|
|
|
89
89
|
"YYYY-MM-DD", "YYYY-MM-DDTHH:mm", "MM/DD/YYYY", "DD/MM/YYYY").
|
|
90
90
|
- select: Select a dropdown option. Requires "ref" or "text", and "value" (the option label).
|
|
91
91
|
- autocomplete: Type into an autocomplete field, wait for suggestions, click one. Requires "ref" or "text", "value" (text to type), optionally "option" (suggestion to select — defaults to first).
|
|
92
|
-
- scroll: Scroll the page
|
|
92
|
+
- scroll: Scroll the page or scroll a specific element into view.
|
|
93
|
+
Page scroll: requires "value" — one of "up", "down", "top", or "bottom".
|
|
94
|
+
Element scroll: requires "ref" or "text" to identify the element to scroll into view. No "value" needed.
|
|
93
95
|
- navigate: Go to a URL. Requires "value" (the URL or path).
|
|
94
96
|
- press: Press a key. Requires "value" (e.g. "Enter", "Tab", "Escape").
|
|
95
97
|
- wait: Wait for a condition. Requires "value" (description of what to wait for).
|
|
@@ -111,6 +113,7 @@ Assertion types:
|
|
|
111
113
|
- url_contains — check the current URL.
|
|
112
114
|
- element_visible / element_not_visible — check element visibility.
|
|
113
115
|
- element_disabled / element_enabled — check if a button is disabled or enabled.
|
|
116
|
+
- element_in_viewport / element_not_in_viewport — check if an element is within the visible viewport at the current scroll position. Use after scroll actions to verify an element was scrolled into (or out of) view.
|
|
114
117
|
- element_exists / link_exists / field_exists — check element presence.
|
|
115
118
|
- compare — numeric comparison. Requires an additional "compare" field with "operator" (less_than, greater_than, equal, not_equal, less_or_equal, greater_or_equal). Use "ref" to target the element containing the current value.
|
|
116
119
|
Two modes:
|
|
@@ -148,6 +151,8 @@ uncheck ref=e12
|
|
|
148
151
|
navigate value="/products"
|
|
149
152
|
press value="Enter"
|
|
150
153
|
scroll value="down"
|
|
154
|
+
scroll value="top"
|
|
155
|
+
scroll ref=e15
|
|
151
156
|
remember ref=e15 as="product_count"
|
|
152
157
|
count text="product card" as="product_cards"
|
|
153
158
|
count text="Add to Cart" as="cart_buttons"
|
|
@@ -156,6 +161,8 @@ assert element_visible "Submit"
|
|
|
156
161
|
assert element_not_visible "Error"
|
|
157
162
|
assert element_disabled "Submit"
|
|
158
163
|
assert element_enabled "Submit"
|
|
164
|
+
assert element_in_viewport "Contact Form"
|
|
165
|
+
assert element_not_in_viewport "Hero Banner"
|
|
159
166
|
assert url_contains "/products"
|
|
160
167
|
assert compare "product count" ref=e15 variable="product_count" operator="less_than"
|
|
161
168
|
assert compare "product count" ref=e15 variable="_" operator="greater_than" literal="0"
|
|
@@ -191,12 +198,15 @@ IMPORTANT: Prefix every output line with the input step number it came from, usi
|
|
|
191
198
|
- assert element_not_visible "text"
|
|
192
199
|
- assert element_disabled "button text"
|
|
193
200
|
- assert element_enabled "button text"
|
|
201
|
+
- assert element_in_viewport "text" — check that an element is within the visible viewport at the current scroll position.
|
|
202
|
+
- assert element_not_in_viewport "text" — check that an element is NOT within the visible viewport.
|
|
194
203
|
- assert link_exists "href"
|
|
195
204
|
- assert field_exists "label"
|
|
196
205
|
- assert numeric "text" — asserts that a count, number, or quantity on the page satisfies a numeric comparison. Use when the step compares a value against a specific number (e.g. "greater than 0", "at least 5", "equals 10"). The runtime extracts the operator and number from the text.
|
|
197
206
|
- navigate "url" — ONLY for explicit URLs or paths starting with "/" or "http". Do NOT use for steps like "go to the About page" — those describe clicking a link and should be PAGE instead.
|
|
198
207
|
- press "key"
|
|
199
|
-
- scroll "up|down"
|
|
208
|
+
- scroll "up|down|top|bottom" — scroll the page in a direction, or to the top/bottom.
|
|
209
|
+
- PAGE "scroll to ..." — scroll a specific element into view. Needs the live page to identify the element.
|
|
200
210
|
|
|
201
211
|
═══ Splitting steps ═══
|
|
202
212
|
|
|
@@ -268,6 +278,11 @@ Examples:
|
|
|
268
278
|
"Verify the drawer opens and contains \\"Hello\\"" → assert contains_text "Hello"
|
|
269
279
|
"verify that the \\"Submit\\" button is disabled" → assert element_disabled "Submit"
|
|
270
280
|
"verify that the \\"Submit\\" button is enabled" → assert element_enabled "Submit"
|
|
281
|
+
"check that the \\"Contact Form\\" is visible in the viewport" → assert element_in_viewport "Contact Form"
|
|
282
|
+
"check that the hero banner is not visible after scrolling" → assert element_not_in_viewport "Hero Banner"
|
|
283
|
+
"scroll to the footer and check that \\"Contact\\" is in view" →
|
|
284
|
+
PAGE "scroll to the footer"
|
|
285
|
+
assert element_in_viewport "Contact"
|
|
271
286
|
"count the number of product cards" → COUNT "product cards" as "product_card_count"
|
|
272
287
|
"remember how many rows are in the table" → COUNT "table rows" as "row_count"
|
|
273
288
|
"check that the number of product cards equals 'product count'" →
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/pilot/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,wEAAwE;AACxE,2CAA2C;AAC3C,wEAAwE;AAExE,mFAAmF;AACnF,MAAM,CAAC,MAAM,aAAa,GAAG
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/pilot/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,wEAAwE;AACxE,2CAA2C;AAC3C,wEAAwE;AAExE,mFAAmF;AACnF,MAAM,CAAC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgI5B,CAAA;AAED,wEAAwE;AACxE,yDAAyD;AACzD,wEAAwE;AAExE,MAAM,CAAC,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyHjC,CAAA;AAED,wEAAwE;AACxE,wEAAwE;AACxE,wEAAwE;AAExE,MAAM,CAAC,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuCnC,CAAA;AAED,wEAAwE;AACxE,6EAA6E;AAC7E,wEAAwE;AAExE,MAAM,CAAC,MAAM,sBAAsB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuDrC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan-runner.d.ts","sourceRoot":"","sources":["../../src/planner/plan-runner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAW,MAAM,YAAY,CAAA;AAC/C,OAAO,KAAK,EAAoB,UAAU,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACxF,OAAO,KAAK,EAAE,aAAa,EAAoC,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"plan-runner.d.ts","sourceRoot":"","sources":["../../src/planner/plan-runner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAW,MAAM,YAAY,CAAA;AAC/C,OAAO,KAAK,EAAoB,UAAU,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACxF,OAAO,KAAK,EAAE,aAAa,EAAoC,MAAM,iBAAiB,CAAA;AA0YtF;;;GAGG;AACH,wBAAsB,aAAa,CAClC,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,aAAa,EACnB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IACT,kBAAkB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACxC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAA;IAC7C,YAAY,CAAC,EAAE,MAAM,OAAO,sBAAsB,EAAE,YAAY,EAAE,CAAA;CAClE,GACC,OAAO,CAAC,cAAc,CAAC,CA6OzB"}
|
|
@@ -294,8 +294,17 @@ async function executeHeuristicStep(page, step, mapAdapter) {
|
|
|
294
294
|
await locator.scrollIntoViewIfNeeded();
|
|
295
295
|
}
|
|
296
296
|
else {
|
|
297
|
-
const
|
|
298
|
-
|
|
297
|
+
const dir = (step.value ?? "down").toLowerCase();
|
|
298
|
+
if (dir === "top") {
|
|
299
|
+
await page.evaluate(() => window.scrollTo({ top: 0, behavior: "instant" }));
|
|
300
|
+
}
|
|
301
|
+
else if (dir === "bottom") {
|
|
302
|
+
await page.evaluate(() => window.scrollTo({ top: document.body.scrollHeight, behavior: "instant" }));
|
|
303
|
+
}
|
|
304
|
+
else {
|
|
305
|
+
const delta = dir === "up" ? -500 : 500;
|
|
306
|
+
await page.mouse.wheel(0, delta);
|
|
307
|
+
}
|
|
299
308
|
}
|
|
300
309
|
break;
|
|
301
310
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan-runner.js","sourceRoot":"","sources":["../../src/planner/plan-runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plan-runner.js","sourceRoot":"","sources":["../../src/planner/plan-runner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAC5D,OAAO,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAA;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAIvC,mEAAmE;AACnE,SAAS,YAAY,CAAC,IAAU,EAAE,QAA2B,EAAE,QAAiB;IAC/E,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;IAClC,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnB,oEAAoE;QACpE,uEAAuE;QACvE,qEAAqE;QACrE,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC/C,IAAI,QAAQ,EAAE,CAAC;gBACd,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;YAChC,CAAC;YACD,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACrC,CAAC;QACD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAgB,CAAA;QACtC,IAAI,OAAO,GAAG,QAAQ,CAAC,IAAI;YAC1B,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC/C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QACvB,0EAA0E;QAC1E,IAAI,QAAQ,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;YAC1B,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;QACpC,CAAC;QACD,OAAO,OAAO,CAAA;IACf,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;AAC/D,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,oBAAoB,CAClC,IAAU,EACV,IAAmB,EACnB,UAA8B;IAE9B,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;IAE/B,2DAA2D;IAC3D,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC;WACjD,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,gGAAgG,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;eACvI,IAAI,CAAC,YAAY,CAAC,CAAA;IAEtB,IAAI,CAAC;QACJ,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;YACrB,KAAK,OAAO,CAAC,CAAC,CAAC;gBACd,IAAI,CAAC,IAAI,CAAC,QAAQ;oBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;gBACrE,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;gBAC3D,MAAM,yBAAyB,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;gBAC5D,MAAK;YACN,CAAC;YAED,KAAK,MAAM,CAAC,CAAC,CAAC;gBACb,IAAI,CAAC,IAAI,CAAC,KAAK;oBAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;gBAC9D,IAAI,CAAC,IAAI,CAAC,QAAQ;oBAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;gBACpE,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;gBAC3D,+DAA+D;gBAC/D,MAAM,SAAS,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBACjD,MAAM,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBAC7B,MAAK;YACN,CAAC;YAED,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACf,IAAI,CAAC,IAAI,CAAC,KAAK;oBAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;gBAChE,IAAI,CAAC,IAAI,CAAC,QAAQ;oBAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;gBACtE,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;gBAC3D,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA;gBACtE,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;oBACtB,MAAM,OAAO,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;gBAClD,CAAC;qBAAM,CAAC;oBACP,uDAAuD;oBACvD,MAAM,OAAO,CAAC,KAAK,EAAE,CAAA;oBACrB,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAA;oBAC9B,IAAI,OAAO,GAAG,KAAK,CAAA;oBACnB,0CAA0C;oBAC1C,MAAM,cAAc,GAAG;wBACtB,eAAe,EAAE,kBAAkB;wBACnC,uBAAuB;wBACvB,wCAAwC;qBACxC,CAAA;oBACD,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;wBAClC,IAAI,OAAO;4BAAE,MAAK;wBAClB,IAAI,CAAC;4BACJ,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;4BACpC,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,CAAA;4BACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;gCAC5C,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;gCACnC,IAAI,CAAC,MAAM,SAAS,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC;oCAAE,SAAQ;gCAC7D,MAAM,GAAG,GAAG,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;gCAC5D,IAAI,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;oCACtD,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAA;oCACzB,OAAO,GAAG,IAAI,CAAA;gCACf,CAAC;4BACF,CAAC;wBACF,CAAC;wBAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;oBAC3B,CAAC;oBACD,iCAAiC;oBACjC,IAAI,CAAC,OAAO,EAAE,CAAC;wBACd,MAAM,KAAK,GAAG,CAAC,UAAU,EAAE,eAAe,EAAE,QAAQ,CAAU,CAAA;wBAC9D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;4BAC1B,IAAI,CAAC;gCACJ,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;gCACtD,IAAI,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;oCACtD,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAA;oCACzB,OAAO,GAAG,IAAI,CAAA;oCACd,MAAK;gCACN,CAAC;4BACF,CAAC;4BAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;wBAC3B,CAAC;oBACF,CAAC;oBACD,IAAI,CAAC,OAAO,EAAE,CAAC;wBACd,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,CAAC,KAAK,sBAAsB,CAAC,CAAA;oBAC5E,CAAC;gBACF,CAAC;gBACD,MAAK;YACN,CAAC;YAED,KAAK,cAAc,CAAC,CAAC,CAAC;gBACrB,IAAI,CAAC,IAAI,CAAC,KAAK;oBAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;gBACtE,IAAI,CAAC,IAAI,CAAC,QAAQ;oBAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;gBAC5E,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;gBAC3D,MAAM,OAAO,CAAC,KAAK,EAAE,CAAA;gBACrB,MAAM,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gBACtB,MAAM,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAA;gBAE1D,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;oBACnB,OAAO,CAAC,GAAG,CAAC,sCAAsC,IAAI,CAAC,KAAK,+BAA+B,CAAC,CAAA;gBAC7F,CAAC;gBAED,iCAAiC;gBACjC,MAAM,kBAAkB,GAAG;oBAC1B,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;oBAC/B,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC;oBACpC,IAAI,CAAC,OAAO,CAAC,iEAAiE,CAAC;iBAC/E,CAAA;gBAED,IAAI,WAAgC,CAAA;gBACpC,KAAK,MAAM,GAAG,IAAI,kBAAkB,EAAE,CAAC;oBACtC,IAAI,CAAC;wBACJ,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;wBAC9D,WAAW,GAAG,GAAG,CAAA;wBACjB,MAAK;oBACN,CAAC;oBAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;gBAC3B,CAAC;gBAED,IAAI,CAAC,WAAW,EAAE,CAAC;oBAClB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAA;gBAC3D,CAAC;gBAED,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;oBACjB,MAAM,UAAU,GAAG;wBAClB,WAAW,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE;wBACpD,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;wBAC/C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;wBAC5C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;qBAC3B,CAAA;oBACD,IAAI,OAAO,GAAG,KAAK,CAAA;oBACnB,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;wBAC9B,IAAI,CAAC;4BACJ,IAAI,MAAM,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC;gCAC3B,MAAM,GAAG,CAAC,KAAK,EAAE,CAAA;gCACjB,OAAO,GAAG,IAAI,CAAA;gCACd,MAAK;4BACN,CAAC;wBACF,CAAC;wBAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;oBAC3B,CAAC;oBACD,IAAI,CAAC,OAAO,EAAE,CAAC;wBACd,MAAM,IAAI,KAAK,CAAC,wBAAwB,IAAI,CAAC,MAAM,aAAa,CAAC,CAAA;oBAClE,CAAC;gBACF,CAAC;qBAAM,CAAC;oBACP,MAAM,WAAW,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAA;gBAClC,CAAC;gBACD,MAAK;YACN,CAAC;YAED,KAAK,OAAO,CAAC,CAAC,CAAC;gBACd,IAAI,CAAC,IAAI,CAAC,QAAQ;oBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;gBACrE,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;gBAC3D,MAAM,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;gBACxC,MAAK;YACN,CAAC;YAED,KAAK,SAAS,CAAC,CAAC,CAAC;gBAChB,IAAI,CAAC,IAAI,CAAC,QAAQ;oBAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;gBACvE,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;gBAC3D,MAAM,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;gBACzC,MAAK;YACN,CAAC;YAED,KAAK,OAAO,CAAC,CAAC,CAAC;gBACd,uDAAuD;gBACvD,qEAAqE;gBACrE,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,CAAA;gBAClD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,IAAI,OAAO,CAAA;gBAE1C,IAAI,SAAS,GAAG,CAAC,CAAA;gBACjB,IAAI,eAAe,GAAG,EAAE,CAAA;gBAExB,oDAAoD;gBACpD,MAAM,cAAc,GAA4C;oBAC/D,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,MAA0C;oBACxE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK;iBAClC,CAAA;gBACD,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;oBACnC,IAAI,CAAC;wBACJ,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA;wBAC9H,IAAI,KAAK,GAAG,SAAS,EAAE,CAAC;4BACvB,SAAS,GAAG,KAAK,CAAA;4BACjB,eAAe,GAAG,cAAc,IAAI,IAAI,CAAA;wBACzC,CAAC;oBACF,CAAC;oBAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;gBAC3B,CAAC;gBAED,+DAA+D;gBAC/D,IAAI,CAAC;oBACJ,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA;oBAC5E,IAAI,UAAU,GAAG,SAAS,EAAE,CAAC;wBAC5B,SAAS,GAAG,UAAU,CAAA;wBACtB,eAAe,GAAG,cAAc,UAAU,WAAW,CAAA;oBACtD,CAAC;gBACF,CAAC;gBAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;gBAEtB,kEAAkE;gBAClE,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;oBACrB,IAAI,CAAC;wBACJ,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAA;wBAC1D,IAAI,SAAS,GAAG,SAAS,EAAE,CAAC;4BAC3B,SAAS,GAAG,SAAS,CAAA;4BACrB,eAAe,GAAG,cAAc,UAAU,IAAI,CAAA;wBAC/C,CAAC;oBACF,CAAC;oBAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;gBACvB,CAAC;gBAED,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;oBACnB,OAAO,CAAC,GAAG,CAAC,8BAA8B,MAAM,CAAC,SAAS,CAAC,uBAAuB,UAAU,SAAS,eAAe,EAAE,CAAC,CAAA;gBACxH,CAAC;gBAED,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAA;gBAClD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,CAAA;YAC9D,CAAC;YAED,KAAK,UAAU,CAAC,CAAC,CAAC;gBACjB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,CAAA;gBACnD,MAAM,WAAW,GAAG,4DAA4D,CAAC,IAAI,CACpF,OAAO,CAAC,WAAW,EAAE,CACrB,CAAA;gBACD,IAAI,YAAY,GAAG,EAAE,CAAA;gBACrB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACnB,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;oBAC3D,0EAA0E;oBAC1E,YAAY,GAAG,CAAC,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,MAAM,OAAO,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;oBACzG,8DAA8D;oBAC9D,0DAA0D;oBAC1D,8DAA8D;oBAC9D,8BAA8B;oBAC9B,IAAI,WAAW,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;wBAC7C,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;4BACnB,OAAO,CAAC,GAAG,CAAC,4BAA4B,YAAY,iDAAiD,CAAC,CAAA;wBACvG,CAAC;wBACD,YAAY,GAAG,EAAE,CAAA;oBAClB,CAAC;gBACF,CAAC;gBACD,IAAI,CAAC,YAAY,EAAE,CAAC;oBACnB,qDAAqD;oBACrD,0DAA0D;oBAC1D,wDAAwD;oBACxD,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;oBAClE,IAAI,CAAC;wBACJ,YAAY,GAAG,MAAM,kBAAkB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;oBAC1D,CAAC;oBAAC,MAAM,CAAC;wBACR,MAAM,IAAI,KAAK,CACd,wEAAwE,CACxE,CAAA;oBACF,CAAC;gBACF,CAAC;gBACD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;oBACnB,OAAO,CAAC,GAAG,CAAC,qCAAqC,YAAY,SAAS,OAAO,GAAG,CAAC,CAAA;gBAClF,CAAC;gBACD,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;gBAC7C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,CAAA;YAC9D,CAAC;YAED,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACf,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACnB,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;oBAC3D,MAAM,OAAO,CAAC,sBAAsB,EAAE,CAAA;gBACvC,CAAC;qBAAM,CAAC;oBACP,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,CAAA;oBAChD,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;wBACnB,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;oBAC5E,CAAC;yBAAM,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;wBAC7B,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;oBACrG,CAAC;yBAAM,CAAC;wBACP,MAAM,KAAK,GAAG,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;wBACvC,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;oBACjC,CAAC;gBACF,CAAC;gBACD,MAAK;YACN,CAAC;YAED,KAAK,YAAY,CAAC,CAAC,CAAC;gBACnB,0DAA0D;gBAC1D,+DAA+D;gBAC/D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,CAAA;YAC9D,CAAC;YAED,OAAO,CAAC,CAAC,CAAC;gBACT,+DAA+D;gBAC/D,MAAM,MAAM,GAAW;oBACtB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,SAAS,EAAE,IAAI,CAAC,SAAS;iBACzB,CAAA;gBACD,+DAA+D;gBAC/D,qEAAqE;gBACrE,gEAAgE;gBAChE,6DAA6D;gBAC7D,yDAAyD;gBACzD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBAClB,MAAM,CAAC,OAAO,GAAG;wBAChB,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;wBAC/B,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAuE;wBAC9F,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBAChF,CAAA;oBACD,MAAM,CAAC,SAAS,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,CAAA;gBACpE,CAAC;gBACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACnB,qEAAqE;oBACrE,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;wBACxB,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAA;oBACjC,CAAC;yBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;wBAC9B,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAA;oBAChC,CAAC;gBACF,CAAC;gBACD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;oBACrB,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;gBACpC,CAAC;gBACD,4CAA4C;gBAC5C,MAAM,UAAU,GAA0D,UAAU;oBACnF,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE;oBAC3C,CAAC,CAAC,SAAS,CAAA;gBACZ,IAAI,UAAU,IAAI,UAAU,EAAE,CAAC;oBAC9B,IAAI,CAAC;wBACJ,UAAU,CAAC,KAAK,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;oBAC3D,CAAC;oBAAC,MAAM,CAAC,CAAC,0CAA0C,CAAC,CAAC;gBACvD,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,CAAA;gBAC3E,OAAO;oBACN,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,QAAQ,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK;oBACnC,KAAK,EAAE,MAAM,CAAC,KAAK;iBACnB,CAAA;YACF,CAAC;QACF,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,CAAA;IAC9D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,OAAO;YACN,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK;YACnC,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;SACvD,CAAA;IACF,CAAC;AACF,CAAC;AAED,kEAAkE;AAClE,SAAS,YAAY,CAAC,WAAmB,EAAE,SAAiB;IAC3D,IAAI,CAAC;QACJ,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAA;QAClD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAA;QAC9C,OAAO,YAAY,KAAK,UAAU,CAAA;IACnC,CAAC;IAAC,MAAM,CAAC;QACR,2CAA2C;QAC3C,OAAO,WAAW,KAAK,SAAS,CAAA;IACjC,CAAC;AACF,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAClC,IAAU,EACV,IAAmB,EACnB,QAAgB,EAChB,OAIC;IAED,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;IACnC,MAAM,WAAW,GAAiB,EAAE,CAAA;IACpC,MAAM,UAAU,GAAG,CAAC,MAAkB,EAAE,EAAE;QACzC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACxB,OAAO,EAAE,cAAc,EAAE,CAAC,MAAM,CAAC,CAAA;IAClC,CAAC,CAAA;IACD,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,IAAI,UAAU,GAAsB,IAAI,CAAA;IACxC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;IAE1B,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAA;IAC7B,IAAI,UAAU,GAAG,CAAC,CAAA;IAElB,OAAO,UAAU,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,CAAA;QAC9B,UAAU,EAAE,CAAA;QACZ,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;QAEnC,sDAAsD;QACtD,IAAI,OAAO,EAAE,kBAAkB,EAAE,CAAC;YACjC,MAAM,OAAO,CAAC,kBAAkB,EAAE,CAAA;QACnC,CAAC;QAED,yEAAyE;QACzE,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACrD,MAAM,SAAS,GAAG;gBACjB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAsC;gBAC3D,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM;aAC7B,CAAA;YACD,MAAM,YAAY,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;YAC7D,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;YAEjF,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBACnB,OAAO,CAAC,GAAG,CAAC,4BAA4B,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,MAAM,MAAM,MAAM,CAAC,YAAY,CAAC,MAAM,WAAW,EAAE,CAAC,CAAA;YAC1H,CAAC;YAED,wDAAwD;YACxD,IAAI,IAAI,CAAC,eAAe,IAAI,WAAW,KAAK,IAAI,CAAC,eAAe,EAAE,CAAC;gBAClE,OAAO,GAAG,IAAI,CAAA;gBACd,UAAU,CAAC;oBACV,IAAI,EAAE,IAAI,CAAC,YAAY;oBACvB,MAAM,EAAE,IAAI;oBACZ,MAAM,EAAE,QAAQ;oBAChB,QAAQ,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS;oBACvC,KAAK,EAAE,0BAA0B,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,MAAM,UAAU,WAAW,+BAA+B,IAAI,CAAC,eAAe,EAAE;oBAC7I,eAAe,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,WAA0C,EAAE;iBAC1F,CAAC,CAAA;gBACF,MAAK;YACN,CAAC;YAED,UAAU,CAAC;gBACV,IAAI,EAAE,IAAI,CAAC,YAAY;gBACvB,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,QAAQ;gBAChB,QAAQ,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS;gBACvC,eAAe,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,WAA0C,EAAE;aAC1F,CAAC,CAAA;YACF,SAAQ;QACT,CAAC;QAED,wEAAwE;QACxE,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC9C,IAAI,CAAC;gBACJ,MAAM,YAAY,GAAG,OAAO,EAAE,YAAY,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA;gBACxD,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,YAAY,EAAE;oBACxD,UAAU,EAAE,UAAU,IAAI,SAAS;iBACnC,CAAC,CAAA;gBACF,MAAM,aAAa,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;gBAE9E,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;oBACnB,OAAO,CAAC,GAAG,CAAC,qCAAqC,IAAI,CAAC,KAAK,UAAU,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;gBAC7G,CAAC;gBAED,iCAAiC;gBACjC,KAAK,MAAM,EAAE,IAAI,aAAa,EAAE,CAAC;oBAChC,IAAI,CAAC,EAAE,CAAC,MAAM;wBAAE,SAAQ;oBACxB,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,YAAY,EAAE;wBAC3D,UAAU,EAAE,UAAU,IAAI,SAAS;qBACnC,CAAC,CAAA;oBACF,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAA;oBACzE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;wBACxB,OAAO,GAAG,IAAI,CAAA;wBACd,UAAU,CAAC;4BACV,IAAI,EAAE,EAAE,CAAC,IAAI;4BACb,MAAM,EAAE,EAAE,CAAC,MAAM;4BACjB,MAAM,EAAE,QAAQ;4BAChB,QAAQ,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS;4BACvC,KAAK,EAAE,eAAe,SAAS,CAAC,KAAK,IAAI,0BAA0B,EAAE;yBACrE,CAAC,CAAA;wBACF,MAAK;oBACN,CAAC;oBACD,MAAM,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAA;oBAC/C,IAAI,OAAO,EAAE,kBAAkB;wBAAE,MAAM,OAAO,CAAC,kBAAkB,EAAE,CAAA;gBACpE,CAAC;gBACD,IAAI,OAAO;oBAAE,MAAK;gBAElB,UAAU,CAAC;oBACV,IAAI,EAAE,IAAI,CAAC,YAAY;oBACvB,MAAM,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;oBACjD,MAAM,EAAE,QAAQ;oBAChB,QAAQ,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS;iBACvC,CAAC,CAAA;gBACF,SAAQ;YACT,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,OAAO,GAAG,IAAI,CAAA;gBACd,UAAU,CAAC;oBACV,IAAI,EAAE,IAAI,CAAC,YAAY;oBACvB,MAAM,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;oBACjD,MAAM,EAAE,QAAQ;oBAChB,QAAQ,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS;oBACvC,KAAK,EAAE,oBAAoB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;iBAC7E,CAAC,CAAA;gBACF,MAAK;YACN,CAAC;QACF,CAAC;QAED,kEAAkE;QAClE,IAAI,IAAI,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;YAClC,IAAI,CAAC;gBACJ,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,CAAA;gBAClC,IAAI,CAAC,UAAU,EAAE,CAAC;oBACjB,OAAO,GAAG,IAAI,CAAA;oBACd,UAAU,CAAC;wBACV,IAAI,EAAE,IAAI,CAAC,YAAY;wBACvB,MAAM,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE;wBAChC,MAAM,EAAE,QAAQ;wBAChB,QAAQ,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS;wBACvC,KAAK,EAAE,4DAA4D;qBACnE,CAAC,CAAA;oBACF,MAAK;gBACN,CAAC;gBACD,UAAU,CAAC;oBACV,IAAI,EAAE,IAAI,CAAC,YAAY;oBACvB,MAAM,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE;oBAChC,MAAM,EAAE,QAAQ;oBAChB,QAAQ,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS;iBACvC,CAAC,CAAA;gBACF,SAAQ;YACT,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,OAAO,GAAG,IAAI,CAAA;gBACd,UAAU,CAAC;oBACV,IAAI,EAAE,IAAI,CAAC,YAAY;oBACvB,MAAM,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE;oBAChC,MAAM,EAAE,QAAQ;oBAChB,QAAQ,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS;oBACvC,KAAK,EAAE,eAAe,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;iBACxE,CAAC,CAAA;gBACF,MAAK;YACN,CAAC;QACF,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAA;QAEjE,wDAAwD;QACxD,oEAAoE;QACpE,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAChD,MAAM,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAA;YAC/C,IAAI,OAAO,EAAE,kBAAkB,EAAE,CAAC;gBACjC,MAAM,OAAO,CAAC,kBAAkB,EAAE,CAAA;YACnC,CAAC;QACF,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACrB,OAAO,GAAG,IAAI,CAAA;YACd,UAAU,CAAC;gBACV,IAAI,EAAE,IAAI,CAAC,YAAY;gBACvB,MAAM,EAAE;oBACP,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,SAAS,EAAE,IAAI,CAAC,SAAS;iBACzB;gBACD,MAAM,EAAE,QAAQ;gBAChB,QAAQ,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS;gBACvC,KAAK,EAAE,eAAe,MAAM,CAAC,KAAK,IAAI,eAAe,EAAE;aACvD,CAAC,CAAA;YACF,MAAK;QACN,CAAC;QAED,wCAAwC;QACxC,iEAAiE;QACjE,qEAAqE;QACrE,qEAAqE;QACrE,6BAA6B;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAA;QACzC,iEAAiE;QACjE,kEAAkE;QAClE,wDAAwD;QACxD,IAAI,CAAC,QAAQ,IAAI,YAAY,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;YACzE,IAAI,CAAC;gBACJ,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAA;gBACnE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,YAAY,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;YAC/D,CAAC;YAAC,MAAM,CAAC,CAAC,6DAA6D,CAAC,CAAC;QAC1E,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAC7B,IAAI,CAAC,QAAQ,IAAI,YAAY,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,CAAC;YACzE,OAAO,GAAG,IAAI,CAAA;YACd,UAAU,CAAC;gBACV,IAAI,EAAE,IAAI,CAAC,YAAY;gBACvB,MAAM,EAAE;oBACP,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,SAAS,EAAE,IAAI,CAAC,SAAS;iBACzB;gBACD,MAAM,EAAE,QAAQ;gBAChB,QAAQ,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS;gBACvC,KAAK,EAAE,kCAAkC,IAAI,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,QAAQ,cAAc,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,QAAQ,GAAG;aACpI,CAAC,CAAA;YACF,MAAK;QACN,CAAC;QAED,UAAU,CAAC;YACV,IAAI,EAAE,IAAI,CAAC,YAAY;YACvB,MAAM,EAAE;gBACP,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS,EAAE,IAAI,CAAC,SAAS;aACzB;YACD,MAAM,EAAE,QAAQ;YAChB,QAAQ,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS;SACvC,CAAC,CAAA;IACH,CAAC;IAED,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAA;IACjE,MAAM,MAAM,GACX,SAAS,IAAI,UAAU,IAAI,KAAK,CAAC,MAAM;QACtC,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,QAAQ,CAAA;IAEZ,OAAO;QACN,IAAI,EAAE,QAAQ;QACd,MAAM;QACN,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS;QACvC,IAAI,EAAE,QAAQ;QACd,OAAO;KACP,CAAA;AACF,CAAC"}
|