@sagmans/dsh-tui 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (144) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +266 -0
  3. package/cordis.patch.yml +123 -0
  4. package/lib/agent/fork.d.ts +24 -0
  5. package/lib/agent/fork.d.ts.map +1 -0
  6. package/lib/agent/fork.js +25 -0
  7. package/lib/agent/fork.js.map +1 -0
  8. package/lib/agent/history.d.ts +78 -0
  9. package/lib/agent/history.d.ts.map +1 -0
  10. package/lib/agent/history.js +179 -0
  11. package/lib/agent/history.js.map +1 -0
  12. package/lib/agent/host.d.ts +58 -0
  13. package/lib/agent/host.d.ts.map +1 -0
  14. package/lib/agent/host.js +59 -0
  15. package/lib/agent/host.js.map +1 -0
  16. package/lib/agent/model.d.ts +61 -0
  17. package/lib/agent/model.d.ts.map +1 -0
  18. package/lib/agent/model.js +92 -0
  19. package/lib/agent/model.js.map +1 -0
  20. package/lib/agent/present.d.ts +12 -0
  21. package/lib/agent/present.d.ts.map +1 -0
  22. package/lib/agent/present.js +52 -0
  23. package/lib/agent/present.js.map +1 -0
  24. package/lib/agent/presets.d.ts +75 -0
  25. package/lib/agent/presets.d.ts.map +1 -0
  26. package/lib/agent/presets.js +117 -0
  27. package/lib/agent/presets.js.map +1 -0
  28. package/lib/agent/projections.d.ts +16 -0
  29. package/lib/agent/projections.d.ts.map +1 -0
  30. package/lib/agent/projections.js +31 -0
  31. package/lib/agent/projections.js.map +1 -0
  32. package/lib/agent/status.d.ts +46 -0
  33. package/lib/agent/status.d.ts.map +1 -0
  34. package/lib/agent/status.js +67 -0
  35. package/lib/agent/status.js.map +1 -0
  36. package/lib/cards.d.ts +88 -0
  37. package/lib/cards.d.ts.map +1 -0
  38. package/lib/cards.js +218 -0
  39. package/lib/cards.js.map +1 -0
  40. package/lib/compat/probe.d.ts +33 -0
  41. package/lib/compat/probe.d.ts.map +1 -0
  42. package/lib/compat/probe.js +74 -0
  43. package/lib/compat/probe.js.map +1 -0
  44. package/lib/config.d.ts +13 -0
  45. package/lib/config.d.ts.map +1 -0
  46. package/lib/config.js +49 -0
  47. package/lib/config.js.map +1 -0
  48. package/lib/contracts.d.ts +32 -0
  49. package/lib/contracts.d.ts.map +1 -0
  50. package/lib/contracts.js +2 -0
  51. package/lib/contracts.js.map +1 -0
  52. package/lib/export.d.ts +15 -0
  53. package/lib/export.d.ts.map +1 -0
  54. package/lib/export.js +52 -0
  55. package/lib/export.js.map +1 -0
  56. package/lib/gates.d.ts +85 -0
  57. package/lib/gates.d.ts.map +1 -0
  58. package/lib/gates.js +216 -0
  59. package/lib/gates.js.map +1 -0
  60. package/lib/identity.d.ts +33 -0
  61. package/lib/identity.d.ts.map +1 -0
  62. package/lib/identity.js +49 -0
  63. package/lib/identity.js.map +1 -0
  64. package/lib/index.d.ts +24 -0
  65. package/lib/index.d.ts.map +1 -0
  66. package/lib/index.js +1196 -0
  67. package/lib/index.js.map +1 -0
  68. package/lib/input/completion.d.ts +22 -0
  69. package/lib/input/completion.d.ts.map +1 -0
  70. package/lib/input/completion.js +27 -0
  71. package/lib/input/completion.js.map +1 -0
  72. package/lib/input/submission.d.ts +62 -0
  73. package/lib/input/submission.d.ts.map +1 -0
  74. package/lib/input/submission.js +80 -0
  75. package/lib/input/submission.js.map +1 -0
  76. package/lib/jobs.d.ts +64 -0
  77. package/lib/jobs.d.ts.map +1 -0
  78. package/lib/jobs.js +123 -0
  79. package/lib/jobs.js.map +1 -0
  80. package/lib/startup.d.ts +17 -0
  81. package/lib/startup.d.ts.map +1 -0
  82. package/lib/startup.js +67 -0
  83. package/lib/startup.js.map +1 -0
  84. package/lib/subagents.d.ts +74 -0
  85. package/lib/subagents.d.ts.map +1 -0
  86. package/lib/subagents.js +141 -0
  87. package/lib/subagents.js.map +1 -0
  88. package/lib/terminal/bell.d.ts +18 -0
  89. package/lib/terminal/bell.d.ts.map +1 -0
  90. package/lib/terminal/bell.js +16 -0
  91. package/lib/terminal/bell.js.map +1 -0
  92. package/lib/terminal/clipboard.d.ts +11 -0
  93. package/lib/terminal/clipboard.d.ts.map +1 -0
  94. package/lib/terminal/clipboard.js +18 -0
  95. package/lib/terminal/clipboard.js.map +1 -0
  96. package/lib/terminal/restore.d.ts +17 -0
  97. package/lib/terminal/restore.d.ts.map +1 -0
  98. package/lib/terminal/restore.js +43 -0
  99. package/lib/terminal/restore.js.map +1 -0
  100. package/lib/terminal/title.d.ts +22 -0
  101. package/lib/terminal/title.d.ts.map +1 -0
  102. package/lib/terminal/title.js +34 -0
  103. package/lib/terminal/title.js.map +1 -0
  104. package/lib/text.d.ts +19 -0
  105. package/lib/text.d.ts.map +1 -0
  106. package/lib/text.js +61 -0
  107. package/lib/text.js.map +1 -0
  108. package/lib/theme.d.ts +47 -0
  109. package/lib/theme.d.ts.map +1 -0
  110. package/lib/theme.js +84 -0
  111. package/lib/theme.js.map +1 -0
  112. package/lib/transcript.d.ts +91 -0
  113. package/lib/transcript.d.ts.map +1 -0
  114. package/lib/transcript.js +315 -0
  115. package/lib/transcript.js.map +1 -0
  116. package/lib/ui/dock.d.ts +36 -0
  117. package/lib/ui/dock.d.ts.map +1 -0
  118. package/lib/ui/dock.js +110 -0
  119. package/lib/ui/dock.js.map +1 -0
  120. package/lib/ui/markdown.d.ts +17 -0
  121. package/lib/ui/markdown.d.ts.map +1 -0
  122. package/lib/ui/markdown.js +35 -0
  123. package/lib/ui/markdown.js.map +1 -0
  124. package/lib/ui/picker.d.ts +103 -0
  125. package/lib/ui/picker.d.ts.map +1 -0
  126. package/lib/ui/picker.js +165 -0
  127. package/lib/ui/picker.js.map +1 -0
  128. package/lib/ui/rows.d.ts +30 -0
  129. package/lib/ui/rows.d.ts.map +1 -0
  130. package/lib/ui/rows.js +49 -0
  131. package/lib/ui/rows.js.map +1 -0
  132. package/lib/ui/status.d.ts +49 -0
  133. package/lib/ui/status.d.ts.map +1 -0
  134. package/lib/ui/status.js +90 -0
  135. package/lib/ui/status.js.map +1 -0
  136. package/lib/ui/view.d.ts +56 -0
  137. package/lib/ui/view.d.ts.map +1 -0
  138. package/lib/ui/view.js +184 -0
  139. package/lib/ui/view.js.map +1 -0
  140. package/lib/work.d.ts +39 -0
  141. package/lib/work.d.ts.map +1 -0
  142. package/lib/work.js +97 -0
  143. package/lib/work.js.map +1 -0
  144. package/package.json +109 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAM5H,OAAO,EAAE,UAAU,EAAuC,MAAM,iBAAiB,CAAA;AACjF,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,GAGjB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAyC,MAAM,oBAAoB,CAAA;AACnH,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,SAAS,EAAkB,MAAM,iBAAiB,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACtF,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,YAAY,EAAE,iBAAiB,EAAmB,MAAM,WAAW,CAAA;AAChH,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,sBAAsB,EACtB,UAAU,GACX,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAGtG,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,eAAe,EAAmB,MAAM,YAAY,CAAA;AACzF,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAChE,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACjE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAsC,MAAM,gBAAgB,CAAA;AAChG,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAE7C,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,CAAA;AAEzB,mEAAmE;AACnE,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,QAAQ,CAAC,CAAA;AAEhC,iFAAiF;AACjF,MAAM,UAAU,GAAG,gGAAgG,CAAA;AAEnH,+DAA+D;AAC/D,MAAM,eAAe,GAAG,gBAAgB,CAAA;AAExC,4DAA4D;AAC5D,MAAM,iBAAiB,GAAG,CAAC,CAAA;AAE3B,uEAAuE;AACvE,MAAM,cAAc,GAAG,IAAI,CAAA;AAG3B,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAE,KAAiC,CAAC,CAAC,CAAC,SAAS,CAAA;AACrG,CAAC;AAeD;;;;;;GAMG;AACH,MAAM,UAAU,yBAAyB,CAAC,QAGtC,EAAE;IACJ,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,CAAA;IAC9D,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,CAAA;IACjE,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,8FAA8F,CAAC,CAAA;IACjH,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,KAAK,CAAC,GAAY,EAAE,MAAe;IACjD,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,CAAA;IACtC,yBAAyB,EAAE,CAAA;IAE3B,8EAA8E;IAC9E,2EAA2E;IAC3E,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,SAAS,CAAC,CAAA;IACzE,IAAI,KAAK,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAA;IACrF,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IAClC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,2FAA2F,CAAC,CAAA;IAC9G,CAAC;IAED,MAAM,KAAK,GAAG,WAAW,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;IACvD,MAAM,KAAK,GAAG,IAAI,eAAe,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAA;IAC3D,MAAM,IAAI,GAAG,IAAI,QAAQ,EAAE,CAAA;IAC3B,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAA;IACrC,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAA;IAC5C;;;;;;OAMG;IACH,mFAAmF;IACnF,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAA;IACvC,IAAI,IAAI,GAAG,eAAe,IAAI,YAAY,EAAE,SAAS,CAAA;IACrD,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAA;IACvC,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAA;IAC5C,IAAI,IAAI,GAA0B,EAAE,CAAA;IACpC,MAAM,MAAM,GAAG,IAAI,cAAc,EAAE,CAAA;IACnC,MAAM,eAAe,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAA;IAClD,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IACrD,uFAAuF;IACvF,MAAM,SAAS,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,CAAA;IAChE,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAA;IACvC,MAAM,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAA;IACtC,MAAM,GAAG,GAAG,IAAI,YAAY,CAAC,QAAQ,CAAC,CAAA;IAMtC,uFAAuF;IACvF,IAAI,aAAa,GAAG,QAAQ,CAAC,SAAS,CAAA;IACtC,+EAA+E;IAC/E,IAAI,aAAa,GAAG,QAAQ,CAAC,SAAS,CAAA;IAatC,IAAI,OAAgC,CAAA;IACpC,IAAI,aAAwC,CAAA;IAC5C,oFAAoF;IACpF,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,MAAM,IAAI,GAAG,IAAI,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE;QACtD,KAAK,EAAE,GAAG,EAAE,CAAC,SAAS;QACtB,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE;QAChC,MAAM,EAAE,GAAG,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,EAAE;KAC3C,CAAC,CAAA;IACF,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IAC5C,MAAM,SAAS,GAAsB,EAAE,CAAA;IACvC,IAAI,KAA2B,CAAA;IAC/B,IAAI,QAAQ,GAAG,KAAK,CAAA;IACpB,IAAI,aAAiC,CAAA;IACrC,IAAI,MAAM,GAAG,KAAK,CAAA;IAClB,gFAAgF;IAChF,IAAI,aAAa,GAAG,KAAK,CAAA;IACzB,4EAA4E;IAC5E,MAAM,WAAW,GAAG,GAAS,EAAE;QAC7B,IAAI,GAAG,KAAK,KAAK,SAAS,IAAI,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC9F,GAAG,CAAC,aAAa,EAAE,CAAA;IACrB,CAAC,CAAA;IAED,MAAM,WAAW,GAAG,iBAAiB,CAAC,GAAG,EAAE;QACzC,SAAS,EAAE,GAAG,EAAE,CAAC,aAAa;QAC9B,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;QACjE,QAAQ,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,EAAE;QACrC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI;KACvB,CAAC,CAAA;IACF,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,WAAW,EAAE,KAAK,CAAC,CAAA;IACnD,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;IACrF,iFAAiF;IACjF,MAAM,YAAY,GAAmC,WAAW,CAAC,GAAG,EAAE;QACpE,IAAI,QAAQ;YAAE,GAAG,CAAC,aAAa,EAAE,CAAA;IACnC,CAAC,EAAE,cAAc,CAAC,CAAA;IAClB,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAA;IAEjD,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAA;IAC7B,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE;QACpB,OAAO,CAAC,OAAO,EAAE,CAAA;QACjB,KAAK,MAAM,OAAO,IAAI,SAAS,CAAC,OAAO,EAAE;YAAE,OAAO,EAAE,CAAA;IACtD,CAAC,CAAC,CAAA;IAEF,GAAG,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC;QAC3B;YACE,SAAS,EAAE,IAAI,UAAU,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;YACtF,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,CAAC;YACP,OAAO,EAAE,CAAC;SACX;QACD,oEAAoE;QACpE,uEAAuE;QACvE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;QACzD,EAAE,SAAS,EAAE,IAAI,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;QAC9H,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;KAC/D,CAAC,CAAC,CAAA;IACH,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IAEpB,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,MAAe,EAAQ,EAAE;QAC1D,IAAI,MAAM;YAAE,OAAM;QAClB,MAAM,GAAG,IAAI,CAAA;QACb,aAAa,CAAC,YAAY,CAAC,CAAA;QAC3B,0EAA0E;QAC1E,uCAAuC;QACvC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;QAC3B,OAAO,CAAC,OAAO,EAAE,CAAA;QACjB,6EAA6E;QAC7E,0EAA0E;QAC1E,6BAA6B;QAC7B,IAAI,MAAM,KAAK,SAAS;YAAE,QAAQ,CAAC,KAAK,CAAC,cAAc,MAAM,IAAI,CAAC,CAAA;QAClE,2EAA2E;QAC3E,8EAA8E;QAC9E,2EAA2E;QAC3E,2EAA2E;QAC3E,oCAAoC;QACpC,IAAI,aAAa;YAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC,CAAA;QAC3F,OAAO,CAAC,IAAI,CAAC,CAAA;IACf,CAAC,CAAA;IAED,MAAM,QAAQ,GAAG,CAAC,IAAiB,EAAQ,EAAE;QAC3C,OAAO,GAAG,IAAI,CAAA;QACd,2EAA2E;QAC3E,MAAM,CAAC,aAAa,GAAG,IAAI,CAAA;QAC3B,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAClB,GAAG,CAAC,aAAa,EAAE,CAAA;IACrB,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,GAAS,EAAE;QAC3B,OAAO,GAAG,SAAS,CAAA;QACnB,MAAM,CAAC,aAAa,GAAG,KAAK,CAAA;QAC5B,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QACpB,GAAG,CAAC,aAAa,EAAE,CAAA;IACrB,CAAC,CAAA;IAED,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE;QACzC,4EAA4E;QAC5E,wEAAwE;QACxE,0EAA0E;QAC1E,4EAA4E;QAC5E,yEAAyE;QACzE,mCAAmC;QACnC,IAAI,YAAY,CAAC,IAAI,CAAC;YAAE,OAAO,SAAS,CAAA;QACxC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAChC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;gBAC5C,IAAI,OAAO,KAAK,SAAS;oBAAE,GAAG,CAAC,aAAa,EAAE,CAAA;qBACzC,CAAC;oBACJ,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;oBACvB,SAAS,EAAE,CAAA;gBACb,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;gBAC5C,IAAI,OAAO,KAAK,SAAS;oBAAE,GAAG,CAAC,aAAa,EAAE,CAAA;qBACzC,CAAC;oBACJ,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;oBACvB,SAAS,EAAE,CAAA;gBACb,CAAC;YACH,CAAC;YACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;QAC1B,CAAC;QACD,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YAChC,IAAI,OAAO;gBAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;YACrC,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;YACnD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,GAAG,CAAC,aAAa,EAAE,CAAA;gBACnB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;YAC1B,CAAC;YACD,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC7B,YAAY,CAAC,SAAS,CAAC,CAAA;gBACvB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;YAC1B,CAAC;YACD,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAA;YAC7B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBACtB,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;gBACvB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;YAC1B,CAAC;YACD,OAAO,GAAG,IAAI,CAAA;YACd,KAAK,CAAC,KAAK,IAAI,EAAE;gBACf,IAAI,MAA0B,CAAA;gBAC9B,IAAI,CAAC;oBACH,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;gBAC/B,CAAC;wBAAS,CAAC;oBACT,yDAAyD;oBACzD,OAAO,GAAG,KAAK,CAAA;gBACjB,CAAC;gBACD,IAAI,aAAa,KAAK,SAAS;oBAAE,OAAM;gBACvC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACzB,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;oBACvB,OAAM;gBACR,CAAC;gBACD,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;gBACpC,GAAG,CAAC,aAAa,EAAE,CAAA;YACrB,CAAC,CAAC,EAAE,CAAA;YACJ,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;QAC1B,CAAC;QACD,sEAAsE;QACtE,mDAAmD;QACnD,IAAI,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;YAC/B,SAAS,CAAC,WAAW,GAAG,CAAC,SAAS,CAAC,WAAW,CAAA;YAC9C,GAAG,CAAC,aAAa,EAAE,CAAA;YACnB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;QAC1B,CAAC;QACD,IAAI,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;YAC/B,SAAS,CAAC,eAAe,GAAG,CAAC,SAAS,CAAC,eAAe,CAAA;YACtD,GAAG,CAAC,aAAa,EAAE,CAAA;YACnB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;QAC1B,CAAC;QACD,IAAI,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;YAC/B,IAAI,aAAa,KAAK,aAAa;gBAAE,KAAK,gBAAgB,EAAE,CAAA;YAC5D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;QAC1B,CAAC;QACD,yEAAyE;QACzE,iEAAiE;QACjE,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC;YAAE,OAAO,SAAS,CAAA;QACjD,IAAI,QAAQ,EAAE,CAAC;YACb,KAAK,EAAE,SAAS,EAAE,CAAA;YAClB,KAAK,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAA;YACnC,GAAG,CAAC,aAAa,EAAE,CAAA;YACnB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;QAC1B,CAAC;QACD,WAAW,CAAC,CAAC,CAAC,CAAA;QACd,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC,CAAC,CAAC,CAAA;IAEH,MAAM,QAAQ,GAAG,GAAgC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAgC,CAAA;IAEtG;;;;;;OAMG;IACH,MAAM,iBAAiB,GAAG,GAAS,EAAE;QACnC,MAAM,OAAO,GAAG,KAAK,EAAE,KAAK,CAAA;QAC5B,MAAM,QAAQ,GAAG,QAAQ,EAAE,CAAA;QAC3B,IAAI,OAAO,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAM;QAC3D,MAAM,CAAC,uBAAuB,CAAC,wBAAwB,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;IACjG,CAAC,CAAA;IAED;;;;;OAKG;IACH,MAAM,aAAa,GAAG,KAAK,EAAE,OAAuB,EAAE,QAAkC,EAAkC,EAAE;QAC1H,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAA;QACxC,KAAK,UAAU,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;QAC1C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,aAAa,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,CAAA;QACxF,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;IAC7D,CAAC,CAAA;IAED,iFAAiF;IACjF,MAAM,YAAY,GAAG,CAAC,EAAsB,EAAQ,EAAE;QACpD,MAAM,MAAM,GAAG,aAAa,EAAE,MAAM,CAAA;QACpC,aAAa,GAAG,SAAS,CAAA;QACzB,MAAM,CAAC,aAAa,GAAG,KAAK,CAAA;QAC5B,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QACpB,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;QACZ,GAAG,CAAC,aAAa,EAAE,CAAA;IACrB,CAAC,CAAA;IAED;;;;;;OAMG;IACH,MAAM,YAAY,GAAG,KAAK,EAAE,EAAU,EAA+B,EAAE;QACrE,IAAI,eAAe,KAAK,SAAS,IAAI,YAAY,KAAK,SAAS;YAAE,OAAO,SAAS,CAAA;QACjF,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,CAAA;YAC/C,OAAO,SAAS,CAAA;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC/D,CAAC;IACH,CAAC,CAAA;IAED,2EAA2E;IAC3E,MAAM,UAAU,GAAG,CACjB,MAA+B,EAC/B,GAAiD,EACpB,EAAE,CAC/B,IAAI,OAAO,CAAqB,OAAO,CAAC,EAAE;QACxC,aAAa,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,CAAA;QAChD,MAAM,CAAC,aAAa,GAAG,IAAI,CAAA;QAC3B,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAClB,GAAG,CAAC,aAAa,EAAE,CAAA;IACrB,CAAC,CAAC,CAAA;IAEJ,2EAA2E;IAC3E,IAAI,UAAU,GAA6B,EAAE,CAAA;IAE7C,mEAAmE;IACnE,MAAM,YAAY,GAAG,KAAK,EAAE,SAA6B,EAA+B,EAAE;QACxF,IAAI,YAAY,KAAK,SAAS;YAAE,OAAO,SAAS,CAAA;QAChD,UAAU,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,CAAA;QACtC,OAAO,MAAM,UAAU,CAAC,IAAI,YAAY,CAAC,GAAG,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAC9E,CAAC,CAAA;IAED,oFAAoF;IACpF,MAAM,UAAU,GAAG,KAAK,EACtB,OAAuB,EACvB,QAAkC,EAClC,MAA2B,EACZ,EAAE;QACjB,MAAM,KAAK,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAA;QAC3B,MAAM,MAAM,GAAG,KAAK,IAAmB,EAAE;YACvC,SAAS,CAAC;gBACR,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,CAAA;gBAC1B,IAAI,IAAI,KAAK,SAAS;oBAAE,OAAM;gBAC9B,IAAI,CAAC;oBACH,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;oBACnD,IAAI,KAAK,KAAK,SAAS;wBAAE,SAAQ;oBACjC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;oBAC1B,GAAG,CAAC,aAAa,EAAE,CAAA;gBACrB,CAAC;gBAAC,MAAM,CAAC;oBACP,qEAAqE;oBACrE,qEAAqE;gBACvE,CAAC;YACH,CAAC;QACH,CAAC,CAAA;QACD,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,iBAAiB,EAAE,EAAE,MAAM,CAAC,CAAC,CAAA;IACtE,CAAC,CAAA;IAED,MAAM,cAAc,GAAG,KAAK,IAA0F,EAAE;QACtH,MAAM,OAAO,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAA;QACzC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,KAAK,CAAC,MAAM,CAAC,oEAAoE,CAAC,CAAA;YAClF,GAAG,CAAC,aAAa,EAAE,CAAA;YACnB,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YACjD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,KAAK,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAA;gBAC5C,GAAG,CAAC,aAAa,EAAE,CAAA;gBACnB,OAAO,SAAS,CAAA;YAClB,CAAC;YACD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAA;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,KAAK,CAAC,MAAM,CAAC,mCAAmC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACzG,GAAG,CAAC,aAAa,EAAE,CAAA;YACnB,OAAO,SAAS,CAAA;QAClB,CAAC;IACH,CAAC,CAAA;IAED,MAAM,aAAa,GAAG,KAAK,IAAoC,EAAE;QAC/D,MAAM,MAAM,GAAG,MAAM,cAAc,EAAE,CAAA;QACrC,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAA;IAC1F,CAAC,CAAA;IAED;;;OAGG;IACH;;;;;;OAMG;IACH,MAAM,WAAW,GAAG,CAAC,EAAa,EAA+D,EAAE,CAChG,GAAG,CAAC,GAAG,CAAC,UAAU,CAA0G,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA;IAE1I,MAAM,WAAW,GAAG,KAAK,EAAE,EAAa,EAAmB,EAAE;QAC3D,MAAM,QAAQ,GAAG,WAAW,CAAC,EAAE,CAAC,EAAE,cAAc,EAAE,EAAE,CAAA;QACpD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,KAAK,MAAM,KAAK,IAAI,QAAQ;gBAAE,UAAU,CAAC,KAAK,CAAC,CAAA;YAC/C,OAAO,QAAQ,CAAC,MAAM,CAAA;QACxB,CAAC;QACD,MAAM,OAAO,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAA;QACzC,IAAI,OAAO,KAAK,SAAS;YAAE,OAAO,CAAC,CAAA;QACnC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACrC,KAAK,MAAM,KAAK,IAAI,MAAM;YAAE,UAAU,CAAC,KAAK,CAAC,CAAA;QAC7C,OAAO,MAAM,CAAC,MAAM,CAAA;IACtB,CAAC,CAAA;IAED,MAAM,aAAa,GAAG,KAAK,EAAE,EAAa,EAAiB,EAAE;QAC3D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,EAAE,CAAC,CAAA;YACpC,IAAI,MAAM,GAAG,CAAC;gBAAE,KAAK,CAAC,MAAM,CAAC,YAAY,MAAM,6BAA6B,CAAC,CAAA;QAC/E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,KAAK,CAAC,MAAM,CAAC,kCAAkC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAC1G,CAAC;IACH,CAAC,CAAA;IAED;;;;;;OAMG;IACH,MAAM,WAAW,GAAG,KAAK,EAAE,EAAa,EAAiB,EAAE;QACzD,MAAM,QAAQ,GAAG,aAAa,CAAA;QAC9B,KAAK,CAAC,KAAK,EAAE,CAAA;QACb,IAAI,CAAC,KAAK,EAAE,CAAA;QACZ,aAAa,GAAG,EAAE,CAAA;QAClB,IAAI,CAAC;YACH,MAAM,WAAW,CAAC,EAAE,CAAC,CAAA;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,KAAK,CAAC,MAAM,CAAC,gCAAgC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QACxG,CAAC;QACD,MAAM,QAAQ,GAAG,EAAE,KAAK,aAAa,IAAI,QAAQ,KAAK,aAAa,CAAA;QACnE,KAAK,CAAC,MAAM,CAAC,QAAQ;YACnB,CAAC,CAAC,0CAA0C;YAC5C,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,KAAK,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,eAAe,EAAE,EAAE,CAAC,CAAA;QAC1E,GAAG,CAAC,aAAa,EAAE,CAAA;IACrB,CAAC,CAAA;IAED,MAAM,gBAAgB,GAAG,KAAK,IAAmB,EAAE;QACjD,MAAM,WAAW,CAAC,aAAa,CAAC,CAAA;IAClC,CAAC,CAAA;IAED,0DAA0D;IAC1D,MAAM,UAAU,GAAG,CAAC,KAAyD,EAAQ,EAAE;QACrF,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAClB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACnB,CAAC,CAAA;IAED,uEAAuE;IACvE,MAAM,aAAa,GAAG,KAAK,EAAE,EAAa,EAAiC,EAAE;QAC3E,MAAM,QAAQ,GAAG,WAAW,CAAC,EAAE,CAAC,EAAE,cAAc,EAAE,EAAE,CAAA;QACpD,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAO,QAAQ,CAAA;QAC3C,MAAM,OAAO,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAA;QACzC,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACtD,CAAC,CAAA;IAED;;;;;;;;OAQG;IACH,MAAM,SAAS,GAAG,KAAK,EAAE,EAAa,EAAE,MAAe,EAAE,IAAiC,EAA+B,EAAE;QACzH,IAAI,YAAY,KAAK,SAAS;YAAE,OAAO,SAAS,CAAA;QAChD,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAA;QACnF,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAA;QACxB,MAAM,OAAO,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAA;QACzC,MAAM,MAAM,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,qBAAqB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;QAC3F,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,IAAI,CAAA;QACrC,MAAM,cAAc,GAAG,MAAM,aAAa,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;QACtD,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACjC,0EAA0E;YAC1E,wEAAwE;YACxE,8BAA8B;YAC9B,IAAI,eAAe,KAAK,SAAS;gBAAE,OAAO,CAAC,MAAM,YAAY,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAA;YAC1F,MAAM,IAAI,KAAK,CACb,WAAW,EAAE,eAAe,MAAM,mEAAmE,CACtG,CAAA;QACH,CAAC;QACD,IAAI,eAAe,KAAK,SAAS,IAAI,eAAe,KAAK,cAAc,EAAE,CAAC;YACxE,MAAM,IAAI,KAAK,CACb,WAAW,EAAE,eAAe,cAAc,kBAAkB,eAAe,4BAA4B,eAAe,oCAAoC,CAC3J,CAAA;QACH,CAAC;QACD,OAAO,cAAc,CAAA;IACvB,CAAC,CAAA;IAED,sFAAsF;IACtF,MAAM,aAAa,GAAG,KAAK,EAAE,EAAa,EAAE,MAAc,EAA+B,EAAE;QACzF,IAAI,CAAC;YACH,OAAO,CAAC,MAAM,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAA;QAClD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAA;QAClB,CAAC;IACH,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,KAAK,EAAE,EAAa,EAAE,MAAe,EAAE,IAAsB,EAAiB,EAAE;QAChG,0EAA0E;QAC1E,0DAA0D;QAC1D,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QAChD,IAAI,MAAM;YAAE,MAAM,aAAa,CAAC,EAAE,CAAC,CAAA;QACnC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE;YACnC,SAAS,EAAE,EAAE;YACb,MAAM;YACN,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;YAClB,MAAM;YACN,KAAK,EAAE,KAAK,EAAC,QAAQ,EAAC,EAAE;gBACtB,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;gBAC7B,IAAI,MAAM,KAAK,SAAS;oBAAE,MAAM,YAAY,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;YACvE,CAAC;YACD,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;SACxC,CAAC,CAAA;QACF,aAAa,GAAG,IAAI,CAAA;QACpB,aAAa,GAAG,EAAE,CAAA;QAClB,aAAa,GAAG,EAAE,CAAA;QAClB,KAAK,GAAG,MAAM,CAAA;QACd,2EAA2E;QAC3E,wDAAwD;QACxD,IAAI,IAAI,KAAK,SAAS;YAAE,MAAM,WAAW,CAAC,EAAE,CAAC,CAAA;QAC7C,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE;YAClB,KAAK,MAAM,CAAC,OAAO,EAAE,CAAA;QACvB,CAAC,CAAC,CAAA;QACF,iBAAiB,EAAE,CAAA;QACnB,KAAK,CAAC,MAAM,CAAC,WAAW,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QACxE,GAAG,CAAC,aAAa,EAAE,CAAA;IACrB,CAAC,CAAA;IAED,+EAA+E;IAC/E,MAAM,aAAa,GAAG,KAAK,EAAE,EAAa,EAAiB,EAAE;QAC3D,MAAM,QAAQ,GAAG,KAAK,CAAA;QACtB,KAAK,GAAG,SAAS,CAAA;QACjB,QAAQ,GAAG,KAAK,CAAA;QAChB,KAAK,CAAC,KAAK,EAAE,CAAA;QACb,IAAI,CAAC,KAAK,EAAE,CAAA;QACZ,MAAM,CAAC,KAAK,EAAE,CAAA;QACd,IAAI,QAAQ,KAAK,SAAS;YAAE,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAA;QACpD,MAAM,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;IAC3B,CAAC,CAAA;IAED;;;;;;OAMG;IACH;;;;;;OAMG;IACH;;;;;;OAMG;IACH,MAAM,mBAAmB,GAAG,CAAC,QAAgB,EAAQ,EAAE;QACrD,MAAM,OAAO,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAA;QAChD,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,MAAM;gBACT,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;gBAC1D,GAAG,CAAC,aAAa,EAAE,CAAA;gBACnB,OAAM;YACR,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;gBACjD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oBACtB,KAAK,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,EAAE,kDAAkD,CAAC,CAAA;oBAC7E,GAAG,CAAC,aAAa,EAAE,CAAA;oBACnB,OAAM;gBACR,CAAC;gBACD,KAAK,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;gBACnC,OAAM;YACR,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,MAAM,OAAO,GAAG,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,KAAK,CAAA;gBAC1D,KAAK,CAAC,MAAM,CAAC,OAAO;oBAClB,CAAC,CAAC,GAAG,OAAO,CAAC,EAAE,kBAAkB;oBACjC,CAAC,CAAC,GAAG,OAAO,CAAC,EAAE,8BAA8B,CAAC,CAAA;gBAChD,GAAG,CAAC,aAAa,EAAE,CAAA;gBACnB,OAAM;YACR,CAAC;YACD,KAAK,SAAS;gBACZ,KAAK,CAAC,MAAM,CAAC,eAAe,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;gBAC7C,GAAG,CAAC,aAAa,EAAE,CAAA;gBACnB,OAAM;QACV,CAAC;IACH,CAAC,CAAA;IAED,MAAM,cAAc,GAAG,CAAC,QAAgB,EAAQ,EAAE;QAChD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,KAAK,CAAC,MAAM,CAAC,+DAA+D,CAAC,CAAA;YAC7E,GAAG,CAAC,aAAa,EAAE,CAAA;YACnB,OAAM;QACR,CAAC;QACD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,KAAK,CAAC,MAAM,CAAC,oDAAoD,CAAC,CAAA;YAClE,GAAG,CAAC,aAAa,EAAE,CAAA;YACnB,OAAM;QACR,CAAC;QACD,MAAM,OAAO,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAA;QAC3C,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,MAAM;gBACT,WAAW,EAAE,CAAA;gBACb,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;gBAC5C,GAAG,CAAC,aAAa,EAAE,CAAA;gBACnB,OAAM;YACR,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;gBACzD,MAAM,IAAI,GAAG,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAA;gBACtC,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,EAAE;oBACtB,CAAC,CAAC,GAAG,OAAO,CAAC,EAAE,iBAAiB;oBAChC,CAAC,CAAC,GAAG,OAAO,CAAC,EAAE,YAAY,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gBAClF,WAAW,EAAE,CAAA;gBACb,OAAM;YACR,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;gBAC1D,KAAK,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS;oBAChC,CAAC,CAAC,GAAG,OAAO,CAAC,EAAE,eAAe;oBAC9B,CAAC,CAAC,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,EAAE,uBAAuB,CAAC,CAAA;gBACrG,WAAW,EAAE,CAAA;gBACb,OAAM;YACR,CAAC;YACD,KAAK,SAAS;gBACZ,KAAK,CAAC,MAAM,CAAC,UAAU,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;gBACxC,GAAG,CAAC,aAAa,EAAE,CAAA;gBACnB,OAAM;QACV,CAAC;IACH,CAAC,CAAA;IAED;;;;;;OAMG;IACH;;;;;;OAMG;IACH,MAAM,gBAAgB,GAAG,CAAC,QAAgB,EAAQ,EAAE;QAClD,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,KAAK,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;QAC3F,IAAI,CAAC;YACH,aAAa,CAAC,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,MAAM,CAAC,CAAA;YAC9D,KAAK,CAAC,MAAM,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAA;QAC/C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,KAAK,CAAC,MAAM,CAAC,mBAAmB,IAAI,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QACpG,CAAC;QACD,GAAG,CAAC,aAAa,EAAE,CAAA;IACrB,CAAC,CAAA;IAED;;;;;;;OAOG;IACH,0DAA0D;IAC1D,MAAM,aAAa,GAAG,CAAC,KAAa,EAAQ,EAAE;QAC5C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,KAAK,CAAC,MAAM,CAAC,oDAAoD,CAAC,CAAA;YAClE,GAAG,CAAC,aAAa,EAAE,CAAA;YACnB,OAAM;QACR,CAAC;QACD,KAAK,CAAC,KAAK,IAAI,EAAE;YACf,MAAM,QAAQ,GAAG,KAAK,CAAA;YACtB,KAAK,GAAG,SAAS,CAAA;YACjB,QAAQ,GAAG,KAAK,CAAA;YAChB,aAAa,GAAG,SAAS,CAAA;YACzB,KAAK,CAAC,KAAK,EAAE,CAAA;YACb,IAAI,CAAC,KAAK,EAAE,CAAA;YACZ,MAAM,CAAC,KAAK,EAAE,CAAA;YACd,IAAI,QAAQ,KAAK,SAAS;gBAAE,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAA;YACpD,MAAM,SAAS,CAAC,SAAS,CAAC,eAAe,UAAU,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAA;YAChE,IAAI,KAAK,KAAK,EAAE;gBAAE,gBAAgB,CAAC,KAAK,CAAC,CAAA;YACzC,KAAK,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAA;YACrC,GAAG,CAAC,aAAa,EAAE,CAAA;QACrB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YAC5B,KAAK,CAAC,MAAM,CAAC,8BAA8B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACpG,GAAG,CAAC,aAAa,EAAE,CAAA;QACrB,CAAC,CAAC,CAAA;IACJ,CAAC,CAAA;IAED,qDAAqD;IACrD,MAAM,cAAc,GAAG,GAAS,EAAE;QAChC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;QAC/C,GAAG,CAAC,aAAa,EAAE,CAAA;IACrB,CAAC,CAAA;IAED;;;;;OAKG;IACH,MAAM,cAAc,GAAG,GAAS,EAAE;QAChC,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,CAAA;QACrF,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YACpD,KAAK,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAA;YACnC,GAAG,CAAC,aAAa,EAAE,CAAA;YACnB,OAAM;QACR,CAAC;QACD,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAC5C,KAAK,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,MAAM,kCAAkC,CAAC,CAAA;QAC1E,GAAG,CAAC,aAAa,EAAE,CAAA;IACrB,CAAC,CAAA;IAED,MAAM,cAAc,GAAG,CAAC,KAAa,EAAQ,EAAE;QAC7C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,KAAK,CAAC,MAAM,CAAC,oDAAoD,CAAC,CAAA;YAClE,GAAG,CAAC,aAAa,EAAE,CAAA;YACnB,OAAM;QACR,CAAC;QACD,KAAK,CAAC,KAAK,IAAI,EAAE;YACf,MAAM,MAAM,GAAG,aAAa,CAAA;YAC5B,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,CAAA;YAC1C,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,CAAA;YAC/B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,KAAK,CAAC,MAAM,CAAC,yDAAyD,CAAC,CAAA;gBACvE,GAAG,CAAC,aAAa,EAAE,CAAA;gBACnB,OAAM;YACR,CAAC;YACD,MAAM,OAAO,GAAG,SAAS,CAAC,eAAe,UAAU,EAAE,EAAE,CAAC,CAAA;YACxD,MAAM,QAAQ,GAAG,KAAK,CAAA;YACtB,KAAK,GAAG,SAAS,CAAA;YACjB,QAAQ,GAAG,KAAK,CAAA;YAChB,aAAa,GAAG,SAAS,CAAA;YACzB,KAAK,CAAC,KAAK,EAAE,CAAA;YACb,IAAI,CAAC,KAAK,EAAE,CAAA;YACZ,MAAM,CAAC,KAAK,EAAE,CAAA;YACd,IAAI,QAAQ,KAAK,SAAS;gBAAE,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAA;YACpD,MAAM,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAA;YACjG,IAAI,KAAK,KAAK,EAAE;gBAAE,gBAAgB,CAAC,KAAK,CAAC,CAAA;YACzC,KAAK,CAAC,MAAM,CAAC,eAAe,MAAM,aAAa,KAAK,CAAC,WAAW,MAAM,KAAK,CAAC,eAAe,YAAY,CAAC,CAAA;YACxG,GAAG,CAAC,aAAa,EAAE,CAAA;QACrB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YAC5B,KAAK,CAAC,MAAM,CAAC,mBAAmB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACzF,GAAG,CAAC,aAAa,EAAE,CAAA;QACrB,CAAC,CAAC,CAAA;IACJ,CAAC,CAAA;IAED,MAAM,gBAAgB,GAAG,CAAC,KAAa,EAAQ,EAAE;QAC/C,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;YACjB,KAAK,CAAC,MAAM,CAAC,gEAAgE,CAAC,CAAA;YAC9E,GAAG,CAAC,aAAa,EAAE,CAAA;YACnB,OAAM;QACR,CAAC;QACD,MAAM,OAAO,GAAI,GAAG,CAAC,GAAG,CAAC,UAAU,CAAsD,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,CAAA;QAC/G,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,cAAc,CAA8F,CAAA;QACnI,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,MAAM,EAAE,MAAM,KAAK,UAAU,EAAE,CAAC;YAClE,KAAK,CAAC,MAAM,CAAC,8EAA8E,CAAC,CAAA;YAC5F,GAAG,CAAC,aAAa,EAAE,CAAA;YACnB,OAAM;QACR,CAAC;QACD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;YAC9C,KAAK,CAAC,MAAM,CAAC,uBAAuB,OAAO,QAAQ,EAAE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAA;QACtG,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,KAAK,CAAC,MAAM,CAAC,qBAAqB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAC7F,CAAC;QACD,GAAG,CAAC,aAAa,EAAE,CAAA;IACrB,CAAC,CAAA;IAED,MAAM,eAAe,GAAG,CAAC,QAAgB,EAAQ,EAAE;QACjD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,KAAK,CAAC,MAAM,CAAC,yEAAyE,CAAC,CAAA;YACvF,GAAG,CAAC,aAAa,EAAE,CAAA;YACnB,OAAM;QACR,CAAC;QACD,MAAM,OAAO,GAAG,kBAAkB,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,EAAE,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAA;QACxF,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,SAAS,CAAC,CAAC,CAAC;gBACf,MAAM,KAAK,GAAG,WAAW,EAAE,CAAA;gBAC3B,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,EAAE,CAAA;gBACrC,MAAM,KAAK,GAAG,OAAO,KAAK,SAAS;oBACjC,qEAAqE;oBACrE,kDAAkD;oBAClD,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,IAAI,OAAO,GAAG,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,MAAM,GAAG,wBAAwB;oBAC5G,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,eAAe,GAAG,EAAE,CAAA;gBACzH,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;gBAClE,KAAK,CAAC,MAAM,CAAC,SAAS,KAAK,iBAAiB,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAA;gBAC9K,GAAG,CAAC,aAAa,EAAE,CAAA;gBACnB,OAAM;YACR,CAAC;YACD,KAAK,aAAa;gBAChB,KAAK,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;oBACnD,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;wBAC/B,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,6CAA6C;wBAClE,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;oBACvE,GAAG,CAAC,aAAa,EAAE,CAAA;gBACrB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;oBAC1B,KAAK,CAAC,MAAM,CAAC,0BAA0B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;oBAChG,GAAG,CAAC,aAAa,EAAE,CAAA;gBACrB,CAAC,CAAC,CAAA;gBACF,OAAM;YACR,KAAK,QAAQ;gBACX,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;gBAClC,KAAK,CAAC,MAAM,CAAC,gBAAgB,OAAO,CAAC,MAAM,CAAC,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,oBAAoB,CAAC,CAAA;gBACjG,GAAG,CAAC,aAAa,EAAE,CAAA;gBACnB,OAAM;YACR,KAAK,SAAS;gBACZ,KAAK,CAAC,MAAM,CAAC,WAAW,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;gBACzC,GAAG,CAAC,aAAa,EAAE,CAAA;gBACnB,OAAM;QACV,CAAC;IACH,CAAC,CAAA;IAGD;;;;;;;;OAQG;IACH,MAAM,gBAAgB,GAAG,CAAC,QAAgB,EAAQ,EAAE;QAClD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,KAAK,CAAC,MAAM,CAAC,iEAAiE,CAAC,CAAA;YAC/E,GAAG,CAAC,aAAa,EAAE,CAAA;YACnB,OAAM;QACR,CAAC;QACD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,KAAK,CAAC,MAAM,CAAC,oDAAoD,CAAC,CAAA;YAClE,GAAG,CAAC,aAAa,EAAE,CAAA;YACnB,OAAM;QACR,CAAC;QACD,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAA;QACnC,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC7C,MAAM,OAAO,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAA;QAC7C,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC5B,IAAI,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBAClC,KAAK,CAAC,MAAM,CAAC,qBAAqB,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,OAAO,GAAG,8EAA8E,CAAC,CAAA;gBAClK,GAAG,CAAC,aAAa,EAAE,CAAA;gBACnB,OAAM;YACR,CAAC;YACD,KAAK,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAA;YACjG,OAAM;QACR,CAAC;QACD,KAAK,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAC9B,CAAC,CAAA;IAED,8EAA8E;IAC9E,MAAM,WAAW,GAAG,KAAK,EAAE,EAAU,EAAiB,EAAE;QACtD,IAAI,YAAY,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS;YAAE,OAAM;QAC7D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;YACzD,IAAI,GAAG,MAAM,CAAA;YACb,wEAAwE;YACxE,+DAA+D;YAC/D,IAAI,aAAa,KAAK,aAAa;gBAAE,MAAM,WAAW,CAAC,aAAa,CAAC,CAAA;QACvE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,KAAK,CAAC,MAAM,CAAC,8BAA8B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QACtG,CAAC;QACD,GAAG,CAAC,aAAa,EAAE,CAAA;IACrB,CAAC,CAAA;IAED,MAAM,QAAQ,GAAG,GAAW,EAAE;QAC5B,MAAM,OAAO,GAAG,KAAK,EAAE,KAAK,CAAA;QAC5B,MAAM,UAAU,GAAG,OAAO,KAAK,SAAS,IAAI,QAAQ,EAAE,KAAK,SAAS;YAClE,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAA;QACtE,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACvF,OAAO,aAAa,QAAQ,eAAe,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,UAAU,EAAE,CAAA;IAC7F,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,IAAY,EAAQ,EAAE;QACtD,MAAM,OAAO,GAAG,KAAK,CAAA;QACrB,MAAM,QAAQ,GAAG,QAAQ,EAAE,CAAA;QAC3B,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,KAAK,CAAC,MAAM,CAAC,oDAAoD,CAAC,CAAA;YAClE,GAAG,CAAC,aAAa,EAAE,CAAA;YACnB,OAAM;QACR,CAAC;QACD,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YAC/E,KAAK,CAAC,MAAM,CAAC,qBAAqB,IAAI,MAAM,QAAQ,EAAE,EAAE,CAAC,CAAA;YACzD,GAAG,CAAC,aAAa,EAAE,CAAA;YACnB,OAAM;QACR,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;QACxC,KAAK,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;YACjF,MAAM,MAAM,GAAG,SAAS,EAAE,MAAM,CAAA;YAChC,IAAI,MAAM,KAAK,SAAS;gBAAE,OAAM;YAChC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,YAAY,MAAM,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC,CAAA;YAC9H,GAAG,CAAC,aAAa,EAAE,CAAA;QACrB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YAC1B,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,YAAY,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAC1F,GAAG,CAAC,aAAa,EAAE,CAAA;QACrB,CAAC,CAAC,CAAA;IACJ,CAAC,CAAA;IAED,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE;QACvB,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;QAC3C,QAAQ,UAAU,CAAC,IAAI,EAAE,CAAC;YACxB,KAAK,OAAO;gBACV,OAAM;YACR,KAAK,MAAM;gBACT,WAAW,CAAC,CAAC,CAAC,CAAA;gBACd,OAAM;YACR,KAAK,OAAO;gBACV,eAAe,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;gBACpC,OAAM;YACR,KAAK,QAAQ;gBACX,gBAAgB,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;gBACrC,OAAM;YACR,KAAK,MAAM;gBACT,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;gBACnC,OAAM;YACR,KAAK,QAAQ;gBACX,gBAAgB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;gBAClC,OAAM;YACR,KAAK,QAAQ;gBACX,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;gBACjC,OAAM;YACR,KAAK,WAAW;gBACd,mBAAmB,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;gBACxC,OAAM;YACR,KAAK,MAAM;gBACT,cAAc,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;gBAChC,OAAM;YACR,KAAK,KAAK;gBACR,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;gBAC/B,OAAM;YACR,KAAK,MAAM;gBACT,cAAc,EAAE,CAAA;gBAChB,OAAM;YACR,KAAK,MAAM;gBACT,cAAc,EAAE,CAAA;gBAChB,OAAM;YACR,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,KAAK,GAAG,WAAW,EAAE,CAAA;gBAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,KAAK,SAAS;oBAC/C,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,WAAW,YAAY,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,EAAE,CAAA;gBACrI,KAAK,CAAC,MAAM,CAAC;oBACX,WAAW,aAAa,EAAE;oBAC1B,aAAa,KAAK,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,aAAa,EAAE;oBACxE,KAAK,CAAC,KAAK,KAAK,SAAS;wBACvB,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,SAAS,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,QAAQ,GAAG,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,MAAM,GAAG,EAAE;oBAC9I,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,WAAW,EAAE;oBACzE,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,KAAK,CAAC,MAAM,EAAE;oBACtE,OAAO;oBACP,KAAK,CAAC,mBAAmB,KAAK,SAAS,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS;wBACzE,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,aAAa,YAAY,CAAC,KAAK,CAAC,mBAAmB,IAAI,CAAC,CAAC,QAAQ,YAAY,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC,EAAE;oBAC5G,OAAO,KAAK,CAAC,GAAG,EAAE;iBACnB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;gBACjD,GAAG,CAAC,aAAa,EAAE,CAAA;gBACnB,OAAM;YACR,CAAC;YACD,KAAK,OAAO;gBACV,KAAK,CAAC,KAAK,EAAE,CAAA;gBACb,IAAI,CAAC,KAAK,EAAE,CAAA;gBACZ,GAAG,CAAC,aAAa,EAAE,CAAA;gBACnB,OAAM;YACR,KAAK,MAAM;gBACT,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAA;gBACxB,GAAG,CAAC,aAAa,EAAE,CAAA;gBACnB,OAAM;YACR,KAAK,QAAQ;gBACX,KAAK,aAAa,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;oBACrH,KAAK,CAAC,MAAM,CAAC,qBAAqB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;oBAC3F,GAAG,CAAC,aAAa,EAAE,CAAA;gBACrB,CAAC,CAAC,CAAA;gBACF,OAAM;YACR,KAAK,SAAS;gBACZ,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,CAAA;gBAC5C,OAAM;YACR,KAAK,QAAQ;gBACX,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBACxB,KAAK,CAAC,MAAM,CAAC,oDAAoD,CAAC,CAAA;oBAClE,GAAG,CAAC,aAAa,EAAE,CAAA;oBACnB,OAAM;gBACR,CAAC;gBACD,yEAAyE;gBACzE,IAAI,QAAQ;oBAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;;oBACrC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QACtC,CAAC;IACH,CAAC,CAAA;IAED,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;QACxD,2EAA2E;QAC3E,mEAAmE;QACnE,IAAI,OAAO,CAAC,EAAE,KAAK,aAAa,EAAE,CAAC;YACjC,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAChC,QAAQ,GAAG,IAAI,CAAA;gBACf,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBAC1B,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC,CAAA;YACvD,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC9B,MAAM,MAAM,GAAG,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa,CAAA;gBAC3E,QAAQ,GAAG,KAAK,CAAA;gBAChB,aAAa,GAAG,SAAS,CAAA;gBACzB,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC,CAAA;gBACnD,IAAI,cAAc,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;oBAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBACpG,wEAAwE;gBACxE,2DAA2D;gBAC3D,WAAW,EAAE,CAAA;YACf,CAAC;QACH,CAAC;QACD,IAAI,OAAO,CAAC,EAAE,KAAK,aAAa;YAAE,OAAM;QACxC,UAAU,CAAC,KAAK,CAAC,CAAA;QACjB,GAAG,CAAC,aAAa,EAAE,CAAA;IACrB,CAAC,CAAC,CAAC,CAAA;IAEH;;;;;OAKG;IACH,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,OAA8C,EAAgB,EAAE,CAC9F,GAAG,CAAC,EAAgG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IAEtH,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,IAAI,CAAC,EAAE;QAChD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAClB,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC7B,MAAM,QAAQ,GAAG,OAAO,MAAM,EAAE,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAA;QACpF,MAAM,EAAE,GAAG,OAAO,MAAM,EAAE,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QAC1D,KAAK,CAAC,MAAM,CAAC,YAAY,QAAQ,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAA;QAC1E,GAAG,CAAC,aAAa,EAAE,CAAA;IACrB,CAAC,CAAC,CAAC,CAAA;IAEH,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,CAAC,EAAE;QAC9C,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAChB,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC7B,MAAM,QAAQ,GAAG,OAAO,MAAM,EAAE,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAA;QACpF,MAAM,IAAI,GAAG,OAAO,MAAM,EAAE,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAA;QACnF,KAAK,CAAC,MAAM,CAAC,YAAY,QAAQ,YAAY,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC,CAAA;QACtF,GAAG,CAAC,aAAa,EAAE,CAAA;IACrB,CAAC,CAAC,CAAC,CAAA;IAEH,4EAA4E;IAC5E,0EAA0E;IAC1E,mCAAmC;IACnC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;QAC1D,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,aAAa;YAAE,OAAO,IAAI,EAAE,CAAA;QACrD,OAAO,IAAI,OAAO,CAAkB,OAAO,CAAC,EAAE;YAC5C,MAAM,IAAI,GAAG,IAAI,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;YAC/D,OAAO,CAAC,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;gBAC7C,IAAI,CAAC,MAAM,EAAE,CAAA;gBACb,IAAI,OAAO,EAAE,IAAI,KAAK,IAAI;oBAAE,SAAS,EAAE,CAAA;gBACvC,OAAO,CAAC,WAAW,CAAC,CAAA;YACtB,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;YAClB,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;QACvD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAC,CAAA;IAEH,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,wBAAwB,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;QAChE,MAAM,OAAO,GAAI,OAAuC,CAAC,KAAK,EAAE,EAAE,CAAA;QAClE,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,aAAa;YAAE,OAAO,IAAI,EAAE,CAAA;QACrE,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC,CAAA;QAC1C,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,EAAE,CAAA;QACzC,OAAO,IAAI,OAAO,CAAwB,OAAO,CAAC,EAAE;YAClD,MAAM,IAAI,GAAG,IAAI,YAAY,CAAC,SAAS,CAAC,CAAA;YACxC,2EAA2E;YAC3E,kEAAkE;YAClE,QAAQ,CAAC;gBACP,IAAI,EAAE,UAAU;gBAChB,IAAI;gBACJ,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC;oBACzB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;wBAC9B,EAAE,EAAE,MAAM,CAAC,EAAE;wBACb,QAAQ,EAAE,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC;wBAC9B,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;qBAClE,CAAC,CAAC;iBACJ,CAAC;aACH,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAC,CAAA;IAEH,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAA;IAEpE,yEAAyE;IACzE,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE;QACzC,IAAI,KAAK,KAAK,SAAS,IAAK,KAAyB,CAAC,EAAE,KAAK,aAAa;YAAE,OAAM;QAClF,WAAW,EAAE,CAAA;IACf,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAA;IAEjB,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,EAAE,OAAO,CAAC,EAAE;QAC7C,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,aAAa;YAAE,OAAM;QAC9C,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAChC,GAAG,CAAC,aAAa,EAAE,CAAA;IACrB,CAAC,CAAC,CAAC,CAAA;IAEH,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,wBAAwB,EAAE,OAAO,CAAC,EAAE;QACxD,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,aAAa;YAAE,OAAM;QAC9C,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO;YAAE,OAAM;QAC1C,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC3C,GAAG,CAAC,aAAa,EAAE,CAAA;IACrB,CAAC,CAAC,CAAC,CAAA;IAEH,MAAM,QAAQ,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAA;IAC/C,IAAI,QAAQ,KAAK,SAAS;QAAE,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAElD;;;;;;;OAOG;IACH,MAAM,IAAI,GAAG,KAAK,IAAmB,EAAE;QACrC,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;YAC3B,MAAM,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;YACpD,OAAM;QACR,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,aAAa,EAAE,CAAA;QACpC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,WAAW,CAAC,CAAC,CAAC,CAAA;YACd,OAAM;QACR,CAAC;QACD,MAAM,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAC/B,CAAC,CAAA;IAED;;;;;;OAMG;IACH,MAAM,KAAK,GAAG,KAAK,IAAmB,EAAE;QACtC,IAAI,eAAe,KAAK,SAAS,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAChE,IAAI,GAAG,CAAC,MAAM,YAAY,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAA;QACzD,CAAC;QACD,4EAA4E;QAC5E,wEAAwE;QACxE,wEAAwE;QACxE,2EAA2E;QAC3E,IAAI,CAAC,QAAQ,CAAC,YAAY;YAAE,MAAM,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;QAC3F,GAAG,CAAC,KAAK,EAAE,CAAA;QACX,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC,CAAA;QACnD,MAAM,IAAI,EAAE,CAAA;IACd,CAAC,CAAA;IAED,KAAK,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;QACpC,WAAW,CAAC,CAAC,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IACxE,CAAC,CAAC,CAAA;AACJ,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { CombinedAutocompleteProvider, type SlashCommand } from '@earendil-works/pi-tui';
