@songsid/agend 2.3.2 → 2.3.3-beta.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 (98) hide show
  1. package/dist/agent-cli-instructions.md +2 -2
  2. package/dist/agent-whats-new.d.ts +21 -0
  3. package/dist/agent-whats-new.js +52 -23
  4. package/dist/agent-whats-new.js.map +1 -1
  5. package/dist/backend/claude-code.d.ts +13 -1
  6. package/dist/backend/claude-code.js +20 -1
  7. package/dist/backend/claude-code.js.map +1 -1
  8. package/dist/backend/kiro-reconcile-store.js +8 -1
  9. package/dist/backend/kiro-reconcile-store.js.map +1 -1
  10. package/dist/backend/kiro.d.ts +0 -5
  11. package/dist/backend/kiro.js +0 -10
  12. package/dist/backend/kiro.js.map +1 -1
  13. package/dist/backend/types.d.ts +7 -4
  14. package/dist/backend/types.js.map +1 -1
  15. package/dist/cli.js +2 -2
  16. package/dist/cli.js.map +1 -1
  17. package/dist/config-validator.js +3 -1
  18. package/dist/config-validator.js.map +1 -1
  19. package/dist/cross-instance-envelope.d.ts +10 -5
  20. package/dist/cross-instance-envelope.js +20 -17
  21. package/dist/cross-instance-envelope.js.map +1 -1
  22. package/dist/daemon.d.ts +59 -63
  23. package/dist/daemon.js +275 -313
  24. package/dist/daemon.js.map +1 -1
  25. package/dist/delivery-outbox.d.ts +27 -22
  26. package/dist/delivery-outbox.js +109 -161
  27. package/dist/delivery-outbox.js.map +1 -1
  28. package/dist/delivery-outbox.test.js +10 -25
  29. package/dist/delivery-outbox.test.js.map +1 -1
  30. package/dist/fleet-manager.d.ts +4 -12
  31. package/dist/fleet-manager.js +28 -92
  32. package/dist/fleet-manager.js.map +1 -1
  33. package/dist/general-knowledge/skills/delegation-playbook/SKILL.md +1 -1
  34. package/dist/general-knowledge/skills/fleet-restart/SKILL.md +1 -1
  35. package/dist/general-knowledge/skills/session-management/SKILL.md +1 -1
  36. package/dist/general-knowledge/skills/web-dashboard/SKILL.canvas-worker-off.md +1 -1
  37. package/dist/general-knowledge/skills/web-dashboard/SKILL.md +1 -1
  38. package/dist/instance-lifecycle.js +21 -5
  39. package/dist/instance-lifecycle.js.map +1 -1
  40. package/dist/instructions.js +6 -7
  41. package/dist/instructions.js.map +1 -1
  42. package/dist/kiro-reconcile.js +3 -3
  43. package/dist/kiro-reconcile.js.map +1 -1
  44. package/dist/locale.js +4 -16
  45. package/dist/locale.js.map +1 -1
  46. package/dist/log-service.js +1 -1
  47. package/dist/log-service.js.map +1 -1
  48. package/dist/outbound-handlers.js +1 -1
  49. package/dist/outbound-handlers.js.map +1 -1
  50. package/dist/outbound-schemas.js +1 -1
  51. package/dist/outbound-schemas.js.map +1 -1
  52. package/dist/scheduler/task-board.d.ts +17 -12
  53. package/dist/scheduler/task-board.js +29 -25
  54. package/dist/scheduler/task-board.js.map +1 -1
  55. package/dist/sd-notify.d.ts +13 -14
  56. package/dist/sd-notify.js +62 -28
  57. package/dist/sd-notify.js.map +1 -1
  58. package/dist/settings-api.d.ts +0 -1
  59. package/dist/settings-api.js +1 -14
  60. package/dist/settings-api.js.map +1 -1
  61. package/dist/settings-effect.js +0 -2
  62. package/dist/settings-effect.js.map +1 -1
  63. package/dist/task-board-waker.d.ts +40 -1
  64. package/dist/task-board-waker.js +110 -9
  65. package/dist/task-board-waker.js.map +1 -1
  66. package/dist/tmux-control.d.ts +1 -1
  67. package/dist/tmux-control.js +3 -2
  68. package/dist/tmux-control.js.map +1 -1
  69. package/dist/tmux-manager.js +18 -16
  70. package/dist/tmux-manager.js.map +1 -1
  71. package/dist/tmux-read.d.ts +2 -0
  72. package/dist/tmux-read.js +7 -1
  73. package/dist/tmux-read.js.map +1 -1
  74. package/dist/topic-commands.d.ts +2 -0
  75. package/dist/topic-commands.js +2 -1
  76. package/dist/topic-commands.js.map +1 -1
  77. package/dist/types.d.ts +1 -5
  78. package/dist/ui/panel-log.js +2 -2
  79. package/dist/ui/settings-appearance.js +3 -35
  80. package/dist/ui/settings-registry.js +0 -1
  81. package/dist/ui/settings-strings.js +2 -2
  82. package/dist/update-check.d.ts +13 -4
  83. package/dist/update-check.js +17 -4
  84. package/dist/update-check.js.map +1 -1
  85. package/dist/web-experimental.d.ts +6 -2
  86. package/dist/web-experimental.js +8 -4
  87. package/dist/web-experimental.js.map +1 -1
  88. package/dist/web-settings-patch.d.ts +0 -1
  89. package/dist/web-settings-patch.js +3 -4
  90. package/dist/web-settings-patch.js.map +1 -1
  91. package/dist/workflow-templates/default.md +2 -2
  92. package/dist/working-recovery.d.ts +0 -2
  93. package/dist/working-recovery.js +2 -23
  94. package/dist/working-recovery.js.map +1 -1
  95. package/package.json +1 -1
  96. package/dist/upgrade-notices.d.ts +0 -17
  97. package/dist/upgrade-notices.js +0 -93
  98. package/dist/upgrade-notices.js.map +0 -1
