@363045841yyt/klinechart-core 0.9.0-alpha.2 → 0.9.0-alpha.4

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 (234) hide show
  1. package/dist/controllers/createChartController.d.ts.map +1 -1
  2. package/dist/controllers/createChartController.js +9 -8
  3. package/dist/controllers/createChartController.js.map +1 -1
  4. package/dist/controllers/index.d.ts +1 -0
  5. package/dist/controllers/index.d.ts.map +1 -1
  6. package/dist/controllers/index.js.map +1 -1
  7. package/dist/controllers/types.d.ts +5 -0
  8. package/dist/controllers/types.d.ts.map +1 -1
  9. package/dist/data/binance.d.ts +1 -1
  10. package/dist/data/binance.d.ts.map +1 -1
  11. package/dist/data/binance.js +1 -1
  12. package/dist/data/binance.js.map +1 -1
  13. package/dist/data/timeShareBuffer.d.ts +3 -0
  14. package/dist/data/timeShareBuffer.d.ts.map +1 -1
  15. package/dist/data/timeShareBuffer.js +13 -0
  16. package/dist/data/timeShareBuffer.js.map +1 -1
  17. package/dist/engine/chart.d.ts +9 -9
  18. package/dist/engine/chart.d.ts.map +1 -1
  19. package/dist/engine/chart.js +87 -101
  20. package/dist/engine/chart.js.map +1 -1
  21. package/dist/engine/chartTypes.d.ts +5 -0
  22. package/dist/engine/chartTypes.d.ts.map +1 -1
  23. package/dist/engine/controller/interaction.d.ts +4 -2
  24. package/dist/engine/controller/interaction.d.ts.map +1 -1
  25. package/dist/engine/controller/interaction.js +18 -10
  26. package/dist/engine/controller/interaction.js.map +1 -1
  27. package/dist/engine/data/chartDataManager.d.ts +14 -18
  28. package/dist/engine/data/chartDataManager.d.ts.map +1 -1
  29. package/dist/engine/data/chartDataManager.js +55 -37
  30. package/dist/engine/data/chartDataManager.js.map +1 -1
  31. package/dist/engine/data/incrementalLoadHint.d.ts +2 -4
  32. package/dist/engine/data/incrementalLoadHint.d.ts.map +1 -1
  33. package/dist/engine/data/incrementalLoadHint.js +5 -2
  34. package/dist/engine/data/incrementalLoadHint.js.map +1 -1
  35. package/dist/engine/data/scrollCompensator.d.ts +3 -13
  36. package/dist/engine/data/scrollCompensator.d.ts.map +1 -1
  37. package/dist/engine/data/scrollCompensator.js +13 -14
  38. package/dist/engine/data/scrollCompensator.js.map +1 -1
  39. package/dist/engine/indicators/chartIndicatorManager.d.ts +16 -17
  40. package/dist/engine/indicators/chartIndicatorManager.d.ts.map +1 -1
  41. package/dist/engine/indicators/chartIndicatorManager.js +37 -37
  42. package/dist/engine/indicators/chartIndicatorManager.js.map +1 -1
  43. package/dist/engine/layout/chartPaneLayout.d.ts +11 -7
  44. package/dist/engine/layout/chartPaneLayout.d.ts.map +1 -1
  45. package/dist/engine/layout/chartPaneLayout.js +58 -16
  46. package/dist/engine/layout/chartPaneLayout.js.map +1 -1
  47. package/dist/engine/modes/timeShareMath.d.ts +56 -0
  48. package/dist/engine/modes/timeShareMath.d.ts.map +1 -0
  49. package/dist/engine/modes/timeShareMath.js +90 -0
  50. package/dist/engine/modes/timeShareMath.js.map +1 -0
  51. package/dist/engine/modes/timeShareMode.d.ts +5 -0
  52. package/dist/engine/modes/timeShareMode.d.ts.map +1 -1
  53. package/dist/engine/modes/timeShareMode.js +27 -27
  54. package/dist/engine/modes/timeShareMode.js.map +1 -1
  55. package/dist/engine/paneRenderer.d.ts +2 -0
  56. package/dist/engine/paneRenderer.d.ts.map +1 -1
  57. package/dist/engine/paneRenderer.js +15 -5
  58. package/dist/engine/paneRenderer.js.map +1 -1
  59. package/dist/engine/render/chartRenderer.d.ts +28 -22
  60. package/dist/engine/render/chartRenderer.d.ts.map +1 -1
  61. package/dist/engine/render/chartRenderer.js +143 -85
  62. package/dist/engine/render/chartRenderer.js.map +1 -1
  63. package/dist/engine/render/layers/leftYAxisLayer.d.ts +9 -2
  64. package/dist/engine/render/layers/leftYAxisLayer.d.ts.map +1 -1
  65. package/dist/engine/render/layers/leftYAxisLayer.js +11 -2
  66. package/dist/engine/render/layers/leftYAxisLayer.js.map +1 -1
  67. package/dist/engine/render/layers/mainIndicatorLegendLayer.d.ts +6 -4
  68. package/dist/engine/render/layers/mainIndicatorLegendLayer.d.ts.map +1 -1
  69. package/dist/engine/render/layers/mainIndicatorLegendLayer.js +6 -9
  70. package/dist/engine/render/layers/mainIndicatorLegendLayer.js.map +1 -1
  71. package/dist/engine/render/layers/mainIndicatorLegendLayer.test.d.ts +2 -0
  72. package/dist/engine/render/layers/mainIndicatorLegendLayer.test.d.ts.map +1 -0
  73. package/dist/engine/render/layers/mainIndicatorLegendLayer.test.js +19 -0
  74. package/dist/engine/render/layers/mainIndicatorLegendLayer.test.js.map +1 -0
  75. package/dist/engine/render/layers/yAxisLayer.d.ts +9 -2
  76. package/dist/engine/render/layers/yAxisLayer.d.ts.map +1 -1
  77. package/dist/engine/render/layers/yAxisLayer.js +11 -2
  78. package/dist/engine/render/layers/yAxisLayer.js.map +1 -1
  79. package/dist/engine/renderers/Indicator/mainIndicatorLegend.d.ts +7 -3
  80. package/dist/engine/renderers/Indicator/mainIndicatorLegend.d.ts.map +1 -1
  81. package/dist/engine/renderers/Indicator/mainIndicatorLegend.js +234 -330
  82. package/dist/engine/renderers/Indicator/mainIndicatorLegend.js.map +1 -1
  83. package/dist/engine/renderers/Indicator/mainIndicatorLegendContext.d.ts +73 -0
  84. package/dist/engine/renderers/Indicator/mainIndicatorLegendContext.d.ts.map +1 -0
  85. package/dist/engine/renderers/Indicator/mainIndicatorLegendContext.js +182 -0
  86. package/dist/engine/renderers/Indicator/mainIndicatorLegendContext.js.map +1 -0
  87. package/dist/engine/renderers/leftYAxis.d.ts +15 -2
  88. package/dist/engine/renderers/leftYAxis.d.ts.map +1 -1
  89. package/dist/engine/renderers/leftYAxis.js +56 -16
  90. package/dist/engine/renderers/leftYAxis.js.map +1 -1
  91. package/dist/engine/renderers/timeShare.d.ts.map +1 -1
  92. package/dist/engine/renderers/timeShare.js +20 -9
  93. package/dist/engine/renderers/timeShare.js.map +1 -1
  94. package/dist/engine/renderers/yAxis.d.ts +16 -6
  95. package/dist/engine/renderers/yAxis.d.ts.map +1 -1
  96. package/dist/engine/renderers/yAxis.js +49 -16
  97. package/dist/engine/renderers/yAxis.js.map +1 -1
  98. package/dist/engine/state/viewportState.d.ts +4 -1
  99. package/dist/engine/state/viewportState.d.ts.map +1 -1
  100. package/dist/engine/state/viewportState.js +40 -8
  101. package/dist/engine/state/viewportState.js.map +1 -1
  102. package/dist/engine/subPaneManager.d.ts +5 -3
  103. package/dist/engine/subPaneManager.d.ts.map +1 -1
  104. package/dist/engine/subPaneManager.js +3 -2
  105. package/dist/engine/subPaneManager.js.map +1 -1
  106. package/dist/engine/utils/chartZoomController.d.ts +9 -7
  107. package/dist/engine/utils/chartZoomController.d.ts.map +1 -1
  108. package/dist/engine/utils/chartZoomController.js +13 -12
  109. package/dist/engine/utils/chartZoomController.js.map +1 -1
  110. package/dist/engine/viewport/chartViewportManager.d.ts +5 -16
  111. package/dist/engine/viewport/chartViewportManager.d.ts.map +1 -1
  112. package/dist/engine/viewport/chartViewportManager.js +7 -48
  113. package/dist/engine/viewport/chartViewportManager.js.map +1 -1
  114. package/dist/engine/viewport/viewport.d.ts +14 -0
  115. package/dist/engine/viewport/viewport.d.ts.map +1 -1
  116. package/dist/engine/viewport/viewport.js +10 -0
  117. package/dist/engine/viewport/viewport.js.map +1 -1
  118. package/dist/foundation/config/chartSettings.d.ts +0 -5
  119. package/dist/foundation/config/chartSettings.d.ts.map +1 -1
  120. package/dist/foundation/config/chartSettings.js +14 -0
  121. package/dist/foundation/config/chartSettings.js.map +1 -1
  122. package/dist/foundation/plugin/rendererPluginManager.test.js +15 -0
  123. package/dist/foundation/plugin/rendererPluginManager.test.js.map +1 -1
  124. package/dist/foundation/plugin/types.d.ts +3 -0
  125. package/dist/foundation/plugin/types.d.ts.map +1 -1
  126. package/dist/foundation/plugin/types.js.map +1 -1
  127. package/dist/foundation/reactivity/frameTransaction.d.ts +11 -0
  128. package/dist/foundation/reactivity/frameTransaction.d.ts.map +1 -1
  129. package/dist/foundation/reactivity/frameTransaction.js +17 -2
  130. package/dist/foundation/reactivity/frameTransaction.js.map +1 -1
  131. package/dist/foundation/utils/kLineDraw/axis.d.ts +3 -0
  132. package/dist/foundation/utils/kLineDraw/axis.d.ts.map +1 -1
  133. package/dist/foundation/utils/kLineDraw/axis.js +40 -9
  134. package/dist/foundation/utils/kLineDraw/axis.js.map +1 -1
  135. package/dist/foundation/utils/sessionTimeLabels.d.ts +59 -0
  136. package/dist/foundation/utils/sessionTimeLabels.d.ts.map +1 -0
  137. package/dist/foundation/utils/sessionTimeLabels.js +170 -0
  138. package/dist/foundation/utils/sessionTimeLabels.js.map +1 -0
  139. package/dist/foundation/utils/timeShareAxisLabels.d.ts +27 -0
  140. package/dist/foundation/utils/timeShareAxisLabels.d.ts.map +1 -0
  141. package/dist/foundation/utils/timeShareAxisLabels.js +45 -0
  142. package/dist/foundation/utils/timeShareAxisLabels.js.map +1 -0
  143. package/dist/rendering/render/Renderer.d.ts +58 -74
  144. package/dist/rendering/render/Renderer.d.ts.map +1 -1
  145. package/dist/rendering/render/Renderer.js +8 -18
  146. package/dist/rendering/render/Renderer.js.map +1 -1
  147. package/dist/rendering/render/createWebGPURenderer.d.ts.map +1 -1
  148. package/dist/rendering/render/createWebGPURenderer.js +30 -17
  149. package/dist/rendering/render/createWebGPURenderer.js.map +1 -1
  150. package/dist/rendering/render/createWebGPUSurfaceBackend.js +3 -3
  151. package/dist/rendering/render/createWebGPUSurfaceBackend.js.map +1 -1
  152. package/dist/rendering/render/physicalLine.d.ts +4 -0
  153. package/dist/rendering/render/physicalLine.d.ts.map +1 -0
  154. package/dist/rendering/render/physicalLine.js +37 -0
  155. package/dist/rendering/render/physicalLine.js.map +1 -0
  156. package/dist/rendering/render/physicalRegion.d.ts +14 -0
  157. package/dist/rendering/render/physicalRegion.d.ts.map +1 -0
  158. package/dist/rendering/render/physicalRegion.js +15 -0
  159. package/dist/rendering/render/physicalRegion.js.map +1 -0
  160. package/dist/rendering/scene/createLayerFromPlugin.d.ts.map +1 -1
  161. package/dist/rendering/scene/createLayerFromPlugin.js +8 -3
  162. package/dist/rendering/scene/createLayerFromPlugin.js.map +1 -1
  163. package/dist/rendering/scene/createScene.d.ts.map +1 -1
  164. package/dist/rendering/scene/createScene.js +4 -3
  165. package/dist/rendering/scene/createScene.js.map +1 -1
  166. package/dist/version.d.ts +1 -1
  167. package/dist/version.js +1 -1
  168. package/package.json +1 -1
  169. package/src/__tests__/stateKernel.test.ts +1 -0
  170. package/src/controllers/createChartController.ts +9 -8
  171. package/src/controllers/index.ts +11 -0
  172. package/src/controllers/types.ts +7 -0
  173. package/src/data/__tests__/timeShareBuffer.test.ts +45 -0
  174. package/src/data/binance.ts +1 -1
  175. package/src/data/timeShareBuffer.ts +15 -0
  176. package/src/engine/__tests__/chart.dpr.test.ts +31 -2
  177. package/src/engine/__tests__/paneRenderer.resize.test.ts +52 -54
  178. package/src/engine/__tests__/subPaneManager.test.ts +5 -3
  179. package/src/engine/chart.ts +105 -115
  180. package/src/engine/chartTypes.ts +5 -0
  181. package/src/engine/controller/__tests__/interaction.dpr.test.ts +39 -2
  182. package/src/engine/controller/interaction.ts +18 -10
  183. package/src/engine/data/__tests__/chartDataManager.incrementalLoad.test.ts +37 -17
  184. package/src/engine/data/__tests__/scrollCompensator.geometry.test.ts +87 -75
  185. package/src/engine/data/chartDataManager.ts +64 -59
  186. package/src/engine/data/incrementalLoadHint.ts +8 -7
  187. package/src/engine/data/scrollCompensator.ts +16 -24
  188. package/src/engine/indicators/__tests__/chartIndicatorManager.test.ts +18 -26
  189. package/src/engine/indicators/chartIndicatorManager.ts +62 -62
  190. package/src/engine/layout/chartPaneLayout.ts +73 -21
  191. package/src/engine/modes/__tests__/timeShareMath.test.ts +185 -0
  192. package/src/engine/modes/__tests__/timeShareMode.test.ts +81 -0
  193. package/src/engine/modes/timeShareMath.ts +150 -0
  194. package/src/engine/modes/timeShareMode.ts +35 -28
  195. package/src/engine/paneRenderer.ts +17 -10
  196. package/src/engine/render/chartRenderer.ts +214 -145
  197. package/src/engine/render/layers/leftYAxisLayer.ts +29 -7
  198. package/src/engine/render/layers/mainIndicatorLegendLayer.test.ts +26 -0
  199. package/src/engine/render/layers/mainIndicatorLegendLayer.ts +13 -10
  200. package/src/engine/render/layers/yAxisLayer.ts +29 -7
  201. package/src/engine/renderers/Indicator/mainIndicatorLegend.ts +270 -403
  202. package/src/engine/renderers/Indicator/mainIndicatorLegendContext.ts +290 -0
  203. package/src/engine/renderers/__tests__/mainIndicatorLegend.renderer.test.ts +73 -2
  204. package/src/engine/renderers/__tests__/yAxis.renderer.test.ts +10 -6
  205. package/src/engine/renderers/leftYAxis.ts +60 -18
  206. package/src/engine/renderers/timeShare.ts +25 -9
  207. package/src/engine/renderers/yAxis.ts +57 -22
  208. package/src/engine/state/__tests__/settingsState.test.ts +9 -0
  209. package/src/engine/state/viewportState.ts +44 -8
  210. package/src/engine/subPaneManager.ts +8 -5
  211. package/src/engine/utils/chartZoomController.ts +22 -19
  212. package/src/engine/viewport/__tests__/visibleRange.clamp.test.ts +50 -0
  213. package/src/engine/viewport/chartViewportManager.ts +9 -60
  214. package/src/engine/viewport/viewport.ts +14 -0
  215. package/src/foundation/config/chartSettings.ts +13 -0
  216. package/src/foundation/plugin/rendererPluginManager.test.ts +18 -0
  217. package/src/foundation/plugin/types.ts +3 -0
  218. package/src/foundation/reactivity/frameTransaction.ts +20 -6
  219. package/src/foundation/utils/__tests__/sessionTimeLabels.test.ts +91 -0
  220. package/src/foundation/utils/kLineDraw/axis.ts +50 -9
  221. package/src/foundation/utils/sessionTimeLabels.ts +237 -0
  222. package/src/foundation/utils/timeShareAxisLabels.ts +94 -0
  223. package/src/rendering/render/Renderer.ts +69 -85
  224. package/src/rendering/render/__tests__/physicalLine.test.ts +51 -0
  225. package/src/rendering/render/__tests__/physicalRegion.test.ts +23 -0
  226. package/src/rendering/render/__tests__/webgpuRenderer.test.ts +31 -1
  227. package/src/rendering/render/__tests__/webgpuSurfaceBackend.test.ts +11 -0
  228. package/src/rendering/render/createWebGPURenderer.ts +30 -17
  229. package/src/rendering/render/createWebGPUSurfaceBackend.ts +3 -3
  230. package/src/rendering/render/physicalLine.ts +45 -0
  231. package/src/rendering/render/physicalRegion.ts +32 -0
  232. package/src/rendering/scene/createLayerFromPlugin.ts +8 -3
  233. package/src/rendering/scene/createScene.ts +4 -3
  234. package/src/version.ts +1 -1
