@react-x11/components 0.7.1 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (354) hide show
  1. package/README.md +295 -51
  2. package/dist/charts/node.d.ts +1 -1
  3. package/dist/charts/node.d.ts.map +1 -1
  4. package/dist/charts/node.js +6 -2
  5. package/dist/charts/node.js.map +1 -1
  6. package/dist/color-picker/ColorPicker.d.ts.map +1 -1
  7. package/dist/color-picker/ColorPicker.js +43 -33
  8. package/dist/color-picker/ColorPicker.js.map +1 -1
  9. package/dist/embed/client.d.ts +48 -3
  10. package/dist/embed/client.d.ts.map +1 -1
  11. package/dist/embed/client.js +79 -5
  12. package/dist/embed/client.js.map +1 -1
  13. package/dist/embed/index.d.ts +1 -1
  14. package/dist/embed/index.d.ts.map +1 -1
  15. package/dist/embed/index.js +1 -1
  16. package/dist/embed/index.js.map +1 -1
  17. package/dist/html/node.d.ts +3 -1
  18. package/dist/html/node.d.ts.map +1 -1
  19. package/dist/html/node.js +7 -5
  20. package/dist/html/node.js.map +1 -1
  21. package/dist/index.d.ts +1 -1
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +1 -1
  24. package/dist/index.js.map +1 -1
  25. package/dist/{markdown → internal/markdown}/ast.d.ts +12 -0
  26. package/dist/internal/markdown/ast.d.ts.map +1 -0
  27. package/dist/internal/markdown/ast.js +22 -0
  28. package/dist/internal/markdown/ast.js.map +1 -0
  29. package/dist/internal/markdown/parse.d.ts.map +1 -0
  30. package/dist/{markdown → internal/markdown}/parse.js +112 -22
  31. package/dist/internal/markdown/parse.js.map +1 -0
  32. package/dist/internal/markdown/stringify.d.ts +4 -0
  33. package/dist/internal/markdown/stringify.d.ts.map +1 -0
  34. package/dist/internal/markdown/stringify.js +684 -0
  35. package/dist/internal/markdown/stringify.js.map +1 -0
  36. package/dist/internal/markdown/tags.d.ts.map +1 -0
  37. package/dist/internal/markdown/tags.js.map +1 -0
  38. package/dist/internal/scroll.d.ts +3 -2
  39. package/dist/internal/scroll.d.ts.map +1 -1
  40. package/dist/internal/scroll.js +33 -15
  41. package/dist/internal/scroll.js.map +1 -1
  42. package/dist/internal/units.d.ts +2 -0
  43. package/dist/internal/units.d.ts.map +1 -0
  44. package/dist/internal/units.js +35 -0
  45. package/dist/internal/units.js.map +1 -0
  46. package/dist/internal/window.d.ts.map +1 -1
  47. package/dist/internal/window.js +4 -2
  48. package/dist/internal/window.js.map +1 -1
  49. package/dist/maps/anchors.d.ts +98 -0
  50. package/dist/maps/anchors.d.ts.map +1 -0
  51. package/dist/maps/anchors.js +531 -0
  52. package/dist/maps/anchors.js.map +1 -0
  53. package/dist/maps/controller.d.ts +283 -0
  54. package/dist/maps/controller.d.ts.map +1 -0
  55. package/dist/maps/controller.js +743 -0
  56. package/dist/maps/controller.js.map +1 -0
  57. package/dist/maps/gl/buckets.d.ts +95 -0
  58. package/dist/maps/gl/buckets.d.ts.map +1 -0
  59. package/dist/maps/gl/buckets.js +362 -0
  60. package/dist/maps/gl/buckets.js.map +1 -0
  61. package/dist/maps/gl/build-worker.d.ts +13 -0
  62. package/dist/maps/gl/build-worker.d.ts.map +1 -0
  63. package/dist/maps/gl/build-worker.js +44 -0
  64. package/dist/maps/gl/build-worker.js.map +1 -0
  65. package/dist/maps/gl/color.d.ts +8 -0
  66. package/dist/maps/gl/color.d.ts.map +1 -0
  67. package/dist/maps/gl/color.js +57 -0
  68. package/dist/maps/gl/color.js.map +1 -0
  69. package/dist/maps/gl/cover.d.ts +51 -0
  70. package/dist/maps/gl/cover.d.ts.map +1 -0
  71. package/dist/maps/gl/cover.js +124 -0
  72. package/dist/maps/gl/cover.js.map +1 -0
  73. package/dist/maps/gl/index.d.ts +3 -0
  74. package/dist/maps/gl/index.d.ts.map +1 -0
  75. package/dist/maps/gl/index.js +20 -0
  76. package/dist/maps/gl/index.js.map +1 -0
  77. package/dist/maps/gl/markers.d.ts +28 -0
  78. package/dist/maps/gl/markers.d.ts.map +1 -0
  79. package/dist/maps/gl/markers.js +60 -0
  80. package/dist/maps/gl/markers.js.map +1 -0
  81. package/dist/maps/gl/overlays.d.ts +68 -0
  82. package/dist/maps/gl/overlays.d.ts.map +1 -0
  83. package/dist/maps/gl/overlays.js +300 -0
  84. package/dist/maps/gl/overlays.js.map +1 -0
  85. package/dist/maps/gl/pane.d.ts +12 -0
  86. package/dist/maps/gl/pane.d.ts.map +1 -0
  87. package/dist/maps/gl/pane.js +37 -0
  88. package/dist/maps/gl/pane.js.map +1 -0
  89. package/dist/maps/gl/placement.d.ts +111 -0
  90. package/dist/maps/gl/placement.d.ts.map +1 -0
  91. package/dist/maps/gl/placement.js +567 -0
  92. package/dist/maps/gl/placement.js.map +1 -0
  93. package/dist/maps/gl/renderer.d.ts +352 -0
  94. package/dist/maps/gl/renderer.d.ts.map +1 -0
  95. package/dist/maps/gl/renderer.js +1127 -0
  96. package/dist/maps/gl/renderer.js.map +1 -0
  97. package/dist/maps/gl/shaders.d.ts +120 -0
  98. package/dist/maps/gl/shaders.d.ts.map +1 -0
  99. package/dist/maps/gl/shaders.js +451 -0
  100. package/dist/maps/gl/shaders.js.map +1 -0
  101. package/dist/maps/gl/store.d.ts +115 -0
  102. package/dist/maps/gl/store.d.ts.map +1 -0
  103. package/dist/maps/gl/store.js +469 -0
  104. package/dist/maps/gl/store.js.map +1 -0
  105. package/dist/maps/gl/text.d.ts +154 -0
  106. package/dist/maps/gl/text.d.ts.map +1 -0
  107. package/dist/maps/gl/text.js +382 -0
  108. package/dist/maps/gl/text.js.map +1 -0
  109. package/dist/maps/gl/view.d.ts +54 -0
  110. package/dist/maps/gl/view.d.ts.map +1 -0
  111. package/dist/maps/gl/view.js +974 -0
  112. package/dist/maps/gl/view.js.map +1 -0
  113. package/dist/maps/index.d.ts +1 -1
  114. package/dist/maps/index.d.ts.map +1 -1
  115. package/dist/maps/index.js +216 -52
  116. package/dist/maps/index.js.map +1 -1
  117. package/dist/maps/labels.d.ts +37 -16
  118. package/dist/maps/labels.d.ts.map +1 -1
  119. package/dist/maps/labels.js +188 -119
  120. package/dist/maps/labels.js.map +1 -1
  121. package/dist/maps/node.d.ts +162 -56
  122. package/dist/maps/node.d.ts.map +1 -1
  123. package/dist/maps/node.js +607 -515
  124. package/dist/maps/node.js.map +1 -1
  125. package/dist/maps/overlay.d.ts +72 -9
  126. package/dist/maps/overlay.d.ts.map +1 -1
  127. package/dist/maps/overlay.js +108 -28
  128. package/dist/maps/overlay.js.map +1 -1
  129. package/dist/maps/paint.d.ts +3 -0
  130. package/dist/maps/paint.d.ts.map +1 -1
  131. package/dist/maps/paint.js.map +1 -1
  132. package/dist/maps/proj.d.ts +14 -0
  133. package/dist/maps/proj.d.ts.map +1 -1
  134. package/dist/maps/proj.js +28 -0
  135. package/dist/maps/proj.js.map +1 -1
  136. package/dist/maps/renderer.d.ts +69 -0
  137. package/dist/maps/renderer.d.ts.map +1 -0
  138. package/dist/maps/renderer.js +66 -0
  139. package/dist/maps/renderer.js.map +1 -0
  140. package/dist/maps/sources.d.ts +25 -3
  141. package/dist/maps/sources.d.ts.map +1 -1
  142. package/dist/maps/sources.js +17 -0
  143. package/dist/maps/sources.js.map +1 -1
  144. package/dist/maps/theme.d.ts +19 -0
  145. package/dist/maps/theme.d.ts.map +1 -0
  146. package/dist/maps/theme.js +44 -0
  147. package/dist/maps/theme.js.map +1 -0
  148. package/dist/maps/tiles.d.ts +117 -17
  149. package/dist/maps/tiles.d.ts.map +1 -1
  150. package/dist/maps/tiles.js +163 -30
  151. package/dist/maps/tiles.js.map +1 -1
  152. package/dist/maps/types.d.ts +188 -20
  153. package/dist/maps/types.d.ts.map +1 -1
  154. package/dist/markdown/expressions.d.ts +1 -1
  155. package/dist/markdown/expressions.d.ts.map +1 -1
  156. package/dist/markdown/expressions.js.map +1 -1
  157. package/dist/markdown/index.d.ts +7 -6
  158. package/dist/markdown/index.d.ts.map +1 -1
  159. package/dist/markdown/index.js +9 -7
  160. package/dist/markdown/index.js.map +1 -1
  161. package/dist/markdown/spans.d.ts +1 -1
  162. package/dist/markdown/spans.d.ts.map +1 -1
  163. package/dist/media-player/index.d.ts +11 -3
  164. package/dist/media-player/index.d.ts.map +1 -1
  165. package/dist/media-player/index.js +13 -2
  166. package/dist/media-player/index.js.map +1 -1
  167. package/dist/rich-text-editor/clipboard.d.ts +23 -0
  168. package/dist/rich-text-editor/clipboard.d.ts.map +1 -0
  169. package/dist/rich-text-editor/clipboard.js +307 -0
  170. package/dist/rich-text-editor/clipboard.js.map +1 -0
  171. package/dist/rich-text-editor/collab.d.ts +32 -0
  172. package/dist/rich-text-editor/collab.d.ts.map +1 -0
  173. package/dist/rich-text-editor/collab.js +55 -0
  174. package/dist/rich-text-editor/collab.js.map +1 -0
  175. package/dist/rich-text-editor/commands.d.ts +50 -0
  176. package/dist/rich-text-editor/commands.d.ts.map +1 -0
  177. package/dist/rich-text-editor/commands.js +376 -0
  178. package/dist/rich-text-editor/commands.js.map +1 -0
  179. package/dist/rich-text-editor/drag.d.ts +68 -0
  180. package/dist/rich-text-editor/drag.d.ts.map +1 -0
  181. package/dist/rich-text-editor/drag.js +148 -0
  182. package/dist/rich-text-editor/drag.js.map +1 -0
  183. package/dist/rich-text-editor/html.d.ts +145 -0
  184. package/dist/rich-text-editor/html.d.ts.map +1 -0
  185. package/dist/rich-text-editor/html.js +516 -0
  186. package/dist/rich-text-editor/html.js.map +1 -0
  187. package/dist/rich-text-editor/index.d.ts +263 -0
  188. package/dist/rich-text-editor/index.d.ts.map +1 -0
  189. package/dist/rich-text-editor/index.js +822 -0
  190. package/dist/rich-text-editor/index.js.map +1 -0
  191. package/dist/rich-text-editor/inline.d.ts +94 -0
  192. package/dist/rich-text-editor/inline.d.ts.map +1 -0
  193. package/dist/rich-text-editor/inline.js +252 -0
  194. package/dist/rich-text-editor/inline.js.map +1 -0
  195. package/dist/rich-text-editor/keymap.d.ts +71 -0
  196. package/dist/rich-text-editor/keymap.d.ts.map +1 -0
  197. package/dist/rich-text-editor/keymap.js +393 -0
  198. package/dist/rich-text-editor/keymap.js.map +1 -0
  199. package/dist/rich-text-editor/keys.d.ts +29 -0
  200. package/dist/rich-text-editor/keys.d.ts.map +1 -0
  201. package/dist/rich-text-editor/keys.js +93 -0
  202. package/dist/rich-text-editor/keys.js.map +1 -0
  203. package/dist/rich-text-editor/look.d.ts +71 -0
  204. package/dist/rich-text-editor/look.d.ts.map +1 -0
  205. package/dist/rich-text-editor/look.js +342 -0
  206. package/dist/rich-text-editor/look.js.map +1 -0
  207. package/dist/rich-text-editor/markdown.d.ts +18 -0
  208. package/dist/rich-text-editor/markdown.d.ts.map +1 -0
  209. package/dist/rich-text-editor/markdown.js +496 -0
  210. package/dist/rich-text-editor/markdown.js.map +1 -0
  211. package/dist/rich-text-editor/nodes.d.ts +135 -0
  212. package/dist/rich-text-editor/nodes.d.ts.map +1 -0
  213. package/dist/rich-text-editor/nodes.js +397 -0
  214. package/dist/rich-text-editor/nodes.js.map +1 -0
  215. package/dist/rich-text-editor/render.d.ts +68 -0
  216. package/dist/rich-text-editor/render.d.ts.map +1 -0
  217. package/dist/rich-text-editor/render.js +500 -0
  218. package/dist/rich-text-editor/render.js.map +1 -0
  219. package/dist/rich-text-editor/schema.d.ts +16 -0
  220. package/dist/rich-text-editor/schema.d.ts.map +1 -0
  221. package/dist/rich-text-editor/schema.js +386 -0
  222. package/dist/rich-text-editor/schema.js.map +1 -0
  223. package/dist/rich-text-editor/store.d.ts +11 -0
  224. package/dist/rich-text-editor/store.d.ts.map +1 -0
  225. package/dist/rich-text-editor/store.js +43 -0
  226. package/dist/rich-text-editor/store.js.map +1 -0
  227. package/dist/rich-text-editor/suggest.d.ts +127 -0
  228. package/dist/rich-text-editor/suggest.d.ts.map +1 -0
  229. package/dist/rich-text-editor/suggest.js +0 -0
  230. package/dist/rich-text-editor/suggest.js.map +1 -0
  231. package/dist/rich-text-editor/tables.d.ts +41 -0
  232. package/dist/rich-text-editor/tables.d.ts.map +1 -0
  233. package/dist/rich-text-editor/tables.js +204 -0
  234. package/dist/rich-text-editor/tables.js.map +1 -0
  235. package/dist/rich-text-editor/toolbar.d.ts +58 -0
  236. package/dist/rich-text-editor/toolbar.d.ts.map +1 -0
  237. package/dist/rich-text-editor/toolbar.js +548 -0
  238. package/dist/rich-text-editor/toolbar.js.map +1 -0
  239. package/dist/rich-text-editor/view.d.ts +368 -0
  240. package/dist/rich-text-editor/view.d.ts.map +1 -0
  241. package/dist/rich-text-editor/view.js +1968 -0
  242. package/dist/rich-text-editor/view.js.map +1 -0
  243. package/dist/rich-text-editor/virtual.d.ts +54 -0
  244. package/dist/rich-text-editor/virtual.d.ts.map +1 -0
  245. package/dist/rich-text-editor/virtual.js +262 -0
  246. package/dist/rich-text-editor/virtual.js.map +1 -0
  247. package/dist/richtext/node.d.ts +25 -2
  248. package/dist/richtext/node.d.ts.map +1 -1
  249. package/dist/richtext/node.js +46 -24
  250. package/dist/richtext/node.js.map +1 -1
  251. package/dist/table/index.d.ts.map +1 -1
  252. package/dist/table/index.js +14 -5
  253. package/dist/table/index.js.map +1 -1
  254. package/dist/terminal/backends.d.ts +4 -1
  255. package/dist/terminal/backends.d.ts.map +1 -1
  256. package/dist/terminal/backends.js.map +1 -1
  257. package/dist/terminal/index.d.ts +18 -7
  258. package/dist/terminal/index.d.ts.map +1 -1
  259. package/dist/terminal/index.js +28 -11
  260. package/dist/terminal/index.js.map +1 -1
  261. package/dist/terminal/vt/node.d.ts +56 -3
  262. package/dist/terminal/vt/node.d.ts.map +1 -1
  263. package/dist/terminal/vt/node.js +106 -26
  264. package/dist/terminal/vt/node.js.map +1 -1
  265. package/dist/terminal/vt/renderer.d.ts +4 -0
  266. package/dist/terminal/vt/renderer.d.ts.map +1 -1
  267. package/dist/terminal/vt/renderer.js +14 -5
  268. package/dist/terminal/vt/renderer.js.map +1 -1
  269. package/dist/tree/index.d.ts.map +1 -1
  270. package/dist/tree/index.js +6 -4
  271. package/dist/tree/index.js.map +1 -1
  272. package/package.json +23 -4
  273. package/src/charts/node.ts +6 -2
  274. package/src/color-picker/ColorPicker.ts +107 -81
  275. package/src/embed/client.ts +102 -8
  276. package/src/embed/index.ts +2 -0
  277. package/src/html/node.ts +7 -5
  278. package/src/index.ts +2 -0
  279. package/src/{markdown → internal/markdown}/ast.ts +24 -7
  280. package/src/{markdown → internal/markdown}/parse.ts +134 -24
  281. package/src/internal/markdown/stringify.ts +772 -0
  282. package/src/internal/scroll.ts +39 -18
  283. package/src/internal/units.ts +34 -0
  284. package/src/internal/window.ts +4 -2
  285. package/src/maps/anchors.ts +607 -0
  286. package/src/maps/controller.ts +999 -0
  287. package/src/maps/gl/buckets.ts +457 -0
  288. package/src/maps/gl/build-worker.ts +55 -0
  289. package/src/maps/gl/color.ts +62 -0
  290. package/src/maps/gl/cover.ts +170 -0
  291. package/src/maps/gl/index.ts +23 -0
  292. package/src/maps/gl/markers.ts +83 -0
  293. package/src/maps/gl/overlays.ts +379 -0
  294. package/src/maps/gl/pane.ts +42 -0
  295. package/src/maps/gl/placement.ts +816 -0
  296. package/src/maps/gl/renderer.ts +1576 -0
  297. package/src/maps/gl/shaders.ts +486 -0
  298. package/src/maps/gl/store.ts +566 -0
  299. package/src/maps/gl/text.ts +495 -0
  300. package/src/maps/gl/view.ts +1224 -0
  301. package/src/maps/index.ts +270 -81
  302. package/src/maps/labels.ts +214 -121
  303. package/src/maps/node.ts +763 -629
  304. package/src/maps/overlay.ts +148 -43
  305. package/src/maps/paint.ts +3 -0
  306. package/src/maps/proj.ts +31 -0
  307. package/src/maps/renderer.ts +155 -0
  308. package/src/maps/sources.ts +38 -3
  309. package/src/maps/theme.ts +51 -0
  310. package/src/maps/tiles.ts +191 -33
  311. package/src/maps/types.ts +188 -20
  312. package/src/markdown/expressions.ts +5 -1
  313. package/src/markdown/index.ts +14 -11
  314. package/src/markdown/spans.ts +1 -1
  315. package/src/media-player/index.ts +18 -4
  316. package/src/rich-text-editor/clipboard.ts +439 -0
  317. package/src/rich-text-editor/collab.ts +91 -0
  318. package/src/rich-text-editor/commands.ts +448 -0
  319. package/src/rich-text-editor/dom-globals.d.ts +23 -0
  320. package/src/rich-text-editor/drag.ts +211 -0
  321. package/src/rich-text-editor/html.ts +619 -0
  322. package/src/rich-text-editor/index.ts +1331 -0
  323. package/src/rich-text-editor/inline.ts +345 -0
  324. package/src/rich-text-editor/keymap.ts +510 -0
  325. package/src/rich-text-editor/keys.ts +119 -0
  326. package/src/rich-text-editor/look.ts +427 -0
  327. package/src/rich-text-editor/markdown.ts +653 -0
  328. package/src/rich-text-editor/nodes.ts +497 -0
  329. package/src/rich-text-editor/render.ts +800 -0
  330. package/src/rich-text-editor/schema.ts +431 -0
  331. package/src/rich-text-editor/store.ts +39 -0
  332. package/src/rich-text-editor/suggest.ts +597 -0
  333. package/src/rich-text-editor/tables.ts +272 -0
  334. package/src/rich-text-editor/toolbar.ts +724 -0
  335. package/src/rich-text-editor/view.ts +2287 -0
  336. package/src/rich-text-editor/virtual.ts +347 -0
  337. package/src/richtext/node.ts +59 -30
  338. package/src/table/index.ts +14 -5
  339. package/src/terminal/backends.ts +4 -1
  340. package/src/terminal/index.ts +43 -15
  341. package/src/terminal/vt/node.ts +128 -29
  342. package/src/terminal/vt/renderer.ts +27 -5
  343. package/src/tree/index.ts +6 -4
  344. package/dist/markdown/ast.d.ts.map +0 -1
  345. package/dist/markdown/ast.js +0 -17
  346. package/dist/markdown/ast.js.map +0 -1
  347. package/dist/markdown/parse.d.ts.map +0 -1
  348. package/dist/markdown/parse.js.map +0 -1
  349. package/dist/markdown/tags.d.ts.map +0 -1
  350. package/dist/markdown/tags.js.map +0 -1
  351. /package/dist/{markdown → internal/markdown}/parse.d.ts +0 -0
  352. /package/dist/{markdown → internal/markdown}/tags.d.ts +0 -0
  353. /package/dist/{markdown → internal/markdown}/tags.js +0 -0
  354. /package/src/{markdown → internal/markdown}/tags.ts +0 -0