2
+ /** One command another package registered, as the registry reports it. */
3
+ export interface RegisteredCommand {
4
+ readonly name: string;
5
+ readonly description: string;
6
+ }
7
+ /**
8
+ * Every command the editor can complete.
9
+ *
10
+ * The surface's own commands come first because they always exist, and the
11
+ * registry's follow: a reader typing a slash wants to see what this session can
12
+ * actually run, not what a build happened to ship.
13
+ */
14
+ export declare function commandMenu(registered: readonly RegisteredCommand[]): SlashCommand[];
15
+ /**
16
+ * Build the editor's completion provider.
17
+ *
18
+ * Commands and file references share one provider so a slash, an at-sign, and a
19
+ * path prefix all behave the same way while typing.
20
+ */
21
+ export declare function createCompletionProvider(registered: readonly RegisteredCommand[], cwd: string): CombinedAutocompleteProvider;
22
+ //# sourceMappingURL=completion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../../src/input/completion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAGxF,0EAA0E;AAC1E,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;CAC7B;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,SAAS,iBAAiB,EAAE,GAAG,YAAY,EAAE,CAOpF;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,SAAS,iBAAiB,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,4BAA4B,CAE5H"}
@@ -0,0 +1,27 @@
1
+ import { CombinedAutocompleteProvider } from '@earendil-works/pi-tui';
2
+ import { LOCAL_COMMANDS, LOCAL_COMMAND_DESCRIPTIONS } from "./submission.js";
3
+ /**
4
+ * Every command the editor can complete.
5
+ *
6
+ * The surface's own commands come first because they always exist, and the
7
+ * registry's follow: a reader typing a slash wants to see what this session can
8
+ * actually run, not what a build happened to ship.
9
+ */
10
+ export function commandMenu(registered) {
11
+ const local = LOCAL_COMMANDS.map(name => ({
12
+ // The menu shows and completes the bare name; the slash is already typed.
13
+ name: name.slice(1),
14
+ description: LOCAL_COMMAND_DESCRIPTIONS[name] ?? '',
15
+ }));
16
+ return [...local, ...registered.map(command => ({ name: command.name, description: command.description }))];
17
+ }
18
+ /**
19
+ * Build the editor's completion provider.
20
+ *
21
+ * Commands and file references share one provider so a slash, an at-sign, and a
22
+ * path prefix all behave the same way while typing.
23
+ */
24
+ export function createCompletionProvider(registered, cwd) {
25
+ return new CombinedAutocompleteProvider(commandMenu(registered), cwd);
26
+ }
27
+ //# sourceMappingURL=completion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completion.js","sourceRoot":"","sources":["../../src/input/completion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAqB,MAAM,wBAAwB,CAAA;AACxF,OAAO,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAA;AAQ5E;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,UAAwC;IAClE,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxC,0EAA0E;QAC1E,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACnB,WAAW,EAAE,0BAA0B,CAAC,IAAI,CAAC,IAAI,EAAE;KACpD,CAAC,CAAC,CAAA;IACH,OAAO,CAAC,GAAG,KAAK,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAA;AAC7G,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CAAC,UAAwC,EAAE,GAAW;IAC5F,OAAO,IAAI,4BAA4B,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,CAAA;AACvE,CAAC"}
@@ -0,0 +1,62 @@
1
+ /** What one submitted editor line asks the surface to do. */
2
+ export type Submission = {
3
+ readonly kind: 'empty';
4
+ } | {
5
+ readonly kind: 'quit';
6
+ } | {
7
+ readonly kind: 'clear';
8
+ } | {
9
+ readonly kind: 'help';
10
+ } | {
11
+ readonly kind: 'resume';
12
+ } | {
13
+ readonly kind: 'status';
14
+ } | {
15
+ readonly kind: 'model';
16
+ readonly argument: string;
17
+ } | {
18
+ readonly kind: 'preset';
19
+ readonly argument: string;
20
+ } | {
21
+ readonly kind: 'jobs';
22
+ readonly argument: string;
23
+ } | {
24
+ readonly kind: 'rename';
25
+ readonly title: string;
26
+ } | {
27
+ readonly kind: 'export';
28
+ readonly path: string;
29
+ } | {
30
+ readonly kind: 'subagents';
31
+ readonly argument: string;
32
+ } | {
33
+ readonly kind: 'fork';
34
+ readonly title: string;
35
+ } | {
36
+ readonly kind: 'new';
37
+ readonly title: string;
38
+ } | {
39
+ readonly kind: 'todo';
40
+ } | {
41
+ readonly kind: 'copy';
42
+ } | {
43
+ readonly kind: 'command';
44
+ readonly name: string;
45
+ readonly line: string;
46
+ } | {
47
+ readonly kind: 'prompt';
48
+ readonly text: string;
49
+ };
50
+ /** Commands the surface answers itself, without a model turn. */
51
+ export declare const LOCAL_COMMANDS: readonly ["/help", "/status", "/model", "/preset", "/todo", "/jobs", "/subagents", "/fork", "/new", "/rename", "/export", "/copy", "/clear", "/resume", "/quit", "/exit"];
52
+ /** What each local command does, shown in the editor's completion menu. */
53
+ export declare const LOCAL_COMMAND_DESCRIPTIONS: Readonly<Record<string, string>>;
54
+ /**
55
+ * Classify one submitted line.
56
+ *
57
+ * Deciding this in one pure place keeps the plugin's wiring a switch instead of
58
+ * a chain of string comparisons, and a slash line that is not a local command
59
+ * is still routed as a command rather than guessed at by the model.
60
+ */
61
+ export declare function classifySubmission(text: string): Submission;
62
+ //# sourceMappingURL=submission.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"submission.d.ts","sourceRoot":"","sources":["../../src/input/submission.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,MAAM,MAAM,UAAU,GAClB;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAC1B;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACzB;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAC1B;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACzB;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,GAC3B;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,GAC3B;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACrD;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACtD;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACpD;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACnD;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAClD;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACzD;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACjD;IAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAChD;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACzB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACzB;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC1E;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AAEtD,iEAAiE;AACjE,eAAO,MAAM,cAAc,2KAEjB,CAAA;AAEV,2EAA2E;AAC3E,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAiBvE,CAAA;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAwC3D"}
@@ -0,0 +1,80 @@
1
+ /** Commands the surface answers itself, without a model turn. */
2
+ export const LOCAL_COMMANDS = [
3
+ '/help', '/status', '/model', '/preset', '/todo', '/jobs', '/subagents', '/fork', '/new', '/rename', '/export', '/copy', '/clear', '/resume', '/quit', '/exit',
4
+ ];
5
+ /** What each local command does, shown in the editor's completion menu. */
6
+ export const LOCAL_COMMAND_DESCRIPTIONS = {
7
+ '/help': 'list registered and local commands',
8
+ '/status': 'show the session, model, permissions, and context',
9
+ '/model': 'show or switch the model for the next step',
10
+ '/preset': 'choose the agent preset (mode) this session runs',
11
+ '/jobs': 'list background jobs, read one, or kill one',
12
+ '/subagents': 'list delegations; /subagents open <id|last> reads one, /subagents kill <id> stops one',
13
+ '/todo': 'show the list of tasks the agent is keeping',
14
+ '/fork': 'branch this conversation and continue in the branch',
15
+ '/new': 'start a fresh session without leaving the terminal',
16
+ '/copy': 'copy the last answer to the clipboard through the terminal',
17
+ '/rename': 'give this session a title the picker will show',
18
+ '/export': 'write the visible transcript to a markdown file',
19
+ '/clear': 'clear the visible transcript',
20
+ '/resume': 'open another stored session',
21
+ '/quit': 'leave and print the resume command',
22
+ '/exit': 'leave and print the resume command',
23
+ };
24
+ /**
25
+ * Classify one submitted line.
26
+ *
27
+ * Deciding this in one pure place keeps the plugin's wiring a switch instead of
28
+ * a chain of string comparisons, and a slash line that is not a local command
29
+ * is still routed as a command rather than guessed at by the model.
30
+ */
31
+ export function classifySubmission(text) {
32
+ const trimmed = text.trim();
33
+ if (trimmed === '')
34
+ return { kind: 'empty' };
35
+ if (trimmed === '/quit' || trimmed === '/exit')
36
+ return { kind: 'quit' };
37
+ if (trimmed === '/clear')
38
+ return { kind: 'clear' };
39
+ if (trimmed === '/help')
40
+ return { kind: 'help' };
41
+ if (trimmed === '/resume')
42
+ return { kind: 'resume' };
43
+ if (trimmed === '/status')
44
+ return { kind: 'status' };
45
+ if (trimmed === '/model' || trimmed.startsWith('/model ')) {
46
+ return { kind: 'model', argument: trimmed.slice('/model'.length).trim() };
47
+ }
48
+ if (trimmed === '/preset' || trimmed.startsWith('/preset ')) {
49
+ return { kind: 'preset', argument: trimmed.slice('/preset'.length).trim() };
50
+ }
51
+ if (trimmed === '/jobs' || trimmed.startsWith('/jobs ')) {
52
+ return { kind: 'jobs', argument: trimmed.slice('/jobs'.length).trim() };
53
+ }
54
+ if (trimmed === '/rename' || trimmed.startsWith('/rename ')) {
55
+ return { kind: 'rename', title: trimmed.slice('/rename'.length).trim() };
56
+ }
57
+ if (trimmed === '/export' || trimmed.startsWith('/export ')) {
58
+ return { kind: 'export', path: trimmed.slice('/export'.length).trim() };
59
+ }
60
+ if (trimmed === '/subagents' || trimmed.startsWith('/subagents ')) {
61
+ return { kind: 'subagents', argument: trimmed.slice('/subagents'.length).trim() };
62
+ }
63
+ if (trimmed === '/fork' || trimmed.startsWith('/fork ')) {
64
+ return { kind: 'fork', title: trimmed.slice('/fork'.length).trim() };
65
+ }
66
+ if (trimmed === '/todo')
67
+ return { kind: 'todo' };
68
+ if (trimmed === '/copy')
69
+ return { kind: 'copy' };
70
+ if (trimmed === '/new' || trimmed.startsWith('/new ')) {
71
+ return { kind: 'new', title: trimmed.slice('/new'.length).trim() };
72
+ }
73
+ if (trimmed.startsWith('/')) {
74
+ const [head = ''] = trimmed.slice(1).split(/\s+/u, 1);
75
+ const name = head.toLowerCase();
76
+ return name === '' ? { kind: 'empty' } : { kind: 'command', name, line: trimmed };
77
+ }
78
+ return { kind: 'prompt', text: trimmed };
79
+ }
80
+ //# sourceMappingURL=submission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"submission.js","sourceRoot":"","sources":["../../src/input/submission.ts"],"names":[],"mappings":"AAqBA,iEAAiE;AACjE,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO;CACtJ,CAAA;AAEV,2EAA2E;AAC3E,MAAM,CAAC,MAAM,0BAA0B,GAAqC;IAC1E,OAAO,EAAE,oCAAoC;IAC7C,SAAS,EAAE,mDAAmD;IAC9D,QAAQ,EAAE,4CAA4C;IACtD,SAAS,EAAE,kDAAkD;IAC7D,OAAO,EAAE,6CAA6C;IACtD,YAAY,EAAE,uFAAuF;IACrG,OAAO,EAAE,6CAA6C;IACtD,OAAO,EAAE,qDAAqD;IAC9D,MAAM,EAAE,oDAAoD;IAC5D,OAAO,EAAE,4DAA4D;IACrE,SAAS,EAAE,gDAAgD;IAC3D,SAAS,EAAE,iDAAiD;IAC5D,QAAQ,EAAE,8BAA8B;IACxC,SAAS,EAAE,6BAA6B;IACxC,OAAO,EAAE,oCAAoC;IAC7C,OAAO,EAAE,oCAAoC;CAC9C,CAAA;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;IAC3B,IAAI,OAAO,KAAK,EAAE;QAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;IAC5C,IAAI,OAAO,KAAK,OAAO,IAAI,OAAO,KAAK,OAAO;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;IACvE,IAAI,OAAO,KAAK,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;IAClD,IAAI,OAAO,KAAK,OAAO;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;IAChD,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAA;IACpD,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAA;IACpD,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAA;IAC3E,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5D,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAA;IAC7E,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAA;IACzE,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5D,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAA;IAC1E,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5D,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAA;IACzE,CAAC;IACD,IAAI,OAAO,KAAK,YAAY,IAAI,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAClE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAA;IACnF,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAA;IACtE,CAAC;IACD,IAAI,OAAO,KAAK,OAAO;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;IAChD,IAAI,OAAO,KAAK,OAAO;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;IAChD,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACtD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAA;IACpE,CAAC;IACD,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QACrD,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QAC/B,OAAO,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;IACnF,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;AAC1C,CAAC"}
package/lib/jobs.d.ts ADDED
@@ -0,0 +1,64 @@
1
+ import type { Context } from '@deepseek-ai/cordis';
2
+ /** Lifecycle states a background job can be in. */
3
+ export type JobStatus = 'running' | 'stopping' | 'completed' | 'killed' | 'failed';
4
+ /** One background job as the surface shows it. */
5
+ export interface JobSummary {
6
+ readonly id: string;
7
+ readonly kind: string;
8
+ readonly label: string;
9
+ readonly status: JobStatus;
10
+ readonly startedAt: number;
11
+ readonly finishedAt: number | undefined;
12
+ }
13
+ /** What a `/jobs` argument asks the surface to do. */
14
+ export type JobsCommand = {
15
+ readonly kind: 'list';
16
+ } | {
17
+ readonly kind: 'read';
18
+ readonly id: string;
19
+ } | {
20
+ readonly kind: 'kill';
21
+ readonly id: string;
22
+ };
23
+ /** Jobs the dock lists before the count takes over. */
24
+ export declare const DOCK_JOB_LIMIT = 2;
25
+ /** Output lines a `/jobs read` shows, so a chatty job cannot flood the view. */
26
+ export declare const JOB_READ_LINES = 20;
27
+ /** How long a job ran, or has been running, in the reader's units. */
28
+ export declare function describeDuration(ms: number): string;
29
+ /** Whether a job still holds resources. */
30
+ export declare function isLive(status: JobStatus): boolean;
31
+ /** One job as a single row, with its duration and where it ended up. */
32
+ export declare function describeJob(job: JobSummary, now: number): string;
33
+ /** The whole board as lines, newest first, so a reader can see what is running. */
34
+ export declare function describeJobs(jobs: readonly JobSummary[], now: number): string;
35
+ /**
36
+ * Read a `/jobs` argument.
37
+ *
38
+ * The forms stay explicit because the id is the only handle a reader has on a
39
+ * job: a bare id would be ambiguous between reading and killing it.
40
+ */
41
+ export declare function parseJobsArgument(argument: string): JobsCommand | {
42
+ readonly kind: 'invalid';
43
+ readonly reason: string;
44
+ };
45
+ /** The background-job registry, when the composition mounts one. */
46
+ export interface JobDirectory {
47
+ list(caller: unknown): readonly JobSummary[];
48
+ read(caller: unknown, id: string): {
49
+ readonly text: string;
50
+ readonly snapshot: JobSummary | undefined;
51
+ } | undefined;
52
+ kill(caller: unknown, id: string): 'requested' | 'already-finished' | undefined;
53
+ /** Watch for changes; the callback receives the owner the change belongs to. */
54
+ watch(listener: (owner: unknown) => void): () => void;
55
+ }
56
+ /**
57
+ * Wrap the job registry.
58
+ *
59
+ * Jobs are live process state rather than durable events, so this is the one
60
+ * part of the surface a resume cannot reconstruct: the dock shows what this
61
+ * run started, and says so by simply being empty afterwards.
62
+ */
63
+ export declare function createJobDirectory(ctx: Context): JobDirectory | undefined;
64
+ //# sourceMappingURL=jobs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jobs.d.ts","sourceRoot":"","sources":["../src/jobs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAGlD,mDAAmD;AACnD,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAElF,kDAAkD;AAClD,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;CACxC;AAED,sDAAsD;AACtD,MAAM,MAAM,WAAW,GACnB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACzB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAA;AAElD,uDAAuD;AACvD,eAAO,MAAM,cAAc,IAAI,CAAA;AAE/B,gFAAgF;AAChF,eAAO,MAAM,cAAc,KAAK,CAAA;AAWhC,sEAAsE;AACtE,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAKnD;AAED,2CAA2C;AAC3C,wBAAgB,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAEjD;AAUD,wEAAwE;AACxE,wBAAgB,WAAW,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAMhE;AAED,mFAAmF;AACnF,wBAAgB,YAAY,CAAC,IAAI,EAAE,SAAS,UAAU,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAS7E;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CASvH;AAyBD,oEAAoE;AACpE,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,UAAU,EAAE,CAAA;IAC5C,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,GAAG;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,GAAG,SAAS,CAAA;KAAE,GAAG,SAAS,CAAA;IACnH,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,GAAG,WAAW,GAAG,kBAAkB,GAAG,SAAS,CAAA;IAC/E,gFAAgF;IAChF,KAAK,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI,CAAA;CACtD;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,YAAY,GAAG,SAAS,CAyBzE"}
package/lib/jobs.js ADDED
@@ -0,0 +1,123 @@
1
+ import { describeAge } from "./ui/picker.js";
2
+ /** Jobs the dock lists before the count takes over. */
3
+ export const DOCK_JOB_LIMIT = 2;
4
+ /** Output lines a `/jobs read` shows, so a chatty job cannot flood the view. */
5
+ export const JOB_READ_LINES = 20;
6
+ const SECOND_MS = 1000;
7
+ const MINUTE_MS = 60 * SECOND_MS;
8
+ const HOUR_MS = 60 * MINUTE_MS;
9
+ const STATUSES = new Set(['running', 'stopping', 'completed', 'killed', 'failed']);
10
+ function asRecord(value) {
11
+ return typeof value === 'object' && value !== null ? value : undefined;
12
+ }
13
+ /** How long a job ran, or has been running, in the reader's units. */
14
+ export function describeDuration(ms) {
15
+ const elapsed = Math.max(0, ms);
16
+ if (elapsed < MINUTE_MS)
17
+ return `${Math.max(1, Math.round(elapsed / SECOND_MS))}s`;
18
+ if (elapsed < HOUR_MS)
19
+ return `${Math.floor(elapsed / MINUTE_MS)}m${String(Math.round((elapsed % MINUTE_MS) / SECOND_MS)).padStart(2, '0')}s`;
20
+ return `${Math.floor(elapsed / HOUR_MS)}h${String(Math.floor((elapsed % HOUR_MS) / MINUTE_MS)).padStart(2, '0')}m`;
21
+ }
22
+ /** Whether a job still holds resources. */
23
+ export function isLive(status) {
24
+ return status === 'running' || status === 'stopping';
25
+ }
26
+ /** When a settled job ended, in the reader's units. */
27
+ function describeFinished(job, now) {
28
+ const finishedAt = job.finishedAt ?? job.startedAt;
29
+ const elapsed = Math.max(0, now - finishedAt);
30
+ if (elapsed < SECOND_MS)
31
+ return 'just now';
32
+ return elapsed < MINUTE_MS ? `${describeDuration(elapsed)} ago` : describeAge(finishedAt, now);
33
+ }
34
+ /** One job as a single row, with its duration and where it ended up. */
35
+ export function describeJob(job, now) {
36
+ const time = isLive(job.status)
37
+ ? `${job.status} ${describeDuration(now - job.startedAt)}`
38
+ : `${job.status} ${describeFinished(job, now)}`;
39
+ const label = job.label.trim() === '' ? job.kind : job.label;
40
+ return `${job.id} · ${time} — ${label}`;
41
+ }
42
+ /** The whole board as lines, newest first, so a reader can see what is running. */
43
+ export function describeJobs(jobs, now) {
44
+ if (jobs.length === 0)
45
+ return 'no background jobs';
46
+ const live = jobs.filter(job => isLive(job.status)).length;
47
+ const header = `jobs · ${jobs.length}${live === 0 ? '' : ` (${live} running)`}`;
48
+ const rows = [...jobs]
49
+ .sort((left, right) => right.startedAt - left.startedAt)
50
+ .slice(0, JOB_READ_LINES)
51
+ .map(job => ` ${describeJob(job, now)}`);
52
+ return [header, ...rows].join('\n');
53
+ }
54
+ /**
55
+ * Read a `/jobs` argument.
56
+ *
57
+ * The forms stay explicit because the id is the only handle a reader has on a
58
+ * job: a bare id would be ambiguous between reading and killing it.
59
+ */
60
+ export function parseJobsArgument(argument) {
61
+ const parts = argument.trim().split(/\s+/u).filter(part => part !== '');
62
+ if (parts.length === 0)
63
+ return { kind: 'list' };
64
+ const [verb = '', id = ''] = parts;
65
+ if (verb !== 'read' && verb !== 'kill') {
66
+ return { kind: 'invalid', reason: `unknown action "${verb}" — use /jobs, /jobs read <id>, or /jobs kill <id>` };
67
+ }
68
+ if (id === '')
69
+ return { kind: 'invalid', reason: `${verb} needs a job id; /jobs lists them` };
70
+ return verb === 'read' ? { kind: 'read', id } : { kind: 'kill', id };
71
+ }
72
+ function toSummary(value) {
73
+ const record = asRecord(value);
74
+ const id = record?.id;
75
+ const status = record?.status;
76
+ if (typeof id !== 'string' || typeof status !== 'string' || !STATUSES.has(status))
77
+ return undefined;
78
+ return {
79
+ id,
80
+ kind: typeof record?.kind === 'string' ? record.kind : 'job',
81
+ label: typeof record?.label === 'string' ? record.label : '',
82
+ status: status,
83
+ startedAt: typeof record?.startedAt === 'number' ? record.startedAt : 0,
84
+ finishedAt: typeof record?.finishedAt === 'number' ? record.finishedAt : undefined,
85
+ };
86
+ }
87
+ /**
88
+ * Wrap the job registry.
89
+ *
90
+ * Jobs are live process state rather than durable events, so this is the one
91
+ * part of the surface a resume cannot reconstruct: the dock shows what this
92
+ * run started, and says so by simply being empty afterwards.
93
+ */
94
+ export function createJobDirectory(ctx) {
95
+ const registry = ctx.get('jobs');
96
+ if (typeof registry?.list !== 'function')
97
+ return undefined;
98
+ return {
99
+ list: caller => (registry.list?.(caller) ?? []).flatMap(entry => {
100
+ const summary = toSummary(entry);
101
+ return summary === undefined ? [] : [summary];
102
+ }),
103
+ read: (caller, id) => {
104
+ const result = asRecord(registry.read?.(id, caller));
105
+ if (result === undefined)
106
+ return undefined;
107
+ return {
108
+ text: typeof result.text === 'string' ? result.text : '',
109
+ snapshot: toSummary(result.snapshot),
110
+ };
111
+ },
112
+ kill: (caller, id) => {
113
+ const outcome = registry.kill?.(id, caller, 'killed from the terminal');
114
+ return outcome === 'requested' || outcome === 'already-finished' ? outcome : undefined;
115
+ },
116
+ watch: listener => {
117
+ if (typeof registry.onJobsChanged !== 'function')
118
+ return () => { };
119
+ return registry.onJobsChanged(listener);
120
+ },
121
+ };
122
+ }
123
+ //# sourceMappingURL=jobs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jobs.js","sourceRoot":"","sources":["../src/jobs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import type { Context } from '@deepseek-ai/cordis';
2
+ export declare const name = "tui-startup";
3
+ /** The launcher owns the arguments; this row only reads its own snapshot. */
4
+ export declare const inject: string[];
5
+ export { PROFILE_NAME } from './identity.ts';
6
+ /** Config id the agent-loop row uses when a profile configures one. */
7
+ export declare const MAIN_AGENT_ID = "main";
8
+ /** Context key of the parsed launch service consumed by the tui row. */
9
+ export declare const TUI_STARTUP_SERVICE = "tuiStartup";
10
+ /**
11
+ * Parse this app's own flags and publish the launch identity.
12
+ *
13
+ * On `--help` or a usage error nothing is provided, so the row that injects
14
+ * this service never activates and the launcher exits with the parser's code.
15
+ */
16
+ export declare function apply(ctx: Context): void;
17
+ //# sourceMappingURL=startup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"startup.d.ts","sourceRoot":"","sources":["../src/startup.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAMlD,eAAO,MAAM,IAAI,gBAAgB,CAAA;AAEjC,6EAA6E;AAC7E,eAAO,MAAM,MAAM,UAAkB,CAAA;AAErC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAE5C,uEAAuE;AACvE,eAAO,MAAM,aAAa,SAAS,CAAA;AAEnC,wEAAwE;AACxE,eAAO,MAAM,mBAAmB,eAAe,CAAA;AAE/C;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CA2DxC"}
package/lib/startup.js ADDED
@@ -0,0 +1,67 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ import { Command } from 'commander';
3
+ import { parseCmdline } from '@deepseek-ai/dsh-cmdline';
4
+ import { CONFIGURED_AGENT_IDENTITIES_KEY } from '@deepseek-ai/dsh-agent-loop';
5
+ import { LaunchUsageError, PROFILE_NAME, identityOf, resolveLaunchIntent, resumeHint } from "./identity.js";
6
+ export const name = 'tui-startup';
7
+ /** The launcher owns the arguments; this row only reads its own snapshot. */
8
+ export const inject = ['cmdlineArgs'];
9
+ export { PROFILE_NAME } from "./identity.js";
10
+ /** Config id the agent-loop row uses when a profile configures one. */
11
+ export const MAIN_AGENT_ID = 'main';
12
+ /** Context key of the parsed launch service consumed by the tui row. */
13
+ export const TUI_STARTUP_SERVICE = 'tuiStartup';
14
+ /**
15
+ * Parse this app's own flags and publish the launch identity.
16
+ *
17
+ * On `--help` or a usage error nothing is provided, so the row that injects
18
+ * this service never activates and the launcher exits with the parser's code.
19
+ */
20
+ export function apply(ctx) {
21
+ const program = new Command()
22
+ .name('dsh --profile tui')
23
+ .description('Interactive terminal session over DeepSeek Harness')
24
+ .helpOption('-h, --help', 'show this help')
25
+ .argument('[mode]', 'resume — open the history session picker')
26
+ .argument('[session]', 'session id to resume (with the resume mode)')
27
+ .option('--resume [session]', 'resume a persisted session (bare flag opens the picker)')
28
+ .option('--new', 'start a fresh session without the history picker')
29
+ .option('--model <model>', 'override the default model id')
30
+ .option('--provider <provider>', 'override the default provider route')
31
+ .option('--preset <preset>', 'agent preset (mode) the new session runs')
32
+ .option('--no-color', 'disable ANSI styling')
33
+ .option('--no-bell', 'do not ring the terminal bell when a long turn finishes');
34
+ program.action((mode, session, options) => {
35
+ let intent;
36
+ try {
37
+ intent = resolveLaunchIntent({
38
+ mode,
39
+ session,
40
+ resumeFlag: options.resume,
41
+ newSession: options.new,
42
+ });
43
+ }
44
+ catch (error) {
45
+ if (error instanceof LaunchUsageError) {
46
+ program.error(`dsh --profile tui: ${error.message}`);
47
+ return;
48
+ }
49
+ throw error;
50
+ }
51
+ const identity = identityOf(intent, randomUUID());
52
+ ctx.provide(CONFIGURED_AGENT_IDENTITIES_KEY, { [MAIN_AGENT_ID]: identity });
53
+ ctx.provide(TUI_STARTUP_SERVICE, {
54
+ sessionId: identity.id,
55
+ resume: identity.resume,
56
+ resumePicker: intent.resumePicker,
57
+ model: options.model?.trim() || undefined,
58
+ provider: options.provider?.trim() || undefined,
59
+ preset: options.preset?.trim() || undefined,
60
+ color: options.color !== false,
61
+ bell: options.bell !== false,
62
+ });
63
+ ctx.provide('tuiGoodbyeMessage', resumeHint(identity.id, PROFILE_NAME));
64
+ });
65
+ parseCmdline(ctx, program);
66
+ }
67
+ //# sourceMappingURL=startup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"startup.js","sourceRoot":"","sources":["../src/startup.ts"],"names":[],"mappings":"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"}