@lemoncat7/dsh-partner 1.1.6 → 1.4.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 (88) hide show
  1. package/README.md +21 -6
  2. package/lib/agent-runtime.d.ts +46 -3
  3. package/lib/agent-runtime.d.ts.map +1 -1
  4. package/lib/agent-runtime.js +599 -50
  5. package/lib/agent-runtime.js.map +1 -1
  6. package/lib/api.d.ts +2 -0
  7. package/lib/api.d.ts.map +1 -1
  8. package/lib/api.js +44 -4
  9. package/lib/api.js.map +1 -1
  10. package/lib/autonomy.d.ts +2 -7
  11. package/lib/autonomy.d.ts.map +1 -1
  12. package/lib/autonomy.js +40 -28
  13. package/lib/autonomy.js.map +1 -1
  14. package/lib/channels/manager.d.ts +1 -0
  15. package/lib/channels/manager.d.ts.map +1 -1
  16. package/lib/channels/manager.js +11 -3
  17. package/lib/channels/manager.js.map +1 -1
  18. package/lib/client-api.d.ts +60 -0
  19. package/lib/client-api.d.ts.map +1 -1
  20. package/lib/client-api.js.map +1 -1
  21. package/lib/client.d.ts.map +1 -1
  22. package/lib/client.js +1880 -620
  23. package/lib/client.js.map +4 -4
  24. package/lib/concern-domain.d.ts +132 -0
  25. package/lib/concern-domain.d.ts.map +1 -0
  26. package/lib/concern-domain.js +212 -0
  27. package/lib/concern-domain.js.map +1 -0
  28. package/lib/concern-notification.d.ts +6 -0
  29. package/lib/concern-notification.d.ts.map +1 -0
  30. package/lib/concern-notification.js +27 -0
  31. package/lib/concern-notification.js.map +1 -0
  32. package/lib/concern-sources.d.ts +10 -0
  33. package/lib/concern-sources.d.ts.map +1 -0
  34. package/lib/concern-sources.js +81 -0
  35. package/lib/concern-sources.js.map +1 -0
  36. package/lib/concern-store.d.ts +68 -0
  37. package/lib/concern-store.d.ts.map +1 -0
  38. package/lib/concern-store.js +611 -0
  39. package/lib/concern-store.js.map +1 -0
  40. package/lib/concern-tool.d.ts +25 -0
  41. package/lib/concern-tool.d.ts.map +1 -0
  42. package/lib/concern-tool.js +145 -0
  43. package/lib/concern-tool.js.map +1 -0
  44. package/lib/daily-review.d.ts +3 -1
  45. package/lib/daily-review.d.ts.map +1 -1
  46. package/lib/daily-review.js +8 -2
  47. package/lib/daily-review.js.map +1 -1
  48. package/lib/domain.d.ts +4 -1
  49. package/lib/domain.d.ts.map +1 -1
  50. package/lib/domain.js +23 -0
  51. package/lib/domain.js.map +1 -1
  52. package/lib/glass-surface.d.ts +20 -0
  53. package/lib/glass-surface.d.ts.map +1 -0
  54. package/lib/glass-surface.js +119 -0
  55. package/lib/glass-surface.js.map +1 -0
  56. package/lib/heartbeat.d.ts +10 -2
  57. package/lib/heartbeat.d.ts.map +1 -1
  58. package/lib/heartbeat.js +81 -17
  59. package/lib/heartbeat.js.map +1 -1
  60. package/lib/index.d.ts.map +1 -1
  61. package/lib/index.js +36 -5
  62. package/lib/index.js.map +1 -1
  63. package/lib/memory-domain.d.ts +39 -7
  64. package/lib/memory-domain.d.ts.map +1 -1
  65. package/lib/memory-prompt-context.d.ts +20 -0
  66. package/lib/memory-prompt-context.d.ts.map +1 -0
  67. package/lib/memory-prompt-context.js +138 -0
  68. package/lib/memory-prompt-context.js.map +1 -0
  69. package/lib/memory-reflection.d.ts +8 -3
  70. package/lib/memory-reflection.d.ts.map +1 -1
  71. package/lib/memory-reflection.js +80 -19
  72. package/lib/memory-reflection.js.map +1 -1
  73. package/lib/memory-store.d.ts +13 -1
  74. package/lib/memory-store.d.ts.map +1 -1
  75. package/lib/memory-store.js +182 -8
  76. package/lib/memory-store.js.map +1 -1
  77. package/lib/profile-domain.d.ts +7 -0
  78. package/lib/profile-domain.d.ts.map +1 -0
  79. package/lib/profile-domain.js +56 -0
  80. package/lib/profile-domain.js.map +1 -0
  81. package/lib/store.d.ts.map +1 -1
  82. package/lib/store.js +39 -3
  83. package/lib/store.js.map +1 -1
  84. package/lib/time-format.d.ts +2 -0
  85. package/lib/time-format.d.ts.map +1 -0
  86. package/lib/time-format.js +20 -0
  87. package/lib/time-format.js.map +1 -0
  88. package/package.json +3 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"concern-store.js","sourceRoot":"","sources":["../src/concern-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EACL,0BAA0B,EAAE,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,wBAAwB,EACxI,iBAAiB,EAAE,+BAA+B,EAAE,uBAAuB,EAC3E,uBAAuB,EAAE,4BAA4B,GAGtD,MAAM,qBAAqB,CAAA;AA4B5B,MAAM,OAAO,mBAAmB;IAGD;IAFZ,MAAM,GAAG,IAAI,GAAG,EAAyB,CAAA;IAE1D,YAA6B,IAAY;QAAZ,SAAI,GAAJ,IAAI,CAAQ;IAAG,CAAC;IAE7C,KAAK,CAAC,aAAa,CAAC,WAAmB,EAAE,KAA0B;QACjE,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,KAAK,IAAI,EAAE;YACnD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAC7C,IAAI,CAAC;gBACH,IAAI,QAAQ,CAAC,OAAO,CAAC,oEAAoE,CAAC,CAAC,GAAG,EAAE;oBAAE,OAAM;gBACxG,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;gBAChC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBACtB,KAAK,MAAM,IAAI,IAAI,KAAK;oBAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE;wBACzE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG;wBAChH,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO;qBACzE,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;gBACpB,QAAQ,CAAC,OAAO,CAAC,2EAA2E,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;gBAC9G,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YACzB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBAAC,MAAM,KAAK,CAAA;YAAC,CAAC;oBAAS,CAAC;gBAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;YAAC,CAAC;QAClF,CAAC,CAAC,CAAA;QACF,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,WAAmB,EACnB,OAAe,EACf,UAA8B,EAC9B,MAAqB,EACrB,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,EACf,UAA+B,EAAE;QAEjC,OAAO,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAA;IACrG,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,WAAmB,EACnB,OAAe,EACf,UAA8B,EAC9B,MAAqB,EACrB,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,EACf,UAA+B,EAAE;QAEjC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;QAChE,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,KAAK,IAAI,EAAE;YACzD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAC7C,MAAM,OAAO,GAAqB,EAAE,CAAA;YACpC,MAAM,OAAO,GAAwB,EAAE,CAAA;YACvC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAA;YAC9E,MAAM,kBAAkB,GAAG,IAAI,CAAC,GAAG,CACjC,+BAA+B,EAC/B,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,kBAAkB,IAAI,+BAA+B,CAAC,CAC3E,CAAA;YACD,IAAI,CAAC;gBACH,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;gBAChC,KAAK,MAAM,SAAS,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;oBAChD,MAAM,UAAU,GAAG,uBAAuB,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAA;oBAC3E,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;oBACnG,MAAM,SAAS,GAAG,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;oBACzF,IAAI,SAAS,KAAK,SAAS,IAAI,CAAC,MAAM,KAAK,UAAU,IAAI,SAAS,CAAC,SAAS,KAAK,QAAQ,IAAI,QAAQ,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,IAAI,kBAAkB,CAAC,EAAE,CAAC;wBAC7J,MAAM,MAAM,GAAG,SAAS,IAAI,UAAU,kBAAkB,QAAQ,CAAA;wBAChE,MAAM,KAAK,GAAsB,EAAE,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;wBAC3G,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;wBACnB,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,CAAC,CAAA;wBACjF,SAAQ;oBACV,CAAC;oBACD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,CAAA;oBAClF,IAAI,OAAO,KAAK,SAAS;wBAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;oBAChD,MAAM,OAAO,GAAG,OAAO,IAAI,QAAQ,CAAA;oBACnC,MAAM,QAAQ,GAAyB,SAAS,CAAC,SAAS,KAAK,SAAS;wBACtE,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;wBACjD,CAAC,CAAC,SAAS,CAAC,SAAS,KAAK,SAAS;4BACjC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW;4BAClD,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA;oBACpD,MAAM,MAAM,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY;wBAC1F,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB;4BACzC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe;gCACxC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS;oCACnC,CAAC,CAAC,SAAS,CAAA;oBACnB,MAAM,KAAK,GAAsB,EAAE,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAA;oBACvJ,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;oBACnB,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,CAAC,CAAA;gBACnF,CAAC;gBACD,QAAQ,CAAC,OAAO,CAAC,qEAAqE,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC,CAAA;gBAC9H,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YACzB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBAAC,MAAM,KAAK,CAAA;YAAC,CAAC;oBAAS,CAAC;gBAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;YAAC,CAAC;YAChF,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA;QAC7B,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,WAAmB,EAAE,OAAe,EAAE,OAAe,EAAE,MAAM,GAAG,EAAE;QACrF,MAAM,UAAU,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAA;QACrD,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;gBAChD,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;gBAC9F,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE,SAAS,EAAE,UAAU,CAAC,SAAS;aACnH,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;QAC7C,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,uBAAuB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAA;QAC3J,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;QAC7D,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,WAAmB,EACnB,OAAe,EACf,KAAa,EACb,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;QAEhB,MAAM,OAAO,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAA;QAC9C,IAAI,OAAO,KAAK,SAAS;YAAE,OAAO,SAAS,CAAA;QAC3C,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,KAAK,IAAI,EAAE;YACzD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAC7C,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC;gFAC0C,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAa,CAAA;gBAC/G,MAAM,MAAM,GAAG,4BAA4B,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAA;gBAC9E,IAAI,MAAM,KAAK,SAAS;oBAAE,OAAO,SAAS,CAAA;gBAC1C,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ;oBAAE,QAAQ,CAAC,OAAO,CAAC,qEAAqE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;;oBACvI,QAAQ,CAAC,OAAO,CAAC,sFAAsF,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;gBACtI,OAAO,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAA;YACtE,CAAC;oBAAS,CAAC;gBAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;YAAC,CAAC;QAChC,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,WAAmB,EAAE,OAAgB,EAAE,eAAe,GAAG,KAAK,EAAE,KAAK,GAAG,GAAG;QACpF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAC7C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,+BAA+B,CAAA;YACrE,MAAM,IAAI,GAAG,OAAO,KAAK,SAAS;gBAChC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,iDAAiD,MAAM,+CAA+C,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC;gBAClJ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,kEAAkE,MAAM,+CAA+C,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;YAC9K,OAAQ,IAAiB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;QAC/C,CAAC;gBAAS,CAAC;YAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;QAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,WAAmB,EAAE,OAAe,EAAE,UAA6B,EAAE;QAC7E,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAA;QACrC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAA;QACjC,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,KAAK,IAAI,EAAE;YACzD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAC7C,IAAI,CAAC;gBACH,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;gBAChC,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC;;;4DAGsB,CAAC,CAAC,GAAG,CACvD,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CACxH,CAAA;gBACb,MAAM,GAAG,GAAqB,EAAE,CAAA;gBAChC,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,uDAAuD,CAAC,CAAA;gBACxF,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;oBACvB,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,CAAA;oBAChC,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;oBAC7E,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,IAAI,KAAK,GAAG,GAAG,EAAE,CAAC;wBAC9C,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,CAAA;wBACtC,SAAQ;oBACV,CAAC;oBACD,IAAI,KAAK,KAAK,IAAI,CAAC,KAAK;wBAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAA;oBAChE,IAAI,GAAG,CAAC,MAAM,GAAG,KAAK;wBAAE,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;gBACtD,CAAC;gBACD,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;gBACvB,OAAO,GAAG,CAAA;YACZ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBAAC,MAAM,KAAK,CAAA;YAAC,CAAC;oBAAS,CAAC;gBAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;YAAC,CAAC;QAClF,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,QAA0B,EAAE,UAAyC,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,kBAAkB,GAAG,KAAK;QAC1I,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,CAAA;QACzE,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAC,WAAW,CAAA;QAC5C,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,KAAK,IAAI,EAAE;YACzD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAC7C,MAAM,YAAY,GAAyB,EAAE,CAAA;YAC7C,IAAI,CAAC;gBACH,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;gBAChC,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;gBACzE,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;oBAC/B,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;oBAC3C,MAAM,aAAa,GAAG,0BAA0B,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAA;oBAC/E,MAAM,WAAW,GAAG,GAAG,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,GAAG,MAAM,CAAC,CAAA;oBACpI,IAAI,CAAC,SAAS,EAAE,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;wBACnD,QAAQ,CAAC,OAAO,CAAC,oFAAoF,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;wBACvJ,SAAQ;oBACV,CAAC;oBACD,MAAM,WAAW,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAA;oBACrD,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,6EAA6E,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,WAAW,CAAuB,CAAA;oBACvK,MAAM,aAAa,GAAG,MAAM,CAAE,QAAQ,CAAC,OAAO,CAAC,yEAAyE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAwB,EAAE,KAAK,CAAC,CAAA;oBACxK,MAAM,iBAAiB,GAAG,OAAO,CAAC,eAAe,KAAK,SAAS,IAAI,GAAG,GAAG,OAAO,CAAC,eAAe,GAAG,EAAE,GAAG,SAAS,CAAA;oBACjH,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;oBAC1F,MAAM,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,sBAAsB,IAAI,EAAE,EAAE,GAAG,CAAC,CAAA;oBACvE,MAAM,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,WAAW,CAAC,CAAA;oBACzF,MAAM,sBAAsB,GAAG,eAAe,IAAI,UAAU;wBAC1D,CAAC,CAAC,SAAS,CAAC,sBAAsB,IAAI,MAAM;wBAC5C,CAAC,CAAC,MAAM,CAAA;oBACV,MAAM,QAAQ,GAAG,iBAAiB,CAAC;wBACjC,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,iBAAiB,EAAE,OAAO,CAAC,UAAU;wBACjE,qBAAqB,EAAE,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,OAAO;wBAClG,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,iBAAiB;wBAChE,gBAAgB,EAAE,YAAY,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,KAAK,CAAC,EAAE,kBAAkB;wBACtF,sBAAsB;qBACvB,CAAC,CAAA;oBACF,MAAM,WAAW,GAAuB;wBACtC,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,eAAe,UAAU,EAAE,EAAE;wBAC1E,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,WAAW;wBAC9F,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC;wBAChF,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC;wBAC3F,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC;wBACnF,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC;wBACtI,cAAc,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,sBAAsB;wBACnF,sBAAsB,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,CAAC,MAAM;wBACnE,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG;wBAC/D,GAAG,CAAC,YAAY,EAAE,YAAY,KAAK,IAAI,IAAI,YAAY,EAAE,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,CAAC;qBAC/I,CAAA;oBACD,IAAI,YAAY,EAAE,CAAC;wBACjB,MAAM,gBAAgB,GAAG,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAwB,CAAA;wBAC7E,MAAM,oBAAoB,GAAG,gBAAgB,KAAK,QAAQ;+BACrD,CAAC,WAAW,CAAC,WAAW,KAAK,SAAS,IAAI,WAAW,CAAC,sBAAsB,KAAK,UAAU,CAAC,CAAA;wBACjG,IAAI,oBAAoB,EAAE,CAAC;4BACzB,WAAW,CAAC,QAAQ,GAAG,QAAQ,CAAA;4BAC/B,WAAW,CAAC,cAAc,GAAG,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,CAAA;4BACjE,WAAW,CAAC,sBAAsB,GAAG,MAAM,CAAC,YAAY,CAAC,WAAW,IAAI,MAAM,CAAiD,CAAA;4BAC/H,WAAW,CAAC,sBAAsB,GAAG,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC,CAAA;4BACrE,WAAW,CAAC,cAAc,GAAG,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,aAAa,CAAA;wBACpF,CAAC;6BAAM,CAAC;4BACN,QAAQ,CAAC,OAAO,CAAC;sHACuF,CAAC,CAAC,GAAG,CAC3G,WAAW,CAAC,SAAS,EAAE,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC,aAAa,EAAE,WAAW,CAAC,cAAc,EACpG,WAAW,CAAC,QAAQ,EAAE,WAAW,CAAC,sBAAsB,EAAE,WAAW,CAAC,sBAAsB,EAAE,WAAW,CAAC,cAAc,EAAE,WAAW,CAAC,EAAE,CACzI,CAAA;wBACH,CAAC;wBACD,IAAI,gBAAgB,KAAK,QAAQ,IAAI,WAAW,CAAC,QAAQ,KAAK,QAAQ,IAAI,WAAW,CAAC,WAAW,KAAK,SAAS;4BAAE,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;oBACjJ,CAAC;yBAAM,CAAC;wBACN,iBAAiB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;wBACxC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;oBAChC,CAAC;oBACD,MAAM,SAAS,GAAiB,WAAW,CAAC,QAAQ,KAAK,QAAQ,IAAI,WAAW,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAA;oBAC5H,QAAQ,CAAC,OAAO,CAAC,+GAA+G,CAAC,CAAC,GAAG,CACnI,SAAS,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,cAAc,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,CAClG,CAAA;gBACH,CAAC;gBACD,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YACzB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBAAC,MAAM,KAAK,CAAA;YAAC,CAAC;oBAAS,CAAC;gBAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;YAAC,CAAC;YAChF,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,EAAE,CAAA;QACjG,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,WAAmB,EAAE,KAAK,GAAG,EAAE;QAC5C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAC7C,IAAI,CAAC;YACH,MAAM,QAAQ,GAAI,QAAQ,CAAC,OAAO,CAAC,sHAAsH,CAAC,CAAC,GAAG,CAAC,WAAW,CAAc,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;YAC5M,MAAM,YAAY,GAAI,QAAQ,CAAC,OAAO,CAAC,wIAAwI,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAc,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;YAC7O,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAA;QACnC,CAAC;gBAAS,CAAC;YAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;QAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,0BAA0B,CAAC,WAAmB,EAAE,OAAe,EAAE,SAAiB,EAAE,KAAK,GAAG,CAAC;QACjG,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAC7C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC;;;;;8CAKU,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAa,CAAA;YAC5H,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAA;QAChG,CAAC;gBAAS,CAAC;YAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;QAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,0BAA0B,CAAC,WAAmB,EAAE,QAAkB,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE;QACvF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAM;QACjC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,KAAK,IAAI,EAAE;YACnD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAC7C,IAAI,CAAC;gBACH,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;gBAChC,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,oGAAoG,CAAC,CAAA;gBACrI,KAAK,MAAM,EAAE,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;oBAAE,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,CAAA;gBACrF,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YACzB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBAAC,MAAM,KAAK,CAAA;YAAC,CAAC;oBAAS,CAAC;gBAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;YAAC,CAAC;QAClF,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,WAAmB,EAAE,OAAe,EAAE,KAAa,EAAE,KAAK,GAAG,CAAC;QAC3E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAC7C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC;gHAC4E,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAa,CAAA;YACjJ,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;YAC3B,OAAO,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;iBAC5I,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACpI,CAAC;gBAAS,CAAC;YAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;QAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,WAAmB,EAAE,OAAe,EAAE,KAAK,GAAG,CAAC;QACxE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAC7C,IAAI,CAAC;YACH,OAAQ,QAAQ,CAAC,OAAO,CAAC;+GACgF,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,KAAK,CAAc,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;QAClL,CAAC;gBAAS,CAAC;YAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;QAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,WAAmB,EAAE,cAAwB,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;QACjF,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC;YAAE,OAAM;QACvC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,KAAK,IAAI,EAAE;YACnD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAC7C,IAAI,CAAC;gBACH,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;gBAChC,MAAM,iBAAiB,GAAG,QAAQ,CAAC,OAAO,CAAC,oFAAoF,CAAC,CAAA;gBAChI,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,sJAAsJ,CAAC,CAAA;gBAC9L,KAAK,MAAM,EAAE,IAAI,cAAc,EAAE,CAAC;oBAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;oBAAC,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,CAAC,CAAA;gBAAC,CAAC;gBAC9H,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YACzB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBAAC,MAAM,KAAK,CAAA;YAAC,CAAC;oBAAS,CAAC;gBAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;YAAC,CAAC;QAClF,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,WAAmB,EAAE,SAAiB,EAAE,MAAqD,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;QACvH,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,KAAK,IAAI,EAAE;YACnD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAC7C,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,0DAA0D,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAuB,CAAA;gBAC9I,IAAI,CAAC,OAAO;oBAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAA;gBACtD,IAAI,MAAM,KAAK,QAAQ;oBAAE,QAAQ,CAAC,OAAO,CAAC,qEAAqE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;gBACpI,IAAI,MAAM,KAAK,SAAS;oBAAE,QAAQ,CAAC,OAAO,CAAC,sFAAsF,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,CAAA;gBAC3J,IAAI,MAAM,KAAK,OAAO;oBAAE,QAAQ,CAAC,OAAO,CAAC,uIAAuI,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,CAAA;gBAC/M,IAAI,MAAM,KAAK,YAAY;oBAAE,QAAQ,CAAC,OAAO,CAAC,qIAAqI,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,CAAA;YACpN,CAAC;oBAAS,CAAC;gBAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;YAAC,CAAC;QAChC,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,WAAmB;QAC7B,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IAC7I,CAAC;IAEO,MAAM,CAAC,QAAsB,EAAE,WAAmB,EAAE,OAAe,EAAE,SAA2B,EAAE,MAAqB,EAAE,EAAU;QACzI,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;QAC/C,MAAM,UAAU,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAA;QACnD,IAAI,CAAC,UAAU;YAAE,OAAO,SAAS,CAAA;QACjC,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC;uEACiC,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,CAAuB,CAAA;QAChI,IAAI,SAAS,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAC3E,IAAI,CAAC,QAAQ;gBAAE,OAAO,SAAS,CAAA;YAC/B,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAA;YACzE,QAAQ,CAAC,OAAO,CAAC,6EAA6E,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAA;YACrK,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QAC1C,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;QAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,GAAG,GAAG,GAAG,UAAU,GAAG,GAAG,CAAC,CAAA;QACtD,MAAM,WAAW,GAAG,EAAE,GAAG,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;QAC1D,IAAI,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,OAAO,EAAE,CAAC;YACtD,MAAM,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;YACpD,QAAQ,CAAC,OAAO,CAAC;;;qGAG8E,CAAC,CAAC,GAAG,CAClG,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,SAAS,EACzF,OAAO,CAAC,SAAS,CAAC,UAAU,IAAI,OAAO,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAC9G,CAAA;YACD,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,MAAM,EAAE,GAAG,WAAW,UAAU,EAAE,EAAE,CAAA;QACpC,QAAQ,CAAC,OAAO,CAAC;;;;;;;;;sKASiJ,CAAC,CAAC,GAAG,CACrK,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EACrF,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,UAAU,IAAI,OAAO,EAAE,GAAG,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,CAC7J,CAAA;QACD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAuB,CAAA;QACrG,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;IACpE,CAAC;IAEO,QAAQ,CAAC,QAAsB,EAAE,WAAmB,EAAE,OAAe,EAAE,UAAkB;QAC/F,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC;uEACsC,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,CAAuB,CAAA;QAChI,OAAO,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAAA;IAC5D,CAAC;IAEO,KAAK,CACX,QAAsB,EACtB,WAAmB,EACnB,OAAe,EACf,MAAqB,EACrB,SAA2B,EAC3B,KAAwB,EACxB,EAAU,EACV,OAA4B;QAE5B,QAAQ,CAAC,OAAO,CAAC;;;8DAGyC,CAAC,CAAC,GAAG,CAC7D,iBAAiB,UAAU,EAAE,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI,EAC3G,OAAO,CAAC,MAAM,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,SAAS,EAC5F,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,EAAE,KAAK,CAAC,EACvG,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,CAC/C,CAAA;IACH,CAAC;IAEO,KAAK,CAAC,IAAI,CAAC,WAAmB;QACpC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,CAAC,CAAA;QACtE,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;QACxD,MAAM,QAAQ,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAA;QACzD,QAAQ,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BA6Ba,CAAC,CAAA;QAC5B,YAAY,CAAC,QAAQ,EAAE,UAAU,EAAE,gBAAgB,EAAE,4BAA4B,CAAC,CAAA;QAClF,YAAY,CAAC,QAAQ,EAAE,sBAAsB,EAAE,aAAa,EAAE,8BAA8B,CAAC,CAAA;QAC7F,YAAY,CAAC,QAAQ,EAAE,sBAAsB,EAAE,aAAa,EAAE,0BAA0B,CAAC,CAAA;QACzF,YAAY,CAAC,QAAQ,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,0BAA0B,CAAC,CAAA;QAC7F,4BAA4B,CAAC,QAAQ,CAAC,CAAA;QACtC,OAAO,QAAQ,CAAA;IACjB,CAAC;IAEO,IAAI,CAAC,WAAmB,IAAY,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,iBAAiB,CAAC,CAAA,CAAC,CAAC;IACpH,KAAK,CAAC,MAAM,CAAC,GAAW,EAAE,IAAyB,IAAmB,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA,CAAC,CAAC;IACzG,KAAK,CAAC,WAAW,CAAI,GAAW,EAAE,IAAsB;QAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAA;QAC1D,IAAI,KAAS,CAAA;QACb,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,GAAG,KAAK,GAAG,MAAM,IAAI,EAAE,CAAA,CAAC,CAAC,CAAC,CAAA;QACnF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QAC7B,IAAI,CAAC;YAAC,MAAM,OAAO,CAAC;YAAC,OAAO,KAAK,CAAA;QAAC,CAAC;gBAAS,CAAC;YAAC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,OAAO;gBAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAAC,CAAC;IAC/G,CAAC;CACF;AAED,SAAS,cAAc,CAAC,GAAW;IACjC,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;QAClJ,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAA6B,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAiB;QAChG,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;QAC5F,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAgC,EAAE,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,SAAS,EAAE,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC;QACpJ,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;QAC1J,GAAG,CAAC,GAAG,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;QACvF,GAAG,CAAC,GAAG,CAAC,iBAAiB,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,CAAC;QAC7F,GAAG,CAAC,GAAG,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;KAC7E,CAAA;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAW;IACrC,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAC3H,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;QAC1H,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;QAC5I,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAwB;QAClG,sBAAsB,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,MAAM,CAAiD;QACzG,sBAAsB,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC;QAC/H,GAAG,CAAC,GAAG,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;KAChF,CAAA;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAsB,EAAE,IAAwB;IACzE,QAAQ,CAAC,OAAO,CAAC;;;qEAGkD,CAAC,CAAC,GAAG,CACtE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EACjH,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,QAAQ,EACrG,IAAI,CAAC,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI,CACxH,CAAA;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAkC;IAChE,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,SAAS,KAAK,uBAAuB,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,uBAAuB,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AAC9K,CAAC;AACD,SAAS,MAAM,CAAC,KAAa,IAAc,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA,CAAC,CAAC;AAC1I,SAAS,YAAY,CAAC,KAAa,EAAE,KAAe;IAClD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAA;IAChC,MAAM,IAAI,GAAG,KAAK,CAAC,iBAAiB,EAAE,CAAA;IACtC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;AACxE,CAAC;AACD,SAAS,OAAO,CAAC,KAAa,EAAE,GAAW,IAAY,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAA,CAAC,CAAC;AAExK,SAAS,yBAAyB,CAAC,KAAa;IAC9C,MAAM,SAAS,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAA;IAChD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK;SAC5B,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC;SAChC,OAAO,CAAC,+BAA+B,EAAE,GAAG,CAAC;SAC7C,OAAO,CAAC,yEAAyE,EAAE,EAAE,CAAC;SACtF,OAAO,CAAC,8BAA8B,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,CAAA;IACpD,MAAM,gBAAgB,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;QAChD,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM;YAAE,OAAO,QAAQ,CAAC,OAAO,CAAA;QACrD,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAC3C,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IAC9E,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAClB,MAAM,OAAO,GAAG,gBAAgB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IACzC,MAAM,OAAO,GAAG,SAAS;QACvB,CAAC,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,MAAM,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS;QACzI,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;IAClC,MAAM,UAAU,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,GAAG,gBAAgB,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,OAAO,CAAA;IAC7K,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IACvD,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAA;IACzI,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,CAAA;AACtD,CAAC;AAED,SAAS,4BAA4B,CAAC,QAAsB;IAC1D,IAAI,QAAQ,CAAC,OAAO,CAAC,8EAA8E,CAAC,CAAC,GAAG,EAAE;QAAE,OAAM;IAClH,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;IAChC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,+HAA+H,CAAC,CAAC,GAAG,EAAc,CAAA;QAChL,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,uGAAuG,CAAC,CAAA;QACxI,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YAC/B,MAAM,UAAU,GAAG,yBAAyB,CAAC,GAAG,CAAC,CAAA;YACjD,IAAI,UAAU,CAAC,OAAO,KAAK,GAAG,IAAI,UAAU,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAQ;YAC7E,MAAM,UAAU,GAAG,uBAAuB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;YAC9D,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,wGAAwG,CAAC,CAAC,GAAG,CAC9I,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAC3E,CAAA;YACD,IAAI,CAAC,SAAS;gBAAE,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;QACzH,CAAC;QACD,QAAQ,CAAC,OAAO,CAAC,qFAAqF,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QAC/H,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACzB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAAC,MAAM,KAAK,CAAA;IAAC,CAAC;AACrD,CAAC;AACD,SAAS,aAAa,CAAC,KAAoC;IACzD,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;SACrJ,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;AACzF,CAAC;AACD,SAAS,cAAc,CAAC,KAAc;IACpC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAA;IACxC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAY,CAAA;QAC3C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,OAAO,EAAE,CAAA;QACrC,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC3B,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI;gBAAE,OAAO,EAAE,CAAA;YACxD,MAAM,QAAQ,GAAG,IAA+B,CAAA;YAChD,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,MAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,QAAQ,CAAC,KAAK,KAAK,QAAQ;gBAAE,OAAO,EAAE,CAAA;YACxJ,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAA4B,EAAE,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;QACxI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAChB,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,EAAE,CAAA;IAAC,CAAC;AACvB,CAAC;AACD,SAAS,YAAY,CAAC,QAAsB,EAAE,KAAa,EAAE,MAAc,EAAE,UAAkB;IAC7F,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,qBAAqB,KAAK,GAAG,CAAC,CAAC,GAAG,EAAc,CAAA;IACjF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC;QAAE,QAAQ,CAAC,IAAI,CAAC,eAAe,KAAK,eAAe,MAAM,IAAI,UAAU,EAAE,CAAC,CAAA;AAC3H,CAAC;AACD,SAAS,MAAM,CAAC,KAAc,IAAY,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA,CAAC,CAAC;AAC1G,SAAS,MAAM,CAAC,KAAc,IAAY,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,CAAA,CAAC,CAAC;AACrJ,SAAS,QAAQ,CAAC,QAAsB,IAAU,IAAI,CAAC;IAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;AAAC,CAAC;AAAC,MAAM,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC"}
