@jobshimo/browser-link 0.15.0 → 0.17.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.
@@ -9,6 +9,25 @@
9
9
  * structured shape keeps the "when to use" copy beside the tool that owns
10
10
  * it instead of drifting in a single monolithic string.
11
11
  */
12
+ /**
13
+ * Shared `settle_ms` / `settle_timeout_ms` schema properties for
14
+ * click / type / press. Identical wording and semantics across all three —
15
+ * defined once so the descriptions cannot drift between tools.
16
+ */
17
+ const SETTLE_SCHEMA_PROPERTIES = {
18
+ settle_ms: {
19
+ type: 'number',
20
+ minimum: 0,
21
+ maximum: 2000,
22
+ description: 'After dispatching the action, wait until the page goes quiet — no DOM mutations for this many consecutive ms — before returning. Folds the wait_for + snapshot round trip most flows need after an action into the action call itself. Default 150, hard ceiling 2000. Pass 0 to disable and return immediately (pre-v0.16.0 behavior). Blind spot to keep in mind: the observer installs right AFTER the action dispatches, so mutations that complete in that gap are invisible — mutation_count:0 with settled:true does NOT prove the action had no effect — and an async reaction that only starts after the quiet window is likewise missed. For a specific expected condition, browser.wait_for remains the right tool.',
23
+ },
24
+ settle_timeout_ms: {
25
+ type: 'number',
26
+ minimum: 0,
27
+ maximum: 10000,
28
+ description: 'Overall cap on the settle wait in ms, in case the page never goes fully quiet (polling animations, live tickers, spinners). Default 2000, hard ceiling 10000. Ignored when settle_ms is 0.',
29
+ },
30
+ };
12
31
  export const BROWSER_TOOL_DEFINITIONS = [
13
32
  {
14
33
  name: 'browser.list_tabs',
@@ -503,7 +522,7 @@ export const BROWSER_TOOL_DEFINITIONS = [
503
522
  },
504
523
  {
505
524
  name: 'browser.click',
506
- description: 'Click an element by CSS selector in the connected tab. The selector usually comes from browser.snapshot or browser.find. The lookup pierces open Shadow DOM roots and same-origin iframes (nested arbitrarily), so a selector for a web-component internal or an in-page iframe works without extra steps. Before dispatching the click, the element is hit-tested at its own click point (starting from its own shadow root / iframe document) — if a different element covers that point, the call returns ok:false with a description of the blocker instead of clicking the wrong thing blindly. Pass `force:true` to skip that guard.',
525
+ description: 'Click an element by CSS selector in the connected tab. The selector usually comes from browser.snapshot or browser.find. The lookup pierces open Shadow DOM roots and same-origin iframes (nested arbitrarily), so a selector for a web-component internal or an in-page iframe works without extra steps. Before dispatching the click, the element is hit-tested at its own click point (starting from its own shadow root / iframe document) — if a different element covers that point, the call returns ok:false with a description of the blocker instead of clicking the wrong thing blindly. Pass `force:true` to skip that guard. Optionally waits for the page to settle after the click — see `settle_ms`.',
507
526
  inputSchema: {
508
527
  type: 'object',
509
528
  properties: {
@@ -514,6 +533,7 @@ export const BROWSER_TOOL_DEFINITIONS = [
514
533
  default: false,
515
534
  description: 'Skip the occlusion guard and dispatch the click even if another element currently covers the click point. Escape hatch for cases where the "covering" element is intentional (e.g. a transparent hit-target layer) or the guard produces a false positive. Default false.',
516
535
  },
536
+ ...SETTLE_SCHEMA_PROPERTIES,
517
537
  },
518
538
  required: ['tab_id', 'selector'],
519
539
  additionalProperties: false,
@@ -528,12 +548,13 @@ export const BROWSER_TOOL_DEFINITIONS = [
528
548
  'Auto-claims the tab on first use in multi-agent mode.',
529
549
  'ok:false with an "Element covered by …" error means something else is on top of the target at click time (a modal backdrop, a loading overlay, a dropdown). Click or dismiss the covering element first, or re-snapshot — do not blindly retry with force:true.',
530
550
  'CLOSED shadow roots (attachShadow({mode:"closed"})) are unreachable — there is no CDP-level workaround. Cross-origin iframes are also unreachable (same-origin policy).',
551
+ 'The result carries a compact `settle` object (`{ settled, duration_ms, mutation_count, url_changed?, focus_moved?, reason? }`) unless `settle_ms:0`. `settled:false` means the page never went quiet within `settle_timeout_ms` — not necessarily an error, some pages never stop mutating (tickers, spinners). When the settle wait itself could not run to completion, `settled:false` comes with `reason`: "context-destroyed" (the action navigated the page, destroying the observer\'s execution context — the action still succeeded, and this is itself a strong navigation signal) or "settle-error" (any other settle-side failure). With settle on, a separate browser.wait_for right after a click is usually unnecessary.',
531
552
  ],
532
553
  },
533
554
  },
534
555
  {
535
556
  name: 'browser.type',
536
- description: 'Focus an input by CSS selector and type text into it. If clear=true, clears the current value first. The lookup pierces open Shadow DOM roots and same-origin iframes, same as browser.click.',
557
+ description: 'Focus an input by CSS selector and type text into it. If clear=true, clears the current value first. The lookup pierces open Shadow DOM roots and same-origin iframes, same as browser.click. Optionally waits for the page to settle after typing — see `settle_ms`.',
537
558
  inputSchema: {
538
559
  type: 'object',
539
560
  properties: {
@@ -541,6 +562,7 @@ export const BROWSER_TOOL_DEFINITIONS = [
541
562
  selector: { type: 'string' },
542
563
  text: { type: 'string' },
543
564
  clear: { type: 'boolean', default: false },
565
+ ...SETTLE_SCHEMA_PROPERTIES,
544
566
  },
545
567
  required: ['tab_id', 'selector', 'text'],
546
568
  additionalProperties: false,
@@ -553,9 +575,53 @@ export const BROWSER_TOOL_DEFINITIONS = [
553
575
  gotchas: [
554
576
  'Pass clear:true when you need to replace the current value instead of appending to it.',
555
577
  'CLOSED shadow roots and cross-origin iframes are unreachable, same as browser.click.',
578
+ 'For Enter/Tab/Escape/arrow keys after typing (submitting a form, confirming an autocomplete suggestion), use browser.press — dispatchEvent-based synthetic KeyboardEvent via browser.evaluate is NOT trusted input and many rich editors and autocompletes ignore it.',
579
+ 'The result carries a compact `settle` object (same shape as browser.click) unless `settle_ms:0`.',
556
580
  ],
557
581
  },
558
582
  },
583
+ {
584
+ name: 'browser.press',
585
+ description: 'Press a single key, optionally with modifiers, using a TRUSTED CDP `Input.dispatchKeyEvent` sequence (`isTrusted: true`) — not a synthetic `KeyboardEvent` dispatched via `browser.evaluate`, which many rich text editors, autocompletes, and non-DOM runtimes (Qt-WASM, WebGL — see browser.canvas_screenshot) silently ignore. `key` accepts a human name (`Enter`, `Escape`, `Tab`, `Backspace`, `Delete`, `ArrowUp`/`ArrowDown`/`ArrowLeft`/`ArrowRight`, `Home`, `End`, `PageUp`, `PageDown`, `Space`), case-insensitive, or a single printable character, case-sensitive (`"a"` vs `"A"`, `"@"`). `modifiers` combines with the key for shortcuts (`Ctrl+A` = `{ key: "a", modifiers: ["Control"] }`). Pass `selector` to focus an element first (same deep Shadow DOM / iframe search as click/type/find); omit it to send the key to whatever currently has focus. Optionally waits for the page to settle after the key press — see `settle_ms`.',
586
+ inputSchema: {
587
+ type: 'object',
588
+ properties: {
589
+ tab_id: { type: 'string' },
590
+ key: {
591
+ type: 'string',
592
+ description: 'Human key name ("Enter", "Escape", "Tab", "Backspace", "Delete", "ArrowUp"/"ArrowDown"/"ArrowLeft"/"ArrowRight", "Home", "End", "PageUp", "PageDown", "Space" — case-insensitive) or a single printable character (case-sensitive, e.g. "a", "A", "@").',
593
+ },
594
+ modifiers: {
595
+ type: 'array',
596
+ items: { type: 'string', enum: ['Alt', 'Control', 'Meta', 'Shift'] },
597
+ description: 'Modifier keys held during the press. Combine for shortcuts, e.g. ["Control"] + key:"a" for Ctrl+A, or ["Meta"] + key:"s" for Cmd+S on macOS.',
598
+ },
599
+ selector: {
600
+ type: 'string',
601
+ description: 'Optional. Focus this element (resolved via the same deep Shadow DOM / iframe search as browser.click) before dispatching the key. Omit to send the key to the currently focused element.',
602
+ },
603
+ ...SETTLE_SCHEMA_PROPERTIES,
604
+ },
605
+ required: ['tab_id', 'key'],
606
+ additionalProperties: false,
607
+ },
608
+ doc: {
609
+ purpose: 'Dispatch one trusted keyboard key press (optionally with modifiers) — Enter/Escape/Tab/arrows/shortcuts/a single character.',
610
+ when_to_use: [
611
+ 'Submitting a form or confirming an autocomplete suggestion with Enter, dismissing a dialog with Escape, moving focus with Tab, navigating a list/menu with arrow keys.',
612
+ 'A keyboard shortcut the page listens for (Ctrl+A select-all, Cmd+S save, Ctrl+Z undo) — pass modifiers plus the base key.',
613
+ 'A rich text editor, autocomplete widget, or non-DOM runtime (Qt-WASM, WebGL) that discards synthetic input dispatched via browser.evaluate and needs a REAL, isTrusted:true keystroke.',
614
+ ],
615
+ gotchas: [
616
+ 'For typing normal text into an input, use browser.type instead — it goes through the native value setter and is far cheaper per character than one browser.press call per keystroke.',
617
+ 'For anything not covered by the named keys or a single character, browser.evaluate is the escape hatch — but note it produces isTrusted:false events, which some pages ignore.',
618
+ 'Named keys are case-insensitive ("arrowup" works); single printable characters are case-SENSITIVE. Shift IS auto-added for characters that require it on a US layout — uppercase letters, shifted punctuation like "@" or "{" — so to type an uppercase letter just pass key:"A". Do NOT pass key:"a" with modifiers:["Shift"] expecting an "A": that inserts a lowercase "a" with shiftKey reported as held, a combination no physical keyboard produces.',
619
+ 'CLOSED shadow roots and cross-origin iframes are unreachable for the optional `selector`, same as browser.click.',
620
+ 'The result carries a compact `settle` object (same shape as browser.click) unless `settle_ms:0`.',
621
+ ],
622
+ example: 'browser.press({ tab_id: "tab_1", key: "Enter" })',
623
+ },
624
+ },
559
625
  {
560
626
  name: 'browser.drag',
561
627
  description: 'Drag an element from a source to a destination. Provide each end as either a CSS selector OR a viewport coordinate pair (x,y). The drag is interpolated over duration_ms (default 1500) so you can watch the cursor traverse the path — this also helps activation-by-distance constraints in pointer-based libraries. Auto-detects HTML5 native drag (element.draggable, <img>, <a href>) vs pointer-based drag (dnd-kit and similar). For HTML5 it uses Input.setInterceptDrags + Input.dragIntercepted + Input.dispatchDragEvent. For pointer-based it interpolates Input.dispatchMouseEvent only. setInterceptDrags is always cleared in finally. Both source and destination must be visible in the viewport simultaneously — drag does NOT scroll between them. Returns { from, to, duration_ms_actual, drag_mode: "html5"|"pointer", events_fired }.',
@@ -609,6 +675,161 @@ export const BROWSER_TOOL_DEFINITIONS = [
609
675
  example: 'browser.drag({ tab_id: "tab_1", from_selector: "[data-testid=card-1]", to_selector: "[data-testid=column-done]" })',
610
676
  },
611
677
  },
678
+ {
679
+ name: 'browser.flow',
680
+ description: 'Run a declarative sequence of steps (find/click/type/press/wait_for) in ONE round trip instead of one MCP call per step. Steps execute strictly in order and STOP at the first failure (fail-fast) — there is no branching. A `find` step\'s resolved selector becomes the IMPLICIT TARGET for the very next click/type/press step that omits its own `selector` (an explicit `selector` on that step always overrides it and leaves the implicit target untouched for a later step). `type` and `press` steps that end up with no selector at all — no explicit one, no implicit one — act on whatever currently has focus, same as standalone browser.press; only `click` requires a resolved target and fails the flow if none is available. `click`/`type`/`press` default `settle_ms` to 150 exactly like the standalone tools, unless a step overrides it. Example (GIF picker): `{ find: { text: "GIF", role: "button" } }, { click: {} }, { wait_for: { selector: "[data-testid=gif-search]", condition: "visible" } }, { type: { selector: "[data-testid=gif-search]", text: "shrek" } }, { press: { key: "Enter" } }` — 5 steps, 1 round trip. On success returns `{ ok: true, steps_completed, results }` where each entry is `{selector}` for a find step or `{ok, settle?}` for an action/wait_for step. On failure returns `{ ok: false, failed_step, step_kind, error, steps_completed, recovery_snapshot }` — `error` is the same message the standalone tool would have returned for that failure, and `recovery_snapshot` is a focused `browser.snapshot({only_interactive:true, max_interactive:40})` of the page as it stands, so you see where the flow stopped without a follow-up call. `evaluate` and `navigate` are intentionally NOT flow steps in v1 — arbitrary JS inside a flow raises permission-model questions this tool does not solve yet, and a navigation mid-flow can tear down the very document later steps expect to act on; use standalone browser.navigate before a flow, or browser.evaluate after one.',
681
+ inputSchema: {
682
+ type: 'object',
683
+ properties: {
684
+ tab_id: { type: 'string' },
685
+ steps: {
686
+ type: 'array',
687
+ minItems: 1,
688
+ maxItems: 20,
689
+ description: 'Ordered list of steps, each exactly one of find | click | type | press | wait_for. Max 20 steps per flow.',
690
+ items: {
691
+ oneOf: [
692
+ {
693
+ type: 'object',
694
+ properties: {
695
+ find: {
696
+ type: 'object',
697
+ properties: {
698
+ text: {
699
+ type: 'string',
700
+ description: 'Visible text to match — same semantics as browser.find.',
701
+ },
702
+ role: {
703
+ type: 'string',
704
+ enum: ['button', 'link', 'textbox', 'checkbox', 'tab', 'menuitem'],
705
+ },
706
+ },
707
+ required: ['text'],
708
+ additionalProperties: false,
709
+ },
710
+ },
711
+ required: ['find'],
712
+ additionalProperties: false,
713
+ },
714
+ {
715
+ type: 'object',
716
+ properties: {
717
+ click: {
718
+ type: 'object',
719
+ properties: {
720
+ selector: {
721
+ type: 'string',
722
+ description: 'Optional — omit to use the implicit target from a preceding find step.',
723
+ },
724
+ force: { type: 'boolean' },
725
+ settle_ms: { type: 'number' },
726
+ },
727
+ additionalProperties: false,
728
+ },
729
+ },
730
+ required: ['click'],
731
+ additionalProperties: false,
732
+ },
733
+ {
734
+ type: 'object',
735
+ properties: {
736
+ type: {
737
+ type: 'object',
738
+ properties: {
739
+ selector: {
740
+ type: 'string',
741
+ description: 'Optional — omit to use the implicit target, or to type into whatever currently has focus.',
742
+ },
743
+ text: { type: 'string' },
744
+ clear: { type: 'boolean' },
745
+ settle_ms: { type: 'number' },
746
+ },
747
+ required: ['text'],
748
+ additionalProperties: false,
749
+ },
750
+ },
751
+ required: ['type'],
752
+ additionalProperties: false,
753
+ },
754
+ {
755
+ type: 'object',
756
+ properties: {
757
+ press: {
758
+ type: 'object',
759
+ properties: {
760
+ key: { type: 'string' },
761
+ modifiers: {
762
+ type: 'array',
763
+ items: { type: 'string', enum: ['Alt', 'Control', 'Meta', 'Shift'] },
764
+ },
765
+ selector: {
766
+ type: 'string',
767
+ description: 'Optional — omit to use the implicit target, or to send the key to whatever currently has focus.',
768
+ },
769
+ settle_ms: { type: 'number' },
770
+ },
771
+ required: ['key'],
772
+ additionalProperties: false,
773
+ },
774
+ },
775
+ required: ['press'],
776
+ additionalProperties: false,
777
+ },
778
+ {
779
+ type: 'object',
780
+ properties: {
781
+ wait_for: {
782
+ type: 'object',
783
+ properties: {
784
+ selector: { type: 'string' },
785
+ condition: {
786
+ type: 'string',
787
+ enum: ['visible', 'hidden', 'attached', 'detached'],
788
+ },
789
+ expression: { type: 'string' },
790
+ network_url: { type: 'string' },
791
+ timeout_ms: { type: 'number' },
792
+ poll_interval_ms: { type: 'number' },
793
+ },
794
+ additionalProperties: false,
795
+ description: 'Exactly one of selector | expression | network_url is required — same contract as standalone browser.wait_for.',
796
+ oneOf: [
797
+ { required: ['selector'] },
798
+ { required: ['expression'] },
799
+ { required: ['network_url'] },
800
+ ],
801
+ },
802
+ },
803
+ required: ['wait_for'],
804
+ additionalProperties: false,
805
+ },
806
+ ],
807
+ },
808
+ },
809
+ },
810
+ required: ['tab_id', 'steps'],
811
+ additionalProperties: false,
812
+ },
813
+ doc: {
814
+ purpose: 'Run a declarative find/click/type/press/wait_for sequence in one round trip — the DEFAULT way to drive any multi-step UI interaction.',
815
+ when_to_use: [
816
+ 'ANY interaction that needs more than one action tool call — find a target then act on it, act then wait for a result, fill and submit a form. Each MCP round trip you avoid is a full LLM inference you do not pay for.',
817
+ 'The find → implicit-target → click/type/press pattern: `{find}` followed by an action step with no `selector` resolves against what find just found — no need to re-run browser.find and copy its selector into the next call by hand.',
818
+ 'A flow that might fail partway — the failure response already carries a focused `recovery_snapshot`, so you do not need a follow-up browser.snapshot to see what state the page is in.',
819
+ ],
820
+ gotchas: [
821
+ 'Strictly sequential, fail-fast, no branching. If step 3 needs to behave differently depending on what step 2 returned, run the steps individually instead of as one flow.',
822
+ 'The implicit target is single-use: it is available to the very next click/type/press step that omits `selector`, then it is gone — a LATER step still needs its own `selector` or a fresh `find`.',
823
+ 'Only `click` requires a resolved target; `type` and `press` fall back to whatever currently has focus when neither an explicit nor an implicit selector is available, exactly like standalone browser.press.',
824
+ 'A `find` step that resolves with `ambiguous:true` (see browser.find) fails the flow — a selector that could match the wrong structurally-identical twin is never used silently inside a flow.',
825
+ 'An action step that triggers a NAVIGATION should be followed by a `wait_for` step — steps run back-to-back, so the next step can otherwise race the loading document and fail with a misleading "Element not found". When that race happens, the flow error carries a hint if the navigating step\'s settle reported `context-destroyed` (the navigation signal).',
826
+ 'Worst-case time budget, hard ceiling 60 seconds: each wait_for step contributes its (clamped, max 30s) timeout_ms, each action step its settle ceiling (~2.5s; ~0.5s with settle_ms:0), plus fixed overhead. A flow whose worst case exceeds 60s is REJECTED up front with the computed budget — reduce wait_for timeout_ms values or split the flow. A full 20-step flow of action steps with default settle fits comfortably.',
827
+ 'evaluate and navigate steps are NOT supported in v1 — see the tool description for why. Navigate before the flow; evaluate after it.',
828
+ 'Max 20 steps per flow. For longer sequences, split into multiple browser.flow calls.',
829
+ ],
830
+ example: 'browser.flow({ tab_id: "tab_1", steps: [{ find: { text: "GIF", role: "button" } }, { click: {} }, { wait_for: { selector: "[data-testid=gif-search]", condition: "visible" } }, { type: { selector: "[data-testid=gif-search]", text: "shrek" } }, { press: { key: "Enter" } }] })',
831
+ },
832
+ },
612
833
  {
613
834
  name: 'browser.evaluate',
614
835
  description: 'Run a JavaScript expression in the page context and return its result. Use an IIFE with return if you need multi-step logic.',
@@ -1 +1 @@
1
- {"version":3,"file":"browser-definitions.js","sourceRoot":"","sources":["../../src/tools/browser-definitions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser-definitions.js","sourceRoot":"","sources":["../../src/tools/browser-definitions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH;;;;GAIG;AACH,MAAM,wBAAwB,GAAG;IAC/B,SAAS,EAAE;QACT,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,IAAI;QACb,WAAW,EACT,gsBAAgsB;KACnsB;IACD,iBAAiB,EAAE;QACjB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,KAAK;QACd,WAAW,EACT,4LAA4L;KAC/L;CACO,CAAC;AAEX,MAAM,CAAC,MAAM,wBAAwB,GAAqB;IACxD;QACE,IAAI,EAAE,mBAAmB;QACzB,WAAW,EACT,0VAA0V;QAC5V,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,oBAAoB,EAAE,KAAK,EAAE;QAC5E,GAAG,EAAE;YACH,OAAO,EACL,kGAAkG;YACpG,WAAW,EAAE;gBACX,oEAAoE;gBACpE,qFAAqF;gBACrF,iGAAiG;aAClG;YACD,OAAO,EAAE;gBACP,yJAAyJ;aAC1J;SACF;KACF;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,WAAW,EACT,ggBAAggB;QAClgB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,yEAAyE;iBACvF;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,6JAA6J;iBAChK;aACF;YACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;YACpB,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EACL,uFAAuF;YACzF,WAAW,EAAE;gBACX,+FAA+F;gBAC/F,sFAAsF;aACvF;YACD,OAAO,EAAE;gBACP,+IAA+I;gBAC/I,qIAAqI;aACtI;YACD,OAAO,EAAE,+EAA+E;SACzF;KACF;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EACT,0TAA0T;QAC5T,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC1C,QAAQ,EAAE,CAAC,QAAQ,CAAC;YACpB,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EAAE,kEAAkE;YAC3E,WAAW,EAAE;gBACX,qFAAqF;aACtF;YACD,OAAO,EAAE;gBACP,+IAA+I;aAChJ;SACF;KACF;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EACT,4NAA4N;QAC9N,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,oBAAoB,EAAE,KAAK,EAAE;QAC5E,GAAG,EAAE;YACH,OAAO,EAAE,yEAAyE;YAClF,WAAW,EAAE;gBACX,8FAA8F;gBAC9F,+EAA+E;aAChF;SACF;KACF;IACD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,gEAAgE;QAC7E,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC1C,QAAQ,EAAE,CAAC,QAAQ,CAAC;YACpB,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EAAE,8EAA8E;YACvF,WAAW,EAAE,CAAC,4EAA4E,CAAC;SAC5F;KACF;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,2EAA2E;QACxF,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8BAA8B,EAAE;gBACpE,aAAa,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE;aAClD;YACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC;YAC3B,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EAAE,qCAAqC;YAC9C,WAAW,EAAE;gBACX,iGAAiG;gBACjG,wEAAwE;aACzE;YACD,OAAO,EAAE;gBACP,wFAAwF;aACzF;YACD,OAAO,EAAE,mEAAmE;SAC7E;KACF;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EACT,6yCAA6yC;QAC/yC,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,eAAe,EAAE;oBACf,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,oLAAoL;iBACvL;gBACD,gBAAgB,EAAE;oBAChB,IAAI,EAAE,SAAS;oBACf,WAAW,EACT,4IAA4I;iBAC/I;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE;oBACrE,WAAW,EACT,0KAA0K;iBAC7K;gBACD,eAAe,EAAE;oBACf,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,mFAAmF;iBACtF;aACF;YACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;YACpB,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EACL,uJAAuJ;YACzJ,WAAW,EAAE;gBACX,mGAAmG;gBACnG,8EAA8E;gBAC9E,oHAAoH;gBACpH,oGAAoG;aACrG;YACD,OAAO,EAAE;gBACP,uFAAuF;gBACvF,oHAAoH;gBACpH,6IAA6I;gBAC7I,gOAAgO;gBAChO,mXAAmX;aACpX;YACD,OAAO,EACL,4FAA4F;SAC/F;KACF;IACD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EACT,ghDAAghD;QAClhD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,0KAA0K;iBAC7K;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC;oBAClE,WAAW,EACT,+HAA+H;iBAClI;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,SAAS;oBACf,WAAW,EACT,kGAAkG;iBACrG;aACF;YACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;YAC5B,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EACL,0GAA0G;YAC5G,WAAW,EAAE;gBACX,qIAAqI;gBACrI,wMAAwM;gBACxM,0OAA0O;aAC3O;YACD,OAAO,EAAE;gBACP,oNAAoN;gBACpN,mNAAmN;gBACnN,2KAA2K;gBAC3K,yFAAyF;gBACzF,2PAA2P;aAC5P;YACD,OAAO,EAAE,yEAAyE;SACnF;KACF;IACD;QACE,IAAI,EAAE,2BAA2B;QACjC,WAAW,EACT,47BAA47B;QAC97B,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,mWAAmW;iBACtW;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACrB,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACrB,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACrB,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;qBACtB;oBACD,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;oBAC9B,oBAAoB,EAAE,KAAK;oBAC3B,WAAW,EACT,6OAA6O;iBAChP;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;oBACrB,WAAW,EACT,yLAAyL;iBAC5L;aACF;YACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;YACpB,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EACL,2KAA2K;YAC7K,WAAW,EAAE;gBACX,+KAA+K;gBAC/K,kIAAkI;gBAClI,yKAAyK;aAC1K;YACD,OAAO,EAAE;gBACP,mQAAmQ;gBACnQ,0SAA0S;gBAC1S,0MAA0M;gBAC1M,oNAAoN;aACrN;YACD,OAAO,EACL,yFAAyF;SAC5F;KACF;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EACT,kIAAkI;QACpI,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;aAC3E;YACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;YACpB,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EAAE,4EAA4E;YACrF,WAAW,EAAE;gBACX,sGAAsG;gBACtG,0DAA0D;aAC3D;YACD,OAAO,EAAE;gBACP,0GAA0G;aAC3G;SACF;KACF;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EACT,mNAAmN;QACrN,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4CAA4C,EAAE;aAC1F;YACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;YACpB,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EAAE,kEAAkE;YAC3E,WAAW,EAAE;gBACX,2FAA2F;gBAC3F,qEAAqE;aACtE;YACD,OAAO,EAAE;gBACP,4EAA4E;gBAC5E,iFAAiF;aAClF;SACF;KACF;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EACT,2FAA2F;QAC7F,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAC/B;YACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;YAClC,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EAAE,yEAAyE;YAClF,WAAW,EAAE;gBACX,6FAA6F;aAC9F;SACF;KACF;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EACT,0qBAA0qB;QAC5qB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,uFAAuF;iBAC1F;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC;oBACnD,WAAW,EACT,2JAA2J;iBAC9J;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,qJAAqJ;iBACxJ;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,0NAA0N;iBAC7N;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,2IAA2I;iBAC9I;gBACD,gBAAgB,EAAE;oBAChB,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,gEAAgE;iBAC9E;aACF;YACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;YACpB,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EACL,4GAA4G;YAC9G,WAAW,EAAE;gBACX,0HAA0H;gBAC1H,4EAA4E;gBAC5E,0GAA0G;aAC3G;YACD,OAAO,EAAE;gBACP,mHAAmH;gBACnH,gJAAgJ;gBAChJ,0MAA0M;aAC3M;YACD,OAAO,EACL,iHAAiH;SACpH;KACF;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EACT,szBAAszB;QACxzB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,oKAAoK;iBACvK;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,qIAAqI;iBACxI;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,iDAAiD;iBAC/D;aACF;YACD,QAAQ,EAAE,CAAC,aAAa,CAAC;YACzB,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EACL,kIAAkI;YACpI,WAAW,EAAE;gBACX,yFAAyF;gBACzF,qEAAqE;aACtE;YACD,OAAO,EAAE;gBACP,0IAA0I;gBAC1I,6MAA6M;gBAC7M,oHAAoH;gBACpH,gaAAga;aACja;YACD,OAAO,EACL,4FAA4F;SAC/F;KACF;IACD;QACE,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EACT,mqBAAmqB;QACrqB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,MAAM,EAAE;oBACN,IAAI,EAAE,SAAS;oBACf,WAAW,EACT,iFAAiF;iBACpF;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,qGAAqG;iBACxG;aACF;YACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;YAC9B,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EACL,qJAAqJ;YACvJ,WAAW,EAAE;gBACX,qGAAqG;gBACrG,6GAA6G;aAC9G;YACD,OAAO,EAAE;gBACP,sHAAsH;gBACtH,+IAA+I;gBAC/I,kFAAkF;aACnF;YACD,OAAO,EAAE,iFAAiF;SAC3F;KACF;IACD;QACE,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EACT,kjBAAkjB;QACpjB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,kIAAkI;iBACrI;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,kJAAkJ;iBACrJ;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE;wBACJ,aAAa;wBACb,eAAe;wBACf,QAAQ;wBACR,YAAY;wBACZ,oBAAoB;wBACpB,yBAAyB;wBACzB,SAAS;qBACV;oBACD,WAAW,EACT,kQAAkQ;iBACrQ;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC;oBACrC,WAAW,EACT,mNAAmN;iBACtN;aACF;YACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC;YAC/C,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EACL,2GAA2G;YAC7G,WAAW,EAAE;gBACX,8KAA8K;gBAC9K,8GAA8G;aAC/G;YACD,OAAO,EAAE;gBACP,iKAAiK;gBACjK,8LAA8L;gBAC9L,8KAA8K;gBAC9K,2GAA2G;aAC5G;YACD,OAAO,EACL,wHAAwH;SAC3H;KACF;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,urBAAurB;QACzrB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC5B,KAAK,EAAE;oBACL,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,KAAK;oBACd,WAAW,EACT,2QAA2Q;iBAC9Q;gBACD,GAAG,wBAAwB;aAC5B;YACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;YAChC,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EAAE,gDAAgD;YACzD,WAAW,EAAE;gBACX,iGAAiG;aAClG;YACD,OAAO,EAAE;gBACP,2HAA2H;gBAC3H,uDAAuD;gBACvD,iQAAiQ;gBACjQ,yKAAyK;gBACzK,wsBAAwsB;aACzsB;SACF;KACF;IACD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EACT,uQAAuQ;QACzQ,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC5B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACxB,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;gBAC1C,GAAG,wBAAwB;aAC5B;YACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC;YACxC,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EAAE,2DAA2D;YACpE,WAAW,EAAE;gBACX,iFAAiF;aAClF;YACD,OAAO,EAAE;gBACP,wFAAwF;gBACxF,sFAAsF;gBACtF,uQAAuQ;gBACvQ,kGAAkG;aACnG;SACF;KACF;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,45BAA45B;QAC95B,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,GAAG,EAAE;oBACH,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,yPAAyP;iBAC5P;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;oBACpE,WAAW,EACT,8IAA8I;iBACjJ;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,0LAA0L;iBAC7L;gBACD,GAAG,wBAAwB;aAC5B;YACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC;YAC3B,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EACL,6HAA6H;YAC/H,WAAW,EAAE;gBACX,wKAAwK;gBACxK,2HAA2H;gBAC3H,wLAAwL;aACzL;YACD,OAAO,EAAE;gBACP,sLAAsL;gBACtL,gLAAgL;gBAChL,4bAA4b;gBAC5b,kHAAkH;gBAClH,kGAAkG;aACnG;YACD,OAAO,EAAE,kDAAkD;SAC5D;KACF;IACD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EACT,6zBAA6zB;QAC/zB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4EAA4E;iBAC1F;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,sGAAsG;iBACzG;gBACD,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iCAAiC,EAAE;gBAC1E,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,6EAA6E;iBAChF;gBACD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sCAAsC,EAAE;gBAC7E,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sCAAsC,EAAE;gBAC7E,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,2IAA2I;iBAC9I;gBACD,mBAAmB,EAAE;oBACnB,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,oIAAoI;iBACvI;gBACD,sBAAsB,EAAE;oBACtB,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,oHAAoH;iBACvH;aACF;YACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;YACpB,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EACL,0FAA0F;YAC5F,WAAW,EAAE;gBACX,wFAAwF;gBACxF,gFAAgF;gBAChF,2EAA2E;aAC5E;YACD,OAAO,EAAE;gBACP,oLAAoL;gBACpL,mKAAmK;gBACnK,0JAA0J;aAC3J;YACD,OAAO,EACL,oHAAoH;SACvH;KACF;IACD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EACT,o7DAAo7D;QACt7D,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,KAAK,EAAE;oBACL,IAAI,EAAE,OAAO;oBACb,QAAQ,EAAE,CAAC;oBACX,QAAQ,EAAE,EAAE;oBACZ,WAAW,EACT,2GAA2G;oBAC7G,KAAK,EAAE;wBACL,KAAK,EAAE;4BACL;gCACE,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,IAAI,EAAE;wCACJ,IAAI,EAAE,QAAQ;wCACd,UAAU,EAAE;4CACV,IAAI,EAAE;gDACJ,IAAI,EAAE,QAAQ;gDACd,WAAW,EAAE,yDAAyD;6CACvE;4CACD,IAAI,EAAE;gDACJ,IAAI,EAAE,QAAQ;gDACd,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC;6CACnE;yCACF;wCACD,QAAQ,EAAE,CAAC,MAAM,CAAC;wCAClB,oBAAoB,EAAE,KAAK;qCAC5B;iCACF;gCACD,QAAQ,EAAE,CAAC,MAAM,CAAC;gCAClB,oBAAoB,EAAE,KAAK;6BAC5B;4BACD;gCACE,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,KAAK,EAAE;wCACL,IAAI,EAAE,QAAQ;wCACd,UAAU,EAAE;4CACV,QAAQ,EAAE;gDACR,IAAI,EAAE,QAAQ;gDACd,WAAW,EACT,wEAAwE;6CAC3E;4CACD,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;4CAC1B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;yCAC9B;wCACD,oBAAoB,EAAE,KAAK;qCAC5B;iCACF;gCACD,QAAQ,EAAE,CAAC,OAAO,CAAC;gCACnB,oBAAoB,EAAE,KAAK;6BAC5B;4BACD;gCACE,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,IAAI,EAAE;wCACJ,IAAI,EAAE,QAAQ;wCACd,UAAU,EAAE;4CACV,QAAQ,EAAE;gDACR,IAAI,EAAE,QAAQ;gDACd,WAAW,EACT,2FAA2F;6CAC9F;4CACD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4CACxB,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;4CAC1B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;yCAC9B;wCACD,QAAQ,EAAE,CAAC,MAAM,CAAC;wCAClB,oBAAoB,EAAE,KAAK;qCAC5B;iCACF;gCACD,QAAQ,EAAE,CAAC,MAAM,CAAC;gCAClB,oBAAoB,EAAE,KAAK;6BAC5B;4BACD;gCACE,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,KAAK,EAAE;wCACL,IAAI,EAAE,QAAQ;wCACd,UAAU,EAAE;4CACV,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4CACvB,SAAS,EAAE;gDACT,IAAI,EAAE,OAAO;gDACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;6CACrE;4CACD,QAAQ,EAAE;gDACR,IAAI,EAAE,QAAQ;gDACd,WAAW,EACT,iGAAiG;6CACpG;4CACD,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;yCAC9B;wCACD,QAAQ,EAAE,CAAC,KAAK,CAAC;wCACjB,oBAAoB,EAAE,KAAK;qCAC5B;iCACF;gCACD,QAAQ,EAAE,CAAC,OAAO,CAAC;gCACnB,oBAAoB,EAAE,KAAK;6BAC5B;4BACD;gCACE,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,QAAQ,EAAE;wCACR,IAAI,EAAE,QAAQ;wCACd,UAAU,EAAE;4CACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4CAC5B,SAAS,EAAE;gDACT,IAAI,EAAE,QAAQ;gDACd,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC;6CACpD;4CACD,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4CAC9B,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4CAC/B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4CAC9B,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;yCACrC;wCACD,oBAAoB,EAAE,KAAK;wCAC3B,WAAW,EACT,gHAAgH;wCAClH,KAAK,EAAE;4CACL,EAAE,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE;4CAC1B,EAAE,QAAQ,EAAE,CAAC,YAAY,CAAC,EAAE;4CAC5B,EAAE,QAAQ,EAAE,CAAC,aAAa,CAAC,EAAE;yCAC9B;qCACF;iCACF;gCACD,QAAQ,EAAE,CAAC,UAAU,CAAC;gCACtB,oBAAoB,EAAE,KAAK;6BAC5B;yBACF;qBACF;iBACF;aACF;YACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;YAC7B,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EACL,uIAAuI;YACzI,WAAW,EAAE;gBACX,yNAAyN;gBACzN,wOAAwO;gBACxO,wLAAwL;aACzL;YACD,OAAO,EAAE;gBACP,2KAA2K;gBAC3K,mMAAmM;gBACnM,8MAA8M;gBAC9M,+LAA+L;gBAC/L,mWAAmW;gBACnW,iaAAia;gBACja,sIAAsI;gBACtI,sFAAsF;aACvF;YACD,OAAO,EACL,oRAAoR;SACvR;KACF;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EACT,8HAA8H;QAChI,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAC/B;YACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;YAClC,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EAAE,mEAAmE;YAC5E,WAAW,EAAE;gBACX,8HAA8H;aAC/H;YACD,OAAO,EAAE,CAAC,mEAAmE,CAAC;SAC/E;KACF;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,ibAAib;QACnb,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,2EAA2E;iBACzF;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,2DAA2D;iBACzE;aACF;YACD,oBAAoB,EAAE,KAAK;SAC5B;QACD,GAAG,EAAE;YACH,OAAO,EACL,sFAAsF;YACxF,WAAW,EAAE;gBACX,wGAAwG;gBACxG,kDAAkD;aACnD;YACD,OAAO,EAAE;gBACP,4FAA4F;aAC7F;SACF;KACF;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,ydAAyd;QAC3d,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,oBAAoB,EAAE,KAAK,EAAE;QAC5E,GAAG,EAAE;YACH,OAAO,EACL,2FAA2F;YAC7F,WAAW,EAAE;gBACX,gGAAgG;gBAChG,4FAA4F;aAC7F;YACD,OAAO,EAAE;gBACP,uHAAuH;gBACvH,sHAAsH;aACvH;SACF;KACF;CACF,CAAC"}