@withbuddi/buddi 0.1.0-pre.41 → 0.1.0-pre.43

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 (337) hide show
  1. package/extension/background.js +11 -0
  2. package/extension/manifest.json +2 -2
  3. package/extension/popup.html +1 -1
  4. package/extension/popup.js +83 -1
  5. package/node_modules/@buddi/cli/dist/.tsbuildinfo +1 -1
  6. package/node_modules/@buddi/cli/dist/commands.js +2 -2
  7. package/node_modules/@buddi/cli/dist/commands.js.map +1 -1
  8. package/node_modules/@buddi/cli/dist/doctor-probes.d.ts.map +1 -1
  9. package/node_modules/@buddi/cli/dist/doctor-probes.js +10 -1
  10. package/node_modules/@buddi/cli/dist/doctor-probes.js.map +1 -1
  11. package/node_modules/@buddi/cli/dist/doctor.d.ts +9 -0
  12. package/node_modules/@buddi/cli/dist/doctor.d.ts.map +1 -1
  13. package/node_modules/@buddi/cli/dist/doctor.js +21 -3
  14. package/node_modules/@buddi/cli/dist/doctor.js.map +1 -1
  15. package/node_modules/@buddi/cli/package.json +4 -0
  16. package/node_modules/@buddi/core/dist/.tsbuildinfo +1 -1
  17. package/node_modules/@buddi/core/dist/agents/catalog.js +1 -1
  18. package/node_modules/@buddi/core/dist/agents/catalog.js.map +1 -1
  19. package/node_modules/@buddi/core/dist/testing/database-url.d.ts +13 -0
  20. package/node_modules/@buddi/core/dist/testing/database-url.d.ts.map +1 -1
  21. package/node_modules/@buddi/core/dist/testing/database-url.js +34 -0
  22. package/node_modules/@buddi/core/dist/testing/database-url.js.map +1 -1
  23. package/node_modules/@buddi/core/dist/testing/isolated-global-setup.d.ts +2 -0
  24. package/node_modules/@buddi/core/dist/testing/isolated-global-setup.d.ts.map +1 -0
  25. package/node_modules/@buddi/core/dist/testing/isolated-global-setup.js +20 -0
  26. package/node_modules/@buddi/core/dist/testing/isolated-global-setup.js.map +1 -0
  27. package/node_modules/@buddi/core/package.json +4 -0
  28. package/node_modules/@buddi/gateway/dist/.tsbuildinfo +1 -1
  29. package/node_modules/@buddi/gateway/dist/agents/platform.d.ts +8 -0
  30. package/node_modules/@buddi/gateway/dist/agents/platform.d.ts.map +1 -1
  31. package/node_modules/@buddi/gateway/dist/agents/platform.js +48 -22
  32. package/node_modules/@buddi/gateway/dist/agents/platform.js.map +1 -1
  33. package/node_modules/@buddi/gateway/dist/plugins/index.d.ts +1 -0
  34. package/node_modules/@buddi/gateway/dist/plugins/index.d.ts.map +1 -1
  35. package/node_modules/@buddi/gateway/dist/plugins/index.js +1 -0
  36. package/node_modules/@buddi/gateway/dist/plugins/index.js.map +1 -1
  37. package/node_modules/@buddi/gateway/dist/plugins/pages-state.d.ts +37 -0
  38. package/node_modules/@buddi/gateway/dist/plugins/pages-state.d.ts.map +1 -0
  39. package/node_modules/@buddi/gateway/dist/plugins/pages-state.js +98 -0
  40. package/node_modules/@buddi/gateway/dist/plugins/pages-state.js.map +1 -0
  41. package/node_modules/@buddi/gateway/dist/provider-accounts.d.ts +33 -4
  42. package/node_modules/@buddi/gateway/dist/provider-accounts.d.ts.map +1 -1
  43. package/node_modules/@buddi/gateway/dist/provider-accounts.js +81 -18
  44. package/node_modules/@buddi/gateway/dist/provider-accounts.js.map +1 -1
  45. package/node_modules/@buddi/gateway/dist/provider-diagnostics.d.ts +5 -0
  46. package/node_modules/@buddi/gateway/dist/provider-diagnostics.d.ts.map +1 -1
  47. package/node_modules/@buddi/gateway/dist/provider-diagnostics.js +6 -1
  48. package/node_modules/@buddi/gateway/dist/provider-diagnostics.js.map +1 -1
  49. package/node_modules/@buddi/gateway/dist/serve.d.ts.map +1 -1
  50. package/node_modules/@buddi/gateway/dist/serve.js +5 -2
  51. package/node_modules/@buddi/gateway/dist/serve.js.map +1 -1
  52. package/node_modules/@buddi/gateway/dist/web/agent-offers.d.ts +6 -0
  53. package/node_modules/@buddi/gateway/dist/web/agent-offers.d.ts.map +1 -1
  54. package/node_modules/@buddi/gateway/dist/web/agent-offers.js +6 -0
  55. package/node_modules/@buddi/gateway/dist/web/agent-offers.js.map +1 -1
  56. package/node_modules/@buddi/gateway/dist/web/api-routes.d.ts.map +1 -1
  57. package/node_modules/@buddi/gateway/dist/web/api-routes.js +9 -2
  58. package/node_modules/@buddi/gateway/dist/web/api-routes.js.map +1 -1
  59. package/node_modules/@buddi/gateway/dist/web/attention.d.ts +11 -1
  60. package/node_modules/@buddi/gateway/dist/web/attention.d.ts.map +1 -1
  61. package/node_modules/@buddi/gateway/dist/web/attention.js +22 -2
  62. package/node_modules/@buddi/gateway/dist/web/attention.js.map +1 -1
  63. package/node_modules/@buddi/gateway/dist/web/chat.d.ts +0 -2
  64. package/node_modules/@buddi/gateway/dist/web/chat.d.ts.map +1 -1
  65. package/node_modules/@buddi/gateway/dist/web/chat.js +15 -4
  66. package/node_modules/@buddi/gateway/dist/web/chat.js.map +1 -1
  67. package/node_modules/@buddi/gateway/dist/web/extension.d.ts +23 -0
  68. package/node_modules/@buddi/gateway/dist/web/extension.d.ts.map +1 -1
  69. package/node_modules/@buddi/gateway/dist/web/extension.js +116 -10
  70. package/node_modules/@buddi/gateway/dist/web/extension.js.map +1 -1
  71. package/node_modules/@buddi/gateway/dist/web/lock.d.ts +15 -0
  72. package/node_modules/@buddi/gateway/dist/web/lock.d.ts.map +1 -1
  73. package/node_modules/@buddi/gateway/dist/web/lock.js +7 -3
  74. package/node_modules/@buddi/gateway/dist/web/lock.js.map +1 -1
  75. package/node_modules/@buddi/gateway/dist/web/plugins.d.ts.map +1 -1
  76. package/node_modules/@buddi/gateway/dist/web/plugins.js +4 -0
  77. package/node_modules/@buddi/gateway/dist/web/plugins.js.map +1 -1
  78. package/node_modules/@buddi/gateway/dist/web/server.d.ts.map +1 -1
  79. package/node_modules/@buddi/gateway/dist/web/server.js +19 -6
  80. package/node_modules/@buddi/gateway/dist/web/server.js.map +1 -1
  81. package/node_modules/@buddi/gateway/dist/web/signed-out.d.ts +19 -0
  82. package/node_modules/@buddi/gateway/dist/web/signed-out.d.ts.map +1 -1
  83. package/node_modules/@buddi/gateway/dist/web/signed-out.js +61 -3
  84. package/node_modules/@buddi/gateway/dist/web/signed-out.js.map +1 -1
  85. package/node_modules/@buddi/gateway/dist/web/take-on.d.ts +3 -1
  86. package/node_modules/@buddi/gateway/dist/web/take-on.d.ts.map +1 -1
  87. package/node_modules/@buddi/gateway/dist/web/take-on.js +14 -3
  88. package/node_modules/@buddi/gateway/dist/web/take-on.js.map +1 -1
  89. package/node_modules/@buddi/gateway/dist/web/telegram.d.ts.map +1 -1
  90. package/node_modules/@buddi/gateway/dist/web/telegram.js +4 -2
  91. package/node_modules/@buddi/gateway/dist/web/telegram.js.map +1 -1
  92. package/node_modules/@buddi/gateway/dist/web/version.d.ts +10 -0
  93. package/node_modules/@buddi/gateway/dist/web/version.d.ts.map +1 -1
  94. package/node_modules/@buddi/gateway/dist/web/version.js +12 -0
  95. package/node_modules/@buddi/gateway/dist/web/version.js.map +1 -1
  96. package/node_modules/@buddi/gateway/dist/web/widgets.d.ts +2 -0
  97. package/node_modules/@buddi/gateway/dist/web/widgets.d.ts.map +1 -1
  98. package/node_modules/@buddi/gateway/dist/web/widgets.js +47 -13
  99. package/node_modules/@buddi/gateway/dist/web/widgets.js.map +1 -1
  100. package/node_modules/@buddi/install/dist/.tsbuildinfo +1 -1
  101. package/node_modules/@buddi/install/dist/backup.d.ts +12 -0
  102. package/node_modules/@buddi/install/dist/backup.d.ts.map +1 -1
  103. package/node_modules/@buddi/install/dist/backup.js +26 -8
  104. package/node_modules/@buddi/install/dist/backup.js.map +1 -1
  105. package/node_modules/@buddi/install/dist/cli-shim.d.ts +2 -0
  106. package/node_modules/@buddi/install/dist/cli-shim.d.ts.map +1 -1
  107. package/node_modules/@buddi/install/dist/cli-shim.js +4 -0
  108. package/node_modules/@buddi/install/dist/cli-shim.js.map +1 -1
  109. package/node_modules/@buddi/install/dist/doctor-timezone.js +1 -1
  110. package/node_modules/@buddi/install/dist/doctor-timezone.js.map +1 -1
  111. package/node_modules/@buddi/install/dist/kept-data.d.ts.map +1 -1
  112. package/node_modules/@buddi/install/dist/kept-data.js +3 -1
  113. package/node_modules/@buddi/install/dist/kept-data.js.map +1 -1
  114. package/node_modules/@buddi/install/dist/launcher.js +93 -3
  115. package/node_modules/@buddi/install/dist/launcher.js.map +1 -1
  116. package/node_modules/@buddi/install/dist/supervisor.d.ts +43 -0
  117. package/node_modules/@buddi/install/dist/supervisor.d.ts.map +1 -1
  118. package/node_modules/@buddi/install/dist/supervisor.js +97 -9
  119. package/node_modules/@buddi/install/dist/supervisor.js.map +1 -1
  120. package/node_modules/@buddi/install/dist/uninstall.d.ts +17 -0
  121. package/node_modules/@buddi/install/dist/uninstall.d.ts.map +1 -1
  122. package/node_modules/@buddi/install/dist/uninstall.js +90 -49
  123. package/node_modules/@buddi/install/dist/uninstall.js.map +1 -1
  124. package/node_modules/@buddi/install/dist/upgrade.d.ts +2 -0
  125. package/node_modules/@buddi/install/dist/upgrade.d.ts.map +1 -1
  126. package/node_modules/@buddi/install/dist/upgrade.js +3 -2
  127. package/node_modules/@buddi/install/dist/upgrade.js.map +1 -1
  128. package/node_modules/@buddi/runtime/dist/.tsbuildinfo +1 -1
  129. package/node_modules/@buddi/runtime/dist/codex-direct.d.ts +12 -1
  130. package/node_modules/@buddi/runtime/dist/codex-direct.d.ts.map +1 -1
  131. package/node_modules/@buddi/runtime/dist/codex-direct.js +15 -6
  132. package/node_modules/@buddi/runtime/dist/codex-direct.js.map +1 -1
  133. package/node_modules/@buddi/runtime/dist/groups.d.ts +5 -4
  134. package/node_modules/@buddi/runtime/dist/groups.d.ts.map +1 -1
  135. package/node_modules/@buddi/runtime/dist/groups.js +7 -6
  136. package/node_modules/@buddi/runtime/dist/groups.js.map +1 -1
  137. package/node_modules/@buddi/runtime/dist/provider-models.d.ts +4 -0
  138. package/node_modules/@buddi/runtime/dist/provider-models.d.ts.map +1 -1
  139. package/node_modules/@buddi/runtime/dist/provider-models.js.map +1 -1
  140. package/node_modules/@buddi/tool-browser/dist/.tsbuildinfo +1 -1
  141. package/node_modules/@buddi/tool-browser/dist/availability.d.ts +2 -2
  142. package/node_modules/@buddi/tool-browser/dist/availability.d.ts.map +1 -1
  143. package/node_modules/@buddi/tool-browser/dist/availability.js +2 -2
  144. package/node_modules/@buddi/tool-browser/dist/availability.js.map +1 -1
  145. package/node_modules/@buddi/tool-browser/dist/controller.d.ts +1 -1
  146. package/node_modules/@buddi/tool-browser/dist/controller.d.ts.map +1 -1
  147. package/node_modules/@buddi/tool-browser/dist/controller.js +1 -1
  148. package/node_modules/@buddi/tool-browser/dist/controller.js.map +1 -1
  149. package/node_modules/@buddi/tool-email/dist/.tsbuildinfo +1 -1
  150. package/node_modules/@buddi/tool-email/dist/pages/descriptors.d.ts.map +1 -1
  151. package/node_modules/@buddi/tool-email/dist/pages/descriptors.js +42 -0
  152. package/node_modules/@buddi/tool-email/dist/pages/descriptors.js.map +1 -1
  153. package/node_modules/@buddi/tool-email/dist/pages/queries.d.ts +14 -0
  154. package/node_modules/@buddi/tool-email/dist/pages/queries.d.ts.map +1 -1
  155. package/node_modules/@buddi/tool-email/dist/pages/queries.js +95 -8
  156. package/node_modules/@buddi/tool-email/dist/pages/queries.js.map +1 -1
  157. package/node_modules/@buddi/tool-email/dist/sources/inbox-poll.d.ts.map +1 -1
  158. package/node_modules/@buddi/tool-email/dist/sources/inbox-poll.js +5 -0
  159. package/node_modules/@buddi/tool-email/dist/sources/inbox-poll.js.map +1 -1
  160. package/node_modules/@buddi/tool-email/migrations/027_first_contact.sql +13 -0
  161. package/node_modules/@zone-eu/mailsplit/package.json +4 -4
  162. package/node_modules/imapflow/CHANGELOG.md +7 -0
  163. package/node_modules/imapflow/dist/cjs/package-info.d.ts +1 -1
  164. package/node_modules/imapflow/dist/cjs/package-info.js +1 -1
  165. package/node_modules/imapflow/dist/esm/package-info.d.ts +1 -1
  166. package/node_modules/imapflow/dist/esm/package-info.js +1 -1
  167. package/node_modules/imapflow/package.json +4 -4
  168. package/node_modules/libbase64/CHANGELOG.md +7 -0
  169. package/node_modules/libbase64/lib/libbase64.js +110 -58
  170. package/node_modules/libbase64/package.json +1 -1
  171. package/node_modules/libmime/CHANGELOG.md +7 -0
  172. package/node_modules/libmime/package.json +2 -2
  173. package/package.json +2 -2
  174. package/packages/cli/dist/.tsbuildinfo +1 -1
  175. package/packages/cli/dist/commands.js +2 -2
  176. package/packages/cli/dist/commands.js.map +1 -1
  177. package/packages/cli/dist/doctor-probes.d.ts.map +1 -1
  178. package/packages/cli/dist/doctor-probes.js +10 -1
  179. package/packages/cli/dist/doctor-probes.js.map +1 -1
  180. package/packages/cli/dist/doctor.d.ts +9 -0
  181. package/packages/cli/dist/doctor.d.ts.map +1 -1
  182. package/packages/cli/dist/doctor.js +21 -3
  183. package/packages/cli/dist/doctor.js.map +1 -1
  184. package/packages/cli/package.json +4 -0
  185. package/packages/core/dist/.tsbuildinfo +1 -1
  186. package/packages/core/dist/agents/catalog.js +1 -1
  187. package/packages/core/dist/agents/catalog.js.map +1 -1
  188. package/packages/core/dist/testing/database-url.d.ts +13 -0
  189. package/packages/core/dist/testing/database-url.d.ts.map +1 -1
  190. package/packages/core/dist/testing/database-url.js +34 -0
  191. package/packages/core/dist/testing/database-url.js.map +1 -1
  192. package/packages/core/dist/testing/isolated-global-setup.d.ts +2 -0
  193. package/packages/core/dist/testing/isolated-global-setup.d.ts.map +1 -0
  194. package/packages/core/dist/testing/isolated-global-setup.js +20 -0
  195. package/packages/core/dist/testing/isolated-global-setup.js.map +1 -0
  196. package/packages/core/package.json +4 -0
  197. package/packages/gateway/dist/.tsbuildinfo +1 -1
  198. package/packages/gateway/dist/agents/platform.d.ts +8 -0
  199. package/packages/gateway/dist/agents/platform.d.ts.map +1 -1
  200. package/packages/gateway/dist/agents/platform.js +48 -22
  201. package/packages/gateway/dist/agents/platform.js.map +1 -1
  202. package/packages/gateway/dist/plugins/index.d.ts +1 -0
  203. package/packages/gateway/dist/plugins/index.d.ts.map +1 -1
  204. package/packages/gateway/dist/plugins/index.js +1 -0
  205. package/packages/gateway/dist/plugins/index.js.map +1 -1
  206. package/packages/gateway/dist/plugins/pages-state.d.ts +37 -0
  207. package/packages/gateway/dist/plugins/pages-state.d.ts.map +1 -0
  208. package/packages/gateway/dist/plugins/pages-state.js +98 -0
  209. package/packages/gateway/dist/plugins/pages-state.js.map +1 -0
  210. package/packages/gateway/dist/provider-accounts.d.ts +33 -4
  211. package/packages/gateway/dist/provider-accounts.d.ts.map +1 -1
  212. package/packages/gateway/dist/provider-accounts.js +81 -18
  213. package/packages/gateway/dist/provider-accounts.js.map +1 -1
  214. package/packages/gateway/dist/provider-diagnostics.d.ts +5 -0
  215. package/packages/gateway/dist/provider-diagnostics.d.ts.map +1 -1
  216. package/packages/gateway/dist/provider-diagnostics.js +6 -1
  217. package/packages/gateway/dist/provider-diagnostics.js.map +1 -1
  218. package/packages/gateway/dist/serve.d.ts.map +1 -1
  219. package/packages/gateway/dist/serve.js +5 -2
  220. package/packages/gateway/dist/serve.js.map +1 -1
  221. package/packages/gateway/dist/web/agent-offers.d.ts +6 -0
  222. package/packages/gateway/dist/web/agent-offers.d.ts.map +1 -1
  223. package/packages/gateway/dist/web/agent-offers.js +6 -0
  224. package/packages/gateway/dist/web/agent-offers.js.map +1 -1
  225. package/packages/gateway/dist/web/api-routes.d.ts.map +1 -1
  226. package/packages/gateway/dist/web/api-routes.js +9 -2
  227. package/packages/gateway/dist/web/api-routes.js.map +1 -1
  228. package/packages/gateway/dist/web/attention.d.ts +11 -1
  229. package/packages/gateway/dist/web/attention.d.ts.map +1 -1
  230. package/packages/gateway/dist/web/attention.js +22 -2
  231. package/packages/gateway/dist/web/attention.js.map +1 -1
  232. package/packages/gateway/dist/web/chat.d.ts +0 -2
  233. package/packages/gateway/dist/web/chat.d.ts.map +1 -1
  234. package/packages/gateway/dist/web/chat.js +15 -4
  235. package/packages/gateway/dist/web/chat.js.map +1 -1
  236. package/packages/gateway/dist/web/extension.d.ts +23 -0
  237. package/packages/gateway/dist/web/extension.d.ts.map +1 -1
  238. package/packages/gateway/dist/web/extension.js +116 -10
  239. package/packages/gateway/dist/web/extension.js.map +1 -1
  240. package/packages/gateway/dist/web/lock.d.ts +15 -0
  241. package/packages/gateway/dist/web/lock.d.ts.map +1 -1
  242. package/packages/gateway/dist/web/lock.js +7 -3
  243. package/packages/gateway/dist/web/lock.js.map +1 -1
  244. package/packages/gateway/dist/web/plugins.d.ts.map +1 -1
  245. package/packages/gateway/dist/web/plugins.js +4 -0
  246. package/packages/gateway/dist/web/plugins.js.map +1 -1
  247. package/packages/gateway/dist/web/server.d.ts.map +1 -1
  248. package/packages/gateway/dist/web/server.js +19 -6
  249. package/packages/gateway/dist/web/server.js.map +1 -1
  250. package/packages/gateway/dist/web/signed-out.d.ts +19 -0
  251. package/packages/gateway/dist/web/signed-out.d.ts.map +1 -1
  252. package/packages/gateway/dist/web/signed-out.js +61 -3
  253. package/packages/gateway/dist/web/signed-out.js.map +1 -1
  254. package/packages/gateway/dist/web/take-on.d.ts +3 -1
  255. package/packages/gateway/dist/web/take-on.d.ts.map +1 -1
  256. package/packages/gateway/dist/web/take-on.js +14 -3
  257. package/packages/gateway/dist/web/take-on.js.map +1 -1
  258. package/packages/gateway/dist/web/telegram.d.ts.map +1 -1
  259. package/packages/gateway/dist/web/telegram.js +4 -2
  260. package/packages/gateway/dist/web/telegram.js.map +1 -1
  261. package/packages/gateway/dist/web/version.d.ts +10 -0
  262. package/packages/gateway/dist/web/version.d.ts.map +1 -1
  263. package/packages/gateway/dist/web/version.js +12 -0
  264. package/packages/gateway/dist/web/version.js.map +1 -1
  265. package/packages/gateway/dist/web/widgets.d.ts +2 -0
  266. package/packages/gateway/dist/web/widgets.d.ts.map +1 -1
  267. package/packages/gateway/dist/web/widgets.js +47 -13
  268. package/packages/gateway/dist/web/widgets.js.map +1 -1
  269. package/packages/install/dist/.tsbuildinfo +1 -1
  270. package/packages/install/dist/backup.d.ts +12 -0
  271. package/packages/install/dist/backup.d.ts.map +1 -1
  272. package/packages/install/dist/backup.js +26 -8
  273. package/packages/install/dist/backup.js.map +1 -1
  274. package/packages/install/dist/cli-shim.d.ts +2 -0
  275. package/packages/install/dist/cli-shim.d.ts.map +1 -1
  276. package/packages/install/dist/cli-shim.js +4 -0
  277. package/packages/install/dist/cli-shim.js.map +1 -1
  278. package/packages/install/dist/doctor-timezone.js +1 -1
  279. package/packages/install/dist/doctor-timezone.js.map +1 -1
  280. package/packages/install/dist/kept-data.d.ts.map +1 -1
  281. package/packages/install/dist/kept-data.js +3 -1
  282. package/packages/install/dist/kept-data.js.map +1 -1
  283. package/packages/install/dist/launcher.js +93 -3
  284. package/packages/install/dist/launcher.js.map +1 -1
  285. package/packages/install/dist/supervisor.d.ts +43 -0
  286. package/packages/install/dist/supervisor.d.ts.map +1 -1
  287. package/packages/install/dist/supervisor.js +97 -9
  288. package/packages/install/dist/supervisor.js.map +1 -1
  289. package/packages/install/dist/uninstall.d.ts +17 -0
  290. package/packages/install/dist/uninstall.d.ts.map +1 -1
  291. package/packages/install/dist/uninstall.js +90 -49
  292. package/packages/install/dist/uninstall.js.map +1 -1
  293. package/packages/install/dist/upgrade.d.ts +2 -0
  294. package/packages/install/dist/upgrade.d.ts.map +1 -1
  295. package/packages/install/dist/upgrade.js +3 -2
  296. package/packages/install/dist/upgrade.js.map +1 -1
  297. package/packages/runtime/dist/.tsbuildinfo +1 -1
  298. package/packages/runtime/dist/codex-direct.d.ts +12 -1
  299. package/packages/runtime/dist/codex-direct.d.ts.map +1 -1
  300. package/packages/runtime/dist/codex-direct.js +15 -6
  301. package/packages/runtime/dist/codex-direct.js.map +1 -1
  302. package/packages/runtime/dist/groups.d.ts +5 -4
  303. package/packages/runtime/dist/groups.d.ts.map +1 -1
  304. package/packages/runtime/dist/groups.js +7 -6
  305. package/packages/runtime/dist/groups.js.map +1 -1
  306. package/packages/runtime/dist/provider-models.d.ts +4 -0
  307. package/packages/runtime/dist/provider-models.d.ts.map +1 -1
  308. package/packages/runtime/dist/provider-models.js.map +1 -1
  309. package/packages/tools/browser/dist/.tsbuildinfo +1 -1
  310. package/packages/tools/browser/dist/availability.d.ts +2 -2
  311. package/packages/tools/browser/dist/availability.d.ts.map +1 -1
  312. package/packages/tools/browser/dist/availability.js +2 -2
  313. package/packages/tools/browser/dist/availability.js.map +1 -1
  314. package/packages/tools/browser/dist/controller.d.ts +1 -1
  315. package/packages/tools/browser/dist/controller.d.ts.map +1 -1
  316. package/packages/tools/browser/dist/controller.js +1 -1
  317. package/packages/tools/browser/dist/controller.js.map +1 -1
  318. package/packages/tools/email/dist/.tsbuildinfo +1 -1
  319. package/packages/tools/email/dist/pages/descriptors.d.ts.map +1 -1
  320. package/packages/tools/email/dist/pages/descriptors.js +42 -0
  321. package/packages/tools/email/dist/pages/descriptors.js.map +1 -1
  322. package/packages/tools/email/dist/pages/queries.d.ts +14 -0
  323. package/packages/tools/email/dist/pages/queries.d.ts.map +1 -1
  324. package/packages/tools/email/dist/pages/queries.js +95 -8
  325. package/packages/tools/email/dist/pages/queries.js.map +1 -1
  326. package/packages/tools/email/dist/sources/inbox-poll.d.ts.map +1 -1
  327. package/packages/tools/email/dist/sources/inbox-poll.js +5 -0
  328. package/packages/tools/email/dist/sources/inbox-poll.js.map +1 -1
  329. package/packages/tools/email/migrations/027_first_contact.sql +13 -0
  330. package/packages/web/dist/assets/index-BB52n8Fa.js +146 -0
  331. package/packages/web/dist/assets/index-CY4cPN4I.css +1 -0
  332. package/packages/web/dist/assets/{lottie_light-D-P1tn3V.js → lottie_light-CHWAvOde.js} +1 -1
  333. package/packages/web/dist/build.json +1 -1
  334. package/packages/web/dist/index.html +2 -2
  335. package/packages/web/dist/precache.json +4 -4
  336. package/packages/web/dist/assets/index-BkxHX_8g.js +0 -146
  337. package/packages/web/dist/assets/index-D2rOodlH.css +0 -1