@@ -0,0 +1,25 @@
1
+ import type { Context } from '@deepseek-ai/cordis';
2
+ import type { PromptAssembly } from '@deepseek-ai/dsh-system-prompt';
3
+ import type { ToolRuntime } from '@deepseek-ai/dsh-tools';
4
+ import { type ConcernWatchKind } from './concern-domain.js';
5
+ import type { PartnerConcernStore } from './concern-store.js';
6
+ import type { PartnerStore } from './store.js';
7
+ type ConcernToolContext = Context & {
8
+ agents: Context['agents'];
9
+ tools: ToolRuntime;
10
+ };
11
+ export interface ConcernSuggestion {
12
+ subject: string;
13
+ reason: string;
14
+ evidence: string;
15
+ watchKind: ConcernWatchKind;
16
+ watchQuery: string;
17
+ priority: number;
18
+ confidence: number;
19
+ }
20
+ /** Register one compact, partner-session-only tool for evidence-backed implicit concern candidates. */
21
+ export declare function registerPartnerConcernTool(ctx: ConcernToolContext, store: PartnerStore, concerns: PartnerConcernStore): () => void;
22
+ export declare function validateConcernSuggestion(value: unknown, currentUserText: string): ConcernSuggestion;
23
+ export declare function applyConcernToolVisibility(assembly: PromptAssembly, enabled: boolean): void;
24
+ export {};
25
+ //# sourceMappingURL=concern-tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"concern-tool.d.ts","sourceRoot":"","sources":["../src/concern-tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,KAAK,EAAkC,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACzF,OAAO,EAAkD,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAC3G,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAE7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAI9C,KAAK,kBAAkB,GAAG,OAAO,GAAG;IAAE,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAAC,KAAK,EAAE,WAAW,CAAA;CAAE,CAAA;AAErF,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,gBAAgB,CAAA;IAC3B,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,uGAAuG;AACvG,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,kBAAkB,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,mBAAmB,GAAG,MAAM,IAAI,CAIlI;AAmDD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,GAAG,iBAAiB,CAepG;AAED,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAE3F"}
@@ -0,0 +1,145 @@
1
+ import { extractConcernResources } from './concern-domain.js';
2
+ import { explicitConcernDirective } from './memory-reflection.js';
3
+ const TOOL_NAME = 'partner_concern_suggest';
4
+ /** Register one compact, partner-session-only tool for evidence-backed implicit concern candidates. */
5
+ export function registerPartnerConcernTool(ctx, store, concerns) {
6
+ const disposeTool = ctx.tools.register(concernSuggestionTool(store, concerns));
7
+ const disposeVisibility = installVisibility(ctx, store);
8
+ return () => { disposeVisibility(); disposeTool(); };
9
+ }
10
+ function concernSuggestionTool(store, concerns) {
11
+ return {
12
+ name: TOOL_NAME,
13
+ description: 'Suggest one implicit concern only when the current user message gives direct evidence of a concrete unresolved matter worth checking later. Do not use for ordinary preferences, identity, broad interests, completed work, or an explicit "remind/watch this" request. Evidence must be an exact excerpt from the current user message. The backend may reject or merge the candidate.',
14
+ parameters: {
15
+ type: 'object', additionalProperties: false,
16
+ properties: {
17
+ subject: { type: 'string', description: 'Specific unresolved matter, at most 120 characters.' },
18
+ reason: { type: 'string', description: 'Why it remains open and merits later observation, at most 400 characters.' },
19
+ evidence: { type: 'string', description: 'Exact supporting excerpt from the current user message, at most 500 characters.' },
20
+ watchKind: { type: 'string', enum: ['auto', 'knowledge', 'workspace', 'web'] },
21
+ watchQuery: { type: 'string', description: 'Concrete future change to check, at most 300 characters.' },
22
+ priority: { type: 'number', minimum: 0, maximum: 1 },
23
+ confidence: { type: 'number', minimum: 0, maximum: 1 },
24
+ },
25
+ required: ['subject', 'reason', 'evidence', 'watchKind', 'watchQuery', 'priority', 'confidence'],
26
+ },
27
+ output: {
28
+ schema: { type: 'string' },
29
+ render: (_args, value) => [{ type: 'text', text: String(value) }],
30
+ },
31
+ presentCall: () => ({ card: 'generic', title: '伙伴发现待关注事项' }),
32
+ async execute(raw, exec) {
33
+ const agent = requireAgent(exec);
34
+ const route = store.snapshot().sessions.find(item => item.sessionId === agent.session.id);
35
+ if (route === undefined)
36
+ throw new Error('partner_concern_suggest is only available in a partner-owned conversation');
37
+ const companion = store.snapshot().companions.find(item => item.id === route.companionId);
38
+ if (companion === undefined || !companion.automation.memory.enabled)
39
+ throw new Error('伙伴长期记忆未启用,不能提交隐式关注');
40
+ const currentUserText = latestUserText(agent);
41
+ if (explicitConcernDirective(currentUserText))
42
+ throw new Error('用户已经明确要求关注;该请求由明确关注流程处理,不应提交为隐式关注');
43
+ const suggestion = validateConcernSuggestion(raw, currentUserText);
44
+ const candidate = {
45
+ subject: suggestion.subject, reason: suggestion.reason, operation: 'upsert', priority: suggestion.priority,
46
+ confidence: suggestion.confidence, watchKind: suggestion.watchKind, watchQuery: suggestion.watchQuery,
47
+ resources: extractConcernResources(`${suggestion.subject} ${suggestion.reason} ${suggestion.evidence}`),
48
+ };
49
+ const result = await concerns.ingestCandidates(route.companionId, `${route.channelId}:${route.userId}`, [candidate], 'implicit', Date.now(), {
50
+ source: 'tool', sessionId: agent.session.id, evidence: suggestion.evidence, maxImplicitCreates: 1,
51
+ });
52
+ const entry = result.entries[0];
53
+ return JSON.stringify({
54
+ outcome: entry?.decision ?? 'rejected',
55
+ subject: entry?.subject ?? suggestion.subject,
56
+ reason: entry?.reason ?? '候选未被处理',
57
+ });
58
+ },
59
+ };
60
+ }
61
+ export function validateConcernSuggestion(value, currentUserText) {
62
+ const input = object(value);
63
+ const suggestion = {
64
+ subject: text(input.subject, 'subject', 120),
65
+ reason: text(input.reason, 'reason', 400),
66
+ evidence: text(input.evidence, 'evidence', 500),
67
+ watchKind: watchKind(input.watchKind),
68
+ watchQuery: text(input.watchQuery, 'watchQuery', 300),
69
+ priority: score(input.priority, 'priority'),
70
+ confidence: score(input.confidence, 'confidence'),
71
+ };
72
+ if (!normalized(currentUserText).includes(normalized(suggestion.evidence))) {
73
+ throw new Error('evidence must be an exact excerpt from the current user message');
74
+ }
75
+ return suggestion;
76
+ }
77
+ export function applyConcernToolVisibility(assembly, enabled) {
78
+ if (!enabled)
79
+ assembly.tools = assembly.tools.filter(schema => schema.name !== TOOL_NAME);
80
+ }
81
+ function installVisibility(ctx, store) {
82
+ const attached = new Map();
83
+ const attach = (agent) => {
84
+ if (attached.has(agent))
85
+ return;
86
+ const dispose = agent.ctx.on('system-prompt/assemble', async (_assembly, _context, next) => {
87
+ const result = await next();
88
+ const route = store.snapshot().sessions.find(item => item.sessionId === agent.session.id);
89
+ const companion = route === undefined ? undefined : store.snapshot().companions.find(item => item.id === route.companionId);
90
+ applyConcernToolVisibility(result, route !== undefined && companion?.automation.memory.enabled === true);
91
+ return result;
92
+ });
93
+ attached.set(agent, dispose);
94
+ };
95
+ for (const agent of ctx.agents.list())
96
+ attach(agent);
97
+ const disposeCreated = ctx.on('agent/created', ({ agent }) => attach(agent));
98
+ const disposeDisposed = ctx.on('agent/disposed', ({ agent }) => {
99
+ attached.get(agent)?.();
100
+ attached.delete(agent);
101
+ });
102
+ return () => {
103
+ disposeDisposed();
104
+ disposeCreated();
105
+ for (const dispose of attached.values())
106
+ dispose();
107
+ attached.clear();
108
+ };
109
+ }
110
+ function requireAgent(exec) {
111
+ if (exec.agent === undefined)
112
+ throw new Error('partner_concern_suggest requires an active agent conversation');
113
+ return exec.agent;
114
+ }
115
+ function latestUserText(agent) {
116
+ for (let index = agent.session.events.length - 1; index >= 0; index -= 1) {
117
+ const event = agent.session.events[index];
118
+ if (event?.type !== 'user/message' || event.data.source.kind !== 'user')
119
+ continue;
120
+ return event.data.content.flatMap(block => block.type === 'text' ? [block.text] : []).join('\n').trim();
121
+ }
122
+ throw new Error('current partner turn has no user message evidence');
123
+ }
124
+ function object(value) {
125
+ if (typeof value !== 'object' || value === null || Array.isArray(value))
126
+ throw new Error('arguments must be an object');
127
+ return value;
128
+ }
129
+ function text(value, name, max) {
130
+ if (typeof value !== 'string' || value.trim().length === 0 || value.length > max)
131
+ throw new Error(`${name} must be a non-empty string with at most ${max} characters`);
132
+ return value.replace(/\s+/gu, ' ').trim();
133
+ }
134
+ function score(value, name) {
135
+ if (typeof value !== 'number' || !Number.isFinite(value) || value < 0 || value > 1)
136
+ throw new Error(`${name} must be a number between 0 and 1`);
137
+ return value;
138
+ }
139
+ function watchKind(value) {
140
+ if (value !== 'auto' && value !== 'knowledge' && value !== 'workspace' && value !== 'web')
141
+ throw new Error('watchKind is invalid');
142
+ return value;
143
+ }
144
+ function normalized(value) { return value.normalize('NFKC').replace(/\s+/gu, ' ').trim(); }
145
+ //# sourceMappingURL=concern-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"concern-tool.js","sourceRoot":"","sources":["../src/concern-tool.ts"],"names":[],"mappings":"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"}
@@ -2,16 +2,18 @@ import type { Context } from '@deepseek-ai/cordis';
2
2
  import { PartnerStore } from './store.js';