@@ -1,8 +1,19 @@
1
+ /**
2
+ * Chart — 图表顶层编排器。
3
+ *
4
+ * 职责范围:
5
+ * - 持有 StateKernel(所有配置与状态的唯一数据源)
6
+ * - 管理 Viewport / 布局 / 渲染器生命周期
7
+ * - 提供 scheduleDraw / draw 入口供外部(交互、数据、插件)触发重绘
8
+ * - 协调插件宿主、指标控制器、标注管理器等子系统的初始化与销毁
9
+ *
10
+ * 不是绘制管线的一部分。绘制由 ChartRenderer 完成,Chart 仅负责代理调用并维护 runtimeProjection(批量投影)屏障。
11
+ */
1
12
  import { createAlertController } from '../features/alerts/index';
2
13
  import { createVolumeLookbacks, pushToVolumeLookbacks, } from '../features/alerts/rollingVolume';
3
14
  import { createPluginHost, RendererPluginManager, wrapPaneInfo, } from '../foundation/plugin/index';
4
15
  import { createLayerFromPlugin } from '../rendering/scene/createLayerFromPlugin';
5
- import { computed, } from '../foundation/reactivity/signal';
16
+ import { computed, createSignal, } from '../foundation/reactivity/signal';
6
17
  import { InteractionController } from './controller/interaction';
7
18
  import { createDefaultRendererHostSync, } from '../rendering/render/index';
8
19
  // ===== 普通 imports,按路径字母排序 =====
@@ -13,10 +24,9 @@ import { ChartPaneLayout } from './layout/chartPaneLayout';
13
24
  import { UpdateLevel } from './layout/pane';
14
25
  import { KLineMode } from './modes/kLineMode';
15
26
  import { TimeShareMode } from './modes/timeShareMode';
16
- import { ChartRenderer } from './render/chartRenderer';
27
+ import { ChartRenderer, mergeUpdateLevel } from './render/chartRenderer';
17
28
  import { ChartStateKernel } from './state/chartStateKernel';
18
29
  import { ChartViewportManager } from './viewport/chartViewportManager';
19
- import { getVisibleRange } from './viewport/viewport';
20
30
  import { ChartZoomController } from './utils/chartZoomController';
21
31
  import { getPhysicalKLineConfig } from './utils/klineConfig';
22
32
  // ===== 重新导出 =====
@@ -44,8 +54,12 @@ export class Chart {
44
54
  indicatorManager;
45
55
  /** 渲染器 */
46
56
  renderer;
57
+ /** runRuntimeProjection 嵌套深度,大于 0 时推迟 scheduleDraw */
47
58
  runtimeProjectionDepth = 0;
48
- runtimeProjectionDrawPending = false;
59
+ /** 被推迟的绘制级别,退出嵌套后统一 flush */
60
+ pendingProjectionLevel = null;
61
+ /** 主图图例模板上下文(每帧由 mainIndicatorLegend 发布) */
62
+ _legendTemplateContext = createSignal(null);
49
63
  /** 绘图交互会话(锚点/预览/拖拽);工具 id 在 kernel */
50
64
  drawingSession = null;
51
65
  /** 当前活跃的模式处理器 */
@@ -160,16 +174,12 @@ export class Chart {
160
174
  defaultPaneMinHeightPx: o.defaultPaneMinHeightPx,
161
175
  };
162
176
  },
163
- getViewport: () => this.viewportManager.getViewport(),
177
+ viewport: this.kernel.viewport,
164
178
  setKnownPaneIds: (ids) => this.rendererPluginManager.setKnownPaneIds(ids),
