@vibesdotdev/agent-execution 0.0.0-stage → 1.0.0-rc.1

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 (191) hide show
  1. package/LICENSE +18 -0
  2. package/README.md +53 -2
  3. package/dist/code-session/agent-code-session.consumer.descriptor.d.ts +68 -0
  4. package/dist/code-session/agent-code-session.consumer.descriptor.d.ts.map +1 -0
  5. package/dist/code-session/agent-code-session.consumer.descriptor.js +31 -0
  6. package/dist/code-session/agent-code-session.consumer.descriptor.js.map +1 -0
  7. package/dist/code-session/agent-code-session.consumer.plugin.d.ts +18 -0
  8. package/dist/code-session/agent-code-session.consumer.plugin.d.ts.map +1 -0
  9. package/dist/code-session/agent-code-session.consumer.plugin.js +47 -0
  10. package/dist/code-session/agent-code-session.consumer.plugin.js.map +1 -0
  11. package/dist/code-session/agent-code-session.descriptor.d.ts +163 -0
  12. package/dist/code-session/agent-code-session.descriptor.d.ts.map +1 -0
  13. package/dist/code-session/agent-code-session.descriptor.js +129 -0
  14. package/dist/code-session/agent-code-session.descriptor.js.map +1 -0
  15. package/dist/code-session/agent-code-session.impl.consumer.d.ts +224 -0
  16. package/dist/code-session/agent-code-session.impl.consumer.d.ts.map +1 -0
  17. package/dist/code-session/agent-code-session.impl.consumer.js +2131 -0
  18. package/dist/code-session/agent-code-session.impl.consumer.js.map +1 -0
  19. package/dist/code-session/agent-code-session.kind.d.ts +15 -0
  20. package/dist/code-session/agent-code-session.kind.d.ts.map +1 -0
  21. package/dist/code-session/agent-code-session.kind.js +17 -0
  22. package/dist/code-session/agent-code-session.kind.js.map +1 -0
  23. package/dist/code-session/agent-code-session.plugin.d.ts +17 -0
  24. package/dist/code-session/agent-code-session.plugin.d.ts.map +1 -0
  25. package/dist/code-session/agent-code-session.plugin.js +28 -0
  26. package/dist/code-session/agent-code-session.plugin.js.map +1 -0
  27. package/dist/code-session/billing/gates.d.ts +52 -0
  28. package/dist/code-session/billing/gates.d.ts.map +1 -0
  29. package/dist/code-session/billing/gates.js +75 -0
  30. package/dist/code-session/billing/gates.js.map +1 -0
  31. package/dist/code-session/client/index.d.ts +2 -0
  32. package/dist/code-session/client/index.d.ts.map +1 -0
  33. package/dist/code-session/client/index.js +2 -0
  34. package/dist/code-session/client/index.js.map +1 -0
  35. package/dist/code-session/client/resolve.d.ts +20 -0
  36. package/dist/code-session/client/resolve.d.ts.map +1 -0
  37. package/dist/code-session/client/resolve.js +145 -0
  38. package/dist/code-session/client/resolve.js.map +1 -0
  39. package/dist/code-session/docs/agent-code-session.docs.descriptor.d.ts +4 -0
  40. package/dist/code-session/docs/agent-code-session.docs.descriptor.d.ts.map +1 -0
  41. package/dist/code-session/docs/agent-code-session.docs.descriptor.js +109 -0
  42. package/dist/code-session/docs/agent-code-session.docs.descriptor.js.map +1 -0
  43. package/dist/code-session/git-credential.d.ts +87 -0
  44. package/dist/code-session/git-credential.d.ts.map +1 -0
  45. package/dist/code-session/git-credential.js +107 -0
  46. package/dist/code-session/git-credential.js.map +1 -0
  47. package/dist/code-session/host-target.d.ts +76 -0
  48. package/dist/code-session/host-target.d.ts.map +1 -0
  49. package/dist/code-session/host-target.js +81 -0
  50. package/dist/code-session/host-target.js.map +1 -0
  51. package/dist/code-session/index.d.ts +20 -0
  52. package/dist/code-session/index.d.ts.map +1 -0
  53. package/dist/code-session/index.js +20 -0
  54. package/dist/code-session/index.js.map +1 -0
  55. package/dist/code-session/interfaces/code-session.d.ts +448 -0
  56. package/dist/code-session/interfaces/code-session.d.ts.map +1 -0
  57. package/dist/code-session/interfaces/code-session.js +373 -0
  58. package/dist/code-session/interfaces/code-session.js.map +1 -0
  59. package/dist/code-session/operation-lease.d.ts +48 -0
  60. package/dist/code-session/operation-lease.d.ts.map +1 -0
  61. package/dist/code-session/operation-lease.js +73 -0
  62. package/dist/code-session/operation-lease.js.map +1 -0
  63. package/dist/code-session/remote-setup-custody.d.ts +59 -0
  64. package/dist/code-session/remote-setup-custody.d.ts.map +1 -0
  65. package/dist/code-session/remote-setup-custody.js +78 -0
  66. package/dist/code-session/remote-setup-custody.js.map +1 -0
  67. package/dist/code-session/remote-workspace-fs.d.ts +119 -0
  68. package/dist/code-session/remote-workspace-fs.d.ts.map +1 -0
  69. package/dist/code-session/remote-workspace-fs.js +257 -0
  70. package/dist/code-session/remote-workspace-fs.js.map +1 -0
  71. package/dist/code-session/session-metadata.d.ts +40 -0
  72. package/dist/code-session/session-metadata.d.ts.map +1 -0
  73. package/dist/code-session/session-metadata.js +69 -0
  74. package/dist/code-session/session-metadata.js.map +1 -0
  75. package/dist/code-session-relay/agent-code-session-relay.descriptor.d.ts +78 -0
  76. package/dist/code-session-relay/agent-code-session-relay.descriptor.d.ts.map +1 -0
  77. package/dist/code-session-relay/agent-code-session-relay.descriptor.js +38 -0
  78. package/dist/code-session-relay/agent-code-session-relay.descriptor.js.map +1 -0
  79. package/dist/code-session-relay/agent-code-session-relay.impl.d.ts +120 -0
  80. package/dist/code-session-relay/agent-code-session-relay.impl.d.ts.map +1 -0
  81. package/dist/code-session-relay/agent-code-session-relay.impl.js +1392 -0
  82. package/dist/code-session-relay/agent-code-session-relay.impl.js.map +1 -0
  83. package/dist/code-session-relay/agent-code-session-relay.plugin.d.ts +14 -0
  84. package/dist/code-session-relay/agent-code-session-relay.plugin.d.ts.map +1 -0
  85. package/dist/code-session-relay/agent-code-session-relay.plugin.js +25 -0
  86. package/dist/code-session-relay/agent-code-session-relay.plugin.js.map +1 -0
  87. package/dist/code-session-relay/index.d.ts +13 -0
  88. package/dist/code-session-relay/index.d.ts.map +1 -0
  89. package/dist/code-session-relay/index.js +13 -0
  90. package/dist/code-session-relay/index.js.map +1 -0
  91. package/dist/code-session-relay/relay-dial.d.ts +72 -0
  92. package/dist/code-session-relay/relay-dial.d.ts.map +1 -0
  93. package/dist/code-session-relay/relay-dial.js +177 -0
  94. package/dist/code-session-relay/relay-dial.js.map +1 -0
  95. package/dist/index.d.ts +10 -0
  96. package/dist/index.d.ts.map +1 -0
  97. package/dist/index.js +10 -0
  98. package/dist/index.js.map +1 -0
  99. package/dist/sandbox/agent-sandbox.consumer.descriptor.d.ts +35 -0
  100. package/dist/sandbox/agent-sandbox.consumer.descriptor.d.ts.map +1 -0
  101. package/dist/sandbox/agent-sandbox.consumer.descriptor.js +19 -0
  102. package/dist/sandbox/agent-sandbox.consumer.descriptor.js.map +1 -0
  103. package/dist/sandbox/agent-sandbox.consumer.plugin.d.ts +9 -0
  104. package/dist/sandbox/agent-sandbox.consumer.plugin.d.ts.map +1 -0
  105. package/dist/sandbox/agent-sandbox.consumer.plugin.js +33 -0
  106. package/dist/sandbox/agent-sandbox.consumer.plugin.js.map +1 -0
  107. package/dist/sandbox/agent-sandbox.descriptor.d.ts +76 -0
  108. package/dist/sandbox/agent-sandbox.descriptor.d.ts.map +1 -0
  109. package/dist/sandbox/agent-sandbox.descriptor.js +57 -0
  110. package/dist/sandbox/agent-sandbox.descriptor.js.map +1 -0
  111. package/dist/sandbox/agent-sandbox.impl.consumer.d.ts +15 -0
  112. package/dist/sandbox/agent-sandbox.impl.consumer.d.ts.map +1 -0
  113. package/dist/sandbox/agent-sandbox.impl.consumer.js +23 -0
  114. package/dist/sandbox/agent-sandbox.impl.consumer.js.map +1 -0
  115. package/dist/sandbox/agent-sandbox.kind.d.ts +14 -0
  116. package/dist/sandbox/agent-sandbox.kind.d.ts.map +1 -0
  117. package/dist/sandbox/agent-sandbox.kind.js +16 -0
  118. package/dist/sandbox/agent-sandbox.kind.js.map +1 -0
  119. package/dist/sandbox/agent-sandbox.plugin.d.ts +15 -0
  120. package/dist/sandbox/agent-sandbox.plugin.d.ts.map +1 -0
  121. package/dist/sandbox/agent-sandbox.plugin.js +25 -0
  122. package/dist/sandbox/agent-sandbox.plugin.js.map +1 -0
  123. package/dist/sandbox/client/resolve.d.ts +21 -0
  124. package/dist/sandbox/client/resolve.d.ts.map +1 -0
  125. package/dist/sandbox/client/resolve.js +103 -0
  126. package/dist/sandbox/client/resolve.js.map +1 -0
  127. package/dist/sandbox/docs/agent-sandbox.docs.descriptor.d.ts +4 -0
  128. package/dist/sandbox/docs/agent-sandbox.docs.descriptor.d.ts.map +1 -0
  129. package/dist/sandbox/docs/agent-sandbox.docs.descriptor.js +75 -0
  130. package/dist/sandbox/docs/agent-sandbox.docs.descriptor.js.map +1 -0
  131. package/dist/sandbox/index.d.ts +15 -0
  132. package/dist/sandbox/index.d.ts.map +1 -0
  133. package/dist/sandbox/index.js +14 -0
  134. package/dist/sandbox/index.js.map +1 -0
  135. package/dist/sandbox/interfaces/sandbox.d.ts +61 -0
  136. package/dist/sandbox/interfaces/sandbox.d.ts.map +1 -0
  137. package/dist/sandbox/interfaces/sandbox.js +54 -0
  138. package/dist/sandbox/interfaces/sandbox.js.map +1 -0
  139. package/dist/schemas/code-session-resolution.d.ts +20 -0
  140. package/dist/schemas/code-session-resolution.d.ts.map +1 -0
  141. package/dist/schemas/code-session-resolution.js +11 -0
  142. package/dist/schemas/code-session-resolution.js.map +1 -0
  143. package/dist/schemas/session-operation.d.ts +73 -0
  144. package/dist/schemas/session-operation.d.ts.map +1 -0
  145. package/dist/schemas/session-operation.js +47 -0
  146. package/dist/schemas/session-operation.js.map +1 -0
  147. package/dist/schemas/voice.d.ts +87 -0
  148. package/dist/schemas/voice.d.ts.map +1 -0
  149. package/dist/schemas/voice.js +70 -0
  150. package/dist/schemas/voice.js.map +1 -0
  151. package/dist/voice/agent-voice.consumer.descriptor.d.ts +43 -0
  152. package/dist/voice/agent-voice.consumer.descriptor.d.ts.map +1 -0
  153. package/dist/voice/agent-voice.consumer.descriptor.js +20 -0
  154. package/dist/voice/agent-voice.consumer.descriptor.js.map +1 -0
  155. package/dist/voice/agent-voice.consumer.plugin.d.ts +4 -0
  156. package/dist/voice/agent-voice.consumer.plugin.d.ts.map +1 -0
  157. package/dist/voice/agent-voice.consumer.plugin.js +13 -0
  158. package/dist/voice/agent-voice.consumer.plugin.js.map +1 -0
  159. package/dist/voice/agent-voice.descriptor.d.ts +82 -0
  160. package/dist/voice/agent-voice.descriptor.d.ts.map +1 -0
  161. package/dist/voice/agent-voice.descriptor.js +79 -0
  162. package/dist/voice/agent-voice.descriptor.js.map +1 -0
  163. package/dist/voice/agent-voice.impl.consumer.d.ts +35 -0
  164. package/dist/voice/agent-voice.impl.consumer.d.ts.map +1 -0
  165. package/dist/voice/agent-voice.impl.consumer.js +50 -0
  166. package/dist/voice/agent-voice.impl.consumer.js.map +1 -0
  167. package/dist/voice/agent-voice.kind.d.ts +67 -0
  168. package/dist/voice/agent-voice.kind.d.ts.map +1 -0
  169. package/dist/voice/agent-voice.kind.js +26 -0
  170. package/dist/voice/agent-voice.kind.js.map +1 -0
  171. package/dist/voice/agent-voice.plugin.d.ts +4 -0
  172. package/dist/voice/agent-voice.plugin.d.ts.map +1 -0
  173. package/dist/voice/agent-voice.plugin.js +18 -0
  174. package/dist/voice/agent-voice.plugin.js.map +1 -0
  175. package/dist/voice/client.d.ts +38 -0
  176. package/dist/voice/client.d.ts.map +1 -0
  177. package/dist/voice/client.js +29 -0
  178. package/dist/voice/client.js.map +1 -0
  179. package/dist/voice/index.d.ts +14 -0
  180. package/dist/voice/index.d.ts.map +1 -0
  181. package/dist/voice/index.js +14 -0
  182. package/dist/voice/index.js.map +1 -0
  183. package/dist/voice/pipeline.d.ts +66 -0
  184. package/dist/voice/pipeline.d.ts.map +1 -0
  185. package/dist/voice/pipeline.js +330 -0
  186. package/dist/voice/pipeline.js.map +1 -0
  187. package/dist/voice/session.d.ts +29 -0
  188. package/dist/voice/session.d.ts.map +1 -0
  189. package/dist/voice/session.js +78 -0
  190. package/dist/voice/session.js.map +1 -0
  191. package/package.json +279 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-code-session.impl.consumer.js","sourceRoot":"","sources":["../../src/code-session/agent-code-session.impl.consumer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EACN,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,2BAA2B,EAC3B,iBAAiB,EACjB,OAAO,EACP,MAAM,EACN,gBAAgB,EAKhB,MAAM,qBAAqB,CAAC;AAS7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAGvE,OAAO,EAAE,kBAAkB,EAAsB,MAAM,yBAAyB,CAAC;AACjF,OAAO,EACN,0BAA0B,EAC1B,wBAAwB,EAExB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,OAAO,EACN,4BAA4B,EAC5B,gCAAgC,EAGhC,MAAM,oCAAoC,CAAC;AAC5C,OAAO,6BAA6B,MAAM,6CAA6C,CAAC;AACxF,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAA0B,MAAM,kBAAkB,CAAC;AAyBvF,OAAO,EACN,4BAA4B,EAC5B,mCAAmC,EACnC,+BAA+B,EAC/B,uBAAuB,EACvB,mBAAmB,EACnB,gCAAgC,EAChC,kBAAkB,EAClB,+BAA+B,EAC/B,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACnB,+BAA+B,EAC/B,+BAA+B,EAC/B,cAAc,EACd,kBAAkB,EAClB,2BAA2B,EAC3B,oBAAoB,EACpB,mBAAmB,EACnB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EACN,gCAAgC,EAChC,uBAAuB,EACvB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACN,8BAA8B,EAC9B,wBAAwB,EACxB,4BAA4B,EAC5B,MAAM,uBAAuB,CAAC;AAE/B,8GAA8G;AAC9G,MAAM,cAAc,GAAG,CAAC,OAAmB,EAAE,EAAE,CAAC,SAAS,CAAC,6BAA6B,EAAE,OAAO,CAAC,CAAC;AAElG,iFAAiF;AACjF,MAAM,iBAAiB,GAAG,eAAe,CAAC;AAC1C,8EAA8E;AAC9E,MAAM,yBAAyB,GAAG,yBAAyB,CAAC;AAC5D,MAAM,8BAA8B,GAAG,wBAAwB,CAAC;AAChE,MAAM,eAAe,GAAG,mCAAmC,CAAC;AAe5D,MAAM,+BAA+B,GAAG,CAAC;KACvC,MAAM,CAAC;IACP,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IAC3B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE;CAC5C,CAAC;KACD,MAAM,EAAE,CAAC;AAEX,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAE3E,SAAS,QAAQ,CAAC,QAA6B;IAC9C,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;AACtG,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACpC,OAAO,IAAI,eAAe,CAAC,sCAAsC,EAAE,eAAe,EAAE;QACnF,MAAM,EAAE,8BAA8B;QACtC,SAAS,EAAE,KAAK;QAChB,OAAO,EAAE,EAAE,KAAK,EAAE;KAClB,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,KAAwB;IAChD,OAAO,IAAI,eAAe,CAAC,6CAA6C,EAAE,eAAe,EAAE;QAC1F,MAAM,EAAE,+BAA+B;QACvC,SAAS,EAAE,KAAK;QAChB,KAAK;KACL,CAAC,CAAC;AACJ,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAkD,CAAC;AAEhH,SAAS,sBAAsB,CAAC,UAAiC;IAChE,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,4BAA4B,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,eAAe,CAAC,SAAiB;IACzC,OAAO,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,oBAAoB,CAAC,SAAiB;IAC9C,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;QACjC,MAAM,cAAc,CAAC,WAAW,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,SAAS,kBAAkB,CAC1B,EAA8B,EAC9B,WAAmB,EACnB,SAAiB;IAEjB,MAAM,MAAM,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC;IAC3D,IAAI,SAAS,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC9D,MAAM,cAAc,CAAC,WAAW,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,SAAS,wBAAwB,CAChC,EAA8B,EAC9B,WAAmB,EACnB,SAAiB,EACjB,aAAqB;IAErB,MAAM,QAAQ,GAAG,kBAAkB,CAAC,EAAE,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IAChE,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC1D,MAAM,IAAI,eAAe,CAAC,sDAAsD,EAAE,UAAU,EAAE;YAC7F,MAAM,EAAE,+BAA+B;YACvC,SAAS,EAAE,KAAK;YAChB,OAAO,EAAE,EAAE,SAAS,EAAE;SACtB,CAAC,CAAC;IACJ,CAAC;AACF,CAAC;AAgCD,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAC5C,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CACrE,CAAC;AAEF,SAAS,2BAA2B,CAAS,KAAa,EAAE,MAAc;IACzE,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,4BAA4B,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,IAAI,eAAe,CAAC,kDAAkD,EAAE,aAAa,EAAE;gBAC5F,MAAM,EAAE,+BAA+B,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE;aAC9E,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC,IAAI,CAAC;IACpB,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAClD,IAAI,iBAAiB,CAAC,OAAO,CAAC;YAAE,MAAM,OAAO,CAAC;QAC9C,MAAM,IAAI,eAAe,CAAC,kDAAkD,EAAE,aAAa,EAAE;YAC5F,MAAM,EAAE,+BAA+B;YACvC,SAAS,EAAE,KAAK;YAChB,OAAO,EAAE,EAAE,MAAM,EAAE;YACnB,KAAK,EAAE,gBAAgB,CAAC,OAAO,CAAC;SAChC,CAAC,CAAC;IACJ,CAAC;AACF,CAAC;AAgCD,sGAAsG;AACtG,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAClC,sFAAsF;AACtF,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAEvC,6EAA6E;AAC7E,SAAS,qBAAqB,CAAC,KAAqB,EAAE,KAAyB,EAAE,QAAiB;IACjG,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;IACrD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC;IACrD,MAAM,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;IACjC,MAAM,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;IACjC,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QAC7E,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ;YAAE,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;;YAC9E,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;IACvB,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;IACvB,OAAO;QACN,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,MAAM,EAAE,GAAG;QACX,MAAM,EAAE,GAAG;QACX,MAAM,EAAE,KAAK,CAAC,QAAQ;QACtB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;QACnE,QAAQ;KACR,CAAC;AACH,CAAC;AAED,gGAAgG;AAChG,SAAS,uBAAuB,CAAC,OAAsB;IACtD,OAAO,iBAAiB,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,KAAK,cAAc,CAAC;AACtG,CAAC;AAED,0EAA0E;AAC1E,SAAS,kBAAkB,CAC1B,EAA8B,EAC9B,aAAqB,EACrB,OAAe;IAEf,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAC/C,MAAM,cAAc,GAAG,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,cAAc,GAAG,CAAC;IACzF,IAAI,GAAG,KAAK,cAAc,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC5D,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,kEAAkE;AAClE,KAAK,UAAU,UAAU,CAAC,MAAyC;IAClE,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IACvB,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;AACpC,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,eAAe,CAC7B,KAAiC,EACjC,SAAiB,EACjB,MAAyC;IAEzC,IAAI,CAAC,KAAK,CAAC,WAAW;QAAE,OAAO;IAC/B,IAAI,CAAC;QACJ,MAAM,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QACpE,MAAM,CAAC,IAAI,CAAC,8CAA8C,EAAE;YAC3D,SAAS;YACT,OAAO;SACP,CAAC,CAAC;QACH,OAAO,OAAO,CAAC;IAChB,CAAC;AACF,CAAC;AAED,MAAM,OAAO,mBAAmB;IA8BrB;IA7BV,wEAAwE;IACvD,QAAQ,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC3D,yCAAyC;IACxB,UAAU,GAAG,IAAI,GAAG,EAA4B,CAAC;IAClE,0EAA0E;IAClE,sBAAsB,CAA0B;IACxD,8GAA8G;IAC7F,cAAc,GAAG,IAAI,GAAG,EAAuC,CAAC;IACjF,yEAAyE;IACxD,OAAO,GAAG,IAAI,GAAG,EAAkC,CAAC;IACpD,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC/D,qFAAqF;IACpE,iBAAiB,GAAG,IAAI,GAAG,EAA+C,CAAC;IAC5F;;;;OAIG;IACc,iBAAiB,GAAG,IAAI,GAAG,EAGzC,CAAC;IACJ,iHAAiH;IAChG,eAAe,GAAG,IAAI,GAAG,EAA4B,CAAC;IAEtD,OAAO,CAAa;IACpB,UAAU,CAAS;IAEpC,YACU,UAAsC,EAC/C,OAAmB;QADV,eAAU,GAAV,UAAU,CAA4B;QAG/C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;IACzD,CAAC;IAED,0DAA0D;IAC1D,IAAY,GAAG;QACd,OAAO,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAEO,GAAG;QACV,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;IACrC,CAAC;IAEO,MAAM;QACb,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACjC,CAAC;IAED,sEAAsE;IAC9D,WAAW,CAAC,EAA8B;QACjD,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAC9E,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,EAA8B,EAAE,UAA6B;QAC5F,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,UAAU,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YACjE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAC3D,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAC/D,IAAI,QAAQ,IAAI,QAAQ,KAAK,KAAK,CAAC,UAAU,EAAE,CAAC;gBAC/C,MAAM,IAAI,eAAe,CAAC,gEAAgE,EAAE,UAAU,EAAE;oBACvG,MAAM,EAAE,+BAA+B;oBACvC,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE;iBACtC,CAAC,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;YAChE,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAC/E,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,gFAAgF;IACxE,KAAK,CAAC,cAAc,CAAC,EAA8B,EAAE,UAA6B;QACzF,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,UAAU,CAAC,MAAM,KAAK,OAAO;YACxE,CAAC,CAAC,MAAM,kBAAkB,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACvE,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9B,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,yBAAyB,CAAC,QAAgC;QACzD,IAAI,CAAC,sBAAsB,GAAG,2BAA2B,CAAC,QAAQ,CAAC,CAAC;IACrE,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,kBAAkB,CAC/B,aAAqB,EACrB,UAA6B,EAC7B,KAA8B;QAE9B,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACtD,MAAM,GAAG,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC;QACrC,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,eAAe,EAAE,GAAG,CAAC,CAAC;QACzF,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1F,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9F,MAAM,QAAQ,GAAG;YAChB,IAAI,EAAE,IAAI;YACV,MAAM,EAAE,IAAI;YACZ,oBAAoB,EAAE,aAAa;YACnC,gBAAgB,EAAE,GAAG;YACrB,gBAAgB,EAAE,gBAAgB;YAClC,kBAAkB,EAAE,OAAO;YAC3B,GAAG,KAAK;SACR,CAAC;QACF,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,UAAU,CAAC,MAAM,KAAK,OAAO;YAAE,OAAO,QAAQ,CAAC;QACjF,MAAM,IAAI,CAAC,qBAAqB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,QAAQ,EAAE,EAAE,CAAC,CAAC;QACxF,IAAI,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC;YAClG,MAAM,IAAI,eAAe,CAAC,oDAAoD,EAAE,aAAa,EAAE;gBAC9F,MAAM,EAAE,uBAAuB,EAAE,SAAS,EAAE,KAAK;aACjD,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,GAAG,CAAC;IACZ,CAAC;IAEO,KAAK,CAAC,qBAAqB,CAAC,EAA8B,EAAE,IAAY;QAC/E,MAAM,eAAe,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QACpD,IAAI,MAAM,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC;YAAE,OAAO;QAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,MAAM,eAAe,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACxD,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;YAAE,OAAO;QAChD,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC;QACrE,IAAI,aAAa,GAAG,KAAK,CAAC;QAC1B,IAAI,IAAwB,CAAC;QAC7B,IAAI,KAAyB,CAAC;QAC9B,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,SAAS;YACpE,MAAM,YAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjD,IAAI,YAAY,EAAE,CAAC;gBAClB,aAAa,GAAG,YAAY,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC;gBACjE,SAAS;YACV,CAAC;YACD,IAAI,CAAC,aAAa;gBAAE,SAAS;YAC7B,MAAM,OAAO,GAAG,8BAA8B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1D,IAAI,CAAC,OAAO;gBAAE,SAAS;YACvB,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC,WAAW,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YAC3D,IAAI,GAAG,KAAK,MAAM,IAAI,KAAK;gBAAE,IAAI,GAAG,KAAK,CAAC;iBACrC,IAAI,GAAG,KAAK,OAAO,IAAI,KAAK;gBAAE,KAAK,GAAG,KAAK,CAAC;QAClD,CAAC;QACD,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK;YAAE,OAAO;QAC5B,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC;QACzB,IAAI,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;QACzC,IAAI,KAAK;YAAE,KAAK,CAAC,IAAI,CAAC,aAAa,KAAK,EAAE,CAAC,CAAC;QAC5C,MAAM,EAAE,CAAC,SAAS,CAAC,eAAe,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtE,CAAC;IAED;;;;;;;;;OASG;IACK,KAAK,CAAC,SAAS;QACtB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO;aAC7B,KAAK,CAAwC,mBAAmB,CAAC;aACjE,OAAO,EAAE,CAAC;QACZ,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,MAAM,IAAI,eAAe,CAAC,+DAA+D,EAAE,aAAa,EAAE;gBACzG,MAAM,EAAE,+BAA+B;gBACvC,SAAS,EAAE,KAAK;aAChB,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;;OAKG;IACK,aAAa,CAAC,MAAc;QACnC,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YACnD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAClC,MAAM,KAAK,GAAG,OAAO,CAAC;YACtB,MAAM,KAAK,GAAG,GAAG,EAAE;gBAClB,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC;oBACxC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAC5B,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACvC,CAAC;YACF,CAAC,CAAC;YACF,KAAK,OAAO,CAAC,IAAI,CAChB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CACxC,KAAK,EACL,CAAC,MAAM,EAAE,EAAE;gBACV,MAAM,OAAO,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;gBACpE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,sDAAsD,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC3F,KAAK,EAAE,CAAC;gBACR,OAAO,OAAO,CAAC;YAChB,CAAC,CACD,EACD,CAAC,MAAM,EAAE,EAAE;gBACV,MAAM,OAAO,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;gBACpE,KAAK,EAAE,CAAC;gBACR,OAAO,OAAO,CAAC;YAChB,CAAC,CACD,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IAChB,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,WAAW,CAAC,aAAqB,EAAE,UAA6B,EAC7E,OAA8C,EAAE,KAA8B,EAC9E,KAAoB;QACpB,MAAM,YAAY,GAAG,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,UAAU,CAAC,MAAM,KAAK,OAAO,CAAC;QACjF,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjD,IAAI,YAAY;YAAE,OAAO,CAAC,KAAK,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;QAC5E,IAAI,KAAK,EAAE,SAAS,EAAE;YAAE,OAAO,IAAI,CAAC;QACpC,IAAI,YAAY,EAAE,CAAC;YAClB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAC3D,IAAI,KAAK,EAAE,SAAS,EAAE;gBAAE,OAAO,IAAI,CAAC;YACpC,MAAM,SAAS,GAAG,2BAA2B,CAC5C,MAAM,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,EACvC,UAAU,CAAC,MAAM,CACjB,CAAC;YACF,IAAI,KAAK,EAAE,SAAS,EAAE;gBAAE,OAAO,IAAI,CAAC;YACpC,MAAM,OAAO,GAAyB,EAAE,GAAG,OAAO,EAAE,WAAW,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC;YAC3E,OAAO,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACrG,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;YAC/B,OAAO,WAAW,CAAC,KAAK,CAAC;QAC1B,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACzC,IAAI,KAAK,EAAE,SAAS,EAAE;YAAE,OAAO,IAAI,CAAC;QACpC,KAAK,EAAE,UAAU,EAAE,CAAC;QACpB,OAAO,SAAS,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;IACjE,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,aAAqB,EAAE,UAA6B,EACjF,OAA8C,EAAE,KAA8B;QAC9E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QACjF,8DAA8D;QAC9D,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,eAAe,CAAC,wCAAwC,EAAE,aAAa,EAAE,EAAE,MAAM,EAAE,8BAA8B,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9J,OAAO,MAAM,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACK,gBAAgB,CAAC,MAAc;QACtC,IAAI,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,OAAO,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,IAAI,CAClD,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EACpB,CAAC,MAAM,EAAE,EAAE;gBACV,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACtC,MAAM,eAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YAC/D,CAAC,CACD,CAAC;YACF,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,OAAO,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,uBAAuB,CAAC,MAAc;QACnD,IAAI,MAAqB,CAAC;QAC1B,IAAI,CAAC;YACJ,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC3C,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YACpE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,oCAAoC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;YACzE,MAAM,IAAI,eAAe,CAAC,yCAAyC,EAAE,aAAa,EAAE;gBACnF,MAAM,EAAE,+BAA+B,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO;aAC7F,CAAC,CAAC;QACJ,CAAC;QACD,MAAM,EAAE,GAAG,uBAAuB,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC,CAAC;QACrF,OAAO,gCAAgC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,UAAU;QACvB,0EAA0E;QAC1E,qEAAqE;QACrE,MAAM,OAAO,GAAG,MAAM,wBAAwB,CAAC,IAAI,CAAC,OAAO,EAAE;YAC5D,UAAU,EAAE,8BAA8B;SAC1C,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,MAAM,IAAI,eAAe,CAAC,0EAA0E,EAAE,aAAa,EAAE;gBACpH,MAAM,EAAE,+BAA+B;gBACvC,SAAS,EAAE,KAAK;aAChB,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC;IAChB,CAAC;IAED;;;;;;OAMG;IACK,mBAAmB,CAC1B,aAAgC,2BAA2B;QAE3D,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,UAAU,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YACjE,OAAO,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;IAC1B,CAAC;IAED;;;;;;OAMG;IACH;;;;;OAKG;IACK,YAAY;QACnB,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACzD,MAAM,IAAI,eAAe,CAAC,gEAAgE,EAAE,mBAAmB,EAAE;gBAChH,MAAM,EAAE,2BAA2B;gBACnC,SAAS,EAAE,KAAK;gBAChB,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,kBAAkB,EAAE,4BAA4B,EAAE;aACrG,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,SAAiB;QAC5C,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,oBAAoB,CAAC,SAAS,CAAC,CAAC;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,KAAK;YAAE,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAElD,IAAI,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,OAAO,GAAG,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;gBAC/D,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC7C,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC;QAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,MAAM,IAAI,eAAe,CAAC,2CAA2C,EAAE,WAAW,EAAE;gBACnF,MAAM,EAAE,kCAAkC;gBAC1C,SAAS,EAAE,KAAK;gBAChB,OAAO,EAAE,EAAE,SAAS,EAAE;aACtB,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,IAAiB;QAClD,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC3E,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC3D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YAC/D,IAAI,IAAI,CAAC,kBAAkB,KAAK,OAAO,IAAI,IAAI,CAAC,aAAa,KAAK,kBAAkB,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;gBAChH,MAAM,IAAI,eAAe,CAAC,gDAAgD,EAAE,UAAU,EAAE;oBACvF,MAAM,EAAE,+BAA+B,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;iBACjG,CAAC,CAAC;YACJ,CAAC;YACD,IAAI,IAAI,CAAC,kBAAkB,KAAK,OAAO,EAAE,CAAC;gBACzC,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC,CAAC;gBACtF,MAAM,SAAS,GAAG,wBAAwB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC/D,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,aAAa,KAAK,IAAI,CAAC,aAAa;oBACzG,SAAS,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW,IAAI,SAAS,CAAC,oBAAoB,KAAK,IAAI,CAAC,oBAAoB;oBAC1G,SAAS,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,SAAS,CAAC,UAAU,CAAC,MAAM,KAAK,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;oBACjG,MAAM,IAAI,eAAe,CAAC,iEAAiE,EAAE,UAAU,EAAE;wBACxG,MAAM,EAAE,+BAA+B,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;qBACjG,CAAC,CAAC;gBACJ,CAAC;YACF,CAAC;QACF,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC;QACnC,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,MAAM,uBAAuB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QACvD,IACC,CAAC,MAAM;YACP,MAAM,CAAC,KAAK,KAAK,OAAO;YACxB,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS;YACnC,MAAM,CAAC,WAAW,KAAK,IAAI,CAAC,oBAAoB,EAC/C,CAAC;YACF,MAAM,IAAI,eAAe,CAAC,0CAA0C,EAAE,UAAU,EAAE;gBACjF,MAAM,EAAE,iCAAiC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;aACnG,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAEO,YAAY,CAAC,EAA8B,EAAE,aAAqB;QACzE,OAAO,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,8BAA8B,CAAC,CAAC;IAC/D,CAAC;IAEO,oBAAoB,CAAC,EAA8B,EAAE,SAAiB;QAC7E,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,GAAG,oBAAoB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9F,CAAC;IAEO,aAAa,CAAC,EAA8B;QACnD,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC;IACrD,CAAC;IAEO,kBAAkB,CAAC,EAA8B,EAAE,GAAW;QACrE,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;IAC7C,CAAC;IAEO,mBAAmB,CAAC,EAA8B,EAAE,GAAW;QACtE,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,gBAAgB,CAAC,CAAC;IACpE,CAAC;IAEO,uBAAuB,CAAC,EAA8B,EAAE,GAAW;QAC1E,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC/B,EAA8B,EAC9B,GAAW;QAEX,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAC3C,EAAE,EACF,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,YAAY,CAAC,CAC5D,CAAC;QACF,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QACxB,IAAI,CAAC;YACJ,OAAO,+BAA+B,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC3E,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YACjB,MAAM,eAAe,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC5E,CAAC;IACF,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC/B,SAAuC,EACvC,GAAqB,EACrB,SAAS,GAAG,KAAK;QAEjB,MAAM,cAAc,GAAG,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;QACjF,MAAM,SAAS,GAAG,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;QAClE,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QACrC,MAAM,eAAe,GAAG,MAAM,CAAC;QAC/B,0EAA0E;QAC1E,6EAA6E;QAC7E,MAAM,QAAQ,GAAG,MAAM,SAAS,CAC/B,IAAI,CAAC,OAAO,CAAC,SAAS,EACtB,KAAK,IAAI,EAAE;YACV,IAAI,CAAC;gBACJ,MAAM,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;gBACzC,OAAO,UAAU,CAAC;YACnB,CAAC;YAAC,OAAO,MAAM,EAAE,CAAC;gBACjB,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACjD,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;gBACzC,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ;oBAAE,MAAM,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAClE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;gBAC3E,IAAI,CAAC,SAAS,IAAI,CACjB,MAAM,EAAE,KAAK,KAAK,OAAO;oBACzB,MAAM,EAAE,KAAK,KAAK,oBAAoB;oBACtC,MAAM,EAAE,KAAK,KAAK,WAAW,CAC7B,EAAE,CAAC;oBACH,OAAO,MAAM,CAAC;gBACf,CAAC;gBACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;gBACzE,IAAI,KAAK,IAAI,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;oBAC5C,MAAM,IAAI,eAAe,CAAC,iEAAiE,EAAE,UAAU,EAAE;wBACxG,MAAM,EAAE,iCAAiC;wBACzC,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE,EAAE,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,WAAW,EAAE;qBACtD,CAAC,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,CAAC;YACb,CAAC;QACF,CAAC,EACD,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,8BAA8B,EAAE,CAClF,CAAC;QACF,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;YAC7B,SAAS,CAAC,MAAM,GAAG,QAAQ,CAAC;YAC5B,OAAO,GAAG,EAAE,CAAC;QACd,CAAC;QAED,MAAM,KAAK,GAAG,KAAK,IAAmB,EAAE;YACvC,MAAM,SAAS,CAAC,EAAE,CAAC,SAAS,CAC3B,SAAS,EACT,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,eAAe,EAAE,CAAC,EACrE,MAAM,CACN,CAAC;QACH,CAAC,CAAC;QACF,MAAM,KAAK,EAAE,CAAC;QACd,IAAI,CAAC;YACJ,OAAO,MAAM,kBAAkB,CAC9B,IAAI,CAAC,OAAO,CAAC,SAAS,EACtB,EAAE,QAAQ,EAAE,eAAe,GAAG,CAAC,EAAE,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,EACrG,KAAK,IAAI,EAAE;gBACV,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;gBAC3E,IAAI,MAAM;oBAAE,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC;gBACtC,OAAO,GAAG,EAAE,CAAC;YACd,CAAC,CACD,CAAC;QACF,CAAC;gBAAS,CAAC;YACV,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;YAC3E,IAAI,OAAO,EAAE,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACpC,MAAM,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;IACF,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAChC,EAA8B,EAC9B,GAAW;QAEX,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;QACpF,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAChC,IAAI,CAAC;YACJ,OAAO,mCAAmC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/E,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YACpE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,+BAA+B,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YAC5D,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;QAChC,CAAC;IACF,CAAC;IAEO,KAAK,CAAC,oBAAoB,CACjC,SAAuC,EACvC,KAEC;QAED,MAAM,OAAO,GAAG,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;QAC5E,MAAM,EAAE,GAAG,SAAS,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,cAAc,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACtF,IAAI,CAAC,MAAM,0BAA0B,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE;YAC9F,OAAO,EAAE,wDAAwD;SACjE,CAAC,EAAE,CAAC;YACJ,MAAM,IAAI,eAAe,CAAC,gDAAgD,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/G,CAAC;QACD,2GAA2G;QAC3G,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACjC,SAAS,CAAC,MAAM,GAAG,OAAO,CAAC;IAC5B,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC7B,KAAiC;QAEjC,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;QAC9C,IAAI,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC;QAC9B,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YACrB,MAAM,cAAc,CAAC,WAAW,CAAC,CAAC;QACnC,CAAC;QACD,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAChD,uBAAuB,CAAC,WAAW,CAAC;YACpC,+BAA+B,CAAC,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;YAC3E,IAAI,CAAC,UAAU,EAAE;SACjB,CAAC,CAAC;QACH,MAAM,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC5D,MAAM,EAAE,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QACrD,IAAI,MAAM,EAAE,CAAC;YACZ,IAAI,MAAM,CAAC,WAAW,KAAK,WAAW,IAAI,MAAM,CAAC,WAAW,KAAK,WAAW,EAAE,CAAC;gBAC9E,MAAM,IAAI,eAAe,CAAC,wEAAwE,EAAE,UAAU,EAAE;oBAC/G,MAAM,EAAE,iCAAiC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE;iBACrF,CAAC,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAC5B,CAAC;QAED,MAAM,cAAc,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;QAC5D,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC;YACJ,MAAM,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAC/B,SAAS,GAAG,IAAI,CAAC;QAClB,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACjD,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;YACzC,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,uEAAuE;YACvE,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE;gBAChG,UAAU,EAAE,EAAE;gBACd,SAAS,EAAE,MAAM;gBACjB,MAAM,EAAE,qCAAqC;aAC7C,CAAC,CAAC;YACH,IAAI,OAAO,CAAC,WAAW,KAAK,WAAW,IAAI,OAAO,CAAC,WAAW,KAAK,WAAW,EAAE,CAAC;gBAChF,MAAM,IAAI,eAAe,CAAC,wEAAwE,EAAE,UAAU,EAAE;oBAC/G,MAAM,EAAE,iCAAiC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE;iBACrF,CAAC,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QACrC,CAAC;QAED,0EAA0E;QAC1E,6CAA6C;QAC7C,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QACjD,IAAI,MAAM,EAAE,CAAC;YACZ,MAAM,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACrD,IAAI,MAAM,CAAC,WAAW,KAAK,WAAW,IAAI,MAAM,CAAC,WAAW,KAAK,WAAW,EAAE,CAAC;gBAC9E,MAAM,IAAI,eAAe,CAAC,wEAAwE,EAAE,UAAU,EAAE;oBAC/G,MAAM,EAAE,iCAAiC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE;iBACrF,CAAC,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAC5B,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAC1B,MAAM,GAAG;YACR,WAAW;YACX,WAAW;YACX,SAAS,EAAE,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;YACnC,KAAK,EAAE,UAAU;YACjB,UAAU,EAAE,CAAC;YACb,SAAS,EAAE,GAAG;YACd,SAAS,EAAE,GAAG;SACd,CAAC;QACF,MAAM,iBAAiB,GAAG,EAAE,CAAC,IAAI,CAChC,kBAAkB,EAClB,cAAc,EACd,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CACnC,CAAC;QACF,MAAM,EAAE,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACvD,MAAM,IAAI,CAAC,oBAAoB,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;QACzD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QACxD,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,WAAW,KAAK,WAAW,EAAE,CAAC;YACrD,MAAM,IAAI,eAAe,CAAC,4DAA4D,EAAE,UAAU,EAAE;gBACnG,MAAM,EAAE,iCAAiC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE;aACrF,CAAC,CAAC;QACJ,CAAC;QACD,MAAM,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAC5B,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,IAAiB,EAAE,gBAAyB;QAChF,yEAAyE;QACzE,8EAA8E;QAC9E,wDAAwD;QACxD,MAAM,EAAE,GACP,IAAI,CAAC,kBAAkB,KAAK,UAAU;YACrC,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE;YACzB,CAAC,CAAC,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACpD,MAAM,YAAY,GACjB,IAAI,CAAC,kBAAkB,KAAK,UAAU;YACrC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC;YAC/C,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,gBAAgB,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC;QAClE,IAAI,IAAI,CAAC,kBAAkB,KAAK,UAAU,EAAE,CAAC;YAC5C,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,EAAE,CAAC,SAAS,CACjB,YAAY,EACZ,4BAA4B,CAAC;YAC5B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACvB,CAAC,EACF,MAAM,CACN,CAAC;IACH,CAAC;IAED,uFAAuF;IAC/E,KAAK,CAAC,oBAAoB,CAAC,IAAiB;QACnD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3D,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACtD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACvC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW;YACxD,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU;YAC5E,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,kBAAkB,EAAE,OAAO;SAC9D,CAAC,EAAE,MAAM,CAAC,CAAC;IACb,CAAC;IAEO,WAAW,CAAC,EAA8B,EAAE,IAAY,EAAE,GAAW,EAC5E,OAA2D;QAC3D,MAAM,MAAM,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,2EAA2E,CAAC,IAAI,CAAC,QAAQ,CAAC;YAC9F,CAAC,CAAC,QAAQ,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;YAC5H,MAAM,IAAI,eAAe,CAAC,iEAAiE,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QAChI,CAAC;QACD,OAAO,OAAO,CAAC,IAAI,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,EAA8B,EAAE,IAAY;QAC7E,IAAI,CAAC;YAAC,OAAO,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAAC,CAAC;QAC/C,OAAO,MAAM,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YACpE,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO,IAAI,CAAC;YAC3C,MAAM,IAAI,eAAe,CAAC,kDAAkD,EAAE,aAAa,EAAE;gBAC5F,MAAM,EAAE,+BAA+B,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO;aACzE,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;IAEO,KAAK,CAAC,wBAAwB,CAAC,SAAiB,EAAE,UAAU,GAAG,KAAK,EAAE,WAAW,GAAG,IAAI;QAC/F,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,oBAAoB,CAAC,SAAS,CAAC,CAAC;QAChC,MAAM,2BAA2B,GAAG,kBAAkB,CAAC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;QAC5F,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,2BAA2B,CAAC,CAAC;QACrE,MAAM,QAAQ,GACb,CAAC,MAAM,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;YAClD,CAAC,MAAM,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC;QACjD,MAAM,IAAI,GAAG,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC3D,IAAI,MAAM,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,IAAI,IAAI,KAAK,IAAI;gBAAE,MAAM,eAAe,EAAE,CAAC;YAC3C,OAAO,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5E,CAAC;QACD,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,IAAI,eAAe,CAAC,kEAAkE,EAAE,UAAU,EAAE;gBACzG,MAAM,EAAE,+BAA+B,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE;aACjF,CAAC,CAAC;QACJ,CAAC;QACD,MAAM,kBAAkB,GAAG,MAAM,CAAC,kBAAkB,IAAI,OAAO,CAAC;QAChE,IAAI,cAAc,GAAG,KAAK,CAAC;QAC3B,IAAI,aAAa,GAAsC,IAAI,CAAC;QAC5D,IAAI,UAAU,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,MAAM,uBAAuB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;YACrG,aAAa,GAAG,MAAM,CAAC;YACvB,cAAc,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,iBAAiB,IAAI,MAAM,CAAC,KAAK,KAAK,WAAW,CAAC;gBAChG,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,WAAW,KAAK,MAAM,CAAC,oBAAoB,CAAC;QACvF,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACnE,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,KAAK,OAAO,CAAC;QAC3F,MAAM,aAAa,GAAG,kBAAkB,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa;YAC7E,CAAC,CAAC,kBAAkB,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC,CAAC;QACtG,IAAI,CAAC,aAAa;YAAE,OAAO,IAAI,CAAC;QAChC,IAAI,QAAQ,IAAI,kBAAkB,KAAK,OAAO,EAAE,CAAC;YAChD,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,oBAAoB,IAAI,MAAM,CAAC,aAAa,KAAK,aAAa,EAAE,CAAC;gBACnG,MAAM,IAAI,eAAe,CAAC,0EAA0E,EAAE,UAAU,EAAE;oBACjH,MAAM,EAAE,+BAA+B,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE;iBACjF,CAAC,CAAC;YACJ,CAAC;YACD,IAAI,iBAAiB,GAAG,KAAK,CAAC;YAC9B,IAAI,cAAc,IAAI,aAAa,EAAE,OAAO,EAAE,CAAC;gBAC9C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;gBACvE,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;gBACvH,IAAI,aAAa,CAAC,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;oBAC9C,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBAChD,IAAI,WAAW,IAAI,MAAM,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;wBACzD,MAAM,IAAI,eAAe,CAAC,oEAAoE,EAAE,UAAU,EAAE;4BAC3G,MAAM,EAAE,+BAA+B,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE;yBACjF,CAAC,CAAC;oBACJ,CAAC;oBACD,iBAAiB,GAAG,WAAW,CAAC;gBAClC,CAAC;;oBAAM,iBAAiB,GAAG,IAAI,CAAC;YACjC,CAAC;YACD,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC,cAAc,IAAI,MAAM,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;gBACtF,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,CAAC;gBACnG,MAAM,cAAc,GAAG,wBAAwB,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC;gBAC1E,IAAI,CAAC,cAAc,IAAI,cAAc,CAAC,SAAS,KAAK,SAAS;oBAC5D,cAAc,CAAC,WAAW,KAAK,MAAM,CAAC,WAAW,IAAI,cAAc,CAAC,oBAAoB,KAAK,MAAM,CAAC,oBAAoB;oBACxH,cAAc,CAAC,aAAa,KAAK,aAAa,IAAI,cAAc,CAAC,kBAAkB,KAAK,OAAO;oBAC/F,cAAc,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,cAAc,CAAC,UAAU,CAAC,MAAM,KAAK,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;oBAClJ,MAAM,IAAI,eAAe,CAAC,+DAA+D,EAAE,UAAU,EAAE;wBACtG,MAAM,EAAE,+BAA+B,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE;qBACjF,CAAC,CAAC;gBACJ,CAAC;gBACD,MAAM,GAAG,cAAc,CAAC;YACxB,CAAC;QACF,CAAC;QACD,IAAI,CAAC,cAAc,IAAI,CAAC,CAAC,MAAM,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QAC5E,MAAM,IAAI,GAAgB;YACzB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;YACjD,aAAa;YACb,kBAAkB;YAClB,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE;YAC5C,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,EAAE;YACvC,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,QAAQ,EAAE,MAAM,CAAC,QAAQ;SACzB,CAAC;QACF,IAAI,QAAQ,IAAI,kBAAkB,KAAK,OAAO,IAAI,CAAC,cAAc;YAAE,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QACxG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QACrE,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;;;;;OAQG;IACK,KAAK,CAAC,0BAA0B,CACvC,EAA8B,EAC9B,SAAiB;QAEjB,MAAM,UAAU,GAAG,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,CAAC;QACvE,IAAI,UAAU,KAAK,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YAAE,OAAO,IAAI,CAAC;QAErD,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,EAAE,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;QAC1E,MAAM,kBAAkB,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,GAAG,SAAS,OAAO,CAAC,CAAC;QACjF,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,mBAAmB,CAAC,CAAC;QACnE,MAAM,QAAQ,GACb,CAAC,MAAM,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,kBAAkB,CAAC,CAAC;YACxD,CAAC,MAAM,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC,CAAC;QACvD,MAAM,IAAI,GAAG,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC3D,MAAM,MAAM,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,IAAI,IAAI,KAAK,IAAI;gBAAE,MAAM,eAAe,EAAE,CAAC;YAC3C,OAAO,IAAI,CAAC;QACb,CAAC;QACD,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,IAAI,eAAe,CAAC,+DAA+D,EAAE,UAAU,EAAE;gBACtG,MAAM,EAAE,+BAA+B,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE;aACjF,CAAC,CAAC;QACJ,CAAC;QACD,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC/E,OAAO,IAAI,CAAC;QACb,CAAC;QAED,MAAM,eAAe,GAAG,MAAM,CAAC,kBAAkB,IAAI,OAAO,CAAC;QAC7D,MAAM,aAAa,GAClB,eAAe,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,mBAAmB,CAAC;QAC7E,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QAErE,MAAM,IAAI,GAAgB;YACzB,SAAS;YACT,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;YACjD,aAAa;YACb,kBAAkB,EAAE,UAAU;YAC9B,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE;YAC5C,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,EAAE;YACvC,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,QAAQ,EAAE,MAAM,CAAC,QAAQ;SACzB,CAAC;QACF,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QACrE,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;;;;;;;OAUG;IACK,KAAK,CAAC,IAAI,CACjB,aAAqB,EACrB,OAAiB,EACjB,OAAgC,EAAE,EAClC,aAAgC,2BAA2B;QAE3D,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC3B,IAAI,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YAC1B,OAAO;gBACN,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE,EAAE;gBACV,MAAM,EAAE,qCAAqC;gBAC7C,QAAQ,EAAE,KAAK;gBACf,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;gBAChC,OAAO,EAAE,IAAI;aACb,CAAC;QACH,CAAC;QACD,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CACzB,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,EAC3C,IAAI,CAAC,UAAU,CAAC,SAAS,CACzB,CAAC;QACF,MAAM,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC;QAC/B,uEAAuE;QACvE,sEAAsE;QACtE,sEAAsE;QACtE,IAAI,MAAM,GAAyB,IAAI,CAAC;QACxC,IAAI,WAA+C,CAAC;QACpD,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,MAAM,GAAG,CAAC,MAA6B,EAAE,EAAE;YAChD,IAAI,MAAM;gBAAE,WAAW,CAAC,MAAM,CAAC,CAAC;;gBAC3B,WAAW,EAAE,MAAM,EAAE,CAAC;QAC5B,CAAC,CAAC;QACF,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE;YAC1D,QAAQ,GAAG,IAAI,CAAC;YAChB,MAAM,CAAC,SAAS,CAAC,CAAC;QACnB,CAAC,EAAE,SAAS,CAAC,CAAC;QACd,qEAAqE;QACrE,gEAAgE;QAChE,MAAM,OAAO,GAAG,GAAG,EAAE;YACpB,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,eAAe,IAAI,SAAS,CAAC,CAAC;QAC3C,CAAC,CAAC;QACF,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAChE,IAAI,IAAuD,CAAC;QAC5D,IAAI,UAA6C,CAAC;QAClD,IAAI,kBAAqD,CAAC;QAC1D,MAAM,WAAW,GAAG,IAAI,OAAO,CAAkB,CAAC,OAAO,EAAE,EAAE,GAAG,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QACjG,MAAM,WAAW,GAAG,CAAC,MAA6B,EAAE,EAAE;YACrD,IAAI,CAAC,MAAM,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,MAAM;gBAAE,OAAO;YACzE,MAAM,KAAK,GAAG,MAAM,CAAC;YACrB,UAAU,GAAG,MAAM,CAAC;YACpB,iGAAiG;YACjG,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CACpE,GAAG,EAAE,CAAC,SAAS,EACf,CAAC,MAAM,EAAE,EAAE;gBACV,MAAM,OAAO,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;gBACpE,kBAAkB,CAAC,IAAI,eAAe,CAAC,mEAAmE,EAAE,aAAa,EAAE;oBAC1H,MAAM,EAAE,kCAAkC,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO;iBAC5E,CAAC,CAAC,CAAC;gBACJ,OAAO,OAAO,CAAC;YAChB,CAAC,CACD,CAAC;YACF,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QACzG,CAAC,CAAC;QACF,IAAI,CAAC;YACJ,IAAI,CAAC;gBACJ,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,UAAU,EAAE;oBAC1D,OAAO,EAAE,GAAG;oBACZ,IAAI;oBACJ,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,aAAa;oBAC9B,MAAM,EAAE,MAAM;oBACd,MAAM,EAAE,MAAM;oBACd,gFAAgF;oBAChF,QAAQ,EAAE,IAAI;iBACd,EAAE,IAAI,CAAC,GAAG,EAAE;oBACZ,SAAS,EAAE,GAAG,EAAE,CAAC,QAAQ,IAAI,OAAO;oBACpC,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,GAAG,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC;iBACjD,CAAC,CAAC;YACJ,CAAC;YAAC,OAAO,MAAM,EAAE,CAAC;gBACjB,oEAAoE;gBACpE,iDAAiD;gBACjD,IAAI,WAAW,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,EAAE,CAAC;oBAC1C,MAAM,IAAI,eAAe,CAAC,mEAAmE,EAAE,aAAa,EAAE;wBAC7G,MAAM,EAAE,kCAAkC;wBAC1C,SAAS,EAAE,KAAK;wBAChB,KAAK,EAAE,gBAAgB,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;qBAC1D,CAAC,CAAC;gBACJ,CAAC;gBACD,MAAM,eAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YAC/D,CAAC;YACD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACb,uDAAuD;gBACvD,MAAM,SAAS,GAAqB;oBACnC,QAAQ,EAAE,IAAI;oBACd,MAAM,EAAE,EAAE;oBACV,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,gCAAgC,SAAS,IAAI,CAAC,CAAC,CAAC,qCAAqC;oBACxG,QAAQ;oBACR,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;iBAChC,CAAC;gBACF,IAAI,OAAO,IAAI,CAAC,QAAQ;oBAAE,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;gBACnD,OAAO,SAAS,CAAC;YAClB,CAAC;YACD,sEAAsE;YACtE,IAAI,QAAQ,IAAI,OAAO;gBAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,IAAI,SAAS,CAAC,CAAC,CAAC;YACjG,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;gBAClC,OAAO,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CACtF,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UAAmB,EAAE,KAAK,EAAE,CAAC,CACjD;gBACD,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,aAAsB,EAAE,KAAK,EAAE,CAAC,CAAC;aACtE,CAAC,CAAC;YACH,IAAI,OAAO,CAAC,IAAI,KAAK,aAAa;gBAAE,MAAM,OAAO,CAAC,KAAK,CAAC;YACxD,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;YAC7C,IAAI,IAAI;gBAAE,MAAM,IAAI,CAAC;YACrB,MAAM,MAAM,GAAqB;gBAChC,QAAQ,EAAE,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;gBAChD,MAAM;gBACN,MAAM,EACL,QAAQ,IAAI,OAAO;oBAClB,CAAC,CAAC,GAAG,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,gCAAgC,SAAS,IAAI,CAAC,CAAC,CAAC,gCAAgC,EAAE;oBAC5G,CAAC,CAAC,MAAM;gBACX,QAAQ;gBACR,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;aAChC,CAAC;YACF,IAAI,OAAO;gBAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;YACnC,OAAO,MAAM,CAAC;QACf,CAAC;gBAAS,CAAC;YACV,cAAc,EAAE,CAAC;YACjB,IAAI,CAAC,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACnD,IAAI,IAAI;gBAAE,MAAM,IAAI,CAAC;QACtB,CAAC;IACF,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,KAAiC;QACjD,KAAK,GAAG,+BAA+B,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YACrB,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;gBACvB,MAAM,cAAc,CAAC,aAAa,CAAC,CAAC;YACrC,CAAC;YACD,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;gBACzB,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,MAAM,SAAS,GAAG,oBAAoB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACxD,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,IAAI,2BAA2B,CAAC;gBACjG,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAChC,MAAM,cAAc,CAAC,YAAY,CAAC,CAAC;gBACpC,CAAC;gBACD,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;oBAC7D,MAAM,cAAc,CAAC,eAAe,CAAC,CAAC;gBACvC,CAAC;gBACD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;gBACtD,MAAM,aAAa,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;gBACtD,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBAC9F,MAAM,IAAI,eAAe,CAAC,yCAAyC,EAAE,WAAW,EAAE;wBACjF,MAAM,EAAE,kCAAkC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE;qBACpF,CAAC,CAAC;gBACJ,CAAC;gBACD,MAAM,IAAI,GAAgB;oBACzB,SAAS;oBACT,aAAa;oBACb,kBAAkB,EAAE,UAAU;oBAC9B,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE;oBACxB,UAAU;oBACV,WAAW,EAAE,KAAK,CAAC,WAAW;oBAC9B,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;iBACrE,CAAC;gBACF,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;gBACxC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBACnC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;gBACnC,MAAM,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;gBAClD,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC;YACD,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;YACvB,GAAG,KAAK;YACR,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,cAAc,MAAM,CAAC,UAAU,EAAE,EAAE;SAC7E,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAkC;QACnD,KAAK,GAAG,gCAAgC,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,KAAK,GAAG;YACP,GAAG,KAAK;YACR,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,IAAI,2BAA2B;YACzF,aAAa,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,GAAG,KAAK,CAAC,aAAa,EAAE;YAC3E,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;SACrE,CAAC;QACF,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;QACtC,MAAM,iBAAiB,GAAG,4BAA4B,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAC9E,IAAI,CAAC,iBAAiB,CAAC,OAAO;YAAE,MAAM,cAAc,CAAC,aAAa,CAAC,CAAC;QACpE,MAAM,WAAW,GAAG,+BAA+B,CAAC,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;QAChG,yEAAyE;QACzE,yEAAyE;QACzE,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC;QACxC,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACrD,IAAI,OAAO,EAAE,CAAC;YACb,4EAA4E;YAC5E,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;YAC7E,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;gBACrB,MAAM,IAAI,eAAe,CAAC,wEAAwE,EAAE,UAAU,EAAE;oBAC/G,MAAM,EAAE,iCAAiC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE;iBAC/F,CAAC,CAAC;YACJ,CAAC;YACD,OAAO,OAAO,CAAC,OAAO,CAAC;QACxB,CAAC;QACD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,uBAAuB,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC,CAAC;aAC9E,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;aACvC,OAAO,CAAC,GAAG,EAAE;YACb,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,OAAO,KAAK,OAAO,EAAE,CAAC;gBAC/D,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACzC,CAAC;QACF,CAAC,CAAC,CAAC;QACJ,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QACxE,OAAO,OAAO,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,KAAkC;QAC/D,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACrD,IAAI,CAAC,SAAS;YAAE,MAAM,cAAc,CAAC,aAAa,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;YACpD,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;YAC7B,IAAI,MAAM,CAAC,KAAK,KAAK,iBAAiB,IAAI,MAAM,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;gBACxE,MAAM,IAAI,eAAe,CAAC,mDAAmD,EAAE,UAAU,EAAE;oBAC1F,MAAM,EAAE,iCAAiC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE;iBACzG,CAAC,CAAC;YACJ,CAAC;YACD,IAAI,MAAM,CAAC,KAAK,KAAK,oBAAoB,EAAE,CAAC;gBAC3C,MAAM,IAAI,eAAe,CAAC,8DAA8D,EAAE,UAAU,EAAE;oBACrG,MAAM,EAAE,iCAAiC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE;iBACzG,CAAC,CAAC;YACL,CAAC;YACD,IAAI,MAAM,CAAC,KAAK,KAAK,cAAc,IAAI,MAAM,CAAC,KAAK,KAAK,eAAe,EAAE,CAAC;gBACzE,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE;oBAC1C,KAAK,EAAE,oBAAoB;oBAC3B,OAAO,EAAE,kFAAkF;iBAC3F,CAAC,CAAC;gBACF,MAAM,IAAI,eAAe,CAAC,gDAAgD,EAAE,UAAU,EAAE;oBACvF,MAAM,EAAE,iCAAiC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE;iBACzG,CAAC,CAAC;YACL,CAAC;YACD,IAAI,MAAM,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;gBAC9B,MAAM,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;gBACzD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACtC,CAAC;YAED,MAAM,SAAS,GAAG,oBAAoB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACzD,MAAM,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YAClD,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,2BAA2B,CAAC;YACnE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;YACrD,MAAM,iBAAiB,GAAG,KAAK,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC;YACtD,IAAI,iBAAiB,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACrD,MAAM,cAAc,CAAC,YAAY,CAAC,CAAC;YACpC,CAAC;YACD,IAAI,iBAAiB,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;gBACpF,MAAM,cAAc,CAAC,eAAe,CAAC,CAAC;YACxC,CAAC;YAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;YACjE,MAAM,aAAa,GAAG,iBAAiB;gBACtC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC;gBAC/B,CAAC,CAAC,kBAAkB,CAAC,EAAE,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;YAClD,MAAM,kBAAkB,GAAsC,iBAAiB;gBAC9E,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,OAAO,CAAC;YACX,MAAM,WAAW,GAAG,iBAAiB;gBACpC,CAAC,CAAC,aAAa;gBACf,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,SAAS,CAAC,GAAG,EAAE,cAAc,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;YAEtF,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;YACnF,IACC,aAAa,EAAE,WAAW,KAAK,MAAM,CAAC,WAAW;gBACjD,aAAa,CAAC,oBAAoB,KAAK,MAAM,CAAC,WAAW,EACxD,CAAC;gBACF,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;gBACnF,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YACrC,CAAC;YAED,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YAC3D,IAAI,kBAAkB,KAAK,UAAU,EAAE,CAAC;gBACvC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;oBACvC,MAAM,IAAI,eAAe,CAAC,yCAAyC,EAAE,WAAW,EAAE;wBACjF,MAAM,EAAE,kCAAkC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE;qBACpF,CAAC,CAAC;gBACJ,CAAC;gBACD,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBAC1C,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBAC/B,MAAM,cAAc,CAAC,eAAe,CAAC,CAAC;gBACxC,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,MAAM,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAClD,CAAC;YAED,IAAI,MAAM,CAAC,KAAK,KAAK,UAAU,IAAI,MAAM,CAAC,KAAK,KAAK,kBAAkB,EAAE,CAAC;gBACxE,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBAC1E,MAAM,YAAY,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;gBAClD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;gBAC7C,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;oBACpB,IAAI,MAAM,EAAE,CAAC;wBACZ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAC7B,WAAW,EACX,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,EACtC,EAAE,GAAG,EAAE,WAAW,EAAE,EACpB,UAAU,CACV,CAAC;wBACF,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC;4BACtE,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE;gCAC1C,KAAK,EAAE,oBAAoB;gCAC3B,OAAO,EAAE,yEAAyE;6BAClF,CAAC,CAAC;4BACF,MAAM,IAAI,eAAe,CAAC,iEAAiE,EAAE,UAAU,EAAE;gCACxG,MAAM,EAAE,iCAAiC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE;6BACzG,CAAC,CAAC;wBACL,CAAC;oBACF,CAAC;yBAAM,CAAC;wBACP,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;wBAC3C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACxB,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE;gCAC1C,KAAK,EAAE,oBAAoB;gCAC3B,OAAO,EAAE,gEAAgE;6BACzE,CAAC,CAAC;4BACF,MAAM,IAAI,eAAe,CAAC,4DAA4D,EAAE,UAAU,EAAE;gCACnG,MAAM,EAAE,iCAAiC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE;6BACzG,CAAC,CAAC;wBACL,CAAC;wBACD,MAAM,SAAS,GAAG,yBAAyB,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;wBACnE,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;wBAClF,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,GAAG,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;wBACtD,IAAI,KAAK,CAAC,WAAW;4BAAE,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;wBACrE,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;wBAC3C,MAAM,YAAY,GAA4B,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC;wBACnE,IAAI,OAAO;4BAAE,YAAY,CAAC,GAAG,GAAG,OAAO,CAAC;wBACxC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAC7B,WAAW,EACX,SAAS,EACT,YAAY,EACb,UAAU,CACV,CAAC;wBACD,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;4BAC3B,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE;gCAC1C,KAAK,EAAE,oBAAoB;gCAC3B,OAAO,EAAE,sBAAsB;6BAC/B,CAAC,CAAC;4BACH,MAAM,IAAI,eAAe,CAAC,wCAAwC,EAAE,aAAa,EAAE;gCAClF,MAAM,EAAE,+BAA+B,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE;6BACjG,CAAC,CAAC;wBACL,CAAC;oBACF,CAAC;gBACF,CAAC;qBAAM,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;oBAC/D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;oBAC1E,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;wBACzB,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE;4BAC1C,KAAK,EAAE,oBAAoB;4BAC3B,OAAO,EAAE,mCAAmC;yBAC5C,CAAC,CAAC;wBACH,MAAM,IAAI,eAAe,CAAC,qDAAqD,EAAE,aAAa,EAAE;4BAC/F,MAAM,EAAE,+BAA+B,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;yBAC/F,CAAC,CAAC;oBACL,CAAC;gBACF,CAAC;gBACD,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YAC3F,CAAC;YAED,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;YAC7D,IAAI,WAAW,IAAI,SAAS,CAAC,MAAM,CAAC,KAAK,KAAK,cAAc,EAAE,CAAC;gBAC9D,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;gBACtE,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;gBACvE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAC7B,WAAW,EACX,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,EAC1B,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,KAAK,CAAC,UAAU,EAAE,EAC3C,UAAU,CACV,CAAC;gBACD,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;oBAC3B,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE;wBAC1C,KAAK,EAAE,oBAAoB;wBAC3B,OAAO,EAAE,sBAAsB;qBAC/B,CAAC,CAAC;oBACH,MAAM,IAAI,eAAe,CAAC,wCAAwC,EAAE,aAAa,EAAE;wBAClF,MAAM,EAAE,+BAA+B,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE;qBACjG,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YAC9F,CAAC;iBAAM,IAAI,CAAC,WAAW,IAAI,SAAS,CAAC,MAAM,CAAC,KAAK,KAAK,cAAc,EAAE,CAAC;gBACtE,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YAC9F,CAAC;YAED,MAAM,IAAI,GAAgB;gBACzB,SAAS;gBACT,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,oBAAoB,EAAE,MAAM,CAAC,WAAW;gBACxC,aAAa;gBACb,kBAAkB;gBAClB,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,UAAU;gBACV,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;gBACrE,SAAS,EAAE,KAAK,CAAC,SAAS;aAC1B,CAAC;YACF,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,kBAAkB,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAClG,IAAI,kBAAkB,KAAK,OAAO,EAAE,CAAC;gBACpC,IAAI,MAAM,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;oBACpC,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE;wBAC1C,KAAK,EAAE,oBAAoB;wBAC3B,OAAO,EAAE,wFAAwF;qBACjG,CAAC,CAAC;oBACH,MAAM,IAAI,eAAe,CAAC,+CAA+C,EAAE,UAAU,EAAE;wBACtF,MAAM,EAAE,iCAAiC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE;qBACzG,CAAC,CAAC;gBACJ,CAAC;gBACD,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;gBAC5C,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,UAAU,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBACjE,IAAI,CAAC;wBACJ,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,CAAC;wBAClF,MAAM,QAAQ,GAAG,wBAAwB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;wBAC/D,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,IAAI,QAAQ,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW,IAAI,QAAQ,CAAC,oBAAoB,KAAK,IAAI,CAAC,oBAAoB,IAAI,QAAQ,CAAC,aAAa,KAAK,aAAa,EAAE,CAAC;4BAC3M,MAAM,IAAI,eAAe,CAAC,mDAAmD,EAAE,UAAU,EAAE;gCAC1F,MAAM,EAAE,+BAA+B,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE;6BACjF,CAAC,CAAC;wBACJ,CAAC;wBACD,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;oBACvC,CAAC;oBAAC,OAAO,MAAM,EAAE,CAAC;wBACjB,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,oBAAoB,EAAE,OAAO,EAAE,sHAAsH,EAAE,CAAC,CAAC;wBAC7M,MAAM,IAAI,eAAe,CAAC,2EAA2E,EAAE,aAAa,EAAE;4BACrH,MAAM,EAAE,+BAA+B;4BACvC,SAAS,EAAE,KAAK;4BAChB,KAAK,EAAE,gBAAgB,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;yBAC1D,CAAC,CAAC;oBACJ,CAAC;gBACF,CAAC;YACF,CAAC;YACD,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YACnF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YACnC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAEnC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,0BAA0B,EAAE;gBAC3C,SAAS;gBACT,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,aAAa;gBACb,QAAQ,EAAE,UAAU,CAAC,IAAI;gBACzB,YAAY,EAAE,KAAK,CAAC,YAAY;aAChC,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,SAAiB;QAC7B,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,oBAAoB,CAAC,SAAS,CAAC,CAAC;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC,CAAC;QAC9F,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,MAAM,IAAI,eAAe,CAAC,2CAA2C,EAAE,WAAW,EAAE;gBACnF,MAAM,EAAE,kCAAkC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE;aACpF,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,QAAQ;QACb,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAAE,OAAO,EAAE,CAAC;QAC/C,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;QAC9B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YAChD,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,IAAI,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC;gBAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpF,CAAC;QACD,MAAM,YAAY,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QACvD,IAAI,MAAM,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;YACnC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;gBACjD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC3D,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;oBACvD,IAAI,eAAe,CAAC,SAAS,CAAC;wBAAE,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACpD,CAAC;YACF,CAAC;QACF,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;YAChC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;YAC1E,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1C,CAAC,CAAC,CACF,CAAC;QACF,OAAO,OAAO;aACZ,MAAM,CAAC,CAAC,MAAM,EAA+B,EAAE,CAAC,MAAM,KAAK,IAAI,CAAC;aAChE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,SAAiB,EAAE,KAAsB;QACzD,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC1C,KAAK,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;QACpC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,IAAI,CAAC,QAAQ;YAAE,MAAM,aAAa,CAAC,SAAS,CAAC,CAAC;QAClD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC3D,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG;YACpB,CAAC,CAAC,kBAAkB,CAAC,EAAE,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,GAAG,CAAC;YACvD,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC;QAEtB,IAAI,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YAC3B,OAAO;gBACN,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE,EAAE;gBACV,MAAM,EAAE,qCAAqC;gBAC7C,QAAQ,EAAE,KAAK;gBACf,UAAU,EAAE,CAAC;gBACb,OAAO,EAAE,IAAI;aACb,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACtB,qEAAqE;YACrE,iEAAiE;YACjE,+DAA+D;YAC/D,oEAAoE;YACpE,4DAA4D;YAC5D,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;YACnC,MAAM,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;YACrC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,UAAU,EAAE;gBAC5E,OAAO,EAAE,GAAG;gBACZ,IAAI;gBACJ,GAAG;gBACH,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE,MAAM;gBACd,8DAA8D;gBAC9D,QAAQ,EAAE,IAAI;aACd,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;YACd,MAAM,KAAK,GAAmB;gBAC7B,MAAM;gBACN,IAAI;gBACJ,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE;gBACxB,MAAM,EAAE,EAAE;gBACV,QAAQ,EAAE,CAAC;gBACX,MAAM,EAAE,EAAE;aACV,CAAC;YACF,IAAI,KAAK,CAAC,GAAG;gBAAE,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;YACrC,gGAAgG;YAChG,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9D,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9D,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;gBAClC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;gBACtB,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;YACvB,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE;gBACb,MAAM,OAAO,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;gBACpE,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;gBACrB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,+CAA+C,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC/F,OAAO,OAAO,CAAC;YAChB,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YAC5C,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,4BAA4B,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACpF,OAAO;gBACN,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE,EAAE;gBACV,MAAM,EAAE,EAAE;gBACV,QAAQ,EAAE,KAAK;gBACf,UAAU,EAAE,CAAC;gBACb,MAAM;gBACN,OAAO,EAAE,IAAI;aACb,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC,IAAI,CACf,IAAI,CAAC,aAAa,EAClB,KAAK,CAAC,OAAO,EACb,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EACzE,IAAI,CAAC,UAAU,CACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,SAAiB;QAC9C,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACpC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YAC3D,MAAM,IAAI,GAA0B;gBACnC,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG;aACnB,CAAC;YACF,IAAI,KAAK,CAAC,GAAG;gBAAE,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;YACpC,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK;gBAAE,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC;YACpE,OAAO,IAAI,CAAC;QACb,CAAC,CAAC,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACK,eAAe,CAAC,SAAiB,EAAE,KAAqB,EAAE,MAAiC,EAAE,MAAyC;QAC7I,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO;QAC5B,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;QACzC,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;YACrD,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YACtD,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YACjE,IAAI,CAAC;gBACJ,SAAS,CAAC;oBACT,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;oBACjC,IAAI,IAAI,CAAC,IAAI;wBAAE,OAAO;oBACtB,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC;oBACpB,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;oBACjD,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,qBAAqB;wBAAE,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;gBACvE,CAAC;YACF,CAAC;oBAAS,CAAC;gBACV,SAAS,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACrD,CAAC;QACF,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACjB,IAAI,IAAI,CAAC,EAAE;gBAAE,OAAO;YACpB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,8CAA8C,EAAE;gBAC7D,SAAS;gBACT,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,OAAO,EAAE,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC;aACrC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,SAAiB,EAAE,MAAc;QAC9D,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACpC,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;QACtG,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,MAAM,IAAI,eAAe,CAAC,sDAAsD,EAAE,WAAW,EAAE;gBAC9F,MAAM,EAAE,gCAAgC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE;aAC/E,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,SAAiB,EAAE,MAAc,EAAE,KAAkC;QAChG,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QAChC,MAAM,EAAE,KAAK,EAAE,GAAG,+BAA+B,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QAC/D,OAAO,qBAAqB,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAC3F,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,SAAiB,EAAE,MAAc,EAAE,KAAiC;QAC/F,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QAChC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,+BAA+B,CAAC,KAAK,CAAC,CAAC;QACpE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE;YAC5F,SAAS;YACT,MAAM,EAAE,8BAA8B;SACtC,CAAC,CAAC,CAAC;QACJ,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,MAAM,MAAM,CAAC,KAAK,CAAC;QAC7E,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;YACtB,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;YACnC,qFAAqF;YACrF,yEAAyE;YACzE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;gBACxE,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACjC,CAAC,EAAE,EAAE,SAAS,EAAE,wBAAwB,EAAE,MAAM,EAAE,gCAAgC,EAAE,CAAC,CAAC,CAAC;YACvF,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,KAAK,CAAC;gBAAE,MAAM,MAAM,CAAC,KAAK,CAAC;QAC9E,CAAC;QACD,OAAO,qBAAqB,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,SAAiB,EAAE,MAAc,EAAE,MAAe;QAC7E,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QAChC,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACpC,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACpC,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;QACtG,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAC;QACzB,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK;YAAE,OAAO,IAAI,CAAC;QACzC,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAC5B,MAAM,IAAI,eAAe,CAAC,yCAAyC,EAAE,aAAa,EAAE;gBACnF,MAAM,EAAE,kCAAkC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE;aACjF,CAAC,CAAC;QACJ,CAAC;QACD,IAAI,CAAC;YACJ,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YACjB,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;YACrB,MAAM,IAAI,eAAe,CAAC,8CAA8C,EAAE,aAAa,EAAE;gBACxF,MAAM,EAAE,kCAAkC;gBAC1C,SAAS,EAAE,KAAK;gBAChB,OAAO,EAAE,EAAE,MAAM,EAAE;gBACnB,KAAK,EAAE,gBAAgB,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;aAC1D,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,SAAiB;QAC5B,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC9C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;YAC1D,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK;gBAAE,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACxF,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAC9B,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,SAAiB;QAC7B,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC1B,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,SAAiB,EAAE,IAAY;QAC7C,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACjD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC3D,MAAM,GAAG,GAAG,kBAAkB,CAAC,EAAE,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAC7D,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAChD,OAAO,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,SAAiB,EAAE,IAAY,EAAE,OAAe;QAC/D,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC1C,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QACzD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACjD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC3D,MAAM,GAAG,GAAG,kBAAkB,CAAC,EAAE,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAC7D,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,SAAiB,EAAE,KAAqB;QACvD,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC1C,KAAK,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACjD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC3D,0DAA0D;QAC1D,kBAAkB,CAAC,EAAE,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACvD,yEAAyE;QACzE,sEAAsE;QACtE,MAAM,SAAS,GAAG,kBAAkB,CACnC,EAAE,EACF,IAAI,CAAC,aAAa,EAClB,gBAAgB,MAAM,CAAC,UAAU,EAAE,OAAO,CAC1C,CAAC;QACF,MAAM,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAClD,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAC7B,IAAI,CAAC,aAAa,EAClB,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,EAC3B,EAAE,EACF,IAAI,CAAC,UAAU,CACf,CAAC;YACF,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,eAAe,CAAC,wCAAwC,EAAE,eAAe,EAAE;oBACpF,MAAM,EAAE,8BAA8B,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE;iBAChG,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;gBAAS,CAAC;YACV,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5B,CAAC;IACF,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,SAAiB,EAAE,KAAoB;QACrD,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC1C,KAAK,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACjD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC3D,+EAA+E;QAC/E,MAAM,SAAS,GAAG,kBAAkB,CACnC,EAAE,EACF,IAAI,CAAC,aAAa,EAClB,gBAAgB,MAAM,CAAC,UAAU,EAAE,OAAO,CAC1C,CAAC;QACF,MAAM,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAClD,IAAI,CAAC;YACJ,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK;gBACvB,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC;gBACxC,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;YAC/B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YAC9E,OAAO;gBACN,EAAE,EAAE,MAAM,CAAC,QAAQ,KAAK,CAAC;gBACzB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;aACzB,CAAC;QACF,CAAC;gBAAS,CAAC;YACV,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC7B,CAAC;IACF,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,SAAiB;QAChC,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACjD,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC7C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,qBAAqB,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC;YAC3G,IAAI,CAAC,IAAI,CACR,IAAI,CAAC,aAAa,EAClB,CAAC,KAAK,EAAE,qBAAqB,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,CAAC,EACnE,EAAE,EACF,IAAI,CAAC,UAAU,CACf;SACD,CAAC,CAAC;QACH,IAAI,SAAS,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,eAAe,CAAC,6CAA6C,EAAE,aAAa,EAAE;gBACvF,MAAM,EAAE,+BAA+B,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE;aACpG,CAAC,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,MAAM,SAAS,GAAa,EAAE,CAAC;QAC/B,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACjD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;gBAAE,SAAS;YAC3B,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG;gBAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAC5C,CAAC;gBACL,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG;oBAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtC,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG;oBAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,CAAC;QACF,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,MAAM,EAAE,CAAC;IAChF,CAAC;IAEO,KAAK,CAAC,eAAe,CAAI,QAAgB,EAAE,EAAoB,EAAE,MAAoB;QAC5F,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,GAAG,GAAG,KAAK,IAAgB,EAAE;YAClC,IAAI,QAAQ;gBAAE,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC;YAC3C,MAAM,EAAE,cAAc,EAAE,CAAC;YACzB,OAAO,EAAE,EAAE,CAAC;QACb,CAAC,CAAC;QACF,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC5C,IAAI,CAAC;YACJ,OAAO,MAAM,OAAO,CAAC;QACtB,CAAC;gBAAS,CAAC;YACV,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,OAAO,EAAE,CAAC;gBACpD,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACvC,CAAC;QACF,CAAC;IACF,CAAC;IAEO,KAAK,CAAC,sBAAsB,CACnC,IAAiB,EACjB,KAAgB,EAChB,MAAoB;QAEpB,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACtD,CAAC;QACD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC3D,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CACjC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;YAC3B,MAAM,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,kBAAkB,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;YACpE,IAAI,OAAO,GAAG,GAAG,CAAC;YAClB,OAAO,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAC1E,MAAM,EAAE,cAAc,EAAE,CAAC;gBACzB,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;gBACzD,MAAM,EAAE,cAAc,EAAE,CAAC;gBACzB,IAAI,MAAM,EAAE,CAAC;oBACZ,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;gBAClC,CAAC;gBACD,MAAM,MAAM,GAAG,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;gBACjD,IAAI,MAAM,KAAK,OAAO;oBAAE,MAAM;gBAC9B,OAAO,GAAG,MAAM,CAAC;YAClB,CAAC;YACD,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;QACnC,CAAC,CAAC,CACF,CAAC;QACF,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC;QACvC,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;QACjG,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;YACzC,IAAI,GAAG,KAAK,UAAU;gBAAE,OAAO,GAAG,CAAC;YACnC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,GAAG,CAAC;YACxE,OAAO,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAChE,CAAC,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,SAAiB,EAAE,KAAqB,EAAE,UAA4B,EAAE;QACvF,MAAM,EAAE,MAAM,EAAE,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAClD,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC1C,KAAK,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACjD,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC3F,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACxE,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;YAC/C,MAAM,QAAQ,GAAG,KAAK,EACrB,SAAiF,EACjF,OAAiB,EACW,EAAE;gBAC9B,MAAM,EAAE,cAAc,EAAE,CAAC;gBACzB,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE,CACjC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,CAClG,CAAC;gBACF,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;oBACjD,MAAM,IAAI,eAAe,CAAC,sCAAsC,EAAE,aAAa,EAAE;wBAChF,MAAM,EAAE,+BAA+B;wBACvC,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE;qBAC5E,CAAC,CAAC;gBACJ,CAAC;gBACD,OAAO,OAAO,CAAC,KAAK,CAAC;YACtB,CAAC,CAAC;YACF,IAAI,cAAc,GAAG,KAAK,CAAC;YAC3B,IAAI,gBAAgB,EAAE,CAAC;gBACtB,MAAM,QAAQ,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC;gBACnE,cAAc,GAAG,IAAI,CAAC;YACvB,CAAC;iBAAM,CAAC;gBACP,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,uBAAuB,EAAE;oBAC3D,KAAK,EAAE,qBAAqB,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa;iBAC/D,CAAC,CAAC;gBACH,IAAI,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC5C,MAAM,OAAO,GACZ,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;oBACtF,MAAM,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;oBACnC,cAAc,GAAG,IAAI,CAAC;gBACvB,CAAC;YACF,CAAC;YACD,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,sBAAsB,CAAC,CAAC;YACzD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBAClB,MAAM,WAAW,GAAG,0BAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;gBACzE,IAAI,WAAW,EAAE,CAAC;oBACjB,UAAU,CAAC,IAAI,CACd,IAAI,EACJ,aAAa,WAAW,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,EAAE,EACrC,IAAI,EACJ,cAAc,WAAW,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,EAAE,CACtC,CAAC;gBACH,CAAC;YACF,CAAC;YACD,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAC/C,IAAI,KAAK,CAAC,MAAM;gBAAE,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;YAC5D,IAAI,gBAAgB,EAAE,CAAC;gBACtB,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,QAAQ,CAAC,CAAC;YACpC,CAAC;YACD,IAAI,CAAC;gBACJ,MAAM,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;YAC1C,CAAC;YAAC,OAAO,OAAO,EAAE,CAAC;gBAClB,IAAI,cAAc,EAAE,CAAC;oBACpB,MAAM,SAAS,GAAG,gBAAgB;wBACjC,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;wBACnD,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;oBAClC,sFAAsF;oBACtF,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;oBACnG,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;wBAC7C,MAAM,IAAI,eAAe,CAAC,0CAA0C,EAAE,aAAa,EAAE;4BACpF,MAAM,EAAE,kCAAkC,EAAE,SAAS,EAAE,KAAK;4BAC5D,OAAO,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE;4BACrF,KAAK,EAAE,OAAO;yBACd,CAAC,CAAC;oBACJ,CAAC;gBACF,CAAC;gBACD,MAAM,OAAO,CAAC;YACf,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,iBAAiB,EAAE;gBAC9C,KAAK,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM;aACjD,CAAC,CAAC;YACH,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;QAC7D,CAAC,EAAE,MAAM,CAAC,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiB,EAAE,QAAsB,EAAE;QACxD,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC1C,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QAEjD,4EAA4E;QAC5E,2EAA2E;QAC3E,6EAA6E;QAC7E,IAAI,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,sBAAsB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACrE,UAAU,GAAG,CAAC,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,SAAS,CAAC;QAClF,CAAC;QACD,MAAM,IAAI,GAAG,yBAAyB,CAAC,UAAU,CAAC,CAAC;QAEnD,MAAM,IAAI,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC3C,IAAI,KAAK,CAAC,WAAW;YAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,KAAK,CAAC,MAAM;YAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,KAAK,CAAC,MAAM;YAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC1C,MAAM,WAAW,GAA4B,EAAE,CAAC;QAChD,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,WAAW,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QACjE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAC7B,IAAI,CAAC,aAAa,EAClB,IAAI,EACJ,WAAW,EACX,IAAI,CAAC,UAAU,CACf,CAAC;QACF,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,eAAe,CAAC,2CAA2C,EAAE,aAAa,EAAE;gBACrF,MAAM,EAAE,+BAA+B,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE;aACjG,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,SAAiB,EAAE,KAAsB;QACzD,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC1C,KAAK,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;QACpC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChF,yEAAyE;QACzE,iDAAiD;QACjD,MAAM,UAAU,GAAG,oBAAoB,KAAK,CAAC,IAAI,EAAE,CAAC;QACpD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACxC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,SAAiB;QAC/B,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC1C,oBAAoB,CAAC,SAAS,CAAC,CAAC;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAG,KAAK,EAAE,kBAAkB,KAAK,OAAO,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,OAAO;YAC5H,CAAC,CAAC,MAAM,IAAI,CAAC,wBAAwB,CAAC,SAAS,EAAE,IAAI,CAAC;YACtD,CAAC,CAAC,KAAK,IAAI,MAAM,IAAI,CAAC,wBAAwB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,uBAAuB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3F,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC3E,MAAM,SAAS,GAAG,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7E,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;YAC3B,MAAM,OAAO,GAAG,SAAS,EAAE,MAAM,IAAI,MAAM,CAAC;YAC5C,MAAM,eAAe,GAAG,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,KAAK,iBAAiB,IAAI,OAAO,CAAC,KAAK,KAAK,WAAW,CAAC;gBACxG,OAAO,CAAC,SAAS,KAAK,SAAS,IAAI,OAAO,CAAC,WAAW,KAAK,IAAI,CAAC,oBAAoB,CAAC;YACtF,IAAI,CAAC,eAAe;gBAAE,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC1D,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC1D,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK;oBAAE,SAAS;gBACtC,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;oBAC5B,MAAM,IAAI,eAAe,CAAC,yCAAyC,EAAE,aAAa,EAAE;wBACnF,MAAM,EAAE,kCAAkC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE;qBAC/F,CAAC,CAAC;gBACJ,CAAC;gBACF,IAAI,CAAC;oBACJ,sEAAsE;oBACtE,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;wBAC5C,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBACjC,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;oBACzB,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,8BAA8B,EAAE,CAAC,CAAC;gBACjE,CAAC;gBAAC,OAAO,MAAM,EAAE,CAAC;oBACjB,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;oBACrB,MAAM,IAAI,eAAe,CAAC,4CAA4C,EAAE,aAAa,EAAE;wBACtF,MAAM,EAAE,kCAAkC;wBAC1C,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE;wBACjC,KAAK,EAAE,gBAAgB,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;qBAC1D,CAAC,CAAC;gBACL,CAAC;YACF,CAAC;YACD,IAAI,SAAS;gBAAE,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YAC5G,IAAI,IAAI,CAAC,kBAAkB,KAAK,OAAO,EAAE,CAAC;gBACzC,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC3D,wBAAwB,CACvB,EAAE,EACF,MAAM,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,EACjD,SAAS,EACT,IAAI,CAAC,aAAa,CAClB,CAAC;gBACF,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC3E,IAAI,CAAC,SAAS;wBAAE,MAAM,IAAI,eAAe,CAAC,qDAAqD,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;oBACnI,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;oBAC/D,IAAI,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC;oBACvC,IAAI,CAAC,OAAO,EAAE,CAAC;wBACd,MAAM,WAAW,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;wBAC7D,MAAM,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;wBACjD,MAAM,UAAU,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;wBAC7D,6EAA6E;wBAC7E,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;wBAC3B,OAAO,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;wBACtE,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;oBACzD,CAAC;oBACD,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;oBACtE,IAAI,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;wBAChC,MAAM,CAAC,cAAc,EAAE,gBAAgB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;wBACrH,IAAI,cAAc,IAAI,gBAAgB;4BAAE,MAAM,IAAI,eAAe,CAAC,mEAAmE,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;wBACzK,IAAI,cAAc;4BAAE,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;wBACpE,IAAI,cAAc,IAAI,gBAAgB,EAAE,CAAC;4BACxC,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC;4BAC7E,MAAM,KAAK,GAAG,wBAAwB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;4BAC1D,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,KAAK,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW;gCACpF,KAAK,CAAC,oBAAoB,KAAK,IAAI,CAAC,oBAAoB,IAAI,KAAK,CAAC,aAAa,KAAK,IAAI,CAAC,aAAa;gCACtG,KAAK,CAAC,kBAAkB,KAAK,OAAO,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;gCACjI,MAAM,IAAI,eAAe,CAAC,oEAAoE,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;4BACnI,CAAC;wBACF,CAAC;wBACD,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,gBAAgB,IAAI,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;wBAChG,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;oBACzD,CAAC;oBACD,IAAI,OAAO,CAAC,KAAK,KAAK,aAAa,EAAE,CAAC;wBACrC,IAAI,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC;4BAAE,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;wBAClF,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;wBAC3C,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;oBACzD,CAAC;gBACF,CAAC;;oBAAM,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAChE,CAAC;iBAAM,CAAC;gBACP,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;gBACnC,IAAI,CAAC;oBAAC,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC;gBAAC,CAAC;gBAClE,OAAO,MAAM,EAAE,CAAC;oBACf,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBACjD,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;oBACzC,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ;wBAAE,MAAM,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACnE,CAAC;YACH,CAAC;YACD,IAAI,SAAS;gBAAE,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YACtG,IAAI,IAAI,CAAC,kBAAkB,KAAK,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;gBAClH,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;gBAChE,IAAI,MAAM,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC;oBAAE,MAAM,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACtE,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAClC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAChC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,wBAAwB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;QACzD,CAAC,CAAC;QACF,OAAO,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IAClF,CAAC;IAEO,QAAQ,CAAC,IAAiB;QACjC,OAAO;YACN,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;SACzB,CAAC;IACH,CAAC;CACD;AAED,2DAA2D;AAC3D,SAAS,aAAa,CAAC,SAAiB;IACvC,OAAO,IAAI,eAAe,CAAC,wDAAwD,EAAE,UAAU,EAAE;QAChG,MAAM,EAAE,qBAAqB;QAC7B,SAAS,EAAE,KAAK;QAChB,OAAO,EAAE,EAAE,SAAS,EAAE;KACtB,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,uBAAwB,SAAQ,mBAAmB;IACxD,YAAY,UAA0D,EAAE,OAAoB;QAC3F,KAAK,CACJ,gCAAgC,CAAC,KAAK,CAAC,UAAU,IAAI,6BAA6B,CAAC,EACnF,OAAO,CAAC,OAAO,CACf,CAAC;IACH,CAAC;CACD;AAED,eAAe,2BAA2B,CAAC;IAC1C,IAAI,EAAE,oBAAoB;IAC1B,EAAE,EAAE,6BAA6B,CAAC,EAAE;IACpC,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE;IACtC,cAAc,EAAE,uBAAuB;CACvC,CAAC,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * `agent/code-session` runtime kind.