3
3
  import { PartnerMemoryStore } from './memory-store.js';
4
4
  import { MemoryReflectionService } from './memory-reflection.js';
5
+ import { PartnerAgentRuntime } from './agent-runtime.js';
5
6
  export declare class DailyReviewScheduler {
6
7
  private readonly ctx;
7
8
  private readonly store;
8
9
  private readonly memory;
9
10
  private readonly reflection;
11
+ private readonly agents;
10
12
  private readonly timeZone;
11
13
  private timer;
12
14
  private closed;
13
15
  private readonly running;
14
- constructor(ctx: Context, store: PartnerStore, memory: PartnerMemoryStore, reflection: MemoryReflectionService, timeZone?: string);
16
+ constructor(ctx: Context, store: PartnerStore, memory: PartnerMemoryStore, reflection: MemoryReflectionService, agents: PartnerAgentRuntime, timeZone?: string);
15
17
  start(): void;
16
18
  close(): Promise<void>;
17
19
  trigger(companionId: string, force?: boolean): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"daily-review.d.ts","sourceRoot":"","sources":["../src/daily-review.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AAIhE,qBAAa,oBAAoB;IAKnB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAAW,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAgB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACtG,OAAO,CAAC,QAAQ,CAAC,UAAU;IAA2B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IALjF,OAAO,CAAC,KAAK,CAA2C;IACxD,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;gBAEf,GAAG,EAAE,OAAO,EAAmB,KAAK,EAAE,YAAY,EAAmB,MAAM,EAAE,kBAAkB,EACzG,UAAU,EAAE,uBAAuB,EAAmB,QAAQ,SAAkB;IAEnG,KAAK,IAAI,IAAI;IACP,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAEtB,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IASjH,OAAO,CAAC,QAAQ;YASF,IAAI;YASJ,GAAG;CAWlB"}
1
+ {"version":3,"file":"daily-review.d.ts","sourceRoot":"","sources":["../src/daily-review.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAIxD,qBAAa,oBAAoB;IAKnB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAAW,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAgB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACtG,OAAO,CAAC,QAAQ,CAAC,UAAU;IAA2B,OAAO,CAAC,QAAQ,CAAC,MAAM;IAAuB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAL/H,OAAO,CAAC,KAAK,CAA2C;IACxD,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;gBAEf,GAAG,EAAE,OAAO,EAAmB,KAAK,EAAE,YAAY,EAAmB,MAAM,EAAE,kBAAkB,EACzG,UAAU,EAAE,uBAAuB,EAAmB,MAAM,EAAE,mBAAmB,EAAmB,QAAQ,SAAkB;IAEjJ,KAAK,IAAI,IAAI;IACP,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAEtB,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IASjH,OAAO,CAAC,QAAQ;YASF,IAAI;YASJ,GAAG;CAiBlB"}
@@ -4,15 +4,17 @@ export class DailyReviewScheduler {
4
4
  store;
5
5
  memory;
6
6
  reflection;
7
+ agents;
7
8
  timeZone;
8
9
  timer;
9
10
  closed = false;
10
11
  running = new Set();
11
- constructor(ctx, store, memory, reflection, timeZone = 'Asia/Shanghai') {
12
+ constructor(ctx, store, memory, reflection, agents, timeZone = 'Asia/Shanghai') {
12
13
  this.ctx = ctx;
13
14
  this.store = store;
14
15
  this.memory = memory;
15
16
  this.reflection = reflection;
17
+ this.agents = agents;
16
18
  this.timeZone = timeZone;
17
19
  }
18
20
  start() { if (!this.closed && this.timer === undefined)
@@ -63,7 +65,11 @@ export class DailyReviewScheduler {
63
65
  let failed = 0;
64
66
  for (const target of targets) {
65
67
  try {
66
- await this.reflection.reviewDay(companion, target);
68
+ const created = await this.reflection.reviewDay(companion, target);
69
+ if (created.length > 0)
70
+ await this.agents.recordConcernCreatedNotice(companion, target.scopeId, created).catch(error => {
71
+ this.ctx.logger.warn(`dsh-partner daily review concern notice failed: ${message(error)}`);
72
+ });
67
73
  reviewed += 1;
68
74
  }
69
75
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"daily-review.js","sourceRoot":"","sources":["../src/daily-review.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daily-review.js","sourceRoot":"","sources":["../src/daily-review.ts"],"names":[],"mappings":"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"}
package/lib/domain.d.ts CHANGED
@@ -25,6 +25,8 @@ export interface CompanionAutomation {
25
25
  };
26
26
  heartbeat: {
27
27
  enabled: boolean;
28
+ /** One-shot migration source. Cleared after the Concern store accepts it. */
29
+ legacyFocus?: string;
28
30
  intervalMinutes: number;
29
31
  quietStartHour: number;
30
32
  quietEndHour: number;
@@ -70,7 +72,7 @@ export interface ChannelSession {
70
72
  lastMessageAt: number;
71
73
  }
72
74
  export interface PartnerState {
73
- schemaVersion: 7;
75
+ schemaVersion: 10;
74
76
  companions: Companion[];
75
77
  channels: WeixinChannel[];
76
78
  pairings: PairingRequest[];
@@ -90,6 +92,7 @@ export interface CompanionDraft {
90
92
  }
91
93
  export declare const DEFAULT_AUTOMATION: CompanionAutomation;
92
94
  export declare function normalizeAutomation(value: unknown): CompanionAutomation;
95
+ export declare function normalizeLegacyHeartbeatFocus(value: unknown): string;
93
96
  export interface ChannelView extends WeixinChannel {
94
97
  runtimeStatus: 'stopped' | 'starting' | 'running' | 'error';
95
98
  lastError?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"domain.d.ts","sourceRoot":"","sources":["../src/domain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"domain.d.ts","sourceRoot":"","sources":["../src/domain.ts"],"names":[],"mappings":"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"}
package/lib/domain.js CHANGED
@@ -16,6 +16,9 @@ export function normalizeAutomation(value) {
16
16
  },
17
17
  heartbeat: {
18
18
  enabled: boolean(heartbeat.enabled, 'heartbeat.enabled'),
19
+ ...(typeof heartbeat.legacyFocus === 'string' && normalizeLegacyHeartbeatFocus(heartbeat.legacyFocus)
20
+ ? { legacyFocus: normalizeLegacyHeartbeatFocus(heartbeat.legacyFocus) }
21
+ : {}),
19
22
  intervalMinutes: integer(heartbeat.intervalMinutes, 'heartbeat.intervalMinutes', 30, 1440),
20
23
  quietStartHour: integer(heartbeat.quietStartHour, 'heartbeat.quietStartHour', 0, 23),
21
24
  quietEndHour: integer(heartbeat.quietEndHour, 'heartbeat.quietEndHour', 0, 23),
@@ -23,6 +26,26 @@ export function normalizeAutomation(value) {
23
26
  },
24
27
  };
25
28
  }
29
+ export function normalizeLegacyHeartbeatFocus(value) {
30
+ if (value === undefined || value === null || value === '')
31
+ return '';
32
+ if (typeof value !== 'string')
33
+ throw new Error('legacy heartbeat focus must be a string');
34
+ return uniqueLegacyTopics(value.split(/[\r\n;;]+/)).join('\n');
35
+ }
36
+ function uniqueLegacyTopics(values) {
37
+ const seen = new Set();
38
+ return values.flatMap(value => {
39
+ if (typeof value !== 'string')
40
+ return [];
41
+ const focus = value.replace(/\s+/g, ' ').trim();
42
+ const key = focus.toLocaleLowerCase();
43
+ if (!focus || seen.has(key))
44
+ return [];
45
+ seen.add(key);
46
+ return [focus];
47
+ });
48
+ }
26
49
  function optionalRoute(value) {
27
50
  const provider = optionalText(value.provider, 'memory.provider', 100);
28
51
  const model = optionalText(value.model, 'memory.model', 200);
package/lib/domain.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"domain.js","sourceRoot":"","sources":["../src/domain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"domain.js","sourceRoot":"","sources":["../src/domain.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { type HTMLAttributes, type ReactNode } from 'react';
2
+ type GlassElement = 'header' | 'aside' | 'section' | 'article' | 'div' | 'button';
3
+ interface GlassSurfaceProps extends Omit<HTMLAttributes<HTMLElement>, 'children' | 'className'> {
4
+ as: GlassElement;
5
+ children: ReactNode;
6
+ className: string;
7
+ borderRadius: number;
8
+ borderWidth?: number;
9
+ brightness?: number;
10
+ blur?: number;
11
+ distortionScale?: number;
12
+ interactive?: boolean;
13
+ opacity?: number;
14
+ saturation?: number;
15
+ type?: 'button' | 'submit' | 'reset';
16
+ disabled?: boolean;
17
+ }
18
+ export declare function GlassSurface({ as: Element, children, className, borderRadius, borderWidth, brightness, blur, distortionScale, interactive, opacity, saturation, ...elementProps }: GlassSurfaceProps): JSX.Element;
19
+ export {};
20
+ //# sourceMappingURL=glass-surface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glass-surface.d.ts","sourceRoot":"","sources":["../src/glass-surface.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,cAAc,EACnB,KAAK,SAAS,EACf,MAAM,OAAO,CAAA;AAEd,KAAK,YAAY,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,CAAA;AAEjF,UAAU,iBAAkB,SAAQ,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC;IAC7F,EAAE,EAAE,YAAY,CAAA;IAChB,QAAQ,EAAE,SAAS,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAA;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AA8CD,wBAAgB,YAAY,CAAC,EAC3B,EAAE,EAAE,OAAO,EACX,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,WAAiB,EACjB,UAAe,EACf,IAAS,EACT,eAAqB,EACrB,WAAmB,EACnB,OAAa,EACb,UAAiB,EACjB,GAAG,YAAY,EAChB,EAAE,iBAAiB,GAAG,GAAG,CAAC,OAAO,CAyHjC"}
@@ -0,0 +1,119 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useId, useRef, useState, } from 'react';
3
+ function supportsSvgBackdropFilter(filterId) {
4
+ if (typeof window === 'undefined' || typeof document === 'undefined')
5
+ return false;
6
+ if (window.matchMedia('(prefers-reduced-transparency: reduce)').matches)
7
+ return false;
8
+ const userAgent = navigator.userAgent;
9
+ if (/Firefox/i.test(userAgent) || (/Safari/i.test(userAgent) && !/(Chrome|Chromium|CriOS)/i.test(userAgent)))
10
+ return false;
11
+ const probe = document.createElement('div');
12
+ probe.style.backdropFilter = `url(#${filterId})`;
13
+ return probe.style.backdropFilter !== '';
14
+ }
15
+ function displacementMap(width, height, radius, borderWidth, brightness, opacity, blur, redGradientId, blueGradientId) {
16
+ const edge = Math.max(1, Math.min(width, height) * borderWidth * .5);
17
+ const innerWidth = Math.max(1, width - edge * 2);
18
+ const innerHeight = Math.max(1, height - edge * 2);
19
+ const svg = `<svg viewBox="0 0 ${width} ${height}" xmlns="http://www.w3.org/2000/svg">
20
+ <defs>
21
+ <linearGradient id="${redGradientId}" x1="100%" y1="0%" x2="0%" y2="0%"><stop offset="0%" stop-color="#0000"/><stop offset="100%" stop-color="red"/></linearGradient>
22
+ <linearGradient id="${blueGradientId}" x1="0%" y1="0%" x2="0%" y2="100%"><stop offset="0%" stop-color="#0000"/><stop offset="100%" stop-color="blue"/></linearGradient>
23
+ </defs>
24
+ <rect width="${width}" height="${height}" fill="black"/>
25
+ <rect width="${width}" height="${height}" rx="${radius}" fill="url(#${redGradientId})"/>
26
+ <rect width="${width}" height="${height}" rx="${radius}" fill="url(#${blueGradientId})" style="mix-blend-mode:difference"/>
27
+ <rect x="${edge}" y="${edge}" width="${innerWidth}" height="${innerHeight}" rx="${radius}" fill="hsl(0 0% ${brightness}% / ${opacity})" style="filter:blur(${blur}px)"/>
28
+ </svg>`;
29
+ return `data:image/svg+xml,${encodeURIComponent(svg)}`;
30
+ }
31
+ export function GlassSurface({ as: Element, children, className, borderRadius, borderWidth = .07, brightness = 50, blur = 11, distortionScale = -26, interactive = false, opacity = .93, saturation = 1.16, ...elementProps }) {
32
+ const uniqueId = useId().replace(/:/g, '-');
33
+ const filterId = `partner-glass-filter-${uniqueId}`;
34
+ const redGradientId = `partner-glass-red-${uniqueId}`;
35
+ const blueGradientId = `partner-glass-blue-${uniqueId}`;
36
+ const containerRef = useRef(null);
37
+ const imageRef = useRef(null);
38
+ const redRef = useRef(null);
39
+ const greenRef = useRef(null);
40
+ const blueRef = useRef(null);
41
+ const glareFrameRef = useRef(0);
42
+ const glarePositionRef = useRef({ x: 50, y: 50 });
43
+ const [svgSupported, setSvgSupported] = useState(false);
44
+ useEffect(() => {
45
+ setSvgSupported(supportsSvgBackdropFilter(filterId));
46
+ }, [filterId]);
47
+ useEffect(() => {
48
+ const element = containerRef.current;
49
+ const image = imageRef.current;
50
+ if (element === null || image === null)
51
+ return;
52
+ let frame = 0;
53
+ const update = () => {
54
+ frame = 0;
55
+ const rect = element.getBoundingClientRect();
56
+ const width = Math.max(1, Math.round(rect.width));
57
+ const height = Math.max(1, Math.round(rect.height));
58
+ image.setAttribute('href', displacementMap(width, height, Math.min(borderRadius, Math.min(width, height) / 2), borderWidth, brightness, opacity, blur, redGradientId, blueGradientId));
59
+ };
60
+ const schedule = () => {
61
+ if (frame === 0)
62
+ frame = requestAnimationFrame(update);
63
+ };
64
+ const observer = typeof ResizeObserver === 'undefined' ? undefined : new ResizeObserver(schedule);
65
+ observer?.observe(element);
66
+ schedule();
67
+ return () => {
68
+ if (frame !== 0)
69
+ cancelAnimationFrame(frame);
70
+ observer?.disconnect();
71
+ };
72
+ }, [blueGradientId, blur, borderRadius, borderWidth, brightness, opacity, redGradientId]);
73
+ useEffect(() => {
74
+ const channels = [redRef.current, greenRef.current, blueRef.current];
75
+ const offsets = [0, 5, 10];
76
+ channels.forEach((channel, index) => channel?.setAttribute('scale', String(distortionScale + (offsets[index] ?? 0))));
77
+ }, [distortionScale]);
78
+ useEffect(() => () => {
79
+ if (glareFrameRef.current !== 0)
80
+ cancelAnimationFrame(glareFrameRef.current);
81
+ }, []);
82
+ const renderGlare = () => {
83
+ glareFrameRef.current = 0;
84
+ const element = containerRef.current;
85
+ if (element === null)
86
+ return;
87
+ element.style.setProperty('--partner-glare-x', `${glarePositionRef.current.x}%`);
88
+ element.style.setProperty('--partner-glare-y', `${glarePositionRef.current.y}%`);
89
+ };
90
+ const scheduleGlare = () => {
91
+ if (glareFrameRef.current === 0)
92
+ glareFrameRef.current = requestAnimationFrame(renderGlare);
93
+ };
94
+ const moveGlare = (clientX, clientY) => {
95
+ const element = containerRef.current;
96
+ if (!interactive || element === null)
97
+ return;
98
+ const rect = element.getBoundingClientRect();
99
+ glarePositionRef.current = {
100
+ x: Math.max(0, Math.min(100, (clientX - rect.left) / rect.width * 100)),
101
+ y: Math.max(0, Math.min(100, (clientY - rect.top) / rect.height * 100)),
102
+ };
103
+ scheduleGlare();
104
+ };
105
+ const resetGlare = () => {
106
+ if (!interactive)
107
+ return;
108
+ glarePositionRef.current = { x: 50, y: 50 };
109
+ scheduleGlare();
110
+ };
111
+ const style = {
112
+ '--partner-glass-filter-id': `url(#${filterId})`,
113
+ '--partner-glass-saturation': saturation,
114
+ '--partner-glare-x': '50%',
115
+ '--partner-glare-y': '50%',
116
+ };
117
+ return _jsxs(Element, { ...elementProps, ref: containerRef, className: `dsh-partner-glass-surface ${svgSupported ? 'is-svg' : 'is-fallback'}${interactive ? ' is-interactive' : ''} ${className}`, style: style, onPointerMove: interactive ? event => moveGlare(event.clientX, event.clientY) : undefined, onPointerLeave: interactive ? resetGlare : undefined, children: [_jsx("svg", { className: "dsh-partner-glass-filter", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", focusable: "false", children: _jsx("defs", { children: _jsxs("filter", { id: filterId, colorInterpolationFilters: "sRGB", x: "0%", y: "0%", width: "100%", height: "100%", children: [_jsx("feImage", { ref: imageRef, x: "0", y: "0", width: "100%", height: "100%", preserveAspectRatio: "none", result: "map" }), _jsx("feDisplacementMap", { ref: redRef, in: "SourceGraphic", in2: "map", result: "displaced-red" }), _jsx("feColorMatrix", { in: "displaced-red", type: "matrix", values: "1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0", result: "red" }), _jsx("feDisplacementMap", { ref: greenRef, in: "SourceGraphic", in2: "map", result: "displaced-green" }), _jsx("feColorMatrix", { in: "displaced-green", type: "matrix", values: "0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0", result: "green" }), _jsx("feDisplacementMap", { ref: blueRef, in: "SourceGraphic", in2: "map", result: "displaced-blue" }), _jsx("feColorMatrix", { in: "displaced-blue", type: "matrix", values: "0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0", result: "blue" }), _jsx("feBlend", { in: "red", in2: "green", mode: "screen", result: "red-green" }), _jsx("feBlend", { in: "red-green", in2: "blue", mode: "screen", result: "output" }), _jsx("feGaussianBlur", { in: "output", stdDeviation: ".45" })] }) }) }), children] });
118
+ }
119
+ //# sourceMappingURL=glass-surface.js.map