@post-print/agent-test 1.1.8 → 2.0.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 (238) hide show
  1. package/README.md +18 -66
  2. package/dist/cli.d.ts +2 -64
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +26 -691
  5. package/dist/cli.js.map +1 -1
  6. package/dist/compare-scenario.d.ts +1 -1
  7. package/dist/compare-scenario.d.ts.map +1 -1
  8. package/dist/compare-scenario.js +72 -75
  9. package/dist/compare-scenario.js.map +1 -1
  10. package/dist/failures.d.ts +5 -1
  11. package/dist/failures.d.ts.map +1 -1
  12. package/dist/failures.js +1 -1
  13. package/dist/failures.js.map +1 -1
  14. package/dist/host-login.d.ts +1 -26
  15. package/dist/host-login.d.ts.map +1 -1
  16. package/dist/host-login.js +1 -92
  17. package/dist/host-login.js.map +1 -1
  18. package/dist/index.d.ts +6 -28
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +4 -26
  21. package/dist/index.js.map +1 -1
  22. package/dist/scenario-story.d.ts.map +1 -1
  23. package/dist/scenario-story.js +57 -39
  24. package/dist/scenario-story.js.map +1 -1
  25. package/dist/sdk/cli.d.ts +3 -0
  26. package/dist/sdk/cli.d.ts.map +1 -0
  27. package/dist/sdk/cli.js +20 -0
  28. package/dist/sdk/cli.js.map +1 -0
  29. package/dist/sdk/definitions.d.ts +22 -0
  30. package/dist/sdk/definitions.d.ts.map +1 -0
  31. package/dist/sdk/definitions.js +58 -0
  32. package/dist/sdk/definitions.js.map +1 -0
  33. package/dist/sdk/expect.d.ts +31 -0
  34. package/dist/sdk/expect.d.ts.map +1 -0
  35. package/dist/sdk/expect.js +68 -0
  36. package/dist/sdk/expect.js.map +1 -0
  37. package/dist/sdk/judge.d.ts +16 -0
  38. package/dist/sdk/judge.d.ts.map +1 -0
  39. package/dist/sdk/judge.js +82 -0
  40. package/dist/sdk/judge.js.map +1 -0
  41. package/dist/sdk/metrics.d.ts +3 -0
  42. package/dist/sdk/metrics.d.ts.map +1 -0
  43. package/dist/sdk/metrics.js +24 -0
  44. package/dist/sdk/metrics.js.map +1 -0
  45. package/dist/sdk/reporter.d.ts +12 -0
  46. package/dist/sdk/reporter.d.ts.map +1 -0
  47. package/dist/sdk/reporter.js +58 -0
  48. package/dist/sdk/reporter.js.map +1 -0
  49. package/dist/sdk/runtime.d.ts +33 -0
  50. package/dist/sdk/runtime.d.ts.map +1 -0
  51. package/dist/sdk/runtime.js +188 -0
  52. package/dist/sdk/runtime.js.map +1 -0
  53. package/dist/sdk/test.d.ts +27 -0
  54. package/dist/sdk/test.d.ts.map +1 -0
  55. package/dist/sdk/test.js +92 -0
  56. package/dist/sdk/test.js.map +1 -0
  57. package/dist/sdk/types.d.ts +75 -0
  58. package/dist/sdk/types.d.ts.map +1 -0
  59. package/dist/sdk/types.js +2 -0
  60. package/dist/sdk/types.js.map +1 -0
  61. package/dist/sdk/usage.d.ts +10 -0
  62. package/dist/sdk/usage.d.ts.map +1 -0
  63. package/dist/sdk/usage.js +13 -0
  64. package/dist/sdk/usage.js.map +1 -0
  65. package/dist/sdk/viewer-results.d.ts +43 -0
  66. package/dist/sdk/viewer-results.d.ts.map +1 -0
  67. package/dist/sdk/viewer-results.js +126 -0
  68. package/dist/sdk/viewer-results.js.map +1 -0
  69. package/dist/sdk/viewer.d.ts +11 -0
  70. package/dist/sdk/viewer.d.ts.map +1 -0
  71. package/dist/sdk/viewer.js +160 -0
  72. package/dist/sdk/viewer.js.map +1 -0
  73. package/dist/sdk/workspace.d.ts +33 -0
  74. package/dist/sdk/workspace.d.ts.map +1 -0
  75. package/dist/sdk/workspace.js +100 -0
  76. package/dist/sdk/workspace.js.map +1 -0
  77. package/dist/types.d.ts +4 -40
  78. package/dist/types.d.ts.map +1 -1
  79. package/dist/viewer/catalog.d.ts +2 -8
  80. package/dist/viewer/catalog.d.ts.map +1 -1
  81. package/dist/viewer/catalog.js +23 -128
  82. package/dist/viewer/catalog.js.map +1 -1
  83. package/dist/viewer/client.d.ts.map +1 -1
  84. package/dist/viewer/client.js +12 -12
  85. package/dist/viewer/client.js.map +1 -1
  86. package/dist/viewer/run-controller.d.ts +4 -2
  87. package/dist/viewer/run-controller.d.ts.map +1 -1
  88. package/dist/viewer/run-controller.js +297 -248
  89. package/dist/viewer/run-controller.js.map +1 -1
  90. package/dist/viewer/server.d.ts +4 -3
  91. package/dist/viewer/server.d.ts.map +1 -1
  92. package/dist/viewer/server.js +149 -112
  93. package/dist/viewer/server.js.map +1 -1
  94. package/dist/viewer/styles.d.ts +2 -0
  95. package/dist/viewer/styles.d.ts.map +1 -0
  96. package/dist/viewer/styles.js +444 -0
  97. package/dist/viewer/styles.js.map +1 -0
  98. package/dist/worker-pool.d.ts +5 -1
  99. package/dist/worker-pool.d.ts.map +1 -1
  100. package/dist/worker-pool.js +1 -1
  101. package/dist/worker-pool.js.map +1 -1
  102. package/package.json +7 -7
  103. package/dist/check.d.ts +0 -38
  104. package/dist/check.d.ts.map +0 -1
  105. package/dist/check.js +0 -169
  106. package/dist/check.js.map +0 -1
  107. package/dist/command-allowlist.d.ts +0 -9
  108. package/dist/command-allowlist.d.ts.map +0 -1
  109. package/dist/command-allowlist.js +0 -29
  110. package/dist/command-allowlist.js.map +0 -1
  111. package/dist/debug-bundle.d.ts +0 -81
  112. package/dist/debug-bundle.d.ts.map +0 -1
  113. package/dist/debug-bundle.js +0 -392
  114. package/dist/debug-bundle.js.map +0 -1
  115. package/dist/discover-suites.d.ts +0 -2
  116. package/dist/discover-suites.d.ts.map +0 -1
  117. package/dist/discover-suites.js +0 -19
  118. package/dist/discover-suites.js.map +0 -1
  119. package/dist/doctor.d.ts +0 -24
  120. package/dist/doctor.d.ts.map +0 -1
  121. package/dist/doctor.js +0 -272
  122. package/dist/doctor.js.map +0 -1
  123. package/dist/expect.d.ts +0 -59
  124. package/dist/expect.d.ts.map +0 -1
  125. package/dist/expect.js +0 -518
  126. package/dist/expect.js.map +0 -1
  127. package/dist/host-log.d.ts +0 -17
  128. package/dist/host-log.d.ts.map +0 -1
  129. package/dist/host-log.js +0 -154
  130. package/dist/host-log.js.map +0 -1
  131. package/dist/hosts.d.ts +0 -22
  132. package/dist/hosts.d.ts.map +0 -1
  133. package/dist/hosts.js +0 -84
  134. package/dist/hosts.js.map +0 -1
  135. package/dist/html-report.d.ts +0 -18
  136. package/dist/html-report.d.ts.map +0 -1
  137. package/dist/html-report.js +0 -1276
  138. package/dist/html-report.js.map +0 -1
  139. package/dist/live-isolation.d.ts +0 -82
  140. package/dist/live-isolation.d.ts.map +0 -1
  141. package/dist/live-isolation.js +0 -399
  142. package/dist/live-isolation.js.map +0 -1
  143. package/dist/live-timeout.d.ts +0 -11
  144. package/dist/live-timeout.d.ts.map +0 -1
  145. package/dist/live-timeout.js +0 -29
  146. package/dist/live-timeout.js.map +0 -1
  147. package/dist/load-adapters.d.ts +0 -13
  148. package/dist/load-adapters.d.ts.map +0 -1
  149. package/dist/load-adapters.js +0 -76
  150. package/dist/load-adapters.js.map +0 -1
  151. package/dist/load-suite.d.ts +0 -22
  152. package/dist/load-suite.d.ts.map +0 -1
  153. package/dist/load-suite.js +0 -154
  154. package/dist/load-suite.js.map +0 -1
  155. package/dist/mcp-config.d.ts +0 -13
  156. package/dist/mcp-config.d.ts.map +0 -1
  157. package/dist/mcp-config.js +0 -121
  158. package/dist/mcp-config.js.map +0 -1
  159. package/dist/preflight.d.ts +0 -3
  160. package/dist/preflight.d.ts.map +0 -1
  161. package/dist/preflight.js +0 -17
  162. package/dist/preflight.js.map +0 -1
  163. package/dist/progress.d.ts +0 -24
  164. package/dist/progress.d.ts.map +0 -1
  165. package/dist/progress.js +0 -111
  166. package/dist/progress.js.map +0 -1
  167. package/dist/record-trace.d.ts +0 -64
  168. package/dist/record-trace.d.ts.map +0 -1
  169. package/dist/record-trace.js +0 -124
  170. package/dist/record-trace.js.map +0 -1
  171. package/dist/report-preview-server.d.ts +0 -2
  172. package/dist/report-preview-server.d.ts.map +0 -1
  173. package/dist/report-preview-server.js +0 -24
  174. package/dist/report-preview-server.js.map +0 -1
  175. package/dist/report-preview.d.ts +0 -35
  176. package/dist/report-preview.d.ts.map +0 -1
  177. package/dist/report-preview.js +0 -205
  178. package/dist/report-preview.js.map +0 -1
  179. package/dist/run-suite.d.ts +0 -139
  180. package/dist/run-suite.d.ts.map +0 -1
  181. package/dist/run-suite.js +0 -1669
  182. package/dist/run-suite.js.map +0 -1
  183. package/dist/scenario-finalizer.d.ts +0 -27
  184. package/dist/scenario-finalizer.d.ts.map +0 -1
  185. package/dist/scenario-finalizer.js +0 -39
  186. package/dist/scenario-finalizer.js.map +0 -1
  187. package/dist/scenario-retry.d.ts +0 -15
  188. package/dist/scenario-retry.d.ts.map +0 -1
  189. package/dist/scenario-retry.js +0 -52
  190. package/dist/scenario-retry.js.map +0 -1
  191. package/dist/scenario-seed.d.ts +0 -13
  192. package/dist/scenario-seed.d.ts.map +0 -1
  193. package/dist/scenario-seed.js +0 -72
  194. package/dist/scenario-seed.js.map +0 -1
  195. package/dist/suite-summary.d.ts +0 -16
  196. package/dist/suite-summary.d.ts.map +0 -1
  197. package/dist/suite-summary.js +0 -218
  198. package/dist/suite-summary.js.map +0 -1
  199. package/dist/theme.d.ts +0 -96
  200. package/dist/theme.d.ts.map +0 -1
  201. package/dist/theme.js +0 -446
  202. package/dist/theme.js.map +0 -1
  203. package/dist/validate-seeds.d.ts +0 -20
  204. package/dist/validate-seeds.d.ts.map +0 -1
  205. package/dist/validate-seeds.js +0 -72
  206. package/dist/validate-seeds.js.map +0 -1
  207. package/dist/validate-suite.d.ts +0 -24
  208. package/dist/validate-suite.d.ts.map +0 -1
  209. package/dist/validate-suite.js +0 -542
  210. package/dist/validate-suite.js.map +0 -1
  211. package/dist/viewer/cli.d.ts +0 -17
  212. package/dist/viewer/cli.d.ts.map +0 -1
  213. package/dist/viewer/cli.js +0 -38
  214. package/dist/viewer/cli.js.map +0 -1
  215. package/dist/viewer/compare-metrics.d.ts +0 -30
  216. package/dist/viewer/compare-metrics.d.ts.map +0 -1
  217. package/dist/viewer/compare-metrics.js +0 -101
  218. package/dist/viewer/compare-metrics.js.map +0 -1
  219. package/dist/viewer/context-files.d.ts +0 -8
  220. package/dist/viewer/context-files.d.ts.map +0 -1
  221. package/dist/viewer/context-files.js +0 -57
  222. package/dist/viewer/context-files.js.map +0 -1
  223. package/dist/viewer/emit.d.ts +0 -7
  224. package/dist/viewer/emit.d.ts.map +0 -1
  225. package/dist/viewer/emit.js +0 -25
  226. package/dist/viewer/emit.js.map +0 -1
  227. package/dist/viewer/live-runner.d.ts +0 -27
  228. package/dist/viewer/live-runner.d.ts.map +0 -1
  229. package/dist/viewer/live-runner.js +0 -166
  230. package/dist/viewer/live-runner.js.map +0 -1
  231. package/dist/viewer/session-server.d.ts +0 -2
  232. package/dist/viewer/session-server.d.ts.map +0 -1
  233. package/dist/viewer/session-server.js +0 -71
  234. package/dist/viewer/session-server.js.map +0 -1
  235. package/dist/warnings.d.ts +0 -3
  236. package/dist/warnings.d.ts.map +0 -1
  237. package/dist/warnings.js +0 -13
  238. package/dist/warnings.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-suite.js","sourceRoot":"","sources":["../src/run-suite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAa7D,OAAO,EACN,eAAe,EACf,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,EACxB,+BAA+B,EAC/B,qBAAqB,EACrB,yBAAyB,EACzB,WAAW,EACX,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,UAAU,EACV,WAAW,EACX,oBAAoB,EACpB,eAAe,EACf,sBAAsB,EACtB,4BAA4B,EAC5B,uBAAuB,EACvB,sBAAsB,EACtB,iCAAiC,EACjC,uBAAuB,EACvB,QAAQ,EACR,kBAAkB,EAClB,wBAAwB,EACxB,qBAAqB,EACrB,aAAa,EACb,yBAAyB,EACzB,yBAAyB,EACzB,qBAAqB,GACrB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACN,eAAe,EACf,4BAA4B,EAC5B,kBAAkB,EAClB,yBAAyB,EACzB,kBAAkB,EAClB,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,GAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACjG,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAChF,OAAO,EACN,6BAA6B,EAC7B,sBAAsB,EACtB,4BAA4B,EAC5B,sBAAsB,EACtB,iBAAiB,GACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EACN,cAAc,EACd,OAAO,EACP,QAAQ,EACR,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB,aAAa,GACb,MAAM,eAAe,CAAC;AACvB,OAAO,EACN,qBAAqB,EACrB,0BAA0B,EAC1B,0BAA0B,EAC1B,yBAAyB,EACzB,wBAAwB,EACxB,oBAAoB,EACpB,mBAAmB,EAGnB,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,oBAAoB,EACpB,0BAA0B,EAC1B,qBAAqB,EACrB,kBAAkB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,+BAA+B,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACpG,OAAO,EAEN,iBAAiB,EACjB,6BAA6B,EAC7B,oBAAoB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACrF,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAcnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtE,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,cAAc,GAAI,OAAO,CAAC,iBAAiB,CAAyB,CAAC,OAAO,CAAC;AAEnF,IAAI,qBAAwD,CAAC;AAC7D,IAAI,uBAAkF,CAAC;AAQvF,IAAI,4BAA4B,GAAG,KAAK,CAAC;AAEzC,SAAS,oBAAoB,CAAC,GAAW,EAAE,QAA4B;IACtE,uBAAuB,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC7C,CAAC;AAED,SAAS,sBAAsB;IAC9B,uBAAuB,GAAG,SAAS,CAAC;AACrC,CAAC;AAED,KAAK,UAAU,uBAAuB;IACrC,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC9B,OAAO;IACR,CAAC;IACD,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,uBAAuB,CAAC;IAClD,MAAM,6BAA6B,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACnD,sBAAsB,EAAE,CAAC;AAC1B,CAAC;AAED,SAAS,cAAc;IACtB,OAAO,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,GAAG,CAAC;AAC7C,CAAC;AAED,SAAS,sBAAsB,CAAC,WAAoB;IACnD,MAAM,IAAI,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC3C,IAAI,CAAC,IAAI,EAAE,CAAC;QACX,OAAO;IACR,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;QACpD,WAAW,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;AACF,CAAC;AAED,SAAS,2BAA2B;IACnC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,EAAE,CAAC;IACrD,IAAI,CAAC,GAAG,EAAE,CAAC;QACV,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACpE,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,sBAAsB;IACrC,OAAO,CAAC,cAAc,EAAE,CAAC;AAC1B,CAAC;AAED,sGAAsG;AACtG,MAAM,UAAU,uBAAuB;IACtC,IAAI,4BAA4B,EAAE,CAAC;QAClC,OAAO;IACR,CAAC;IACD,4BAA4B,GAAG,IAAI,CAAC;IAEpC,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,EAAE;QAClC,sBAAsB,EAAE,CAAC;QACzB,qBAAqB,EAAE,CAAC;QACxB,qBAAqB,EAAE,CAAC;QACxB,qBAAqB,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,qBAAqB,CAAC;QACtC,MAAM,WAAW,GAAG,uBAAuB,CAAC;QAC5C,IAAI,CAAC,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;YAC9B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnB,OAAO;QACR,CAAC;QACD,KAAK,OAAO,CAAC,OAAO,EAAE;aACpB,IAAI,CAAC,KAAK,IAAI,EAAE;YAChB,IAAI,OAAO,EAAE,CAAC;gBACb,MAAM,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YACxC,CAAC;YACD,IAAI,WAAW,EAAE,CAAC;gBACjB,MAAM,6BAA6B,CAAC,WAAW,CAAC,GAAG,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,KAAK,CAC/E,GAAG,EAAE,CAAC,SAAS,CACf,CAAC;YACH,CAAC;QACF,CAAC,CAAC;aACD,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACrC,CAAC,CAAC;IAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,iBAAiB;IACzB,MAAM,KAAK,GAAI,UAA0D,CAAC,GAAG,EAAE,EAAE,CAAC;IAClF,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,CAAC;IACb,CAAC;AACF,CAAC;AAuED,8EAA8E;AAC9E,MAAM,UAAU,uBAAuB,CAAC,MAAsB;IAC7D,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;QACzB,OAAO,WAAW,CAAC;IACpB,CAAC;IACD,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;QAC3B,OAAO,UAAU,CAAC;IACnB,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAoC;IACnE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QACpB,OAAO,EAAE,CAAC;IACX,CAAC;IACD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAChC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,EAAE,EAAE,EAAE,SAAS,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QACjD,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,SAAS,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;IACrE,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,oBAAoB,CAAC,MAAsB;IAC1D,OAAO;QACN,GAAG,sBAAsB,CAAC,MAAM,CAAC,KAAK,CAAC;QACvC,GAAG,wBAAwB,CAAC,MAAM,CAAC,eAAe,IAAI,EAAE,CAAC;KACzD,CAAC;AACH,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,2BAA2B,CAAC,MAAsB;IACjE,OAAO,sBAAsB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC7C,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,iBAAiB,CAAC,KAAc,EAAE,OAAkC;IACnF,OAAO,KAAK,KAAK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAC7F,CAAC;AAED,2FAA2F;AAC3F,MAAM,UAAU,kBAAkB,CACjC,KAAc,EACd,QAAmD;IAEnD,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACd,CAAC;IACD,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;QACtB,OAAO,CACN,2BAA2B,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC;YACvD,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAChD,CAAC;IACH,CAAC;IACD,OAAO,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AACzD,CAAC;AAED,2DAA2D;AAC3D,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,OAO3C;IACA,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC;IACd,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IACjF,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM;QAC9B,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;YAChC,MAAM,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAC/C,OAAO,SAAS,KAAK,OAAO,CAAC,MAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QAClF,CAAC,CAAC;QACH,CAAC,CAAC,UAAU,CAAC;IACd,KAAK,MAAM,SAAS,IAAI,QAAQ,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,SAAS,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;QACjF,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YACxC,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACnB,SAAS;YACV,CAAC;YACD,IAAI,OAAO,CAAC,cAAc,IAAI,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC,cAAc,EAAE,CAAC;gBACxE,SAAS;YACV,CAAC;YACD,IAAI,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;gBACxC,OAAO,IAAI,CAAC;YACb,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED,SAAS,oBAAoB,CAAC,QAA0B,EAAE,EAAU;IACnE,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,IAAI,EAAE,CAAC;AAC1D,CAAC;AAED,SAAS,qBAAqB,CAC7B,KAAiB,EACjB,QAA0B,EAC1B,iBAgBE;IAEF,MAAM,MAAM,GAAG,iBAAiB,IAAI,KAAK,CAAC,aAAa,IAAI,EAAE,CAAC;IAC9D,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,QAAQ,GAAG,OAiBhB,CAAC;QACF,OAAO;YACN,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;YACrD,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,eAAe,EAAE,QAAQ,CAAC,eAAe;YACzC,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;YAC7C,KAAK,EAAE,QAAQ,CAAC,KAAK;SACrB,CAAC;IACH,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,QAA4B;IACvD,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;AAC/D,CAAC;AAED,SAAS,cAAc,CAAC,OAA6B;IACpD,OAAO,CACN,OAAO,EAAE,KAAK,KAAK,IAAI;QACvB,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,GAAG;QACpC,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,MAAM,CACvC,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,OAY5B;IACA,IAAI,CAAC,sBAAsB,EAAE,EAAE,CAAC;QAC/B,OAAO;IACR,CAAC;IACD,UAAU,CACT,KAAK,CAAC,eAAe,CAAC;QACrB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,cAAc,EAAE,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC;QACpD,eAAe,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ;QAC9C,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,cAAc,EAAE,OAAO,CAAC,cAAc;KACtC,CAAC,CACF,CAAC;AACH,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,OAkBpC;IACA,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAC9C,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC/B,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,MAAM,GAAG,GAAG,iBAAiB,CAC5B,OAAO,CAAC,gBAAgB,EACxB,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,QAAQ,CAAC,IAAI,EACrB,yBAAyB,EACzB,OAAO,CAAC,IAAI,CACZ,CAAC;IACF,MAAM,OAAO,GACZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,iDAAiD,CAAC,CAAC;IAE5F,IAAI,CAAC;QACJ,MAAM,gBAAgB,CAAC;YACtB,GAAG;YACH,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK;YAC5C,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,WAAW,EAAE,uBAAuB,CAAC;gBACpC,KAAK,EAAE,OAAO,CAAC,SAAS;gBACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAC/B,cAAc;gBACd,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,WAAW,EAAE,4BAA4B,EAAE;aAC3C,CAAC;YACF,KAAK,EAAE;gBACN,OAAO;gBACP,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,KAAK,EAAE,OAAO,CAAC,SAAS;gBACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAC/B,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,SAAS,EAAE,OAAO,CAAC,SAAS,KAAK,CAAC;gBAClC,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,qEAAqE;gBACrE,oEAAoE;gBACpE,kEAAkE;gBAClE,yCAAyC;gBACzC,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,0BAA0B,EAAE;gBAC1D,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,IAAI;gBAC9C,QAAQ,EAAE,OAAO,CAAC,QAAQ;aAC1B;SACD,CAAC,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO,CAAC,IAAI,CAAC,0CAA0C,GAAG,MAAM,OAAO,EAAE,CAAC,CAAC;QAC3E,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,IAAI,sBAAsB,EAAE,EAAE,CAAC;QAC9B,QAAQ,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAChF,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,OAAwB;IACtD,MAAM,mBAAmB,GAAG,0BAA0B,EAAE,CAAC;IACzD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACpC,0BAA0B,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IACD,MAAM,kBAAkB,GAAG,OAAO,CAAC,gBAAgB,KAAK,SAAS,CAAC;IAClE,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,0BAA0B,EAAE,CAAC;IAElF,IAAI,CAAC;QACJ,OAAO,MAAM,YAAY,CAAC,EAAE,GAAG,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAC7D,CAAC;YAAS,CAAC;QACV,IAAI,kBAAkB,IAAI,CAAC,OAAO,CAAC,cAAc,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACrE,MAAM,qBAAqB,CAAC,yBAAyB,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAC7E,GAAG,EAAE,CAAC,SAAS,CACf,CAAC;QACH,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACpC,0BAA0B,CAAC,mBAAmB,CAAC,CAAC;QACjD,CAAC;IACF,CAAC;AACF,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,OAAwB;IACnD,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IACzF,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACrE,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,gBAAgB;aAC9B,GAAG,CACH,CAAC,KAAK,EAAE,EAAE,CACT,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,OAAO,EAAE,CAClF;aACA,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,sBAAsB,OAAO,CAAC,SAAS,MAAM,OAAO,EAAE,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,IAAI,KAAK,CAAC,QAAQ,EAAE,IAAI,IAAI,QAAQ,CAAC;IACrE,MAAM,OAAO,GAAqB,EAAE,CAAC;IACrC,MAAM,QAAQ,GAAG,OAAO,CAAC,cAAc;QACtC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC,cAAc,CAAC;QAChF,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;IAEnB,IAAI,OAAO,CAAC,cAAc,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CAAC,uBAAuB,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,KAAK,IAAI,CAAC;IAC/C,MAAM,SAAS,GAAG,UAAU;QAC3B,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,kBAAkB,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;QAChF,CAAC,CAAC,QAAQ,CAAC;IACZ,IAAI,UAAU,IAAI,OAAO,CAAC,cAAc,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3F,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC;QACjC,MAAM,IAAI,KAAK,CACd,YAAY,OAAO,CAAC,cAAc,iBAAiB,MAAM,iBAAiB,WAAW,GAAG,CACxF,CAAC;IACH,CAAC;IAED,MAAM,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC;IACvC,MAAM,cAAc,GAAG,sBAAsB,EAAE,CAAC;IAChD,MAAM,YAAY,GAAG,cAAc,EAAE,KAAK,IAAI,aAAa,CAAC;IAC5D,MAAM,WAAW,GAChB,4BAA4B,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,IAAI,aAAa,GAAG,CAAC,CAAC;IAChF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,IAAI,mBAAmB,CAAC,CAAC;IAEpE,IAAI,sBAAsB,EAAE,EAAE,CAAC;QAC9B,WAAW,CAAC,KAAK,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;QAC7E,IAAI,WAAW,EAAE,CAAC;YACjB,WAAW,CAAC,OAAO,KAAK,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;QAC7C,CAAC;IACF,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QACjB,MAAM,YAAY,GAAqB,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACnE,MAAM,aAAa,CAClB,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,EACzD,OAAO,EACP,KAAK,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE;YAC7B,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACf,OAAO;YACR,CAAC;YACD,MAAM,aAAa,GAAG,cAAc,EAAE,KAAK,IAAI,KAAK,GAAG,CAAC,CAAC;YACzD,MAAM,aAAa,GAAG,YAAY,CAAC;YACnC,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACnB,MAAM,SAAS,GAAG,IAAI,aAAa,IAAI,aAAa,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACzE,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;gBACtC,sBAAsB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;gBAC7C,YAAY,CAAC,KAAK,CAAC,GAAG;oBACrB,KAAK,EAAE,KAAK,CAAC,IAAI;oBACjB,QAAQ,EAAE,QAAQ,CAAC,IAAI;oBACvB,WAAW,EAAE,gBAAgB,CAAC,QAAQ,CAAC,WAAW,CAAC;oBACnD,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,KAAK,CAAC,QAAQ,EAAE,WAAW,IAAI,kBAAkB;oBACtF,MAAM,EAAE,IAAI;oBACZ,QAAQ,EAAE,EAAE;oBACZ,OAAO,EAAE,IAAI;oBACb,UAAU,EAAE,CAAC;oBACb,KAAK,EAAE,kBAAkB,CAAC;wBACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;wBACvB,MAAM,EAAE,IAAI;wBACZ,OAAO,EAAE,IAAI;wBACb,QAAQ,EAAE,EAAE;qBACZ,CAAC;iBACF,CAAC;gBACF,OAAO;YACR,CAAC;YAED,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YAClC,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;YACtC,MAAM,WAAW,GAAG,CAAC,cAAc,EAAE;gBACpC,CAAC,CAAC,+BAA+B,CAAC,OAAO,CAAC,eAAe,CAAC;gBAC1D,CAAC,CAAC,CAAC,CAAC;YACL,IAAI,QAAQ,GAAG,CAAC,CAAC;YACjB,IAAI,QAAQ,GAAuB,EAAE,CAAC;YACtC,IAAI,aAAqC,CAAC;YAC1C,IAAI,uBAA2C,CAAC;YAChD,IAAI,YAAmD,CAAC;YAExD,OAAO,IAAI,EAAE,CAAC;gBACb,QAAQ,EAAE,CAAC;gBACX,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC;oBACvC,GAAG,EAAE,OAAO,CAAC,GAAG;oBAChB,SAAS,EAAE,KAAK,CAAC,IAAI;oBACrB,YAAY,EAAE,QAAQ,CAAC,IAAI;oBAC3B,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,cAAc;oBAC9C,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,KAAK,CAAC,IAAI;oBAC9C,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;oBAC1C,cAAc,EAAE,OAAO,CAAC,cAAc;oBACtC,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;oBACpB,IAAI,EAAE,WAAW;oBACjB,cAAc,EAAE,OAAO,CAAC,cAAc;oBACtC,aAAa,EAAE,KAAK,GAAG,CAAC;oBACxB,aAAa,EAAE,aAAa;oBAC5B,SAAS,EAAE,oBAAoB,CAAC,OAAO,CAAC,SAAS,CAAC;oBAClD,SAAS,EAAE,OAAO,CAAC,SAAS,KAAK,CAAC;oBAClC,cAAc,EAAE,OAAO,CAAC,cAAc;oBACtC,KAAK,EAAE,OAAO,CAAC,KAAK;oBACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,gBAAgB,EAAE,uBAAuB;oBACzC,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,kBAAkB,EAAE;iBAClD,CAAC,CAAC;gBACH,uBAAuB,GAAG,OAAO,CAAC,QAAQ,CAAC;gBAC3C,QAAQ,GAAG,EAAE,CAAC;gBACd,aAAa,GAAG,SAAS,CAAC;gBAC1B,YAAY;oBACX,OAAO,CAAC,gBAAgB,KAAK,SAAS;wBACrC,CAAC,CAAC,MAAM,iBAAiB,CACvB,oBAAoB,CAAC,OAAO,CAAC,gBAAgB,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CACzE;wBACF,CAAC,CAAC,SAAS,CAAC;gBAEd,IAAI,OAAO,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;oBAC5B,QAAQ,CAAC,IAAI,CACZ,GAAG,6BAA6B,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,CAChF,CAAC;gBACH,CAAC;gBACD,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;oBAC9B,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;wBACtB,MAAM,QAAQ,GAAG,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;wBACzD,IAAI,QAAQ,EAAE,CAAC;4BACd,IAAI,CAAC;gCACJ,aAAa,GAAG,MAAM,gBAAgB,CACrC,mBAAmB,CAClB,OAAO,CAAC,gBAAgB,EACxB,KAAK,CAAC,IAAI,EACV,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,EAAE,CACX,CACD,CAAC;4BACH,CAAC;4BAAC,MAAM,CAAC;gCACR,gEAAgE;4BACjE,CAAC;wBACF,CAAC;oBACF,CAAC;yBAAM,CAAC;wBACP,MAAM,SAAS,GAAG,mBAAmB,CACpC,OAAO,CAAC,gBAAgB,EACxB,KAAK,CAAC,IAAI,EACV,QAAQ,CAAC,IAAI,CACb,CAAC;wBACF,IAAI,CAAC;4BACJ,aAAa,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;wBACnD,CAAC;wBAAC,MAAM,CAAC;4BACR,gEAAgE;wBACjE,CAAC;oBACF,CAAC;gBACF,CAAC;gBAED,MAAM,QAAQ,GACb,QAAQ,CAAC,MAAM,GAAG,CAAC;oBACnB,QAAQ,GAAG,WAAW;oBACtB,4BAA4B,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;gBACvD,IAAI,QAAQ,EAAE,CAAC;oBACd,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,QAAQ,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;oBACjE,SAAS;gBACV,CAAC;gBACD,MAAM;YACP,CAAC;YAED,IAAI,aAA+C,CAAC;YACpD,IAAI,aAAgD,CAAC;YACrD,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,QAAQ,EAAE,IAAI,IAAI,QAAQ,CAAC;YACpF,IAAI,QAAQ,CAAC,OAAO,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;gBAClD,aAAa,GAAG,4BAA4B,CAC3C,MAAM,4BAA4B,CACjC,OAAO,CAAC,gBAAgB,EACxB,KAAK,CAAC,IAAI,EACV,QAAQ,EACR,YAAY,CACZ,EACD,YAAY,CACZ,CAAC;gBACF,aAAa,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,aAAa,CAAC;YAC7E,CAAC;YACD,IAAI,aAAa,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,IAAI,QAAQ,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;gBACxF,KAAK,MAAM,GAAG,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;oBACtC,IAAI,CAAC,GAAG,CAAC,KAAK;wBAAE,SAAS;oBACzB,IAAI,CAAC;wBACJ,MAAM,MAAM,GAAG,MAAM,cAAc,CAClC,GAAG,CAAC,KAAK,EACT,EAAE,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,EACxC,OAAO,CAAC,GAAG,EACX,SAAS,CACT,CAAC;wBACF,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;wBACzB,GAAG,CAAC,aAAa,GAAG,qBAAqB,CACxC,MAAM,CAAC,KAAK,EACZ,QAAQ,CAAC,OAAO,CAAC,YAAY,EAC7B,MAAM,CAAC,QAAQ,CACf,CAAC;wBACF,GAAG,CAAC,QAAQ,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;wBAC7D,QAAQ,CAAC,IAAI,CACZ,GAAG,qBAAqB,CACvB,GAAG,CAAC,KAAK,EACT,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,KAAK,aAAa,CAAC,CACvE,CACD,CAAC;oBACH,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBAChB,QAAQ,CAAC,IAAI,CACZ,gBAAgB,CACf,OAAO,EACP,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,6BAA6B,EACtE,aAAa,CACb,CACD,CAAC;oBACH,CAAC;gBACF,CAAC;YACF,CAAC;YACD,IAAI,aAAa,EAAE,CAAC;gBACnB,aAAa,CAAC,WAAW,GAAG,oBAAoB,CAAC,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;gBACrF,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,KAAK,aAAa,CAAC,EAAE,CAAC;oBACrE,QAAQ,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC;gBAC1E,CAAC;YACF,CAAC;YACD,IACC,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC;gBAClD,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK;oBACvB,QAAQ,CAAC,OAAO;oBAChB,QAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,KAAK,aAAa,CAAC,CAAC,EAChE,CAAC;gBACF,MAAM,aAAa,GAAG,aAAa,CAAC,CAAC,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5E,IACC,QAAQ,CAAC,OAAO;oBAChB,aAAa;oBACb,aAAa,CAAC,MAAM,GAAG,CAAC;oBACxB,aAAa,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EACtC,CAAC;oBACF,MAAM,QAAQ,GAAG,2BAA2B,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBAC9D,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACzB,iBAAiB,EAAE,CAAC;wBACpB,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;wBAC5D,IAAI,CAAC;4BACJ,MAAM,MAAM,GAAG,MAAM,qBAAqB,CACzC,aAAa,EACb,QAAQ,CAAC,MAAM,EACf,OAAO,CAAC,GAAG,EACX,SAAS,CACT,CAAC;4BACF,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;4BAClC,MAAM,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;4BAC3C,aAAa,GAAG,qBAAqB,CACpC;gCACC,GAAG,CAAC,UAAU,IAAI;oCACjB,QAAQ,EAAE,EAAE;oCACZ,SAAS,EAAE,EAAE;oCACb,aAAa,EAAE,EAAE;oCACjB,SAAS,EAAE,EAAE;iCACb,CAAC;gCACF,aAAa,EAAE,MAAM,CAAC,QAAQ;6BAC9B,EACD,QAAQ,EACR,MAAM,CAAC,QAAQ,CACf,CAAC;wBACH,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BAChB,QAAQ,CAAC,IAAI,CACZ,gBAAgB,CACf,OAAO,EACP,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gCAAgC,EACzE,aAAa,CACb,CACD,CAAC;wBACH,CAAC;oBACF,CAAC;gBACF,CAAC;qBAAM,IAAI,aAAa,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;oBAC/C,MAAM,QAAQ,GAAG,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBACvD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACzB,iBAAiB,EAAE,CAAC;wBACpB,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;wBAC5D,IAAI,CAAC;4BACJ,MAAM,MAAM,GAAG,MAAM,cAAc,CAClC,aAAa,EACb,QAAQ,CAAC,MAAM,EACf,OAAO,CAAC,GAAG,EACX,SAAS,EACT,SAAS,EACT,YAAY,EAAE,cAAc;gCAC3B,CAAC,CAAC;oCACA;wCACC,IAAI,EAAE,YAAY,CAAC,cAAc,CAAC,IAAI;wCACtC,IAAI,EAAE,YAAY,CAAC,cAAc,CAAC,IAAI;qCACtC;iCACD;gCACF,CAAC,CAAC,SAAS,CACZ,CAAC;4BACF,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;4BAClC,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC;4BAC7B,aAAa,GAAG,qBAAqB,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;wBAChF,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BAChB,QAAQ,CAAC,IAAI,CACZ,gBAAgB,CACf,OAAO,EACP,KAAK,YAAY,KAAK;gCACrB,CAAC,CAAC,KAAK,CAAC,OAAO;gCACf,CAAC,CAAC,wCAAwC,EAC3C,aAAa,CACb,CACD,CAAC;wBACH,CAAC;oBACF,CAAC;gBACF,CAAC;YACF,CAAC;YAED,IAAI,YAAY,EAAE,cAAc,EAAE,CAAC;gBAClC,MAAM,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACvF,CAAC;YAED,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC;YAC3D,MAAM,cAAc,GAAG,sBAAsB,CAAC;gBAC7C,KAAK,EAAE,KAAK,CAAC,IAAI;gBACjB,QAAQ;gBACR,WAAW,EACV,YAAY,EAAE,WAAW;oBACzB,QAAQ,CAAC,WAAW;oBACpB,KAAK,CAAC,QAAQ,EAAE,WAAW;oBAC3B,kBAAkB;gBACnB,YAAY,EAAE,YAAY,EAAE,YAAY;gBACxC,SAAS,EAAE,YAAY,EAAE,SAAS;gBAClC,QAAQ;gBACR,UAAU;gBACV,QAAQ;gBACR,aAAa;gBACb,KAAK,EAAE,aAAa;gBACpB,OAAO,EAAE,aAAa;gBACtB,YAAY,EAAE,aAAa;oBAC1B,CAAC,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE,aAAa,CAAC;oBACxE,CAAC,CAAC,SAAS;gBACZ,UAAU,EAAE,aAAa;oBACxB,CAAC,CAAC,aAAa,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;oBAChF,CAAC,CAAC,aAAa,EAAE,KAAK;aACvB,CAAC,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,cAAc,CAAC;YACzC,MAAM,cAAc,GAAG,MAAM,qBAAqB,CAAC;gBAClD,KAAK;gBACL,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,cAAc;gBAC9C,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;gBAC1C,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,SAAS,EAAE,KAAK,CAAC,IAAI;gBACrB,QAAQ;gBACR,IAAI,EAAE,WAAW;gBACjB,MAAM,EAAE,cAAc;gBACtB,KAAK,EAAE,aAAa;gBACpB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,kBAAkB,EAAE;aAClD,CAAC,CAAC;YACH,cAAc,CAAC,cAAc,GAAG,cAAc,CAAC;YAC/C,mBAAmB,CAAC;gBACnB,MAAM;gBACN,KAAK,EAAE,KAAK,GAAG,CAAC;gBAChB,KAAK,EAAE,aAAa;gBACpB,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,UAAU;gBACV,WAAW,EAAE,4BAA4B,CAAC,cAAc,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC;gBACrF,aAAa;gBACb,QAAQ;gBACR,KAAK;gBACL,KAAK;gBACL,cAAc;aACd,CAAC,CAAC;YACH,YAAY,CAAC,KAAK,CAAC,GAAG,cAAc,CAAC;YACrC,iBAAiB,EAAE,CAAC;YACpB,OAAO;QACR,CAAC,CACD,CAAC;QACF,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;YACnC,IAAI,MAAM,EAAE,CAAC;gBACZ,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtB,CAAC;QACF,CAAC;IACF,CAAC;SAAM,CAAC;QACP,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YACvD,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;YAClC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACf,SAAS;YACV,CAAC;YAED,MAAM,aAAa,GAAG,cAAc,EAAE,KAAK,IAAI,KAAK,GAAG,CAAC,CAAC;YACzD,MAAM,aAAa,GAAG,YAAY,CAAC;YACnC,OAAO,CAAC,IAAI,CACX,MAAM,YAAY,CAAC;gBAClB,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,SAAS,EAAE,KAAK,CAAC,IAAI;gBACrB,QAAQ;gBACR,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;gBAC1C,aAAa;gBACb,aAAa;gBACb,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,eAAe,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe;gBAC/D,UAAU,EAAE,OAAO,CAAC,UAAU;aAC9B,CAAC,CACF,CAAC;YACF,iBAAiB,EAAE,CAAC;QACrB,CAAC;IACF,CAAC;IAED,OAAO;QACN,KAAK,EAAE,KAAK,CAAC,IAAI;QACjB,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM;QAC9C,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM;QAChD,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM;QAC7D,OAAO;QACP,OAAO,EAAE,sBAAsB,CAAC,OAAO,CAAC;KACxC,CAAC;AACH,CAAC;AAED,2FAA2F;AAC3F,SAAS,iBAAiB,CACzB,GAAW,EACX,SAAiB,EACjB,cAAyB,EACzB,UAA4C;IAE5C,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACjD,IAAI,SAAS,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9C,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxB,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,mBAAmB,CAAC,UAAU,CAAC,EAAE,CAAC;QACtD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrB,CAAC;IACF,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED,SAAS,cAAc,CAAC,GAAW,EAAE,IAAY;IAChD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACjD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO,OAAO,CAAC;IAChB,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC;QACpC,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,SAAS,mBAAmB,CAC3B,gBAAyB,EACzB,iBAA0B;IAE1B,MAAM,GAAG,GAAG,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,CAAC;IACnF,MAAM,MAAM,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAC3C,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,MAAM,CAAC,GAAG,CAAC;AACnB,CAAC;AAED,SAAS,mBAAmB,CAC3B,QAAmB,EACnB,eAA0B;IAE1B,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CACtE,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAC/D,CAAC;IACF,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAC/C,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAe;IAC7C,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACvB,OAAO,QAAQ,CAAC;IACjB,CAAC;IACD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACvB,OAAO,QAAQ,CAAC;IACjB,CAAC;IACD,OAAO,QAAQ,CAAC;AACjB,CAAC;AAED,yFAAyF;AACzF,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAA4B;IAC9D,MAAM,mBAAmB,GAAG,0BAA0B,EAAE,CAAC;IACzD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACpC,0BAA0B,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IACD,MAAM,gBAAgB,GACrB,OAAO,CAAC,gBAAgB;QACxB,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,0BAA0B,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACtF,MAAM,gBAAgB,GAAG,kBAAkB,EAAE,CAAC;IAC9C,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACpC,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;IACD,IAAI,CAAC;QACJ,OAAO,MAAM,gBAAgB,CAAC,EAAE,GAAG,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC;IACjE,CAAC;YAAS,CAAC;QACV,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACpC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;QACtC,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACpC,0BAA0B,CAAC,mBAAmB,CAAC,CAAC;QACjD,CAAC;IACF,CAAC;AACF,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,OAA4B;IAC3D,MAAM,cAAc,GAAG,OAAO,CAAC,QAG9B,CAAC;IACF,MAAM,cAAc,GAAG,OAAO,CAAC,QAAqD,CAAC;IACrF,IACC,cAAc,CAAC,IAAI,KAAK,QAAQ;QAChC,cAAc,EAAE,IAAI,KAAK,QAAQ;QACjC,aAAa,IAAI,cAAc,EAC9B,CAAC;QACF,MAAM,IAAI,KAAK,CACd,4FAA4F,CAC5F,CAAC;IACH,CAAC;IACD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,QAAQ,CAAC;IAChD,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,QAAQ,EAAE,IAAI,IAAI,QAAQ,CAAC;IACvE,MAAM,WAAW,GAAG,+BAA+B,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IAC7E,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,MAAuB,CAAC;IAE5B,OAAO,IAAI,EAAE,CAAC;QACb,QAAQ,EAAE,CAAC;QACX,MAAM,GAAG,MAAM,gBAAgB,CAC9B,OAAO,CAAC,GAAG,EACX,SAAS,EACT,OAAO,CAAC,QAAQ,EAChB,WAAW,EACX,OAAO,CAAC,QAAQ,EAAE,WAAW,EAC7B,OAAO,CAAC,QAAQ,EAAE,OAAO,EACzB,OAAO,CAAC,QAAQ,EAAE,MAAM,EACxB,OAAO,CAAC,QAAQ,EAAE,cAAc,EAChC,OAAO,CAAC,QAAQ,EAAE,UAAU,EAC5B,OAAO,CAAC,QAAQ,EAAE,SAAS,EAC3B,OAAO,CAAC,QAAQ,EAAE,eAAe,EACjC,OAAO,CAAC,KAAK,IAAI,IAAI,EACrB,OAAO,CAAC,QAAQ,IAAI,IAAI,EACxB,OAAO,CAAC,gBAAgB,EACxB,OAAO,CAAC,aAAa,EACrB,OAAO,CAAC,aAAa,EACrB,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,SAAS,IAAI,cAAc,EACnC,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,UAAU,EAClB,EAAE,YAAY,EAAE,WAAW,GAAG,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CACjE,CAAC;QACF,MAAM,QAAQ,GACb,CAAC,MAAM,CAAC,OAAO;YACf,CAAC,MAAM,CAAC,MAAM;YACd,QAAQ,GAAG,WAAW;YACtB,4BAA4B,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACf,MAAM;QACP,CAAC;QACD,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,QAAQ,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;QACtC,MAAM,cAAc,GAAG,MAAM,qBAAqB,CAAC;YAClD,KAAK;YACL,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,cAAc;YAC9C,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,SAAS;YACT,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAI,WAAW;YAC1C,MAAM;YACN,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI;YAC5B,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,kBAAkB,EAAE;SAClD,CAAC,CAAC;QACH,MAAM,CAAC,cAAc,GAAG,cAAc,CAAC;QACvC,mBAAmB,CAAC;YACnB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,KAAK,EAAE,OAAO,CAAC,aAAa;YAC5B,KAAK,EAAE,OAAO,CAAC,aAAa;YAC5B,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;YAC3B,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,WAAW,EAAE,4BAA4B,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC;YAC5E,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,KAAK;YACL,cAAc;SACd,CAAC,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC9B,GAAW,EACX,SAAiB,EACjB,QAAuB,EACvB,WAAsB,EACtB,kBAAiD,EACjD,cAAyC,EACzC,aAAmC,EACnC,qBAAgC,EAChC,iBAAmD,EACnD,gBAAyB,EACzB,sBAAgC,EAChC,KAAe,EACf,QAAkB,EAClB,gBAAyB,EACzB,aAAsB,EACtB,aAAsB,EACtB,SAAkB,EAClB,cAAwB,EACxB,SAAmB,EACnB,QAAiB,EACjB,SAAS,GAAG,cAAc,EAC1B,cAAwB,EACxB,UAAmB,EACnB,UAA0F;IAE1F,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAClC,MAAM,KAAK,GAAG,cAAc,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IACnD,MAAM,YAAY,GAAG,UAAU,EAAE,YAAY,KAAK,IAAI,CAAC;IACvD,MAAM,oBAAoB,GAAG,QAAQ,CAAC,WAAW,IAAI,kBAAkB,IAAI,kBAAkB,CAAC;IAE9F,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnB,MAAM,SAAS,GACd,aAAa,KAAK,SAAS,IAAI,aAAa,KAAK,SAAS;YACzD,CAAC,CAAC,IAAI,aAAa,IAAI,aAAa,KAAK,QAAQ,CAAC,IAAI,EAAE;YACxD,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QAClB,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;QACtC,sBAAsB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC7C,OAAO;YACN,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,QAAQ,CAAC,IAAI;YACvB,WAAW,EAAE,gBAAgB,CAAC,QAAQ,CAAC,WAAW,CAAC;YACnD,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,WAAW,EAAE,oBAAoB;YACjC,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,CAAC;YACb,KAAK,EAAE,kBAAkB,CAAC;gBACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,EAAE;aACZ,CAAC;SACF,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,CAAC,OAAO,IAAI,UAAU,EAAE,UAAU,KAAK,SAAS,EAAE,CAAC;QAC9D,OAAO,uBAAuB,CAC7B,GAAG,EACH,SAAS,EACT,QAAQ,EACR,WAAW,EACX,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,EACL,QAAQ,EACR,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,SAAS,EACT,cAAc,EACd,SAAS,EACT,QAAQ,EACR,SAAS,EACT,cAAc,EACd,UAAU,EACV,EAAE,YAAY,EAAE,CAChB,CAAC;IACH,CAAC;IAED,IAAI,UAAU,EAAE,UAAU,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;QAChD,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,IAAI,WAAW,CAAC;IAC1C,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAW,IAAI,kBAAkB,IAAI,kBAAkB,CAAC;IACrF,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,cAAc,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAClF,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,IAAI,aAAa,CAAC;IAChD,MAAM,cAAc,GAAG,mBAAmB,CAAC,qBAAqB,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IAC3F,MAAM,YAAY,GAAG,mBAAmB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC/E,MAAM,gBAAgB,GAAG,YAAY,KAAK,SAAS,CAAC;IACpD,MAAM,eAAe,GAAG,sBAAsB,CAAC,QAAQ,CAAC,eAAe,EAAE,sBAAsB,CAAC,CAAC;IACjG,MAAM,UAAU,GAAG,gBAAgB;QAClC,CAAC,CAAC,sBAAsB,CAAC,eAAe,CAAC,iBAAiB,EAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC;QACtF,CAAC,CAAC,eAAe,CAAC,iBAAiB,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC3D,MAAM,aAAa,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,eAAe,GAAG,CAAC,cAAc,CAAC;IACxC,MAAM,cAAc,GAAwB;QAC3C,KAAK,EAAE,SAAS;QAChB,QAAQ,EAAE,QAAQ,CAAC,IAAI;QACvB,IAAI;QACJ,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjE,CAAC;IAEF,IAAI,UAAU,EAAE,UAAU,EAAE,CAAC;QAC5B,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,UAAU,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;IAChF,CAAC;SAAM,IAAI,aAAa,KAAK,SAAS,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QACvE,WAAW,CAAC,KAAK,CAAC,aAAa,CAAC,aAAa,EAAE,aAAa,EAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;QACpF,sBAAsB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;SAAM,CAAC;QACP,WAAW,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;QACtD,sBAAsB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,WAAW,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC;IAC9E,IAAI,cAA6E,CAAC;IAClF,IAAI,gBAA2E,CAAC;IAChF,MAAM,gBAAgB,GAAG,WAAW,CAAC,CAAC,CAAC,MAAM,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACvF,IAAI,WAAW,EAAE,CAAC;QACjB,eAAe,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,4BAA4B,EAAE,GAAG,cAAc,EAAE,CAAC,CAAC;QAC3F,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;YACxB,gBAAgB,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAC;YAChD,oBAAoB,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;QAC7C,CAAC;QACD,cAAc,GAAG,MAAM,qBAAqB,CAAC;YAC5C,SAAS,EAAE,GAAG;YACd,SAAS,EAAE,YAAY;YACvB,YAAY,EAAE,gBAAgB;gBAC7B,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,yBAAyB,CACzB,iBAAiB,CAAC,GAAG,EAAE,SAAS,EAAE,cAAc,EAAE,UAAU,CAAC,EAC7D,qBAAqB,CAAC,MAAM,CAAC,CAC7B;SACH,CAAC,CAAC;QACH,qBAAqB,GAAG,cAAc,CAAC,OAAO,CAAC;QAC/C,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;YACxB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAClE,eAAe,CAAC;gBACf,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,iBAAiB,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG;gBACtD,GAAG,cAAc;aACjB,CAAC,CAAC;YACH,MAAM,oBAAoB,CAAC,GAAG,EAAE,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,SAAS,EAAE;gBACxE,SAAS,EAAE,QAAQ,CAAC,aAAa,KAAK,IAAI;aAC1C,CAAC,CAAC;YACH,eAAe,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,cAAc,EAAE,CAAC,CAAC;QAC/E,CAAC;IACF,CAAC;SAAM,CAAC;QACP,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,wCAAwC,CAAC,CAAC,CAAC,CAAC;IAC7F,CAAC;IACD,MAAM,MAAM,GAAG,cAAc,EAAE,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACzF,IAAI,cAAuF,CAAC;IAE5F,IAAI,CAAC;QACJ,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC;YACjC,GAAG,EAAE,MAAM;YACX,IAAI,EAAE,WAAW;YACjB,OAAO;YACP,MAAM;YACN,cAAc;SACd,CAAC,CAAC;QACH,MAAM,cAAc,GACnB,WAAW,KAAK,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,uBAAuB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtF,MAAM,SAAS,GAAG,kBAAkB,CAAC,IAAI,CAAC;YACzC,CAAC,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;YACvE,CAAC,CAAC,SAAS,CAAC;QACb,MAAM,oBAAoB,GACzB,cAAc,EAAE,IAAI,gBAAgB;YACnC,CAAC,CAAC,wBAAwB,CACxB,gBAAgB,EAChB,SAAS,EACT,QAAQ,CAAC,IAAI,EACb,UAAU,EAAE,UAAU,CACtB;YACF,CAAC,CAAC,SAAS,CAAC;QACd,eAAe,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE,CAAC,CAAC;QAC7D,eAAe,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,sBAAsB,EAAE,GAAG,cAAc,EAAE,CAAC,CAAC;QACrF,MAAM,YAAY,GAAG,kBAAkB,CACtC,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,OAAO,EACf,cAAc,IAAI,EAAE,CACpB,CAAC;QACF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,eAAe,CAAC;gBACf,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;gBACpD,GAAG,cAAc;aACjB,CAAC,CAAC;QACJ,CAAC;QACD,eAAe,CAAC;YACf,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE,YAAY;YACnB,SAAS;YACT,GAAG,cAAc;SACjB,CAAC,CAAC;QACH,eAAe,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,EAAE,GAAG,cAAc,EAAE,CAAC,CAAC;QAC9E,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC1D,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QACvC,IAAI,WAA+B,CAAC;QACpC,MAAM,OAAO,GAAG,MAAM,aAAa,CAClC,QAAQ,CAAC;YACR,IAAI;YACJ,GAAG,EAAE,MAAM;YACX,OAAO;YACP,OAAO;YACP,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,cAAc;YACd,UAAU;YACV,eAAe;YACf,aAAa,EAAE,QAAQ,CAAC,aAAa,KAAK,IAAI;YAC9C,QAAQ,EAAE,kBAAkB,EAAE;YAC9B,SAAS,EAAE,aAAa;YACxB,eAAe;YACf,oBAAoB,EAAE,2BAA2B,EAAE;YACnD,eAAe,EAAE,oBAAoB;gBACpC,CAAC,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,oBAAoB,CAAC;gBACnD,CAAC,CAAC,SAAS;YACZ,YAAY,EAAE,CAAC,KAAqB,EAAE,EAAE;gBACvC,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC3B,eAAe,CAAC;wBACf,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,GAAG,cAAc;qBACjB,CAAC,CAAC;oBACH,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAC9D,WAAW,GAAG,SAAS,CAAC;oBACxB,gBAAgB,EAAE,CAAC;oBACnB,OAAO;gBACR,CAAC;gBACD,eAAe,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,cAAc,EAAE,CAAC,CAAC;gBACvE,8DAA8D;gBAC9D,qDAAqD;gBACrD,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACxC,CAAC;SACD,CAAC,EACF,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE,CACrD,CAAC;QAEF,QAAQ,CACP,KAAK,CAAC,KAAK,CACV,OAAO,EACP,GAAG,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC,CAAC,EAAE,CAC9G,CACD,CAAC;QAEF,IAAI,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,QAAQ,GAAuB,EAAE,CAAC;QAExC,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YACpC,MAAM,eAAe,GAAG;gBACvB,cAAc,OAAO,CAAC,UAAU,EAAE;gBAClC,YAAY,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE;gBACnC,aAAa,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE;gBACrC,iBAAiB,KAAK,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;gBACzF,KAAK,CAAC,SAAS,EAAE,eAAe;oBAC/B,CAAC,CAAC,mBAAmB,KAAK,CAAC,SAAS,CAAC,eAAe,EAAE;oBACtD,CAAC,CAAC,SAAS;gBACZ,KAAK,CAAC,SAAS,EAAE,kBAAkB;oBAClC,CAAC,CAAC,sBAAsB,KAAK,CAAC,SAAS,CAAC,kBAAkB,EAAE;oBAC5D,CAAC,CAAC,SAAS;gBACZ,KAAK,CAAC,SAAS,EAAE,qBAAqB;oBACrC,CAAC,CAAC,yBAAyB,KAAK,CAAC,SAAS,CAAC,qBAAqB,EAAE;oBAClE,CAAC,CAAC,SAAS;aACZ;iBACC,MAAM,CAAC,OAAO,CAAC;iBACf,IAAI,CAAC,IAAI,CAAC,CAAC;YACb,QAAQ,CAAC,IAAI,CACZ,gBAAgB,CACf,UAAU,EACV,OAAO,CAAC,KAAK,IAAI,iBAAiB,OAAO,CAAC,MAAM,EAAE,EAClD,eAAe,EACf,eAAe,CACf,CACD,CAAC;QACH,CAAC;aAAM,IAAI,eAAe,IAAI,qBAAqB,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YACtE,QAAQ,CAAC,IAAI,CACZ,gBAAgB,CACf,UAAU,EACV,yEAAyE,EACzE,eAAe,EACf,aAAa,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAClE,CACD,CAAC;QACH,CAAC;QAED,QAAQ,CAAC,IAAI,CACZ,GAAG,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE;YACvC,UAAU,EAAE,OAAO,CAAC,UAAU;SAC9B,CAAC,CACF,CAAC;QAEF,IAAI,cAAc,EAAE,CAAC;YACpB,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;YACtE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,QAAQ,CAAC,IAAI,CACZ,gBAAgB,CACf,iBAAiB,EACjB,kDAAkD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EACtE,eAAe,EACf,WAAW,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC/B,CACD,CAAC;YACH,CAAC;QACF,CAAC;QAED,IAAI,WAAW,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACnD,MAAM,eAAe,GAAG,MAAM,wBAAwB,CAAC,GAAG,CAAC,CAAC;YAC5D,MAAM,WAAW,GAAG,iCAAiC,CAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,CAAC;YACzF,MAAM,MAAM,GAAG,sBAAsB,CACpC,mBAAmB,CAAC,gBAAgB,EAAE,eAAe,CAAC,EACtD,WAAW,EACX,GAAG,CACH,CAAC;YACF,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS;gBACnC,CAAC,CAAC,MAAM,oBAAoB,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;gBAC9E,CAAC,CAAC,EAAE,CAAC;YACN,MAAM,YAAY,GACjB,cAAc,KAAK,SAAS;gBAC3B,CAAC,CAAC,yBAAyB,CAAC,KAAK,EAAE,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC;gBAC5D,CAAC,CAAC,EAAE,CAAC;YACP,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,4BAA4B,CAC9D,MAAM,EACN,SAAS,EACT,YAAY,CACZ,CAAC;YACF,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,MAAM,uBAAuB,CAAC,GAAG,EAAE,uBAAuB,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAC5E,GAAG,EAAE,CAAC,SAAS,CACf,CAAC;YACH,CAAC;YACD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,QAAQ,CAAC,IAAI,CACZ,gBAAgB,CACf,iBAAiB,EACjB,kDAAkD,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAC3E,eAAe,EACf;oBACC,gBAAgB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBACzC,aAAa,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE;oBAC/C,sBAAsB,UAAU,CAAC,MAAM,EAAE;iBACzC,CAAC,IAAI,CAAC,IAAI,CAAC,CACZ,CACD,CAAC;YACH,CAAC;YACD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,QAAQ,CAAC,IAAI,CACZ,gBAAgB,CACf,iBAAiB,EACjB,qEAAqE,qBAAqB,CAAC,UAAU,CAAC,EAAE,EACxG,eAAe,EACf;oBACC,cAAc,UAAU,CAAC,MAAM,EAAE;oBACjC,aAAa,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE;oBAC/C,sBAAsB,UAAU,CAAC,MAAM,EAAE;oBACzC,gBAAgB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE;iBACrD,CAAC,IAAI,CAAC,IAAI,CAAC,CACZ,CACD,CAAC;YACH,CAAC;QACF,CAAC;QAED,MAAM,gBAAgB,GAAG,oBAAoB,CAC5C,SAAS,EACT,QAAQ,CAAC,IAAI,EACb,gBAAgB,EAChB,UAAU,EAAE,UAAU,CACtB,CAAC;QACF,IAAI,gBAAgB,EAAE,CAAC;YACtB,IAAI,CAAC;gBACJ,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;gBACxD,IAAI,cAAc,IAAI,KAAK,EAAE,CAAC;oBAC7B,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClD,CAAC;YACF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,QAAQ,CAAC,IAAI,CACZ,gBAAgB,CACf,aAAa,EACb,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB,EACjE,iBAAiB,CACjB,CACD,CAAC;YACH,CAAC;QACF,CAAC;QAED,MAAM,kBAAkB,GAAG,cAAc,EAAE,CAAC;QAC5C,IAAI,aAA+C,CAAC;QACpD,MAAM,aAAa,GAAG,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,cAAc,GAAG,MAAM,+BAA+B,CACrD,MAAM,EACN,UAAU,EAAE,UAAU,IAAI,UAAU,CACpC,CAAC;QACH,CAAC;QACD,IAAI,KAAK,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAClC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAClE,CAAC;YACD,MAAM,QAAQ,GAAG,cAAc,CAAC;YAChC,IAAI,CAAC,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAC3E,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE;gBACpF,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,IAAI,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE;aACnE,CAAC,CAAC;YACH,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;YAClC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;YACrB,aAAa,GAAG,qBAAqB,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QACrF,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC;QAE3D,IAAI,cAAc,EAAE,IAAI,gBAAgB,IAAI,UAAU,EAAE,YAAY,KAAK,KAAK,EAAE,CAAC;YAChF,MAAM,kBAAkB,CACvB,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,UAAU,CAAC,EACxF;gBACC,MAAM,EAAE,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAC7B,QAAQ;gBACR,UAAU;gBACV,WAAW;gBACX,YAAY;gBACZ,SAAS;gBACT,cAAc,EAAE,cAAc;oBAC7B,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,IAAI,UAAU,EAAE,IAAI,EAAE,cAAc,CAAC,IAAI,EAAE;oBAC3E,CAAC,CAAC,SAAS;aACZ,CACD,CAAC;QACH,CAAC;QAED,IAAI,cAAc,EAAE,CAAC;YACpB,MAAM,cAAc,CAAC,OAAO,EAAE,CAAC;YAC/B,IAAI,qBAAqB,KAAK,cAAc,CAAC,OAAO,EAAE,CAAC;gBACtD,qBAAqB,GAAG,SAAS,CAAC;YACnC,CAAC;YACD,IAAI,gBAAgB,EAAE,CAAC;gBACtB,MAAM,uBAAuB,EAAE,CAAC;YACjC,CAAC;YACD,cAAc,GAAG,SAAS,CAAC;QAC5B,CAAC;QACD,IAAI,cAAc,IAAI,KAAK,IAAI,UAAU,EAAE,UAAU,KAAK,SAAS,EAAE,CAAC;YACrE,MAAM,cAAc,CAAC,OAAO,EAAE,CAAC;YAC/B,cAAc,GAAG,SAAS,CAAC;QAC5B,CAAC;QAED,MAAM,cAAc,GAAG,sBAAsB,CAAC;YAC7C,KAAK,EAAE,SAAS;YAChB,QAAQ;YACR,WAAW;YACX,YAAY;YACZ,SAAS;YACT,QAAQ;YACR,UAAU;YACV,aAAa;YACb,KAAK;YACL,UAAU,EAAE,OAAO,CAAC,KAAK,IAAI,KAAK,EAAE,KAAK;SACzC,CAAC,CAAC;QACH,IAAI,cAAc,EAAE,CAAC;YACpB,MAAM,CAAC,cAAc,CAAC,cAAc,EAAE,gBAAgB,EAAE;gBACvD,KAAK,EAAE;oBACN,IAAI,EAAE,UAAU,EAAE,UAAU,IAAI,UAAU;oBAC1C,IAAI,EAAE,cAAc,CAAC,IAAI;oBACzB,OAAO,EAAE,cAAc,CAAC,OAAO;iBAC/B;gBACD,UAAU,EAAE,KAAK;aACjB,CAAC,CAAC;QACJ,CAAC;QACD,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,cAAc,CAAC;QACzC,MAAM,UAAU,GAAG;YAClB,EAAE,EAAE,UAAU,EAAE,UAAU,IAAI,MAAM;YACpC,KAAK,EAAE,UAAU,EAAE,UAAU,IAAI,MAAM;YACvC,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,KAAK;SACL,CAAC;QACF,MAAM,KAAK,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;QACrC,eAAe,CAAC;YACf,IAAI,EAAE,eAAe;YACrB,GAAG,cAAc;YACjB,MAAM;YACN,UAAU;YACV,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBACpC,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,OAAO,EAAE,OAAO,CAAC,OAAO;aACxB,CAAC,CAAC;YACH,OAAO,EAAE;gBACR,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzC,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3C,KAAK;aACL;SACD,CAAC,CAAC;QACH,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/C,eAAe,CAAC;gBACf,IAAI,EAAE,OAAO;gBACb,GAAG,cAAc;gBACjB,QAAQ,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;oBACzC,EAAE,EAAE,OAAO,CAAC,EAAE;oBACd,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,SAAS,EAAE,OAAO,CAAC,SAAS;iBAC5B,CAAC,CAAC;aACH,CAAC,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,YAAY,EAAE,CAAC;YACnB,MAAM,cAAc,GAAG,MAAM,qBAAqB,CAAC;gBAClD,KAAK;gBACL,GAAG;gBACH,SAAS;gBACT,UAAU;gBACV,gBAAgB;gBAChB,QAAQ;gBACR,SAAS;gBACT,QAAQ;gBACR,IAAI;gBACJ,MAAM,EAAE,cAAc;gBACtB,KAAK;gBACL,SAAS;gBACT,QAAQ;gBACR,KAAK;gBACL,cAAc;gBACd,cAAc;gBACd,QAAQ,EAAE,kBAAkB,EAAE;aAC9B,CAAC,CAAC;YACH,cAAc,CAAC,cAAc,GAAG,cAAc,CAAC;YAC/C,eAAe,CAAC;gBACf,IAAI,EAAE,iBAAiB;gBACvB,GAAG,cAAc;gBACjB,MAAM,EAAE,cAAc;aACtB,CAAC,CAAC;YAEH,mBAAmB,CAAC;gBACnB,MAAM;gBACN,KAAK,EAAE,aAAa;gBACpB,KAAK,EAAE,aAAa;gBACpB,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,UAAU;gBACV,WAAW,EAAE,4BAA4B,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;gBAC7E,aAAa;gBACb,QAAQ;gBACR,KAAK;gBACL,KAAK;gBACL,cAAc;aACd,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,cAAc,CAAC;IACvB,CAAC;YAAS,CAAC;QACV,IAAI,cAAc,IAAI,KAAK,IAAI,UAAU,EAAE,UAAU,KAAK,SAAS,EAAE,CAAC;YACrE,MAAM,cAAc,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YACtD,cAAc,GAAG,SAAS,CAAC;QAC5B,CAAC;QACD,IAAI,WAAW,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACnD,MAAM,eAAe,GAAG,MAAM,wBAAwB,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YAC5E,MAAM,WAAW,GAAG,iCAAiC,CAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,CAAC;YACzF,MAAM,MAAM,GAAG,sBAAsB,CACpC,mBAAmB,CAAC,gBAAgB,EAAE,eAAe,CAAC,EACtD,WAAW,EACX,GAAG,CACH,CAAC;YACF,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,MAAM,uBAAuB,CAAC,GAAG,EAAE,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAC5F,CAAC;QACF,CAAC;QACD,IAAI,cAAc,EAAE,CAAC;YACpB,MAAM,cAAc,CAAC,OAAO,EAAE,CAAC;YAC/B,IAAI,qBAAqB,KAAK,cAAc,CAAC,OAAO,EAAE,CAAC;gBACtD,qBAAqB,GAAG,SAAS,CAAC;YACnC,CAAC;QACF,CAAC;QACD,IAAI,uBAAuB,EAAE,CAAC;YAC7B,MAAM,uBAAuB,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACxD,CAAC;IACF,CAAC;AACF,CAAC;AAED,KAAK,UAAU,uBAAuB,CACrC,GAAW,EACX,SAAiB,EACjB,QAAuB,EACvB,WAAsB,EACtB,kBAAiD,EACjD,cAAyC,EACzC,aAAmC,EACnC,qBAAgC,EAChC,iBAAmD,EACnD,gBAAyB,EACzB,sBAAgC,EAChC,KAAe,EACf,QAAkB,EAClB,gBAAyB,EACzB,aAAsB,EACtB,aAAsB,EACtB,SAAkB,EAClB,cAAwB,EACxB,SAAmB,EACnB,QAAiB,EACjB,SAAS,GAAG,cAAc,EAC1B,cAAwB,EACxB,UAAmB,EACnB,UAAuC;IAEvC,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAClC,MAAM,KAAK,GAAG,cAAc,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IACnD,MAAM,YAAY,GAAG,UAAU,EAAE,YAAY,KAAK,IAAI,CAAC;IACvD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,IAAI,WAAW,CAAC;IAC1C,IAAI,aAAa,KAAK,SAAS,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QAChE,WAAW,CAAC,KAAK,CAAC,aAAa,CAAC,aAAa,EAAE,aAAa,EAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IACrF,CAAC;SAAM,CAAC;QACP,WAAW,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IACvD,CAAC;IACD,sBAAsB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAE7C,MAAM,YAAY,GAAG,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG;QACd,GAAG;QACH,SAAS;QACT,WAAW;QACX,kBAAkB;QAClB,cAAc;QACd,aAAa;QACb,qBAAqB;QACrB,iBAAiB;QACjB,gBAAgB;QAChB,sBAAsB;QACtB,QAAQ;QACR,gBAAgB;QAChB,SAAS;QACT,cAAc;QACd,SAAS;QACT,QAAQ;QACR,SAAS;QACT,cAAc;QACd,UAAU;KACV,CAAC;IAEF,MAAM,OAAO,GAAoB,EAAE,CAAC;IACpC,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;QAClC,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QACxD,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,MAAM,gBAAgB,CACpC,MAAM,CAAC,GAAG,EACV,MAAM,CAAC,SAAS,EAChB,WAAW,EACX,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,kBAAkB,EACzB,MAAM,CAAC,cAAc,EACrB,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,qBAAqB,EAC5B,MAAM,CAAC,iBAAiB,EACxB,MAAM,CAAC,gBAAgB,EACvB,MAAM,CAAC,sBAAsB,EAC7B,KAAK,EACL,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,gBAAgB,EACvB,SAAS,EACT,SAAS,EACT,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,cAAc,EACrB,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,cAAc,EACrB,MAAM,CAAC,UAAU,EACjB,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CACjE,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;IACtE,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC;IAC3D,MAAM,cAAc,GAAG,MAAM,sBAAsB,CAAC;QACnD,GAAG;QACH,KAAK,EAAE,SAAS;QAChB,QAAQ;QACR,IAAI;QACJ,OAAO;QACP,UAAU;QACV,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,aAAa,EAAE,CAAC,cAAc,EAAE;KAChC,CAAC,CAAC;IACH,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,cAAc,CAAC;IACtE,IAAI,cAAc,EAAE,IAAI,gBAAgB,EAAE,CAAC;QAC1C,MAAM,WAAW,GAA0C,EAAE,CAAC;QAC9D,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAC3B,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG;gBACrB,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,UAAU;gBACjC,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,WAAW;gBACnC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,YAAY;gBACrC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS;gBAC/B,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,cAAc;oBACxC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE;oBAChF,CAAC,CAAC,SAAS;aACZ,CAAC;QACH,CAAC;QACD,MAAM,kBAAkB,CAAC,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE;YAC1F,MAAM,EAAE,QAAQ,CAAC,MAAM,KAAK,CAAC;YAC7B,QAAQ;YACR,UAAU;YACV,OAAO,EAAE;gBACR,CAAC,EAAE,WAAW,CAAC,CAAC;gBAChB,CAAC,EAAE,WAAW,CAAC,CAAC;gBAChB,IAAI,EAAE,WAAW;aACjB;SACD,CAAC,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,YAAY,EAAE,CAAC;QACnB,MAAM,cAAc,GAAG,MAAM,qBAAqB,CAAC;YAClD,KAAK;YACL,GAAG;YACH,SAAS;YACT,UAAU;YACV,gBAAgB;YAChB,QAAQ;YACR,SAAS;YACT,QAAQ;YACR,IAAI;YACJ,MAAM,EAAE,cAAc;YACtB,KAAK,EAAE,UAAU;YACjB,SAAS;YACT,QAAQ;YACR,KAAK;YACL,cAAc;YACd,cAAc;YACd,QAAQ,EAAE,kBAAkB,EAAE;SAC9B,CAAC,CAAC;QACH,cAAc,CAAC,cAAc,GAAG,cAAc,CAAC;QAC/C,eAAe,CAAC;YACf,IAAI,EAAE,iBAAiB;YACvB,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,QAAQ,CAAC,IAAI;YACvB,IAAI;YACJ,MAAM,EAAE,cAAc;SACtB,CAAC,CAAC;QACH,mBAAmB,CAAC;YACnB,MAAM;YACN,KAAK,EAAE,aAAa;YACpB,KAAK,EAAE,aAAa;YACpB,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,UAAU;YACV,WAAW,EAAE,4BAA4B,CAAC,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC;YAClF,aAAa,EAAE,cAAc,CAAC,aAAa;YAC3C,QAAQ;YACR,KAAK;YACL,KAAK;YACL,cAAc;SACd,CAAC,CAAC;IACJ,CAAC;IACD,OAAO,cAAc,CAAC;AACvB,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,OASrC;IACA,MAAM,YAAY,GAAG,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,sBAAsB,CACvC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC7B,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,WAAW,EAAE,qBAAqB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;QAC1F,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM;QAC3B,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK;QACvB,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,WAAW;QACnC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,YAAY;QACrC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS;QAC/B,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,cAAc;QACzC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,UAAU;QACjC,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,KAAK,aAAa,CAAC;QAClF,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ;KAC7B,CAAC,CAAC,EACH,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,EAC/B,EAAE,aAAa,EAAE,KAAK,EAAE,CACxB,CAAC;IACF,MAAM,aAAa,GAAG,SAAS,CAAC,OAAO,CAAC;IACxC,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;IACpC,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;QACrE,KAAK,MAAM,GAAG,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;YACtC,IAAI,CAAC,GAAG,CAAC,KAAK;gBAAE,SAAS;YACzB,MAAM,MAAM,GAAG,MAAM,cAAc,CAClC,GAAG,CAAC,KAAK,EACT,EAAE,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,EAChD,OAAO,CAAC,GAAG,EACX,OAAO,CAAC,IAAI,EACZ,SAAS,EACT,GAAG,CAAC,cAAc;gBACjB,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;gBACpE,CAAC,CAAC,SAAS,CACZ,CAAC;YACF,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;YACzB,GAAG,CAAC,aAAa,GAAG,qBAAqB,CACxC,MAAM,CAAC,KAAK,EACZ,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,EACrC,MAAM,CAAC,QAAQ,CACf,CAAC;YACF,GAAG,CAAC,QAAQ,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC7D,QAAQ,CAAC,IAAI,CACZ,GAAG,qBAAqB,CACvB,GAAG,CAAC,KAAK,EACT,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,KAAK,aAAa,CAAC,CACvE,CACD,CAAC;QACH,CAAC;IACF,CAAC;IACD,IAAI,OAAO,CAAC,aAAa;QAAE,oBAAoB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IACzE,MAAM,WAAW,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;IACzC,IAAI,aAA+C,CAAC;IACpD,IACC,OAAO,CAAC,KAAK;QACb,QAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,KAAK,aAAa,CAAC;QAC/D,WAAW,CAAC,MAAM,GAAG,CAAC;QACtB,WAAW,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EACpC,CAAC;QACF,MAAM,QAAQ,GAAG,2BAA2B,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;YAAE,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACrF,MAAM,MAAM,GAAG,MAAM,qBAAqB,CACzC,aAAa,EACb,OAAO,CAAC,QAAQ,CAAC,MAAM,EACvB,OAAO,CAAC,GAAG,EACX,OAAO,CAAC,IAAI,CACZ,CAAC;QACF,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QAClC,IAAI,UAAU,EAAE,CAAC;YAChB,aAAa,GAAG,qBAAqB,CACpC,EAAE,GAAG,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,QAAQ,EAAE,EACjD,QAAQ,EACR,MAAM,CAAC,QAAQ,CACf,CAAC;QACH,CAAC;IACF,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;QACtC,IAAI,GAAG,CAAC,cAAc,EAAE,CAAC;YACxB,MAAM,GAAG,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAC1D,OAAO,GAAG,CAAC,cAAc,CAAC;QAC3B,CAAC;IACF,CAAC;IACD,OAAO,sBAAsB,CAAC;QAC7B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,QAAQ;QACR,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,aAAa;QACb,KAAK,EAAE,UAAU;QACjB,OAAO,EAAE,aAAa;QACtB,YAAY,EAAE,yBAAyB,CAAC,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,aAAa,CAAC;QAC5F,UAAU,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;KAC9E,CAAC,CAAC;AACJ,CAAC;AAED,gGAAgG;AAChG,MAAM,CAAC,KAAK,UAAU,gCAAgC,CAAC,OAOtD;IACA,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC;IACnD,MAAM,QAAQ,GAAkB;QAC/B,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;QAC3B,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,WAAW;QACzC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;QAC/B,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;QAC/B,OAAO,EAAE;YACR,IAAI,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAC/B,EAAE,EAAE,GAAG,CAAC,EAAE;gBACV,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,WAAW,EAAE,GAAG,CAAC,WAAW;gBAC5B,MAAM,EAAE,GAAG,CAAC,MAAM;aAClB,CAAC,CAAC;YACH,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK;YAC7B,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,YAAY;SAC3C;KACD,CAAC;IACF,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QAC3C,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9C,OAAO,MAAM;YACZ,CAAC,CAAC;gBACA;oBACC,EAAE,EAAE,GAAG,CAAC,EAAE;oBACV,KAAK,EAAE,GAAG,CAAC,KAAK;oBAChB,QAAQ,EAAE,eAAe,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC;oBAC3C,MAAM;iBACN;aACD;YACF,CAAC,CAAC,EAAE,CAAC;IACP,CAAC,CAAC,CAAC;IACH,OAAO,sBAAsB,CAAC;QAC7B,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,QAAQ;QACR,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO;QACP,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACvE,KAAK,EAAE,OAAO,CAAC,KAAK,KAAK,KAAK;QAC9B,aAAa,EAAE,IAAI;KACnB,CAAC,CAAC;AACJ,CAAC;AAED,kFAAkF;AAClF,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,OAQ/C;IACA,MAAM,QAAQ,GAAG,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC/D,IACC,OAAO,CAAC,KAAK,KAAK,KAAK;QACvB,QAAQ,CAAC,MAAM,KAAK,CAAC;QACrB,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK;QACrB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EACjC,CAAC;QACF,OAAO,OAAO,CAAC,MAAM,CAAC;IACvB,CAAC;IAED,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAClC,IAAI,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;IACjC,MAAM,QAAQ,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC9C,IAAI,aAA+C,CAAC;IACpD,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,MAAM,cAAc,CAClC,KAAK,EACL,OAAO,CAAC,QAAQ,CAAC,MAAM,EACvB,OAAO,CAAC,GAAG,EACX,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,YAAY,EACpB,OAAO,CAAC,MAAM,CAAC,cAAc;YAC5B,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;YAC1F,CAAC,CAAC,SAAS,CACZ,CAAC;QACF,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QAClC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QACrB,aAAa,GAAG,qBAAqB,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,QAAQ,CAAC,IAAI,CACZ,gBAAgB,CACf,OAAO,EACP,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,iCAAiC,EAC1E,aAAa,CACb,CACD,CAAC;IACH,CAAC;IAED,OAAO,sBAAsB,CAAC;QAC7B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW;QACvC,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,YAAY;QACzC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS;QACnC,QAAQ;QACR,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC;QAC/E,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ;QACjC,aAAa;QACb,KAAK;QACL,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK;KACnE,CAAC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,4BAA4B,CAC1C,gBAAwB,EACxB,SAAiB,EACjB,QAAuB,EACvB,YAAwC;IAExC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,EAAE,CAAC;IAChB,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC9B,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QACxD,IAAI,KAA+D,CAAC;QACpE,IAAI,CAAC;YACJ,KAAK,GAAG,MAAM,gBAAgB,CAC7B,mBAAmB,CAAC,gBAAgB,EAAE,SAAS,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,CACzE,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACR,KAAK,GAAG,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,gBAAgB,GAAG,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC;QACjF,IAAI,CAAC,IAAI,CAAC;YACT,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;YAC3C,WAAW,EAAE,qBAAqB,CAAC,KAAK,CAAC,GAAG,CAAC;YAC7C,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,KAAK;YACL,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;YAChF,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;YACrE,cAAc,EAAE,gBAAgB;gBAC/B,CAAC,CAAC;oBACA,IAAI,EAAE,gBAAgB,CAAC,IAAI;oBAC3B,IAAI,EAAE,gBAAgB,CAAC,IAAI;oBAC3B,OAAO,EAAE,KAAK,IAAI,EAAE;wBACnB,MAAM,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE;4BACxC,SAAS,EAAE,IAAI;4BACf,KAAK,EAAE,IAAI;yBACX,CAAC,CAAC;oBACJ,CAAC;iBACD;gBACF,CAAC,CAAC,SAAS;SACZ,CAAC,CAAC;IACJ,CAAC;IACD,OAAO,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED,KAAK,UAAU,qBAAqB,CACnC,OAA8B,EAC9B,MAAsB,EACtB,MAAc,EACd,IAAe;IAKf,MAAM,QAAQ,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC,MAAM,CAC7C,CAAC,GAAG,EAAgE,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,SAAS,CAC9F,CAAC;IACF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IACvC,CAAC;IACD,MAAM,IAAI,GACT,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;QACtC,CAAC,CAAC;YACA,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK;YACrB,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK;YAChB,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK;YACrB,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK;SAChB;QACF,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,UAAU,GAAG,IAAI;SACrB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC;SAChC,MAAM,CAAC,CAAC,SAAS,EAA8C,EAAE,CAAC,SAAS,KAAK,SAAS,CAAC;SAC1F,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,MAAM,kBAAkB,CACtC,IAAI,IAAI;QACP,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;KACjE,EACD,QAAQ,EACR,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,CACjC,CAAC;IACF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO;YACN,QAAQ,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,IAAI,eAAe,EAAE,aAAa,CAAC,CAAC;YACrF,QAAQ,EAAE,EAAE;SACZ,CAAC;IACH,CAAC;IACD,MAAM,QAAQ,GAAuB,EAAE,CAAC;IACxC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACvC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACnB,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU;gBAClC,CAAC,CAAC,aAAa;gBACf,CAAC,CAAC,OAAO,CAAC,UAAU;oBACnB,CAAC,CAAC,aAAa;oBACf,CAAC,CAAC,aAAa,CAAC;YAClB,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,OAAO,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;QACrF,CAAC;IACF,CAAC;IACD,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACvE,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;AAChD,CAAC;AAED,KAAK,UAAU,cAAc,CAC5B,KAAiB,EACjB,MAAsB,EACtB,MAAc,EACd,IAAe,EACf,YAAkD,EAClD,UAAsD;IAMtD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC9C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAC9C,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE;QAChD,GAAG,EAAE,MAAM;QACX,IAAI;QACJ,UAAU;QACV,OAAO,EAAE,YAAY;KACrB,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO;YACN,KAAK;YACL,QAAQ,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,IAAI,eAAe,EAAE,aAAa,CAAC,CAAC;YACrF,QAAQ,EAAE,EAAE;SACZ,CAAC;IACH,CAAC;IAED,MAAM,WAAW,GAAe,EAAE,GAAG,KAAK,EAAE,aAAa,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC7E,MAAM,QAAQ,GAAuB,EAAE,CAAC;IACxC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACvC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACnB,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU;gBAClC,CAAC,CAAC,aAAa;gBACf,CAAC,CAAC,OAAO,CAAC,UAAU;oBACnB,CAAC,CAAC,aAAa;oBACf,CAAC,CAAC,aAAa,CAAC;YAClB,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,OAAO,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;QACrF,CAAC;IACF,CAAC;IACD,0EAA0E;IAC1E,oEAAoE;IACpE,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3D,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;AACpE,CAAC;AAED,SAAS,iBAAiB,CAAC,SAAiB;IAC3C,OAAO,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAqBlC;IACA,MAAM,gBAAgB,GAAG,kBAAkB,EAAE,CAAC;IAC9C,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACpC,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;IACD,IAAI,CAAC;QACJ,OAAO,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;YAAS,CAAC;QACV,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACpC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;QACtC,CAAC;IACF,CAAC;AACF,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,OAqB/B;IACA,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IACjF,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM;QAC9B,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;YAChC,MAAM,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAC/C,OAAO,SAAS,KAAK,OAAO,CAAC,MAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QAClF,CAAC,CAAC;QACH,CAAC,CAAC,UAAU,CAAC;IAEd,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAC3F,MAAM,OAAO,GAAqB,EAAE,CAAC;IACrC,KAAK,MAAM,SAAS,IAAI,QAAQ,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,SAAS,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;QACjF,MAAM,KAAK,GAAG,iBAAiB,CAAC;YAC/B,QAAQ;YACR,UAAU,EAAE,KAAK,CAAC,KAAK;YACvB,WAAW,EAAE,KAAK,CAAC,QAAQ,EAAE,IAAI;SACjC,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QACpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YAC1B,OAAO,CAAC,IAAI,CACX,MAAM,QAAQ,CAAC;gBACd,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,SAAS;gBACT,IAAI;gBACJ,UAAU;gBACV,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;gBAC1C,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,WAAW,EAAE,OAAO,CAAC,MAAM;gBAC3B,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,eAAe,EAAE,OAAO,CAAC,eAAe;gBACxC,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,kBAAkB,EAAE;gBAClD,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,OAAO,EAAE,OAAO,CAAC,OAAO;aACxB,CAAC,CACF,CAAC;QACH,CAAC;IACF,CAAC;IACD,OAAO,OAAO,CAAC;AAChB,CAAC;AAED,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC"}