3
+ *
4
+ * Registers the descriptor schema so the runtime can validate
5
+ * `agent/code-session` descriptors and feature code can
6
+ * `runtime.query('agent/code-session')` without a "Kind not registered" error.
7
+ * Impl plugins (consumer Bun-on-a-Host, cloud Cloudflare Sandbox adapter)
8
+ * register loaders against this kind id.
9
+ */
10
+ import type { RuntimeKindDescriptor, KindContext } from '@vibesdotdev/kernel/schemas/kind';
11
+ import { type AgentCodeSessionDescriptor } from './agent-code-session.descriptor.ts';
12
+ import type { CodeSessionInterface } from './interfaces/code-session.ts';
13
+ export declare const agentCodeSessionKind: RuntimeKindDescriptor<AgentCodeSessionDescriptor, CodeSessionInterface, KindContext>;
14
+ export default agentCodeSessionKind;
15
+ //# sourceMappingURL=agent-code-session.kind.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-code-session.kind.d.ts","sourceRoot":"","sources":["../../src/code-session/agent-code-session.kind.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC3F,OAAO,EAEN,KAAK,0BAA0B,EAC/B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEzE,eAAO,MAAM,oBAAoB,EAAE,qBAAqB,CACvD,0BAA0B,EAC1B,oBAAoB,EACpB,WAAW,CAKX,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * `agent/code-session` runtime kind.
3
+ *
4
+ * Registers the descriptor schema so the runtime can validate
5
+ * `agent/code-session` descriptors and feature code can
6
+ * `runtime.query('agent/code-session')` without a "Kind not registered" error.
7
+ * Impl plugins (consumer Bun-on-a-Host, cloud Cloudflare Sandbox adapter)
8
+ * register loaders against this kind id.
9
+ */
10
+ import { AgentCodeSessionDescriptorSchema } from "./agent-code-session.descriptor.js";
11
+ export const agentCodeSessionKind = {
12
+ id: 'agent/code-session',
13
+ descriptorSchema: AgentCodeSessionDescriptorSchema,
14
+ contexts: []
15
+ };
16
+ export default agentCodeSessionKind;
17
+ //# sourceMappingURL=agent-code-session.kind.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-code-session.kind.js","sourceRoot":"","sources":["../../src/code-session/agent-code-session.kind.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EACN,gCAAgC,EAEhC,MAAM,oCAAoC,CAAC;AAG5C,MAAM,CAAC,MAAM,oBAAoB,GAI7B;IACH,EAAE,EAAE,oBAAoB;IACxB,gBAAgB,EAAE,gCAAgC;IAClD,QAAQ,EAAE,EAAE;CACZ,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Agent Code Session — runtime plugin (kind + docs only)
3
+ *
4
+ * Declares the `agent/code-session` kind so cloud and consumer surfaces can
5
+ * resolve it. The IMPLEMENTATIONS live in disjoint, scope-gated sibling plugins
6
+ * that the owning scope's vibes.config imports:
7
+ * - consumer (Bun-on-a-Host): `@vibesdotdev/agent-execution/code-session/consumer.plugin`
8
+ * - cloud: provider-owned Integrations plugin
9
+ *
10
+ * Keeping the consumer loader out of THIS plugin means cloud apps can load it to
11
+ * declare the kind without dragging the Node-only consumer impl (node:crypto,
12
+ * runtime-environment-bun, Bun.spawn) into the workerd bundle — so no
13
+ * scope-impl-exclusion stub is needed for code-session.
14
+ */
15
+ export declare const agentCodeSessionPlugin: import("@vibesdotdev/kernel").RuntimePlugin;
16
+ export default agentCodeSessionPlugin;
17
+ //# sourceMappingURL=agent-code-session.plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-code-session.plugin.d.ts","sourceRoot":"","sources":["../../src/code-session/agent-code-session.plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAMH,eAAO,MAAM,sBAAsB,6CASjC,CAAC;AAEH,eAAe,sBAAsB,CAAC"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Agent Code Session — runtime plugin (kind + docs only)
3
+ *
4
+ * Declares the `agent/code-session` kind so cloud and consumer surfaces can
5
+ * resolve it. The IMPLEMENTATIONS live in disjoint, scope-gated sibling plugins
6
+ * that the owning scope's vibes.config imports:
7
+ * - consumer (Bun-on-a-Host): `@vibesdotdev/agent-execution/code-session/consumer.plugin`
8
+ * - cloud: provider-owned Integrations plugin
9
+ *
10
+ * Keeping the consumer loader out of THIS plugin means cloud apps can load it to
11
+ * declare the kind without dragging the Node-only consumer impl (node:crypto,
12
+ * runtime-environment-bun, Bun.spawn) into the workerd bundle — so no
13
+ * scope-impl-exclusion stub is needed for code-session.
14
+ */
15
+ import { createRuntimePlugin } from '@vibesdotdev/kernel';
16
+ import { agentCodeSessionKind } from "./agent-code-session.kind.js";
17
+ import agentCodeSessionDocsDescriptor from "./docs/agent-code-session.docs.descriptor.js";
18
+ export const agentCodeSessionPlugin = createRuntimePlugin({
19
+ id: 'agent-code-session',
20
+ name: 'Agent Code Session',
21
+ description: 'Declares the agent/code-session kind for code-session resolution. The canonical runtime/client for code-session CRUD is @vibesdotdev/code-sessions (id: code-sessions). Implementations ship in the consumer plugin and provider-owned Integrations plugins.',
22
+ dependencies: ['runtime-client'],
23
+ kinds: [agentCodeSessionKind],
24
+ descriptors: [agentCodeSessionDocsDescriptor],
25
+ loaders: []
26
+ });
27
+ export default agentCodeSessionPlugin;
28
+ //# sourceMappingURL=agent-code-session.plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-code-session.plugin.js","sourceRoot":"","sources":["../../src/code-session/agent-code-session.plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,8BAA8B,MAAM,8CAA8C,CAAC;AAE1F,MAAM,CAAC,MAAM,sBAAsB,GAAG,mBAAmB,CAAC;IACzD,EAAE,EAAE,oBAAoB;IACxB,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EACV,8PAA8P;IAC/P,YAAY,EAAE,CAAC,gBAAgB,CAAC;IAChC,KAAK,EAAE,CAAC,oBAAoB,CAAC;IAC7B,WAAW,EAAE,CAAC,8BAA8B,CAAC;IAC7C,OAAO,EAAE,EAAE;CACX,CAAC,CAAC;AAEH,eAAe,sBAAsB,CAAC"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Code-session billing gate enforcement.
3
+ *
4
+ * The billing posture of a code session is a property of its EXECUTION SURFACE,
5
+ * declared on the resolved descriptor (`billingGates`) — NOT a `hostTarget.kind`
6
+ * conditional in the endpoint. This enforces whatever the resolved descriptor
7
+ * declares, generically:
8
+ *
9
+ * - a HOST session (fleet machine / consumer Host) declares NO gates → free,
10
+ * because it runs on the user's own hardware (rated zero by the engine);
11
+ * - the CLOUD session declares the build-mode + sandbox-quota gates because it
12
+ * runs on OUR metered compute.
13
+ *
14
+ * The billing check is INJECTED (`BillingGateCheck`) so this stays in the
15
+ * runtime tier with no dependency on the account billing client — the platform
16
+ * route wires its `checkQuota` in. A new surface gates itself by declaring
17
+ * `billingGates` on its descriptor; this function and the route never change.
18
+ */
19
+ import { CapabilityError, type CapabilityErrorOptions } from '@vibesdotdev/kernel';
20
+ import type { AgentCodeSessionDescriptor } from '../agent-code-session.descriptor.ts';
21
+ /**
22
+ * Resolve whether a billing feature is currently allowed for the acting owner.
23
+ * Mirrors the account billing client's `checkQuota(...) → { allowed }` shape;
24
+ * the caller binds userId/orgId/quantity.
25
+ */
26
+ export type BillingGateCheck = (feature: string) => Promise<{
27
+ allowed: boolean;
28
+ }>;
29
+ /** A declared gate DENIED the session (→ 403 with `message`). */
30
+ export declare class CodeSessionBillingDenied extends CapabilityError {
31
+ readonly feature: string;
32
+ readonly kind: "CodeSessionBillingDenied";
33
+ constructor(message: string, feature: string);
34
+ }
35
+ /**
36
+ * A gate check could not be completed (billing transport failure). Fail CLOSED —
37
+ * the caller maps this to a 403 "try again shortly", never letting a paid gate
38
+ * open when the billing backend is unreachable.
39
+ */
40
+ export declare class CodeSessionBillingUnavailable extends CapabilityError {
41
+ readonly feature: string;
42
+ readonly kind: "CodeSessionBillingUnavailable";
43
+ constructor(feature: string, options: Pick<CapabilityErrorOptions, 'cause'>);
44
+ }
45
+ /**
46
+ * Enforce every billing gate the resolved descriptor declares, in order. A
47
+ * descriptor with no gates (host execution — free) returns immediately without
48
+ * a single billing call. Throws `CodeSessionBillingDenied` on the first denied
49
+ * gate and `CodeSessionBillingUnavailable` if a check itself fails.
50
+ */
51
+ export declare function enforceCodeSessionBillingGates(descriptor: Pick<AgentCodeSessionDescriptor, 'billingGates'>, check: BillingGateCheck): Promise<void>;
52
+ //# sourceMappingURL=gates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gates.d.ts","sourceRoot":"","sources":["../../../src/code-session/billing/gates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EACN,eAAe,EAGf,KAAK,sBAAsB,EAC3B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AAEtF;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAElF,iEAAiE;AACjE,qBAAa,wBAAyB,SAAQ,eAAe;IAI3D,QAAQ,CAAC,OAAO,EAAE,MAAM;IAHzB,QAAQ,CAAC,IAAI,EAAG,0BAA0B,CAAU;gBAEnD,OAAO,EAAE,MAAM,EACN,OAAO,EAAE,MAAM;CASzB;AAED;;;;GAIG;AACH,qBAAa,6BAA8B,SAAQ,eAAe;IAGhE,QAAQ,CAAC,OAAO,EAAE,MAAM;IAFzB,QAAQ,CAAC,IAAI,EAAG,+BAA+B,CAAU;gBAE/C,OAAO,EAAE,MAAM,EACxB,OAAO,EAAE,IAAI,CAAC,sBAAsB,EAAE,OAAO,CAAC;CAU/C;AAED;;;;;GAKG;AACH,wBAAsB,8BAA8B,CACnD,UAAU,EAAE,IAAI,CAAC,0BAA0B,EAAE,cAAc,CAAC,EAC5D,KAAK,EAAE,gBAAgB,GACrB,OAAO,CAAC,IAAI,CAAC,CAcf"}
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Code-session billing gate enforcement.
3
+ *
4
+ * The billing posture of a code session is a property of its EXECUTION SURFACE,
5
+ * declared on the resolved descriptor (`billingGates`) — NOT a `hostTarget.kind`
6
+ * conditional in the endpoint. This enforces whatever the resolved descriptor
7
+ * declares, generically:
8
+ *
9
+ * - a HOST session (fleet machine / consumer Host) declares NO gates → free,
10
+ * because it runs on the user's own hardware (rated zero by the engine);
11
+ * - the CLOUD session declares the build-mode + sandbox-quota gates because it
12
+ * runs on OUR metered compute.
13
+ *
14
+ * The billing check is INJECTED (`BillingGateCheck`) so this stays in the
15
+ * runtime tier with no dependency on the account billing client — the platform
16
+ * route wires its `checkQuota` in. A new surface gates itself by declaring
17
+ * `billingGates` on its descriptor; this function and the route never change.
18
+ */
19
+ import { CapabilityError, CaughtFailureSchema, valueFreeFailure } from '@vibesdotdev/kernel';
20
+ /** A declared gate DENIED the session (→ 403 with `message`). */
21
+ export class CodeSessionBillingDenied extends CapabilityError {
22
+ feature;
23
+ kind = 'CodeSessionBillingDenied';
24
+ constructor(message, feature) {
25
+ super(message, 'PERMISSION_DENIED', {
26
+ reason: 'code-session-billing-denied',
27
+ retryable: false,
28
+ details: { feature }
29
+ });
30
+ this.feature = feature;
31
+ this.name = 'CodeSessionBillingDenied';
32
+ }
33
+ }
34
+ /**
35
+ * A gate check could not be completed (billing transport failure). Fail CLOSED —
36
+ * the caller maps this to a 403 "try again shortly", never letting a paid gate
37
+ * open when the billing backend is unreachable.
38
+ */
39
+ export class CodeSessionBillingUnavailable extends CapabilityError {
40
+ feature;
41
+ kind = 'CodeSessionBillingUnavailable';
42
+ constructor(feature, options) {
43
+ super('The code-session billing entitlement could not be verified.', 'UNAVAILABLE', {
44
+ reason: 'code-session-billing-unavailable',
45
+ retryable: true,
46
+ details: { feature },
47
+ cause: options.cause
48
+ });
49
+ this.feature = feature;
50
+ this.name = 'CodeSessionBillingUnavailable';
51
+ }
52
+ }
53
+ /**
54
+ * Enforce every billing gate the resolved descriptor declares, in order. A
55
+ * descriptor with no gates (host execution — free) returns immediately without
56
+ * a single billing call. Throws `CodeSessionBillingDenied` on the first denied
57
+ * gate and `CodeSessionBillingUnavailable` if a check itself fails.
58
+ */
59
+ export async function enforceCodeSessionBillingGates(descriptor, check) {
60
+ for (const gate of descriptor.billingGates ?? []) {
61
+ let result;
62
+ try {
63
+ result = await check(gate.feature);
64
+ }
65
+ catch (caught) {
66
+ throw new CodeSessionBillingUnavailable(gate.feature, {
67
+ cause: valueFreeFailure(CaughtFailureSchema.parse(caught))
68
+ });
69
+ }
70
+ if (!result.allowed) {
71
+ throw new CodeSessionBillingDenied(gate.deniedMessage, gate.feature);
72
+ }
73
+ }
74
+ }
75
+ //# sourceMappingURL=gates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gates.js","sourceRoot":"","sources":["../../../src/code-session/billing/gates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EACN,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAEhB,MAAM,qBAAqB,CAAC;AAU7B,iEAAiE;AACjE,MAAM,OAAO,wBAAyB,SAAQ,eAAe;IAIlD;IAHD,IAAI,GAAG,0BAAmC,CAAC;IACpD,YACC,OAAe,EACN,OAAe;QAExB,KAAK,CAAC,OAAO,EAAE,mBAAmB,EAAE;YACnC,MAAM,EAAE,6BAA6B;YACrC,SAAS,EAAE,KAAK;YAChB,OAAO,EAAE,EAAE,OAAO,EAAE;SACpB,CAAC,CAAC;QANM,YAAO,GAAP,OAAO,CAAQ;QAOxB,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;IACxC,CAAC;CACD;AAED;;;;GAIG;AACH,MAAM,OAAO,6BAA8B,SAAQ,eAAe;IAGvD;IAFD,IAAI,GAAG,+BAAwC,CAAC;IACzD,YACU,OAAe,EACxB,OAA8C;QAE9C,KAAK,CAAC,6DAA6D,EAAE,aAAa,EAAE;YACnF,MAAM,EAAE,kCAAkC;YAC1C,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,EAAE,OAAO,EAAE;YACpB,KAAK,EAAE,OAAO,CAAC,KAAK;SACpB,CAAC,CAAC;QARM,YAAO,GAAP,OAAO,CAAQ;QASxB,IAAI,CAAC,IAAI,GAAG,+BAA+B,CAAC;IAC7C,CAAC;CACD;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,8BAA8B,CACnD,UAA4D,EAC5D,KAAuB;IAEvB,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC;QAClD,IAAI,MAA4B,CAAC;QACjC,IAAI,CAAC;YACJ,MAAM,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,6BAA6B,CAAC,IAAI,CAAC,OAAO,EAAE;gBACrD,KAAK,EAAE,gBAAgB,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;aAC1D,CAAC,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,IAAI,wBAAwB,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACtE,CAAC;IACF,CAAC;AACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { resolveCodeSession, type ResolveCodeSessionOptions } from './resolve.ts';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/code-session/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,KAAK,yBAAyB,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { resolveCodeSession } from "./resolve.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/code-session/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAkC,MAAM,cAAc,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Code Session Resolver
3
+ *
4
+ * Scope-aware resolution for `agent/code-session` impls. Mirrors
5
+ * `resolveAgentSandbox`:
6
+ * 1. Honour an explicit code-session id if passed.
7
+ * 2. Filter to enabled descriptors, sort by `priority` (desc).
8
+ * 3. Resolve the first the runtime can construct in the current scope — the
9
+ * hardware-aware loader chain handles the consumer/cloud split, so the
10
+ * cloud adapter cleanly throws "not configured" and we never see it on
11
+ * consumer hardware.
12
+ *
13
+ * Tools query this once per chat and operate on the bound `sessionId`.
14
+ */
15
+ import { type RuntimeRef } from '@vibesdotdev/kernel';
16
+ import type { CodeSessionInterface } from '../interfaces/code-session.ts';
17
+ import { type ResolveCodeSessionOptions } from '../../schemas/code-session-resolution.ts';
18
+ export { ResolveCodeSessionOptionsSchema, type ResolveCodeSessionOptions } from '../../schemas/code-session-resolution.ts';
19
+ export declare function resolveCodeSession(runtime: RuntimeRef, options?: ResolveCodeSessionOptions): Promise<CodeSessionInterface>;
20
+ //# sourceMappingURL=resolve.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../../src/code-session/client/resolve.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EAIN,KAAK,UAAU,EACf,MAAM,qBAAqB,CAAC;AAG7B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAE1E,OAAO,EAAmC,KAAK,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AAC3H,OAAO,EAAE,+BAA+B,EAAE,KAAK,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AAoC3H,wBAAsB,kBAAkB,CACvC,OAAO,EAAE,UAAU,EACnB,OAAO,GAAE,yBAA8B,GACrC,OAAO,CAAC,oBAAoB,CAAC,CA+G/B"}
@@ -0,0 +1,145 @@
1
+ /**
2
+ * Code Session Resolver
3
+ *
4
+ * Scope-aware resolution for `agent/code-session` impls. Mirrors
5
+ * `resolveAgentSandbox`:
6
+ * 1. Honour an explicit code-session id if passed.
7
+ * 2. Filter to enabled descriptors, sort by `priority` (desc).
8
+ * 3. Resolve the first the runtime can construct in the current scope — the
9
+ * hardware-aware loader chain handles the consumer/cloud split, so the
10
+ * cloud adapter cleanly throws "not configured" and we never see it on
11
+ * consumer hardware.
12
+ *
13
+ * Tools query this once per chat and operate on the bound `sessionId`.
14
+ */
15
+ import * as z from 'zod/v4';
16
+ import { CapabilityError, CaughtFailureSchema, valueFreeFailure } from '@vibesdotdev/kernel';
17
+ import { AgentCodeSessionDescriptorSchema } from "../agent-code-session.descriptor.js";
18
+ import { ResolveCodeSessionOptionsSchema } from "../../schemas/code-session-resolution.js";
19
+ export { ResolveCodeSessionOptionsSchema } from "../../schemas/code-session-resolution.js";
20
+ function requestInvalid(field, cause) {
21
+ return new CapabilityError('The code-session resolution request is invalid.', 'INVALID_INPUT', {
22
+ reason: 'code-session-request-invalid',
23
+ retryable: false,
24
+ details: { field },
25
+ cause
26
+ });
27
+ }
28
+ function advertisedHostTargetKinds(descriptor) {
29
+ if (descriptor.hostTarget) {
30
+ const k = descriptor.hostTarget.kind;
31
+ if (k === 'host')
32
+ return ['host', 'provisioned'];
33
+ return [k];
34
+ }
35
+ const kinds = new Set();
36
+ for (const hardware of descriptor.hardware ?? []) {
37
+ if (hardware === 'cloud')
38
+ kinds.add('cloud');
39
+ if (hardware === 'consumer') {
40
+ kinds.add('host');
41
+ kinds.add('provisioned');
42
+ }
43
+ }
44
+ if (kinds.size === 0) {
45
+ kinds.add('host');
46
+ kinds.add('provisioned');
47
+ }
48
+ return [...kinds];
49
+ }
50
+ export async function resolveCodeSession(runtime, options = {}) {
51
+ let admitted;
52
+ try {
53
+ admitted = ResolveCodeSessionOptionsSchema.safeParse(options);
54
+ }
55
+ catch (caught) {
56
+ throw requestInvalid('options', valueFreeFailure(CaughtFailureSchema.parse(caught)));
57
+ }
58
+ if (!admitted.success) {
59
+ throw requestInvalid('options', valueFreeFailure(CaughtFailureSchema.parse(admitted.error)));
60
+ }
61
+ const { explicitId, requiredOs, requiredArch, requiredHostTargetKind } = admitted.data;
62
+ if (explicitId) {
63
+ return runtime
64
+ .query('agent/code-session')
65
+ .withId(explicitId)
66
+ .resolve();
67
+ }
68
+ const query = runtime.query('agent/code-session');
69
+ const descriptors = query.descriptors();
70
+ const admittedDescriptors = descriptors.map((descriptor) => {
71
+ try {
72
+ return AgentCodeSessionDescriptorSchema.parse(descriptor);
73
+ }
74
+ catch (caught) {
75
+ throw new CapabilityError('A registered code-session descriptor is invalid.', 'UNAVAILABLE', {
76
+ reason: 'code-session-unresolvable', retryable: false,
77
+ details: { candidateCount: descriptors.length, malformedCount: 1, skippedCount: 0 },
78
+ cause: valueFreeFailure(CaughtFailureSchema.parse(caught))
79
+ });
80
+ }
81
+ });
82
+ const enabled = admittedDescriptors.filter((d) => d.enabled !== false);
83
+ const targetFiltered = requiredHostTargetKind === undefined
84
+ ? enabled
85
+ : enabled.filter((d) => advertisedHostTargetKinds(d).includes(requiredHostTargetKind));
86
+ if (requiredHostTargetKind !== undefined && targetFiltered.length === 0) {
87
+ throw requestInvalid('requiredHostTargetKind');
88
+ }
89
+ // OS/arch axis: drop candidates whose declared `os`/`arch` does not include
90
+ // the requested value, before the priority sort. Schema parse already refused
91
+ // a descriptor that omitted either axis, so this filter does not fill linux
92
+ // or x64. When a constraint eliminates every candidate, the request fails
93
+ // in the open.
94
+ const osFiltered = requiredOs === undefined
95
+ ? targetFiltered
96
+ : targetFiltered.filter((d) => d.os.includes(requiredOs));
97
+ if (requiredOs !== undefined && osFiltered.length === 0) {
98
+ throw requestInvalid('requiredOs');
99
+ }
100
+ const archFiltered = requiredArch === undefined
101
+ ? osFiltered
102
+ : osFiltered.filter((d) => d.arch.includes(requiredArch));
103
+ if (requiredArch !== undefined && archFiltered.length === 0) {
104
+ throw requestInvalid('requiredArch');
105
+ }
106
+ const matching = archFiltered.sort((a, b) => (b.priority ?? 100) - (a.priority ?? 100));
107
+ if (matching.length === 0) {
108
+ throw new CapabilityError('No enabled code-session implementation is registered.', 'UNAVAILABLE', {
109
+ reason: 'code-session-unresolvable',
110
+ retryable: false,
111
+ details: { candidateCount: 0 }
112
+ });
113
+ }
114
+ let skippedCount = 0;
115
+ for (const candidate of matching) {
116
+ try {
117
+ // A FRESH query per candidate: `AssetQuery.withIds` INTERSECTS with any
118
+ // existing id filter on the (mutable) query object, so reusing `query`
119
+ // across iterations intersected {first.id} ∩ {second.id} = ∅ — every
120
+ // candidate after the first was unresolvable by construction. On a
121
+ // consumer host (cloudflare descriptor registered but cloud-gated,
122
+ // priority above the bun impl) that killed the fallback entirely.
123
+ return await runtime
124
+ .query('agent/code-session')
125
+ .withId(candidate.id)
126
+ .resolve();
127
+ }
128
+ catch (caught) {
129
+ const failure = CaughtFailureSchema.parse(caught);
130
+ // Only the exact candidate's confirmed absence permits fallback. An
131
+ // unavailable registered provider is a present failure and propagates.
132
+ if (CapabilityError.isAbsenceOf(failure, 'agent/code-session', candidate.id)) {
133
+ skippedCount += 1;
134
+ continue;
135
+ }
136
+ throw CapabilityError.from(failure);
137
+ }
138
+ }
139
+ throw new CapabilityError('No registered code-session implementation can serve this runtime scope.', 'UNAVAILABLE', {
140
+ reason: 'code-session-unresolvable',
141
+ retryable: false,
142
+ details: { candidateCount: matching.length, skippedCount }
143
+ });
144
+ }
145
+ //# sourceMappingURL=resolve.js.map