165
179
  notifyPaneResize: (paneId, pane) => this.rendererPluginManager.notifyResize(paneId, wrapPaneInfo(pane)),
166
180
  scheduleDraw: (level) => this.scheduleDraw(level),
167
- getPaneRatios: () => this.kernel.pane.readonly.paneRatios.peek(),
168
- getPaneScaleTypes: () => this.kernel.pane.readonly.paneScaleTypes.peek(),
169
- commitLayout: (ratios, specs) => {
170
- this.kernel.pane.actions.commitLayout(ratios, specs);
171
- this.ensurePaneScaleTypesFromSettings();
172
- },
181
+ pane: this.kernel.pane,
182
+ afterCommitLayout: () => this.ensurePaneScaleTypesFromSettings(),
173
183
  });
174
184
  this.alertController = createAlertController();
175
185
  this.dataManager = new ChartDataManager({
@@ -181,64 +191,37 @@ export class Chart {
181
191
  kGap: this.kernel.viewport.readonly.kGap(),
182
192
  };
183
193
  },
184
- getEffectiveDpr: () => this.viewportManager.getEffectiveDpr(),
185
- getLogicalScrollLeft: () => this.viewportManager.getLogicalScrollLeft(),
186
- getCachedScrollLeft: () => this.viewportManager.getCachedScrollLeft(),
187
- setScrollLeft: (v) => {
188
- this.viewportManager.setScrollLeft(v);
189
- },
190
194
  getDom: () => this.dom,
191
- getObservedSize: () => this.viewportManager.getObservedSize(),
192
- getViewport: () => this.viewportManager.getViewport(),
193
- getVisibleRange: () => {
194
- const vp = this.viewportManager.computeViewport();
195
- if (!vp)
196
- return null;
197
- const dataLen = this.dataManager?.getData().length ?? 0;
198
- if (dataLen === 0)
199
- return null;
200
- return getVisibleRange(vp.scrollLeft, vp.plotWidth, this.kernel.zoom.readonly.kWidth(), this.kernel.viewport.readonly.kGap(), dataLen, vp.dpr);
201
- },
202
- getLeftLoadBufferWidth: () => this.kernel.viewport.readonly.leftLoadBufferWidth.peek(),
203
- getContentWidth: () => this.kernel.viewport.readonly.contentWidth.peek(),
195
+ viewport: this.kernel.viewport,
196
+ comparison: this.kernel.comparison,
204
197
  scheduleDraw: (level) => this.scheduleDraw(level),
205
198
  resetInteraction: () => this.interaction.reset(),
206
199
  getIndicatorScheduler: () => this.indicatorManager.indicatorSchedulerAccessor,
207
200
  isPointerDown: () => this.interaction.isPointerDown(),
208
201
  onTimeShareDataReady: (dataLength) => {
209
- const vp = this.viewportManager.computeViewport();
202
+ const vp = this.getViewport();
210
203
  if (!vp || vp.plotWidth <= 0)
211
204
  return;
212
205
  const result = this._activeMode.computeKWidth(dataLength, vp.plotWidth, vp.dpr);
213
206
  if (result) {
214
207
  this.applyRenderState(result.kWidth, result.kGap);
215
208
  const leftBuffer = this.getLeftLoadBufferWidth();
216
- this.viewportManager.setScrollLeft(leftBuffer);
209
+ this.kernel.viewport.actions.scrollTo(leftBuffer);
217
210
  }
218
211
  },
219
212
  onDataProcessed: (data, range) => this.evaluateAlerts(data, range),
220
213
  setSymbols: (symbols) => this.kernel.actions.setSymbols(symbols),
221
- setComparisonLoading: (loading) => this.kernel.comparison.actions.setLoading(loading),
222
- comparisonSpecs$: this.kernel.comparison.readonly.specs,
223
- comparisonColors$: this.kernel.comparison.readonly.colors,
224
- comparisonLoading$: this.kernel.comparison.readonly.loading,
225
214
  }, this.kernel.data, this.kernel.dataManager);
226
215
  this.zoomController = new ChartZoomController({
227
- getLogicalScrollLeft: () => this.viewportManager.getLogicalScrollLeft(),
228
- getCurrentDpr: () => this.viewportManager.getEffectiveDpr(),
229
- getClientWidth: () => this.viewportManager.getViewport()?.viewWidth ?? this.dom.container?.clientWidth ?? 0,
216
+ viewport: this.kernel.viewport,
217
+ options: this.kernel.options,
218
+ period$: this.kernel.dataManager.readonly.currentPeriod,
219
+ getClientWidth: () => this.getViewport()?.viewWidth ?? this.dom.container?.clientWidth ?? 0,
230
220
  getDataLength: () => this.dataManager.getData().length,
231
221
  getPlotWidth: () => this.getLeftLoadBufferWidth(),
232
- setScrollLeft: (v) => {
233
- this.viewportManager.setScrollLeft(v);
234
- },
235
222
  onChange: () => {
236
223
  this.scheduleDraw();
237
224
  },
238
- getMinKWidth: () => this.kernel.options.readonly.options.peek().minKWidth,
239
- getMaxKWidth: () => this.kernel.options.readonly.options.peek().maxKWidth,
240
- getPeriod: () => this.kernel.dataManager.readonly.currentPeriod.peek(),
241
- zoomLevelCount,
242
225
  }, this.kernel.zoom);