@@ -606,9 +606,11 @@ export function validateFleetConfig(config, opts = {}) {
606
606
  if (config.defaults.warm_cap !== undefined && (!Number.isInteger(config.defaults.warm_cap) || config.defaults.warm_cap < 0)) {
607
607
  err("defaults.warm_cap", "must be a non-negative integer (0 = unlimited)");
608
608
  }
609
+ // #2802: reply_overdue_minutes is ignored now, but a value written while ignored must still load on the previous
610
+ // stable (a downgrade), so it keeps that release's check.
609
611
  const overdue = config.defaults.reply_overdue_minutes;
610
612
  if (overdue !== undefined && (typeof overdue !== "number" || !Number.isFinite(overdue) || overdue < 0)) {
611
- err("defaults.reply_overdue_minutes", "must be a non-negative number of minutes (0 turns the overdue notice off)");
613
+ err("defaults.reply_overdue_minutes", "must be a non-negative number of minutes (the setting is obsolete and ignored)");
612
614
  }
613
615
  const replyTtl = config.defaults.reply_obligation_ttl_hours;
614
616
  if (replyTtl !== undefined && (typeof replyTtl !== "number" || replyTtl <= 0 || !Number.isFinite(replyTtl * 3_600_000))) {
@@ -1 +1 @@
1
- {"version":3,"file":"config-validator.js","sourceRoot":"","sources":["../src/config-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAkB,MAAM,YAAY,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC/F,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAAuB,MAAM,oBAAoB,CAAC;AACvG,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,0BAA0B,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACrG,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC3H,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACnG,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,+BAA+B,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACxG,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAepE,0HAA0H;AAC1H,MAAM,QAAQ,GAAG,CAAC,cAAc,EAAE,aAAa,EAAE,iBAAiB,EAAE,aAAa,EAAE,6BAA6B,EAAE,SAAS,EAAE,kBAAkB,EAAE,eAAe,EAAE,aAAa;IAC7K,cAAc,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,QAAQ,EAAE,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,QAAQ,EAAE,oBAAoB,EAAE,QAAQ,EAAE,cAAc,EAAE,eAAe,CAAmD,CAAC;AACzT,MAAM,iBAAiB,GAAmF,IAAI,CAAC;AAC/G,KAAK,iBAAiB,CAAC;AAQvB,mFAAmF;AACnF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,aAAa,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAEtH;;;;GAIG;AACH,SAAS,cAAc,CAAC,KAAc,EAAE,QAAiB,EAAE,iBAAiB,GAAG,KAAK;IAClF,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACrC,IAAI,iBAAiB,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;QAAE,OAAO,IAAI,CAAC;IACvE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,gBAAgB,CAAC,KAAK,CAAC;QAAE,OAAO,qBAAqB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACxG,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,oBAAoB,MAAM,CAAC,KAAK,CAAC,aAAa,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACpJ,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,KAAK,GAAG,CAAC,CAAU,EAAgC,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAErH,4EAA4E;AAC5E,SAAS,SAAS,CAAC,CAAU;IAC3B,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;AAC5G,CAAC;AAED,yEAAyE;AACzE,SAAS,WAAW,CAAC,EAA2B;IAC9C,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC;IAC5B,OAAO,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACvD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAe,EAAE,IAAI,GAAiC,EAAE;IAC1F,MAAM,MAAM,GAAsB,EAAE,CAAC;IACrC,MAAM,QAAQ,GAAsB,EAAE,CAAC;IACvC,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAC9E,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAEjF;;;OAGG;IACH,MAAM,yBAAyB,GAAG,CAAC,IAA6B,EAAE,IAAY,EAAE,QAAiC,EAAQ,EAAE;QACzH,IAAI,OAAO,IAAI,CAAC,iBAAiB,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,iBAAiB;YAAE,OAAO;QAClF,+GAA+G;QAC/G,MAAM,SAAS,GAAG,CAAC,GAAgC,EAAE,EAAE,CACrD,IAAI,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;QACtI,MAAM,IAAI,GAAqC,EAAE,CAAC;QAClD,MAAM,EAAE,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC;QACrC,IAAI,OAAO,EAAE,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACjC,KAAK,MAAM,IAAI,IAAI,iBAAiB,CAAC,EAAE,CAAC,KAAK,CAAC;gBAAE,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;oBAAE,IAAI,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;QACzI,CAAC;QACD,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;QACjC,IAAI,OAAO,EAAE,CAAC,KAAK,KAAK,QAAQ,IAAI,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;QAC3H,KAAK,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC;YAC3C,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,IAAI,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC9B,IAAI,CAAC,GAAG,IAAI,IAAI,KAAK,EAAE,EAAE,UAAU,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,8DAA8D,CAAC,CAAC;gBACrH,SAAS;YACX,CAAC;YACD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACjE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,GAAG,IAAI,IAAI,KAAK,EAAE,EAAE,UAAU,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,cAAc,QAAQ,2HAA2H,CAAC,CAAC;YAC1M,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IACF,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAAE,IAAY,EAAE,EAAE;QACzD,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;YAC/F,GAAG,CAAC,IAAI,EAAE,yEAAyE,CAAC,CAAC;QACvF,CAAC;IACH,CAAC,CAAC;IACF,MAAM,sBAAsB,GAAG,CAAC,KAAc,EAAE,IAAY,EAAE,EAAE;QAC9D,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAK,qBAA2C,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YACxH,GAAG,CAAC,IAAI,EAAE,kBAAkB,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClE,CAAC;IACH,CAAC,CAAC;IACF;;;;OAIG;IACH,MAAM,oBAAoB,GAAG,CAAC,KAAc,EAAE,IAAY,EAAE,SAAoC,EAAE,EAAE;QAClG,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO;QAChC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YAAC,GAAG,CAAC,IAAI,EAAE,wBAAwB,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAAC,OAAO;QAAC,CAAC;QACxG,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7C,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,GAAqB,CAAC,EAAE,CAAC;gBAC9D,IAAI,CAAC,GAAG,IAAI,IAAI,GAAG,EAAE,EAAE,0BAA0B,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBACnG,SAAS;YACX,CAAC;YACD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;gBAAC,GAAG,CAAC,GAAG,IAAI,IAAI,GAAG,EAAE,EAAE,yBAAyB,CAAC,CAAC;gBAAC,SAAS;YAAC,CAAC;YAC1F,KAAK,MAAM,QAAQ,IAAI,IAAI,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC1C,MAAM,OAAO,GAAG,kBAAkB,CAAC,QAAQ,EAAE,GAAqB,EAAE,CAAC,CAAC,CAAC;gBACvE,IAAI,OAAO,EAAE,CAAC;oBAAC,IAAI,CAAC,GAAG,IAAI,IAAI,GAAG,EAAE,EAAE,GAAG,OAAO,gCAAgC,CAAC,CAAC;oBAAC,MAAM;gBAAC,CAAC;YAC7F,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IACF,MAAM,uBAAuB,GAAG,CAAC,KAA8B,EAAE,IAAY,EAAE,EAAE;QAC/E,IAAI,KAAK,CAAC,uBAAuB,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,uBAAuB,KAAK,SAAS;YAAE,GAAG,CAAC,GAAG,IAAI,0BAA0B,EAAE,mBAAmB,CAAC,CAAC;QACnK,wEAAwE;QACxE,uEAAuE;QACvE,qEAAqE;QACrE,uEAAuE;QACvE,yEAAyE;QACzE,yEAAyE;QACzE,uEAAuE;QACvE,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAC3B,GAAG,CAAC,GAAG,IAAI,UAAU,EAAE,8IAA8I,CAAC,CAAC;QACzK,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;YAC7F,GAAG,CAAC,GAAG,IAAI,UAAU,EAAE,uBAAuB,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,KAAK,IAAI,KAAK,CAAC,UAAU,KAAK,KAAK;YAAE,GAAG,CAAC,GAAG,IAAI,aAAa,EAAE,oBAAoB,CAAC,CAAC;QAChJ,mEAAmE;QACnE,sEAAsE;QACtE,wEAAwE;QACxE,wEAAwE;QACxE,QAAQ;QACR,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAAE,GAAG,CAAC,GAAG,IAAI,WAAW,EAAE,yDAAyD,CAAC,CAAC;QACnN,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAAE,GAAG,CAAC,GAAG,IAAI,YAAY,EAAE,4CAA4C,CAAC,CAAC;QAC5L,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,WAAW,KAAK,SAAS;YAAE,GAAG,CAAC,GAAG,IAAI,cAAc,EAAE,mBAAmB,CAAC,CAAC;QAC/H,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ;YAAE,GAAG,CAAC,GAAG,IAAI,eAAe,EAAE,kBAAkB,CAAC,CAAC;QAChI,IAAI,KAAK,CAAC,cAAc,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAAE,GAAG,CAAC,GAAG,IAAI,iBAAiB,EAAE,yCAAyC,CAAC,CAAC;QACtO,IAAI,KAAK,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YACxC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;gBAClC,GAAG,CAAC,GAAG,IAAI,kBAAkB,EAAE,yCAAyC,CAAC,CAAC;YAC5E,CAAC;iBAAM,CAAC;gBACN,KAAK,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;oBAC5E,MAAM,UAAU,GAAG,GAAG,IAAI,oBAAoB,WAAW,EAAE,CAAC;oBAC5D,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;wBAC1C,IAAI,CAAC,UAAU,EAAE,oDAAoD,CAAC,CAAC;wBACvE,SAAS;oBACX,CAAC;oBACD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACrB,GAAG,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;wBACrC,SAAS;oBACX,CAAC;oBACD,IAAI,QAAQ,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;wBAC9C,iEAAiE;wBACjE,8DAA8D;wBAC9D,mEAAmE;wBACnE,2DAA2D;wBAC3D,IAAI,OAAO,QAAQ,CAAC,kBAAkB,KAAK,QAAQ,EAAE,CAAC;4BACpD,GAAG,CAAC,GAAG,UAAU,qBAAqB,EAAE,kBAAkB,CAAC,CAAC;wBAC9D,CAAC;6BAAM,CAAC;4BACN,IAAI,CAAC;gCACH,wBAAwB,CAAC,EAAE,kBAAkB,EAAE,QAAQ,CAAC,kBAAkB,EAAE,CAAC,CAAC;4BAChF,CAAC;4BAAC,OAAO,KAAK,EAAE,CAAC;gCACf,GAAG,CAAC,GAAG,UAAU,qBAAqB,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;4BAClG,CAAC;4BACD,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,EAAE,CAAC;gCACrC,IAAI,CAAC,GAAG,UAAU,qBAAqB,EACrC,GAAG,WAAW,2DAA2D,CAAC,CAAC;4BAC/E,CAAC;wBACH,CAAC;oBACH,CAAC;oBACD,0FAA0F;oBAC1F,IAAI,WAAW,KAAK,aAAa,IAAI,QAAQ,CAAC,gBAAgB,KAAK,SAAS,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,gBAAyB,CAAC,EAAE,CAAC;wBAChJ,GAAG,CAAC,GAAG,UAAU,mBAAmB,EAAE,mBAAmB,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAC3F,CAAC;oBACD,IAAI,WAAW,KAAK,OAAO,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;wBAC/D,IAAI,OAAO,QAAQ,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;4BAC1C,GAAG,CAAC,GAAG,UAAU,WAAW,EAAE,kBAAkB,CAAC,CAAC;wBACpD,CAAC;6BAAM,CAAC;4BACN,IAAI,CAAC;gCACH,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;4BACtC,CAAC;4BAAC,OAAO,KAAK,EAAE,CAAC;gCACf,GAAG,CAAC,GAAG,UAAU,WAAW,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;4BACxF,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,KAAK,CAAC,oBAAoB,KAAK,SAAS,EAAE,CAAC;YAC7C,MAAM,CAAC,GAAG,KAAK,CAAC,oBAAoB,CAAC;YACrC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1D,GAAG,CAAC,GAAG,IAAI,uBAAuB,EAAE,0CAA0C,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;QACD,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;YAC/G,GAAG,CAAC,GAAG,IAAI,gBAAgB,EAAE,mCAAmC,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,KAAK,CAAC,cAAc,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACpF,GAAG,CAAC,GAAG,IAAI,iBAAiB,EAAE,mBAAmB,CAAC,CAAC;QACrD,CAAC;QACD,IAAI,KAAK,CAAC,sBAAsB,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,sBAAsB,KAAK,SAAS,EAAE,CAAC;YACpG,GAAG,CAAC,GAAG,IAAI,yBAAyB,EAAE,mBAAmB,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,KAAK,CAAC,yBAAyB,KAAK,SAAS,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,yBAAyB,CAAC,EAAE,CAAC;YACjH,GAAG,CAAC,GAAG,IAAI,4BAA4B,EAAE,mBAAmB,+BAA+B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5G,CAAC;QACD,IAAI,KAAK,CAAC,mBAAmB,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,mBAAmB,CAAC,IAAK,KAAK,CAAC,mBAA8B,IAAI,CAAC,CAAC,EAAE,CAAC;YAC5I,GAAG,CAAC,GAAG,IAAI,sBAAsB,EAAE,sCAAsC,CAAC,CAAC;QAC7E,CAAC;QACD,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS,IAAI,KAAK,CAAC,aAAa,KAAK,IAAI,IAAI,OAAO,KAAK,CAAC,aAAa,KAAK,SAAS;YAAE,GAAG,CAAC,GAAG,IAAI,gBAAgB,EAAE,mBAAmB,CAAC,CAAC;QACrK,IAAI,KAAK,CAAC,kBAAkB,KAAK,SAAS,IAAI,KAAK,CAAC,kBAAkB,KAAK,IAAI,IAAI,OAAO,KAAK,CAAC,kBAAkB,KAAK,SAAS;YAAE,GAAG,CAAC,GAAG,IAAI,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;QACzL,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACjE,IAAI,gBAAgB;YAAE,GAAG,CAAC,GAAG,IAAI,YAAY,EAAE,gBAAgB,CAAC,CAAC;QAEjE,yEAAyE;QACzE,6EAA6E;QAC7E,0EAA0E;QAC1E,uEAAuE;QACvE,0BAA0B;QAC1B,IAAI,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAClC,MAAM,EAAE,GAAG,KAAK,CAAC,gBAA2C,CAAC;YAC7D,IAAI,EAAE,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;gBACnC,IAAI,CAAC,GAAG,IAAI,iCAAiC,EAAE,yCAAyC,CAAC,CAAC;YAC5F,CAAC;YACD,IAAI,EAAE,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;gBACrC,IAAI,CAAC,GAAG,IAAI,mCAAmC,EAAE,yCAAyC,CAAC,CAAC;YAC9F,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;YACvB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;gBAC3F,GAAG,CAAC,GAAG,IAAI,SAAS,EAAE,+CAA+C,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACtC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC;gBAAE,GAAG,CAAC,GAAG,IAAI,gBAAgB,EAAE,mBAAmB,CAAC,CAAC;iBAC9E,CAAC;gBACJ,IAAI,KAAK,CAAC,aAAa,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,aAAa,CAAC,OAAO,KAAK,SAAS;oBAAE,GAAG,CAAC,GAAG,IAAI,wBAAwB,EAAE,mBAAmB,CAAC,CAAC;gBAC7J,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,eAAe,CAAC;gBACpD,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,IAAI,CAAC,CAAC;oBAAE,GAAG,CAAC,GAAG,IAAI,gCAAgC,EAAE,kCAAkC,CAAC,CAAC;YAC5L,CAAC;QACH,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC3B,GAAG,CAAC,GAAG,IAAI,WAAW,EAAE,mBAAmB,CAAC,CAAC;YAC/C,CAAC;iBAAM,CAAC;gBACN,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,QAAQ,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBACxF,GAAG,CAAC,GAAG,IAAI,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;gBACvD,CAAC;gBACD,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC;gBACvC,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAK,OAAkB,GAAG,EAAE,IAAK,OAAkB,GAAG,GAAG,CAAC,EAAE,CAAC;oBACnH,GAAG,CAAC,GAAG,IAAI,mBAAmB,EAAE,mFAAmF,CAAC,CAAC;gBACvH,CAAC;gBACD,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACjC,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAK,IAAe,GAAG,EAAE,IAAK,IAAe,GAAG,GAAG,CAAC,EAAE,CAAC;oBACvG,GAAG,CAAC,GAAG,IAAI,gBAAgB,EAAE,mCAAmC,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QACnB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,0BAA0B,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IACrG,CAAC;IAED,6DAA6D;IAC7D,6EAA6E;IAC7E,gEAAgE;IAChE,6EAA6E;IAC7E,yCAAyC;IACzC,MAAM,WAAW,GAA8B,EAAE,CAAC;IAClD,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACrD,IAAI,aAAa,EAAE,CAAC;QACjB,MAAM,CAAC,QAAsB,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE;YAC/C,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;gBAAC,GAAG,CAAC,YAAY,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YACvE,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;QACH,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS;YAAE,IAAI,CAAC,SAAS,EAAE,2EAA2E,CAAC,CAAC;IACjI,CAAC;SAAM,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACzC,GAAG,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;IACpC,CAAC;SAAM,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;SAAM,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACxC,GAAG,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,IAAI,CAAC,UAAU,EAAE,mEAAmE,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC/C,4EAA4E;IAC5E,2EAA2E;IAC3E,oDAAoD;IACpD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC9C,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;IACrC,WAAW,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE;QAC5B,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;QACvG,IAAI,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9D,IAAI,EAAE,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC3B,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,0FAA0F,CAAC,CAAC;YAChI,CAAC;iBAAM,IAAI,EAAE,CAAC,OAAO,CAAC,WAAW,KAAK,UAAU,IAAI,EAAE,CAAC,OAAO,CAAC,WAAW,KAAK,WAAW,EAAE,CAAC;gBAC3F,GAAG,CAAC,GAAG,EAAE,sBAAsB,EAAE,6CAA6C,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;QACD,IAAI,OAAO,EAAE,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,EAAE,CAAC,IAAI;YAAE,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,6CAA6C,CAAC,CAAC;QAC9G,IAAI,OAAO,EAAE,CAAC,aAAa,KAAK,QAAQ,IAAI,CAAC,EAAE,CAAC,aAAa;YAAE,GAAG,CAAC,GAAG,EAAE,gBAAgB,EAAE,8CAA8C,CAAC,CAAC;QAC1I,4EAA4E;QAC5E,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,SAAS,IAAI,EAAE,CAAC,EAAE,KAAK,IAAI,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;YACrE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,qFAAqF,CAAC,CAAC;QAC1G,CAAC;QACD,MAAM,GAAG,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;QAC5B,IAAI,GAAG,EAAE,CAAC;YACR,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,yBAAyB,GAAG,GAAG,CAAC,CAAC;YAC1E,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACtB,CAAC;QACD,IAAI,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC;YAAE,oBAAoB,CAAC,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,EAAE,wBAAwB,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QAC1J,gFAAgF;QAChF,IAAI,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/D,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC;YACrC,IAAI,EAAE,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC3B,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,gFAAgF,CAAC,CAAC;YACvH,CAAC;iBAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5G,GAAG,CAAC,GAAG,EAAE,uBAAuB,EAAE,6EAA6E,CAAC,CAAC;YACnH,CAAC;QACH,CAAC;QACD,IAAI,OAAO,EAAE,CAAC,aAAa,KAAK,QAAQ,IAAI,EAAE,CAAC,aAAa,EAAE,CAAC;YAC7D,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;YAC5C,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,aAAa,EAAE,CAAC;YACjE,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACnC,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,yBAAyB,KAAK,wGAAwG,CAAC,CAAC;YACtK,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QACD,IAAI,GAAG,IAAI,OAAO,EAAE,CAAC,IAAI,KAAK,QAAQ;YAAE,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;QACvE,IAAI,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;YACrG,GAAG,CAAC,GAAG,EAAE,uBAAuB,EAAE,qCAAqC,CAAC,CAAC;QAC3E,CAAC;QACD,IAAI,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YACxH,GAAG,CAAC,GAAG,EAAE,cAAc,EAAE,kCAAkC,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ;eAC9C,CAAC,EAAE,CAAC,MAAM,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YACjI,IAAI,CAAC,GAAG,EAAE,uBAAuB,EAAE,4EAA4E,CAAC,CAAC;QACnH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,IAAI,CAAC,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;QAC/G,GAAG,CAAC,aAAa,EAAE,4BAA4B,CAAC,CAAC;IACnD,CAAC;IAED,6DAA6D;IAC7D,6FAA6F;IAC7F,IAAI,MAAM,CAAC,WAAW,KAAK,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,KAAK,KAAK,IAAI,MAAM,CAAC,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,EAAE,CAAC;QACpI,IAAI,CAAC,kBAAkB,EAAE,yHAAyH,CAAC,CAAC;IACtJ,CAAC;IACD,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/D,GAAG,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;IACxC,CAAC;SAAM,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QACnC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YAChD,IAAI,GAAG,KAAK,cAAc,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,YAAY;gBAAE,GAAG,CAAC,aAAa,GAAG,EAAE,EAAE,4CAA4C,CAAC,CAAC;iBACrI,IAAI,OAAQ,MAAM,CAAC,SAAqC,CAAC,GAAG,CAAC,KAAK,SAAS;gBAAE,GAAG,CAAC,aAAa,GAAG,EAAE,EAAE,mBAAmB,CAAC,CAAC;QACjI,CAAC;IACH,CAAC;IACD,IAAI,MAAM,CAAC,GAAG,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;QACnD,GAAG,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC;IAClC,CAAC;SAAM,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,2GAA2G;QAC3G,8BAA8B;QAC9B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1C,IAAK,QAA8B,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,SAAS;YAC5D,IAAI,CAAC,OAAO,GAAG,EAAE,EAAE,GAAG,KAAK,QAAQ;gBACjC,CAAC,CAAC,+FAA+F;gBACjG,CAAC,CAAC,uBAAuB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,MAAM,CAAC,GAAG,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YAC1C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC;gBAAE,GAAG,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;iBAC7E,CAAC;gBACJ,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC;oBAAE,IAAI,GAAG,KAAK,eAAe;wBAAE,GAAG,CAAC,oBAAoB,GAAG,EAAE,EAAE,8BAA8B,CAAC,CAAC;gBACpJ,IAAI,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,aAAa,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,aAAa,KAAK,SAAS;oBAAE,GAAG,CAAC,gCAAgC,EAAE,mBAAmB,CAAC,CAAC;YACpL,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,GAAG,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAC;iBACjE,CAAC;gBACJ,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;oBAAE,IAAI,CAAC,KAAK,YAAY;wBAAE,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,2CAA2C,CAAC,CAAC;gBAC7I,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,KAAK,SAAS;oBAAE,GAAG,CAAC,uBAAuB,EAAE,mBAAmB,CAAC,CAAC;YACzJ,CAAC;QACH,CAAC;QACD,kHAAkH;QAClH,IAAI,MAAM,CAAC,GAAG,CAAC,UAAU,KAAK,SAAS;YAAE,KAAK,MAAM,CAAC,IAAI,yBAAyB,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,QAAQ;gBAAE,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;QAC5I,IAAI,MAAM,CAAC,GAAG,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACzC,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC;gBAAE,GAAG,CAAC,iBAAiB,EAAE,wMAAwM,CAAC,CAAC;iBAC/Q,CAAC;gBACJ,gHAAgH;gBAChH,MAAM,OAAO,GAAG,qBAAqB,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBAC9D,IAAI,OAAO;oBAAE,GAAG,CAAC,mBAAmB,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YACtE,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YAChG,GAAG,CAAC,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,MAAM,CAAC,GAAG,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACxF,GAAG,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,MAAM,CAAC,GAAG,CAAC,2BAA2B,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,2BAA2B,KAAK,SAAS,EAAE,CAAC;YACxH,GAAG,CAAC,iCAAiC,EAAE,mBAAmB,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,MAAM,CAAC,GAAG,CAAC,aAAa,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YAC5F,GAAG,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;QAChD,CAAC;QACD,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAChF,GAAG,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;QAC1C,CAAC;QACD,oCAAoC;QACpC,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,GAAG,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAC;iBACjE,CAAC;gBACJ,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;oBAAE,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,gBAAgB,IAAI,CAAC,KAAK,aAAa;wBAAE,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,qEAAqE,CAAC,CAAC;gBACrN,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS;oBAAE,GAAG,CAAC,oBAAoB,EAAE,mBAAmB,CAAC,CAAC;gBAC9I,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,KAAK,SAAS;oBAAE,GAAG,CAAC,wBAAwB,EAAE,mBAAmB,CAAC,CAAC;gBAC1J,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC;gBAC9C,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,IAAI,CAAC;oBAAE,GAAG,CAAC,2BAA2B,EAAE,2DAA2D,CAAC,CAAC;YAC5M,CAAC;QACH,CAAC;QACD,6BAA6B;QAC7B,IAAI,MAAM,CAAC,GAAG,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YAC1C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC;gBAAE,GAAG,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;iBAC7E,CAAC;gBACJ,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC;oBAAE,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,WAAW;wBAAE,IAAI,CAAC,oBAAoB,CAAC,EAAE,EAAE,mDAAmD,CAAC,CAAC;gBACnL,IAAI,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,KAAK,SAAS;oBAAE,GAAG,CAAC,0BAA0B,EAAE,mBAAmB,CAAC,CAAC;gBAChK,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC;gBAC5C,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;oBAAE,GAAG,CAAC,4BAA4B,EAAE,wCAAwC,CAAC,CAAC;YACzK,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,GAAG,CAAC,gBAAgB,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;YAClG,GAAG,CAAC,sBAAsB,EAAE,mBAAmB,CAAC,CAAC;QACnD,CAAC;QACD,IAAI,MAAM,CAAC,GAAG,CAAC,WAAW,KAAK,SAAS,IAAI,MAAM,CAAC,GAAG,CAAC,WAAW,KAAK,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACtH,GAAG,CAAC,iBAAiB,EAAE,yBAAyB,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,MAAM,CAAC,GAAG,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC;YAC5C,IAAI,CAAC,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,EAAE,CAAC;gBAClL,GAAG,CAAC,qBAAqB,EAAE,oCAAoC,CAAC,CAAC;YACnE,CAAC;YACD,qGAAqG;;gBAChG,IAAI,CAAC,qBAAqB,EAAE,wEAAwE,CAAC,CAAC;QAC7G,CAAC;QACD,IAAI,MAAM,CAAC,GAAG,CAAC,YAAY,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,YAAY,KAAK,SAAS,IAAI,MAAM,CAAC,GAAG,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;YAC9H,GAAG,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,MAAM,CAAC,GAAG,CAAC,YAAY,KAAK,IAAI;YAAE,IAAI,CAAC,kBAAkB,EAAE,6EAA6E,CAAC,CAAC;QAC9I,sBAAsB;QACtB,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,OAAO,KAAK,SAAS;YAAE,GAAG,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;QACzH,4FAA4F;QAC5F,IAAI,MAAM,CAAC,GAAG,CAAC,sBAAsB,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,sBAAsB,KAAK,SAAS;YAAE,GAAG,CAAC,4BAA4B,EAAE,mBAAmB,CAAC,CAAC;QACtK,IAAI,MAAM,CAAC,GAAG,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YAC1C,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC;YAClC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK;gBAAE,GAAG,CAAC,kBAAkB,EAAE,iCAAiC,CAAC,CAAC;iBAC/H,IAAI,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC;gBAAE,GAAG,CAAC,kBAAkB,EAAE,8BAA8B,CAAC,CAAC;QAChJ,CAAC;QACD,IAAI,MAAM,CAAC,GAAG,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAG,oBAAoB,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;YACxE,IAAI,OAAO;gBAAE,GAAG,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,KAAK,SAAS;YAAE,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAClF,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,KAAK,SAAS;YAAE,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QACzG,gGAAgG;QAChG,IAAI,MAAM,CAAC,GAAG,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;YAChD,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;YACxC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gBAAE,GAAG,CAAC,wBAAwB,EAAE,mBAAmB,CAAC,CAAC;iBAC7D,CAAC;gBACJ,MAAM,KAAK,GAAG,CAAC,SAAS,EAAE,eAAe,EAAE,mBAAmB,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;gBAC5F,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;oBAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;wBAAE,IAAI,CAAC,0BAA0B,CAAC,EAAE,EAAE,uBAAuB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBAClJ,IAAI,CAAC,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,SAAS;oBAAE,GAAG,CAAC,gCAAgC,EAAE,mBAAmB,CAAC,CAAC;gBAC1H,IAAI,CAAC,CAAC,aAAa,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,aAAa,KAAK,SAAS;oBAAE,GAAG,CAAC,sCAAsC,EAAE,mBAAmB,CAAC,CAAC;gBAC5I,IAAI,CAAC,CAAC,UAAU,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK,SAAS;oBAAE,GAAG,CAAC,mCAAmC,EAAE,mBAAmB,CAAC,CAAC;gBACnI,IAAI,CAAC,CAAC,UAAU,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK,SAAS;oBAAE,GAAG,CAAC,mCAAmC,EAAE,mBAAmB,CAAC,CAAC;gBACnI,MAAM,CAAC,GAAG,CAAC,CAAC,iBAAiB,CAAC;gBAC9B,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,sBAAsB,CAAC,GAAG,IAAI,CAAC,GAAG,sBAAsB,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC1I,GAAG,CAAC,0CAA0C,EAAE,kCAAkC,sBAAsB,CAAC,GAAG,OAAO,sBAAsB,CAAC,GAAG,EAAE,CAAC,CAAC;gBACnJ,CAAC;YACH,CAAC;QACH,CAAC;QACD,oBAAoB,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACvC,IAAI,MAAM,CAAC,GAAG,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YAC3C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC7C,GAAG,CAAC,mBAAmB,EAAE,8BAA8B,CAAC,CAAC;YAC3D,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,KAAc,EAAE,CAAS,EAAE,EAAE;oBAC7D,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,UAAU,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;wBAC5D,GAAG,CAAC,qBAAqB,CAAC,GAAG,EAAE,yFAAyF,CAAC,CAAC;oBAC5H,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,6DAA6D;IAC7D,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;IACvC,CAAC;SAAM,IAAI,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClC,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;QAClC,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,OAAO;YAAE,GAAG,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;QAC9C,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,EAAE,2BAA2B,CAAC,CAAC;QACjF,sBAAsB,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,0BAA0B,CAAC,CAAC;QACpF,IAAI,MAAM,CAAC,QAAQ,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAK,MAAM,CAAC,QAAQ,CAAC,aAAwB,GAAG,CAAC,CAAC,EAAE,CAAC;YACvJ,GAAG,CAAC,wBAAwB,EAAE,gCAAgC,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAK,MAAM,CAAC,QAAQ,CAAC,QAAmB,GAAG,CAAC,CAAC,EAAE,CAAC;YACxI,GAAG,CAAC,mBAAmB,EAAE,gDAAgD,CAAC,CAAC;QAC7E,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QACtD,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,CAAC,EAAE,CAAC;YACvG,GAAG,CAAC,gCAAgC,EAAE,2EAA2E,CAAC,CAAC;QACrH,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAAC;QAC5D,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC,EAAE,CAAC;YACxH,GAAG,CAAC,qCAAqC,EAAE,wDAAwD,CAAC,CAAC;QACvG,CAAC;QACD,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC;QACrD,IAAI,aAAa,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,IAAK,aAAwB,GAAG,CAAC,CAAC,EAAE,CAAC;YACvG,GAAG,CAAC,yBAAyB,EAAE,oGAAoG,CAAC,CAAC;QACvI,CAAC;QACD,uBAAuB,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QACrD,0EAA0E;QAC1E,oBAAoB,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAE,wBAAwB,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC1G,IAAI,MAAM,CAAC,QAAQ,CAAC,gCAAgC,KAAK,SAAS,EAAE,CAAC;YACnE,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,gCAAgC,CAAC;YAC3D,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChE,GAAG,CAAC,2CAA2C,EAAE,4CAA4C,CAAC,CAAC;YACjG,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YACrH,GAAG,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI;YAAE,IAAI,CAAC,eAAe,EAAE,gFAAgF,CAAC,CAAC;QAC3I,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,GAAG,CAAC,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;iBACnF,IAAI,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC1E,GAAG,CAAC,gCAAgC,EAAE,gEAAgE,CAAC,CAAC;YAC1G,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAAE,GAAG,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;iBAC7E,CAAC;gBACJ,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC;gBACxD,IAAI,WAAW,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,IAAK,WAAsB,GAAG,CAAC,IAAK,WAAsB,GAAG,EAAE,CAAC;oBAAE,GAAG,CAAC,8BAA8B,EAAE,iCAAiC,CAAC,CAAC;gBACzM,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC;gBACzD,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,MAAM,CAAC;oBAAE,GAAG,CAAC,mCAAmC,EAAE,gCAAgC,CAAC,CAAC;YACzM,CAAC;QACH,CAAC;IACH,CAAC;IAED,6DAA6D;IAC7D,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/D,GAAG,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;IACxC,CAAC;SAAM,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QACnC,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5D,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBAAC,GAAG,CAAC,aAAa,IAAI,EAAE,EAAE,mBAAmB,CAAC,CAAC;gBAAC,SAAS;YAAC,CAAC;YAC9E,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI;gBAAE,YAAY,EAAE,CAAC;YAChD,+CAA+C;YAC/C,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,EAAE,EAAE,CAAC;gBACxF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACpC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBACzB,GAAG,CAAC,aAAa,IAAI,aAAa,EAAE,+BAA+B,GAAG,aAAa,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC;gBAC9H,CAAC;YACH,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,EAAE;gBACjG,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YACnF,oBAAoB,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,IAAI,gBAAgB,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;YACvF,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;YACvB,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YACxC,IAAI,OAAO;gBAAE,GAAG,CAAC,aAAa,IAAI,UAAU,EAAE,OAAO,CAAC,CAAC;YACvD,IAAI,IAAI,CAAC,iBAAiB,KAAK,SAAS,IAAI,OAAO,IAAI,CAAC,iBAAiB,KAAK,QAAQ,EAAE,CAAC;gBACvF,GAAG,CAAC,aAAa,IAAI,oBAAoB,EAAE,uBAAuB,CAAC,CAAC;YACtE,CAAC;YACD,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,EAAE,aAAa,IAAI,mBAAmB,CAAC,CAAC;YAC/E,sBAAsB,CAAC,IAAI,CAAC,eAAe,EAAE,aAAa,IAAI,kBAAkB,CAAC,CAAC;YAClF,uBAAuB,CAAC,IAAI,EAAE,aAAa,IAAI,EAAE,CAAC,CAAC;YACnD,yBAAyB,CAAC,IAAI,EAAE,aAAa,IAAI,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACpG,uFAAuF;YACvF,wFAAwF;YACxF,uFAAuF;YACvF,sFAAsF;YACtF,IAAK,IAAgC,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC5D,IAAI,CAAC,aAAa,IAAI,UAAU,EAAE,uHAAuH,CAAC,CAAC;YAC7J,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,WAAW,EAAE,2FAA2F,CAAC,CAAC;IACjH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,MAAe;IACtD,MAAM,MAAM,GAAsB,EAAE,CAAC;IACrC,MAAM,QAAQ,GAAsB,EAAE,CAAC;IACvC,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAC9E,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAAE,IAAY,EAAE,EAAE;QACzD,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;YAC/F,GAAG,CAAC,IAAI,EAAE,yEAAyE,CAAC,CAAC;QACvF,CAAC;IACH,CAAC,CAAC;IAEF,wEAAwE;IACxE,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IACtF,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QACnB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,0BAA0B,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IACrG,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;IACvC,CAAC;SAAM,IAAI,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClC,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC;QAC1B,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;QACpB,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QACnD,IAAI,OAAO;YAAE,GAAG,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;QAC9C,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,EAAE,2BAA2B,CAAC,CAAC;QACnE,IAAI,CAAC,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;YACvG,GAAG,CAAC,wBAAwB,EAAE,mCAAmC,CAAC,CAAC;QACrE,CAAC;QACD,IAAI,CAAC,CAAC,cAAc,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YAC5E,GAAG,CAAC,yBAAyB,EAAE,mBAAmB,CAAC,CAAC;QACtD,CAAC;QACD,IAAI,CAAC,CAAC,sBAAsB,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,sBAAsB,KAAK,SAAS,EAAE,CAAC;YAC5F,GAAG,CAAC,iCAAiC,EAAE,mBAAmB,CAAC,CAAC;QAC9D,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,CAAC,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,eAAe,CAAC,EAAE,CAAC;YACvF,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC/C,GAAG,CAAC,YAAY,GAAG,EAAE,EAAE,qCAAqC,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,UAAU,EAAE,+DAA+D,CAAC,CAAC;IACnF,CAAC;SAAM,IAAI,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClC,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;gBAAC,GAAG,CAAC,YAAY,GAAG,EAAE,EAAE,mBAAmB,CAAC,CAAC;gBAAC,SAAS;YAAC,CAAC;YAC/E,MAAM,YAAY,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,OAAO,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YACpL,IAAI,YAAY;gBAAE,GAAG,CAAC,YAAY,GAAG,UAAU,EAAE,YAAY,CAAC,CAAC;YAC/D,iBAAiB,CAAC,OAAO,CAAC,gBAAgB,EAAE,YAAY,GAAG,mBAAmB,CAAC,CAAC;YAChF,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;gBACnH,GAAG,CAAC,YAAY,GAAG,gBAAgB,EAAE,mCAAmC,CAAC,CAAC;YAC5E,CAAC;YACD,IAAI,OAAO,CAAC,cAAc,KAAK,SAAS,IAAI,OAAO,OAAO,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;gBACxF,GAAG,CAAC,YAAY,GAAG,iBAAiB,EAAE,mBAAmB,CAAC,CAAC;YAC7D,CAAC;YACD,IAAI,OAAO,CAAC,sBAAsB,KAAK,SAAS,IAAI,OAAO,OAAO,CAAC,sBAAsB,KAAK,SAAS,EAAE,CAAC;gBACxG,GAAG,CAAC,YAAY,GAAG,yBAAyB,EAAE,mBAAmB,CAAC,CAAC;YACrE,CAAC;YACD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC5E,GAAG,CAAC,YAAY,GAAG,WAAW,EAAE,mBAAmB,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;AAC1D,CAAC;AAED;;;;;;GAMG;AACH;;;;GAIG;AACH,SAAS,oBAAoB,CAAC,GAA4B,EAAE,IAA6C;IACvG,MAAM,KAAK,GAAG,yBAAyB,eAAe,CAAC,GAAG,IAAI,eAAe,CAAC,GAAG,EAAE,CAAC;IACpF,MAAM,EAAE,GAAG,CAAC,CAAU,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,GAAG,IAAI,CAAC,IAAI,eAAe,CAAC,GAAG,CAAC;IAC7I,MAAM,IAAI,GAAG,GAAG,CAAC,kBAAkB,EAAE,KAAK,GAAG,GAAG,CAAC,mBAAmB,CAAC;IACrE,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC;QAAE,IAAI,CAAC,wBAAwB,EAAE,WAAW,KAAK,2BAA2B,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;IAChK,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;QAAE,IAAI,CAAC,yBAAyB,EAAE,WAAW,KAAK,2BAA2B,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;IACpK,mFAAmF;IACnF,MAAM,MAAM,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,YAAY,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1E,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,aAAa,GAAG,IAAI,GAAG,IAAI,CAAC;IAC9E,IAAI,MAAM,GAAG,OAAO;QAAE,IAAI,CAAC,wBAAwB,EAAE,qCAAqC,MAAM,MAAM,OAAO,8BAA8B,OAAO,KAAK,CAAC,CAAC;IACzJ,MAAM,QAAQ,GAAG,0BAA0B,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1D,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,QAAQ,EAAE,CAAC;QACzC,IAAI,CAAC,wBAAwB,EAAE,wCAAwC,QAAQ,kEAAkE,CAAC,CAAC;IACrJ,CAAC;AACH,CAAC;AAED,iJAAiJ;AACjJ,SAAS,iBAAiB,CAAC,MAAe,EAAE,MAA2B,EAAE,KAAmC,EAAE,GAA4C,EAAE,IAA6C;IACvM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QAAC,GAAG,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAC;QAAC,OAAO;IAAC,CAAC;IACvE,MAAM,CAAC,GAAG,MAAiC,CAAC;IAC5C,MAAM,IAAI,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IAClF,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,GAAG,CAAC,cAAc,GAAG,EAAE,EAAE,gBAAgB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACxH,KAAK,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC;QAAE,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,SAAS;YAAE,GAAG,CAAC,cAAc,GAAG,EAAE,EAAE,mBAAmB,CAAC,CAAC;IAC9I,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7G,MAAM,KAAK,GAAG,CAAC,GAAgC,EAAE,KAA6B,EAAE,OAAe,EAAE,EAAE;QACjG,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,KAAK,SAAS;YAAE,OAAO;QAC5B,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YAAC,GAAG,CAAC,cAAc,GAAG,EAAE,EAAE,mBAAmB,CAAC,CAAC;YAAC,OAAO;QAAC,CAAC;QACzE,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAA4B,CAAC,EAAE,CAAC;YACtE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;gBAAC,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,EAAE,EAAE,mBAAmB,OAAO,EAAE,CAAC,CAAC;gBAAC,SAAS;YAAC,CAAC;YACzF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC,EAAE,CAAC;gBAAC,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,EAAE,EAAE,kCAAkC,CAAC,CAAC;gBAAC,SAAS;YAAC,CAAC;YAC5L,KAAK,MAAM,CAAC,IAAI,KAAiB;gBAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;oBAAE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,yEAAyE,CAAC,CAAC;QACvK,CAAC;IACH,CAAC,CAAC;IACF,MAAM,EAAE,GAAG,wBAAwB,CAAC;IACpC,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,CAAC,CAAS,EAAE,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxJ,KAAK,CAAC,QAAQ,EAAE,UAAU,EAAE,2BAA2B,CAAC,CAAC;IACzD,+FAA+F;IAC/F,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;YAAE,GAAG,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;aAC/D,CAAC;YACJ,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAiC,CAAC,EAAE,CAAC;gBAC7E,MAAM,EAAE,GAAG,qBAAqB,CAAC,EAAE,CAAC;gBACpC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;oBAAC,GAAG,CAAC,EAAE,EAAE,2CAA2C,CAAC,CAAC;oBAAC,SAAS;gBAAC,CAAC;gBACvF,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;oBAAC,GAAG,CAAC,EAAE,EAAE,2CAA2C,CAAC,CAAC;oBAAC,SAAS;gBAAC,CAAC;gBACtF,MAAM,EAAE,GAAG,KAAgC,CAAC;gBAC5C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;oBAAE,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,WAAW;wBAAE,GAAG,CAAC,GAAG,EAAE,IAAI,GAAG,EAAE,EAAE,+BAA+B,CAAC,CAAC;gBACnI,IAAI,EAAE,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,KAAK,QAAQ,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;oBAAE,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,0CAA0C,CAAC,CAAC;gBAClJ,MAAM,KAAK,GAAG,EAAE,CAAC,SAAS,CAAC;gBAC3B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC,EAAE,CAAC;oBAAC,GAAG,CAAC,GAAG,EAAE,YAAY,EAAE,kCAAkC,CAAC,CAAC;oBAAC,SAAS;gBAAC,CAAC;gBAC3M,KAAK,MAAM,CAAC,IAAI,KAAiB;oBAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;wBAAE,IAAI,CAAC,GAAG,EAAE,YAAY,EAAE,IAAI,CAAC,yEAAyE,CAAC,CAAC;YAChK,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;IAC1B,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO;IAClC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QAAC,GAAG,CAAC,oBAAoB,EAAE,mBAAmB,CAAC,CAAC;QAAC,OAAO;IAAC,CAAC;IAChF,MAAM,EAAE,GAAG,OAAkC,CAAC;IAC9C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAAE,IAAI,GAAG,KAAK,gBAAgB,IAAI,GAAG,KAAK,cAAc;YAAE,GAAG,CAAC,sBAAsB,GAAG,EAAE,EAAE,4CAA4C,CAAC,CAAC;IAC1K,MAAM,EAAE,aAAa,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,oBAAoB,CAAC;IAClE,MAAM,GAAG,GAAG,CAAC,GAAW,EAAE,GAAW,EAAE,GAAW,EAAE,IAAY,EAAiB,EAAE;QACjF,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;QAClB,IAAI,CAAC,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACjC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;YAAC,GAAG,CAAC,sBAAsB,GAAG,EAAE,EAAE,uBAAuB,IAAI,SAAS,GAAG,OAAO,GAAG,EAAE,CAAC,CAAC;YAAC,OAAO,GAAG,CAAC;QAAC,CAAC;QAC9K,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;IACF,MAAM,GAAG,GAAG,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,IAAI,GAAG,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC9G,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO;IACrE,MAAM,QAAQ,GAAG,GAAG,IAAI,oBAAoB,CAAC,UAAU,GAAG,SAAS,CAAC;IACpE,IAAI,IAAI,GAAG,QAAQ,GAAG,EAAE;QAAE,GAAG,CAAC,iCAAiC,EAAE,mCAAmC,IAAI,UAAU,QAAQ,KAAK,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AACzK,CAAC;AAED,SAAS,kBAAkB,CAAC,OAAgB,EAAE,GAA4C;IACxF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QAAC,GAAG,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;QAAC,OAAO;IAAC,CAAC;IACzE,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACvC,IAAI,GAAG,KAAK,OAAO;YAAE,GAAG,CAAC,eAAe,GAAG,EAAE,EAAE,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,+DAA+D,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC;IAC9J,CAAC;IACD,MAAM,KAAK,GAAI,OAAmC,CAAC,KAAK,CAAC;IACzD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO;IAChC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QAAC,GAAG,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;QAAC,OAAO;IAAC,CAAC;IAC7E,MAAM,CAAC,GAAG,KAAgC,CAAC;IAC3C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,IAAI,GAAG,KAAK,gBAAgB,IAAI,GAAG,KAAK,YAAY;YAAE,GAAG,CAAC,qBAAqB,GAAG,EAAE,EAAE,0CAA0C,CAAC,CAAC;IACpK,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,mBAAmB,CAAC;IACzC,MAAM,EAAE,GAAG,CAAC,GAAoC,EAAiB,EAAE;QACjE,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACjC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;YAAC,GAAG,CAAC,qBAAqB,GAAG,EAAE,EAAE,kCAAkC,GAAG,OAAO,GAAG,EAAE,CAAC,CAAC;YAAC,OAAO,GAAG,CAAC;QAAC,CAAC;QAC3K,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;IACF,MAAM,GAAG,GAAG,EAAE,CAAC,gBAAgB,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC;IAC1D,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;QAAE,OAAO;IACpD,MAAM,QAAQ,GAAG,GAAG,IAAI,sBAAsB,CAAC,KAAK,CAAC,UAAU,GAAG,SAAS,CAAC;IAC5E,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,GAAG,QAAQ,EAAE,CAAC;QACrC,GAAG,CAAC,8BAA8B,EAAE,mCAAmC,IAAI,MAAM,QAAQ,GAAG,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACtI,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CAAC,MAAe;IACvD,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IAChF,MAAM,CAAC,GAAG,MAAmD,CAAC;IAC9D,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1F,OAAO,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACzF,CAAC"}
1
+ {"version":3,"file":"config-validator.js","sourceRoot":"","sources":["../src/config-validator.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,11 @@
1
1
  /** Product guard that reserves room for routing metadata and protects recipient context. */
2
2
  export declare const MAX_ASSEMBLED_CROSS_INSTANCE_MESSAGE_BYTES = 16000;
3
- /** Render metadata carried in a cross-instance handoff. */
4
- export declare function renderCrossInstanceHandoffMetadata(meta: Record<string, string>): string;
3
+ /**
4
+ * Render metadata carried in a handoff. #2785 (a): request_kind stays in the stored meta (Fleet traffic, logs) but is
5
+ * not rendered — "a reply is owed" is the only thing it told the receiver, and `replyMarker` says that. The marker
6
+ * replaces the correlation_id row (it carries the id) and goes last, so a long task_summary or branch can't bury it.
7
+ */
8
+ export declare function renderCrossInstanceHandoffMetadata(meta: Record<string, string>, replyMarker?: string): string;
5
9
  /**
6
10
  * A task_summary that merely echoes the body is noise in the injected block
7
11
  * (#1037): senders auto-derive it from the first 200 chars when none is
@@ -18,9 +22,10 @@ export declare function shellArg(value: string): string;
18
22
  /** How the receiving agent talks to the fleet: MCP tools, or `agend-agent` commands (agent_mode: cli, no MCP server). */
19
23
  export type AgentMode = "mcp" | "cli";
20
24
  /**
21
- * #1650: how to answer, in the receiver's own terms — MCP tool names, or the agend-agent commands of
22
- * agent-cli-instructions.md (a CLI-mode agent has no MCP server; naming tools it lacks told it nothing).
25
+ * #1650: how to answer an owed reply, in the receiver's own terms — MCP tool names, or the agend-agent commands of
26
+ * agent-cli-instructions.md (a CLI-mode agent has no MCP server; naming tools it lacks told it nothing). #2785 (a): ""
27
+ * when no reply is owed — the instructions already say to answer only with something to add, via send_to_instance.
23
28
  */
24
- export declare function crossInstanceReplyFooter(meta: Record<string, string>, mode?: AgentMode): string;
29
+ export declare function crossInstanceReplyMarker(meta: Record<string, string>, mode?: AgentMode): string;
25
30
  /** Exact cross-instance block pasted by the receiving daemon (in the receiver's mode, #1650). */
26
31
  export declare function formatCrossInstanceInboundMessage(content: string, meta: Record<string, string>, mode?: AgentMode): string;
@@ -1,7 +1,11 @@
1
1
  /** Product guard that reserves room for routing metadata and protects recipient context. */
2
2
  export const MAX_ASSEMBLED_CROSS_INSTANCE_MESSAGE_BYTES = 16_000;
3
- /** Render metadata carried in a cross-instance handoff. */
4
- export function renderCrossInstanceHandoffMetadata(meta) {
3
+ /**
4
+ * Render metadata carried in a handoff. #2785 (a): request_kind stays in the stored meta (Fleet traffic, logs) but is
5
+ * not rendered — "a reply is owed" is the only thing it told the receiver, and `replyMarker` says that. The marker
6
+ * replaces the correlation_id row (it carries the id) and goes last, so a long task_summary or branch can't bury it.
7
+ */
8
+ export function renderCrossInstanceHandoffMetadata(meta, replyMarker = "") {
5
9
  const rows = [];
6
10
  const add = (label, value) => {
7
11
  if (value && value.trim())
@@ -10,12 +14,14 @@ export function renderCrossInstanceHandoffMetadata(meta) {
10
14
  add("message_id", meta.message_id);
11
15
  add("verification_id", meta.verification_id);
12
16
  add("forwards", meta.forwards);
13
- add("correlation_id", meta.correlation_id);
14
- add("request_kind", meta.request_kind);
17
+ if (!replyMarker)
18
+ add("correlation_id", meta.correlation_id);
15
19
  add("task_summary", meta.task_summary);
16
20
  add("working_directory", meta.working_directory);
17
21
  add("branch", meta.branch);
18
22
  add("attachment_file_id", meta.attachment_file_id);
23
+ if (replyMarker)
24
+ rows.push(replyMarker);
19
25
  return rows.length ? `\n(${rows.join(" | ")})` : "";
20
26
  }
21
27
  /**
@@ -40,20 +46,18 @@ export function shellArg(value) {
40
46
  return /^[A-Za-z0-9_.:\/@%+=,-]+$/.test(value) ? value : `'${value.replace(/'/g, `'\\''`)}'`;
41
47
  }
42
48
  /**
43
- * #1650: how to answer, in the receiver's own terms — MCP tool names, or the agend-agent commands of
44
- * agent-cli-instructions.md (a CLI-mode agent has no MCP server; naming tools it lacks told it nothing).
49
+ * #1650: how to answer an owed reply, in the receiver's own terms — MCP tool names, or the agend-agent commands of
50
+ * agent-cli-instructions.md (a CLI-mode agent has no MCP server; naming tools it lacks told it nothing). #2785 (a): ""
51
+ * when no reply is owed — the instructions already say to answer only with something to add, via send_to_instance.
45
52
  */
46
- export function crossInstanceReplyFooter(meta, mode = "mcp") {
47
- const required = meta.requires_reply === "true";
53
+ export function crossInstanceReplyMarker(meta, mode = "mcp") {
54
+ if (meta.requires_reply !== "true")
55
+ return "";
56
+ const cid = meta.correlation_id?.trim();
48
57
  if (mode === "cli") {
49
- const from = shellArg(meta.from_instance || "SENDER");
50
- return required
51
- ? `\n(A reply IS required: agend-agent report ${from} "…" ${shellArg(meta.correlation_id || "CORRELATION_ID")} — or agend-agent send ${from} "…". Not direct text.)`
52
- : `\n(If you need to reply, use agend-agent send ${from} "…", NOT direct text. If there is nothing to add, you may stay silent.)`;
58
+ return `reply required → agend-agent report ${shellArg(meta.from_instance || "SENDER")} "…" ${shellArg(cid || "CORRELATION_ID")}`;
53
59
  }
54
- return required
55
- ? "\n(A reply IS required: use report_result with the correlation_id above — or send_to_instance. Not direct text.)"
56
- : "\n(If you need to reply, use send_to_instance tool, NOT direct text. If there is nothing to add, you may stay silent.)";
60
+ return cid ? `reply required → report_result ${cid}` : "reply required → send_to_instance";
57
61
  }
58
62
  /** Exact cross-instance block pasted by the receiving daemon (in the receiver's mode, #1650). */
59
63
  export function formatCrossInstanceInboundMessage(content, meta, mode = "mcp") {
@@ -65,8 +69,7 @@ export function formatCrossInstanceInboundMessage(content, meta, mode = "mcp") {
65
69
  const renderMeta = isRedundantTaskSummary(content, meta.task_summary)
66
70
  ? { ...meta, task_summary: "" }
67
71
  : meta;
68
- formatted += renderCrossInstanceHandoffMetadata(renderMeta);
69
- formatted += crossInstanceReplyFooter(meta, mode);
72
+ formatted += renderCrossInstanceHandoffMetadata(renderMeta, crossInstanceReplyMarker(meta, mode));
70
73
  return formatted;
71
74
  }
72
75
  //# sourceMappingURL=cross-instance-envelope.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cross-instance-envelope.js","sourceRoot":"","sources":["../src/cross-instance-envelope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cross-instance-envelope.js","sourceRoot":"","sources":["../src/cross-instance-envelope.ts"],"names":[],"mappings":"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"}
package/dist/daemon.d.ts CHANGED
@@ -23,34 +23,6 @@ import type { KiroLogLaunch } from "./kiro-log-gate.js";
23
23
  * often; a long silent tool run shows its own busy row on the pane.
24
24
  */
25
25
  export declare const TRANSCRIPT_OPEN_TURN_QUIET_MS: number;
26
- export declare function buildInstructionReloadNotice(binaryName: string, instanceName: string, instanceDir: string, backendSource?: string | null): string;
27
- /**
28
- * Whether this backend has to be told in its pane that its instructions moved.
29
- *
30
- * A backend that re-reads them on resume already received the new ones from the
31
- * resume itself, so the notice is pure interruption. Both places that can send
32
- * it — the warmup paste and the deferred pendingInstructionsNotice — ask through
33
- * here, so the two cannot drift apart again: the warmup path used to omit this
34
- * check entirely and told claude-code to reload instructions it had just read.
35
- */
36
- export declare function backendNeedsPaneReloadNotice(backend?: {
37
- instructionsReloadedOnResume?: boolean;
38
- }): boolean;
39
- /**
40
- * What the warmup should do about changed instructions.
41
- *
42
- * `skip` — nothing to say, or this backend learns of the change by itself.
43
- * `defer` — worth saying, but nobody is talking to the instance; say it when a
44
- * real message next arrives rather than provoking an unsolicited reply.
45
- * `paste` — say it now, into a pane that already has a delivery in flight.
46
- */
47
- export declare function warmupNoticeAction(opts: {
48
- warmupNeeded: boolean;
49
- backend?: {
50
- instructionsReloadedOnResume?: boolean;
51
- };
52
- pasteQueueDepth: number;
53
- }): "skip" | "defer" | "paste";
54
26
  export declare const DEFAULT_STUCK_TIMEOUT_MS: number;
55
27
  export declare const DEFAULT_STATE_IDLE_DEBOUNCE_MS = 2000;
56
28
  export declare const DEFAULT_STATE_SAFETY_SWEEP_MS = 60000;
@@ -58,6 +30,14 @@ export declare const DEFAULT_STATE_SAFETY_SWEEP_MS = 60000;
58
30
  export declare const PERIODIC_REDRAW_PROBE_MS = 25;
59
31
  /** Do not turn a streaming Codex turn into one capture-pane per burst. */
60
32
  export declare const STRUCTURED_IDLE_PROBE_MS = 500;
33
+ /** #2770 (ii): how often output may schedule a look for a layout that repaints while idle (CliBackend.periodicRedrawFrom). */
34
+ export declare const PERIODIC_LAYOUT_LOOK_MS = 5000;
35
+ /** #2770: how often a delivery waiting for idle asks again whether it can be handed off instead. */
36
+ export declare const HANDOFF_RECHECK_MS = 1000;
37
+ /** #2770: how often a wait for idle asks its stop condition (a cancel, a hand-off that became possible). */
38
+ export declare const WAIT_STOP_POLL_MS = 250;
39
+ /** #2770: human messages a cancel dropped are told in one notice, this long after the last of them. */
40
+ export declare const CANCELLED_HUMANS_NOTICE_MS = 1000;
61
41
  /**
62
42
  * An instance publishing more than this many execution-state edges inside the
63
43
  * window is flapping; its edges stop being logged one by one (#1116). One
@@ -649,6 +629,10 @@ export declare class Daemon extends EventEmitter {
649
629
  /** Consecutive structural idle captures for a noisy, periodically-redrawing
650
630
  * pane. Two are required before a working -> idle transition. */
651
631
  private instanceStatePeriodicIdleConfirmations;
632
+ /** #2770 (ii): the latest capture showed a layout that repaints while idle (CliBackend.periodicRedrawFrom). */
633
+ private periodicRedrawLayout;
634
+ /** When output last scheduled a look for that layout (monotonic ms), so a busy pane is not captured on every chunk. */
635
+ private periodicLayoutLookAt;
652
636
  /** Recent execution-state edge times, for the flap log limiter (#1116). */
653
637
  private stateEdgeTimes;
654
638
  private stateEdgesNotLogged;
@@ -687,7 +671,6 @@ export declare class Daemon extends EventEmitter {
687
671
  /** Prevent a visible stale XML fragment from being recovered on later turns. */
688
672
  private lastMalformedToolCallSignature;
689
673
  private proxyReplySeq;
690
- private lastReplyDropWarningAt;
691
674
  /**
692
675
  * #1241: an idle edge that has not yet proven the turn ended. Armed instead
693
676
  * of recovering immediately; a steady idle snapshot past confirmAt promotes
@@ -746,6 +729,8 @@ export declare class Daemon extends EventEmitter {
746
729
  private authFailureUnresolved;
747
730
  /** One login-screen auth report per spawn — the screen persists across polls. */
748
731
  private loginScreenReported;
732
+ /** #2795: the auth pattern match the token-free check is still to judge; it arms nothing until confirmAuthFailure(). */
733
+ private unverifiedAuthMatch;
749
734
  /**
750
735
  * While the lifecycle is still starting this daemon, `pty_error` has no
751
736
  * listener and `InstanceLifecycle.daemons` has no entry — so an incident the
@@ -802,15 +787,12 @@ export declare class Daemon extends EventEmitter {
802
787
  private deliveryWritesStopping;
803
788
  /** #829: the latest pastes, by spawn generation (see ownedInputDraft). */
804
789
  private recentPastes;
805
- private pendingInstructionsUpdate;
806
- private pendingInstructionsNotice;
807
790
  /** #1633: the one-time "what's new for you" notice, pasted before the next real delivery; recorded once pasted. */
808
791
  private pendingWhatsNew;
809
- /** #2140: deliveries tried for the pending what's-new notice that never reached the pane (capped: never before every message). */
810
- private whatsNewUnwritten;
811
- private warmupNeeded;
812
- private lastBuiltInstructions;
813
792
  private pasteQueueDepth;
793
+ /** #2770: a person's messages a cancel dropped before they reached the CLI, told together (noteCancelledHuman). */
794
+ private cancelledHumans;
795
+ private cancelledHumansTimer;
814
796
  private firstDeliveryDelay;
815
797
  /** Orders /steer pastes against each other. Deliberately NOT pasteLock:
816
798
  * a steer must not queue behind the normal deliveries it exists to
@@ -960,21 +942,21 @@ export declare class Daemon extends EventEmitter {
960
942
  releaseStartupIncidents(): void;
961
943
  emit(event: string | symbol, ...args: unknown[]): boolean;
962
944
  /**
963
- * Undo the auth suspicion a pattern match armed, once the backend's token-free
964
- * probe has said the credentials are fine.
965
- *
966
- * emitErrorPattern arms these BEFORE the pty_error reaches the lifecycle, and
967
- * the lifecycle's "valid" verdict used to just drop the incident — leaving the
968
- * daemon permanently suspicious of an auth failure that never existed. That
969
- * state is not inert: authFailureUnresolved suppresses the stuck/hang
970
- * notification and holds MCP auto-restart (a later real MCP death is then read
971
- * as already-confirmed auth trouble rather than re-verified), and the recovery
972
- * gate suppresses further error detection until a ready pattern shows up.
973
- *
974
- * Only what an auth match armed is rolled back. If some other pattern has
975
- * since armed the recovery gate, that one is still live and stays.
945
+ * Undo an auth suspicion once the backend's token-free probe has said the credentials are fine. Since #2795 a pane
946
+ * pattern match arms nothing before that probe (its pending match is just dropped); what is left to undo is a
947
+ * login-screen report, which arms authFailureUnresolved itself. That state is not inert: it suppresses the
948
+ * stuck/hang notification and holds MCP auto-restart. If some other pattern has armed the recovery gate, that one
949
+ * is still live and stays.
976
950
  */
977
951
  clearSuspectedAuthFailure(): boolean;
952
+ private armErrorRecoveryGate;
953
+ /**
954
+ * #2795: the token-free check did not vouch for the credentials behind an auth pattern match. Only now does the
955
+ * match become an auth failure: the state the detector used to arm at match time. Remembered for as long as it is
956
+ * unresolved — an auth-broken CLI cannot finish the turn it is holding, so every other detector would otherwise
957
+ * keep reporting the same dead instance. A login-screen report arms its own state and has no match to confirm.
958
+ */
959
+ confirmAuthFailure(): boolean;
978
960
  private clearErrorRecoveryGate;
979
961
  constructor(name: string, config: InstanceConfig, instanceDir: string, topicMode?: boolean, backend?: CliBackend | undefined, controlClient?: TmuxControlClient | undefined, rootLogger?: Logger, runtimeIdentity?: FleetInstructionsParams["runtimeIdentity"], spawnGate?: SpawnGate | undefined, stormWindow?: StormWindow | undefined,
980
962
  /** Fleet-level "is this CLI's backend down?" memory — see backend-outage.ts. */
@@ -1466,8 +1448,6 @@ export declare class Daemon extends EventEmitter {
1466
1448
  private currentReplyRecovery;
1467
1449
  private queueMalformedReplyRecovery;
1468
1450
  private reportUnrecoveredReplyDrop;
1469
- /** Channel notice for a reply-drop. `rateLimit` shares the per-instance cooldown (#2544). */
1470
- private deliverReplyDropNotice;
1471
1451
  /** Relay the pane's final text to the channel, marked as a daemon proxy reply. */
1472
1452
  private sendProxyReply;
1473
1453
  /** Context-bound reply path shared by dead-MCP and malformed-call recovery. */
@@ -1485,6 +1465,12 @@ export declare class Daemon extends EventEmitter {
1485
1465
  private scheduleInstanceStateIdleCapture;
1486
1466
  private captureAndEvaluateInstanceState;
1487
1467
  private handleInstancePaneOutput;
1468
+ /**
1469
+ * The backend's structural idle proof for periodically repainting panes, when it applies to the current layout: always
1470
+ * for a backend that repaints in every layout (Codex, Muse), only while the latest capture showed such a layout for one
1471
+ * that names it (CliBackend.periodicRedrawFrom — Claude's background-agent list, #2770 (ii)).
1472
+ */
1473
+ private periodicIdleProof;
1488
1474
  private bindInstanceStateOutputListener;
1489
1475
  private startInstanceStateMonitor;
1490
1476
  private stopInstanceStateMonitor;
@@ -1572,6 +1558,13 @@ export declare class Daemon extends EventEmitter {
1572
1558
  /** The same formatter/sanitizer used by the actual write; snapshot only. */
1573
1559
  humanReceiptWire(content: string, meta: Record<string, string>, kind: string): string;
1574
1560
  private humanReceiptAttempt;
1561
+ /**
1562
+ * #2770: a person's message a cancel dropped before it reached the CLI is told, not left as a silent "uncertain":
1563
+ * the messages dropped together go out as one `human_messages_cancelled` (the fleet marks each ❌ and says so once).
1564
+ * Agents' messages are not a person's, and a durable row (delivery_id) is retried by the outbox: neither is ❌'d. A
1565
+ * message with no chat to mark has nowhere to say it.
1566
+ */
1567
+ private noteCancelledHuman;
1575
1568
  private finishHumanReceipt;
1576
1569
  /**
1577
1570
  * Whether ONE delivery reached a verdict, carried by that delivery.
@@ -1945,6 +1938,9 @@ export declare class Daemon extends EventEmitter {
1945
1938
  * Enter-dropping TUIs. Polls at a coarse cadence (each poll is a capture-pane)
1946
1939
  * only after the pane is already quiet, so the common fast-idle delivery still
1947
1940
  * costs a single capture.
1941
+ *
1942
+ * #2770: with `stop`, the wait also ends ("stopped") as soon as `stop` says so — asked every WAIT_STOP_POLL_MS while
1943
+ * the pane is busy, and before every re-poll — so a cancel or a hand-off that became possible never waits out the pane.
1948
1944
  */
1949
1945
  private waitForPaneReadyForDelivery;
1950
1946
  /**
@@ -2046,6 +2042,11 @@ export declare class Daemon extends EventEmitter {
2046
2042
  */
2047
2043
  private isPaneIdleForDelivery;
2048
2044
  private waitForPaneIdleForDelivery;
2045
+ /**
2046
+ * #2770: waitForPaneIdleForDelivery that also ends as soon as `stop` says so ("stopped"). The same idle readings
2047
+ * (tmux silence, or the state machine where its idle is trusted), polled here so nothing outlives a stopped wait.
2048
+ */
2049
+ private waitForPaneIdleOrStop;
2049
2050
  /**
2050
2051
  * Antigravity has always opted into pane-state delivery readiness because its
2051
2052
  * footer redraws while idle. Codex's structural idle proof is useful only
@@ -2419,22 +2420,17 @@ export declare class Daemon extends EventEmitter {
2419
2420
  */
2420
2421
  private switchMuseToDirect;
2421
2422
  /**
2422
- * Tell the agent its instructions moved, once the CLI is idle.
2423
- *
2424
- * A named method rather than an inline closure so the wiring itself is
2425
- * testable: warmupNoticeAction's own tests pass even if this call site stops
2426
- * consulting it, which is exactly the bug this path had — the decision was
2427
- * made inline and never asked whether the backend needed telling at all.
2428
- *
2429
- * Never throws: a missed reload notice must not fail a spawn.
2423
+ * #1633 (#1639 review): the pending notice as things stand NOW, just before the paste — it was decided at launch, and
2424
+ * the record, a switch or the instance's tools may have changed while the delivery waited. Planned again from the
2425
+ * record (#2800: the running release only, tools it has now); nothing left to tell → recorded, nothing pending.
2430
2426
  */
2431
- private runWarmupInstructionNotice;
2427
+ private currentWhatsNew;
2428
+ private recordWhatsNewSent;
2432
2429
  /**
2433
- * #1633 (#1639 review): the pending notice as the record stands NOW, just before the paste — it was decided at launch,
2434
- * and the record may have changed while the delivery waited. Unreadable → nothing is sent (and nothing pending);
2435
- * entries recorded meanwhile are dropped from it; none left → nothing.
2430
+ * #2800: the tools this instance's agend MCP server lists now — the same filters (tool set, dashboard switches, the
2431
+ * Canvas Worker switch) — so a notice names only changes to tools it has.
2436
2432
  */
2437
- private currentWhatsNew;
2433
+ private whatsNewTools;
2438
2434
  /**
2439
2435
  * #2163: who this instance is to the what's-new notices — a ClassicBot room's agent, General, or a fleet worker (with
2440
2436
  * `coordinator` too when its tool set is coordinator or full, the ones that carry get_/set_web_settings).