@falai/agent 4.0.0-alpha.1 → 4.0.0-alpha.11

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 (118) hide show
  1. package/dist/cjs/core/Agent.d.ts +8 -1
  2. package/dist/cjs/core/Agent.d.ts.map +1 -1
  3. package/dist/cjs/core/Agent.js +9 -0
  4. package/dist/cjs/core/Agent.js.map +1 -1
  5. package/dist/cjs/core/FlowSpec.d.ts.map +1 -1
  6. package/dist/cjs/core/FlowSpec.js +53 -2
  7. package/dist/cjs/core/FlowSpec.js.map +1 -1
  8. package/dist/cjs/core/Prompt.d.ts.map +1 -1
  9. package/dist/cjs/core/Prompt.js +7 -1
  10. package/dist/cjs/core/Prompt.js.map +1 -1
  11. package/dist/cjs/core/Runner.d.ts +14 -3
  12. package/dist/cjs/core/Runner.d.ts.map +1 -1
  13. package/dist/cjs/core/Runner.js +52 -23
  14. package/dist/cjs/core/Runner.js.map +1 -1
  15. package/dist/cjs/core/Speak.d.ts.map +1 -1
  16. package/dist/cjs/core/Speak.js +11 -2
  17. package/dist/cjs/core/Speak.js.map +1 -1
  18. package/dist/cjs/core/Understand.d.ts.map +1 -1
  19. package/dist/cjs/core/Understand.js +17 -13
  20. package/dist/cjs/core/Understand.js.map +1 -1
  21. package/dist/cjs/index.d.ts +1 -1
  22. package/dist/cjs/index.d.ts.map +1 -1
  23. package/dist/cjs/index.js.map +1 -1
  24. package/dist/cjs/providers/ProviderAdapter.d.ts +10 -5
  25. package/dist/cjs/providers/ProviderAdapter.d.ts.map +1 -1
  26. package/dist/cjs/providers/ProviderAdapter.js.map +1 -1
  27. package/dist/cjs/providers/ZaiProvider.d.ts +6 -4
  28. package/dist/cjs/providers/ZaiProvider.d.ts.map +1 -1
  29. package/dist/cjs/providers/ZaiProvider.js +6 -4
  30. package/dist/cjs/providers/ZaiProvider.js.map +1 -1
  31. package/dist/cjs/types/agent.d.ts +12 -2
  32. package/dist/cjs/types/agent.d.ts.map +1 -1
  33. package/dist/cjs/types/index.d.ts +1 -1
  34. package/dist/cjs/types/index.d.ts.map +1 -1
  35. package/dist/cjs/types/index.js.map +1 -1
  36. package/dist/cjs/utils/phrases.d.ts +25 -0
  37. package/dist/cjs/utils/phrases.d.ts.map +1 -0
  38. package/dist/cjs/utils/phrases.js +38 -0
  39. package/dist/cjs/utils/phrases.js.map +1 -0
  40. package/dist/cjs/utils/template.d.ts +8 -0
  41. package/dist/cjs/utils/template.d.ts.map +1 -1
  42. package/dist/cjs/utils/template.js +40 -3
  43. package/dist/cjs/utils/template.js.map +1 -1
  44. package/dist/core/Agent.d.ts +8 -1
  45. package/dist/core/Agent.d.ts.map +1 -1
  46. package/dist/core/Agent.js +9 -0
  47. package/dist/core/Agent.js.map +1 -1
  48. package/dist/core/FlowSpec.d.ts.map +1 -1
  49. package/dist/core/FlowSpec.js +53 -2
  50. package/dist/core/FlowSpec.js.map +1 -1
  51. package/dist/core/Prompt.d.ts.map +1 -1
  52. package/dist/core/Prompt.js +7 -1
  53. package/dist/core/Prompt.js.map +1 -1
  54. package/dist/core/Runner.d.ts +14 -3
  55. package/dist/core/Runner.d.ts.map +1 -1
  56. package/dist/core/Runner.js +52 -23
  57. package/dist/core/Runner.js.map +1 -1
  58. package/dist/core/Speak.d.ts.map +1 -1
  59. package/dist/core/Speak.js +11 -2
  60. package/dist/core/Speak.js.map +1 -1
  61. package/dist/core/Understand.d.ts.map +1 -1
  62. package/dist/core/Understand.js +17 -13
  63. package/dist/core/Understand.js.map +1 -1
  64. package/dist/index.d.ts +1 -1
  65. package/dist/index.d.ts.map +1 -1
  66. package/dist/index.js.map +1 -1
  67. package/dist/providers/ProviderAdapter.d.ts +10 -5
  68. package/dist/providers/ProviderAdapter.d.ts.map +1 -1
  69. package/dist/providers/ProviderAdapter.js.map +1 -1
  70. package/dist/providers/ZaiProvider.d.ts +6 -4
  71. package/dist/providers/ZaiProvider.d.ts.map +1 -1
  72. package/dist/providers/ZaiProvider.js +6 -4
  73. package/dist/providers/ZaiProvider.js.map +1 -1
  74. package/dist/types/agent.d.ts +12 -2
  75. package/dist/types/agent.d.ts.map +1 -1
  76. package/dist/types/index.d.ts +1 -1
  77. package/dist/types/index.d.ts.map +1 -1
  78. package/dist/types/index.js.map +1 -1
  79. package/dist/utils/phrases.d.ts +25 -0
  80. package/dist/utils/phrases.d.ts.map +1 -0
  81. package/dist/utils/phrases.js +35 -0
  82. package/dist/utils/phrases.js.map +1 -0
  83. package/dist/utils/template.d.ts +8 -0
  84. package/dist/utils/template.d.ts.map +1 -1
  85. package/dist/utils/template.js +40 -3
  86. package/dist/utils/template.js.map +1 -1
  87. package/docs/concepts/architecture.md +2 -2
  88. package/docs/concepts/pipeline.md +4 -4
  89. package/docs/guides/actions-and-events.md +1 -1
  90. package/docs/guides/conditions.md +1 -1
  91. package/docs/guides/error-handling.md +2 -0
  92. package/docs/guides/persistence.md +1 -1
  93. package/docs/guides/testing.md +1 -1
  94. package/docs/guides/triggers.md +5 -5
  95. package/docs/migration/v3-to-v4.md +12 -7
  96. package/docs/reference/actions-events-conditions.md +2 -2
  97. package/docs/reference/agent.md +8 -4
  98. package/docs/reference/flow-spec.md +1 -1
  99. package/docs/reference/providers.md +2 -2
  100. package/docs/reference/trigger.md +24 -4
  101. package/docs/rfc/v4-one-flow.md +5 -5
  102. package/docs/start/04-add-tools.md +1 -1
  103. package/docs/start/05-go-to-production.md +16 -1
  104. package/examples/06-triggers-and-waits.ts +4 -3
  105. package/package.json +5 -3
  106. package/src/core/Agent.ts +11 -1
  107. package/src/core/FlowSpec.ts +72 -6
  108. package/src/core/Prompt.ts +7 -1
  109. package/src/core/Runner.ts +59 -24
  110. package/src/core/Speak.ts +11 -2
  111. package/src/core/Understand.ts +12 -11
  112. package/src/index.ts +1 -0
  113. package/src/providers/ProviderAdapter.ts +10 -5
  114. package/src/providers/ZaiProvider.ts +6 -4
  115. package/src/types/agent.ts +13 -2
  116. package/src/types/index.ts +1 -0
  117. package/src/utils/phrases.ts +40 -0
  118. package/src/utils/template.ts +39 -3
@@ -6,7 +6,7 @@
6
6
  * Runner moves the runs by code, Understand and Speak spend at most one
7
7
  * provider call apiece, and Runner settles what they returned.
8
8
  */
