@orion-agents/orion-code 0.1.8 → 0.1.9

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 (232) hide show
  1. package/CHANGELOG.md +445 -0
  2. package/README.md +15 -6
  3. package/README.zh-CN.md +26 -7
  4. package/dist/agents/coordinator.d.ts.map +1 -1
  5. package/dist/agents/coordinator.js +49 -9
  6. package/dist/agents/coordinator.js.map +1 -1
  7. package/dist/agents/fork.d.ts +5 -1
  8. package/dist/agents/fork.d.ts.map +1 -1
  9. package/dist/agents/fork.js +9 -10
  10. package/dist/agents/fork.js.map +1 -1
  11. package/dist/agents/worker-pool.d.ts.map +1 -1
  12. package/dist/agents/worker-pool.js +8 -3
  13. package/dist/agents/worker-pool.js.map +1 -1
  14. package/dist/cli.js +6 -6
  15. package/dist/cli.js.map +1 -1
  16. package/dist/commands/context-tool-command-handlers.d.ts.map +1 -1
  17. package/dist/commands/context-tool-command-handlers.js +42 -0
  18. package/dist/commands/context-tool-command-handlers.js.map +1 -1
  19. package/dist/commands/model-command-handlers.d.ts +1 -1
  20. package/dist/commands/model-command-handlers.d.ts.map +1 -1
  21. package/dist/commands/model-command-handlers.js +166 -1
  22. package/dist/commands/model-command-handlers.js.map +1 -1
  23. package/dist/commands/session-command-handlers.d.ts.map +1 -1
  24. package/dist/commands/session-command-handlers.js +97 -5
  25. package/dist/commands/session-command-handlers.js.map +1 -1
  26. package/dist/commands/session-commands.js +2 -2
  27. package/dist/commands/session-commands.js.map +1 -1
  28. package/dist/commands/types.d.ts +6 -0
  29. package/dist/commands/types.d.ts.map +1 -1
  30. package/dist/commands/types.js.map +1 -1
  31. package/dist/framework/index.d.ts +5 -3
  32. package/dist/framework/index.d.ts.map +1 -1
  33. package/dist/framework/index.js +9 -1
  34. package/dist/framework/index.js.map +1 -1
  35. package/dist/framework/query.d.ts +26 -4
  36. package/dist/framework/query.d.ts.map +1 -1
  37. package/dist/framework/query.js +319 -62
  38. package/dist/framework/query.js.map +1 -1
  39. package/dist/framework/stop-decision.d.ts +56 -0
  40. package/dist/framework/stop-decision.d.ts.map +1 -0
  41. package/dist/framework/stop-decision.js +36 -0
  42. package/dist/framework/stop-decision.js.map +1 -0
  43. package/dist/framework/tool-scheduler.d.ts +5 -0
  44. package/dist/framework/tool-scheduler.d.ts.map +1 -1
  45. package/dist/framework/tool-scheduler.js +24 -9
  46. package/dist/framework/tool-scheduler.js.map +1 -1
  47. package/dist/harness/assembler.d.ts.map +1 -1
  48. package/dist/harness/assembler.js +77 -19
  49. package/dist/harness/assembler.js.map +1 -1
  50. package/dist/harness/capability-profile.d.ts +3 -0
  51. package/dist/harness/capability-profile.d.ts.map +1 -0
  52. package/dist/harness/capability-profile.js +44 -0
  53. package/dist/harness/capability-profile.js.map +1 -0
  54. package/dist/harness/capsule.d.ts.map +1 -1
  55. package/dist/harness/capsule.js +22 -3
  56. package/dist/harness/capsule.js.map +1 -1
  57. package/dist/harness/compact-benchmark-corpus.d.ts +10 -0
  58. package/dist/harness/compact-benchmark-corpus.d.ts.map +1 -0
  59. package/dist/harness/compact-benchmark-corpus.js +56 -0
  60. package/dist/harness/compact-benchmark-corpus.js.map +1 -0
  61. package/dist/harness/context-harness.d.ts +23 -3
  62. package/dist/harness/context-harness.d.ts.map +1 -1
  63. package/dist/harness/context-harness.js +183 -11
  64. package/dist/harness/context-harness.js.map +1 -1
  65. package/dist/harness/contract.d.ts.map +1 -1
  66. package/dist/harness/contract.js +106 -11
  67. package/dist/harness/contract.js.map +1 -1
  68. package/dist/harness/drift-guard.d.ts +2 -1
  69. package/dist/harness/drift-guard.d.ts.map +1 -1
  70. package/dist/harness/drift-guard.js +315 -20
  71. package/dist/harness/drift-guard.js.map +1 -1
  72. package/dist/harness/evidence.d.ts.map +1 -1
  73. package/dist/harness/evidence.js +25 -12
  74. package/dist/harness/evidence.js.map +1 -1
  75. package/dist/harness/index.d.ts +7 -2
  76. package/dist/harness/index.d.ts.map +1 -1
  77. package/dist/harness/index.js +19 -1
  78. package/dist/harness/index.js.map +1 -1
  79. package/dist/harness/ledger.d.ts.map +1 -1
  80. package/dist/harness/ledger.js +44 -14
  81. package/dist/harness/ledger.js.map +1 -1
  82. package/dist/harness/progress-controller.d.ts +14 -0
  83. package/dist/harness/progress-controller.d.ts.map +1 -0
  84. package/dist/harness/progress-controller.js +110 -0
  85. package/dist/harness/progress-controller.js.map +1 -0
  86. package/dist/harness/state.d.ts.map +1 -1
  87. package/dist/harness/state.js +5 -2
  88. package/dist/harness/state.js.map +1 -1
  89. package/dist/harness/stop-controller.d.ts +15 -0
  90. package/dist/harness/stop-controller.d.ts.map +1 -0
  91. package/dist/harness/stop-controller.js +87 -0
  92. package/dist/harness/stop-controller.js.map +1 -0
  93. package/dist/harness/types.d.ts +137 -0
  94. package/dist/harness/types.d.ts.map +1 -1
  95. package/dist/harness/verification.d.ts +7 -0
  96. package/dist/harness/verification.d.ts.map +1 -0
  97. package/dist/harness/verification.js +122 -0
  98. package/dist/harness/verification.js.map +1 -0
  99. package/dist/index.d.ts +5 -5
  100. package/dist/index.d.ts.map +1 -1
  101. package/dist/index.js +7 -1
  102. package/dist/index.js.map +1 -1
  103. package/dist/ink-ui/screens/ReplScreen.d.ts +3 -0
  104. package/dist/ink-ui/screens/ReplScreen.d.ts.map +1 -1
  105. package/dist/ink-ui/screens/ReplScreen.js +30 -5
  106. package/dist/ink-ui/screens/ReplScreen.js.map +1 -1
  107. package/dist/memory/index.d.ts +1 -0
  108. package/dist/memory/index.d.ts.map +1 -1
  109. package/dist/memory/index.js +1 -0
  110. package/dist/memory/index.js.map +1 -1
  111. package/dist/memory/prompt-context.d.ts +42 -0
  112. package/dist/memory/prompt-context.d.ts.map +1 -0
  113. package/dist/memory/prompt-context.js +129 -0
  114. package/dist/memory/prompt-context.js.map +1 -0
  115. package/dist/runtime/chat-compact.d.ts +26 -0
  116. package/dist/runtime/chat-compact.d.ts.map +1 -0
  117. package/dist/runtime/chat-compact.js +132 -0
  118. package/dist/runtime/chat-compact.js.map +1 -0
  119. package/dist/runtime/chat-controller.d.ts.map +1 -1
  120. package/dist/runtime/chat-controller.js +64 -74
  121. package/dist/runtime/chat-controller.js.map +1 -1
  122. package/dist/runtime/goals/coordinator.d.ts +3 -0
  123. package/dist/runtime/goals/coordinator.d.ts.map +1 -1
  124. package/dist/runtime/goals/coordinator.js +5 -15
  125. package/dist/runtime/goals/coordinator.js.map +1 -1
  126. package/dist/runtime/goals/prompt.js +1 -1
  127. package/dist/runtime/goals/prompt.js.map +1 -1
  128. package/dist/runtime/goals/stop-policy.d.ts +9 -0
  129. package/dist/runtime/goals/stop-policy.d.ts.map +1 -0
  130. package/dist/runtime/goals/stop-policy.js +83 -0
  131. package/dist/runtime/goals/stop-policy.js.map +1 -0
  132. package/dist/runtime/goals/types.d.ts +0 -1
  133. package/dist/runtime/goals/types.d.ts.map +1 -1
  134. package/dist/runtime/goals/types.js +0 -1
  135. package/dist/runtime/goals/types.js.map +1 -1
  136. package/dist/runtime/model-coordinator.d.ts +44 -1
  137. package/dist/runtime/model-coordinator.d.ts.map +1 -1
  138. package/dist/runtime/model-coordinator.js +161 -19
  139. package/dist/runtime/model-coordinator.js.map +1 -1
  140. package/dist/runtime/subagents/index.d.ts +1 -1
  141. package/dist/runtime/subagents/index.d.ts.map +1 -1
  142. package/dist/runtime/subagents/index.js.map +1 -1
  143. package/dist/runtime/subagents/production.d.ts +6 -2
  144. package/dist/runtime/subagents/production.d.ts.map +1 -1
  145. package/dist/runtime/subagents/production.js +25 -6
  146. package/dist/runtime/subagents/production.js.map +1 -1
  147. package/dist/runtime/subagents/runner.d.ts +12 -1
  148. package/dist/runtime/subagents/runner.d.ts.map +1 -1
  149. package/dist/runtime/subagents/runner.js +62 -1
  150. package/dist/runtime/subagents/runner.js.map +1 -1
  151. package/dist/runtime/subagents/runtime-integration.d.ts.map +1 -1
  152. package/dist/runtime/subagents/runtime-integration.js +2 -1
  153. package/dist/runtime/subagents/runtime-integration.js.map +1 -1
  154. package/dist/runtime/subagents/supervisor.d.ts.map +1 -1
  155. package/dist/runtime/subagents/supervisor.js +6 -0
  156. package/dist/runtime/subagents/supervisor.js.map +1 -1
  157. package/dist/runtime/subagents/types.d.ts +4 -1
  158. package/dist/runtime/subagents/types.d.ts.map +1 -1
  159. package/dist/runtime/subagents/types.js.map +1 -1
  160. package/dist/runtime/ui-events.d.ts +2 -0
  161. package/dist/runtime/ui-events.d.ts.map +1 -1
  162. package/dist/runtime/ui-events.js.map +1 -1
  163. package/dist/services/compact/auto-compact.d.ts +82 -2
  164. package/dist/services/compact/auto-compact.d.ts.map +1 -1
  165. package/dist/services/compact/auto-compact.js +226 -44
  166. package/dist/services/compact/auto-compact.js.map +1 -1
  167. package/dist/services/compact/compact.d.ts +54 -37
  168. package/dist/services/compact/compact.d.ts.map +1 -1
  169. package/dist/services/compact/compact.js +512 -127
  170. package/dist/services/compact/compact.js.map +1 -1
  171. package/dist/services/compact/coordinator.d.ts +5 -1
  172. package/dist/services/compact/coordinator.d.ts.map +1 -1
  173. package/dist/services/compact/coordinator.js +10 -1
  174. package/dist/services/compact/coordinator.js.map +1 -1
  175. package/dist/services/compact/fingerprint.d.ts +27 -0
  176. package/dist/services/compact/fingerprint.d.ts.map +1 -0
  177. package/dist/services/compact/fingerprint.js +69 -0
  178. package/dist/services/compact/fingerprint.js.map +1 -0
  179. package/dist/services/compact/index.d.ts +7 -5
  180. package/dist/services/compact/index.d.ts.map +1 -1
  181. package/dist/services/compact/index.js +19 -6
  182. package/dist/services/compact/index.js.map +1 -1
  183. package/dist/services/compact/planner.d.ts +41 -0
  184. package/dist/services/compact/planner.d.ts.map +1 -0
  185. package/dist/services/compact/planner.js +102 -0
  186. package/dist/services/compact/planner.js.map +1 -0
  187. package/dist/services/compact/semantic-summary.d.ts +93 -0
  188. package/dist/services/compact/semantic-summary.d.ts.map +1 -0
  189. package/dist/services/compact/semantic-summary.js +158 -0
  190. package/dist/services/compact/semantic-summary.js.map +1 -0
  191. package/dist/services/compact/summary-generator.d.ts +23 -0
  192. package/dist/services/compact/summary-generator.d.ts.map +1 -1
  193. package/dist/services/compact/summary-generator.js +173 -39
  194. package/dist/services/compact/summary-generator.js.map +1 -1
  195. package/dist/services/file-context.d.ts.map +1 -1
  196. package/dist/services/file-context.js +29 -33
  197. package/dist/services/file-context.js.map +1 -1
  198. package/dist/services/global-config.d.ts +6 -0
  199. package/dist/services/global-config.d.ts.map +1 -1
  200. package/dist/services/global-config.js +8 -0
  201. package/dist/services/global-config.js.map +1 -1
  202. package/dist/services/llm.d.ts +3 -0
  203. package/dist/services/llm.d.ts.map +1 -1
  204. package/dist/services/llm.js +7 -0
  205. package/dist/services/llm.js.map +1 -1
  206. package/dist/services/project-instructions.d.ts.map +1 -1
  207. package/dist/services/project-instructions.js +10 -17
  208. package/dist/services/project-instructions.js.map +1 -1
  209. package/dist/services/safe-project-reader.d.ts +30 -0
  210. package/dist/services/safe-project-reader.d.ts.map +1 -0
  211. package/dist/services/safe-project-reader.js +141 -0
  212. package/dist/services/safe-project-reader.js.map +1 -0
  213. package/dist/services/session-storage.d.ts +134 -5
  214. package/dist/services/session-storage.d.ts.map +1 -1
  215. package/dist/services/session-storage.js +727 -57
  216. package/dist/services/session-storage.js.map +1 -1
  217. package/dist/services/usage-state.d.ts +7 -0
  218. package/dist/services/usage-state.d.ts.map +1 -1
  219. package/dist/services/usage-state.js +117 -16
  220. package/dist/services/usage-state.js.map +1 -1
  221. package/dist/skills/runtime.d.ts.map +1 -1
  222. package/dist/skills/runtime.js +34 -35
  223. package/dist/skills/runtime.js.map +1 -1
  224. package/docs/migration/v0.1.8-to-v0.1.9.md +60 -0
  225. package/docs/plan/v0.1.9-release-checklist.md +64 -0
  226. package/docs/readme.md +27 -0
  227. package/npm-shrinkwrap.json +14 -38
  228. package/package.json +5 -1
  229. package/dist/services/compact/micro-compact.d.ts +0 -21
  230. package/dist/services/compact/micro-compact.d.ts.map +0 -1
  231. package/dist/services/compact/micro-compact.js +0 -99
  232. package/dist/services/compact/micro-compact.js.map +0 -1