243
226
  this.indicatorManager = new ChartIndicatorManager({
244
227
  getOption: () => {
@@ -255,7 +238,7 @@ export class Chart {
255
238
  removeRenderer: (name) => this.removeRenderer(name),
256
239
  updateRendererConfig: (name, config) => this.updateRendererConfig(name, config),
257
240
  setRendererEnabled: (name, enabled) => this.setRendererEnabled(name, enabled),
258
- getPaneRatiosSignal: () => this.kernel.pane.readonly.paneRatios,
241
+ paneRatios$: this.kernel.pane.readonly.paneRatios,
259
242
  paneSpecs$: this.kernel.pane.readonly.paneSpecs,
260
243
  projectPaneLayout: (specs, ratios) => {
261
244
  this.layoutManager.projectState(specs, ratios);
@@ -271,21 +254,15 @@ export class Chart {
271
254
  removeLayer: (id) => this.renderer?.getScene()?.removeLayer(id) ?? false,
272
255
  getLayer: (id) => this.renderer?.getScene()?.getLayer(id) ?? null,
273
256
  setLayerVisibility: (id, visible) => this.renderer?.getScene()?.setLayerVisibility(id, visible),
274
- getRightAxisWidth: () => this.kernel.options.readonly.options.peek().rightAxisWidth,
275
- getPriceLabelWidth: () => this.kernel.options.readonly.options.peek().priceLabelWidth ?? 60,
276
- getYPaddingPx: () => this.kernel.options.readonly.options.peek().yPaddingPx,
277
- mainIndicators$: this.kernel.indicator.readonly.mainIndicators,
278
- upsertMainIndicator: (id, params) => this.kernel.indicator.actions.upsert(id, params),
279
- removeMainIndicator: (id) => this.kernel.indicator.actions.remove(id),
280
- setMainIndicatorParams: (id, params) => this.kernel.indicator.actions.setParams(id, params),
281
- replaceMainIndicators: (entries) => this.kernel.indicator.actions.replaceAll(entries),
282
- clearMainIndicators: () => this.kernel.indicator.actions.clear(),
283
- subPanes$: this.kernel.subPane.readonly.entries,
284
- createSubPaneState: (paneId, indicatorId, params) => this.kernel.actions.createSubPane(paneId, indicatorId, params),
285
- removeSubPaneState: (paneId) => this.kernel.actions.removeSubPane(paneId),
286
- replaceSubPaneState: (paneId, indicatorId, params) => this.kernel.actions.replaceSubPane(paneId, indicatorId, params),
287
- updateSubPaneStateParams: (paneId, params) => this.kernel.actions.updateSubPaneParams(paneId, params),
288
- clearSubPaneState: () => this.kernel.actions.clearSubPanes(),
257
+ indicator: this.kernel.indicator,
258
+ subPaneOps: {
259
+ entries: this.kernel.subPane.readonly.entries,
260
+ create: (paneId, indicatorId, params) => this.kernel.actions.createSubPane(paneId, indicatorId, params),
261
+ remove: (paneId) => this.kernel.actions.removeSubPane(paneId),
262
+ replace: (paneId, indicatorId, params) => this.kernel.actions.replaceSubPane(paneId, indicatorId, params),
263
+ setParams: (paneId, params) => this.kernel.actions.updateSubPaneParams(paneId, params),
264
+ clear: () => this.kernel.actions.clearSubPanes(),
265
+ },
289
266
  runRendererTransaction: (run) => this.runRuntimeProjection(run),
290
267
  });
291
268
  // Worker 异步结果就绪后串联 Alert 管线
@@ -311,10 +288,10 @@ export class Chart {
311
288
  getSceneRenderer: () => this.rendererHost.renderer,
312
289
  getPluginHost: () => this.pluginHost,
313
290
  getRendererPluginManager: () => this.rendererPluginManager,
314
- getTheme: () => this.kernel.effectiveTheme$.peek(),
315
- getCurrentZoomLevel: () => this.kernel.zoom.readonly.zoomLevel.peek(),
316
- getZoomLevelCount: () => this.kernel.options.readonly.options.peek().zoomLevelCount,
317
- getViewportManager: () => this.viewportManager,
291
+ theme$: this.kernel.effectiveTheme$,
292
+ zoom: this.kernel.zoom,
293
+ options: this.kernel.options,
294
+ viewport: this.kernel.viewport,
318
295
  getDataManager: () => this.dataManager,
319
296
  getIndicatorManager: () => this.indicatorManager,
320
297
  getActiveMode: () => this._activeMode,
@@ -323,6 +300,9 @@ export class Chart {
323
300
  drawings$: this.kernel.drawing.readonly.drawings,
324
301
  selectedDrawingId$: this.kernel.drawing.readonly.selectedDrawingId,
325
302
  getOverlay: () => this.drawingSession?.getPaintOverlay() ?? [],
303
+ onLegendContext: (ctx) => {
304
+ this._legendTemplateContext.set(ctx);
305
+ },
326
306
  });
327
307
  this.renderer.registerDrawingPlugins();
328
308
  this.renderer.initCoreRenderers();
@@ -330,7 +310,9 @@ export class Chart {
330
310
  this.ensurePaneScaleTypesFromSettings();
331
311
  }
332
312
  getViewport() {
333
- return this.viewportManager.getViewport();
313
+ if (this.kernel.viewport.readonly.viewWidth.peek() === 0)
314
+ return null;
315
+ return this.kernel.viewport.readonly.viewport.peek();
334
316
  }
335
317
  /** 获取当前活跃的模式处理器 */
336
318
  get activeMode() {
@@ -342,17 +324,21 @@ export class Chart {
342
324
  return;
343
325
  const prev = this._activeMode;
344
326
  if (mode === this._timeShareMode) {
327
+ const candlePlugin = this.rendererPluginManager.getPlugin('candle');
345
328
  this._savedTimeShareState = {
346
329
  zoomLevel: this.kernel.zoom.readonly.zoomLevel.peek(),
347
330
  scaleTypes: new Map(this.kernel.pane.readonly.paneScaleTypes.peek()),
348
331
  mainIndicators: [],
349
332
  subPanes: [],
333
+ paneRatios: { ...this.kernel.pane.readonly.paneRatios.peek() },
334
+ candleEnabled: candlePlugin?.enabled !== false,
350
335
  };
351
336
  for (const [id, entry] of this.kernel.indicator.readonly.mainIndicators.peek()) {
352
337
  this._savedTimeShareState.mainIndicators.push({ id, params: { ...entry.params } });
353
338
  }
354
339
  this._savedTimeShareState.subPanes = this.indicatorManager.getSubPaneEntries().map((e) => ({
355
- id: e.indicatorId,
340
+ paneId: e.paneId,
341
+ indicatorId: e.indicatorId,
356
342
  params: { ...e.params },
357
343
  }));
358
344
  // 分时强制 percent 进 kernel,再投影(不再由 updatePaneRange 每帧旁路写)
@@ -390,7 +376,7 @@ export class Chart {
390
376
  }, prev);
391
377
  if (mode === this._timeShareMode) {
392
378
  for (const { id } of this._savedTimeShareState.mainIndicators) {
393
- if (id !== 'TIMESHARE') {
379
+ if (id !== 'TIMESHARE' && id !== 'timeShare') {
394
380
  this.indicatorManager.disableMainIndicator(id);
395
381
  }
396
382
  }
@@ -400,13 +386,22 @@ export class Chart {
400
386
  const saved = this._savedTimeShareState;
401
387
  if (saved) {
402
388
  for (const { id, params } of saved.mainIndicators) {
403
- if (id !== 'TIMESHARE') {
389
+ if (id !== 'TIMESHARE' && id !== 'timeShare') {
404
390
  this.indicatorManager.enableMainIndicator(id, params);
405
391
  }
406
392
  }
407
- for (const { id, params } of saved.subPanes) {
408
- this.indicatorManager.addIndicator(id, 'sub', params);
393
+ for (const { paneId, indicatorId, params } of saved.subPanes) {
394
+ this.indicatorManager.createSubPane(paneId, indicatorId, params);
409
395
  }
396
+ // 恢复进入分时前的 pane 比例(createSubPane 会重算 3:1 分配)
397
+ if (Object.keys(saved.paneRatios).length > 0) {
398
+ const specs = this.kernel.pane.readonly.paneSpecs.peek().map((pane) => ({
399
+ ...pane,
400
+ ratio: saved.paneRatios[pane.id] ?? pane.ratio,
401
+ }));
402
+ this.kernel.pane.actions.commitLayout(saved.paneRatios, specs);
403
+ }
404
+ this.setRendererEnabled('candle', saved.candleEnabled);
410
405
  }
411
406
  this._savedTimeShareState = null;
412
407
  }
@@ -415,27 +410,12 @@ export class Chart {
415
410
  this.kernel.mode.actions.setChartMode(id);
416
411
  }
417
412
  getCurrentDpr() {
418
- return this.viewportManager.getEffectiveDpr();
413
+ return this.kernel.viewport.readonly.dpr.peek();
419
414
  }
420
415
  /** 获取当前周期 */
421
416
  get currentPeriod() {
422
417
  return this.dataManager.currentPeriod;
423
418
  }
424
- /** 获取缓存的 scrollLeft(避免读取 DOM 触发强制回流) */
425
- getCachedScrollLeft() {
426
- return this.viewportManager.getCachedScrollLeft();
427
- }
428
- /** 同步程序性 scrollLeft 写入后的缓存,避免等待异步 scroll 事件 */
429
- syncScrollLeft(scrollLeft) {
430
- this.viewportManager.setScrollLeft(scrollLeft);
431
- }
432
- setScrollLeft(v) {
433
- this.viewportManager.setScrollLeft(v);
434
- }
435
- /** 获取逻辑 scrollLeft(减去左侧加载缓冲宽度,可为负值) */
436
- getLogicalScrollLeft() {
437
- return this.viewportManager.getLogicalScrollLeft();
438
- }
439
419
  /** 获取插件宿主 */
440
420
  get plugin() {
441
421
  return this.pluginHost;
@@ -950,7 +930,7 @@ export class Chart {
950
930
  resize() {
951
931
  if (this._activeMode === this._timeShareMode) {
952
932
  const tsData = this.dataManager.getTimeShareData();
953
- const vp = this.viewportManager.computeViewport();
933
+ const vp = this.getViewport();
954
934
  if (!vp || vp.plotWidth <= 0)
955
935
  return;
956
936
  if (tsData.length > 0) {
@@ -958,7 +938,7 @@ export class Chart {
958
938
  if (result) {
959
939
  this.applyRenderState(result.kWidth, result.kGap);
960
940
  const leftBuffer = this.getLeftLoadBufferWidth();
961
- this.viewportManager.setScrollLeft(leftBuffer);
941
+ this.kernel.viewport.actions.scrollTo(leftBuffer);
962
942
  }
963
943
  }
964
944
  this.renderer.clearCachedFrame();
@@ -966,7 +946,7 @@ export class Chart {
966
946
  this.scheduleDraw();
967
947
  return;
968
948
  }
969
- const vp = this.viewportManager.computeViewport();
949
+ const vp = this.getViewport();
970
950
  // 防御性检查:容器尺寸无效时跳过布局
971
951
  if (!vp || vp.viewWidth < 10 || vp.viewHeight < 10) {
972
952
  return;
@@ -980,12 +960,16 @@ export class Chart {
980
960
  * @param level 更新级别,默认为 All
981
961
  */
982
962
  scheduleDraw(level = UpdateLevel.All) {
963
+ // 正在批量安装/卸载 renderer(pane 重排、指标切换、子图增删),等全部完成再 flush
983
964
  if (this.runtimeProjectionDepth > 0) {
984
- this.runtimeProjectionDrawPending = true;
965
+ this.pendingProjectionLevel = this.pendingProjectionLevel
966
+ ? mergeUpdateLevel(this.pendingProjectionLevel, level)
967
+ : level;
985
968
  return;
986
969
  }
987
970
  this.renderer.scheduleDraw(level);
988
971
  }
972
+ /** 在 RendererPluginManager 事务内执行 run,推迟期间的所有 scheduleDraw 到最外层统一 flush */
989
973
  runRuntimeProjection(run) {
990
974
  this.runtimeProjectionDepth++;
991
975
  try {
@@ -993,9 +977,10 @@ export class Chart {
993
977
  }
994
978
  finally {
995
979
  this.runtimeProjectionDepth--;
996
- if (this.runtimeProjectionDepth === 0 && this.runtimeProjectionDrawPending) {
997
- this.runtimeProjectionDrawPending = false;
998
- this.renderer?.scheduleDraw(UpdateLevel.All);
980
+ if (this.runtimeProjectionDepth === 0 && this.pendingProjectionLevel !== null) {
981
+ const level = this.pendingProjectionLevel;
982
+ this.pendingProjectionLevel = null;
983
+ this.renderer?.scheduleDraw(level);
999
984
  }
1000
985
  }
1001
986
  }
@@ -1045,9 +1030,6 @@ export class Chart {
1045
1030
  this.alertController.dispose();
1046
1031
  await this.pluginHost.destroy();
1047
1032
  }
1048
- computeViewport() {
1049
- return this.viewportManager.computeViewport();
1050
- }
1051
1033
  // ==================== Facade API (High-level interface for adapters) ====================
1052
1034
  /** interactionSnapshot lazy computed for the createChartController facade */
1053
1035
  get _interactionSnapshot() {
@@ -1059,7 +1041,7 @@ export class Chart {
1059
1041
  __interactionSnapshot = null;
1060
1042
  /** 视口状态信号 */
1061
1043
  get viewport() {
1062
- return this.viewportManager.viewportSignal;
1044
+ return this.kernel.viewport.readonly.viewportState;
1063
1045
  }
1064
1046
  /** 数据信号 */
1065
1047
  get data() {
@@ -1083,11 +1065,11 @@ export class Chart {
1083
1065
  }
1084
1066
  /** 比较商品颜色信号 */
1085
1067
  get comparisonColors() {
1086
- return this.dataManager.comparisonColors;
1068
+ return this.kernel.comparison.readonly.colors;
1087
1069
  }
1088
1070
  /** 比较商品加载信号 */
1089
1071
  get comparisonLoading() {
1090
- return this.dataManager.comparisonLoading;
1072
+ return this.kernel.comparison.readonly.loading;
1091
1073
  }
1092
1074
  /** 生效主题信号(settings.theme + systemTheme 推导) */
1093
1075
  get theme() {
@@ -1127,6 +1109,10 @@ export class Chart {
1127
1109
  get interactionState() {
1128
1110
  return this._interactionSnapshot;
1129
1111
  }
1112
+ /** 主图左上角图例模板上下文(null 表示无数据) */
1113
+ get legendTemplateContext() {
1114
+ return this._legendTemplateContext;
1115
+ }
1130
1116
  // ---------- Data ----------
1131
1117
  setData(data) {
1132
1118
  this.dataManager.setData(data);
@@ -1 +1 @@
1
- {"version":3,"file":"chart.js","sourceRoot":"","sources":["../../src/engine/chart.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chart.js","sourceRoot":"","sources":["../../src/engine/chart.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA;AAChE,OAAO,EACL,qBAAqB,EACrB,qBAAqB,GAEtB,MAAM,kCAAkC,CAAA;AACzC,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,YAAY,GAIb,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAA;AAChF,OAAO,EACL,QAAQ,EACR,YAAY,GAKb,MAAM,iCAAiC,CAAA;AAGxC,OAAO,EAAE,qBAAqB,EAA4B,MAAM,0BAA0B,CAAA;AAG1F,OAAO,EACL,6BAA6B,GAG9B,MAAM,2BAA2B,CAAA;AAUlC,iCAAiC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAqB,MAAM,eAAe,CAAA;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAErD,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAA;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAiB5D,mBAAmB;AACnB,OAAO,EAAE,sBAAsB,EAAE,CAAA;AAiBjC,MAAM,OAAO,KAAK;IACR,GAAG,CAAU;IACb,WAAW,CAAkB;IAErC,+DAA+D;IACtD,MAAM,CAAkB;IAEzB,eAAe,CAAsB;IACrC,aAAa,CAAiB;IACtC,IAAY,aAAa;QACvB,OAAO,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,CAAA;IAC9C,CAAC;IACQ,WAAW,CAAwB;IAE5C,WAAW;IACH,UAAU,CAAgB;IAElC,eAAe;IACP,qBAAqB,CAAuB;IAEpD,sBAAsB;IACd,YAAY,CAAc;IAElC,YAAY;IACJ,cAAc,CAAqB;IAE3C,YAAY;IACJ,gBAAgB,CAAuB;IAE/C,UAAU;IACF,QAAQ,CAAe;IAC/B,sDAAsD;IAC9C,sBAAsB,GAAG,CAAC,CAAA;IAClC,6BAA6B;IACrB,sBAAsB,GAAuB,IAAI,CAAA;IACzD,4CAA4C;IAC3B,sBAAsB,GACrC,YAAY,CAA+B,IAAI,CAAC,CAAA;IAElD,sCAAsC;IAC9B,cAAc,GAAwC,IAAI,CAAA;IAElE,iBAAiB;IACT,WAAW,CAAkB;IAC7B,UAAU,GAAG,IAAI,SAAS,EAAE,CAAA;IAC5B,cAAc,GAAG,IAAI,aAAa,EAAE,CAAA;IAE5C,mDAAmD;IAC3C,oBAAoB,GAWjB,IAAI,CAAA;IAEf,6BAA6B;IACrB,mBAAmB,GAAkB,IAAI,CAAA;IAEjD,YAAY;IACH,eAAe,CAAiB;IAEzC,qBAAqB;IACb,gBAAgB,GAA2B,IAAI,CAAA;IAEvD;;;;;OAKG;IACH,mBAAmB,CACjB,WAAmB,EACnB,MAAkD;QAElD,OAAO,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;IACvE,CAAC;IAED,oBAAoB,CAAC,WAAmB;QACtC,OAAO,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAA;IAChE,CAAC;IAED,mBAAmB,CAAC,WAAmB,EAAE,OAAgB;QACvD,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;IACjE,CAAC;IAED,uBAAuB;QACrB,OAAO,IAAI,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,CAAA;IACxD,CAAC;IAED,qBAAqB,CAAC,WAAmB;QACvC,OAAO,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAA;IACjE,CAAC;IAED,yBAAyB,CACvB,WAAmB,EACnB,MAAiD;QAEjD,IAAI,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;IACtE,CAAC;IAED,sBAAsB,CAAC,WAAmB;QACxC,OAAO,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAA;IAClE,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,CAAA;IAC7C,CAAC;IAED;;OAEG;IACH,uBAAuB,CAAC,UAAoB;QAC1C,IAAI,CAAC,gBAAgB,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAA;IAC3D,CAAC;IAED;;;;OAIG;IACH,YACE,GAAa,EACb,GAAiB,EACjB,OAAmF;QAEnF,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,GAAG,GAAG,CAAA;QACxD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAA;QAClC,IAAI,CAAC,UAAU,GAAG,gBAAgB,EAAE,CAAA;QACpC,IAAI,CAAC,qBAAqB,GAAG,IAAI,qBAAqB,EAAE,CAAA;QACxD,IAAI,CAAC,YAAY,GAAG,OAAO,EAAE,YAAY,IAAI,6BAA6B,EAAE,CAAA;QAE5E,OAAO;QACP,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACzD,IAAI,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAA;QAE3E,MAAM,gBAAgB,GAAG,GAAG,CAAC,gBAAgB,IAAI,CAAC,CAAA;QAClD,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,CAAA;QAEpE,qHAAqH;QACrH,IAAI,CAAC,MAAM,GAAG,IAAI,gBAAgB,CAAC;YACjC,cAAc,EAAE;gBACd,GAAG,OAAO;gBACV,cAAc;aACf;YACD,gBAAgB;YAChB,eAAe,EAAE,OAAO,EAAE,eAAe;YACzC,sBAAsB,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO;YACjD,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAgC,CAAC;SAC7E,CAAC,CAAA;QACF,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;YAC7B,eAAe,EAAE,CAAC,eAAe,EAAE,EAAE;gBACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAA;gBACxD,IAAI,CAAC,kBAAkB,EAAE,CAAA;YAC3B,CAAC;YACD,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC;SACxD,CAAC,CAAA;QACF,IAAI,CAAC,kBAAkB,EAAE,CAAA;QAEzB,mEAAmE;QACnE,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC;YAC7B,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG;YACtB,wBAAwB,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,CACvD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,EAAE,GAAG,CAAC;SACvD,CAAC,CAAA;QAEF,wEAAwE;QACxE,IAAI,CAAC,eAAe,GAAG,IAAI,oBAAoB,CAC7C;YACE,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG;YACtB,iBAAiB,EAAE,GAAG,EAAE;gBACtB,IAAI,CAAC,MAAM,EAAE,CAAA;YACf,CAAC;SACF,EACD,IAAI,CAAC,MAAM,CACZ,CAAA;QAED,8BAA8B;QAC9B,IAAI,CAAC,WAAW,GAAG,IAAI,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QAE3E,wBAAwB;QACxB,IAAI,CAAC,aAAa,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,KAAK,EAAE;YACtD,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG;YACtB,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;gBACrD,OAAO;oBACL,cAAc,EAAE,CAAC,CAAC,cAAc;oBAChC,aAAa,EAAE,CAAC,CAAC,aAAa;oBAC9B,UAAU,EAAE,CAAC,CAAC,UAAU;oBACxB,eAAe,EAAE,CAAC,CAAC,eAAe;oBAClC,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,sBAAsB,EAAE,CAAC,CAAC,sBAAsB;iBACjD,CAAA;YACH,CAAC;YACD,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YAC9B,eAAe,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,GAAG,CAAC;YACzE,gBAAgB,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CACjC,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;YACrE,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;YACjD,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YACtB,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,gCAAgC,EAAE;SACjE,CAAC,CAAA;QAEF,IAAI,CAAC,eAAe,GAAG,qBAAqB,EAAE,CAAA;QAE9C,IAAI,CAAC,WAAW,GAAG,IAAI,gBAAgB,CACrC;YACE,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;gBACrD,OAAO;oBACL,GAAG,CAAC;oBACJ,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;oBAC1C,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE;iBAC3C,CAAA;YACH,CAAC;YACD,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG;YACtB,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YAC9B,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;YAClC,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;YACjD,gBAAgB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;YAChD,qBAAqB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,0BAA0B;YAC7E,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE;YACrD,oBAAoB,EAAE,CAAC,UAAU,EAAE,EAAE;gBACnC,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;gBAC7B,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,SAAS,IAAI,CAAC;oBAAE,OAAM;gBACpC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,UAAU,EAAE,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,CAAA;gBAC/E,IAAI,MAAM,EAAE,CAAC;oBACX,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;oBACjD,MAAM,UAAU,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAA;oBAChD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;gBACnD,CAAC;YACH,CAAC;YACD,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC;YAClE,UAAU,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC;SACjE,EACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAChB,IAAI,CAAC,MAAM,CAAC,WAAW,CACxB,CAAA;QAED,IAAI,CAAC,cAAc,GAAG,IAAI,mBAAmB,CAC3C;YACE,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YAC9B,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;YAC5B,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,aAAa;YACvD,cAAc,EAAE,GAAG,EAAE,CACnB,IAAI,CAAC,WAAW,EAAE,EAAE,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,IAAI,CAAC;YACvE,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,MAAM;YACtD,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,sBAAsB,EAAE;YACjD,QAAQ,EAAE,GAAG,EAAE;gBACb,IAAI,CAAC,YAAY,EAAE,CAAA;YACrB,CAAC;SACF,EACD,IAAI,CAAC,MAAM,CAAC,IAAI,CACjB,CAAA;QAED,IAAI,CAAC,gBAAgB,GAAG,IAAI,qBAAqB,CAAC;YAChD,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;gBACrD,OAAO;oBACL,GAAG,CAAC;oBACJ,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;oBAC1C,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE;iBAC3C,CAAA;YACH,CAAC;YACD,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU;YACpC,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;YAC7C,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC;YACjE,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;YACnD,oBAAoB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC;YAC/E,kBAAkB,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC;YAC7E,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAEtC;YACD,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS;YAC/C,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBACnC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;gBAC9C,IAAI,CAAC,gCAAgC,EAAE,CAAA;YACzC,CAAC;YACD,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;YAC5F,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY;YACpD,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc;YACxD,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY;YACpD,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;YACjD,gBAAgB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI;YACjF,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC;YAC/D,WAAW,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,KAAK;YACxE,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAI;YACjE,kBAAkB,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,CAClC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,kBAAkB,CAAC,EAAE,EAAE,OAAO,CAAC;YAC5D,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YAChC,UAAU,EAAE;gBACV,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAC7C,MAAM,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,CACtC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC;gBAChE,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC;gBAC7D,OAAO,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,CACvC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC;gBACjE,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC;gBACtF,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE;aACjD;YACD,sBAAsB,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC;SAChE,CAAC,CAAA;QAEF,4BAA4B;QAC5B,IAAI,CAAC,gBAAgB,CAAC,0BAA0B,CAAC,mBAAmB,CAAC,GAAG,EAAE;YACxE,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAA;YAC/C,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA;QAC9F,CAAC,CAAC,CAAA;QAEF,mEAAmE;QACnE,IAAI,CAAC,gBAAgB,CAAC,0BAA0B,CAAC,qBAAqB,CACpE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAGrB,CACV,CAAA;QAED,SAAS;QACT,IAAI,CAAC,QAAQ,GAAG,IAAI,aAAa,CAAC;YAChC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG;YACtB,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;gBACrD,OAAO;oBACL,GAAG,CAAC;oBACJ,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;oBAC1C,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE;iBAC3C,CAAA;YACH,CAAC;YACD,gBAAgB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa;YAC1C,cAAc,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW;YACtC,gBAAgB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ;YAClD,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU;YACpC,wBAAwB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,qBAAqB;YAC1D,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe;YACnC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YACtB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;YAC5B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YAC9B,cAAc,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW;YACtC,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB;YAChD,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW;YACrC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ;YACjD,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa;YACzD,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ;YAChD,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;YAClE,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,eAAe,EAAE,IAAI,EAAE;YAC9D,eAAe,EAAE,CAAC,GAAG,EAAE,EAAE;gBACvB,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YACtC,CAAC;SACF,CAAC,CAAA;QACF,IAAI,CAAC,QAAQ,CAAC,sBAAsB,EAAE,CAAA;QACtC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAA;QACjC,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAA;QAC3B,IAAI,CAAC,gCAAgC,EAAE,CAAA;IACzC,CAAC;IAED,WAAW;QACT,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC;YAAE,OAAO,IAAI,CAAA;QACrE,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAA;IACtD,CAAC;IAED,mBAAmB;IACnB,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAA;IACzB,CAAC;IAED,cAAc;IACd,aAAa,CAAC,IAAsB;QAClC,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI;YAAE,OAAM;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAA;QAE7B,IAAI,IAAI,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;YACjC,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;YACnE,IAAI,CAAC,oBAAoB,GAAG;gBAC1B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE;gBACrD,UAAU,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;gBACpE,cAAc,EAAE,EAAE;gBAClB,QAAQ,EAAE,EAAE;gBACZ,UAAU,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE;gBAC9D,aAAa,EAAE,YAAY,EAAE,OAAO,KAAK,KAAK;aAC/C,CAAA;YACD,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC/E,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;YACpF,CAAC;YACD,IAAI,CAAC,oBAAoB,CAAC,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACzF,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,MAAM,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE;aACxB,CAAC,CAAC,CAAA;YACH,uDAAuD;YACvD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAqB,CAAA;YAC/C,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,SAAS,CAAC,CAAA;YAC3C,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAA;YAC1D,IAAI,CAAC,qBAAqB,EAAE,CAAA;QAC9B,CAAC;aAAM,IAAI,IAAI,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;YACxC,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,UAAU,IAAI,IAAI,GAAG,EAAqB,CAAA;YACxF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAA;YAC1D,IAAI,CAAC,qBAAqB,EAAE,CAAA;YAC5B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC1C,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;YAC7C,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,oBAAoB,IAAI,IAAI,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;YAC9D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAA;QAC5E,CAAC;QAED,IAAI,CAAC,YAAY,CACf;YACE,mBAAmB,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/D,oBAAoB,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC3D,kBAAkB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC;YAC3D,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,EACD,IAAI,CACL,CAAA;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAA;QACvB,IAAI,CAAC,WAAW,CAAC,UAAU,CACzB;YACE,mBAAmB,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/D,oBAAoB,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC3D,kBAAkB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC;YAC3D,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,aAAa;SAC9C,EACD,IAAI,CACL,CAAA;QAED,IAAI,IAAI,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;YACjC,KAAK,MAAM,EAAE,EAAE,EAAE,IAAI,IAAI,CAAC,oBAAqB,CAAC,cAAc,EAAE,CAAC;gBAC/D,IAAI,EAAE,KAAK,WAAW,IAAI,EAAE,KAAK,WAAW,EAAE,CAAC;oBAC7C,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAA;gBAChD,CAAC;YACH,CAAC;YACD,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAA;QACvC,CAAC;aAAM,IAAI,IAAI,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAA;YACvC,IAAI,KAAK,EAAE,CAAC;gBACV,KAAK,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;oBAClD,IAAI,EAAE,KAAK,WAAW,IAAI,EAAE,KAAK,WAAW,EAAE,CAAC;wBAC7C,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;oBACvD,CAAC;gBACH,CAAC;gBACD,KAAK,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;oBAC7D,IAAI,CAAC,gBAAgB,CAAC,aAAa,CACjC,MAAM,EACN,WAA+B,EAC/B,MAAmD,CACpD,CAAA;gBACH,CAAC;gBACD,6CAA6C;gBAC7C,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBACtE,GAAG,IAAI;wBACP,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,KAAK;qBAC/C,CAAC,CAAC,CAAA;oBACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;gBAChE,CAAC;gBACD,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC,CAAA;YACxD,CAAC;YACD,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAA;QAClC,CAAC;QAED,0BAA0B;QAC1B,MAAM,EAAE,GAAG,IAAI,KAAK,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAA;QAC/D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;IAC3C,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;IACjD,CAAC;IAED,aAAa;IACb,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CAAA;IACvC,CAAC;IAED,aAAa;IACb,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,UAAU,CAAA;IACxB,CAAC;IAED,4DAA4D;IAEpD,wBAAwB,CAAC,MAAsB;QACrD,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACtC,OAAO,QAAQ,CAAA;QACjB,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAC9B,CAAC;IAEO,wBAAwB,CAAC,YAAoB;QACnD,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,IAAI,CAAC,QAAQ;gBAAE,OAAO,IAAI,CAAA;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAA;YACzC,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;gBAC9B,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC,IAAI,IAAI,CAAA;YAC1D,CAAC;YACD,OAAO,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,IAAI,CAAA;QACtC,CAAC,CAAA;IACH,CAAC;IAED,+CAA+C;IAC/C,WAAW,CACT,MAA+C,EAC/C,MAAgC;QAEhC,MAAM,OAAO,GAAG,UAAU,MAAM,CAAC,IAAI,EAAE,CAAA;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAA;QACvC,MAAM,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACxE,MAAM,YAAY,GAAG,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAA;QAErD,IAAI,cAAc,IAAI,YAAY,EAAE,CAAC;YACnC,IAAI,MAAM,IAAI,cAAc,CAAC,SAAS;gBAAE,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;YACxE,OAAM;QACR,CAAC;QAED,gCAAgC;QAChC,IAAI,cAAc,IAAI,CAAC,YAAY,EAAE,CAAC;YACpC,IAAI,MAAM,IAAI,cAAc,CAAC,SAAS;gBAAE,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;YACxE,MAAM,YAAY,GAAG,IAAI,CAAC,wBAAwB,CAAC,cAAc,CAAC,CAAA;YAClE,KAAK,EAAE,QAAQ,CACb,qBAAqB,CACnB,cAAc,EACd,IAAI,CAAC,wBAAwB,CAAC,YAAY,CAAC,EAC3C,YAAY,CACb,CACF,CAAA;YACD,OAAM;QACR,CAAC;QAED,sDAAsD;QACtD,IAAI,CAAC,cAAc,IAAI,YAAY,EAAE,CAAC;YACpC,OAAM;QACR,CAAC;QAED,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QAC3C,IAAI,MAAM,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YAC/B,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;QAC1B,CAAC;QACD,MAAM,YAAY,GAAG,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAA;QAC1D,MAAM,KAAK,GAAG,qBAAqB,CACjC,MAAM,EACN,IAAI,CAAC,wBAAwB,CAAC,YAAY,CAAC,EAC3C,YAAY,CACb,CAAA;QACD,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAA;IACxB,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,IAAY;QACzB,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QAC3C,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,WAAW,CAAC,UAAU,IAAI,EAAE,CAAC,CAAA;IAC1D,CAAC;IAED,cAAc;IACd,WAAW,CAA4C,IAAY;QACjE,OAAO,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAI,IAAI,CAAC,CAAA;IACtD,CAAC;IAED,oBAAoB;IACpB,oBAAoB,CAAC,IAAY,EAAE,MAA+B;QAChE,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IACvD,CAAC;IAED,sDAAsD;IACtD,kBAAkB,CAAC,IAAY,EAAE,OAAgB;QAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,CAAA;QACpE,IAAI,SAAS,EAAE,CAAC;YACd,0DAA0D;YAC1D,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QACtD,CAAC;QACD,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,kBAAkB,CAAC,UAAU,IAAI,EAAE,EAAE,OAAO,CAAC,CAAA;QACxE,4CAA4C;QAC5C,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,IAAI,CAAC,YAAY,EAAE,CAAA;QACrB,CAAC;IACH,CAAC;IAED,cAAc;IACd,eAAe;QACb,OAAO,IAAI,CAAC,qBAAqB,CAAC,aAAa,EAAE,CAAA;IACnD,CAAC;IAED,mEAAmE;IAC3D,qBAAqB;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,CAAA;QAC7D,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC1C,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAA;YAC/B,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,QAAQ,CAAA;YACxC,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC;gBAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QACjE,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,gCAAgC;QACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,aAElD,CAAA;QACb,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAA;QACrE,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC1C,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAA;YAC/B,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAAE,SAAQ;YAC/B,MAAM,SAAS,GACb,CAAC,QAAQ,IAAI,QAAQ,KAAK,MAAM;gBAC9B,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO;oBAC/C,CAAC,CAAC,QAAQ;oBACV,CAAC,CAAE,QAAsB,CAAA;YAC/B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAA;YAC5B,OAAO,GAAG,IAAI,CAAA;QAChB,CAAC;QACD,IAAI,OAAO;YAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAA;QACjE,IAAI,CAAC,qBAAqB,EAAE,CAAA;IAC9B,CAAC;IAED,4CAA4C;IACpC,0BAA0B,CAAC,QAAgB;QACjD,IAAI,QAAQ,KAAK,MAAM;YAAE,OAAM;QAC/B,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAA;QACrE,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC1C,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAA;YAC/B,MAAM,SAAS,GACb,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAE,QAAsB,CAAA;YACtF,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAA;QAC9B,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAA;QACpD,IAAI,CAAC,qBAAqB,EAAE,CAAA;IAC9B,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,QAAuB;QACpC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAA;QAC1D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAA;QAC1D,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAE9C,IAAI,eAAe,IAAI,QAAQ,EAAE,CAAC;YAChC,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,aAAuB,CAAC,CAAA;QACnE,CAAC;QAED,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI,CAAC,eAAe,EAAE,CAAC;YAClD,KAAK,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAkC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;gBACjF,IAAI,CAAC,kBAAkB,EAAE,CAAA;gBACzB,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;YACpC,CAAC,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QAED,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAED;;;OAGG;IACH,IAAI,CAAC,QAAqB,WAAW,CAAC,GAAG;QACvC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC3B,CAAC;IAED,oDAAoD;IAEpD;;;;;OAKG;IACH,gBAAgB,CAAC,MAAc,EAAE,IAAY,EAAE,SAAkB;QAC/D,KAAK,IAAI,CAAA;QACT,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,CAAA;QAC9D,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;QAE3D,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;QAClD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;QAClD,CAAC;QAED,IACE,WAAW,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE;YAC1D,WAAW,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,EACvD,CAAC;YACD,OAAM;QACR,CAAC;QAED,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAED,eAAe;IACf,iBAAiB;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,cAAc,CAAA;IACnE,CAAC;IAED,wBAAwB;IACxB,gBAAgB;QACd,OAAO,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;IAED,mDAAmD;IACnD,gBAAgB;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAA;IACzC,CAAC;IAED,oCAAoC;IACpC,mBAAmB,CAAC,OAA6B;QAC/C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAA;QACpD,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC,kBAAkB,EAAE,CAAA;QACrD,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAED,mBAAmB;IACnB,oBAAoB,CAAC,MAA0B;QAC7C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAA;QACvD,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC,kBAAkB,EAAE,CAAA;QACrD,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAED,cAAc;IACd,kBAAkB;QAChB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAA;QAC/C,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC,kBAAkB,EAAE,CAAA;QACrD,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAED,8CAA8C;IAC9C,MAAM;QACJ,OAAO,IAAI,CAAC,GAAG,CAAA;IACjB,CAAC;IAED,kCAAkC;IAClC,SAAS;QACP,OAAO;YACL,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE;YAC9C,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE;SAClD,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,aAAa,CAAC,OAA8B;QAC1C,6BAA6B;QAC7B,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACjC,OAAO,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAA;YACtF,OAAO,OAAO,CAAC,MAAM,CAAA;QACvB,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO,OAAO,CAAC,IAAI,CAAA;QACrB,CAAC;QAED,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAA;YAC5D,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;YACnE,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAA;YAClD,OAAM;QACR,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAA;IACf,CAAC;IAED,gBAAgB,CAAC,KAAiB;QAChC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAA;QAC1C,IAAI,CAAC,gCAAgC,EAAE,CAAA;IACzC,CAAC;IAED,kBAAkB,CAAC,IAAgB;QACjC,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;IAC7C,CAAC;IAED,UAAU,CAAC,GAAa;QACtB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;IACpC,CAAC;IAED,oBAAoB,CAAC,MAAc;QACjC,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAA;IACjD,CAAC;IAED,mBAAmB,CACjB,MAAc,EACd,WAA6B,EAC7B,MAAkD;QAElD,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAAA;IACxE,CAAC;IAED,sCAAsC;IACtC,WAAW,CAAC,QAAwD;QAClE,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,aAAa,CAAC,CAAA;QAChE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;QAClD,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAED,iBAAiB;IACjB,oBAAoB,CAAC,EAAiB;QACpC,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,OAAM;QACxE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAA;QACpD,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAA;IACxC,CAAC;IAED,kBAAkB;QAChB,OAAO,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,CAAA;IAChD,CAAC;IAED,kBAAkB,CAAC,WAAmB,EAAE,MAAc;QACpD,OAAO,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;IACnE,CAAC;IAED,OAAO,CAAC,MAAc;QACpB,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IACpC,CAAC;IAED,UAAU,CAAC,MAAc;QACvB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;IACvC,CAAC;IAED,OAAO,CAAC,MAAc;QACpB,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IAC3C,CAAC;IAED,iCAAiC;IAEjC,aAAa,CACX,MAAc,EACd,WAA6B,EAC7B,MAAkD;QAElD,OAAO,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAAA;IACzE,CAAC;IAED,aAAa,CAAC,MAAc;QAC1B,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;IAC7C,CAAC;IAED,uBAAuB,CACrB,MAAc,EACd,cAAgC,EAChC,MAAkD;QAElD,IAAI,CAAC,gBAAgB,CAAC,uBAAuB,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC,CAAA;IAC/E,CAAC;IAED,mBAAmB,CAAC,MAAc,EAAE,MAA+B;QACjE,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC3D,CAAC;IAED,aAAa;QACX,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAA;IACvC,CAAC;IAED,oBAAoB;QAClB,OAAO,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,CAAA;IACrD,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,CAAA;IAClD,CAAC;IAED,eAAe,CAAC,MAAc;QAC5B,OAAO,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;IACtD,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,MAAc,EAAE,MAAc;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,MAAM,CAAC,CAAA;QAC1E,IAAI,CAAC,QAAQ;YAAE,OAAM;QAErB,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAA;QAC/B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,sBAAsB;YAAE,OAAM;QAErD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAA;QAC1D,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAA;QACjD,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,aAAa,GAAG,WAAW,CAAC,CAAA;QACtD,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAED;;;OAGG;IACH,gBAAgB,CAAC,MAAc;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,MAAM,CAAC,CAAA;QAC1E,IAAI,CAAC,QAAQ;YAAE,OAAM;QACrB,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAA;QAC3C,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAED,mBAAmB,CAAC,MAAc;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,MAAM,CAAC,CAAA;QAC1E,IAAI,CAAC,QAAQ;YAAE,OAAM;QACrB,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,cAAc,EAAE,CAAA;QACzC,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,MAAc,EAAE,MAAc;QACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,MAAM,CAAC,CAAA;QAC1E,IAAI,CAAC,QAAQ;YAAE,OAAM;QAErB,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAA;QAC/B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,sBAAsB;YAAE,OAAM;QAErD,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;QAC/B,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IACD;;;OAGG;IACH,UAAU,CAAC,IAAiB;QAC1B,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IACnC,CAAC;IAED,4CAA4C;IAC5C,OAAO;QACL,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAA;IACnC,CAAC;IAED,kDAAkD;IAClD,aAAa;QACX,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAA;IACzC,CAAC;IAED,sBAAsB;IACtB,eAAe;QACb,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAA;IAC3C,CAAC;IAED,4BAA4B;IAC5B,qBAAqB;QACnB,OAAO,IAAI,CAAC,gBAAgB,CAAC,0BAA0B,CAAA;IACzD,CAAC;IAED,cAAc;IACd,kBAAkB;QAChB,OAAO,IAAI,CAAC,eAAe,CAAA;IAC7B,CAAC;IAED,kBAAkB;IACV,cAAc,CAAC,IAAiB,EAAE,MAAoB;QAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACpC,IAAI,CAAC,MAAM;YAAE,OAAM;QACnB,uCAAuC;QACvC,IAAI,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,mBAAmB;YAAE,OAAM;QACzD,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,SAAS,CAAA;QAE3C,sBAAsB;QACtB,IAAI,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAA;QACrC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,SAAS,GAAG,qBAAqB,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;YAClD,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAA;QACnC,CAAC;QACD,qBAAqB,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,CAAA;QAEpD,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAA;QAC/C,IAAI,CAAC,QAAQ;YAAE,OAAM;QACrB,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;QAClE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAA;QACxC,CAAC;IACH,CAAC;IAED,sBAAsB;IACd,mBAAmB,CAAC,IAAiB;QAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACpC,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAA;QAExB,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,IAAI,CAAA;QAE5C,MAAM,GAAG,GAAG;YACV,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAA;QAED,MAAM,UAAU,GAA2B,EAAE,CAAA;QAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAA;QAC9C,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,gBAAgB,EAAE,EAAE,CAAC;YAChD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAA;YAC1E,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;YACvD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,CAAM,QAAQ,CAAC,CAAA;YAC3D,IAAI,CAAC,KAAK,EAAE,MAAM;gBAAE,SAAQ;YAC5B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;YAC3B,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1B,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;gBACrC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBACpD,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAA;gBAC7B,CAAC;YACH,CAAC;iBAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACtC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBAChC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAE,CAAA;oBACtC,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;oBAC3B,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;wBACvB,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;wBAC/B,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;4BACpD,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAA;wBAC7B,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,+BAA+B;QAC/B,MAAM,aAAa,GAA2B,EAAE,CAAA;QAChD,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACjD,aAAa,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAA;YACjC,CAAC;QACH,CAAC;QAED,OAAO;YACL,GAAG;YACH,UAAU;YACV,aAAa;YACb,aAAa,EAAE,SAAS;YACxB,SAAS,EAAE,SAAS;YACpB,SAAS,EAAE,SAAS;SACrB,CAAA;IACH,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC,mBAAmB,EAAE,CAAA;IAC/C,CAAC;IAED,0BAA0B,CAAC,KAAa;QACtC,OAAO,IAAI,CAAC,WAAW,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAA;IAC3D,CAAC;IAED,qCAAqC;IACrC,kBAAkB,CAAC,MAAc;QAC/B,OAAO,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAA;IACpD,CAAC;IAED,+BAA+B;IAC/B,eAAe,CAAC,MAAc;QAC5B,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;IACjD,CAAC;IAED,kDAAkD;IAClD,eAAe;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,CAAA;IAC1D,CAAC;IAED,yCAAyC;IACzC,sBAAsB;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAA;IACjE,CAAC;IAED,qBAAqB;IACrB,aAAa;QACX,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAA;IAClC,CAAC;IAED,gBAAgB;IAChB,MAAM;QACJ,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAA;YAClD,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;YAC7B,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,SAAS,IAAI,CAAC;gBAAE,OAAM;YACpC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,CAAA;gBAClF,IAAI,MAAM,EAAE,CAAC;oBACX,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;oBACjD,MAAM,UAAU,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAA;oBAChD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;gBACnD,CAAC;YACH,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAA;YAChC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAA;YAChC,IAAI,CAAC,YAAY,EAAE,CAAA;YACnB,OAAM;QACR,CAAC;QACD,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QAC7B,oBAAoB;QACpB,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,SAAS,GAAG,EAAE,IAAI,EAAE,CAAC,UAAU,GAAG,EAAE,EAAE,CAAC;YACnD,OAAM;QACR,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAA;QAChC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAA;QAChC,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAED;;;OAGG;IACH,YAAY,CAAC,QAAqB,WAAW,CAAC,GAAG;QAC/C,qDAAqD;QACrD,IAAI,IAAI,CAAC,sBAAsB,GAAG,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,sBAAsB;gBACvD,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,sBAAsB,EAAE,KAAK,CAAC;gBACtD,CAAC,CAAC,KAAK,CAAA;YACT,OAAM;QACR,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IACnC,CAAC;IAED,0EAA0E;IAClE,oBAAoB,CAAC,GAAe;QAC1C,IAAI,CAAC,sBAAsB,EAAE,CAAA;QAC7B,IAAI,CAAC;YACH,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QAC7C,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,sBAAsB,EAAE,CAAA;YAC7B,IAAI,IAAI,CAAC,sBAAsB,KAAK,CAAC,IAAI,IAAI,CAAC,sBAAsB,KAAK,IAAI,EAAE,CAAC;gBAC9E,MAAM,KAAK,GAAG,IAAI,CAAC,sBAAsB,CAAA;gBACzC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAA;gBAClC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,KAAK,CAAC,CAAA;YACpC,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,kBAAkB;QACxB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAA;QAClC,IAAI,CAAC,KAAK;YAAE,OAAM;QAClB,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAA;QACrD,MAAM,QAAQ,GAAG,KAAK,CAAC,aAAa,CAAC,yBAAyB,CAA6B,CAAA;QAE3F,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;YAC3B,QAAQ,EAAE,MAAM,EAAE,CAAA;YAClB,OAAM;QACR,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAyC,CAAA;QACpF,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;QAC7B,IAAI,CAAC,MAAM;YAAE,OAAM;QAEnB,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;QACxC,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAA;QAClC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAA;QACvB,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAA;QACtB,MAAM,CAAC,KAAK,CAAC,aAAa,GAAG,MAAM,CAAA;QACnC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAA;QACzB,MAAM,CAAC,KAAK,CAAC,eAAe,GAAG,aAAa,CAAA;QAE5C,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;YACxB,QAAQ,EAAE,MAAM,EAAE,CAAA;YAClB,IAAI,CAAC,MAAM,CAAC,WAAW;gBAAE,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QACpD,CAAC;IACH,CAAC;IAED,aAAa;IACb,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAA;QAC/B,uDAAuD;QACvD,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,CAAA;QAClC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAA;QACvB,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAA;QAC1B,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAA;QAC9B,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAA;QAC5B,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,aAAa,CAAC,yBAAyB,CAAC,EAAE,MAAM,EAAE,CAAA;QACxE,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAA;QAC3B,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAA;QACrB,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAA;QAC9B,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAA;IACjC,CAAC;IAED,2FAA2F;IAE3F,6EAA6E;IAC7E,IAAY,oBAAoB;QAC9B,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAChC,IAAI,CAAC,qBAAqB,GAAG,QAAQ,CAAC,GAAG,EAAE,CACzC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,mBAAmB,EAAE,CACvD,CAAA;QACH,CAAC;QACD,OAAO,IAAI,CAAC,qBAAqB,CAAA;IACnC,CAAC;IACO,qBAAqB,GAAyC,IAAI,CAAA;IAE1E,aAAa;IACb,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAA;IACpD,CAAC;IAED,WAAW;IACX,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA;IAC9B,CAAC;IAED,WAAW;IACX,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAA;IACjC,CAAC;IAED,WAAW;IACX,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAA;IACjC,CAAC;IAED,8BAA8B;IAC9B,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CAAA;IACvC,CAAC;IAED,gBAAgB;IAChB,eAAe,CAAC,KAAgC;QAC9C,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;IACzC,CAAC;IAED,eAAe;IACf,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAA;IAC/C,CAAC;IAED,eAAe;IACf,IAAI,iBAAiB;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAA;IAChD,CAAC;IAED,8CAA8C;IAC9C,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,CAAA;IACpC,CAAC;IAED,iCAAiC;IACjC,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAA;IACjD,CAAC;IAED,gCAAgC;IAChC,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAA;IAC/C,CAAC;IAED,wCAAwC;IACxC,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAA;IACjD,CAAC;IAED,2CAA2C;IAC3C,sBAAsB,CAAC,OAA4C;QACjE,IAAI,CAAC,cAAc,GAAG,OAAO,CAAA;QAC7B,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAA;QAC3E,CAAC;IACH,CAAC;IAED,eAAe;IACf,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAA;IAC9C,CAAC;IAED,aAAa;IACb,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAA;IAC7C,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAA;IAC5C,CAAC;IAED,aAAa;IACb,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,oBAAoB,CAAA;IAClC,CAAC;IAED,+BAA+B;IAC/B,IAAI,qBAAqB;QACvB,OAAO,IAAI,CAAC,sBAAsB,CAAA;IACpC,CAAC;IAED,6BAA6B;IAE7B,OAAO,CAAC,IAAiB;QACvB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED,UAAU,CAAC,OAAoB;QAC7B,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;IACtC,CAAC;IAED,cAAc,CAAC,OAA0D;QACvE,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;IAC1C,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC,UAAqD,CAAA;IAC/E,CAAC;IAED,oBAAoB;QAClB,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAA;IACzC,CAAC;IAED,UAAU,CAAC,KAAgC;QACzC,gCAAgC;QAChC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAA;QAC/B,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAA;QACtC,IAAI,aAAa,EAAE,CAAC;YAClB,oDAAoD;YACpD,yDAAyD;YACzD,mCAAmC;YACnC,IAAI,CAAC,aAAa,CAAC,aAAa,KAAK,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC3F,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QAClC,wDAAwD;QACxD,2CAA2C;QAC3C,IAAI,aAAa,IAAI,aAAa,KAAK,WAAW,EAAE,CAAC;YACnD,IAAI,CAAC,WAAW,CAAC,4BAA4B,EAAE,CAAA;QACjD,CAAC;IACH,CAAC;IAED,mBAAmB,CAAC,IAAgB;QAClC,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAA;IAC5C,CAAC;IAED,sBAAsB,CAAC,MAAc;QACnC,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAA;IACjD,CAAC;IAED,iBAAiB,CAAC,MAAc,EAAE,IAAiB;QACjD,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAClD,CAAC;IAED,gBAAgB,CAAC,MAAc;QAC7B,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAA;IAC3C,CAAC;IAED,gBAAgB,CAAC,MAAc;QAC7B,IAAI,CAAC,aAAa,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAClF,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAA;IAC3C,CAAC;IAED,wBAAwB,CAAC,YAAoB;QAC3C,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAA;QACpD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;QACvC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAA;IAChD,CAAC;IAED,eAAe,CAAC,MAAwB;QACtC,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;IAC1C,CAAC;IAED,cAAc,CAAC,IAAgB;QAC7B,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;IACvC,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAA;IAC5C,CAAC;IAED,8BAA8B;IAE9B;;OAEG;IACH,QAAQ,CAAC,KAAuB;QAC9B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QAC7C,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,KAAuB;QACpC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;QACrD,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;YACnE,IAAI,CAAC,YAAY,EAAE,CAAA;QACrB,CAAC;IACH,CAAC;IAED,6BAA6B;IAE7B;;;OAGG;IACH,WAAW,CAAC,KAAa,EAAE,OAAgB;QACzC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS;YAAE,OAAM;QACvC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IACjD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,OAAgB;QACrB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS;YAAE,OAAM;QACvC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACrC,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,OAAgB;QACtB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS;YAAE,OAAM;QACvC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IACtC,CAAC;IAED,gEAAgE;IAEhE;;;;;;;OAOG;IACH,kBAAkB,CAChB,CAAe,EACf,iBAIC;QAED,gBAAgB;QAChB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAc,CAAC,CAAA;QAEtE,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;YACf,KAAK,aAAa;gBAChB,aAAa;gBACb,IAAI,iBAAiB,EAAE,aAAa,EAAE,CAAC;oBACrC,MAAM,OAAO,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;oBACtE,IAAI,OAAO;wBAAE,OAAO,IAAI,CAAA;gBAC1B,CAAC;gBACD,IAAI,WAAW,EAAE,CAAC;oBAChB,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAA;gBAC5C,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;gBACnC,CAAC;gBACD,OAAO,KAAK,CAAA;YACd,KAAK,aAAa;gBAChB,aAAa;gBACb,IAAI,iBAAiB,EAAE,aAAa,EAAE,CAAC;oBACrC,MAAM,OAAO,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;oBACtE,IAAI,OAAO;wBAAE,OAAO,IAAI,CAAA;gBAC1B,CAAC;gBACD,IAAI,WAAW,EAAE,CAAC;oBAChB,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAA;gBAC5C,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;gBACnC,CAAC;gBACD,OAAO,KAAK,CAAA;YACd,KAAK,WAAW;gBACd,aAAa;gBACb,IAAI,iBAAiB,EAAE,WAAW,EAAE,CAAC;oBACnC,MAAM,OAAO,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;oBACpE,IAAI,OAAO;wBAAE,OAAO,IAAI,CAAA;gBAC1B,CAAC;gBACD,IAAI,WAAW,EAAE,CAAC;oBAChB,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAA;gBAC1C,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;gBACjC,CAAC;gBACD,OAAO,KAAK,CAAA;YACd,KAAK,cAAc;gBACjB,wCAAwC;gBACxC,IAAI,WAAW,EAAE,CAAC;oBAChB,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAA;gBAC7C,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC,CAAA;gBACpC,CAAC;gBACD,OAAO,KAAK,CAAA;YACd;gBACE,OAAO,KAAK,CAAA;QAChB,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,gBAAgB,CAAC,CAAa;QAC5B,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS;YAAE,OAAM;QACvC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,qBAAqB,EAAE,CAAA;QACvD,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,CAAA;IAClE,CAAC;IAED;;;OAGG;IACH,iBAAiB;QACf,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;YACxB,YAAY,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,0BAA0B,CAAC,UAAU,CAAC,IAAI,EAAE;SAClF,CAAC,CAAA;QACF,oEAAoE;QACpE,6DAA6D;IAC/D,CAAC;IAED;;;;OAIG;IACH,eAAe,CAAC,KAAa,EAAE,aAAqB;QAClD,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS;YAAE,OAAM;QACvC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,CAAA;IACvD,CAAC;IAED,mDAAmD;IAEnD;;;;;;OAMG;IACH,YAAY,CACV,YAAoB,EACpB,IAAoB,EACpB,MAAgC;QAEhC,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;IACvE,CAAC;IAED,eAAe,CAAC,UAAkB;QAChC,OAAO,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,UAAU,CAAC,CAAA;IAC1D,CAAC;IAED,qBAAqB,CAAC,UAAkB,EAAE,MAA+B;QACvE,OAAO,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;IACxE,CAAC;IAED,iBAAiB,CAAC,kBAA4B;QAC5C,OAAO,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAA;IACpE,CAAC;IAED,kCAAkC;IAElC;;;;;OAKG;IACH,aAAa,CAAC,MAAc,EAAE,MAAc;QAC1C,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChD,CAAC;IAED,iCAAiC;IAEjC;;;OAGG;IACH,cAAc,CAAC,IAA0B;QACvC,MAAM,MAAM,GAAkB,IAAI,IAAI,QAAQ,CAAA;QAC9C,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;QAClD,IAAI,CAAC,cAAc,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAA;QAC7C,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAED;;;OAGG;IACH,aAAa,CAAC,SAAiB;QAC7B,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;YAC5C,OAAM;QACR,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ;aAC/C,IAAI,EAAE;aACN,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAA;QACpC,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAA;IAC7B,CAAC;IAED;;OAEG;IACH,aAAa;QACX,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;IACtB,CAAC;IAED,iCAAiC;IAEjC;;;OAGG;IACH,oBAAoB,CAAC,QAAiC;QACpD,IAAI,CAAC,cAAc,CAAC,QAAyB,CAAC,CAAA;IAChD,CAAC;IAED;;;OAGG;IACH,mBAAmB,CAAC,OAA8B;QAChD,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IAC7B,CAAC;CAOF"}
@@ -19,7 +19,10 @@ export type PaneRendererDom = {
19
19
  mainCanvas: HTMLCanvasElement;
20
20
  overlayCanvas: HTMLCanvasElement;
21
21
  yAxisCanvas: HTMLCanvasElement;
22
+ /** 轴区动态层(最新价标签、十字线价签),叠在 yAxisCanvas 上 */
23
+ yAxisOverlayCanvas: HTMLCanvasElement;
22
24
  leftYAxisCanvas?: HTMLCanvasElement;
25
+ leftYAxisOverlayCanvas?: HTMLCanvasElement;
23
26
  };
24
27
  export type ChartOptions = {
25
28
  kWidth?: number;
@@ -51,7 +54,9 @@ export type ViewportState = {
51
54
  plotWidth: number;
52
55
  plotHeight: number;
53
56
  dpr: number;
57
+ /** 可索引可见起点(已 clamp start>=0) */
54
58
  visibleFrom: number;
59
+ /** 可索引可见终点(开区间) */
55
60
  visibleTo: number;
56
61
  kWidth: number;
57
62
  kGap: number;