@floh-solutions/pharos-cli 0.23.0 → 0.25.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.
Files changed (49) hide show
  1. package/README.md +409 -5
  2. package/dist/capabilities.d.ts.map +1 -1
  3. package/dist/capabilities.js +23 -0
  4. package/dist/capabilities.js.map +1 -1
  5. package/dist/cli.d.ts +4 -1
  6. package/dist/cli.d.ts.map +1 -1
  7. package/dist/cli.js +362 -36
  8. package/dist/cli.js.map +1 -1
  9. package/dist/commands/comment-github.d.ts +138 -0
  10. package/dist/commands/comment-github.d.ts.map +1 -0
  11. package/dist/commands/comment-github.js +427 -0
  12. package/dist/commands/comment-github.js.map +1 -0
  13. package/dist/commands/comment.d.ts.map +1 -1
  14. package/dist/commands/comment.js +114 -19
  15. package/dist/commands/comment.js.map +1 -1
  16. package/dist/commands/doctor.d.ts +71 -2
  17. package/dist/commands/doctor.d.ts.map +1 -1
  18. package/dist/commands/doctor.js +414 -8
  19. package/dist/commands/doctor.js.map +1 -1
  20. package/dist/commands/issue.d.ts +75 -0
  21. package/dist/commands/issue.d.ts.map +1 -0
  22. package/dist/commands/issue.js +2466 -0
  23. package/dist/commands/issue.js.map +1 -0
  24. package/dist/commands/setup.d.ts +6 -0
  25. package/dist/commands/setup.d.ts.map +1 -1
  26. package/dist/commands/setup.js +114 -0
  27. package/dist/commands/setup.js.map +1 -1
  28. package/dist/half-link.d.ts +157 -0
  29. package/dist/half-link.d.ts.map +1 -0
  30. package/dist/half-link.js +257 -0
  31. package/dist/half-link.js.map +1 -0
  32. package/dist/issue-scan.d.ts +383 -0
  33. package/dist/issue-scan.d.ts.map +1 -0
  34. package/dist/issue-scan.js +455 -0
  35. package/dist/issue-scan.js.map +1 -0
  36. package/dist/output.d.ts +18 -1
  37. package/dist/output.d.ts.map +1 -1
  38. package/dist/output.js +293 -0
  39. package/dist/output.js.map +1 -1
  40. package/dist/session.d.ts +101 -2
  41. package/dist/session.d.ts.map +1 -1
  42. package/dist/session.js +132 -11
  43. package/dist/session.js.map +1 -1
  44. package/dist/target.d.ts +40 -4
  45. package/dist/target.d.ts.map +1 -1
  46. package/dist/target.js +14 -3
  47. package/dist/target.js.map +1 -1
  48. package/package.json +3 -2
  49. package/skill/SKILL.md +422 -11
package/dist/cli.js CHANGED
@@ -13,6 +13,7 @@ import { runDoctor } from "./commands/doctor.js";
13
13
  import { runDownload, runTypes, runWhoami } from "./commands/discover.js";
14
14
  import { runImage, runWikiImage } from "./commands/image.js";
15
15
  import { runWikiImport } from "./commands/import.js";
16
+ import { runIssue } from "./commands/issue.js";
16
17
  import { runPeople } from "./commands/people.js";
17
18
  import { LINK_KINDS, runLink, runUnlink } from "./commands/link.js";
18
19
  import { runDelete, runDeleted, runRestore } from "./commands/recycle.js";
@@ -60,7 +61,7 @@ export const COMMANDS = [
60
61
  "history", "iterations", "areas", "links", "fields",
61
62
  "create", "update", "link", "unlink", "delete", "restore", "deleted",
62
63
  "attach", "detach", "download", "image", "people",
63
- "wiki", "comment", "hooks", "plan", "doctor",
64
+ "wiki", "comment", "hooks", "plan", "doctor", "issue",
64
65
  ];
65
66
  /** Where long text comes from, for the verbs that take some. */