@@ -1,65 +1,82 @@
1
- /**
2
- * orion code - Compact 服务
3
- *
4
- * 长对话压缩服务,减少上下文长度同时保留关键信息。
5
- * 参考 OpenClaude 的 compact/ 目录实现。
6
- */
7
- import type { Message } from '../llm';
8
- import type { LLMService } from '../llm';
9
- import { type SummaryOptions } from './summary-generator';
1
+ /** Semantic, group-safe conversation compaction. */
2
+ import type { LLMService, Message } from '../llm';
3
+ import { type SummaryDiagnostic, type SummaryOptions } from './summary-generator';
10
4
  import { type ContextCapsule, type HarnessState } from '../../harness';
5
+ import { type CompactPlan } from './planner';
6
+ import { type CompactSummary } from './semantic-summary';
11
7
  export interface CompactOptions {
12
- /** 最大保留消息数 */
8
+ /** Compatibility cap for the recent tail; atomic groups may exceed it. */
13
9
  maxMessages?: number;
14
- /** 是否保留工具调用 */
10
+ /** Deprecated compatibility option. False removes both calls and their results. */
15
11
  keepToolCalls?: boolean;
16
- /** 是否保留系统消息 */
17
12
  keepSystemMessage?: boolean;
18
- /** 压缩阈值(消息数超过此值触发) */
13
+ /** Legacy message-count trigger used by direct/manual callers. */
19
14
  threshold?: number;
20
- /** 自定义摘要生成选项 */
21
15
  summaryOptions?: SummaryOptions;
22
- /** Harness capsule that must survive compaction */
23
16
  contextCapsule?: ContextCapsule;
24
- /** Full Context Harness state that must survive compaction */
25
17
  harnessState?: HarnessState;
26
- /** v0.2.24 — Goal objective that must survive compaction */
27
18
  goalObjective?: string;
28
- /** LLM service for high-quality summarization (optional, falls back to heuristic) */
29
19
  llm?: LLMService;
30
- /** Why this compaction happened */
31
20
  compactMode?: 'manual' | 'auto_pre_turn' | 'mid_turn';
21
+ /** Safe provider input budget used by the semantic headroom validator. */
22
+ safeInputBudget?: number;
23
+ /** Successful candidates must fit this fraction of safeInputBudget. */
24
+ targetRatio?: number;
25
+ /** Explicit summary allowance used by the group planner. */
26
+ summaryReserveTokens?: number;
32
27
  }