@@ -36,6 +36,8 @@ export const EXTENSION_SOCKET_PATH = '/api/extension/socket';
36
36
  /** A Chrome extension ID: thirty-two letters, a to p. */
37
37
  const EXTENSION_ORIGIN = /^chrome-extension:\/\/[a-p]{32}$/;
38
38
  const PAIR_TTL_MS = 5 * 60_000;
39
+ /** The least time between two new pairing codes for one extension id. */
40
+ export const PAIR_THROTTLE_MS = 2_000;
39
41
  /** Six digits are guessable; five tries are not enough to guess them. */
40
42
  const MAX_PAIR_ATTEMPTS = 5;
41
43
  /** A hello answered with a challenge that is never answered back. */
@@ -91,6 +93,31 @@ export async function extensionDir(env = process.env) {
91
93
  catch { /* a development checkout, then */ }
92
94
  return path.join(REPO_ROOT, 'packages', 'extension', 'dist');
93
95
  }
96
+ /**
97
+ * Is this buddi running from a source checkout? A release ships the unpacked
98
+ * extension at the top of the installation (`scripts/release/build.mjs`); a
99
+ * checkout has `packages/extension` instead. `BUDDI_RUNTIME_CHECKOUT` (`1` or
100
+ * `0`) overrides it, for tests.
101
+ */
102
+ export async function runsFromCheckout(env = process.env) {
103
+ const forced = (env.BUDDI_RUNTIME_CHECKOUT ?? '').trim();
104
+ if (forced === '1')
105
+ return true;
106
+ if (forced === '0')
107
+ return false;
108
+ try {
109
+ await access(path.join(REPO_ROOT, 'extension'));
110
+ return false;
111
+ }
112
+ catch { /* not a release */ }
113
+ try {
114
+ await access(path.join(REPO_ROOT, 'packages', 'extension', 'package.json'));
115
+ return true;
116
+ }
117
+ catch {
118
+ return false;
119
+ }
120
+ }
94
121
  /** The paired extension, or undefined when this buddi has never been paired. */