@@ -23,7 +23,9 @@
23
23
  // rendered as a native element rather than as somebody else's X window. It is
24
24
  // what makes `write()` real — the pty is ours — and what works on a machine
25
25
  // with no emulator installed, which is why `'auto'` ends there rather than at
26
- // the `fallback`.
26
+ // the `fallback`. It is also the only half that works on a react-x11 backend
27
+ // with no XEmbed at all — the native macOS one — so `'auto'` goes straight
28
+ // there when the app cannot host an emulator's window, whatever `PATH` holds.
27
29
  //
28
30
  // **`write()` still returns `false` on the XEmbed backends**, and that is not
29
31
  // an oversight: the pty belongs to xterm, so "type this" would have to be
@@ -40,12 +42,13 @@ import React, {
40
42
  useState,
41
43
  } from 'react';
42
44
  import type { ReactElement, ReactNode, Ref } from 'react';
43
- import { useTheme } from 'react-x11';
45
+ import { useApp, useTheme } from 'react-x11';
44
46
  import type { ForeignProps } from 'react-x11';
45
47
  import type { Style } from 'react-x11/style';
46
48
 
47
49
  import {
48
50
  BackendUnavailableError,
51
+ canHostXEmbed,
49
52
  resolveBackend,
50
53
  useEmbeddedClient,
51
54
  } from '../embed/index.js';