33
28
  export interface CompactResult {
34
- /** 压缩后的消息列表 */
35
29
  messages: Message[];
36
- /** 压缩前消息数 */
37
30
  originalCount: number;
38
- /** 压缩后消息数 */
39
31
  compactedCount: number;
40
- /** 压缩比率 */
41
32
  ratio: number;
42
- /** 摘要内容 */
43
33
  summary: string;
44
34
  summarySource: 'llm' | 'heuristic';
45
35
  summaryGeneratedAt: number;
36
+ semanticSummary: CompactSummary;
37
+ diagnostics: SummaryDiagnostic[];
38
+ fingerprint: string;
39
+ beforeTokens: number;
40
+ afterTokens: number;
41
+ plan: CompactPlan;
42
+ }
43
+ export interface CompactCandidate {
44
+ status: 'prepared';
45
+ messages: Message[];
46
+ originalCount: number;
47
+ summary: string;
48
+ summarySource: 'llm' | 'heuristic';
49
+ summaryGeneratedAt: number;
50
+ semanticSummary: CompactSummary;
51
+ diagnostics: SummaryDiagnostic[];
52
+ fingerprint: string;
53
+ beforeTokens: number;
54
+ afterTokens: number;
55
+ plan: CompactPlan;
46
56
  }
57
+ export type CompactValidationErrorCode = 'target_headroom_exceeded' | 'tool_group_invalid' | 'evicted_coverage_mismatch' | 'semantic_schema_invalid' | 'semantic_reference_invalid' | 'task_epoch_mismatch' | 'source_boundary_mismatch';
58
+ export interface CompactValidationError {
59
+ code: CompactValidationErrorCode;
60
+ message: string;
61
+ }
62
+ export interface CompactCandidateValidation {
63
+ valid: boolean;
64
+ errors: CompactValidationError[];
65
+ }
66
+ export declare class CompactCandidateValidationError extends Error {
67
+ readonly validation: CompactCandidateValidation;
68
+ constructor(validation: CompactCandidateValidation);
69
+ }
70
+ /** Prepare a model-context projection without mutating or persisting its source. */
71
+ export declare function prepareCompactCandidate(messages: readonly Message[], options?: CompactOptions): Promise<CompactCandidate>;
72
+ /** Validate semantic coverage, provider headroom, and tool protocol invariants. */
73
+ export declare function validateCompactCandidate(candidate: CompactCandidate): CompactCandidateValidation;
47
74
  /**
48
- * 压缩消息历史
49
- *
50
- * 策略:
51
- * 1. 保留 system 消息
52
- * 2. 保留最近 N 条消息
53
- * 3. 对早期消息生成摘要替换
75
+ * Commit the prepared in-memory projection. This intentionally does not write a
76
+ * session checkpoint; the runtime/session owner must perform that transaction.
54
77
  */