95
122
  export async function readExtensionRecord(env = process.env) {
96
123
  try {
@@ -169,13 +196,27 @@ export class ExtensionEndpoint {
169
196
  #ping;
170
197
  #missed = 0;
171
198
  #server;
199
+ #logger;
200
+ /** Keeps a socket waiting for its code alive (see `#hello`). */
201
+ #pairPing;
202
+ /** Sockets that have said hello; a second one is refused unless this buddi asked for it (`rehello`). */
203
+ #greeted = new WeakSet();
204
+ /** When each extension id last got a new pairing code (`PAIR_THROTTLE_MS`). */
205
+ #lastPair = new Map();
172
206
  /** The three intervals are options so a test does not have to wait a minute. */
173
207
  constructor(options = {}) {
174
208
  this.options = options;
209
+ this.#logger = options.log;
175
210
  }
176
211
  #env() { return this.options.env ?? process.env; }
177
212
  #now() { return this.options.now?.() ?? Date.now(); }
178
- #log(line) { this.options.log?.(line); }
213
+ #log(line) { this.#logger?.(line); }
214
+ /**
215
+ * Where the socket's lines go, when the endpoint was made before the server
216
+ * that logs (the browser host asks for it first, at start-up). The first
217
+ * logger wins; a later one only fills an empty place.
218
+ */
219
+ useLog(log) { this.#logger ??= log; }
179
220
  /**
180
221
  * Take over this server's `upgrade` event.
181
222
  *
@@ -200,7 +241,9 @@ export class ExtensionEndpoint {
200
241
  attachPath(pathname, handle) {
201
242
  this.#routes.set(pathname, handle);
202
243
  }
203
- #refuse(socket, status, reason) {
244
+ #refuse(socket, status, reason, why) {
245
+ if (why)
246
+ this.#log(`extension: socket refused (${status}): ${why}`);
204
247
  socket.write(`HTTP/1.1 ${status} ${reason}\r\nConnection: close\r\n\r\n`);
205
248
  socket.destroy();
206
249
  }
@@ -215,13 +258,16 @@ export class ExtensionEndpoint {
215
258
  // not this machine, whatever it says about itself.
216
259
  // And by the listener: the ingress listener's sockets are loopback too,
217
260
  // and a relay frame has none (specs/trusted-access.md §7.5).
218
- if (arrivalOf(req) !== 'main' || !isLoopbackAddress(req.socket?.remoteAddress))
219
- return this.#refuse(socket, 403, 'Forbidden');
261
+ if (arrivalOf(req) !== 'main')
262
+ return this.#refuse(socket, 403, 'Forbidden', 'not on the main listener');
263
+ if (!isLoopbackAddress(req.socket?.remoteAddress))
264
+ return this.#refuse(socket, 403, 'Forbidden', 'not from this machine');
220
265
  if (Object.keys(req.headers).some((key) => key === 'forwarded' || key === 'x-real-ip' || key.startsWith('x-forwarded-') || key.startsWith('tailscale-')))
221
- return this.#refuse(socket, 403, 'Forbidden');
266
+ return this.#refuse(socket, 403, 'Forbidden', 'forwarded by a proxy');
222
267
  const origin = req.headers.origin;
223
268
  if (typeof origin !== 'string' || !EXTENSION_ORIGIN.test(origin))
224
- return this.#refuse(socket, 403, 'Forbidden');
269
+ return this.#refuse(socket, 403, 'Forbidden', `not a Chrome extension origin (${typeof origin === 'string' ? origin.slice(0, 80) : 'none'})`);
270
+ this.#log(`extension: socket accepted from ${extensionIdOf(origin)}`);
225
271
  this.#wss.handleUpgrade(req, socket, head, (ws) => this.#accept(ws, extensionIdOf(origin)));
226
272
  }
227
273
  #accept(ws, extensionId) {
@@ -239,10 +285,12 @@ export class ExtensionEndpoint {
239
285
  }
240
286
  void this.#frame(ws, frame, extensionId).catch((error) => this.#log(`extension: ${error instanceof Error ? error.message : String(error)}`));
241
287
  });
242
- ws.on('close', () => {
288
+ ws.on('close', (code) => {
243
289
  clearTimeout(hello);
244
- if (this.#pair?.socket === ws)
290
+ if (this.#pair?.socket === ws) {
291
+ this.#log(`extension: ${extensionId} left while waiting for its code (${code})`);
245
292
  this.#clearPair();
293
+ }
246
294
  if (this.#challenge?.socket === ws)
247
295
  this.#clearChallenge();
248
296
  if (this.#socket === ws)
@@ -258,8 +306,21 @@ export class ExtensionEndpoint {
258
306
  this.#missed = 0;
259
307
  return;
260
308
  }
261
- if (frame.type === 'hello')
309
+ if (frame.type === 'hello') {
310
+ // One hello per connection: the handshake starts over on a new socket,
311
+ // or on this one only after this buddi sent `rehello`.
312
+ if (this.#greeted.has(ws)) {
313
+ this.#log(`extension: ${extensionId} said hello twice on one connection; closed`);
314
+ if (this.#pair?.socket === ws)
315
+ this.#clearPair();
316
+ if (this.#challenge?.socket === ws)
317
+ this.#clearChallenge();
318
+ ws.close(1008, 'one hello per connection');
319
+ return;
320
+ }
321
+ this.#greeted.add(ws);
262
322
  return this.#hello(ws, frame, extensionId);
323
+ }
263
324
  if (frame.type === 'auth')
264
325
  return this.#auth(ws, frame, extensionId);
265
326
  if (frame.type === 'result')
@@ -362,6 +423,8 @@ export class ExtensionEndpoint {
362
423
  pageScaleFactor: number('pageScaleFactor') || 1, offsetTop: number('offsetTop'), scrollOffsetX: number('scrollOffsetX'), scrollOffsetY: number('scrollOffsetY') } });
363
424
  }
364
425
  #clearPair() {
426
+ clearInterval(this.#pairPing);
427
+ this.#pairPing = undefined;
365
428
  if (!this.#pair)
366
429
  return;
367
430
  clearTimeout(this.#pair.timer);
@@ -393,6 +456,7 @@ export class ExtensionEndpoint {
393
456
  // One browser per buddi: a different unpacked copy is a different browser,
394
457
  // and it pairs only after the owner has forgotten this one.
395
458
  if (record?.extensionId && record.extensionId !== extensionId) {
459
+ this.#log(`extension: hello refused from ${extensionId}: this buddi is paired with ${record.extensionId}`);
396
460
  ws.close(1008, 'this buddi is paired with another browser');
397
461
  return;
398
462
  }
@@ -404,14 +468,29 @@ export class ExtensionEndpoint {
404
468
  this.#clearChallenge();
405
469
  // It saw the proof and said nothing: start the handshake over rather
406
470
  // than leave a half-open socket nobody can use.
471
+ this.#greeted.delete(ws);
407
472
  ws.send(JSON.stringify({ type: 'rehello', reason: 'That handshake went unanswered.' }));
408
473
  }, this.options.authTimeoutMs ?? AUTH_TIMEOUT_MS);
409
474
  timer.unref?.();
410
475
  this.#challenge = { socket: ws, nonce, extension: version, extensionId, timer };
476
+ this.#log(`extension: hello from ${extensionId} (${version || 'no version'}), paired: proof sent`);
411
477
  ws.send(JSON.stringify({ type: 'challenge', proof: pairingProof(record.tokenHash, nonce), installation: this.#installation() }));
412
478
  return;
413
479
  }
414
480
  // No pairing, or one this buddi has forgotten: ask for the owner instead.
481
+ // At most one new code every two seconds per extension: a reconnect loop
482
+ // must not churn through codes (and the owner's screen).
483
+ const now = this.#now(), throttle = this.options.pairThrottleMs ?? PAIR_THROTTLE_MS;
484
+ const last = this.#lastPair.get(extensionId);
485
+ if (last !== undefined && now - last < throttle) {
486
+ this.#log(`extension: ${extensionId} asked for a new pairing code too soon; closed`);
487
+ ws.close(1008, 'too many pairing requests; try again in a moment');
488
+ return;
489
+ }
490
+ for (const [id, at] of this.#lastPair)
491
+ if (now - at >= throttle)
492
+ this.#lastPair.delete(id);
493
+ this.#lastPair.set(extensionId, now);
415
494
  const code = pairCode();
416
495
  const timer = setTimeout(() => {
417
496
  if (this.#pair?.socket !== ws)
@@ -421,6 +500,25 @@ export class ExtensionEndpoint {
421
500
  }, PAIR_TTL_MS);
422
501
  timer.unref?.();
423
502
  this.#pair = { code, expiresAt: this.#now() + PAIR_TTL_MS, socket: ws, extension: version, extensionId, attempts: 0, timer };
503
+ /*
504
+ * Ping the socket while it waits. A Manifest V3 service worker is
505
+ * stopped after thirty seconds without an event, an open WebSocket or
506
+ * not, and only traffic on the socket counts as one. Before this the
507
+ * worker died half a minute into pairing: the popup kept showing its code,
508
+ * the socket closed, and the owner typed a code no browser was waiting
509
+ * behind ("No browser is waiting to be paired").
510
+ */
511
+ clearInterval(this.#pairPing);
512
+ this.#pairPing = setInterval(() => {
513
+ if (this.#pair?.socket !== ws || ws.readyState !== ws.OPEN)
514
+ return;
515
+ try {
516
+ ws.send(JSON.stringify({ type: 'ping' }));
517
+ }
518
+ catch { /* the close handler says so */ }
519
+ }, this.options.pingMs ?? PING_MS);
520
+ this.#pairPing.unref?.();
521
+ this.#log(`extension: hello from ${extensionId} (${version || 'no version'}), ${record && frame.paired === true ? 'its token is not usable here' : record ? 'it holds no token' : 'no pairing yet'}: waiting for the code`);
424
522
  ws.send(JSON.stringify({ type: 'pair', code }));
425
523
  }
426
524
  /** The second half of the handshake: the token, now that the proof was accepted. */
@@ -431,6 +529,7 @@ export class ExtensionEndpoint {
431
529
  const token = typeof frame.token === 'string' ? frame.token : '';
432
530
  const record = await this.#read();
433
531
  if (!record || token === '' || !sameHash(record.tokenHash, hashToken(token))) {
532
+ this.#log(`extension: ${extensionId} sent a token that is not this buddi's`);
434
533
  this.#clearChallenge();
435
534
  ws.close(1008, 'that token is not this buddi’s');
436
535
  return;
@@ -439,6 +538,7 @@ export class ExtensionEndpoint {
439
538
  this.#adopt(ws, { ...record, extension: challenge.extension || record.extension, extensionId,
440
539
  lastSeenAt: new Date(this.#now()).toISOString() });
441
540
  await this.#announce(ws, { type: 'paired', installation: this.#installation() });
541
+ this.#log(`extension: ${extensionId} reconnected`);
442
542
  await this.#write(this.#record);
443
543
  }
444
544
  #result(ws, frame) {
@@ -616,7 +716,7 @@ export class ExtensionEndpoint {
616
716
  const record = await this.#read();
617
717
  const pending = !!this.#pair && this.#pair.expiresAt > this.#now();
618
718
  this.#buddiVersion ??= currentVersion(this.#env()).then((version) => version.split(' ')[0] || version);
619
- return { connected: this.connected(), pending, path: await extensionDir(this.#env()), buddi: await this.#buddiVersion, extensionMinimum: MIN_EXTENSION_VERSION,
719
+ return { connected: this.connected(), pending, path: await extensionDir(this.#env()), checkout: await runsFromCheckout(this.#env()), buddi: await this.#buddiVersion, extensionMinimum: MIN_EXTENSION_VERSION,
620
720
  ...(record ? { pairedAt: record.pairedAt, extension: record.extension, lastSeenAt: record.lastSeenAt } : {}),
621
721
  ...(() => {
622
722
  const moved = portMovedSincePairing(this.#env(), record?.pairedAt);
@@ -631,6 +731,7 @@ export class ExtensionEndpoint {
631
731
  return { status: 400, body: { error: 'Type the six digits the buddi extension is showing.' } };
632
732
  const pending = this.#pair;
633
733
  if (!pending || pending.expiresAt <= this.#now()) {
734
+ this.#log('extension: a code was typed with no browser waiting');
634
735
  this.#clearPair();
635
736
  return { status: 409, body: { error: 'No browser is waiting to be paired. Press Connect in the buddi extension, then type the code it shows.' } };
636
737
  }
@@ -641,6 +742,7 @@ export class ExtensionEndpoint {
641
742
  if (pending.attempts >= MAX_PAIR_ATTEMPTS) {
642
743
  const socket = pending.socket;
643
744
  this.#clearPair();
745
+ this.#greeted.delete(socket);
644
746
  if (socket.readyState === socket.OPEN)
645
747
  socket.send(JSON.stringify({ type: 'rehello', reason: 'Too many wrong pairing codes.' }));
646
748
  return { status: 429, body: { error: 'Too many wrong codes. Press Connect in the buddi extension for a new one.' } };
@@ -652,6 +754,7 @@ export class ExtensionEndpoint {
652
754
  this.#adopt(pending.socket, { tokenHash: hashToken(token), pairedAt: now, extension: pending.extension, extensionId: pending.extensionId, lastSeenAt: now });
653
755
  await this.#write(this.#record);
654
756
  await this.#announce(pending.socket, { type: 'paired', token, installation: this.#installation() });
757
+ this.#log(`extension: paired with ${pending.extensionId}`);
655
758
  return { status: 200, body: await this.view() };
656
759
  }
657
760
  /** Forget this browser: the record goes, and so does the live socket. */
@@ -816,6 +919,9 @@ export function extensionEndpoint(env = process.env, log) {
816
919
  endpoint = new ExtensionEndpoint({ env, ...(log ? { log } : {}) });
817
920
  endpoints.set(key, endpoint);
818
921
  }
922
+ else if (log) {
923
+ endpoint.useLog(log);
924
+ }
819
925
  return endpoint;
820
926
  }
821
927
  //# sourceMappingURL=extension.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"extension.js","sourceRoot":"","sources":["../../src/web/extension.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extension.js","sourceRoot":"","sources":["../../src/web/extension.ts"],"names":[],"mappings":"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"}
@@ -102,6 +102,13 @@ export interface LockScreenView extends LockStateView {
102
102
  }>;
103
103
  /** The clock with the Profile applied. */
104
104
  clockView: LockClockView;
105
+ /** What is running, and the newer one the supervisor has ready: the status bar's answer. Absent when unknown. */
106
+ version?: LockVersion;
107
+ }
108
+ export interface LockVersion {
109
+ current: string;
110
+ latest?: string;
111
+ updateAvailable: boolean;
105
112
  }
106
113
  export interface LockClockView {
107
114
  /** `12h`, `24h`, or null for Auto. */
@@ -121,6 +128,8 @@ export interface LockDeps {
121
128
  widgets?: WidgetsService;
122
129
  /** What needs the owner (web/needs-you.ts); absent, the lock screen counts approvals alone. */
123
130
  needsYou?: () => Promise<NeedsYou>;
131
+ /** The running version, from the same answer as `GET /api/version`; absent or null leaves the line off. */
132
+ version?: () => Promise<LockVersion | null>;
124
133
  log?: (line: string) => void;
125
134
  }
126
135
  interface Answer {
@@ -172,6 +181,12 @@ export declare function createLock(deps: LockDeps): {
172
181
  invalidate: () => void;
173
182
  };
174
183
  export type LockService = ReturnType<typeof createLock>;
184
+ /**
185
+ * The lock screen's own placements as it shows them: in their order, none
186
+ * that is sensitive (the service never places one there), only those with
187
+ * something to draw, at most four.
188
+ */
189
+ export declare function lockWidgets(service: WidgetsService | undefined, hour?: HourCycle, timeFormat?: '12h' | '24h' | null): Promise<LockScreenView['widgets']>;
175
190
  /**
176
191
  * The clock as the lock screen draws it: the time and date formats with the
177
192
  * owner's Profile applied, and the second zone with its label and zone — a
@@ -1 +1 @@
1
- {"version":3,"file":"lock.d.ts","sourceRoot":"","sources":["../../src/web/lock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lock.d.ts","sourceRoot":"","sources":["../../src/web/lock.ts"],"names":[],"mappings":"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"}
@@ -228,11 +228,12 @@ export function createLock(deps) {
228
228
  const profile = await getOwnerProfile(deps.pool).catch(() => null);
229
229
  // One format for every time on the screen: the big clock's, which its widgets read as their Profile.
230
230
  const clockView = await lockClockView(deps.pool, state.settings.clock, profile, hour);
231
- const [pending, needsYou, focus, widgets] = await Promise.all([
231
+ const [pending, needsYou, focus, widgets, version] = await Promise.all([
232
232
  listPendingActions(deps.pool, { now }).catch(() => []),
233
233
  deps.needsYou ? deps.needsYou().catch(() => null) : Promise.resolve(null),
234
234
  readFocusState(deps.pool, { now: deps.now, timezone: deps.timezone }).catch(() => null),
235
235
  lockWidgets(deps.widgets, hour, clockView.time),
236
+ deps.version ? deps.version().catch(() => null) : Promise.resolve(null),
236
237
  ]);
237
238
  const owner = profile?.preferredName?.trim() || profile?.displayName?.trim() || null;
238
239
  return {
@@ -245,6 +246,7 @@ export function createLock(deps) {
245
246
  focus,
246
247
  widgets,
247
248
  clockView,
249
+ ...(version ? { version } : {}),
248
250
  };
249
251
  }
250
252
  async function route(req) {
@@ -461,7 +463,7 @@ async function readImage(pool) {
461
463
  * that is sensitive (the service never places one there), only those with
462
464
  * something to draw, at most four.
463
465
  */
464
- async function lockWidgets(service, hour, timeFormat) {
466
+ export async function lockWidgets(service, hour, timeFormat) {
465
467
  if (!service)
466
468
  return [];
467
469
  try {
@@ -474,7 +476,9 @@ async function lockWidgets(service, hour, timeFormat) {
474
476
  const view = answer.views[placement.key];
475
477
  if (!info || info.sensitive || !view || !view.body || (view.state !== 'ok' && view.state !== 'stale'))
476
478
  continue;
477
- out.push({ key: placement.key, id: info.id, title: placement.label, size: placement.size, view: { state: view.state, body: view.body } });
479
+ // A stale body keeps its mark and when it was made: the screen says "from 9:12" rather than passing it off as now.
480
+ const since = view.state === 'stale' && view.updatedAt ? { updatedAt: view.updatedAt } : {};
481
+ out.push({ key: placement.key, id: info.id, title: placement.label, size: placement.size, view: { state: view.state, body: view.body, ...since } });
478
482
  }
479
483
  return out;
480
484
  }
@@ -1 +1 @@
1
- {"version":3,"file":"lock.js","sourceRoot":"","sources":["../../src/web/lock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lock.js","sourceRoot":"","sources":["../../src/web/lock.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,eAAe,EACf,OAAO,EACP,eAAe,EACf,WAAW,EACX,UAAU,EACV,kBAAkB,EAClB,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,SAAS,EACT,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,uBAAuB,EACvB,aAAa,EACb,SAAS,EACT,YAAY,EACZ,iBAAiB,GAOlB,MAAM,aAAa,CAAC;AAIrB,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAuC,MAAM,cAAc,CAAC;AAE7F,uHAAuH;AACvH,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC;AACpC,2GAA2G;AAC3G,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAEzC,oFAAoF;AACpF,MAAM,CAAC,MAAM,WAAW,GAAG,EAAE,KAAK,EAAE,oDAAoD,EAAE,MAAM,EAAE,IAAI,EAAW,CAAC;AAElH;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAc,EAAE,IAAY;IAC7D,MAAM,IAAI,GAAG,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,MAAM,CAAC;IACnD,iHAAiH;IACjH,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,WAAW,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5D,IAAI,IAAI;QAAE,OAAO,IAAI,KAAK,cAAc,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,kBAAkB,IAAI,IAAI,KAAK,sBAAsB,CAAC;IACnI,OAAO,MAAM,KAAK,MAAM,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,kBAAkB,CAAC,CAAC;AACpF,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,QAAQ,CAAC,MAAqC;IAC5D,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACzD,OAAO,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7C,CAAC;AAED,6GAA6G;AAC7G,MAAM,OAAO,eAAgB,SAAQ,KAAK;IACxC;QACE,KAAK,CAAC,4CAA4C,CAAC,CAAC;QACpD,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAgED,MAAM,UAAU,UAAU,CAAC,IAAc;IACvC,IAAI,MAAM,GAAmG,IAAI,CAAC;IAClH,MAAM,SAAS,GAAG,IAAI,GAAG,EAAY,CAAC;IACtC,iFAAiF;IACjF,IAAI,QAAQ,GAAqB,OAAO,CAAC,OAAO,EAAE,CAAC;IAEnD,qGAAqG;IACrG,IAAI,KAAK,GAAiE,IAAI,CAAC;IAE/E,KAAK,UAAU,OAAO,CAAC,KAAK,GAAG,KAAK;QAClC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;QACjC,IAAI,CAAC,KAAK,IAAI,MAAM,IAAI,GAAG,GAAG,MAAM,CAAC,EAAE,GAAG,aAAa;YAAE,OAAO,MAAM,CAAC;QACvE;;;;;WAKG;QACH,MAAM,CAAC,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACvD,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,KAAc,EAAE,CAAC,CAAC;YAClG,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,KAAc,EAAE,CAAC,CAAC;YACjH,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;SACxB,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,eAAe,EAAE,CAAC;QACvD,MAAM,GAAG,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAM,CAAC,GAAG,CAAC;QAClD,MAAM,QAAQ,GAAG,YAAY,CAAC,EAAE;YAC9B,CAAC,CAAC,YAAY,CAAC,QAAQ;YACvB,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,UAAU,EAAE,uBAAuB,EAAE,KAAK,EAAE,EAAE,GAAG,kBAAkB,EAAE,EAAE,CAAC,CAAC;QACpH,MAAM,MAAM,GAAG,KAAK,EAAE,GAAG,IAAI,IAAI,CAAC;QAClC,IAAI,OAAO,CAAC,EAAE;YAAE,KAAK,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;aACrC,IAAI,YAAY,CAAC,EAAE,IAAI,KAAK;YAAE,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,CAAC;QAClE,4DAA4D;QAC5D,IAAI,CAAC,OAAO,CAAC,EAAE;YAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAC1D,MAAM,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAC3C,yFAAyF;QACzF,IAAI,MAAM,IAAI,CAAC,GAAG;YAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;QACjD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,SAAS,UAAU;QACjB,MAAM,GAAG,IAAI,CAAC;IAChB,CAAC;IAED,SAAS,WAAW,CAAC,OAAgB,EAAE,MAAkB,EAAE,EAAQ;QACjE,IAAI,OAAO,CAAC,QAAQ;YAAE,OAAO;QAC7B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/C,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,QAAQ,CAAC,OAAO,CAAC,CAAC;YACpB,CAAC;YAAC,MAAM,CAAC;gBACP,qCAAqC;YACvC,CAAC;QACH,CAAC;IACH,CAAC;IAED,uFAAuF;IACvF,KAAK,UAAU,WAAW,CAAC,MAAqB;QAC9C,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QAC3C,OAAO,CAAC,MAAM,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IACrD,CAAC;IAED;;;OAGG;IACH,KAAK,UAAU,MAAM,CAAC,OAAgB;QACpC,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;QAC/C,MAAM,KAAK,GAAG,MAAM,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YACf,IAAI,OAAO,CAAC,QAAQ;gBAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC3D,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAClC,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC;QAC1C,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC;QACjC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC1D,IAAI,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,aAAa,EAAE,CAAC;YAC5C,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC;YACpF,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,SAAS,OAAO,CAAC,OAAgB,EAAE,KAAiC;QAClE,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;QACtB,MAAM,SAAS,GAAG,GAAG,EAAE,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5G,OAAO;YACL,GAAG,EAAE,GAAG,KAAK,IAAI;YACjB,MAAM,EAAE,GAAG,KAAK,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;YAC1E,QAAQ,EAAE,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI;YACzE,MAAM,EAAE,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;YACxE,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,YAAY;YACzC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,UAAU,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU;YACvH,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,0BAA0B,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;YAChF,SAAS;YACT,SAAS,EAAE,GAAG,IAAI,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI;YACtF,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK;SAC5B,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,SAAS,KAAK,CAAC,GAAY;QACzB,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;YACnC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM;gBAAE,OAAO,EAAE,EAAE,EAAE,IAAa,EAAE,CAAC;YAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,IAAI,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC;gBACrE,OAAO,EAAE,EAAE,EAAE,KAAc,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,gDAAgD,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3J,CAAC;YACD,MAAM,KAAK,GAAG,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,MAAM,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7E,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,MAAM,CAAC,QAAQ,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS;oBAAE,MAAM,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBACxH,UAAU,EAAE,CAAC;gBACb,OAAO,EAAE,EAAE,EAAE,IAAa,EAAE,CAAC;YAC/B,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrC,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;YACjC,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YACjF,MAAM,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;YAClE,UAAU,EAAE,CAAC;YACb,OAAO;gBACL,EAAE,EAAE,KAAc;gBAClB,MAAM,EAAE,GAAG;gBACX,IAAI,EAAE;oBACJ,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,sDAAsD,CAAC,CAAC,CAAC,uBAAuB;oBACnG,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,GAAG,QAAQ,CAAC;oBACjD,SAAS;iBACV;aACF,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC/B,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,UAAU,MAAM,CAAC,OAAgB,EAAE,IAAgB;QACtD,MAAM,KAAK,GAAG,MAAM,OAAO,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,IAAa,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAC5E,qGAAqG;QACrG,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QACtF,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACrE,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;YACtD,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;YACzE,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;YACvF,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC;YAC/C,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;SACxE,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC;QACrF,OAAO;YACL,GAAG,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC;YAC1B,GAAG,EAAE,GAAG,CAAC,WAAW,EAAE;YACtB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK;YACL,SAAS,EAAE,QAAQ,EAAE,SAAS,IAAI,OAAO,CAAC,MAAM;YAChD,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YACzD,KAAK;YACL,OAAO;YACP,SAAS;YACT,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChC,CAAC;IACJ,CAAC;IAED,KAAK,UAAU,KAAK,CAAC,GAOpB;QACC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;QACtC,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAE,GAAG,CAAC,IAAgC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/H,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEvB,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACzB,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC1C,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC;gBACtB,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,OAAO,EAAE,CAAC,EAAE,CAAC;YAClE,CAAC;YACD,IAAI,MAAM,KAAK,MAAM;gBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,CAAC;YAC9E,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,CAAC,KAAK,CAAC,GAAG;gBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,6CAA6C,EAAE,EAAE,CAAC;YACvG,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;gBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,gDAAgD,EAAE,EAAE,CAAC;YAC5H,MAAM,MAAM,GAAe,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;YACrE;;;;;;;;;;;;eAYG;YACH,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;gBACtB,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC;gBAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC5B,MAAM,OAAO,GAAG,OAAO,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC;gBAC9G,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,OAAO,GAAG,kBAAkB,EAAE,CAAC;oBAChG,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;gBACxD,CAAC;YACH,CAAC;YACD,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;YAClC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;QACxD,CAAC;QAED,IAAI,IAAI,KAAK,kBAAkB,EAAE,CAAC;YAChC,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,MAAM;gBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC;YAC/F,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC;YACtB,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,CAAC;QAED,IAAI,IAAI,KAAK,kBAAkB,EAAE,CAAC;YAChC,IAAI,MAAM,KAAK,MAAM;gBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC;YAC5E,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACtB,4DAA4D;gBAC5D,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,OAAO,EAAE,CAAC,EAAE,CAAC;YAClE,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;gBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,gCAAgC,EAAE,EAAE,CAAC;YACrG,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,EAAE;gBAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;YACpE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAClC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACtE,CAAC;QAED,IAAI,IAAI,KAAK,oBAAoB,EAAE,CAAC;YAClC,IAAI,MAAM,KAAK,MAAM;gBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC;YAC5E,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAClC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;QACzB,CAAC;QAED,IAAI,IAAI,KAAK,eAAe,EAAE,CAAC;YAC7B,IAAI,MAAM,KAAK,KAAK;gBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC;YAC1E,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;gBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,gCAAgC,EAAE,EAAE,CAAC;YACrG,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9C,IAAI,QAAQ,EAAE,CAAC;gBACb,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;oBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,qCAAqC,EAAE,EAAE,CAAC;gBAC9G,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACzC,IAAI,CAAC,MAAM,CAAC,EAAE;oBAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;YAChK,CAAC;YACD,MAAM,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACzH,UAAU,EAAE,CAAC;YACb,4EAA4E;YAC5E,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAClC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACtE,CAAC;QAED,IAAI,IAAI,KAAK,sBAAsB,EAAE,CAAC;YACpC,IAAI,MAAM,KAAK,MAAM;gBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC;YAC5E,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9C,IAAI,CAAC,QAAQ;gBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YACnF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;gBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,qCAAqC,EAAE,EAAE,CAAC;YAC9G,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,EAAE;gBAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;YAC9J,MAAM,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;YAC7B,UAAU,EAAE,CAAC;YACb,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACtE,CAAC;QAED,IAAI,IAAI,KAAK,oBAAoB,EAAE,CAAC;YAClC,IAAI,MAAM,KAAK,KAAK;gBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC;YAC1E,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;YAClC,MAAM,IAAI,GAAiB,EAAE,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;YACjD,IAAI,cAAc,IAAI,IAAI,EAAE,CAAC;gBAC3B,MAAM,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;gBAC5B,IAAI,CAAC,KAAK,IAAI,IAAI,CAAE,WAAkC,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,mDAAmD,EAAE,EAAE,CAAC;gBACjK,IAAI,CAAC,YAAY,GAAG,CAAc,CAAC;YACrC,CAAC;YACD,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC;gBACzB,MAAM,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC;gBAC1B,IAAI,CAAE,gBAAuC,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,4BAA4B,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;gBAC/J,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK;oBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE,EAAE,CAAC;gBACnG,IAAI,CAAC,UAAU,GAAG,CAAmB,CAAC;YACxC,CAAC;YACD,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;gBACpB,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACtC,IAAI,CAAC,KAAK;oBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,uHAAuH,EAAE,EAAE,CAAC;gBAC7K,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACrB,CAAC;YACD,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACzC,UAAU,EAAE,CAAC;YACb,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACtE,CAAC;QAED,IAAI,IAAI,KAAK,sBAAsB,EAAE,CAAC;YACpC,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC1C,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACvC,IAAI,CAAC,GAAG;oBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE,EAAE,CAAC;gBAC1E,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;YACrC,CAAC;YACD,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACxB,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;gBACvE,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;gBAClC,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,KAAK,OAAO;oBAAE,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,KAAK,CAAC,QAAQ,EAAE,UAAU,EAAE,uBAAuB,EAAE,CAAC,CAAC;gBAC1I,UAAU,EAAE,CAAC;gBACb,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YACtE,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;gBACtB,IAAI,CAAC,GAAG,CAAC,MAAM;oBAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,yCAAyC,EAAE,EAAE,CAAC;gBACpG,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC;gBAClC,IAAI,CAAC,MAAM,CAAC,EAAE;oBAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;gBAChF,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;gBACzB,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CACnB;;;kFAGwE,EACxE,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CACtD,CAAC;gBACF,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;gBAClC,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,KAAK,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC/E,UAAU,EAAE,CAAC;gBACb,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YACtE,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,qBAAqB,EAAE,EAAE,CAAC;QACjE,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,kEAAkE;QAClE,MAAM;QACN,0DAA0D;QAC1D,WAAW;QACX,8DAA8D;QAC9D,KAAK;QACL;;;;WAIG;QACH,KAAK,CAAC,MAAM,CAAC,GAAY;YACvB,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,CAAC,KAAK,CAAC,GAAG;gBAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;YACpC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,0BAA0B,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;YACrH,OAAO,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;QACD,6EAA6E;QAC7E,QAAQ,CAAC,QAAkB;YACzB,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACxB,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;QACD,UAAU;KACX,CAAC;AACJ,CAAC;AAID,KAAK,UAAU,YAAY,CAAC,IAAe;IACzC,IAAI,CAAC;QACH,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1F,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACjD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,IAAe;IACtC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAChG,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAc,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3F,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAAmC,EAAE,IAAgB,EAAE,UAAiC;IACxH,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IACxB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC3H,MAAM,GAAG,GAA8B,EAAE,CAAC;QAC1C,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YACpC,IAAI,GAAG,CAAC,MAAM,IAAI,gBAAgB;gBAAE,MAAM;YAC1C,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,MAAM,CAAC,CAAC;YACrE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACzC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO,CAAC;gBAAE,SAAS;YAChH,mHAAmH;YACnH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,KAAK,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5F,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC;QACtJ,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,IAAe,EACf,KAAgB,EAChB,OAA0E,EAC1E,IAAgB;IAEhB,MAAM,WAAW,GAAG,OAAO,EAAE,UAAU,KAAK,KAAK,IAAI,OAAO,EAAE,UAAU,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/G,MAAM,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACzE,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;IAClF,MAAM,WAAW,GAAG,OAAO,EAAE,UAAU,KAAK,OAAO,IAAI,OAAO,EAAE,UAAU,KAAK,MAAM,IAAI,OAAO,EAAE,UAAU,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;IACnJ,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;IACjE,IAAI,IAAI,GAA0B,IAAI,CAAC;IACvC,IAAI,KAAK,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;QAC5B,MAAM,KAAK,GAAG,CAAC,MAAM,eAAe,CAAC,IAAa,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9F,IAAI,KAAK,EAAE,QAAQ;YAAE,IAAI,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC/E,CAAC;SAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACtB,IAAI,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;IACpE,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAC9B,CAAC"}