66
67
  const CONTENT_OPTIONS = {
@@ -93,11 +94,20 @@ START HERE
93
94
  a personal copy SHADOWS the marketplace one.
94
95
  --install <what> the optional capabilities the skill's advice
95
96
  assumes you have — LibreOffice, poppler, the
96
- document converter.
97
+ document converter, the GitHub CLI.
97
98
  ask choose from a list (needs a terminal)
98
99
  all every one of them
99
100
  a,b exactly these, for provisioning
100
101
  Nothing is installed without this flag.
102
+ --repo owner/name bind a GitHub repository to the account it is
103
+ --gh-account <login> reached as, in ~/.config/pharos/repos.json.
104
+ BOTH OR NEITHER: a repository is a PAIR. gh
105
+ holds many accounts with one active machine-
106
+ wide, and the active one is routinely the wrong
107
+ one — two accounts can each see a repo of the
108
+ same name, so guessing returns 200 for the
109
+ wrong repository. Repeating a repo replaces its
110
+ binding; other repositories are kept.
101
111
  --convert download pharos-convert (~7.5 MB), which is
102
112
  what \`wiki import\` needs for .docx .pdf .rtf
103
113
  .html .odt. Verified against a checksum that
@@ -316,13 +326,205 @@ COMMANDS
316
326
  --as <name> name the page (one file only)
317
327
  wiki delete <path> Needs --yes
318
328
 
319
- comment list <target> <target> is a work item id (210) or a wiki page
320
- comment add <target> [text] path (/Plans/Foo). Wiki comments are reachable
321
- comment edit <target> <id> [text] through no other tool at all.
322
- comment delete <target> <id> Needs --yes
323
- comment react <target> <id> <type> like dislike heart hooray smile confused
329
+ comment list <target> <target> is a work item id (210), a wiki page
330
+ comment add <target> [text] path (/Plans/Foo), or a GitHub issue
331
+ comment edit <target> <id> [text] (contoso/widgets#45). Wiki comments are
332
+ comment delete <target> <id> Needs --yes reachable through no other tool
333
+ comment react <target> <id> <type> at all.
324
334
  comment unreact <target> <id> <type>
325
335
  comment reactors <target> <id> <type> who reacted, by name
336
+ REACTIONS differ by platform and are not
337
+ interchangeable: Azure DevOps takes like
338
+ dislike heart hooray smile confused; GitHub
339
+ takes thumbs-up thumbs-down laugh hooray
340
+ confused heart rocket eyes.
341
+ <id> on a GitHub comment is either id that
342
+ \`comment list\` prints — the number or the node.
343
+ EDITING a GitHub comment cannot double or strip
344
+ the pharos:v1 trailer: drop it and it is put
345
+ back, repoint it and the edit is refused.
346
+ DELETING the comment that carries the trailer
347
+ destroys the GitHub half of the link; the --yes
348
+ preview says so and names the repair.
349
+ \`comment add\` is REFUSED on a GitHub issue —
350
+ \`pharos issue say\` reaches the reporter AND the
351
+ work item, \`gh issue comment\` reaches GitHub.
352
+ comment hide <target> <id> <reason> GITHUB ONLY. Azure DevOps has no such
353
+ comment unhide <target> <id> concept. spam abuse off-topic
354
+ comment pin <target> <id> outdated duplicate resolved low-quality
355
+ comment unpin <target> <id>
356
+
357
+ issue adopt <owner/name#45> A GitHub issue becomes a work item, and BOTH ends
358
+ of the link get written: a Hyperlink relation on
359
+ the work item, and one comment on the issue
360
+ carrying AB#<id> plus a machine-readable
361
+ trailer. The marker goes in a COMMENT, never the
362
+ issue body — editing a reporter's body collides
363
+ with them and needs write access we may not have.
364
+ Adopting twice NEVER makes a second work item:
365
+ exit 0 with the one already linked, or exit 3
366
+ carrying the \`issue link\` that finishes a
367
+ link whose GitHub half never landed.
368
+ --type <name> the work item type to create (default Issue)
369
+ --title <text> override the issue's own title
370
+ --parent <id> create it under an epic, in the SAME patch, so
371
+ it is never briefly an orphan
372
+
373
+ issue link <owner/name#45> <id> Join an existing pair — or finish a join that
374
+ half-happened, which is exactly what a failed
375
+ adopt leaves behind. Only the missing half is
376
+ written, so running it twice changes nothing.
377
+
378
+ issue say <owner/name#45> [text] ONE message, TWO audiences, deliberately
379
+ asymmetric. The full explanation goes to GitHub
380
+ for the reporter, who has no Azure DevOps
381
+ account; a summary and the URL of that comment
382
+ go to the work item, for the team. Writing the
383
+ same words to both is \`gh issue comment\` plus
384
+ \`pharos comment add\`, and that is not this.
385
+ --text/--file/--stdin the message, for anything longer than a line
386
+ --summary <text> what the board hears. Default: the first
387
+ paragraph, cut to 200 characters — safe only
388
+ because the comment's URL travels with it
389
+
390
+ GitHub is written FIRST here, the opposite of
391
+ adopt, because the board's comment carries the
392
+ GitHub comment's URL. If the board half then
393
+ fails, DO NOT re-run it: a comment is an append
394
+ and you would post a second public one. The
395
+ error carries the exact text and the
396
+ \`pharos comment add\` that finishes the job.
397
+ Every comment carries the pharos:v1 trailer, and
398
+ a message that already carries one is REFUSED —
399
+ that is Pharos's own output coming back round,
400
+ which is how the fan-out starts summarising its
401
+ own summaries.
402
+
403
+ issue trail <id|owner/name#45> The whole trail from EITHER end, with the
404
+ evidence for each half. hyperlink+marker is a
405
+ complete link; one alone is a link that only
406
+ half exists. Read-only.
407
+
408
+ issue drift Where the two platforms DISAGREE, which no other
409
+ tool can tell you because none of them holds both
410
+ sides. Four kinds: a closed issue whose work item
411
+ is still being worked (and the reverse, which is
412
+ the rude one — done on the board, the reporter
413
+ never told); a work item linking an issue GitHub
414
+ does not have; a link only one platform carries;
415
+ and a repo this machine cannot read, which is
416
+ reported and never fatal. Scans LINKS, not
417
+ issues — an unadopted issue is not drift, it is
418
+ backfill's question. Read-only.
419
+ --repo <owner/name> only this repository's links
420
+ --limit <n> stop after n links. Says so when it bites
421
+ --wiql <statement> which work items to scan, written by hand. The
422
+ default narrows on [System.HyperLinkCount] OR
423
+ [System.ExternalLinkCount] — adopt writes a
424
+ Hyperlink, so the second alone sees nothing
425
+
426
+ issue backfill <owner/name> Bulk adopt: every issue on the repo the board
427
+ does not already link. THE ADOPTION PATH — a repo
428
+ with 400 open issues cannot be adopted one command
429
+ at a time, and a feature you cannot start using is
430
+ a feature you do not have. Needs --yes; a bare run
431
+ previews and REFUSES, and the preview names the
432
+ repo, the gh account and the ADO project so a
433
+ crossed pairing is visible before 400 work items
434
+ land on the wrong board.
435
+ --limit <n> how many to adopt this run
436
+ --state open|closed|all default open. A closed issue is history
437
+ --label <name> repeatable. The triage lever
438
+ --type <name> --parent <id> as adopt
439
+
440
+ Resumable, with no state file: the link IS the
441
+ progress record, so an adopted issue is simply no
442
+ longer a candidate. Run the same command again.
443
+ Each adoption costs 2 writes, so 400 issues is 800
444
+ against a cap of ${DEFAULT_WRITE_BUDGET} — it works
445
+ that out FIRST and refuses rather than stopping
446
+ halfway.
447
+
448
+ issue close <id|owner/name#45> The ENDING of the trail: closes both ends and
449
+ comments on each pointing at the other, then
450
+ RE-READS both to say what actually moved. Two
451
+ 200s are not proof — a workflow rule can refuse
452
+ a transition on a field the API accepted.
453
+ Closing an already-closed pair is exit 0 and
454
+ unchanged, not a refusal.
455
+ --to <state> which state the work item closes INTO. Read from
456
+ the project's own categories when there is only
457
+ one; REFUSED when there are several, because
458
+ "done" and "abandoned" are both finished
459
+ --reason completed|not-planned GitHub renders them differently
460
+ --all a work item may link several issues. Closing it
461
+ closes them all, so that needs saying out loud
462
+ --text/--file/--stdin a closing note for the reporter
463
+
464
+ It does NOT compose \`Closes #45\`/\`Fixes AB#123\`
465
+ into a PR body: that fires on a PR MERGE and PRs
466
+ are out of scope for v1, so there is nothing to
467
+ compose into and nothing to verify.
468
+
469
+ issue edit <owner/name#45> Change the issue's OWN fields, behind the
470
+ lost-update guard GitHub does not offer.
471
+
472
+ \`gh issue edit\` already does this and is good —
473
+ what it cannot do is REFUSE. It is last-write-
474
+ wins: if a colleague renamed the issue while you
475
+ were composing, their rename is gone and nobody
476
+ is told. That is fine for a human at a terminal
477
+ and wrong for an agent, which reads, thinks for a
478
+ minute, and writes into a world that moved.
479
+ Want an unguarded edit? Use \`gh issue edit\`.
480
+
481
+ --title <text> the ISSUE's new title (on \`adopt\` the same flag
482
+ names the WORK ITEM's — the verb says which)
483
+ --text/--file/--stdin the new body
484
+ --milestone <n|none> by NUMBER, or \`none\` to clear it
485
+ --add-label / --remove-label repeatable
486
+ --create-label let --add-label create one. OFF by default:
487
+ GitHub CREATES a label it cannot find, silently,
488
+ so a typo leaves a grey label on the repository
489
+ forever and nothing here can see it afterwards
490
+ --add-assignee / --remove-assignee repeatable. GitHub answers 201 for a
491
+ login it will NOT assign, so the output names
492
+ what it quietly ignored — check \`ignored\`
493
+ --if-title <text> the values you believe are there. THE GUARD.
494
+ --if-body <text> Without them the base is this command's own
495
+ --if-body-file <path> read, which covers one round trip; with them it
496
+ covers what you actually saw, which is where the
497
+ guard is worth having
498
+
499
+ THERE IS NO CONDITIONAL WRITE. \`If-Match\` on
500
+ this endpoint is a 400, not a 412 — measured —
501
+ so there is no GitHub analogue of the \`test\` on
502
+ \`/rev\` that guards every Azure DevOps patch.
503
+ And \`updated_at\` and the ETag BOTH move when
504
+ somebody merely comments, so guarding on either
505
+ refuses a good edit for a change that touched
506
+ nothing. So the guard compares the VALUE of the
507
+ field being overwritten. It narrows the race to
508
+ one round trip; it does not close it, and it
509
+ says so rather than implying otherwise.
510
+
511
+ Labels and assignees go through their own
512
+ add/remove endpoints, never the whole-issue
513
+ PATCH — that carries them as WHOLE ARRAYS, so
514
+ one label write would blindly overwrite every
515
+ label on the issue.
516
+
517
+ Eight verbs, not thirty: listing, viewing and
518
+ commenting on an issue is \`gh\`'s job and it is
519
+ better at it. Closing one END is \`gh issue
520
+ close\`; closing the PAIR is \`issue close\`.
521
+ Pharos owns the edge \`gh\` cannot see. Which GitHub account reaches
522
+ which repository comes from repos.json — bind it
523
+ with \`pharos setup --repo … --gh-account …\`,
524
+ and there is NO fallback to whichever account gh
525
+ calls active: two accounts can each see a repo of
526
+ the same name, so guessing returns 200 for the
527
+ wrong one.
326
528
 
327
529
  hooks list The service hook subscriptions that feed realtime
328
530
  hooks check --hub <url> What is set up, missing, or pointing elsewhere
@@ -335,12 +537,23 @@ COMMANDS
335
537
 
336
538
  doctor What is installed on THIS machine, what is
337
539
  missing, and what each missing thing costs.
338
- Three tiers: pharos itself, \`wiki import\`
339
- beyond .md/.txt, and reading a downloaded
340
- attachment. Read-only and offline; it also
341
- prints the PATH it searched, because a GUI-
342
- launched app inherits a minimal one and would
343
- otherwise be told a provisioned machine is bare.
540
+ Three tiers: pharos itself; \`wiki import\`
541
+ beyond .md/.txt and the GitHub bridge; and
542
+ reading a downloaded attachment. It also prints
543
+ the PATH it searched, because a GUI-launched app
544
+ inherits a minimal one and would otherwise be
545
+ told a provisioned machine is bare.
546
+ Read-only, and offline apart from one probe that
547
+ says so: \`gh auth status\` validates every token
548
+ against github.com and there is no flag to stop
549
+ it, so it runs only when gh is installed.
550
+ --verify prove the credentials with real calls: the two
551
+ Azure DevOps scopes, and \`gh-repo-access\` —
552
+ that each bound repository answers as the
553
+ account it is bound to, and that the owner it
554
+ returns is the one configured. A 200 alone
555
+ proves nothing when two accounts can each see a
556
+ repository of that name.
344
557
 
345
558
  plan <file> [...] Turn an implementation plan into a work item
346
559
  tree. Passed through to plan-to-board verbatim,
@@ -481,29 +694,72 @@ async function dispatch(io, options) {
481
694
  "wiki-page": { type: "string" },
482
695
  comment: { type: "string" },
483
696
  }
484
- : command === "deleted"
485
- ? { top: { type: "string" } }
486
- : command === "history"
487
- ? { top: { type: "string" }, all: { type: "boolean" } }
488
- : command === "iterations" || command === "areas"
489
- ? { depth: { type: "string" } }
490
- : command === "fields"
491
- ? { type: { type: "string" }, constrained: { type: "boolean" } }
492
- : command === "hooks"
493
- ? {
494
- hub: { type: "string" },
495
- user: { type: "string" },
496
- password: { type: "string" },
497
- }
498
- : command === "setup"
697
+ : command === "issue"
698
+ ? {
699
+ type: { type: "string" },
700
+ title: { type: "string" },
701
+ parent: { type: "string" },
702
+ // `say` is the one issue verb that carries prose, and an
703
+ // explanation written for a reporter is exactly the thing that does
704
+ // not belong on a command line same reason `comment` has these.
705
+ ...CONTENT_OPTIONS,
706
+ summary: { type: "string" },
707
+ // `drift` and `backfill`. Declared for every issue verb rather than
708
+ // only those two: the option table is built before the subcommand is
709
+ // known, which is the same reason `wiki` declares `--item`.
710
+ repo: { type: "string" },
711
+ limit: { type: "string" },
712
+ wiql: { type: "string" },
713
+ state: { type: "string" },
714
+ // Repeatable, so `--label bug --label crash` is two labels rather
715
+ // than the second silently winning.
716
+ label: { type: "string", multiple: true },
717
+ // `close`. `--to` rather than `--state`, which already means
718
+ // open|closed|all on `backfill` — one flag with two meanings across
719
+ // two verbs of one command is the `--wiki` shadowing bug again.
720
+ to: { type: "string" },
721
+ reason: { type: "string" },
722
+ all: { type: "boolean" },
723
+ // `edit`. Repeatable, and named apart from `--label` above on
724
+ // purpose: that one is `backfill`'s FILTER and these are writes.
725
+ "add-label": { type: "string", multiple: true },
726
+ "remove-label": { type: "string", multiple: true },
727
+ "create-label": { type: "boolean" },
728
+ "add-assignee": { type: "string", multiple: true },
729
+ "remove-assignee": { type: "string", multiple: true },
730
+ milestone: { type: "string" },
731
+ // The guard's base. Not `--if-match`: the header of that name is
732
+ // refused by this endpoint with a 400, so borrowing the word would
733
+ // teach the wrong idea about what is being compared.
734
+ "if-title": { type: "string" },
735
+ "if-body": { type: "string" },
736
+ "if-body-file": { type: "string" },
737
+ }
738
+ : command === "deleted"
739
+ ? { top: { type: "string" } }
740
+ : command === "history"
741
+ ? { top: { type: "string" }, all: { type: "boolean" } }
742
+ : command === "iterations" || command === "areas"
743
+ ? { depth: { type: "string" } }
744
+ : command === "fields"
745
+ ? { type: { type: "string" }, constrained: { type: "boolean" } }
746
+ : command === "hooks"
499
747
  ? {
500
- print: { type: "boolean" },
501
- stdin: { type: "boolean" },
502
- skill: { type: "boolean" },
503
- convert: { type: "boolean" },
504
- install: { type: "string" },
748
+ hub: { type: "string" },
749
+ user: { type: "string" },
750
+ password: { type: "string" },
505
751
  }
506
- : CONTENT_OPTIONS;
752
+ : command === "setup"
753
+ ? {
754
+ print: { type: "boolean" },
755
+ stdin: { type: "boolean" },
756
+ skill: { type: "boolean" },
757
+ convert: { type: "boolean" },
758
+ install: { type: "string" },
759
+ repo: { type: "string" },
760
+ "gh-account": { type: "string" },
761
+ }
762
+ : CONTENT_OPTIONS;
507
763
  const { values, positionals } = parse(options.argv, { ...GLOBAL_OPTIONS, ...extras });
508
764
  if (values["version"] === true)
509
765
  return emitText(io, await version(options.cwd));
@@ -511,6 +767,13 @@ async function dispatch(io, options) {
511
767
  return emitText(io, USAGE);
512
768
  // Before the Session: setup is what you run when there is no configuration
513
769
  // yet, so it must not be behind the thing that requires configuration.
770
+ //
771
+ // `Session` no longer requires any (#839 made its Azure DevOps client resolve
772
+ // on first use), so this is belt and braces rather than the only guard — but
773
+ // it is the guard that says so out loud, and `setup` writes the very
774
+ // variables a Session would read. Keeping it here means the ordering is a
775
+ // stated rule instead of a property of whichever line happens to touch a
776
+ // credential first.
514
777
  if (command === "setup") {
515
778
  return runSetup(io, options.env, {
516
779
  org: asString(values["org"]),
@@ -530,6 +793,8 @@ async function dispatch(io, options) {
530
793
  : String(values["install"]).trim() === "all"
531
794
  ? INSTALLABLE.map((capability) => capability.id)
532
795
  : String(values["install"]).split(",").map((id) => id.trim()).filter((id) => id !== ""),
796
+ repo: asString(values["repo"]),
797
+ ghAccount: asString(values["gh-account"]),
533
798
  }, options.readStdin ?? readAllStdin, options.client);
534
799
  }
535
800
  // Before the Session, for the same reason as `setup`: this is the command you
@@ -550,6 +815,7 @@ async function dispatch(io, options) {
550
815
  previewOnly: values["dry-run"] === true,
551
816
  pretty: values["pretty"] === true,
552
817
  client: options.client,
818
+ github: options.github,
553
819
  });
554
820
  const rest = positionals.slice(1);
555
821
  switch (command) {
@@ -690,6 +956,33 @@ async function dispatch(io, options) {
690
956
  return runComment(io, session, rest, {
691
957
  text: await content(options, values),
692
958
  });
959
+ case "issue":
960
+ return runIssue(io, session, rest, {
961
+ type: asString(values["type"]),
962
+ title: asString(values["title"]),
963
+ parent: workItemRef(values["parent"], "--parent"),
964
+ message: await content(options, values),
965
+ summary: asString(values["summary"]),
966
+ repo: asString(values["repo"]),
967
+ limit: wholeNumber(values["limit"], "--limit"),
968
+ wiql: asString(values["wiql"]),
969
+ state: asString(values["state"]),
970
+ labels: asStrings(values["label"]),
971
+ to: asString(values["to"]),
972
+ reason: asString(values["reason"]),
973
+ all: values["all"] === true,
974
+ addLabels: asStrings(values["add-label"]),
975
+ removeLabels: asStrings(values["remove-label"]),
976
+ createLabel: values["create-label"] === true,
977
+ addAssignees: asStrings(values["add-assignee"]),
978
+ removeAssignees: asStrings(values["remove-assignee"]),
979
+ milestone: asString(values["milestone"]),
980
+ ifTitle: asString(values["if-title"]),
981
+ // Read here rather than in the command, the way `content()` is: the
982
+ // command has no cwd, and a body that belongs in a file is exactly the
983
+ // thing that should not be re-quoted through a shell.
984
+ ifBody: await ifBody(options, values),
985
+ });
693
986
  case "hooks":
694
987
  return runHooks(io, session, rest, {
695
988
  hub: asString(values["hub"]),
@@ -754,6 +1047,28 @@ async function content(options, values) {
754
1047
  }
755
1048
  return undefined;
756
1049
  }
1050
+ /**
1051
+ * The guard's base body, from `--if-body` or `--if-body-file`.
1052
+ *
1053
+ * Its own reader rather than a second use of {@link content}, because the two
1054
+ * are different values that would otherwise share one set of flags: on
1055
+ * `pharos issue edit`, `--text/--file/--stdin` is the body being **written** and
1056
+ * this is the body being **overwritten**. One edit needs both at once, so they
1057
+ * cannot be the same three flags — and `--stdin` in particular can only be
1058
+ * consumed once.
1059
+ */
1060
+ async function ifBody(options, values) {
1061
+ const text = asString(values["if-body"]);
1062
+ const file = asString(values["if-body-file"]);
1063
+ if (text !== undefined && file !== undefined) {
1064
+ throw usageError("Pass only one of --if-body or --if-body-file.");
1065
+ }
1066
+ if (text !== undefined)
1067
+ return text;
1068
+ if (file !== undefined)
1069
+ return readFile(resolve(options.cwd, file), "utf8");
1070
+ return undefined;
1071
+ }
757
1072
  async function readAllStdin() {
758
1073
  const chunks = [];
759
1074
  for await (const chunk of process.stdin)
@@ -868,11 +1183,22 @@ function taskDepth(raw, children) {
868
1183
  return value;
869
1184
  }
870
1185
  function top(raw) {
871
- if (typeof raw !== "string")
1186
+ return wholeNumber(raw, "--top");
1187
+ }
1188
+ /**
1189
+ * A count flag, which must not silently become `NaN`.
1190
+ *
1191
+ * Shared by `--top` and `--limit` because the failure they guard against is the
1192
+ * same one and it is quiet: a typo'd cap that reaches Azure DevOps as `NaN`
1193
+ * comes back as the whole result set rather than an error, so "there really are
1194
+ * 2000 of them" is what a mistyped flag looks like.
1195
+ */
1196
+ function wholeNumber(raw, flag) {
1197
+ if (typeof raw !== "string" || raw === "")
872
1198
  return undefined;
873
1199
  const value = Number(raw);
874
1200
  if (!Number.isInteger(value) || value < 1) {
875
- throw usageError(`--top takes a whole number of 1 or more, not "${raw}".`);
1201
+ throw usageError(`${flag} takes a whole number of 1 or more, not "${raw}".`);
876
1202
  }
877
1203
  return value;
878
1204
  }
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAwB,MAAM,WAAW,CAAC;AAI5D,OAAO,EAAE,GAAG,IAAI,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAEtE,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EACL,iBAAiB,EACjB,SAAS,EACT,UAAU,EACV,YAAY,GACb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EACL,OAAO,EACP,QAAQ,EACR,WAAW,EACX,UAAU,GAGX,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAIvC;;;;;;GAMG;AACH,MAAM,cAAc,GAAkB;IACpC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;IAC3B,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;IACzB,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE;IACpC,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;IAC9B,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAChC,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IACvB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC3B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IACxB,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE;IACrC,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;CAC7B,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO;IAC3C,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ;IACnD,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS;IACpE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ;IACjD,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO;CAC7C,CAAC;AAEX,gEAAgE;AAChE,MAAM,eAAe,GAAkB;IACrC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IACxB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IACxB,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;CAC3B,CAAC;AAEF,MAAM,KAAK,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oDAoXsC,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qEAgIH,oBAAoB;;;;;;;;;;;;;;;CAexF,CAAC;AAgBF,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,OAAmB;IAC3C,MAAM,EAAE,GAAO,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;IAClE,IAAI,CAAC;QACH,OAAO,MAAM,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,WAAW,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,EAAM,EAAE,OAAmB;IACjD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IAE3E,8EAA8E;IAC9E,8EAA8E;IAC9E,mEAAmE;IACnE,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IAED,MAAM,MAAM,GACV,OAAO,KAAK,MAAM;QAChB,CAAC,CAAC;YACE,iBAAiB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YACtC,kBAAkB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YACvC,mBAAmB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YACxC,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YAC7B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACzB,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;SAC7B;QACH,CAAC,CAAC,OAAO,KAAK,OAAO;YACnB,CAAC,CAAC;gBACE,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;gBACzB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC5B,oEAAoE;gBACpE,oCAAoC;gBACpC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;gBACzC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;gBACxC,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;gBACvC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACxB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACxB,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;gBACxB,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACvB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aACzB;YACL,CAAC,CAAC,OAAO,KAAK,QAAQ;gBACpB,CAAC,CAAC;oBACE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;oBACzC,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBACjC;gBACL,CAAC,CAAC,OAAO,KAAK,QAAQ;oBACpB,CAAC,CAAC;wBACE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBAC3B,gBAAgB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;qBACtC;oBACL,CAAC,CAAC,OAAO,KAAK,QAAQ;wBACpB,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;wBAChC,CAAC,CAAC,OAAO,KAAK,OAAO;4BACnB,CAAC,CAAC;gCACE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gCACvB,gBAAgB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;6BACtC;4BACL,CAAC,CAAC,OAAO,KAAK,MAAM;gCAClB,CAAC,CAAC;oCACE,kEAAkE;oCAClE,kEAAkE;oCAClE,0DAA0D;oCAC1D,iEAAiE;oCACjE,gCAAgC;oCAChC,GAAG,eAAe;oCAClB,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oCACvB,gBAAgB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oCACrC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oCACzB,kEAAkE;oCAClE,gEAAgE;oCAChE,+DAA+D;oCAC/D,wDAAwD;oCACxD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;oCACxC,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oCAC3B,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iCACvB;gCACL,CAAC,CAAC,OAAO,KAAK,UAAU;oCACtB,CAAC,CAAC;wCACE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wCACvB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wCACxB,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;qCACzB;oCACL,CAAC,CAAC,OAAO,KAAK,OAAO;wCACnB,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;wCAChC,CAAC,CAAC,OAAO,KAAK,QAAQ;4CACpB,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;4CACnC,CAAC,CAAC,OAAO,KAAK,QAAQ;gDACpB,CAAC,CAAC;oDACE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oDACzB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oDAC1B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oDACzB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oDAC5B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oDAC5B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;oDACzC,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;oDACvC,GAAG,eAAe;iDACnB;gDACL,CAAC,CAAC,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,QAAQ;oDAC1C,CAAC,CAAC;wDACE,GAAG,MAAM,CAAC,WAAW,CACnB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAW,CAAC,CAAC,CAC3E;wDACD,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wDAC/B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;qDAC5B;oDACL,CAAC,CAAC,OAAO,KAAK,OAAO;wDACnB,CAAC,CAAC;4DACE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4DACxB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4DACzB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4DAC1B,yDAAyD;4DACzD,oEAAoE;4DACpE,kEAAkE;4DAClE,GAAG,eAAe;4DAClB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4DAC3B,oEAAoE;4DACpE,qEAAqE;4DACrE,4DAA4D;4DAC5D,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4DACxB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4DACzB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4DACxB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4DACzB,kEAAkE;4DAClE,oCAAoC;4DACpC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4DACzC,6DAA6D;4DAC7D,oEAAoE;4DACpE,gEAAgE;4DAChE,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4DACtB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4DAC1B,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;4DACxB,8DAA8D;4DAC9D,iEAAiE;4DACjE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4DAC/C,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4DAClD,cAAc,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;4DACnC,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4DAClD,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4DACrD,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4DAC7B,iEAAiE;4DACjE,mEAAmE;4DACnE,qDAAqD;4DACrD,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4DAC9B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4DAC7B,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;yDACnC;wDACL,CAAC,CAAC,OAAO,KAAK,SAAS;4DACrB,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;4DAC/B,CAAC,CAAC,OAAO,KAAK,SAAS;gEACrB,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;gEACzD,CAAC,CAAC,OAAO,KAAK,YAAY,IAAI,OAAO,KAAK,OAAO;oEAC/C,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;oEACjC,CAAC,CAAC,OAAO,KAAK,QAAQ;wEACpB,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;wEAClE,CAAC,CAAC,OAAO,KAAK,OAAO;4EACnB,CAAC,CAAC;gFACE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gFACvB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gFACxB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;6EAC7B;4EACH,CAAC,CAAC,OAAO,KAAK,OAAO;gFACrB,CAAC,CAAC;oFACE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oFAC1B,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oFAC1B,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oFAC1B,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oFAC5B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oFAC3B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oFACxB,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iFACjC;gFACH,CAAC,CAAC,eAAe,CAAC;IAExB,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,GAAG,cAAc,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;IAEtF,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,IAAI;QAAE,OAAO,QAAQ,CAAC,EAAE,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IAChF,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAEjF,2EAA2E;IAC3E,uEAAuE;IACvE,EAAE;IACF,8EAA8E;IAC9E,6EAA6E;IAC7E,qEAAqE;IACrE,0EAA0E;IAC1E,yEAAyE;IACzE,oBAAoB;IACpB,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACxB,OAAO,QAAQ,CACb,EAAE,EACF,OAAO,CAAC,GAAG,EACX;YACE,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACpC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI;YAC/B,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI;YAC/B,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI;YAC/B,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,KAAK,IAAI;YACnC,wEAAwE;YACxE,iEAAiE;YACjE,wEAAwE;YACxE,wEAAwE;YACxE,OAAO,EACL,MAAM,CAAC,SAAS,CAAC,KAAK,SAAS;gBAC7B,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,KAAK;oBAC1C,CAAC,CAAC,KAAK;oBACP,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,KAAK;wBAC1C,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;wBAChD,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;YAC/F,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC9B,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;SAC1C,EACD,OAAO,CAAC,SAAS,IAAI,YAAY,EACjC,OAAO,CAAC,MAAM,CACf,CAAC;IACJ,CAAC;IAED,8EAA8E;IAC9E,0EAA0E;IAC1E,oEAAoE;IACpE,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,OAAO,SAAS,CACd,EAAE,EACF,OAAO,CAAC,GAAG,EACX,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,EACrC,MAAM,CAAC,QAAQ,CAAC,KAAK,IAAI,EACzB,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAC3B,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC;QAC1B,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACpC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC9B,MAAM,EAAE,IAAI,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;QACxD,2EAA2E;QAC3E,gCAAgC;QAChC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,IAAI;QAC3D,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC,KAAK,IAAI;QACvC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,IAAI;QACjC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAElC,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,OAAO;YACV,OAAO,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE;gBAC3B,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI;gBAC7B,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACtC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAClC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAChC,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC9B,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAClC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC9B,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC9B,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI;gBAC3B,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACvB,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;aAC/B,CAAC,CAAC;QAEL,KAAK,QAAQ;YACX,OAAO,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;gBAClC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAChC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACtC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACtC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAChC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAClC,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;aAC3C,CAAC,CAAC;QAEL,KAAK,OAAO;YACV,OAAO,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE;gBAC9C,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC5B,aAAa,EAAE,MAAM,CAAC,gBAAgB,CAAC,KAAK,IAAI;aACjD,CAAC,CAAC;QAEL,KAAK,QAAQ;YACX,OAAO,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;QAE1E,KAAK,QAAQ;YACX,OAAO,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QAEnE,KAAK,QAAQ;YACX,OAAO,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE;gBAC/C,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBACpC,aAAa,EAAE,MAAM,CAAC,gBAAgB,CAAC,KAAK,IAAI;aACjD,CAAC,CAAC;QAEL,KAAK,UAAU;YACb,OAAO,WAAW,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE;gBACjD,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC5B,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC9B,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI;aAC5B,CAAC,CAAC;QAEL,KAAK,OAAO;YACV,OAAO,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;QAEnE,KAAK,QAAQ;YACX,OAAO,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAEhC,KAAK,QAAQ;YACX,OAAO,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;gBAClC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAChC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC;gBACjD,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAChC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACtC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACtC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAClC,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC9B,WAAW,EAAE,MAAM,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC;aAC5C,CAAC,CAAC;QAEL,KAAK,MAAM;YACT,OAAO,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;QAEzD,KAAK,QAAQ;YACX,OAAO,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;QAE3D,KAAK,QAAQ;YACX,OAAO,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QAEtC,KAAK,SAAS;YACZ,OAAO,UAAU,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QAEvC,KAAK,SAAS;YACZ,OAAO,UAAU,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAEpE,KAAK,SAAS;YACZ,OAAO,UAAU,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;gBACnC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE;gBAC7B,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI;aAC5B,CAAC,CAAC;QAEL,KAAK,YAAY;YACf,OAAO,iBAAiB,CAAC,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE;gBAClD,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;aACjC,CAAC,CAAC;QAEL,KAAK,OAAO;YACV,OAAO,iBAAiB,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEvF,KAAK,OAAO;YACV,OAAO,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAEnC,KAAK,QAAQ;YACX,OAAO,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE;gBAC5B,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC9B,WAAW,EAAE,MAAM,CAAC,aAAa,CAAC,KAAK,IAAI;aAC5C,CAAC,CAAC;QAEL,KAAK,MAAM;YACT,OAAO,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;gBAChC,WAAW,EAAE,MAAM,CAAC,iBAAiB,CAAC,KAAK,IAAI;gBAC/C,YAAY,EAAE,MAAM,CAAC,kBAAkB,CAAC,KAAK,IAAI;gBACjD,aAAa,EAAE,MAAM,CAAC,mBAAmB,CAAC,KAAK,IAAI;gBACnD,kEAAkE;gBAClE,oEAAoE;gBACpE,6DAA6D;gBAC7D,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;gBAC9D,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,KAAK,IAAI;aACpC,CAAC,CAAC;QAEL,KAAK,MAAM;YACT,sEAAsE;YACtE,wEAAwE;YACxE,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO;gBAAE,OAAO,YAAY,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACzE,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;gBAC/C,OAAO,WAAW,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;oBAC7C,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;wBAC3C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;4BACvB,MAAM,UAAU,CAAC,IAAI,GAAG,0BAA0B,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;wBACtE,CAAC;wBACD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;oBACrB,CAAC,CAAC;oBACF,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;oBACpC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ;iBAC7B,CAAC,CAAC;YACL,CAAC;YACD,0EAA0E;YAC1E,uEAAuE;YACvE,sEAAsE;YACtE,+CAA+C;YAC/C,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;gBACxB,OAAO,YAAY,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;oBAC3D,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAC5B,aAAa,EAAE,MAAM,CAAC,gBAAgB,CAAC,KAAK,IAAI;iBACjD,CAAC,CAAC;YACL,CAAC;YACD,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;gBACzB,OAAO,aAAa,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;oBAC5D,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAChC,EAAE,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;iBAC3B,CAAC,CAAC;YACL,CAAC;YACD,OAAO,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;gBAChC,OAAO,EAAE,MAAM,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC;aACxC,CAAC,CAAC;QAEL,KAAK,SAAS;YACZ,OAAO,UAAU,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;gBACnC,IAAI,EAAE,MAAM,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC;aACrC,CAAC,CAAC;QAEL,KAAK,OAAO;YACV,OAAO,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;gBACjC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC9B,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAChC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC;gBACjD,OAAO,EAAE,MAAM,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC;gBACvC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBACpC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC9B,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC;gBAC9C,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC9B,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAChC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAClC,EAAE,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC1B,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAClC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI;gBAC3B,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBACzC,YAAY,EAAE,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;gBAC/C,WAAW,EAAE,MAAM,CAAC,cAAc,CAAC,KAAK,IAAI;gBAC5C,YAAY,EAAE,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;gBAC/C,eAAe,EAAE,SAAS,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;gBACrD,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBACxC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACrC,oEAAoE;gBACpE,uEAAuE;gBACvE,sDAAsD;gBACtD,MAAM,EAAE,MAAM,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC;aACtC,CAAC,CAAC;QAEL,KAAK,OAAO;YACV,OAAO,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;gBACjC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC5B,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC9B,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;aACvC,CAAC,CAAC;QAEL;YACE,MAAM,UAAU,CACd,oBAAoB,OAAO,UAAU,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,EAC9F,EAAE,QAAQ,EAAE,QAAQ,EAAE,CACvB,CAAC;IACN,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,IAAI,CAAC,OAAmB;IACrC,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC;QAChC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;QACnC,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;KACpE,CAAC,CAAC;IACH,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAE,IAAiB,CAAC;AACnD,CAAC;AAED,SAAS,KAAK,CACZ,IAAuB,EACvB,aAA4B;IAE5B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,SAAS,CAAC;YACvB,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;YACf,OAAO,EAAE,aAAa;YACtB,gBAAgB,EAAE,IAAI;YACtB,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;QACH,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAiC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;IAC/F,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,2EAA2E;QAC3E,gEAAgE;QAChE,MAAM,UAAU,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3E,CAAC;AACH,CAAC;AAED,uEAAuE;AACvE,KAAK,UAAU,OAAO,CACpB,OAAmB,EACnB,MAA+B;IAE/B,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC;IACrF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,UAAU,CAAC,mDAAmD,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAChG,CAAC;IAED,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACtC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAEpC,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACtC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5E,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;QAC7B,OAAO,CAAC,OAAO,CAAC,SAAS,IAAI,YAAY,CAAC,EAAE,CAAC;IAC/C,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,MAAM,CACnB,OAAmB,EACnB,MAA+B;IAE/B,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;IAC9C,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QAC7C,MAAM,UAAU,CAAC,+CAA+C,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACpC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5E,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,YAAY;IACzB,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,KAAK;QAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAChD,CAAC;AAED;;;;;GAKG;AACH,SAAS,SAAS,CAAC,GAAY;IAC7B,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,oBAAoB,CAAC;IACzD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QAC1C,MAAM,UAAU,CACd,wDAAwD,GAAG,uBAAuB,CACnF,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,OAAO,CAAC,GAAW;IAChC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;QACrF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAyB,CAAC;QAC5D,OAAO,MAAM,CAAC,OAAO,IAAI,SAAS,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,wEAAwE;QACxE,KAAK,GAAG,CAAC;QACT,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACvE,CAAC;AAED,iFAAiF;AACjF,SAAS,SAAS,CAAC,KAAc;IAC/B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACrC,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;AACzF,CAAC;AAED;;;;;;GAMG;AACH,6CAA6C;AAC7C,SAAS,WAAW,CAAC,GAAY,EAAE,IAAY;IAC7C,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IAC5D,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,MAAM,UAAU,CAAC,GAAG,IAAI,+BAA+B,GAAG,IAAI,CAAC,CAAC;IACxF,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC;AAED,8EAA8E;AAC9E,SAAS,WAAW,CAAC,MAA+B;IAKlD,MAAM,KAAK,GAAuC,EAAE,CAAC;IACrD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3C,KAAK,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,6EAA6E;IAC7E,8EAA8E;IAC9E,yEAAyE;IACzE,0EAA0E;IAC1E,gCAAgC;IAChC,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAE3C,8EAA8E;IAC9E,8EAA8E;IAC9E,2BAA2B;IAC3B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;QAC7E,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,UAAU,CACd,mDAAmD,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CACrG,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;AAC/D,CAAC;AAED,qEAAqE;AACrE,SAAS,SAAS,CAAC,GAAY;IAC7B,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAC9C,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QAC1C,MAAM,UAAU,CAAC,wDAAwD,GAAG,IAAI,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,SAAS,CAAC,GAAY,EAAE,QAAiB;IAChD,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QAC1C,MAAM,UAAU,CAAC,mDAAmD,GAAG,IAAI,CAAC,CAAC;IAC/E,CAAC;IACD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,MAAM,UAAU,CAAC,2BAA2B,KAAK,+BAA+B,EAAE;YAChF,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,CAAC;SACX,CAAC,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,GAAG,CAAC,GAAY;IACvB,OAAO,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,WAAW,CAAC,GAAY,EAAE,IAAY;IAC7C,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QAC1C,MAAM,UAAU,CAAC,GAAG,IAAI,4CAA4C,GAAG,IAAI,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}