@@ -1,27 +0,0 @@
1
- import type { AgentTrace, AgentUsage, ContextMode } from "@post-print/agent-harness";
2
- import { type StoryCompareInput } from "./scenario-story.js";
3
- import type { AssertionFailure, JudgeVerdictResult, ScenarioCompareResult, ScenarioContextFile, ScenarioResult, ScenarioRubric } from "./types.js";
4
- export interface FinalizeScenarioResultInput {
5
- suite: string;
6
- scenario: {
7
- name: string;
8
- description?: string;
9
- prompt: string;
10
- rubric: ScenarioRubric;
11
- };
12
- failures: AssertionFailure[];
13
- durationMs: number;
14
- trace?: AgentTrace;
15
- judgeVerdicts?: JudgeVerdictResult[];
16
- compare?: ScenarioCompareResult;
17
- storyCompare?: StoryCompareInput;
18
- agentUsage?: AgentUsage;
19
- attempts?: number;
20
- skipped?: boolean;
21
- contextMode?: ContextMode;
22
- contextFiles?: ScenarioContextFile[];
23
- hostInput?: string;
24
- }
25
- /** The single domain boundary that turns execution evidence into the authoritative result. */
26
- export declare function finalizeScenarioResult(input: FinalizeScenarioResultInput): ScenarioResult;
27
- //# sourceMappingURL=scenario-finalizer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scenario-finalizer.d.ts","sourceRoot":"","sources":["../src/scenario-finalizer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAGrF,OAAO,EAAsB,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAEjF,OAAO,KAAK,EACX,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,cAAc,EACd,cAAc,EACd,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,2BAA2B;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE;QACT,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,cAAc,CAAC;KACvB,CAAC;IACF,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,aAAa,CAAC,EAAE,kBAAkB,EAAE,CAAC;IACrC,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAChC,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,YAAY,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,8FAA8F;AAC9F,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,2BAA2B,GAAG,cAAc,CAiCzF"}
@@ -1,39 +0,0 @@
1
- import { plainDescription } from "./compare-scenario.js";
2
- import { buildScenarioStory } from "./scenario-story.js";
3
- import { buildScenarioResultUsage } from "./scenario-usage.js";
4
- /** The single domain boundary that turns execution evidence into the authoritative result. */
5
- export function finalizeScenarioResult(input) {
6
- const passed = input.failures.length === 0;
7
- const story = buildScenarioStory({
8
- rubric: input.scenario.rubric,
9
- trace: input.trace,
10
- passed,
11
- failures: input.failures,
12
- judgeVerdicts: input.judgeVerdicts,
13
- compare: input.storyCompare,
14
- skipped: input.skipped,
15
- });
16
- return {
17
- suite: input.suite,
18
- scenario: input.scenario.name,
19
- description: plainDescription(input.scenario.description),
20
- prompt: input.scenario.prompt,
21
- contextMode: input.contextMode,
22
- contextFiles: input.contextFiles,
23
- hostInput: input.hostInput,
24
- passed,
25
- skipped: input.skipped,
26
- failures: input.failures,
27
- durationMs: input.durationMs,
28
- judgeVerdicts: input.judgeVerdicts,
29
- trace: input.trace,
30
- compare: input.compare,
31
- story,
32
- ...(input.attempts === undefined ? {} : { attempts: input.attempts }),
33
- ...buildScenarioResultUsage({
34
- agentUsage: input.agentUsage ?? input.trace?.usage,
35
- judgeVerdicts: input.judgeVerdicts,
36
- }),
37
- };
38
- }
39
- //# sourceMappingURL=scenario-finalizer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scenario-finalizer.js","sourceRoot":"","sources":["../src/scenario-finalizer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAA0B,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAgC/D,8FAA8F;AAC9F,MAAM,UAAU,sBAAsB,CAAC,KAAkC;IACxE,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,kBAAkB,CAAC;QAChC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM;QAC7B,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,MAAM;QACN,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,OAAO,EAAE,KAAK,CAAC,YAAY;QAC3B,OAAO,EAAE,KAAK,CAAC,OAAO;KACtB,CAAC,CAAC;IACH,OAAO;QACN,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;QAC7B,WAAW,EAAE,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;QACzD,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM;QAC7B,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,MAAM;QACN,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,KAAK;QACL,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;QACrE,GAAG,wBAAwB,CAAC;YAC3B,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,KAAK,EAAE,KAAK;YAClD,aAAa,EAAE,KAAK,CAAC,aAAa;SAClC,CAAC;KACF,CAAC;AACH,CAAC"}
@@ -1,15 +0,0 @@
1
- import type { AgentTrace } from "@post-print/agent-harness";
2
- import type { AssertionFailure } from "./types.js";
3
- /** Matchers that fire when the agent stops after Routing without starting the review. */
4
- export declare const ANNOUNCE_STOP_MATCHERS: Set<string>;
5
- /**
6
- * Total attempts for a live scenario (initial run + retries).
7
- * `AGENT_TEST_SCENARIO_RETRIES` / explicit value is the retry count (default 1 → 2 attempts; 0 disables).
8
- */
9
- export declare function resolveScenarioRetryMaxAttempts(explicit?: number, envKey?: string): number;
10
- /**
11
- * True when failures look like announce-stop (routing-only exit) rather than a real skill miss.
12
- * Wrong depth/skill with tools used must not retry.
13
- */
14
- export declare function shouldRetryAnnounceStopFlake(failures: AssertionFailure[], trace: AgentTrace | undefined): boolean;
15
- //# sourceMappingURL=scenario-retry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scenario-retry.d.ts","sourceRoot":"","sources":["../src/scenario-retry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,yFAAyF;AACzF,eAAO,MAAM,sBAAsB,aAOjC,CAAC;AAIH;;;GAGG;AACH,wBAAgB,+BAA+B,CAC9C,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,SAAgC,GACpC,MAAM,CAMR;AAcD;;;GAGG;AACH,wBAAgB,4BAA4B,CAC3C,QAAQ,EAAE,gBAAgB,EAAE,EAC5B,KAAK,EAAE,UAAU,GAAG,SAAS,GAC3B,OAAO,CAcT"}
@@ -1,52 +0,0 @@
1
- /** Matchers that fire when the agent stops after Routing without starting the review. */
2
- export const ANNOUNCE_STOP_MATCHERS = new Set([
3
- "toHaveInvokedSkill",
4
- "toHaveReviewDepth",
5
- "toHaveHandsOnTier",
6
- "toHaveHandsOnTierBeforeTools",
7
- "toHaveRoutingBlockBeforeTools",
8
- "toHaveTier",
9
- ]);
10
- const DEFAULT_SCENARIO_RETRIES = 1;
11
- /**
12
- * Total attempts for a live scenario (initial run + retries).
13
- * `AGENT_TEST_SCENARIO_RETRIES` / explicit value is the retry count (default 1 → 2 attempts; 0 disables).
14
- */
15
- export function resolveScenarioRetryMaxAttempts(explicit, envKey = "AGENT_TEST_SCENARIO_RETRIES") {
16
- const retries = explicit ?? parseScenarioRetriesEnv(envKey);
17
- if (!Number.isInteger(retries) || retries < 0) {
18
- return DEFAULT_SCENARIO_RETRIES + 1;
19
- }
20
- return retries + 1;
21
- }
22
- function parseScenarioRetriesEnv(envKey) {
23
- const raw = process.env[envKey]?.trim();
24
- if (!raw) {
25
- return DEFAULT_SCENARIO_RETRIES;
26
- }
27
- const parsed = Number(raw);
28
- if (!Number.isInteger(parsed) || parsed < 0) {
29
- return DEFAULT_SCENARIO_RETRIES;
30
- }
31
- return parsed;
32
- }
33
- /**
34
- * True when failures look like announce-stop (routing-only exit) rather than a real skill miss.
35
- * Wrong depth/skill with tools used must not retry.
36
- */
37
- export function shouldRetryAnnounceStopFlake(failures, trace) {
38
- if (failures.length === 0) {
39
- return false;
40
- }
41
- if (failures.some((failure) => failure.category !== "rubric_miss")) {
42
- return false;
43
- }
44
- if (failures.some((failure) => !ANNOUNCE_STOP_MATCHERS.has(failure.matcher))) {
45
- return false;
46
- }
47
- if (trace !== undefined && trace.toolCalls.length > 0) {
48
- return false;
49
- }
50
- return true;
51
- }
52
- //# sourceMappingURL=scenario-retry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scenario-retry.js","sourceRoot":"","sources":["../src/scenario-retry.ts"],"names":[],"mappings":"AAIA,yFAAyF;AACzF,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC;IAC7C,oBAAoB;IACpB,mBAAmB;IACnB,mBAAmB;IACnB,8BAA8B;IAC9B,+BAA+B;IAC/B,YAAY;CACZ,CAAC,CAAC;AAEH,MAAM,wBAAwB,GAAG,CAAC,CAAC;AAEnC;;;GAGG;AACH,MAAM,UAAU,+BAA+B,CAC9C,QAAiB,EACjB,MAAM,GAAG,6BAA6B;IAEtC,MAAM,OAAO,GAAG,QAAQ,IAAI,uBAAuB,CAAC,MAAM,CAAC,CAAC;IAC5D,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;QAC/C,OAAO,wBAAwB,GAAG,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,OAAO,GAAG,CAAC,CAAC;AACpB,CAAC;AAED,SAAS,uBAAuB,CAAC,MAAc;IAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC;IACxC,IAAI,CAAC,GAAG,EAAE,CAAC;QACV,OAAO,wBAAwB,CAAC;IACjC,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7C,OAAO,wBAAwB,CAAC;IACjC,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,4BAA4B,CAC3C,QAA4B,EAC5B,KAA6B;IAE7B,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACd,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,KAAK,aAAa,CAAC,EAAE,CAAC;QACpE,OAAO,KAAK,CAAC;IACd,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QAC9E,OAAO,KAAK,CAAC;IACd,CAAC;IACD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvD,OAAO,KAAK,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC"}
@@ -1,13 +0,0 @@
1
- export interface CallerHeadSnapshot {
2
- ref: string;
3
- detached: boolean;
4
- }
5
- /** Record caller HEAD before worktree seeding so we can undo accidental checkouts. */
6
- export declare function captureCallerHead(repoRoot: string): Promise<CallerHeadSnapshot>;
7
- /** Restore caller branch/detach point if a seed commit leaked onto the main worktree. */
8
- export declare function restoreCallerHeadIfSeedCommit(repoRoot: string, snapshot: CallerHeadSnapshot): Promise<void>;
9
- /** Apply optional patch and commit so pr-mode `git diff main...HEAD` has scope. */
10
- export declare function seedScenarioWorktree(repoRoot: string, worktreePath: string, seedPatch: string | undefined, options?: {
11
- stageOnly?: boolean;
12
- }): Promise<void>;
13
- //# sourceMappingURL=scenario-seed.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scenario-seed.d.ts","sourceRoot":"","sources":["../src/scenario-seed.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,kBAAkB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,OAAO,CAAC;CAClB;AAED,sFAAsF;AACtF,wBAAsB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAYrF;AAED,yFAAyF;AACzF,wBAAsB,6BAA6B,CAClD,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,kBAAkB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED,mFAAmF;AACnF,wBAAsB,oBAAoB,CACzC,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,GAC/B,OAAO,CAAC,IAAI,CAAC,CAqCf"}
@@ -1,72 +0,0 @@
1
- import { execFile } from "node:child_process";
2
- import { access } from "node:fs/promises";
3
- import { resolve } from "node:path";
4
- import { promisify } from "node:util";
5
- const execFileAsync = promisify(execFile);
6
- const SEED_COMMIT_MESSAGE = "agent-test: seed scenario diff (ephemeral worktree only)";
7
- /** Record caller HEAD before worktree seeding so we can undo accidental checkouts. */
8
- export async function captureCallerHead(repoRoot) {
9
- try {
10
- const { stdout } = await execFileAsync("git", ["symbolic-ref", "--short", "HEAD"], {
11
- cwd: repoRoot,
12
- });
13
- return { ref: stdout.trim(), detached: false };
14
- }
15
- catch {
16
- const { stdout } = await execFileAsync("git", ["rev-parse", "HEAD"], {
17
- cwd: repoRoot,
18
- });
19
- return { ref: stdout.trim(), detached: true };
20
- }
21
- }
22
- /** Restore caller branch/detach point if a seed commit leaked onto the main worktree. */
23
- export async function restoreCallerHeadIfSeedCommit(repoRoot, snapshot) {
24
- const { stdout: message } = await execFileAsync("git", ["log", "-1", "--format=%s"], {
25
- cwd: repoRoot,
26
- });
27
- if (message.trim() !== SEED_COMMIT_MESSAGE) {
28
- return;
29
- }
30
- if (snapshot.detached) {
31
- await execFileAsync("git", ["checkout", "--detach", snapshot.ref], {
32
- cwd: repoRoot,
33
- });
34
- return;
35
- }
36
- await execFileAsync("git", ["checkout", snapshot.ref], { cwd: repoRoot });
37
- }
38
- /** Apply optional patch and commit so pr-mode `git diff main...HEAD` has scope. */
39
- export async function seedScenarioWorktree(repoRoot, worktreePath, seedPatch, options) {
40
- if (!seedPatch) {
41
- return;
42
- }
43
- const patchPath = resolve(repoRoot, seedPatch);
44
- try {
45
- await access(patchPath);
46
- }
47
- catch {
48
- throw new Error(`seedPatch not found: ${seedPatch}`);
49
- }
50
- await execFileAsync("git", ["apply", "--whitespace=nowarn", patchPath], { cwd: worktreePath });
51
- await execFileAsync("git", ["add", "-A"], { cwd: worktreePath });
52
- const { stdout: status } = await execFileAsync("git", ["status", "--porcelain"], {
53
- cwd: worktreePath,
54
- });
55
- if (!status.trim()) {
56
- throw new Error(`seedPatch applied no changes: ${seedPatch}`);
57
- }
58
- if (options?.stageOnly) {
59
- return;
60
- }
61
- await execFileAsync("git", [
62
- "-c",
63
- "user.email=agent-test@agent-spec.local",
64
- "-c",
65
- "user.name=agent-test",
66
- "commit",
67
- "--no-verify",
68
- "-m",
69
- SEED_COMMIT_MESSAGE,
70
- ], { cwd: worktreePath });
71
- }
72
- //# sourceMappingURL=scenario-seed.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scenario-seed.js","sourceRoot":"","sources":["../src/scenario-seed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AAE1C,MAAM,mBAAmB,GAAG,0DAA0D,CAAC;AAOvF,sFAAsF;AACtF,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,QAAgB;IACvD,IAAI,CAAC;QACJ,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC,cAAc,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE;YAClF,GAAG,EAAE,QAAQ;SACb,CAAC,CAAC;QACH,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACR,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE;YACpE,GAAG,EAAE,QAAQ;SACb,CAAC,CAAC;QACH,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC/C,CAAC;AACF,CAAC;AAED,yFAAyF;AACzF,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAClD,QAAgB,EAChB,QAA4B;IAE5B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,aAAa,CAAC,EAAE;QACpF,GAAG,EAAE,QAAQ;KACb,CAAC,CAAC;IACH,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,mBAAmB,EAAE,CAAC;QAC5C,OAAO;IACR,CAAC;IAED,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACvB,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE;YAClE,GAAG,EAAE,QAAQ;SACb,CAAC,CAAC;QACH,OAAO;IACR,CAAC;IAED,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC3E,CAAC;AAED,mFAAmF;AACnF,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACzC,QAAgB,EAChB,YAAoB,EACpB,SAA6B,EAC7B,OAAiC;IAEjC,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,OAAO;IACR,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAC/C,IAAI,CAAC;QACJ,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACR,MAAM,IAAI,KAAK,CAAC,wBAAwB,SAAS,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,qBAAqB,EAAE,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC;IAC/F,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC;IACjE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE;QAChF,GAAG,EAAE,YAAY;KACjB,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,iCAAiC,SAAS,EAAE,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,OAAO,EAAE,SAAS,EAAE,CAAC;QACxB,OAAO;IACR,CAAC;IACD,MAAM,aAAa,CAClB,KAAK,EACL;QACC,IAAI;QACJ,wCAAwC;QACxC,IAAI;QACJ,sBAAsB;QACtB,QAAQ;QACR,aAAa;QACb,IAAI;QACJ,mBAAmB;KACnB,EACD,EAAE,GAAG,EAAE,YAAY,EAAE,CACrB,CAAC;AACH,CAAC"}
@@ -1,16 +0,0 @@
1
- import type { AssertionFailure, RunSummary, ScenarioResult, SuiteRunReport, UsageStats } from "./types.js";
2
- export type { RunSummary, UsageStats } from "./types.js";
3
- export type FailOnMode = "all" | "behavior" | "infra-only";
4
- /** Nearest-rank percentile (p in 0–100) over a sorted ascending array. */
5
- export declare function percentileNearestRank(sortedAsc: number[], p: number): number | undefined;
6
- export declare function summarizeUsage(results: ScenarioResult[]): UsageStats | undefined;
7
- export declare function summarizeFailures(failures: AssertionFailure[]): RunSummary;
8
- export declare function summarizeReports(reports: SuiteRunReport[]): RunSummary;
9
- export declare function summarizeReportResults(results: ScenarioResult[]): RunSummary;
10
- /** Whether a failed scenario should fail the process under the given fail-on mode. */
11
- export declare function shouldFailScenario(failures: AssertionFailure[], mode: FailOnMode): boolean;
12
- /** Compact token count for CLI and HTML (`78.2k`). */
13
- export declare function formatTokenCount(value: number): string;
14
- export declare function formatUsageStats(usage: UsageStats): string;
15
- export declare function formatRunSummary(summary: RunSummary): string;
16
- //# sourceMappingURL=suite-summary.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"suite-summary.d.ts","sourceRoot":"","sources":["../src/suite-summary.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,gBAAgB,EAEhB,UAAU,EACV,cAAc,EACd,cAAc,EACd,UAAU,EACV,MAAM,YAAY,CAAC;AAMpB,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAEzD,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,UAAU,GAAG,YAAY,CAAC;AAiB3D,0EAA0E;AAC1E,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAOxF;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,UAAU,GAAG,SAAS,CAiDhF;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,gBAAgB,EAAE,GAAG,UAAU,CAyB1E;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,UAAU,CAiBtE;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,UAAU,CAc5E;AAED,sFAAsF;AACtF,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,gBAAgB,EAAE,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAS1F;AAYD,sDAAsD;AACtD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEtD;AAwCD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAkB1D;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CAc5D"}
@@ -1,218 +0,0 @@
1
- function flatUsageFromResult(result) {
2
- return result.usage?.total ?? result.trace?.usage;
3
- }
4
- const INFRA_CATEGORIES = new Set(["judge_infra", "agent_runtime"]);
5
- function emptyRunSummary() {
6
- return {
7
- infraFailures: 0,
8
- rubricFailures: 0,
9
- agentRuntimeFailures: 0,
10
- worktreeLeaks: 0,
11
- recordingErrors: 0,
12
- judgeParseFailures: 0,
13
- retriedScenarios: 0,
14
- scenarioRetriedScenarios: 0,
15
- };
16
- }
17
- /** Nearest-rank percentile (p in 0–100) over a sorted ascending array. */
18
- export function percentileNearestRank(sortedAsc, p) {
19
- if (sortedAsc.length === 0) {
20
- return undefined;
21
- }
22
- const clamped = Math.min(100, Math.max(0, p));
23
- const rank = Math.ceil((clamped / 100) * sortedAsc.length) - 1;
24
- return sortedAsc[Math.max(0, Math.min(sortedAsc.length - 1, rank))];
25
- }
26
- export function summarizeUsage(results) {
27
- const totals = [];
28
- let scenariosWithUsage = 0;
29
- let sumTotal = 0;
30
- let sumInput = 0;
31
- let sumOutput = 0;
32
- let sawInput = false;
33
- let sawOutput = false;
34
- for (const result of results) {
35
- const usage = flatUsageFromResult(result);
36
- if (!usage) {
37
- continue;
38
- }
39
- scenariosWithUsage++;
40
- const total = usage.totalTokens;
41
- if (typeof total === "number" && Number.isFinite(total)) {
42
- totals.push(total);
43
- sumTotal += total;
44
- }
45
- if (typeof usage.inputTokens === "number" && Number.isFinite(usage.inputTokens)) {
46
- sumInput += usage.inputTokens;
47
- sawInput = true;
48
- }
49
- if (typeof usage.outputTokens === "number" && Number.isFinite(usage.outputTokens)) {
50
- sumOutput += usage.outputTokens;
51
- sawOutput = true;
52
- }
53
- }
54
- if (scenariosWithUsage === 0) {
55
- return undefined;
56
- }
57
- totals.sort((a, b) => a - b);
58
- const stats = { scenariosWithUsage };
59
- if (totals.length > 0) {
60
- stats.sumTotalTokens = sumTotal;
61
- stats.p50TotalTokens = percentileNearestRank(totals, 50);
62
- stats.p95TotalTokens = percentileNearestRank(totals, 95);
63
- stats.maxTotalTokens = totals[totals.length - 1];
64
- }
65
- if (sawInput) {
66
- stats.sumInputTokens = sumInput;
67
- }
68
- if (sawOutput) {
69
- stats.sumOutputTokens = sumOutput;
70
- }
71
- return stats;
72
- }
73
- export function summarizeFailures(failures) {
74
- const summary = emptyRunSummary();
75
- for (const failure of failures) {
76
- switch (failure.category) {
77
- case "judge_infra":
78
- summary.infraFailures++;
79
- break;
80
- case "judge_parse":
81
- summary.judgeParseFailures++;
82
- break;
83
- case "agent_runtime":
84
- summary.agentRuntimeFailures++;
85
- break;
86
- case "worktree_leak":
87
- summary.worktreeLeaks++;
88
- break;
89
- case "recording_error":
90
- summary.recordingErrors++;
91
- break;
92
- default:
93
- summary.rubricFailures++;
94
- break;
95
- }
96
- }
97
- return summary;
98
- }
99
- export function summarizeReports(reports) {
100
- const combined = emptyRunSummary();
101
- const allResults = [];
102
- for (const report of reports) {
103
- const partial = report.summary ?? summarizeReportResults(report.results);
104
- combined.infraFailures += partial.infraFailures;
105
- combined.rubricFailures += partial.rubricFailures;
106
- combined.agentRuntimeFailures += partial.agentRuntimeFailures;
107
- combined.worktreeLeaks += partial.worktreeLeaks;
108
- combined.recordingErrors += partial.recordingErrors;
109
- combined.judgeParseFailures += partial.judgeParseFailures;
110
- combined.retriedScenarios += partial.retriedScenarios;
111
- combined.scenarioRetriedScenarios += partial.scenarioRetriedScenarios;
112
- allResults.push(...report.results);
113
- }
114
- combined.usage = summarizeUsage(allResults);
115
- return combined;
116
- }
117
- export function summarizeReportResults(results) {
118
- const allFailures = results.flatMap((result) => result.failures);
119
- const summary = summarizeFailures(allFailures);
120
- summary.retriedScenarios = results.reduce((count, result) => count + (result.judgeVerdicts?.some((verdict) => (verdict.attempt ?? 1) > 1) ? 1 : 0), 0);
121
- summary.scenarioRetriedScenarios = results.reduce((count, result) => count + ((result.attempts ?? 1) > 1 ? 1 : 0), 0);
122
- summary.usage = summarizeUsage(results);
123
- return summary;
124
- }
125
- /** Whether a failed scenario should fail the process under the given fail-on mode. */
126
- export function shouldFailScenario(failures, mode) {
127
- if (mode === "infra-only") {
128
- return failures.some((failure) => INFRA_CATEGORIES.has(failure.category));
129
- }
130
- if (mode === "all") {
131
- return failures.length > 0;
132
- }
133
- // behavior: ignore pure infra flakes
134
- return failures.some((failure) => !INFRA_CATEGORIES.has(failure.category));
135
- }
136
- function compactNumber(value) {
137
- if (value >= 1_000_000) {
138
- return `${(value / 1_000_000).toFixed(1)}M`;
139
- }
140
- if (value >= 1000) {
141
- return `${(value / 1000).toFixed(1)}k`;
142
- }
143
- return String(value);
144
- }
145
- /** Compact token count for CLI and HTML (`78.2k`). */
146
- export function formatTokenCount(value) {
147
- return compactNumber(value);
148
- }
149
- function countLabel(count, singular, plural) {
150
- return count === 1 ? `1 ${singular}` : `${count} ${plural}`;
151
- }
152
- function formatFailureSummary(summary) {
153
- const parts = [];
154
- if (summary.rubricFailures > 0) {
155
- parts.push(countLabel(summary.rubricFailures, "rubric miss", "rubric misses"));
156
- }
157
- if (summary.infraFailures > 0) {
158
- parts.push(countLabel(summary.infraFailures, "infra failure", "infra failures"));
159
- }
160
- if (summary.agentRuntimeFailures > 0) {
161
- parts.push(countLabel(summary.agentRuntimeFailures, "runtime failure", "runtime failures"));
162
- }
163
- if (summary.judgeParseFailures > 0) {
164
- parts.push(countLabel(summary.judgeParseFailures, "judge parse error", "judge parse errors"));
165
- }
166
- if (summary.worktreeLeaks > 0) {
167
- parts.push(countLabel(summary.worktreeLeaks, "worktree leak", "worktree leaks"));
168
- }
169
- if (summary.recordingErrors > 0) {
170
- parts.push(countLabel(summary.recordingErrors, "recording error", "recording errors"));
171
- }
172
- return parts.length > 0 ? parts.join(" · ") : undefined;
173
- }
174
- function formatRetrySummary(summary) {
175
- const parts = [];
176
- if (summary.retriedScenarios > 0) {
177
- parts.push(countLabel(summary.retriedScenarios, "judge retry", "judge retries"));
178
- }
179
- if (summary.scenarioRetriedScenarios > 0) {
180
- parts.push(countLabel(summary.scenarioRetriedScenarios, "scenario retry", "scenario retries"));
181
- }
182
- return parts.length > 0 ? parts.join(" · ") : undefined;
183
- }
184
- export function formatUsageStats(usage) {
185
- const parts = [countLabel(usage.scenariosWithUsage, "scenario", "scenarios")];
186
- if (usage.sumTotalTokens !== undefined) {
187
- parts.push(`${compactNumber(usage.sumTotalTokens)} tokens`);
188
- }
189
- if (usage.scenariosWithUsage > 1 && usage.p50TotalTokens !== undefined) {
190
- parts.push(`typical ${compactNumber(usage.p50TotalTokens)}`);
191
- }
192
- if (usage.scenariosWithUsage > 1 && usage.maxTotalTokens !== undefined) {
193
- parts.push(`largest ${compactNumber(usage.maxTotalTokens)}`);
194
- }
195
- if (usage.sumInputTokens !== undefined) {
196
- parts.push(`${compactNumber(usage.sumInputTokens)} in`);
197
- }
198
- if (usage.sumOutputTokens !== undefined) {
199
- parts.push(`${compactNumber(usage.sumOutputTokens)} out`);
200
- }
201
- return parts.join(" · ");
202
- }
203
- export function formatRunSummary(summary) {
204
- const lines = [];
205
- const failures = formatFailureSummary(summary);
206
- if (failures) {
207
- lines.push(`failures ${failures}`);
208
- }
209
- const retries = formatRetrySummary(summary);
210
- if (retries) {
211
- lines.push(`retries ${retries}`);
212
- }
213
- if (summary.usage) {
214
- lines.push(formatUsageStats(summary.usage));
215
- }
216
- return lines.join("\n");
217
- }
218
- //# sourceMappingURL=suite-summary.js.map