@@ -153,7 +156,13 @@ export interface TerminalProps {
153
156
  /**
154
157
  * Which terminal. Default `'auto'`: the first of xterm, urxvt, alacritty
155
158
  * that is installed, and `'vt'` — this package's own emulator, which needs
156
- * nothing installed — when none of them is.
159
+ * nothing installed — when none of them is, or when this react-x11 backend
160
+ * cannot embed another program's window at all (the native macOS one), in
161
+ * which case the three are not even looked for.
162
+ *
163
+ * Name one of the three on such a backend and it is taken at its word,
164
+ * not quietly swapped for vt: `status` is `'unavailable'`, `fallback`
165
+ * renders and `onError` gets an `EmbedUnsupportedError`.
157
166
  */
158
167
  backend?: TerminalBackendName;
159
168
  fontFamily?: string;
@@ -179,11 +188,14 @@ export interface TerminalProps {
179
188
  onExit?: (info: ExitInfo) => void;
180
189
  /** The emulator's `_NET_WM_NAME` changed: what the shell says is running. */
181
190
  onTitleChange?: (title: string) => void;
182
- /** Spawn failures, and the `BackendUnavailableError` for a machine with no
183
- * emulator installed. Without a handler neither is reported anywhere —
184
- * `status` and `fallback` are the visible half. */
191
+ /** Spawn failures, the `BackendUnavailableError` for a machine with no
192
+ * emulator installed, and the `EmbedUnsupportedError` for an emulator
193
+ * named on a react-x11 backend that cannot embed one. Without a handler
194
+ * none of it is reported anywhere — `status` and `fallback` are the
195
+ * visible half. */
185
196
  onError?: (err: Error) => void;
186
- /** Rendered instead of the surface when no backend is installed. */
197
+ /** Rendered instead of the surface when no backend is available — none
198
+ * installed, or the one named cannot be embedded here. */
187
199
  fallback?: ReactNode;
188
200
  /** False holds off spawning — a pane in a tab that is not open yet. */
189
201
  enabled?: boolean;
@@ -290,8 +302,10 @@ function warnVtOnly(props: TerminalProps): void {
290
302
  * while the pointer is *over* an embedded emulator, keys go straight to it.
291
303
  *
292
304
  * **The vt backend is the floor.** With `backend="auto"` (the default), a
293
- * machine with no emulator installed gets this package's own — so `fallback`
294
- * renders only when the pty module or `@xterm/headless` is missing too.
305
+ * machine with no emulator installed gets this package's own, and so does an
306
+ * app on a react-x11 backend with no XEmbed — the native macOS one — whatever
307
+ * is installed. `fallback` renders only when the pty module or
308
+ * `@xterm/headless` is missing too.
295
309
  */
296
310
  export function Terminal(props: TerminalProps): ReactElement {
297
311
  const {
@@ -302,6 +316,9 @@ export function Terminal(props: TerminalProps): ReactElement {
302
316
  stopSignal,
303
317
  } = props;
304
318
  const theme = useTheme() as unknown as Record<string, unknown>;
319
+ // Whether an emulator's window can be hosted here at all. It decides the
320
+ // ladder below before `PATH` is asked anything.
321
+ const embeddable = canHostXEmbed(useApp());
305
322
 
306
323
  // Everything that goes into the command line, as one string.
307
324
  //
@@ -386,12 +403,15 @@ export function Terminal(props: TerminalProps): ReactElement {
386
403
  // --- which half of the component is running ------------------------------
387
404
  //
388
405
  // `'vt'` asks for it outright; `'auto'` arrives here only after the PATH
389
- // probe found no emulator, which is what makes vt the floor rather than a
390
- // parallel option. Both halves' hooks run unconditionally — the one that is
391
- // not in use is simply disabled — because that is what hooks require and
392
- // because a `<Terminal>` that flips backends must not remount the other one.
406
+ // probe found no emulator — or without probing at all on an app that could
407
+ // not host one it found, which on a Mac with XQuartz is exactly what `PATH`
408
+ // offers. That is what makes vt the floor rather than a parallel option.
409
+ // Both halves' hooks run unconditionally — the one that is not in use is
410
+ // simply disabled — because that is what hooks require and because a
411
+ // `<Terminal>` that flips backends must not remount the other one.
393
412
  const [vtFallback, setVtFallback] = useState(false);
394
- const vt = backend === 'vt' || (backend === 'auto' && vtFallback);
413
+ const vt =
414
+ backend === 'vt' || (backend === 'auto' && (vtFallback || !embeddable));
395
415
  useEffect(() => {
396
416
  if (backend !== 'auto') setVtFallback(false);
397
417
  }, [backend]);
@@ -549,11 +569,19 @@ export function Terminal(props: TerminalProps): ReactElement {
549
569
 
550
570
  // No backend installed is an ordinary state of a perfectly healthy machine,
551
571
  // not an error to report — the same call `useDesktopCalendarEvents` makes
552
- // about a desktop with no Evolution Data Server.
572
+ // about a desktop with no Evolution Data Server. So is an emulator named on
573
+ // an app that cannot host one.
553
574
  if (client.status === 'unavailable' && props.fallback !== undefined) {
554
575
  return h(React.Fragment, null, props.fallback);
555
576
  }
556
577
 
578
+ // …and without a `fallback` that app still gets no `<foreign>`, which has
579
+ // no socket to be there: on the Cocoa backend it hands `onReady` a window id
580
+ // of `undefined`, and on core's headless mock mounting one throws from the
581
+ // commit. A box in the terminal's own background holds the layout, as it
582
+ // does while the vt module loads.
583
+ if (!embeddable) return hx('box', { style: styles });
584
+
557
585
  const foreign: ForeignElementProps = {
558
586
  onReady: client.handleReady,
559
587
  onEmbedded: title.onEmbedded,
@@ -15,7 +15,7 @@ import type {
15
15
  MeasureConstraints,
16
16
  MeasuredSize,
17
17
  } from 'react-x11/node';
18
- import type { KeyboardEvent, MouseEvent, WheelEvent } from 'react-x11';
18
+ import type { KeyboardEvent, MouseEvent, Rect, WheelEvent } from 'react-x11';
19
19
  import type { Style } from 'react-x11/style';
20
20
  import { Surface } from 'react-x11/ntk';
21
21
  import {
@@ -127,6 +127,21 @@ interface ClipboardLike {
127
127
 
128
128
  type Grid = { col: number; row: number };
129
129
 
130
+ /** Where the grid is drawn and how big it is — `_gridGeometry`. */
131
+ interface GridGeometry {
132
+ /** The top-left corner, in window coordinates, on whole pixels. */
133
+ x: number;
134
+ y: number;
135
+ cols: number;
136
+ rows: number;
137
+ /** `cols * cellWidth` and `rows * cellHeight`. */
138
+ width: number;
139
+ height: number;
140
+ /** Whether the whole grid lies inside the content box — the condition
141
+ * under which it can be promised opaque. */
142
+ fits: boolean;
143
+ }
144
+
130
145
  export class VtTermNode extends Node {
131
146
  private _term: XtermTerminal | null = null;
132
147
  private _disposables: XtermDisposable[] = [];
@@ -195,9 +210,11 @@ export class VtTermNode extends Node {
195
210
  this._paletteKey = key;
196
211
  this._palette = buildPalette(paletteColors(props));
197
212
  // The palette generation is a signature input, so the ordinary diff
198
- // repaints every cell whose colours actually moved. Nothing else here
199
- // needs to know a theme changed.
200
- this._repaint();
213
+ // repaints every cell whose colours actually moved. The one thing
214
+ // outside the diff's reach is the padding ring around the grid — the
215
+ // node's own background, and outside the rect `_repaint` claims — so
216
+ // this is the claim that covers the whole node.
217
+ this._repaintAll('props');
201
218
  }
202
219
 
203
220
  const { family, size } = this._fontStyle();
@@ -205,7 +222,7 @@ export class VtTermNode extends Node {
205
222
  this._fonts = null;
206
223
  this._mirror.invalidate();
207
224
  this.invalidateMeasure('measure');
208
- this._repaint();
225
+ this._repaintAll('props');
209
226
  }
210
227
  if (props.cursorBlink !== (prev.cursorBlink as boolean | undefined)) {
211
228
  this._syncBlink();
@@ -224,7 +241,17 @@ export class VtTermNode extends Node {
224
241
  // --- the emulator --------------------------------------------------------
225
242
 
226
243
  /**
227
- * Subscribe to everything that means "the screen may look different".
244
+ * Subscribe to what means "the screen may look different".
245
+ *
246
+ * One event carries every change program output can make: `onWriteParsed`
247
+ * fires once per parsed batch, after the text, the scroll and the cursor
248
+ * move it caused have all landed in the buffer. `onScroll` fires once per
249
+ * scrolled *line* — a 300,000-line flood was 336,000 claims — and
250
+ * `onCursorMove` once per parse, and each only ever announced what
251
+ * `onWriteParsed` was about to; core coalesces the claims, but at 2% of a
252
+ * flood's wall time they were the untidiest thing in it. The scrolls this
253
+ * node performs itself — `handleWheel`, `scrollLines`, `_typed`, a drag
254
+ * past an edge — repaint on their own.
228
255
  *
229
256
  * Only render-relevant events: the component keeps `onData`, `onTitleChange`
230
257
  * and `onBell`, which are about the process rather than about pixels.
@@ -234,14 +261,14 @@ export class VtTermNode extends Node {
234
261
  this._term = term;
235
262
  this._mirror.invalidate();
236
263
  if (!term) return;
237
- const dirty = (): void => this._repaint();
238
264
  this._disposables.push(
239
- term.onWriteParsed(dirty),
240
- term.onScroll(dirty),
241
- term.onCursorMove(dirty),
265
+ term.onWriteParsed(() => this._repaint()),
242
266
  term.onResize(() => {
243
267
  this._mirror.invalidate();
244
- this._repaint();
268
+ // The grid may have changed shape, and the strip a smaller one no
269
+ // longer covers owes its background — a fill that a claim inside
270
+ // the opaque rect would skip.
271
+ this._repaintAll('text');
245
272
  }),
246
273
  term.buffer.onBufferChange(() => {
247
274
  // The alternate screen is a different buffer with a different
@@ -451,18 +478,95 @@ export class VtTermNode extends Node {
451
478
 
452
479
  // --- painting ------------------------------------------------------------
453
480
 
481
+ /**
482
+ * The screen may look different: claim the grid.
483
+ *
484
+ * The grid rect rather than a tighter one, because which cells are dirty
485
+ * is not known until the diff runs inside paint — damage is a clip and a
486
+ * cull bound rather than a promise to redraw everything, and the diff still
487
+ * decides what is *rendered*, which is where the cost is. And the rect
488
+ * rather than the node: a node claim is inflated by a pixel of slop that
489
+ * lies outside `opaqueRect()`, so the fills core skips under an opaque
490
+ * pass — the window's background and this node's own, 0.7ms of a 6ms
491
+ * Cocoa frame — would be painted after all. Before the first paint there
492
+ * is no cover to promise and the node is the claim.
493
+ */
454
494
  private _repaint(): void {
455
495
  if (this.destroyed) return;
456
- // The grid rect, not a tighter one: which cells are dirty is not known
457
- // until the diff runs inside paint. Damage is a clip and a cull bound
458
- // rather than a promise to redraw everything, and the diff still decides
459
- // what is *rendered* — which is where the cost is.
460
- this.invalidate(false, this, 'text');
496
+ this.invalidate(false, this.opaqueRect() ?? this, 'text');
497
+ }
498
+
499
+ /** Everything, ring included: the palette or the grid's shape changed. */
500
+ private _repaintAll(reason: 'props' | 'text'): void {
501
+ if (this.destroyed) return;
502
+ this.invalidate(false, this, reason);
503
+ }
504
+
505
+ /**
506
+ * Where the grid goes and how big it is, in window coordinates.
507
+ *
508
+ * The content box's corner and as many whole cells as fit both the box and
509
+ * the emulator — which resizes a beat later, through the component and off
510
+ * the paint stack, so until it catches up the grid is the intersection.
511
+ * The corner is snapped to whole pixels: cells are integers, the composite
512
+ * is a copy of whole pixels, and a half-pixel of drift against the box is
513
+ * invisible where a resampled composite is not. `fits` is whether those
514
+ * cells lie inside the box on whole pixels, which is the condition for
515
+ * promising them opaque; a box smaller than one cell still draws one,
516
+ * clipped, and promises nothing.
517
+ */
518
+ private _gridGeometry(fonts: FontSet, term: XtermTerminal): GridGeometry {
519
+ const box = this.contentBox();
520
+ const { cellWidth, cellHeight } = fonts.metrics;
521
+ const cols = Math.max(
522
+ 1,
523
+ Math.min(Math.floor(box.width / cellWidth), term.cols),
524
+ );
525
+ const rows = Math.max(
526
+ 1,
527
+ Math.min(Math.floor(box.height / cellHeight), term.rows),
528
+ );
529
+ const width = cols * cellWidth;
530
+ const height = rows * cellHeight;
531
+ return {
532
+ x: Math.round(box.x),
533
+ y: Math.round(box.y),
534
+ cols,
535
+ rows,
536
+ width,
537
+ height,
538
+ fits:
539
+ Number.isInteger(box.x) &&
540
+ Number.isInteger(box.y) &&
541
+ width <= box.width &&
542
+ height <= box.height,
543
+ };
544
+ }
545
+
546
+ /**
547
+ * The grid — what the renderer writes every pixel of, every paint.
548
+ *
549
+ * Core's word for it (react-x11#497): a pass inside this rect is painted
550
+ * without the fills that would be under it, and the composite in
551
+ * `present()` replaces those pixels rather than blending over them. Null
552
+ * until the first paint has built a renderer — the mock backend never
553
+ * does, and a promise about pixels nothing will draw is a hole where the
554
+ * background should be — null without fonts or an emulator, when
555
+ * `paintContent` draws nothing, and null when the grid does not fit the
556
+ * box on whole pixels, because the answer is taken literally: an
557
+ * antialiased edge is not opaque.
558
+ */
559
+ override opaqueRect(): Rect | null {
560
+ const term = this._term;
561
+ if (!term || !this._renderer) return null;
562
+ const fonts = this._fontSet();
563
+ if (!fonts) return null;
564
+ const grid = this._gridGeometry(fonts, term);
565
+ if (!grid.fits) return null;
566
+ return { x: grid.x, y: grid.y, width: grid.width, height: grid.height };
461
567
  }
462
568
 
463
- override paint(ctx: Context2D): void {
464
- // background, border, and the clip to this node's rect
465
- super.paint(ctx);
569
+ override paintContent(ctx: Context2D): void {
466
570
  const fonts = this._fontSet();
467
571
  if (!fonts) return;
468
572
  // Before the `term` check on purpose: the component sizes the emulator it
@@ -477,14 +581,8 @@ export class VtTermNode extends Node {
477
581
  const renderer = this._ensureRenderer(cell);
478
582
  if (!renderer) return; // mock backend: no pixel API, so nothing to draw
479
583
 
480
- const box = this.contentBox();
481
- const { cellWidth, cellHeight } = fonts.metrics;
482
- const fitCols = Math.max(1, Math.floor(box.width / cellWidth));
483
- const fitRows = Math.max(1, Math.floor(box.height / cellHeight));
484
- // The emulator resizes a beat later (through the component, off this
485
- // stack), so draw the intersection until it catches up.
486
- const cols = Math.max(1, Math.min(fitCols, term.cols));
487
- const rows = Math.max(1, Math.min(fitRows, term.rows));
584
+ const grid = this._gridGeometry(fonts, term);
585
+ const { cols, rows } = grid;
488
586
  this._cols = cols;
489
587
  this._rows = rows;
490
588
 
@@ -512,8 +610,8 @@ export class VtTermNode extends Node {
512
610
 
513
611
  const result = this._mirror.diff(snapshot);
514
612
  renderer.begin(cell, {
515
- originX: box.x,
516
- originY: box.y,
613
+ originX: grid.x,
614
+ originY: grid.y,
517
615
  cols,
518
616
  rows,
519
617
  metrics: fonts.metrics,
@@ -838,6 +936,7 @@ export class VtTermNode extends Node {
838
936
  if (!term) return;
839
937
  if (term.buffer.active.viewportY !== term.buffer.active.baseY) {
840
938
  term.scrollToBottom();
939
+ this._repaint();
841
940
  }
842
941
  if (this._selection) this.clearSelection();
843
942
  }
@@ -22,6 +22,15 @@
22
22
  // `ctx.drawGlyphs` per colour (one `CompositeGlyphs` covering every run in
23
23
  // the call). That is what keeps "the terminal scrolled" at a handful of
24
24
  // requests rather than a few thousand.
25
+ //
26
+ // The retained renderer's composite is a `copy`, not a blend. Every cell of
27
+ // the grid is filled before it is shown, so replacing the window's pixels
28
+ // with the surface's is the same picture as compositing over them — and
29
+ // saying so is what lets the Cocoa backend send it as a row memcpy instead
30
+ // of building a CGImage and blending it (react-x11#501: 0.42ms against 1.37
31
+ // for a 125x45 grid at 2x), and X11 as `PictOp.Src`. Together with the
32
+ // node's `opaqueRect()` it is why a streaming frame no longer pays for
33
+ // pixels nobody sees.
25
34
  import type { CellMetrics, GlyphRun } from './fonts.js';
26
35
 
27
36
  /** What `ctx.drawGlyphs` takes: a run and where its baseline starts. */
@@ -34,6 +43,10 @@ export interface PositionedRun {
34
43
  /** The slice of ntk's 2d context the renderers draw through. */
35
44
  export interface CellContext {
36
45
  fillStyle: unknown;
46
+ /** Canvas's compositing operator. `'copy'` replaces rather than blends;
47
+ * a backend that cannot draw it refuses the assignment, so read it back
48
+ * rather than assume. Absent on a context with no notion of it. */
49
+ globalCompositeOperation?: string;
37
50
  fillRect(x: number, y: number, w: number, h: number): void;
38
51
  fillRects?(rects: number[]): void;
39
52
  drawGlyphs?(op: number, src: unknown, positioned: PositionedRun[]): void;
@@ -459,11 +472,19 @@ export class RetainedRenderer extends BatchingRenderer {
459
472
  const width = frame.cols * frame.metrics.cellWidth;
460
473
  const height = frame.rows * frame.metrics.cellHeight;
461
474
  if (width <= 0 || height <= 0) return;
462
- // The whole grid, one composite. It is the whole grid rather than the
463
- // frame's dirty bands because `Node.paint` has just filled this node's
464
- // background across everything the damage clip covers, and the damage we
465
- // claimed is the grid rect — the diff decides what is *rendered*, which
466
- // is where the cost is, and the blit is one request either way.
475
+ // The whole grid, one composite, clipped by the pass: the damage the
476
+ // node claimed is the grid rect, the diff decided what was *rendered*
477
+ // into the surface — which is where the cost is — and the composite is
478
+ // one request either way.
479
+ //
480
+ // As a `copy`: the grid is opaque, every cell filled, so replacing the
481
+ // pixels under it is the same picture as blending over them, and it is
482
+ // the shape the Cocoa backend turns into a row memcpy (react-x11#501)
483
+ // and X11 into `PictOp.Src`. Context state, on the window's context, so
484
+ // it goes back afterwards; a backend that cannot draw it refuses the
485
+ // assignment and blends, which is the same pixels.
486
+ const op = ctx.globalCompositeOperation;
487
+ ctx.globalCompositeOperation = 'copy';
467
488
  ctx.drawImage(
468
489
  surface,
469
490
  0,
@@ -475,6 +496,7 @@ export class RetainedRenderer extends BatchingRenderer {
475
496
  width,
476
497
  height,
477
498
  );
499
+ ctx.globalCompositeOperation = op ?? 'source-over';
478
500
  this.count('blits');
479
501
  }
480
502
 
package/src/tree/index.ts CHANGED
@@ -70,6 +70,7 @@ import {
70
70
  later,
71
71
  } from '../internal/timers.js';
72
72
  import type { DelayTick } from '../internal/timers.js';
73
+ import { scaleOf } from '../internal/units.js';
73
74
  import { useReveal } from '../internal/scroll.js';
74
75
  import {
75
76
  BURST_BUDGET,
@@ -1012,12 +1013,14 @@ export function Tree<T = TreeItem>({
1012
1013
  // under it, so their total change is what has to come back out of the
1013
1014
  // scroll offset — otherwise measuring a row you have already scrolled
1014
1015
  // past yanks the list under the pointer.
1015
- const anchor = box ? idx.indexAt(box.scrollY) : 0;
1016
+ const anchor = box ? idx.indexAt(box.scrollY / scaleOf(box)) : 0;
1016
1017
  let shift = 0;
1017
1018
  let changed = false;
1018
1019
  for (const [id, { node, at }] of rowNodes.current) {
1019
1020
  if (rows[at]?.id !== id) continue; // drawn against a list that has moved
1020
- const height = node.abs.height;
1021
+ // `abs` is device; the height index — like every style length — is
1022
+ // logical (../internal/units.ts).
1023
+ const height = node.abs.height / scaleOf(node);
1021
1024
  const was = idx.heightAt(at);
1022
1025
  if (!idx.measure(id, at, height)) continue;
1023
1026
  changed = true;
@@ -1043,7 +1046,7 @@ export function Tree<T = TreeItem>({
1043
1046
  if (!virtualizing) return false;
1044
1047
  const box = scroller.current;
1045
1048
  if (!box) return false;
1046
- const anchor = heights.indexAt(box.scrollY);
1049
+ const anchor = heights.indexAt(box.scrollY / scaleOf(box));
1047
1050
  const before = heights.offsetAt(anchor);
1048
1051
  if (!heights.adapt()) return false;
1049
1052
  reveal.nudge(heights.offsetAt(anchor) - before);
@@ -1075,7 +1078,6 @@ export function Tree<T = TreeItem>({
1075
1078
  let look: DelayTick = null;
1076
1079
  let tries = 0;
1077
1080
  const pass = (): void => {
1078
- (globalThis as any).__ticks = ((globalThis as any).__ticks ?? 0) + 1;
1079
1081
  // `measureRows` first, and its answer handed on: a pass that moved the
1080
1082
  // heights has not settled anything, and an owed scroll judged against
1081
1083
  // the layout it is about to invalidate is not owed any less. During a
@@ -1 +0,0 @@
1
- {"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../../src/markdown/ast.ts"],"names":[],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- // The markdown AST `parse.ts` produces and `index.ts` renders. Deliberately
2
- // small: it is the GFM constructs this component draws, not a general
3
- // mdast — but it is shaped so that growing it stays additive. In particular
4
- // `component` is the MDX direction: `ComponentBlock` is parsed and rendered
5
- // (docs/prd-mdx.md, M1), and `ComponentInline` is still reserved — see the
6
- // note on it for why the inline half needs machinery `<richtext>` does not
7
- // have yet.
8
- /**
9
- * A spread (`{...props}`) is an attribute with no name, so it is keyed
10
- * `...0`, `...1`, … in the order it appeared. An attribute name cannot start
11
- * with `.`, so these cannot collide with one; a renderer walking
12
- * `Object.entries` in insertion order applies each spread where it was
13
- * written, which is what decides whether it overrides `height` or `height`
14
- * overrides it.
15
- */
16
- export const SPREAD_PREFIX = '...';
17
- //# sourceMappingURL=ast.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ast.js","sourceRoot":"","sources":["../../src/markdown/ast.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,sEAAsE;AACtE,4EAA4E;AAC5E,4EAA4E;AAC5E,2EAA2E;AAC3E,2EAA2E;AAC3E,YAAY;AAqEZ;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../src/markdown/parse.ts"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EAGV,QAAQ,EACR,UAAU,EAGV,YAAY,EAEb,MAAM,UAAU,CAAC;AA4IlB,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB,GAAG,QAAQ,CAkB1E;AA+kBD;;;GAGG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,OAAO,EACjB,WAAW,UAAQ,GAClB,UAAU,EAAE,CA8Pd"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../src/markdown/parse.ts"],"names":[],"mappings":"AAuCA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGhD,wDAAwD;AACxD,MAAM,aAAa,GAAG,GAAY,EAAE,CAAC,KAAK,CAAC;AAE3C,8EAA8E;AAE9E,MAAM,QAAQ,GAAG,UAAU,CAAC;AAC5B,MAAM,MAAM,GAAG,qDAAqD,CAAC;AACrE,MAAM,WAAW,GAAG,gBAAgB,CAAC;AACrC,MAAM,aAAa,GAAG,mCAAmC,CAAC;AAC1D,MAAM,KAAK,GAAG,uCAAuC,CAAC;AACtD,MAAM,SAAS,GAAG,uBAAuB,CAAC;AAC1C,MAAM,QAAQ,GAAG,mBAAmB,CAAC;AACrC,MAAM,OAAO,GAAG,gDAAgD,CAAC;AACjE,MAAM,OAAO,GAAG,oBAAoB,CAAC;AACrC,MAAM,cAAc,GAAG,cAAc,CAAC;AACtC,gDAAgD;AAChD,MAAM,cAAc,GAClB,iEAAiE,CAAC;AACpE,0EAA0E;AAC1E,MAAM,qBAAqB,GAAG,qBAAqB,CAAC;AAEpD;qDACqD;AACrD,SAAS,YAAY,CACnB,IAAY,EACZ,WAAW,GAA8B,aAAa,EACtD,WAAW,GAAG,KAAK;IAEnB,OAAO,CACL,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;QACjB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;QAChB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;QAClB,oBAAoB,CAAC,IAAI,EAAE,WAAW,EAAE,WAAW,CAAC,CACrD,CAAC;AACJ,CAAC;AAED;6BAC6B;AAC7B,SAAS,oBAAoB,CAC3B,IAAY,EACZ,WAAsC,EACtC,WAAoB;IAEpB,MAAM,KAAK,GAAG,gBAAgB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;IACpE,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,YAAY,CAAC;AAClD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,gBAAgB,CACvB,KAAe,EACf,EAAU,EACV,WAAsC,EACtC,WAAW,GAAG,KAAK;IAEnB,sEAAsE;IACtE,wEAAwE;IACxE,sEAAsE;IACtE,+DAA+D;IAC/D,IAAI,WAAW,KAAK,aAAa;QAAE,OAAO,IAAI,CAAC;IAC/C,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACnC,IAAI,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IAEzD,IAAI,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;IACrB,KAAK,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1C,IAAI,CAAC,GAAG,EAAE;YAAE,IAAI,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACpC,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QAC5D,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC9B,IAAI,GAAG,KAAK,YAAY,EAAE,CAAC;YACzB,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAC;YACrE,SAAS;QACX,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO;YAAE,OAAO,IAAI,CAAC;QACtC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACzE,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,kEAAkE;AAClE,SAAS,kBAAkB,CACzB,KAAe,EACf,IAAY,EACZ,IAAY,EACZ,WAAsC;IAEtC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5C,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG;YAAE,SAAS;QACrD,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;QACnD,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,YAAY,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI;YAAE,SAAS;QACxE,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,SAAS;QACpD,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM;YAAE,KAAK,IAAI,CAAC,CAAC;aAC/B,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC9B,IAAI,KAAK,KAAK,CAAC;gBAAE,OAAO,CAAC,CAAC;YAC1B,KAAK,IAAI,CAAC,CAAC;QACb,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAC,CAAC;AACZ,CAAC;AAED,2EAA2E;AAC3E,SAAS,iBAAiB,CAAC,IAAY;IACrC,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QACvB,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,EAAE,KAAK,EAAE;YAAE,GAAG,IAAI,CAAC,CAAC;aACnB,IAAI,EAAE,KAAK,CAAC;YAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;;YACnC,MAAM;QACX,CAAC,IAAI,CAAC,CAAC;IACT,CAAC;IACD,IAAI,GAAG,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC,CAAC,wBAAwB;IACpD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY;IAC5B,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE;QAAE,CAAC,IAAI,CAAC,CAAC;IAC5D,OAAO,CAAC,CAAC;AACX,CAAC;AAED,8EAA8E;AAE9E,MAAM,UAAU,KAAK,CAAC,MAAc,EAAE,OAAO,GAAiB,EAAE;IAC9D,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,KAAK,KAAK,CAAC;IAC1C,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAgB,EAAE,CAAC;IAC/B,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,WAAW,CACT,KAAK,EACL,OAAO,EACP,MAAM,EACN,MAAM,EACN,OAAO,CAAC,WAAW,IAAI,aAAa,EACpC,OAAO,CAAC,WAAW,KAAK,IAAI,CAC7B,CAAC;IACF,OAAO;QACL,MAAM;QACN,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC3D,CAAC;AACJ,CAAC;AAED,8EAA8E;AAE9E;;;;;GAKG;AACH,SAAS,WAAW,CAClB,KAAe,EACf,QAAiB,EACjB,GAAgB,EAChB,MAAgC,EAChC,WAAW,GAA8B,aAAa,EACtD,WAAW,GAAG,KAAK;IAEnB,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IAEvB,IAAI,SAAS,GAAG,CAAC,CAAC,CAAC;IACnB,MAAM,IAAI,GAAa,EAAE,CAAC;IAE1B,MAAM,MAAM,GAAG,CAAC,KAAgB,EAAE,KAAa,EAAE,GAAW,EAAQ,EAAE;QACpE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChB,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;IAC7B,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,GAAW,EAAQ,EAAE;QACtC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,MAAM,KAAK,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChB,SAAS,GAAG,CAAC,CAAC,CAAC;QACf,uEAAuE;QACvE,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,EAAE,QAAQ,IAAI,GAAG,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;QACvE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;YACrB,MAAM,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IACxD,CAAC,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACb,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,MAAM,IAAI,GAAG,QAAQ,IAAI,MAAM,CAAC,CAAC,6BAA6B;QAE9D,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,SAAS,CAAC,CAAC,CAAC,CAAC;YACb,CAAC,IAAI,CAAC,CAAC;YACP,SAAS;QACX,CAAC;QAED,oEAAoE;QACpE,qEAAqE;QACrE,mEAAmE;QACnE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpC,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,IAAI,EAAE,CAAC;oBACT,CAAC,IAAI,CAAC,CAAC;oBACP,SAAS;gBACX,CAAC;gBACD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC7B,MAAM,KAAK,GAAG,SAAS,CAAC;gBACxB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;gBAChB,SAAS,GAAG,CAAC,CAAC,CAAC;gBACf,MAAM,CACJ;oBACE,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACnC,QAAQ,EAAE,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC;iBAChD,EACD,KAAK,EACL,CAAC,GAAG,CAAC,CACN,CAAC;gBACF,CAAC,IAAI,CAAC,CAAC;gBACP,SAAS;YACX,CAAC;QACH,CAAC;QAED,qEAAqE;QACrE,qEAAqE;QACrE,gCAAgC;QAChC,IACE,IAAI;YACJ,IAAI,CAAC,MAAM,KAAK,CAAC;YACjB,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EACpE,CAAC;YACD,CAAC,IAAI,CAAC,CAAC;YACP,SAAS;QACX,CAAC;QAED,qEAAqE;QACrE,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACrB,SAAS,CAAC,CAAC,CAAC,CAAC;YACb,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YACnC,CAAC,IAAI,CAAC,CAAC;YACP,SAAS;QACX,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,GAAG,EAAE,CAAC;YACR,SAAS,CAAC,CAAC,CAAC,CAAC;YACb,MAAM,CACJ;gBACE,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM;gBACpB,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC;aACvD,EACD,CAAC,EACD,CAAC,GAAG,CAAC,CACN,CAAC;YACF,CAAC,IAAI,CAAC,CAAC;YACP,SAAS;QACX,CAAC;QAED,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,sEAAsE;QACtE,IAAI,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC9D,SAAS,CAAC,CAAC,CAAC,CAAC;YACb,MAAM,KAAK,GAAG,CAAC,CAAC;YAChB,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACpC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;YACxE,MAAM,IAAI,GAAa,EAAE,CAAC;YAC1B,IAAI,MAAM,GAAG,KAAK,CAAC;YACnB,CAAC,IAAI,CAAC,CAAC;YACP,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBACb,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACnB,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACpC,IACE,KAAK;oBACL,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC;oBACzB,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM;oBAChC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,EACf,CAAC;oBACD,MAAM,GAAG,IAAI,CAAC;oBACd,CAAC,IAAI,CAAC,CAAC;oBACP,MAAM;gBACR,CAAC;gBACD,wDAAwD;gBACxD,IAAI,CAAC,IAAI,CACP,QAAQ,CAAC,CAAC,CAAC,IAAI,WAAW;oBACxB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC;oBACtB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CACzB,CAAC;gBACF,CAAC,IAAI,CAAC,CAAC;YACT,CAAC;YACD,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;YACxE,SAAS;QACX,CAAC;QAED,wEAAwE;QACxE,uEAAuE;QACvE,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QACvE,IAAI,SAAS,KAAK,YAAY,EAAE,CAAC;YAC/B,qEAAqE;YACrE,sEAAsE;YACtE,kEAAkE;YAClE,IAAI,QAAQ,EAAE,CAAC;gBACb,SAAS,CAAC,CAAC,CAAC,CAAC;gBACb,CAAC,GAAG,CAAC,CAAC;gBACN,SAAS;YACX,CAAC;QACH,CAAC;aAAM,IAAI,SAAS,EAAE,CAAC;YACrB,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;YACpC,SAAS,CAAC,CAAC,CAAC,CAAC;YACb,MAAM,KAAK,GAAG,CAAC,CAAC;YAChB,MAAM,IAAI,GAAG,CAAC,QAAqB,EAAkB,EAAE,CAAC,CAAC;gBACvD,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,UAAU,EAAE,GAAG,CAAC,UAAU;gBAC1B,QAAQ;aACT,CAAC,CAAC;YAEH,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACxB,CAAC,GAAG,QAAQ,GAAG,CAAC,CAAC;gBACjB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC3B,SAAS;YACX,CAAC;YAED,MAAM,OAAO,GAAG,kBAAkB,CAChC,KAAK,EACL,QAAQ,GAAG,CAAC,EACZ,GAAG,CAAC,IAAI,EACR,WAAW,CACZ,CAAC;YACF,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;gBACnB,MAAM,QAAQ,GAAgB,EAAE,CAAC;gBACjC,WAAW,CACT,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE,OAAO,CAAC,EAClC,QAAQ,IAAI,OAAO,IAAI,CAAC,EACxB,QAAQ,EACR,SAAS,EACT,WAAW,EACX,WAAW,CACZ,CAAC;gBACF,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC;gBAChB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;gBACjC,SAAS;YACX,CAAC;YAED,qEAAqE;YACrE,oEAAoE;YACpE,uEAAuE;YACvE,gEAAgE;YAChE,oEAAoE;YACpE,+CAA+C;YAC/C,IAAI,QAAQ,EAAE,CAAC;gBACb,CAAC,GAAG,QAAQ,GAAG,CAAC,CAAC;gBACjB,SAAS;YACX,CAAC;YACD,kEAAkE;QACpE,CAAC;QAED,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,KAAK,EAAE,CAAC;YACV,SAAS,CAAC,CAAC,CAAC,CAAC;YACb,MAAM,KAAK,GAAG,CAAC,CAAC;YAChB,MAAM,KAAK,GAAa,EAAE,CAAC;YAC3B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACrB,CAAC,IAAI,CAAC,CAAC;YACP,oEAAoE;YACpE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBACb,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACnB,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC3B,IAAI,CAAC,EAAE,CAAC;oBACN,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACjB,CAAC,IAAI,CAAC,CAAC;oBACP,SAAS;gBACX,CAAC;gBACD,IACE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;oBACjB,CAAC,YAAY,CAAC,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC;oBAC1C,KAAK,CAAC,MAAM,GAAG,CAAC;oBAChB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EACvC,CAAC;oBACD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,sCAAsC;oBACrD,CAAC,IAAI,CAAC,CAAC;oBACP,SAAS;gBACX,CAAC;gBACD,MAAM;YACR,CAAC;YACD,MAAM,QAAQ,GAAgB,EAAE,CAAC;YACjC,WAAW,CACT,KAAK,EACL,QAAQ,IAAI,CAAC,KAAK,CAAC,EACnB,QAAQ,EACR,SAAS,EACT,WAAW,EACX,WAAW,CACZ,CAAC;YACF,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;gBAAE,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;YACvE,SAAS;QACX,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,wEAAwE;QACxE,wEAAwE;QACxE,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAClE,SAAS,CAAC,CAAC,CAAC,CAAC;YACb,MAAM,KAAK,GAAG,CAAC,CAAC;YAChB,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;YACtE,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC;YACd,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;YAC7B,SAAS;QACX,CAAC;QAED,sEAAsE;QACtE,uEAAuE;QACvE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAC7C,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;YACnC,kEAAkE;YAClE,mEAAmE;YACnE,oEAAoE;YACpE,MAAM,SAAS,GACb,IAAI,KAAK,IAAI;gBACb,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAClB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;gBACzB,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM,CAAC;YAC/C,MAAM,YAAY,GAChB,CAAC,SAAS;gBACV,QAAQ;gBACR,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC;gBACf,IAAI,KAAK,IAAI;gBACb,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnC,MAAM,aAAa,GAAG,QAAQ,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC9C,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,YAAY,CAAC,EAAE,CAAC;gBAC1D,MAAM,KAAK,GAAG,CAAC,CAAC;gBAChB,MAAM,KAAK,GAAiB,SAAS;oBACnC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;oBAC7B,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;gBAChC,CAAC,IAAI,CAAC,CAAC;gBACP,MAAM,IAAI,GAAqB,EAAE,CAAC;gBAClC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;oBACb,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;oBACnB,IACE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;wBAChB,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;wBAChB,YAAY,CAAC,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC;wBAEzC,MAAM;oBACR,IAAI,CAAC,IAAI,CACP,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,EAAE,QAAQ,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CACjE,CAAC;oBACF,CAAC,IAAI,CAAC,CAAC;gBACT,CAAC;gBACD,MAAM,CACJ;oBACE,IAAI,EAAE,OAAO;oBACb,KAAK;oBACL,MAAM,EAAE,YAAY,CAAC,WAAW,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC;oBACtD,IAAI;iBACL,EACD,KAAK,EACL,CAAC,CACF,CAAC;gBACF,SAAS;YACX,CAAC;iBAAM,IACL,aAAa;gBACb,WAAW,CAAC,MAAM,GAAG,CAAC;gBACtB,IAAI,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAChC,CAAC;gBACD,+DAA+D;gBAC/D,qDAAqD;gBACrD,CAAC,IAAI,CAAC,CAAC;gBACP,SAAS;YACX,CAAC;QACH,CAAC;QAED,6CAA6C;QAC7C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACnD,MAAM,KAAK,GAAG,CAAC,CAAC;YAChB,MAAM,IAAI,GAAa,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBACb,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACnB,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC3B,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;oBACxD,CAAC,IAAI,CAAC,CAAC;gBACT,CAAC;qBAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC5B,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACd,CAAC,IAAI,CAAC,CAAC;gBACT,CAAC;;oBAAM,MAAM;YACf,CAAC;YACD,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE;gBAAE,IAAI,CAAC,GAAG,EAAE,CAAC;YACnE,MAAM,CACJ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,EAC/D,KAAK,EACL,CAAC,CACF,CAAC;YACF,SAAS;QACX,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS,GAAG,CAAC,CAAC;QACrC,sEAAsE;QACtE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAC5B,CAAC,IAAI,CAAC,CAAC;IACT,CAAC;IAED,SAAS,CAAC,CAAC,CAAC,CAAC;AACf,CAAC;AASD,SAAS,SAAS,CAChB,KAAe,EACf,IAAY,EACZ,QAAiB,EACjB,WAAW,GAA8B,aAAa,EACtD,WAAW,GAAG,KAAK;IAEnB,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IACvB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IACxC,oEAAoE;IACpE,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;IAClE,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACxB,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAClC,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,sBAAsB;IACvF,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjD,MAAM,KAAK,GAAe,EAAE,CAAC;IAC7B,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,IAAI,CAAC,GAAG,IAAI,CAAC;IACb,IAAI,QAAQ,GAAG,KAAK,CAAC;IAErB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACjC,MAAM,QAAQ,GACZ,CAAC;YACD,CAAC,OAAO;gBACN,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,UAAU;gBAC5D,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC;QAC3B,IAAI,CAAC,QAAQ;YAAE,MAAM;QACrB,IAAI,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,KAAK,GAAG,IAAI,CAAC;QAC/C,QAAQ,GAAG,KAAK,CAAC;QAEjB,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAC3B,MAAM,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACxB,qEAAqE;QACrE,MAAM,GAAG,GACP,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;YAChD,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC;QACzB,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC;QAEjD,MAAM,KAAK,GAAa,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC,IAAI,CAAC,CAAC;QACP,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACb,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACnB,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrB,aAAa,IAAI,CAAC,CAAC;gBACnB,IAAI,aAAa,GAAG,CAAC;oBAAE,MAAM;gBAC7B,CAAC,IAAI,CAAC,CAAC;gBACP,SAAS;YACX,CAAC;YACD,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,aAAa,EAAE,CAAC;gBACjC,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;oBACtB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACf,KAAK,GAAG,IAAI,CAAC;oBACb,aAAa,GAAG,CAAC,CAAC;gBACpB,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;gBACnC,CAAC,IAAI,CAAC,CAAC;gBACP,SAAS;YACX,CAAC;YACD,IACE,aAAa,KAAK,CAAC;gBACnB,CAAC,YAAY,CAAC,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC;gBAC1C,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EACjB,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,8BAA8B;gBAC7C,CAAC,IAAI,CAAC,CAAC;gBACP,SAAS;YACX,CAAC;YACD,MAAM;QACR,CAAC;QACD,IAAI,aAAa,GAAG,CAAC;YAAE,QAAQ,GAAG,IAAI,CAAC;QAEvC,4DAA4D;QAC5D,IAAI,OAAO,GAAmB,IAAI,CAAC;QACnC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACpC,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC;YAC1B,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAC5C,CAAC;QAED,MAAM,QAAQ,GAAgB,EAAE,CAAC;QACjC,WAAW,CACT,KAAK,EACL,QAAQ,IAAI,CAAC,IAAI,CAAC,EAClB,QAAQ,EACR,SAAS,EACT,WAAW,EACX,WAAW,CACZ,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,OAAO;QACL,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE;QAC5D,GAAG,EAAE,CAAC;KACP,CAAC;AACJ,CAAC;AAED,8EAA8E;AAE9E,sEAAsE;AACtE,SAAS,QAAQ,CAAC,IAAY;IAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3C,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,EAAE,KAAK,IAAI,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YAC1C,GAAG,IAAI,GAAG,CAAC;YACX,CAAC,IAAI,CAAC,CAAC;QACT,CAAC;aAAM,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YACvB,GAAG,GAAG,EAAE,CAAC;QACX,CAAC;;YAAM,GAAG,IAAI,EAAE,CAAC;IACnB,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IACvB,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;QAChE,KAAK,CAAC,KAAK,EAAE,CAAC;IAChB,IACE,KAAK,CAAC,MAAM,GAAG,CAAC;QAChB,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE;QAC9B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;QAErB,KAAK,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,OAAO,CAAC,IAAY;IAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAClC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,IAAI,IAAI,KAAK;QAAE,OAAO,QAAQ,CAAC;IACnC,IAAI,KAAK;QAAE,OAAO,OAAO,CAAC;IAC1B,IAAI,IAAI;QAAE,OAAO,MAAM,CAAC;IACxB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,YAAY,CACnB,KAAe,EACf,KAAa,EACb,aAAsB;IAEtB,MAAM,GAAG,GAAmB,EAAE,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5B,GAAG,CAAC,IAAI,CACN,WAAW,CACT,IAAI,EACJ,aAAa,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CACzD,CACF,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAiBD,MAAM,SAAS,GAAG,KAAK,CAAC;AACxB,MAAM,YAAY,GAAG,eAAe,CAAC;AACrC,MAAM,WAAW,GAAG,4CAA4C,CAAC;AACjE,MAAM,YAAY,GAAG,qCAAqC,CAAC;AAC3D,MAAM,SAAS,GACb,uEAAuE,CAAC;AAE1E,MAAM,cAAc,GAA2B;IAC7C,GAAG,EAAE,GAAG;IACR,EAAE,EAAE,GAAG;IACP,EAAE,EAAE,GAAG;IACP,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,GAAG;IACT,GAAG,EAAE,GAAG;IACR,KAAK,EAAE,GAAG;IACV,MAAM,EAAE,GAAG;IACX,KAAK,EAAE,GAAG;IACV,KAAK,EAAE,GAAG;IACV,KAAK,EAAE,GAAG;IACV,KAAK,EAAE,GAAG;IACV,KAAK,EAAE,GAAG;IACV,MAAM,EAAE,GAAG;CACZ,CAAC;AAEF,SAAS,cAAc,CAAC,IAAY;IAClC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACrC,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;QACxD,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAC7B,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACnE,CAAC;QACD,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAC7B,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACnE,CAAC;QACD,OAAO,cAAc,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,QAAQ,CAAC,EAAsB;IACtC,IAAI,EAAE,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC,CAAC,wCAAwC;IAC3E,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QAAE,OAAO,IAAI,CAAC;IACpC,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;QAAE,OAAO,OAAO,CAAC;IAC1C,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CACzB,IAAY,EACZ,QAAiB,EACjB,WAAW,GAAG,KAAK;IAEnB,MAAM,KAAK,GAAW,EAAE,CAAC;IACzB,IAAI,GAAG,GAAG,EAAE,CAAC;IAEb,MAAM,SAAS,GAAG,GAAS,EAAE;QAC3B,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC7B,KAAK,CAAC,IAAI,CAAC;YACT,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,CAAC,GAAG,CAAC,EAAE;SAClD,CAAC,CAAC;QACH,GAAG,GAAG,EAAE,CAAC;IACX,CAAC,CAAC;IAEF,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;IACxB,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC;QACf,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAEnB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAChB,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACzB,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClB,mCAAmC;gBACnC,SAAS,EAAE,CAAC;gBACZ,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;gBACtD,CAAC,IAAI,CAAC,CAAC;gBACP,SAAS;YACX,CAAC;YACD,IAAI,IAAI,KAAK,SAAS,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAClD,GAAG,IAAI,IAAI,CAAC;gBACZ,CAAC,IAAI,CAAC,CAAC;gBACP,SAAS;YACX,CAAC;YACD,GAAG,IAAI,EAAE,CAAC;YACV,CAAC,IAAI,CAAC,CAAC;YACP,SAAS;QACX,CAAC;QAED,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAChB,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAChC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACjC,SAAS,EAAE,CAAC;YACZ,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE;aAC7D,CAAC,CAAC;YACH,CAAC,IAAI,CAAC,CAAC;YACP,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI;gBAAE,CAAC,IAAI,CAAC,CAAC;YACnD,SAAS;QACX,CAAC;QAED,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,IAAI,GAAG,GAAG,CAAC,CAAC;YACZ,OAAO,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,GAAG;gBAAE,GAAG,IAAI,CAAC,CAAC;YACvC,wEAAwE;YACxE,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;YAChB,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC;YACf,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC;gBACf,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;oBACpB,IAAI,CAAC,GAAG,CAAC,CAAC;oBACV,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG;wBAAE,CAAC,IAAI,CAAC,CAAC;oBACnC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;wBACd,KAAK,GAAG,CAAC,CAAC;wBACV,MAAM;oBACR,CAAC;oBACD,CAAC,IAAI,CAAC,CAAC;gBACT,CAAC;;oBAAM,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC;YACD,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;gBACjB,SAAS,EAAE,CAAC;gBACZ,KAAK,CAAC,IAAI,CAAC;oBACT,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE;wBACJ,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,CAAC,CAAC;qBAC/C;iBACF,CAAC,CAAC;gBACH,CAAC,GAAG,KAAK,GAAG,GAAG,CAAC;gBAChB,SAAS;YACX,CAAC;YACD,IAAI,QAAQ,EAAE,CAAC;gBACb,kEAAkE;gBAClE,oEAAoE;gBACpE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;gBACjC,SAAS,EAAE,CAAC;gBACZ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;oBACjB,KAAK,CAAC,IAAI,CAAC;wBACT,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE;qBACjD,CAAC,CAAC;gBACL,CAAC,GAAG,GAAG,CAAC;gBACR,SAAS;YACX,CAAC;YACD,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;YAC9B,CAAC,IAAI,GAAG,CAAC;YACT,SAAS;QACX,CAAC;QAED,iEAAiE;QACjE,gDAAgD;QAChD,IAAI,WAAW,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAC9B,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAChC,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;gBACf,kEAAkE;gBAClE,2DAA2D;gBAC3D,IAAI,QAAQ,EAAE,CAAC;oBACb,SAAS,EAAE,CAAC;oBACZ,CAAC,GAAG,GAAG,CAAC;oBACR,SAAS;gBACX,CAAC;gBACD,GAAG,IAAI,EAAE,CAAC;gBACV,CAAC,IAAI,CAAC,CAAC;gBACP,SAAS;YACX,CAAC;YACD,SAAS,EAAE,CAAC;YACZ,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE;aACrE,CAAC,CAAC;YACH,CAAC,GAAG,GAAG,CAAC;YACR,SAAS;QACX,CAAC;QAED,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3B,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/D,IAAI,IAAI,EAAE,CAAC;gBACT,SAAS,EAAE,CAAC;gBACZ,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBACvB,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,MAAM,EAAE,CAAC;gBACrE,KAAK,CAAC,IAAI,CAAC;oBACT,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE;wBACJ,IAAI,EAAE,MAAM;wBACZ,IAAI;wBACJ,KAAK,EAAE,KAAK;wBACZ,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;qBAC3C;iBACF,CAAC,CAAC;gBACH,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBACpB,SAAS;YACX,CAAC;YACD,GAAG,IAAI,EAAE,CAAC;YACV,CAAC,IAAI,CAAC,CAAC;YACP,SAAS;QACX,CAAC;QAED,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC,EAAE,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YACtD,MAAM,KAAK,GAAG,EAAE,KAAK,GAAG,CAAC;YACzB,SAAS,EAAE,CAAC;YACZ,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;YACvC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACnB,SAAS;QACX,CAAC;QAED,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;gBACnB,GAAG,IAAI,EAAE,CAAC;gBACV,CAAC,IAAI,CAAC,CAAC;gBACP,SAAS;YACX,CAAC;YACD,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5C,IAAI,MAAM,EAAE,CAAC;gBACX,SAAS,EAAE,CAAC;gBACZ,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;gBACvC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC;gBACf,SAAS;YACX,CAAC;YACD,IAAI,QAAQ,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBAClE,oEAAoE;gBACpE,iEAAiE;gBACjE,SAAS,EAAE,CAAC;gBACZ,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAwC,CAAC;gBACtE,IAAI,OAAO,CAAC,KAAK;oBAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;;oBACpC,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;gBACrC,CAAC,GAAG,GAAG,CAAC;gBACR,SAAS;YACX,CAAC;YACD,4DAA4D;YAC5D,SAAS,EAAE,CAAC;YACZ,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE;gBACvB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE;oBACJ,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAG,KAAK,CAAC,OAAO,CAAwB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG;iBAChE;aACF,CAAC,CAAC;YACH,GAAG,IAAI,EAAE,CAAC;YACV,CAAC,IAAI,CAAC,CAAC;YACP,SAAS;QACX,CAAC;QAED,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAC3C,IAAI,GAAG,GAAG,CAAC,CAAC;YACZ,OAAO,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,EAAE;gBAAE,GAAG,IAAI,CAAC,CAAC;YACtC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;YACtC,MAAM,SAAS,GACb,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO,IAAI,MAAM,KAAK,OAAO,CAAC,CAAC;YAC9D,MAAM,UAAU,GACd,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,IAAI,KAAK,KAAK,OAAO,CAAC,CAAC;YAC/D,IAAI,OAAO,GAAG,SAAS,CAAC;YACxB,IAAI,QAAQ,GAAG,UAAU,CAAC;YAC1B,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACf,gEAAgE;gBAChE,OAAO,GAAG,SAAS,IAAI,CAAC,CAAC,UAAU,IAAI,MAAM,KAAK,OAAO,CAAC,CAAC;gBAC3D,QAAQ,GAAG,UAAU,IAAI,CAAC,CAAC,SAAS,IAAI,KAAK,KAAK,OAAO,CAAC,CAAC;YAC7D,CAAC;YACD,IAAI,EAAE,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;gBAC5B,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;gBAC9B,CAAC,IAAI,GAAG,CAAC;gBACT,SAAS;YACX,CAAC;YACD,mEAAmE;YACnE,oEAAoE;YACpE,IAAI,QAAQ,IAAI,CAAC,GAAG,GAAG,KAAK,GAAG,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;gBACtD,CAAC,GAAG,GAAG,CAAC;gBACR,SAAS;YACX,CAAC;YACD,IAAI,CAAC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC1B,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;gBAC9B,CAAC,IAAI,GAAG,CAAC;gBACT,SAAS;YACX,CAAC;YACD,SAAS,EAAE,CAAC;YACZ,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;YACxE,CAAC,IAAI,GAAG,CAAC;YACT,SAAS;QACX,CAAC;QAED,GAAG,IAAI,EAAE,CAAC;QACV,CAAC,IAAI,CAAC,CAAC;IACT,CAAC;IACD,SAAS,EAAE,CAAC;IAEZ,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAEjC,uEAAuE;IACvE,oDAAoD;IACpD,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9C,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,EAAE,CAAC,IAAI,KAAK,SAAS;YAAE,SAAS;QACpC,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,EAAE,CAAC,KAAK;gBAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;;gBACzB,SAAS,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE;gBACjB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE;aACpD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC;AAED;uEACuE;AACvE,SAAS,YAAY,CAAC,GAAW;IAC/B,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACrC,IACE,IAAI,CAAC,MAAM,IAAI,CAAC;QAChB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QACpB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAClB,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE;QAElB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3B,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC;QAC3C,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS;YAAE,OAAO,CAAC,CAAC;IAC5C,OAAO,CAAC,CAAC,CAAC;AACZ,CAAC;AAOD;oEACoE;AACpE,SAAS,eAAe,CAAC,IAAY,EAAE,IAAY;IACjD,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IACpC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC;IACjB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;IACxB,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;QAAE,CAAC,IAAI,CAAC,CAAC;IAChE,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QACvC,IAAI,KAAK,KAAK,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QAC9B,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;QAChC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QACrC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;IAChB,CAAC;SAAM,CAAC;QACN,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC;YACf,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACnB,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC;gBAC/B,IAAI,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBACpB,CAAC,IAAI,CAAC,CAAC;gBACP,SAAS;YACX,CAAC;YACD,IAAI,EAAE,KAAK,GAAG;gBAAE,KAAK,IAAI,CAAC,CAAC;YAC3B,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACf,IAAI,KAAK,KAAK,CAAC;oBAAE,MAAM;gBACvB,KAAK,IAAI,CAAC,CAAC;YACb,CAAC;YACD,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,IAAI;gBAAE,MAAM;YACpD,IAAI,IAAI,EAAE,CAAC;YACX,CAAC,IAAI,CAAC,CAAC;QACT,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;QACzE,CAAC,IAAI,CAAC,CAAC;IACT,qDAAqD;IACrD,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACnC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,OAAO,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM;YAAE,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG;YAAE,OAAO,IAAI,CAAC;QAC1B,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;YACzE,CAAC,IAAI,CAAC,CAAC;IACX,CAAC;IACD,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IACjC,OAAO,EAAE,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;AACpD,CAAC;AAED,8EAA8E;AAC9E,SAAS,SAAS,CAAC,KAAa,EAAE,OAAe,EAAE,IAAmB;IACpE,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAwC,CAAC;IACtE,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACpC,KAAK,CAAC,KAAK,EAAE,CAAC;IACd,qEAAqE;IACrE,eAAe,CAAC,KAAK,EAAE,IAAI,KAAK,IAAI,CAAC,CAAC;IACtC,KAAK,CAAC,IAAI,CAAC;QACT,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE;KAC5E,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,eAAe,CAAC,KAAa,EAAE,aAAsB;IAC5D,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,OAAO,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QAC7B,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QACxB,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YACtC,MAAM,IAAI,CAAC,CAAC;YACZ,SAAS;QACX,CAAC;QACD,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC;QAChB,KAAK,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACxC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACnB,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS;gBAAE,MAAM,CAAC,wCAAwC;YACzE,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO;gBAAE,SAAS;YACpE,gBAAgB;YAChB,IACE,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC;gBACzB,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;gBAC/B,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC;gBAE1C,SAAS;YACX,MAAM,GAAG,CAAC,CAAC;YACX,MAAM;QACR,CAAC;QACD,IAAI,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;YAClB,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;gBACf,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,CAAC;YACD,MAAM,IAAI,CAAC,CAAC;YACZ,SAAS;QACX,CAAC;QAED,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAqC,CAAC;QAC5D,MAAM,GAAG,GAAG,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QACjE,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;QAClE,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5D,MAAM,IAAI,GAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3D,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC;QAChB,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC;QAChB,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACpD,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnB,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACxB,MAAM,IAAI,CAAC,CAAC;QACd,CAAC;QACD,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,aAAa,EAAE,CAAC;QAClB,oEAAoE;QACpE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACzC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACnB,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO;gBAAE,SAAS;YAC/C,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACjC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC3B,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACnB,CAAC,IAAI,CAAC,CAAC;gBACP,SAAS;YACX,CAAC;YACD,IAAI,IAAgB,CAAC;YACrB,IAAI,CAAC,CAAC,IAAI,KAAK,GAAG;gBAAE,IAAI,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;iBAC3D,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC;gBACpB,IAAI,GAAG;oBACL,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;iBAChD,CAAC;iBACC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;gBAAE,IAAI,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;;gBACnE,IAAI,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;YAChD,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO;YAAE,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,CAAmC;IACtD,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE;KACtD,CAAC;AACJ,CAAC;AAED,4EAA4E;AAC5E,SAAS,MAAM,CAAC,KAAa;IAC3B,MAAM,GAAG,GAAiB,EAAE,CAAC;IAC7B,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;QACvB,MAAM,IAAI,GACR,EAAE,CAAC,IAAI,KAAK,MAAM;YAChB,CAAC,CAAC,EAAE,CAAC,IAAI;YACT,CAAC,CAAC,EAAE,CAAC,IAAI,KAAK,OAAO;gBACnB,CAAC,CAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAiB;gBACnE,CAAC,CAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAiB,CAAC;QACtE,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACjC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;YAClD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC;QACzB,CAAC;aAAM,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,EAAE,CAAC;YACvD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tags.d.ts","sourceRoot":"","sources":["../../src/markdown/tags.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C,2DAA2D;AAC3D,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC3C,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;;GAKG;AACH,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,YAAY,GAAG,IAAI,CAAC;AAgD1D;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAyB7D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,OAAO,CACrB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,EACtC,WAAW,UAAQ,GAClB,UAAU,CA0GZ"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tags.js","sourceRoot":"","sources":["../../src/markdown/tags.ts"],"names":[],"mappings":"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"}
File without changes
File without changes
File without changes
File without changes