9
- import type { AgentOptions, TurnInput, TurnResult, TurnStreamChunk } from "../types/agent.js";
9
+ import type { AgentOptions, PendingWakesInput, ScheduleEntry, TurnInput, TurnResult, TurnStreamChunk } from "../types/agent.js";
10
10
  export declare class Agent<C = unknown, D = unknown> {
11
11
  readonly options: AgentOptions<C, D>;
12
12
  private readonly runner;
@@ -18,6 +18,13 @@ export declare class Agent<C = unknown, D = unknown> {
18
18
  turn(input: TurnInput<C, D>): Promise<TurnResult<D>>;
19
19
  /** `turn`, streaming the spoken text as it is generated; the last chunk carries the result. */
20
20
  turnStream(input: TurnInput<C, D>): AsyncIterable<TurnStreamChunk<D>>;
21
+ /**
22
+ * Every wake a saved session is waiting on, as its turns scheduled them: each parked run's,
23
+ * and each silence flow's since the assistant last spoke. For a queue that lost its jobs, and
24
+ * for sessions no turn has armed yet, such as blobs lifted by `migrateSession`. It changes
25
+ * nothing and spends no call: enqueue the entries as you would a turn's `schedule[]`.
26
+ */
27
+ pendingWakes(input: PendingWakesInput<C, D>): ScheduleEntry[];
21
28
  /** Load, Ingest, Understand, Decide and Run: everything before the one speaker is known. */
22
29
  private open;
23
30
  /** With `compaction` set, the history both calls see is trimmed once per turn; a summarization is one model call. */
@@ -1 +1 @@
1
- {"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../../src/core/Agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAa9F,qBAAa,KAAK,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,OAAO;IAM7B,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC;IALhD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmB;IAC9C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAc;IACpC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAoB;gBAE3B,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC;IAShD,yFAAyF;IACnF,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAM1D,+FAA+F;IACxF,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAa5E,4FAA4F;YAC9E,IAAI;IAWlB,qHAAqH;YACvG,SAAS;CAaxB"}
1
+ {"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../../src/core/Agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAahI,qBAAa,KAAK,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,OAAO;IAM7B,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC;IALhD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmB;IAC9C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAc;IACpC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAoB;gBAE3B,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC;IAShD,yFAAyF;IACnF,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAM1D,+FAA+F;IACxF,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAa5E;;;;;OAKG;IACH,YAAY,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,aAAa,EAAE;IAI7D,4FAA4F;YAC9E,IAAI;IAWlB,qHAAqH;YACvG,SAAS;CAaxB"}
@@ -49,6 +49,15 @@ class Agent {
49
49
  await this.runner.settle(turn, outcome);
50
50
  yield { done: true, result: this.runner.finish(turn) };
51
51
  }
52
+ /**
53
+ * Every wake a saved session is waiting on, as its turns scheduled them: each parked run's,
54
+ * and each silence flow's since the assistant last spoke. For a queue that lost its jobs, and
55
+ * for sessions no turn has armed yet, such as blobs lifted by `migrateSession`. It changes
56
+ * nothing and spends no call: enqueue the entries as you would a turn's `schedule[]`.
57
+ */
58
+ pendingWakes(input) {
59
+ return this.runner.pendingWakes(input);
60
+ }
52
61
  /** Load, Ingest, Understand, Decide and Run: everything before the one speaker is known. */
53
62
  async open(input) {
54
63
  const { runner } = this;
@@ -1 +1 @@
1
- {"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../../src/core/Agent.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAKH,kDAA4D;AAC5D,kDAAyD;AACzD,gDAA6C;AAC7C,+DAAyD;AAEzD,+CAA6C;AAC7C,2CAAgD;AAChD,yCAAmC;AACnC,mDAA6C;AAE7C,MAAa,KAAK;IAMhB,YAAqB,OAA2B;QAA3B,YAAO,GAAP,OAAO,CAAoB;QAC9C,IAAI,OAAO,CAAC,KAAK;YAAE,kBAAM,CAAC,QAAQ,CAAC,uBAAW,CAAC,KAAK,CAAC,CAAC;QACtD,QAAQ,CAAC,OAAO,CAAC,CAAC;QAClB,IAAI,CAAC,UAAU,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,MAAM,GAAG,IAAI,kBAAM,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,CAAC,UAAU,GAAG,IAAI,0BAAU,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK,GAAG,IAAI,gBAAK,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED,yFAAyF;IACzF,KAAK,CAAC,IAAI,CAAC,KAAsB;QAC/B,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACzG,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,+FAA+F;IAC/F,KAAK,CAAC,CAAC,UAAU,CAAC,KAAsB;QACtC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,OAAO,GAAwB,IAAI,CAAC;QACxC,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;gBAClF,IAAI,OAAO,IAAI,KAAK;oBAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;;oBAC9C,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;YAC/B,CAAC;QACH,CAAC;QACD,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACxC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;IACzD,CAAC;IAED,4FAA4F;IACpF,KAAK,CAAC,IAAI,CAAC,KAAsB;QACvC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACxB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,KAAK,GAAG,IAAA,mBAAQ,EAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACzE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;IACpD,CAAC;IAED,qHAAqH;IAC7G,KAAK,CAAC,SAAS,CACrB,KAAsB;QAEtB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC;QACxD,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,OAAO,EAAE,MAAM;YAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QACxE,MAAM,MAAM,GAAG,MAAM,sCAAgB,CAAC,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAChF,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,KAAK,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,IAAI,MAAM,CAAC,OAAO,KAAK,OAAO;YAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,CAAC;QACrE,MAAM,OAAO,GAAoB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC1D,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QACjC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,CAAC;IAChD,CAAC;CACF;AA9DD,sBA8DC;AAED,SAAS,iBAAiB,CAAO,OAA2B;IAC1D,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAClC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK;QAAE,OAAO,SAAS,CAAC;IAC1D,MAAM,QAAQ,GAAsB;QAClC,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,IAAI,GAAG;QACtD,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,IAAI,CAAC;QACpD,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,IAAI,IAAI;QACrD,QAAQ,EAAE,OAAO,CAAC,QAAQ;KAC3B,CAAC;IACF,sCAAgB,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC3C,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,sFAAsF;AACtF,SAAS,QAAQ,CAAO,OAA2B;IACjD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;QACvC,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,kCAAsB,CAC9B,kCAAkC,IAAI,CAAC,EAAE,mEAAmE,CAC7G,CAAC;QACJ,CAAC;QACD,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,KAAK,MAAM,OAAO,IAAI,IAAA,0BAAY,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC,QAAQ;YAAE,kBAAM,CAAC,IAAI,CAAC,WAAW,OAAO,EAAE,CAAC,CAAC;IAChG,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;QACvC,0EAA0E;QAC1E,0EAA0E;QAC1E,0EAA0E;QAC1E,8CAA8C;QAC9C,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACzD,MAAM,IAAI,kCAAsB,CAC9B,kCAAkC,IAAI,CAAC,EAAE,8CAA8C;gBACrF,iEAAiE,CACpE,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IACzB,IAAI,IAAI,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACpE,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrB,MAAM,IAAI,kCAAsB,CAC9B,gDAAgD,IAAI,sDAAsD,CAC3G,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../../src/core/Agent.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FlowSpec.d.ts","sourceRoot":"","sources":["../../../src/core/FlowSpec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FlowSpec.d.ts","sourceRoot":"","sources":["../../../src/core/FlowSpec.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,7 @@ exports.validateFlow = validateFlow;
23
23
  exports.flowSpecSchema = flowSpecSchema;
24
24
  const errors_js_1 = require("../types/errors.js");
25
25
  const duration_js_1 = require("../utils/duration.js");
26
+ const phrases_js_1 = require("../utils/phrases.js");
26
27
  const schema_js_1 = require("../utils/schema.js");
27
28
  // ── fromSpec / toSpec ───────────────────────────────────────────────────
28
29
  /**
@@ -124,6 +125,10 @@ function jsonPredRequired(pred, at) {
124
125
  }
125
126
  const BUILT_IN_CONDITIONS = ["equals", "known", "silenced"];
126
127
  const DURATION_HINT = 'Write a number and a unit: "30s", "5m", "24h" or "3d".';
128
+ /** The four keys one of which makes an `on[]` entry a trigger. */
129
+ const TRIGGER_KINDS = ["message", "mention", "silence", "event"];
130
+ /** The six keys one of which makes a step do something. */
131
+ const STEP_DOES = ["prompt", "collect", "say", "do", "wait", "if"];
127
132
  /**
128
133
  * Check a flow, typed or as a spec, against the agent's registries. Throws
129
134
  * `FlowConfigurationError` on the first problem that would break at runtime;
@@ -247,7 +252,8 @@ function validateFlow(input, registries) {
247
252
  continue;
248
253
  }
249
254
  if (!matchesParam(def, value)) {
250
- throw problem(at, `parameter "${param}" of action "${name}" must be ${describeDef(def)}, got ${describe(value)}`, "Values are not coerced; write the right type.");
255
+ const { expected, got, fix } = mismatch(def, value);
256
+ throw problem(at, `parameter "${param}" of action "${name}" must be ${expected}, got ${got}`, fix);
251
257
  }
252
258
  }
253
259
  for (const param of Object.keys(given)) {
@@ -263,6 +269,14 @@ function validateFlow(input, registries) {
263
269
  flow.instructions?.forEach((ins, i) => pred(ins.if, flowAt, `instructions[${i}].if`));
264
270
  flow.on?.forEach((trigger, i) => {
265
271
  const at = `${flowAt}, trigger #${i + 1}`;
272
+ // A trigger that names no kind can never fire, and nothing downstream says
273
+ // so: the Runner simply never finds it eligible and the flow looks broken
274
+ // for some other reason. `{ kind: 'message', when: [...] }` — the v3 shape —
275
+ // lands here, and so does a typo in the one key that matters.
276
+ if (!TRIGGER_KINDS.some((key) => trigger[key] !== undefined)) {
277
+ throw problem(at, "names no trigger kind", `A trigger is one of ${TRIGGER_KINDS.map((key) => `\`${key}\``).join(", ")}. ` +
278
+ "A flow the host starts itself has no `on` at all.");
279
+ }
266
280
  if (trigger.event !== undefined && !own(events, trigger.event)) {
267
281
  throw problem(at, `unknown event "${trigger.event}"`, "Register it in events or fix the name.");
268
282
  }
@@ -271,9 +285,27 @@ function validateFlow(input, registries) {
271
285
  if (typeof trigger.repeat === "object")
272
286
  duration(trigger.repeat.cooldown, at, "repeat.cooldown");
273
287
  pred(trigger.if, at, "if");
288
+ // Phrases opening with `!` rule the trigger out; a list of nothing but
289
+ // those can never fire, so the flow is dead and nothing would say so.
290
+ // `message: []` is the deliberate catch-all and stays legal.
291
+ for (const key of ["message", "mention"]) {
292
+ const phrases = trigger[key];
293
+ if (!phrases?.length)
294
+ continue;
295
+ if ((0, phrases_js_1.splitPhrases)(phrases).counts.length > 0)
296
+ continue;
297
+ throw problem(at, `every ${key} phrase starts with "!", so nothing can ever match it`, `A "!" phrase rules the trigger out. Add at least one plain phrase saying when it should fire${key === "message" ? ", or use an empty list for a catch-all" : ""}.`);
298
+ }
274
299
  });
275
300
  flow.steps.forEach((step, i) => {
276
301
  const at = `${flowAt}, step "${step.id}"`;
302
+ // Same reasoning as the trigger above: a step that does none of the five
303
+ // things is a step the run walks straight past, silently. `kind` alone is
304
+ // not enough — the spec form drops it and keeps the body, so what counts
305
+ // is whether the body says what to do.
306
+ if (!STEP_DOES.some((key) => step[key] !== undefined)) {
307
+ throw problem(at, "does nothing", "A step talks (`prompt` / `collect`), says (`say`), acts (`do`), waits (`wait`) or forks (`if`).");
308
+ }
277
309
  const thenTo = edge(i, step.then, at, "then");
278
310
  edge(i, step.else, at, "else");
279
311
  if (step.collect !== undefined || step.prompt !== undefined) {
@@ -342,11 +374,30 @@ function matches(def, value) {
342
374
  return true;
343
375
  return typeof value !== "boolean" && def.enum.includes(value);
344
376
  }
377
+ /**
378
+ * What a rejected value should have been and what it was. A value of the right type that is
379
+ * not a listed one names the listed values: "must be a string, got string" would say nothing.
380
+ */
381
+ function mismatch(def, value) {
382
+ const scalar = def.type === "array" ? def.items : def;
383
+ const { enum: allowed, ...typeOnly } = scalar;
384
+ const items = def.type === "array" && Array.isArray(value) ? value : [value];
385
+ const off = allowed ? items.findIndex((item) => matches(typeOnly, item) && !matches(scalar, item)) : -1;
386
+ if (!allowed || off === -1) {
387
+ return { expected: describeDef(def), got: describe(value), fix: "Values are not coerced; write the right type." };
388
+ }
389
+ const list = (v) => JSON.stringify(v);
390
+ return { expected: `one of ${allowed.map(list).join(", ")}`, got: list(items[off]), fix: "Use one of the listed values." };
391
+ }
345
392
  function describe(value) {
346
393
  return Array.isArray(value) ? "list" : value === null ? "null" : typeof value;
347
394
  }
348
395
  function describeDef(def) {
349
- return def.type === "array" ? `a list of ${def.items.type}` : `a ${def.type}`;
396
+ return def.type === "array" ? `a list of ${def.items.type}s` : `${article(def.type)} ${def.type}`;
397
+ }
398
+ /** "an integer", "a string". A vowel test rather than one hard-coded type, so a new type reads right for free. */
399
+ function article(type) {
400
+ return /^[aeiou]/.test(type) ? "an" : "a";
350
401
  }
351
402
  // ── flowSpecSchema ──────────────────────────────────────────────────────
352
403
  const STRING = { type: "string" };
@@ -1 +1 @@
1
- {"version":3,"file":"FlowSpec.js","sourceRoot":"","sources":["../../../src/core/FlowSpec.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;AA+FH,4BAQC;AASD,wBAeC;AAoID,oCAoNC;AAoDD,wCAsGC;AA9mBD,kDAA4D;AAyB5D,sDAAkD;AAClD,kDAAkD;AA0DlD,2EAA2E;AAE3E;;;;;GAKG;AACH,SAAgB,QAAQ,CAA6B,IAAc;IACjE,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QAChC,MAAM,OAAO,CAAC,SAAS,KAAK,CAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,2CAA2C,CAAC,CAAC;IACxG,CAAC;IACD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IACjC,MAAM,IAAI,GAA6B,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;IACnF,OAAO,IAAkB,CAAC;AAC5B,CAAC;AAED,SAAS,YAAY,CAAC,IAAc;IAClC,+GAA+G;IAC/G,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;IAC/B,OAAO,IAAI,CAAC;AACd,CAAC;AAED,uGAAuG;AACvG,SAAgB,MAAM,CAAyB,IAAgB;IAC7D,MAAM,EAAE,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,SAAS,IAAI,CAAC,EAAE,MAAM,KAAK,EAAE,CAAC;IAC5D,OAAO,OAAO,CAAW;QACvB,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QACjF,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;QACxC,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QAC1E,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,EAAE,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;QAClG,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAAyB,OAAsB,EAAE,EAAU;IAC/E,OAAO,OAAO,CAAc,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;AACpF,CAAC;AAED,SAAS,iBAAiB,CAAyB,GAAsB,EAAE,EAAU;IACnF,OAAO,OAAO,CAAkB,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,cAAc,CAAyB,QAAoC,EAAE,EAAU;IAC9F,OAAO,QAAQ,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CACjC,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CACpG,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAyB,IAAgB,EAAE,EAAU;IACtE,MAAM,IAAI,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;IAC9E,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QAClB,OAAO,OAAO,CAAW,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACxG,CAAC;IACD,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QACjB,OAAO,OAAO,CAAW,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACvG,CAAC;IACD,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;QACnB,OAAO,WAAW,CAAC,IAAI,CAAC;YACtB,CAAC,CAAC,OAAO,CAAW;gBAChB,GAAG,IAAI;gBACP,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;aAC5C,CAAC;YACJ,CAAC,CAAC,OAAO,CAAW,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1F,CAAC;IACD,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QACjB,OAAO,OAAO,CAAW,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAChH,CAAC;IACD,MAAM,IAAI,GAAG;QACX,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,QAAQ,EAAE,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;QAC3C,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC;KACrG,CAAC;IACF,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,OAAO,CAAW,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;IAC9G,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,OAAO,CAAC,EAAE,EAAE,gCAAgC,EAAE,4DAA4D,CAAC,CAAC;IACpH,CAAC;IACD,OAAO,OAAO,CAAW,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;AACtF,CAAC;AAED,6EAA6E;AAC7E,SAAS,WAAW,CAClB,IAAuD;IAEvD,OAAO,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;AACvC,CAAC;AAED,SAAS,QAAQ,CAAyB,IAA4B,EAAE,EAAU;IAChF,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,gBAAgB,CAAyB,IAAgB,EAAE,EAAU;IAC5E,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE,CAAC;QAC/B,MAAM,OAAO,CACX,EAAE,EACF,+CAA+C,EAC/C,wGAAwG,CACzG,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAgDD,MAAM,mBAAmB,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;AAE5D,MAAM,aAAa,GAAG,wDAAwD,CAAC;AAE/E;;;;GAIG;AACH,SAAgB,YAAY,CAC1B,KAA4B,EAC5B,UAAsB;IAEtB,wFAAwF;IACxF,MAAM,IAAI,GAAc,UAAU,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,UAAU,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,UAAU,CAAC;IACtF,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACtD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;QAClD,MAAM,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,kCAAkC,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,MAAM,GAAG,SAAS,IAAI,CAAC,EAAE,GAAG,CAAC;IACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/B,MAAM,OAAO,CAAC,MAAM,EAAE,mBAAmB,EAAE,2CAA2C,CAAC,CAAC;IAC1F,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;IACxC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QAC7B,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;YAClD,MAAM,OAAO,CAAC,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,EAAE,EAAE,WAAW,EAAE,8BAA8B,CAAC,CAAC;QAC1F,CAAC;QACD,IAAI,IAAI,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;YACtB,MAAM,OAAO,CAAC,GAAG,MAAM,cAAc,EAAE,4BAA4B,EAAE,sCAAsC,CAAC,CAAC;QAC/G,CAAC;QACD,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YACvB,MAAM,OAAO,CAAC,GAAG,MAAM,WAAW,IAAI,CAAC,EAAE,GAAG,EAAE,+BAA+B,EAAE,4BAA4B,CAAC,CAAC;QAC/G,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;IACH,IAAI,IAAI,CAAC,EAAE,EAAE,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/C,MAAM,OAAO,CAAC,MAAM,EAAE,2BAA2B,EAAE,uCAAuC,CAAC,CAAC;IAC9F,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAU,EAAE,KAAa,EAAQ,EAAE;QAC7D,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;YACvB,MAAM,OAAO,CAAC,EAAE,EAAE,kBAAkB,IAAI,QAAQ,KAAK,EAAE,EAAE,+CAA+C,CAAC,CAAC;QAC5G,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,KAA2B,EAAE,EAAU,EAAQ,EAAE;QAClE,KAAK,MAAM,IAAI,IAAI,KAAK,IAAI,EAAE,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,MAAM,OAAO,CAAC,EAAE,EAAE,iBAAiB,IAAI,GAAG,EAAE,mDAAmD,CAAC,CAAC;QAC3H,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,KAA4B,EAAE,EAAU,EAAE,KAAa,EAAQ,EAAE;QAC7E,IAAI,KAAK,KAAK,SAAS,IAAI,OAAO,KAAK,KAAK,UAAU;YAAE,OAAO;QAC/D,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAChD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACtB,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;oBAClE,MAAM,OAAO,CAAC,EAAE,EAAE,GAAG,KAAK,0BAA0B,EAAE,mCAAmC,CAAC,CAAC;gBAC7F,CAAC;gBACD,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;oBACjD,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,KAAK,SAAS,CAAC,CAAC;oBACnC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;oBAC1B,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;wBACzB,MAAM,OAAO,CACX,EAAE,EACF,GAAG,KAAK,kBAAkB,KAAK,OAAO,QAAQ,CAAC,KAAK,CAAC,wBAAwB,GAAG,CAAC,IAAI,EAAE,EACvF,WAAW,GAAG,CAAC,IAAI,2BAA2B,CAC/C,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC5B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;oBAAE,MAAM,OAAO,CAAC,EAAE,EAAE,GAAG,KAAK,sBAAsB,EAAE,8BAA8B,CAAC,CAAC;gBAC3G,KAAK,MAAM,KAAK,IAAI,GAAG;oBAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,KAAK,QAAQ,CAAC,CAAC;YACrE,CAAC;iBAAM,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC/B,IAAI,OAAO,GAAG,KAAK,SAAS;oBAAE,MAAM,OAAO,CAAC,EAAE,EAAE,GAAG,KAAK,4BAA4B,EAAE,sBAAsB,CAAC,CAAC;YAChH,CAAC;iBAAM,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC;gBAClC,MAAM,OAAO,CACX,EAAE,EACF,sBAAsB,IAAI,QAAQ,KAAK,EAAE,EACzC,oCAAoC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACtE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,CAAC,KAAyB,EAAE,EAAU,EAAE,KAAa,EAAQ,EAAE;QAC9E,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,IAAA,wBAAU,EAAC,KAAK,CAAC,EAAE,CAAC;YAC9C,MAAM,OAAO,CAAC,EAAE,EAAE,GAAG,KAAK,kBAAkB,KAAK,yBAAyB,EAAE,aAAa,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC,CAAC;IAEF,6EAA6E;IAC7E,MAAM,MAAM,GAAG,CAAC,IAAqB,EAAE,EAAU,EAAE,KAAa,EAAsB,EAAE;QACtF,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,IAAI,IAAI,KAAK,KAAK;gBAAE,OAAO,SAAS,CAAC;YACrC,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;gBACrB,MAAM,OAAO,CAAC,EAAE,EAAE,GAAG,KAAK,oBAAoB,IAAI,yBAAyB,EAAE,mCAAmC,CAAC,CAAC;YACpH,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,IAAI,MAAM,IAAI,IAAI;YAAE,OAAO,SAAS,CAAC;QACrC,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACrB,MAAM,OAAO,CAAC,EAAE,EAAE,GAAG,KAAK,oBAAoB,IAAI,CAAC,IAAI,yBAAyB,EAAE,mCAAmC,CAAC,CAAC;QACzH,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE;YAAE,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,KAAK,QAAQ,CAAC,CAAC;QACxE,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEF,+EAA+E;IAC/E,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,IAAiC,EAAE,EAAU,EAAE,KAAa,EAAsB,EAAE;QAC9G,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QACzC,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAC5F,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC9C,QAAQ,CAAC,IAAI,CACX,GAAG,EAAE,KAAK,KAAK,mBAAmB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,yDAAyD;gBAC1G,wDAAwD,CAC3D,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,EAAU,EAAE,IAAY,EAAE,MAAiB,EAAE,QAAiC,EAAE,EAAQ,EAAE;QAC3G,KAAK,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAClD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;YAC3B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,CAAC,GAAG,CAAC,QAAQ;oBAAE,MAAM,OAAO,CAAC,EAAE,EAAE,WAAW,IAAI,sBAAsB,KAAK,GAAG,EAAE,mBAAmB,CAAC,CAAC;gBACzG,SAAS;YACX,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,OAAO,CACX,EAAE,EACF,cAAc,KAAK,gBAAgB,IAAI,aAAa,WAAW,CAAC,GAAG,CAAC,SAAS,QAAQ,CAAC,KAAK,CAAC,EAAE,EAC9F,+CAA+C,CAChD,CAAC;YACJ,CAAC;QACH,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;gBACxB,MAAM,OAAO,CAAC,EAAE,EAAE,WAAW,IAAI,uBAAuB,KAAK,GAAG,EAAE,4BAA4B,CAAC,CAAC;YAClG,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,IAAI,EAAE;QAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;IACjF,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC9B,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;IAEtF,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE;QAC9B,MAAM,EAAE,GAAG,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1C,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/D,MAAM,OAAO,CAAC,EAAE,EAAE,kBAAkB,OAAO,CAAC,KAAK,GAAG,EAAE,wCAAwC,CAAC,CAAC;QAClG,CAAC;QACD,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;QACzC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;QACrC,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ;YAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,EAAE,iBAAiB,CAAC,CAAC;QACjG,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QAC7B,MAAM,EAAE,GAAG,GAAG,MAAM,WAAW,IAAI,CAAC,EAAE,GAAG,CAAC;QAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;QAC9C,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;QAE/B,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC5D,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE;gBAAE,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;YACnE,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC;gBAAE,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;YACxE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;YACnC,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC9G,QAAQ,CAAC,IAAI,CACX,GAAG,EAAE,cAAc,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,iDAAiD;oBACzG,6CAA6C,CAChD,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACnC,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC;YAC/B,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;gBACzD,MAAM,OAAO,CAAC,EAAE,EAAE,GAAG,KAAK,0BAA0B,EAAE,4DAA4D,CAAC,CAAC;YACtH,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,KAAK,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,KAAK,OAAO,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;QAClF,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAE1B,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC3B,MAAM,OAAO,CAAC,EAAE,EAAE,mBAAmB,IAAI,CAAC,EAAE,GAAG,EAAE,yCAAyC,CAAC,CAAC;YAC9F,CAAC;YACD,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/D,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAClC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;QAClC,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACnC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClC,MAAM,OAAO,CAAC,EAAE,EAAE,kBAAkB,IAAI,CAAC,IAAI,CAAC,KAAK,WAAW,EAAE,wCAAwC,CAAC,CAAC;YAC5G,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;YACxB,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACnE,MAAM,OAAO,CACX,EAAE,EACF,uBAAuB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,gBAAgB,EAC5D,mDAAmD,CACpD,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,QAAQ,EAAE,CAAC;AACtB,CAAC;AAED,SAAS,YAAY,CAAC,GAAa,EAAE,KAAc;IACjD,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IACzG,OAAO,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED,yGAAyG;AACzG,SAAS,OAAO,CAAC,GAAc,EAAE,KAAc;IAC7C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACvG,MAAM,MAAM,GACV,GAAG,CAAC,IAAI,KAAK,QAAQ;QACnB,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ;QAC3B,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,SAAS;YACtB,CAAC,CAAC,OAAO,KAAK,KAAK,SAAS;YAC5B,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAChH,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAC1B,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAClF,OAAO,OAAO,KAAK,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC;AAChF,CAAC;AAED,SAAS,WAAW,CAAC,GAAa;IAChC,OAAO,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;AAChF,CAAC;AAED,2EAA2E;AAE3E,MAAM,MAAM,GAAqB,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AACpD,MAAM,MAAM,GAAqB,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AACpD,MAAM,OAAO,GAAqB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;AACtD,MAAM,OAAO,GAAqB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;AACtD,MAAM,IAAI,GAAqB,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAEhD;;;;;;;;;;;;;;GAcG;AACH,SAAgB,cAAc,CAAC,UAAsB;IACnD,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,UAAU,GAAG,EAAE,EAAE,GAAG,UAAU,CAAC;IAC1E,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEvC,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAChE,MAAM,QAAQ,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uCAAuC,EAAE,CAAC;IAC1F,MAAM,SAAS,GAAG,MAAM,CAAC;QACvB,MAAM,EAAE,KAAK,CAAC,MAAM;YAClB,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,IAAA,wBAAY,EAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE,oCAAoC,EAAE,CAAC;YAC5G,CAAC,CAAC,SAAS;QACb,KAAK,EAAE,QAAQ,IAAI,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,WAAW,EAAE,2BAA2B,EAAE,CAAC;QACpF,QAAQ,EAAE,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,WAAW,EAAE,iCAAiC,EAAE,CAAC;QAChF,GAAG,MAAM,CAAC,WAAW,CACnB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;YACpC,IAAI;YACJ,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,2BAA2B,IAAI,GAAG,EAAE,CAAC;SACpH,CAAC,CACH;KACF,CAAC,CAAC;IACH,MAAM,YAAY,GAAG;QACnB,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAE;QACtD,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,IAAI,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,WAAW,EAAE,iCAAiC,EAAE,CAAC,EAAE,CAAC;QACpH,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sCAAsC,EAAE,EAAE,CAAC;KAC1F,CAAC;IACF,MAAM,IAAI,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;IACjC,MAAM,UAAU,GAAG,KAAK,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,KAAK,CAClB,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,EAC5D,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,oFAAoF,EAAE,CACtH,CAAC;IACF,MAAM,WAAW,GAAG,EAAE,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACtD,MAAM,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,yDAAyD,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC;QAC5G,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,yCAAyC,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC;QAC5F,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,GAAG,QAAQ,EAAE,WAAW,EAAE,kCAAkC,EAAE,EAAE,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC;QACrI,UAAU,CAAC,MAAM;YACf,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC;YAChH,CAAC,CAAC,SAAS;KACd,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,MAAM,CACrB,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,kCAAkC,CAAC,CAC/H,CAAC;IACF,MAAM,QAAQ,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;IACzE,MAAM,IAAI,GAAG,KAAK,CAAC;QACjB,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qCAAqC,EAAE,EAAE,QAAQ,EAAE,CAAC;QAC3I,QAAQ;YACN,MAAM,CAAC;gBACL,GAAG,QAAQ;gBACX,IAAI,EAAE,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC;gBACzB,OAAO,EAAE,EAAE,GAAG,QAAQ,EAAE,WAAW,EAAE,6CAA6C,EAAE;gBACpF,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;gBACtB,OAAO,EAAE,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,WAAW,EAAE,4DAA4D,EAAE,CAAC;gBAC1G,QAAQ;aACT,CAAC;QACJ,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QACrK,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAChD,MAAM,CAAC;YACL,GAAG,QAAQ;YACX,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;YACpB,EAAE,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;YAClB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;YACzF,MAAM,EAAE,UAAU;SACnB,CAAC,CACH;QACD,MAAM,CAAC;YACL,GAAG,QAAQ;YACX,IAAI,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC;YACtB,IAAI,EAAE,EAAE,GAAG,QAAQ,EAAE,WAAW,EAAE,6DAA6D,EAAE;YACjG,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC;YAC9B,IAAI,EAAE,UAAU;YAChB,QAAQ;SACT,CAAC;QACF,UAAU,CAAC,MAAM;YACf,CAAC,CAAC,MAAM,CAAC;gBACL,GAAG,QAAQ;gBACX,IAAI,EAAE,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC;gBAC3B,IAAI,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,WAAW,EAAE,sCAAsC,EAAE,CAAC,EAAE,CAAC;gBAC/H,IAAI,EAAE,UAAU;aACjB,CAAC;YACJ,CAAC,CAAC,SAAS;QACb,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;KAC/E,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,MAAM,CAAC;QACzB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;QACjD,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,yCAAyC,CAAC,CAAC;QACrE,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC;QACrB,MAAM,EAAE,MAAM;KACf,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;QACZ,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qCAAqC,EAAE;QAC1E,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6DAA6D,EAAE,CAAC;QACnH,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,2CAA2C,CAAC,CAAC;QACtE,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qDAAqD,EAAE,CAAC;QACtG,KAAK,EAAE,MAAM,CAAC,EAAE,GAAG,SAAS,EAAE,WAAW,EAAE,sCAAsC,EAAE,CAAC;QACpF,YAAY,EAAE,QAAQ,IAAI,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,WAAW,EAAE,oCAAoC,EAAE,CAAC;QACpG,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,qEAAqE,CAAC;QACxF,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qEAAqE,CAAC,CAAC;QACtH,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,wCAAwC,CAAC,CAAC;KAClF,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,MAAiB;IACrC,MAAM,IAAI,GAAG,IAAA,wBAAY,EAAC,MAAM,CAAC,CAAC;IAClC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;IACzC,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACjD,IAAI,GAAG,CAAC,QAAQ;YAAE,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;AAChE,CAAC;AAED,SAAS,MAAM,CAAC,MAAyB,EAAE,WAAoB;IAC7D,OAAO,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,IAAI,CAAC,KAAuB,EAAE,WAAoB;IACzD,OAAO,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;AACxD,CAAC;AAED,2FAA2F;AAC3F,SAAS,MAAM,CAAC,UAAwD;IACtE,MAAM,OAAO,GAAqC,EAAE,CAAC;IACrD,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;QAAE,IAAI,MAAM;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;IAC5F,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC;AAC9G,CAAC;AAED,SAAS,KAAK,CACZ,QAA6C,EAC7C,UAAwD,EAAE;IAE1D,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,EAA8B,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;IAC5F,OAAO,OAAO,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;AAC3G,CAAC;AAED,yGAAyG;AACzG,SAAS,MAAM,CAAC,MAAwB;IACtC,OAAO,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;AAClH,CAAC;AAED,2EAA2E;AAE3E,SAAS,OAAO,CAAC,EAAU,EAAE,IAAY,EAAE,GAAW;IACpD,OAAO,IAAI,kCAAsB,CAAC,4BAA4B,EAAE,KAAK,IAAI,KAAK,GAAG,EAAE,CAAC,CAAC;AACvF,CAAC;AAED,SAAS,GAAG,CAAC,MAAc,EAAE,GAAW;IACtC,OAAO,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC3D,CAAC;AAED,uEAAuE;AACvE,SAAS,OAAO,CAAmB,KAAQ;IACzC,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAM,CAAC;AAC3F,CAAC;AAED,0EAA0E;AAC1E,SAAS,UAAU,CAAI,KAAQ;IAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAa,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAM,CAAC;IACrF,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;aAClB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;aAC7B,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAClC,CAAC;IACT,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"FlowSpec.js","sourceRoot":"","sources":["../../../src/core/FlowSpec.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;AAgGH,4BAQC;AASD,wBAeC;AA6ID,oCAuPC;AAyED,wCAsGC;AAhrBD,kDAA4D;AAyB5D,sDAAkD;AAClD,oDAAmD;AACnD,kDAAkD;AA0DlD,2EAA2E;AAE3E;;;;;GAKG;AACH,SAAgB,QAAQ,CAA6B,IAAc;IACjE,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QAChC,MAAM,OAAO,CAAC,SAAS,KAAK,CAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,2CAA2C,CAAC,CAAC;IACxG,CAAC;IACD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IACjC,MAAM,IAAI,GAA6B,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;IACnF,OAAO,IAAkB,CAAC;AAC5B,CAAC;AAED,SAAS,YAAY,CAAC,IAAc;IAClC,+GAA+G;IAC/G,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;IAC/B,OAAO,IAAI,CAAC;AACd,CAAC;AAED,uGAAuG;AACvG,SAAgB,MAAM,CAAyB,IAAgB;IAC7D,MAAM,EAAE,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,SAAS,IAAI,CAAC,EAAE,MAAM,KAAK,EAAE,CAAC;IAC5D,OAAO,OAAO,CAAW;QACvB,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QACjF,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;QACxC,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QAC1E,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,EAAE,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;QAClG,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAAyB,OAAsB,EAAE,EAAU;IAC/E,OAAO,OAAO,CAAc,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;AACpF,CAAC;AAED,SAAS,iBAAiB,CAAyB,GAAsB,EAAE,EAAU;IACnF,OAAO,OAAO,CAAkB,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,cAAc,CAAyB,QAAoC,EAAE,EAAU;IAC9F,OAAO,QAAQ,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CACjC,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CACpG,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAyB,IAAgB,EAAE,EAAU;IACtE,MAAM,IAAI,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;IAC9E,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QAClB,OAAO,OAAO,CAAW,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACxG,CAAC;IACD,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QACjB,OAAO,OAAO,CAAW,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACvG,CAAC;IACD,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;QACnB,OAAO,WAAW,CAAC,IAAI,CAAC;YACtB,CAAC,CAAC,OAAO,CAAW;gBAChB,GAAG,IAAI;gBACP,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;aAC5C,CAAC;YACJ,CAAC,CAAC,OAAO,CAAW,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1F,CAAC;IACD,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QACjB,OAAO,OAAO,CAAW,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAChH,CAAC;IACD,MAAM,IAAI,GAAG;QACX,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,QAAQ,EAAE,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;QAC3C,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC;KACrG,CAAC;IACF,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,OAAO,CAAW,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;IAC9G,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,OAAO,CAAC,EAAE,EAAE,gCAAgC,EAAE,4DAA4D,CAAC,CAAC;IACpH,CAAC;IACD,OAAO,OAAO,CAAW,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;AACtF,CAAC;AAED,6EAA6E;AAC7E,SAAS,WAAW,CAClB,IAAuD;IAEvD,OAAO,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;AACvC,CAAC;AAED,SAAS,QAAQ,CAAyB,IAA4B,EAAE,EAAU;IAChF,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,gBAAgB,CAAyB,IAAgB,EAAE,EAAU;IAC5E,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE,CAAC;QAC/B,MAAM,OAAO,CACX,EAAE,EACF,+CAA+C,EAC/C,wGAAwG,CACzG,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAmDD,MAAM,mBAAmB,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;AAE5D,MAAM,aAAa,GAAG,wDAAwD,CAAC;AAE/E,kEAAkE;AAClE,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAU,CAAC;AAE1E,2DAA2D;AAC3D,MAAM,SAAS,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAU,CAAC;AAE5E;;;;GAIG;AACH,SAAgB,YAAY,CAC1B,KAA4B,EAC5B,UAAsB;IAEtB,wFAAwF;IACxF,MAAM,IAAI,GAAc,UAAU,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,UAAU,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,UAAU,CAAC;IACtF,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACtD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;QAClD,MAAM,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,kCAAkC,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,MAAM,GAAG,SAAS,IAAI,CAAC,EAAE,GAAG,CAAC;IACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/B,MAAM,OAAO,CAAC,MAAM,EAAE,mBAAmB,EAAE,2CAA2C,CAAC,CAAC;IAC1F,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;IACxC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QAC7B,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;YAClD,MAAM,OAAO,CAAC,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,EAAE,EAAE,WAAW,EAAE,8BAA8B,CAAC,CAAC;QAC1F,CAAC;QACD,IAAI,IAAI,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;YACtB,MAAM,OAAO,CAAC,GAAG,MAAM,cAAc,EAAE,4BAA4B,EAAE,sCAAsC,CAAC,CAAC;QAC/G,CAAC;QACD,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YACvB,MAAM,OAAO,CAAC,GAAG,MAAM,WAAW,IAAI,CAAC,EAAE,GAAG,EAAE,+BAA+B,EAAE,4BAA4B,CAAC,CAAC;QAC/G,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;IACH,IAAI,IAAI,CAAC,EAAE,EAAE,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/C,MAAM,OAAO,CAAC,MAAM,EAAE,2BAA2B,EAAE,uCAAuC,CAAC,CAAC;IAC9F,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAU,EAAE,KAAa,EAAQ,EAAE;QAC7D,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;YACvB,MAAM,OAAO,CAAC,EAAE,EAAE,kBAAkB,IAAI,QAAQ,KAAK,EAAE,EAAE,+CAA+C,CAAC,CAAC;QAC5G,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,KAA2B,EAAE,EAAU,EAAQ,EAAE;QAClE,KAAK,MAAM,IAAI,IAAI,KAAK,IAAI,EAAE,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,MAAM,OAAO,CAAC,EAAE,EAAE,iBAAiB,IAAI,GAAG,EAAE,mDAAmD,CAAC,CAAC;QAC3H,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,KAA4B,EAAE,EAAU,EAAE,KAAa,EAAQ,EAAE;QAC7E,IAAI,KAAK,KAAK,SAAS,IAAI,OAAO,KAAK,KAAK,UAAU;YAAE,OAAO;QAC/D,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAChD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACtB,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;oBAClE,MAAM,OAAO,CAAC,EAAE,EAAE,GAAG,KAAK,0BAA0B,EAAE,mCAAmC,CAAC,CAAC;gBAC7F,CAAC;gBACD,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;oBACjD,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,KAAK,SAAS,CAAC,CAAC;oBACnC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;oBAC1B,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;wBACzB,MAAM,OAAO,CACX,EAAE,EACF,GAAG,KAAK,kBAAkB,KAAK,OAAO,QAAQ,CAAC,KAAK,CAAC,wBAAwB,GAAG,CAAC,IAAI,EAAE,EACvF,WAAW,GAAG,CAAC,IAAI,2BAA2B,CAC/C,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC5B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;oBAAE,MAAM,OAAO,CAAC,EAAE,EAAE,GAAG,KAAK,sBAAsB,EAAE,8BAA8B,CAAC,CAAC;gBAC3G,KAAK,MAAM,KAAK,IAAI,GAAG;oBAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,KAAK,QAAQ,CAAC,CAAC;YACrE,CAAC;iBAAM,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC/B,IAAI,OAAO,GAAG,KAAK,SAAS;oBAAE,MAAM,OAAO,CAAC,EAAE,EAAE,GAAG,KAAK,4BAA4B,EAAE,sBAAsB,CAAC,CAAC;YAChH,CAAC;iBAAM,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC;gBAClC,MAAM,OAAO,CACX,EAAE,EACF,sBAAsB,IAAI,QAAQ,KAAK,EAAE,EACzC,oCAAoC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACtE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,CAAC,KAAyB,EAAE,EAAU,EAAE,KAAa,EAAQ,EAAE;QAC9E,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,IAAA,wBAAU,EAAC,KAAK,CAAC,EAAE,CAAC;YAC9C,MAAM,OAAO,CAAC,EAAE,EAAE,GAAG,KAAK,kBAAkB,KAAK,yBAAyB,EAAE,aAAa,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC,CAAC;IAEF,6EAA6E;IAC7E,MAAM,MAAM,GAAG,CAAC,IAAqB,EAAE,EAAU,EAAE,KAAa,EAAsB,EAAE;QACtF,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,IAAI,IAAI,KAAK,KAAK;gBAAE,OAAO,SAAS,CAAC;YACrC,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;gBACrB,MAAM,OAAO,CAAC,EAAE,EAAE,GAAG,KAAK,oBAAoB,IAAI,yBAAyB,EAAE,mCAAmC,CAAC,CAAC;YACpH,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,IAAI,MAAM,IAAI,IAAI;YAAE,OAAO,SAAS,CAAC;QACrC,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACrB,MAAM,OAAO,CAAC,EAAE,EAAE,GAAG,KAAK,oBAAoB,IAAI,CAAC,IAAI,yBAAyB,EAAE,mCAAmC,CAAC,CAAC;QACzH,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE;YAAE,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,KAAK,QAAQ,CAAC,CAAC;QACxE,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEF,+EAA+E;IAC/E,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,IAAiC,EAAE,EAAU,EAAE,KAAa,EAAsB,EAAE;QAC9G,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QACzC,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAC5F,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC9C,QAAQ,CAAC,IAAI,CACX,GAAG,EAAE,KAAK,KAAK,mBAAmB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,yDAAyD;gBAC1G,wDAAwD,CAC3D,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,EAAU,EAAE,IAAY,EAAE,MAAiB,EAAE,QAAiC,EAAE,EAAQ,EAAE;QAC3G,KAAK,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAClD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;YAC3B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,CAAC,GAAG,CAAC,QAAQ;oBAAE,MAAM,OAAO,CAAC,EAAE,EAAE,WAAW,IAAI,sBAAsB,KAAK,GAAG,EAAE,mBAAmB,CAAC,CAAC;gBACzG,SAAS;YACX,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBACpD,MAAM,OAAO,CAAC,EAAE,EAAE,cAAc,KAAK,gBAAgB,IAAI,aAAa,QAAQ,SAAS,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC;YACrG,CAAC;QACH,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;gBACxB,MAAM,OAAO,CAAC,EAAE,EAAE,WAAW,IAAI,uBAAuB,KAAK,GAAG,EAAE,4BAA4B,CAAC,CAAC;YAClG,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,IAAI,EAAE;QAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;IACjF,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC9B,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;IAEtF,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE;QAC9B,MAAM,EAAE,GAAG,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1C,2EAA2E;QAC3E,0EAA0E;QAC1E,6EAA6E;QAC7E,8DAA8D;QAC9D,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,EAAE,CAAC;YAC7D,MAAM,OAAO,CACX,EAAE,EACF,uBAAuB,EACvB,uBAAuB,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;gBAC5E,mDAAmD,CACtD,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/D,MAAM,OAAO,CAAC,EAAE,EAAE,kBAAkB,OAAO,CAAC,KAAK,GAAG,EAAE,wCAAwC,CAAC,CAAC;QAClG,CAAC;QACD,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;QACzC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;QACrC,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ;YAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,EAAE,iBAAiB,CAAC,CAAC;QACjG,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QAC3B,uEAAuE;QACvE,sEAAsE;QACtE,6DAA6D;QAC7D,KAAK,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,SAAS,CAAU,EAAE,CAAC;YAClD,MAAM,OAAO,GAAyB,OAAO,CAAC,GAAG,CAAC,CAAC;YACnD,IAAI,CAAC,OAAO,EAAE,MAAM;gBAAE,SAAS;YAC/B,IAAI,IAAA,yBAAY,EAAC,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;gBAAE,SAAS;YACtD,MAAM,OAAO,CACX,EAAE,EACF,SAAS,GAAG,uDAAuD,EACnE,+FACE,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,wCAAwC,CAAC,CAAC,CAAC,EACjE,GAAG,CACJ,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QAC7B,MAAM,EAAE,GAAG,GAAG,MAAM,WAAW,IAAI,CAAC,EAAE,GAAG,CAAC;QAC1C,yEAAyE;QACzE,0EAA0E;QAC1E,yEAAyE;QACzE,uCAAuC;QACvC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,EAAE,CAAC;YACtD,MAAM,OAAO,CACX,EAAE,EACF,cAAc,EACd,iGAAiG,CAClG,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;QAC9C,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;QAE/B,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC5D,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE;gBAAE,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;YACnE,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC;gBAAE,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;YACxE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;YACnC,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC9G,QAAQ,CAAC,IAAI,CACX,GAAG,EAAE,cAAc,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,iDAAiD;oBACzG,6CAA6C,CAChD,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACnC,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC;YAC/B,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;gBACzD,MAAM,OAAO,CAAC,EAAE,EAAE,GAAG,KAAK,0BAA0B,EAAE,4DAA4D,CAAC,CAAC;YACtH,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,KAAK,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,KAAK,OAAO,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;QAClF,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAE1B,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC3B,MAAM,OAAO,CAAC,EAAE,EAAE,mBAAmB,IAAI,CAAC,EAAE,GAAG,EAAE,yCAAyC,CAAC,CAAC;YAC9F,CAAC;YACD,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/D,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAClC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;QAClC,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACnC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClC,MAAM,OAAO,CAAC,EAAE,EAAE,kBAAkB,IAAI,CAAC,IAAI,CAAC,KAAK,WAAW,EAAE,wCAAwC,CAAC,CAAC;YAC5G,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;YACxB,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACnE,MAAM,OAAO,CACX,EAAE,EACF,uBAAuB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,gBAAgB,EAC5D,mDAAmD,CACpD,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,QAAQ,EAAE,CAAC;AACtB,CAAC;AAED,SAAS,YAAY,CAAC,GAAa,EAAE,KAAc;IACjD,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IACzG,OAAO,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED,yGAAyG;AACzG,SAAS,OAAO,CAAC,GAAc,EAAE,KAAc;IAC7C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACvG,MAAM,MAAM,GACV,GAAG,CAAC,IAAI,KAAK,QAAQ;QACnB,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ;QAC3B,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,SAAS;YACtB,CAAC,CAAC,OAAO,KAAK,KAAK,SAAS;YAC5B,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAChH,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAC1B,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAClF,OAAO,OAAO,KAAK,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC;AAED;;;GAGG;AACH,SAAS,QAAQ,CAAC,GAAa,EAAE,KAAc;IAC7C,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;IACtD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,QAAQ,EAAE,GAAG,MAAM,CAAC;IAC9C,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC7E,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxG,IAAI,CAAC,OAAO,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;QAC3B,OAAO,EAAE,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,+CAA+C,EAAE,CAAC;IACpH,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAC/C,OAAO,EAAE,QAAQ,EAAE,UAAU,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,+BAA+B,EAAE,CAAC;AAC7H,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC;AAChF,CAAC;AAED,SAAS,WAAW,CAAC,GAAa;IAChC,OAAO,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;AACpG,CAAC;AAED,kHAAkH;AAClH,SAAS,OAAO,CAAC,IAAY;IAC3B,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;AAC5C,CAAC;AAED,2EAA2E;AAE3E,MAAM,MAAM,GAAqB,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AACpD,MAAM,MAAM,GAAqB,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AACpD,MAAM,OAAO,GAAqB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;AACtD,MAAM,OAAO,GAAqB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;AACtD,MAAM,IAAI,GAAqB,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAEhD;;;;;;;;;;;;;;GAcG;AACH,SAAgB,cAAc,CAAC,UAAsB;IACnD,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,UAAU,GAAG,EAAE,EAAE,GAAG,UAAU,CAAC;IAC1E,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEvC,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAChE,MAAM,QAAQ,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uCAAuC,EAAE,CAAC;IAC1F,MAAM,SAAS,GAAG,MAAM,CAAC;QACvB,MAAM,EAAE,KAAK,CAAC,MAAM;YAClB,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,IAAA,wBAAY,EAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE,oCAAoC,EAAE,CAAC;YAC5G,CAAC,CAAC,SAAS;QACb,KAAK,EAAE,QAAQ,IAAI,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,WAAW,EAAE,2BAA2B,EAAE,CAAC;QACpF,QAAQ,EAAE,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,WAAW,EAAE,iCAAiC,EAAE,CAAC;QAChF,GAAG,MAAM,CAAC,WAAW,CACnB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;YACpC,IAAI;YACJ,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,2BAA2B,IAAI,GAAG,EAAE,CAAC;SACpH,CAAC,CACH;KACF,CAAC,CAAC;IACH,MAAM,YAAY,GAAG;QACnB,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAE;QACtD,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,IAAI,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,WAAW,EAAE,iCAAiC,EAAE,CAAC,EAAE,CAAC;QACpH,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sCAAsC,EAAE,EAAE,CAAC;KAC1F,CAAC;IACF,MAAM,IAAI,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;IACjC,MAAM,UAAU,GAAG,KAAK,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,KAAK,CAClB,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,EAC5D,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,oFAAoF,EAAE,CACtH,CAAC;IACF,MAAM,WAAW,GAAG,EAAE,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACtD,MAAM,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,yDAAyD,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC;QAC5G,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,yCAAyC,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC;QAC5F,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,GAAG,QAAQ,EAAE,WAAW,EAAE,kCAAkC,EAAE,EAAE,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC;QACrI,UAAU,CAAC,MAAM;YACf,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC;YAChH,CAAC,CAAC,SAAS;KACd,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,MAAM,CACrB,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,kCAAkC,CAAC,CAC/H,CAAC;IACF,MAAM,QAAQ,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;IACzE,MAAM,IAAI,GAAG,KAAK,CAAC;QACjB,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qCAAqC,EAAE,EAAE,QAAQ,EAAE,CAAC;QAC3I,QAAQ;YACN,MAAM,CAAC;gBACL,GAAG,QAAQ;gBACX,IAAI,EAAE,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC;gBACzB,OAAO,EAAE,EAAE,GAAG,QAAQ,EAAE,WAAW,EAAE,6CAA6C,EAAE;gBACpF,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;gBACtB,OAAO,EAAE,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,WAAW,EAAE,4DAA4D,EAAE,CAAC;gBAC1G,QAAQ;aACT,CAAC;QACJ,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QACrK,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAChD,MAAM,CAAC;YACL,GAAG,QAAQ;YACX,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;YACpB,EAAE,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;YAClB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;YACzF,MAAM,EAAE,UAAU;SACnB,CAAC,CACH;QACD,MAAM,CAAC;YACL,GAAG,QAAQ;YACX,IAAI,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC;YACtB,IAAI,EAAE,EAAE,GAAG,QAAQ,EAAE,WAAW,EAAE,6DAA6D,EAAE;YACjG,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC;YAC9B,IAAI,EAAE,UAAU;YAChB,QAAQ;SACT,CAAC;QACF,UAAU,CAAC,MAAM;YACf,CAAC,CAAC,MAAM,CAAC;gBACL,GAAG,QAAQ;gBACX,IAAI,EAAE,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC;gBAC3B,IAAI,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,WAAW,EAAE,sCAAsC,EAAE,CAAC,EAAE,CAAC;gBAC/H,IAAI,EAAE,UAAU;aACjB,CAAC;YACJ,CAAC,CAAC,SAAS;QACb,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;KAC/E,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,MAAM,CAAC;QACzB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;QACjD,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,yCAAyC,CAAC,CAAC;QACrE,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC;QACrB,MAAM,EAAE,MAAM;KACf,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;QACZ,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qCAAqC,EAAE;QAC1E,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6DAA6D,EAAE,CAAC;QACnH,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,2CAA2C,CAAC,CAAC;QACtE,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qDAAqD,EAAE,CAAC;QACtG,KAAK,EAAE,MAAM,CAAC,EAAE,GAAG,SAAS,EAAE,WAAW,EAAE,sCAAsC,EAAE,CAAC;QACpF,YAAY,EAAE,QAAQ,IAAI,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,WAAW,EAAE,oCAAoC,EAAE,CAAC;QACpG,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,qEAAqE,CAAC;QACxF,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qEAAqE,CAAC,CAAC;QACtH,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,wCAAwC,CAAC,CAAC;KAClF,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,MAAiB;IACrC,MAAM,IAAI,GAAG,IAAA,wBAAY,EAAC,MAAM,CAAC,CAAC;IAClC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;IACzC,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACjD,IAAI,GAAG,CAAC,QAAQ;YAAE,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;AAChE,CAAC;AAED,SAAS,MAAM,CAAC,MAAyB,EAAE,WAAoB;IAC7D,OAAO,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,IAAI,CAAC,KAAuB,EAAE,WAAoB;IACzD,OAAO,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;AACxD,CAAC;AAED,2FAA2F;AAC3F,SAAS,MAAM,CAAC,UAAwD;IACtE,MAAM,OAAO,GAAqC,EAAE,CAAC;IACrD,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;QAAE,IAAI,MAAM;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;IAC5F,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC;AAC9G,CAAC;AAED,SAAS,KAAK,CACZ,QAA6C,EAC7C,UAAwD,EAAE;IAE1D,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,EAA8B,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;IAC5F,OAAO,OAAO,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;AAC3G,CAAC;AAED,yGAAyG;AACzG,SAAS,MAAM,CAAC,MAAwB;IACtC,OAAO,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;AAClH,CAAC;AAED,2EAA2E;AAE3E,SAAS,OAAO,CAAC,EAAU,EAAE,IAAY,EAAE,GAAW;IACpD,OAAO,IAAI,kCAAsB,CAAC,4BAA4B,EAAE,KAAK,IAAI,KAAK,GAAG,EAAE,CAAC,CAAC;AACvF,CAAC;AAED,SAAS,GAAG,CAAC,MAAc,EAAE,GAAW;IACtC,OAAO,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC3D,CAAC;AAED,uEAAuE;AACvE,SAAS,OAAO,CAAmB,KAAQ;IACzC,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAM,CAAC;AAC3F,CAAC;AAED,0EAA0E;AAC1E,SAAS,UAAU,CAAI,KAAQ;IAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAa,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAM,CAAC;IACrF,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;aAClB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;aAC7B,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAClC,CAAC;IACT,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Prompt.d.ts","sourceRoot":"","sources":["../../../src/core/Prompt.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE9D,OAAO,EAAU,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAElE,wBAAgB,YAAY,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,MAAM,CAE/E;AAED,6CAA6C;AAC7C,wBAAgB,eAAe,CAC7B,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC,EACxD,KAAK,EAAE,aAAa,GACnB,MAAM,CAKR;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,eAAe,CAAC,EAC1E,KAAK,EAAE,aAAa,GACnB;IAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAMlD;AAMD,yDAAyD;AACzD,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAG9F;AA6BD,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,OAAO;IACxD,mDAAmD;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;CAC5B;AAED,mEAAmE;AACnE,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,aAAa,GAAG,MAAM,GAAG,IAAI,CAY/G;AAED,wDAAwD;AACxD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,IAAI,CAQ3G;AAED,mFAAmF;AACnF,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,GAAG,MAAM,CAIjE;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EAAE,EACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EAChC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EACrC,KAAK,EAAE,aAAa,GACnB,MAAM,GAAG,IAAI,CAaf"}
1
+ {"version":3,"file":"Prompt.d.ts","sourceRoot":"","sources":["../../../src/core/Prompt.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG9D,OAAO,EAAU,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAElE,wBAAgB,YAAY,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,MAAM,CAE/E;AAED,6CAA6C;AAC7C,wBAAgB,eAAe,CAC7B,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC,EACxD,KAAK,EAAE,aAAa,GACnB,MAAM,CAKR;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,eAAe,CAAC,EAC1E,KAAK,EAAE,aAAa,GACnB;IAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAMlD;AAMD,yDAAyD;AACzD,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAG9F;AA6BD,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,OAAO;IACxD,mDAAmD;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;CAC5B;AAED,mEAAmE;AACnE,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,aAAa,GAAG,MAAM,GAAG,IAAI,CAiB/G;AAED,wDAAwD;AACxD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,IAAI,CAQ3G;AAED,mFAAmF;AACnF,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,GAAG,MAAM,CAIjE;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EAAE,EACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EAChC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EACrC,KAAK,EAAE,aAAa,GACnB,MAAM,GAAG,IAAI,CAaf"}
@@ -16,6 +16,7 @@ exports.instructionsSection = instructionsSection;
16
16
  exports.factsSection = factsSection;
17
17
  exports.describeField = describeField;
18
18
  exports.pendingSection = pendingSection;
19
+ const phrases_js_1 = require("../utils/phrases.js");
19
20
  const schema_js_1 = require("../utils/schema.js");
20
21
  const template_js_1 = require("../utils/template.js");
21
22
  function joinSections(...parts) {
@@ -97,7 +98,12 @@ function instructionsSection(groups, scope) {
97
98
  if (!text)
98
99
  continue;
99
100
  const when = item.when === undefined ? [] : Array.isArray(item.when) ? item.when : [item.when];
100
- const condition = when.length ? ` (apply only when: ${when.join(" OR ")})` : "";
101
+ const { counts, excludes } = (0, phrases_js_1.splitPhrases)(when);
102
+ const clauses = [
103
+ ...(counts.length ? [`apply only when: ${counts.join(" OR ")}`] : []),
104
+ ...(excludes.length ? [`never when: ${excludes.join(" OR ")}`] : []),
105
+ ];
106
+ const condition = clauses.length ? ` (${clauses.join("; ")})` : "";
101
107
  lines.push(`- [${item.kind ?? "should"}] ${group.caption} ${text}${condition}`);
102
108
  }
103
109
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Prompt.js","sourceRoot":"","sources":["../../../src/core/Prompt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Prompt.js","sourceRoot":"","sources":["../../../src/core/Prompt.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@
7
7
  *
8
8
  * begin ─▶ understandRequest ─(Understand)─▶ decide ─▶ advance ─(Speak)─▶ settle ─▶ finish
9
9
  */
10
- import type { AgentOptions, TurnInput, TurnResult } from "../types/agent.js";
10
+ import type { AgentOptions, PendingWakesInput, ScheduleEntry, TurnBase, TurnInput, TurnResult } from "../types/agent.js";
11
11
  import type { TokenUsage } from "../types/ai.js";
12
12
  import type { Run, Session, StepOutcome } from "../types/session.js";
13
13
  import type { IdleRequest, InputKind, SpeakOutcome, SpeakRequest, TalkRequest, UnderstandRequest, Understanding } from "./contracts.js";
@@ -35,7 +35,7 @@ export type What = {
35
35
  };
36
36
  /** The mutable per-turn state. `session` is a deep copy; the input is never touched. */
37
37
  export interface Turn<C = unknown, D = unknown> {
38
- readonly input: TurnInput<C, D>;
38
+ readonly input: TurnBase<C, D>;
39
39
  readonly what: What;
40
40
  readonly kind: InputKind;
41
41
  /** Message id, wake key, event key or start key: the trigger key of runs started this turn. */
@@ -81,6 +81,10 @@ export declare class Runner<C = unknown, D = unknown> {
81
81
  private readonly flows;
82
82
  constructor(options: AgentOptions<C, D>);
83
83
  begin(input: TurnInput<C, D>): Turn<C, D>;
84
+ private now;
85
+ private open;
86
+ /** Every wake the session waits on: each parked run's own, then each silence flow's since the assistant last spoke. */
87
+ pendingWakes(input: PendingWakesInput<C, D>): ScheduleEntry[];
84
88
  private ingest;
85
89
  /** The lead wrote: every run parked on a timer `wait` with `else` takes `else`, oldest first. */
86
90
  private resolveReplyWaits;
@@ -113,6 +117,11 @@ export declare class Runner<C = unknown, D = unknown> {
113
117
  private floorRun;
114
118
  /** `message` flows with a non-empty list passing `if` and `repeat`, in flow order. */
115
119
  private eligibleMessageFlows;
120
+ /**
121
+ * The lone eligible flow starts without a score only when a low score would have nowhere
122
+ * else to send the message: no catch-all passes and the idle speaker is silent (S9).
123
+ */
124
+ private startsUnscored;
116
125
  private messageFlows;
117
126
  /** Every `mention` flow with its trigger, in flow order. `if` and `repeat` are judged at start, when `extract` is in hand. */
118
127
  private mentionFlows;
@@ -153,8 +162,10 @@ export declare class Runner<C = unknown, D = unknown> {
153
162
  private deferTalk;
154
163
  /** When to try again, or `null` when trying again cannot help. */
155
164
  private retryAt;
156
- /** The assistant spoke last: every silence flow passing `if` and `repeat` gets a wake. */
165
+ /** The assistant spoke this turn: its silence wakes replace the ones its last words set. */
157
166
  private armSilence;
167
+ /** The assistant spoke last: every silence flow passing `if` and `repeat` gets a wake. */
168
+ private silenceWakes;
158
169
  finish(turn: Turn<C, D>): TurnResult<D>;
159
170
  }
160
171
  //# sourceMappingURL=Runner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Runner.d.ts","sourceRoot":"","sources":["../../../src/core/Runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Runner.d.ts","sourceRoot":"","sources":["../../../src/core/Runner.ts"],"names":[],"mappings":"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"}
@@ -103,11 +103,24 @@ class Runner {
103
103
  }
104
104
  // ── Load + Ingest ─────────────────────────────────────────────────────
105
105
  begin(input) {
106
- const now = (this.options.clock ?? (() => new Date()))();
106
+ const now = this.now();
107
+ const turn = this.open(input, describe(input, now.toISOString()), now);
108
+ if (turn.what.kind === "wake" && !input.session) {
109
+ this.ignore(turn, "no-session", turn.what.key);
110
+ return turn;
111
+ }
112
+ turn.ingesting = true;
113
+ this.ingest(turn);
114
+ turn.ingesting = false;
115
+ return turn;
116
+ }
117
+ now() {
118
+ return (this.options.clock ?? (() => new Date()))();
119
+ }
120
+ open(input, what, now) {
107
121
  const nowIso = now.toISOString();
108
- const what = describe(input, nowIso);
109
122
  const silenced = typeof input.silenced === "string" ? input.silenced : input.silenced?.reason;
110
- const turn = {
123
+ return {
111
124
  input,
112
125
  what,
113
126
  kind: what.kind,
@@ -136,14 +149,14 @@ class Runner {
136
149
  speakDone: false,
137
150
  queue: [],
138
151
  };
139
- if (what.kind === "wake" && !input.session) {
140
- this.ignore(turn, "no-session", what.key);
141
- return turn;
142
- }
143
- turn.ingesting = true;
144
- this.ingest(turn);
145
- turn.ingesting = false;
146
- return turn;
152
+ }
153
+ /** Every wake the session waits on: each parked run's own, then each silence flow's since the assistant last spoke. */
154
+ pendingWakes(input) {
155
+ // No input arrives, so nothing reads `what`: the inert wake shape only fills the field.
156
+ const turn = this.open({ ...input, sessionId: input.session.id }, { kind: "wake", key: "" }, this.now());
157
+ // `park` always sets both; the type leaves them optional, so a hand-built blob without them has no wake to give.
158
+ const parked = turn.session.runs.flatMap(({ status, waiting }) => status === "waiting" && waiting?.key && waiting.until ? [{ key: waiting.key, at: new Date(waiting.until) }] : []);
159
+ return [...parked, ...this.silenceWakes(turn)];
147
160
  }
148
161
  ingest(turn) {
149
162
  const { what, session } = turn;
@@ -348,9 +361,11 @@ class Runner {
348
361
  }
349
362
  session.runs.push(run);
350
363
  turn.started.push({ runId: run.id, flowId: flow.id, anchor, dedupeKey });
351
- const after = opts.trigger && "event" in opts.trigger ? opts.trigger.after : undefined;
352
- if (after) {
353
- const at = this.snap(turn, new Date(turn.now.getTime() + (0, duration_js_1.parseDuration)(after)), opts.trigger && "event" in opts.trigger ? opts.trigger.businessHours : undefined);
364
+ const eventTrigger = opts.trigger && "event" in opts.trigger ? opts.trigger : undefined;
365
+ const after = eventTrigger?.after;
366
+ const at = this.snap(turn, new Date(turn.now.getTime() + (after ? (0, duration_js_1.parseDuration)(after) : 0)), eventTrigger?.businessHours);
367
+ // With no `after`, only a closed hour parks the start: inside working hours the snap returns now.
368
+ if (after || at.getTime() > turn.now.getTime()) {
354
369
  this.park(turn, run, { kind: "timer", key: `${run.id}:start:${at.getTime()}` }, at);
355
370
  this.outcome(turn, run, { kind: "wait", status: "waiting", code: "awaiting-trigger", until: at.toISOString() });
356
371
  }
@@ -439,8 +454,7 @@ class Runner {
439
454
  const floorRun = this.floorRun(turn);
440
455
  const floorFlow = floorRun && this.flows.get(floorRun.flowId);
441
456
  const eligible = this.eligibleMessageFlows(turn);
442
- // Exactly one eligible message flow and no floor: it starts without scoring (S9).
443
- const messageFlows = !floorRun && eligible.length === 1 ? [] : eligible;
457
+ const messageFlows = !floorRun && this.startsUnscored(turn, eligible) ? [] : eligible;
444
458
  const mentionFlows = this.mentionFlows()
445
459
  .filter(({ flow, trigger }) => trigger.mention.length > 0 && this.repeatAllows(turn, flow, trigger, turn.triggerKey))
446
460
  .map(({ flow }) => flow);
@@ -494,6 +508,13 @@ class Runner {
494
508
  eligibleMessageFlows(turn) {
495
509
  return this.messageFlows(turn, (list) => list.length > 0);
496
510
  }
511
+ /**
512
+ * The lone eligible flow starts without a score only when a low score would have nowhere
513
+ * else to send the message: no catch-all passes and the idle speaker is silent (S9).
514
+ */
515
+ startsUnscored(turn, eligible) {
516
+ return eligible.length === 1 && this.options.idle === "silent" && this.messageFlows(turn, (list) => list.length === 0).length === 0;
517
+ }
497
518
  messageFlows(turn, accept) {
498
519
  const out = [];
499
520
  for (const flow of this.flows.values()) {
@@ -538,7 +559,7 @@ class Runner {
538
559
  if (top && top.score >= current + ROUTE_STICKY && top.score >= ROUTE_MIN)
539
560
  route = top.flow;
540
561
  }
541
- else if (eligible.length === 1) {
562
+ else if (this.startsUnscored(turn, eligible)) {
542
563
  route = eligible[0];
543
564
  }
544
565
  else {
@@ -1084,16 +1105,23 @@ class Runner {
1084
1105
  const reset = deferred.resetAtMs;
1085
1106
  return new Date(reset !== undefined && reset > ladder ? reset : ladder);
1086
1107
  }
1087
- /** The assistant spoke last: every silence flow passing `if` and `repeat` gets a wake. */
1108
+ /** The assistant spoke this turn: its silence wakes replace the ones its last words set. */
1088
1109
  armSilence(turn) {
1110
+ const previous = turn.original?.lastAssistantAt;
1111
+ if (turn.session.lastAssistantAt === previous)
1112
+ return;
1113
+ turn.schedule.push(...this.silenceWakes(turn, previous));
1114
+ }
1115
+ /** The assistant spoke last: every silence flow passing `if` and `repeat` gets a wake. */
1116
+ silenceWakes(turn, previous) {
1089
1117
  const { session } = turn;
1090
1118
  const { lastAssistantAt, lastUserAt } = session;
1091
- if (!lastAssistantAt || lastAssistantAt === turn.original?.lastAssistantAt)
1092
- return;
1119
+ if (!lastAssistantAt)
1120
+ return [];
1093
1121
  if (lastUserAt && Date.parse(lastUserAt) > Date.parse(lastAssistantAt))
1094
- return;
1122
+ return [];
1095
1123
  const ms = Date.parse(lastAssistantAt);
1096
- const previous = turn.original?.lastAssistantAt;
1124
+ const wakes = [];
1097
1125
  for (const flow of this.flows.values()) {
1098
1126
  const trigger = (flow.on ?? []).find((t) => "silence" in t);
1099
1127
  if (!trigger)
@@ -1104,12 +1132,13 @@ class Runner {
1104
1132
  if (!this.repeatAllows(turn, flow, trigger, key))
1105
1133
  continue;
1106
1134
  const at = this.snap(turn, new Date(ms + (0, duration_js_1.parseDuration)(trigger.silence)), trigger.businessHours);
1107
- turn.schedule.push({
1135
+ wakes.push({
1108
1136
  key: `silence:${flow.id}:${session.id}:${ms}`,
1109
1137
  at,
1110
1138
  ...(previous ? { replaces: `silence:${flow.id}:${session.id}:${Date.parse(previous)}` } : {}),
1111
1139
  });
1112
1140
  }
1141
+ return wakes;
1113
1142
  }
1114
1143
  // ── Return (design §4.8) ──────────────────────────────────────────────
1115
1144
  finish(turn) {