78
+ export declare function commitCompactCandidate(candidate: CompactCandidate): CompactResult;
55
79
  export declare function compactMessages(messages: Message[], options?: CompactOptions): Promise<CompactResult>;
56
- /**
57
- * 检查是否需要压缩
58
- */
59
80
  export declare function needsCompact(messages: Message[], threshold?: number): boolean;
60
- /**
61
- * 快速压缩(不生成摘要,直接保留最近 N 条)
62
- */
63
- export declare function quickCompact(messages: Message[], keepLast?: number): Message[];
64
81
  export { CompactOptions as CompactConfig, CompactResult as CompactResultData };
65
82
  //# sourceMappingURL=compact.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"compact.d.ts","sourceRoot":"","sources":["../../../src/services/compact/compact.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,YAAY,EAClB,MAAM,eAAe,CAAC;AAOvB,MAAM,WAAW,cAAc;IAC7B,cAAc;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe;IACf,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe;IACf,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,sBAAsB;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB;IAChB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,mDAAmD;IACnD,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,8DAA8D;IAC9D,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,4DAA4D;IAC5D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qFAAqF;IACrF,GAAG,CAAC,EAAE,UAAU,CAAC;IACjB,mCAAmC;IACnC,WAAW,CAAC,EAAE,QAAQ,GAAG,eAAe,GAAG,UAAU,CAAC;CACvD;AAED,MAAM,WAAW,aAAa;IAC5B,eAAe;IACf,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,aAAa;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,KAAK,GAAG,WAAW,CAAC;IACnC,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAiBD;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,aAAa,CAAC,CAwHxB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAG7E;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,QAAQ,GAAE,MAAW,GAAG,OAAO,EAAE,CAiBlF;AAMD,OAAO,EAAE,cAAc,IAAI,aAAa,EAAE,aAAa,IAAI,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"compact.d.ts","sourceRoot":"","sources":["../../../src/services/compact/compact.ts"],"names":[],"mappings":"AAAA,oDAAoD;AAGpD,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAClD,OAAO,EAIL,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,YAAY,EAClB,MAAM,eAAe,CAAC;AAGvB,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,WAAW,CAAC;AACnB,OAAO,EAGL,KAAK,cAAc,EAEpB,MAAM,oBAAoB,CAAC;AAO5B,MAAM,WAAW,cAAc;IAC7B,0EAA0E;IAC1E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mFAAmF;IACnF,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,GAAG,CAAC,EAAE,UAAU,CAAC;IACjB,WAAW,CAAC,EAAE,QAAQ,GAAG,eAAe,GAAG,UAAU,CAAC;IACtD,0EAA0E;IAC1E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uEAAuE;IACvE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4DAA4D;IAC5D,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,KAAK,GAAG,WAAW,CAAC;IACnC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,eAAe,EAAE,cAAc,CAAC;IAChC,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,WAAW,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,KAAK,GAAG,WAAW,CAAC;IACnC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,eAAe,EAAE,cAAc,CAAC;IAChC,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,WAAW,CAAC;CACnB;AAED,MAAM,MAAM,0BAA0B,GAClC,0BAA0B,GAC1B,oBAAoB,GACpB,2BAA2B,GAC3B,yBAAyB,GACzB,4BAA4B,GAC5B,qBAAqB,GACrB,0BAA0B,CAAC;AAE/B,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,0BAA0B,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,sBAAsB,EAAE,CAAC;CAClC;AAED,qBAAa,+BAAgC,SAAQ,KAAK;IAC5C,QAAQ,CAAC,UAAU,EAAE,0BAA0B;gBAAtC,UAAU,EAAE,0BAA0B;CAI5D;AAmVD,oFAAoF;AACpF,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,SAAS,OAAO,EAAE,EAC5B,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,gBAAgB,CAAC,CA0G3B;AAED,mFAAmF;AACnF,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,gBAAgB,GAAG,0BAA0B,CAuIhG;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,gBAAgB,GAAG,aAAa,CAIjF;AAED,wBAAsB,eAAe,CACnC,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,aAAa,CAAC,CAsBxB;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAE7E;AAED,OAAO,EAAE,cAAc,IAAI,aAAa,EAAE,aAAa,IAAI,iBAAiB,EAAE,CAAC"}