@windsland52/maafw-live 0.0.0-stage → 0.3.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 (107) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +278 -2
  3. package/bin/maafw-live.mjs +25 -0
  4. package/docs/daemon-protocol.md +116 -0
  5. package/docs/keyframe-evidence-contract-v0.md +61 -0
  6. package/docs/keyframe-retention-contract-v0.md +236 -0
  7. package/lib/client/daemon.js +234 -0
  8. package/lib/client/daemon.js.map +1 -0
  9. package/lib/commands/annotate.js +172 -0
  10. package/lib/commands/annotate.js.map +1 -0
  11. package/lib/commands/calibrate.js +61 -0
  12. package/lib/commands/calibrate.js.map +1 -0
  13. package/lib/commands/color.js +73 -0
  14. package/lib/commands/color.js.map +1 -0
  15. package/lib/commands/crop.js +228 -0
  16. package/lib/commands/crop.js.map +1 -0
  17. package/lib/commands/env.js +215 -0
  18. package/lib/commands/env.js.map +1 -0
  19. package/lib/commands/index.js +64 -0
  20. package/lib/commands/index.js.map +1 -0
  21. package/lib/commands/input.js +219 -0
  22. package/lib/commands/input.js.map +1 -0
  23. package/lib/commands/kf.js +131 -0
  24. package/lib/commands/kf.js.map +1 -0
  25. package/lib/commands/reco.js +211 -0
  26. package/lib/commands/reco.js.map +1 -0
  27. package/lib/commands/repl.js +698 -0
  28. package/lib/commands/repl.js.map +1 -0
  29. package/lib/commands/runtime.js +514 -0
  30. package/lib/commands/runtime.js.map +1 -0
  31. package/lib/commands/skill.js +169 -0
  32. package/lib/commands/skill.js.map +1 -0
  33. package/lib/commands/timing.js +229 -0
  34. package/lib/commands/timing.js.map +1 -0
  35. package/lib/commands/version.js +66 -0
  36. package/lib/commands/version.js.map +1 -0
  37. package/lib/daemon/framed.mjs +2850 -0
  38. package/lib/daemon/reco_child.mjs +146 -0
  39. package/lib/exec.js +96 -0
  40. package/lib/exec.js.map +1 -0
  41. package/lib/flags.js +42 -0
  42. package/lib/flags.js.map +1 -0
  43. package/lib/image.js +90 -0
  44. package/lib/image.js.map +1 -0
  45. package/lib/index.js +139 -0
  46. package/lib/index.js.map +1 -0
  47. package/lib/interface/index.js +12 -0
  48. package/lib/interface/index.js.map +1 -0
  49. package/lib/interface/jsonc.js +95 -0
  50. package/lib/interface/jsonc.js.map +1 -0
  51. package/lib/interface/load.js +307 -0
  52. package/lib/interface/load.js.map +1 -0
  53. package/lib/interface/override.js +103 -0
  54. package/lib/interface/override.js.map +1 -0
  55. package/lib/interface/plan.js +188 -0
  56. package/lib/interface/plan.js.map +1 -0
  57. package/lib/pkg.js +18 -0
  58. package/lib/pkg.js.map +1 -0
  59. package/lib/protocol.js +90 -0
  60. package/lib/protocol.js.map +1 -0
  61. package/lib/runtime/actions.js +110 -0
  62. package/lib/runtime/actions.js.map +1 -0
  63. package/lib/runtime/keyframes.js +73 -0
  64. package/lib/runtime/keyframes.js.map +1 -0
  65. package/lib/runtime/session.js +86 -0
  66. package/lib/runtime/session.js.map +1 -0
  67. package/lib/types/client/daemon.d.ts +86 -0
  68. package/lib/types/commands/annotate.d.ts +3 -0
  69. package/lib/types/commands/calibrate.d.ts +7 -0
  70. package/lib/types/commands/color.d.ts +9 -0
  71. package/lib/types/commands/crop.d.ts +3 -0
  72. package/lib/types/commands/env.d.ts +2 -0
  73. package/lib/types/commands/index.d.ts +13 -0
  74. package/lib/types/commands/input.d.ts +17 -0
  75. package/lib/types/commands/kf.d.ts +10 -0
  76. package/lib/types/commands/reco.d.ts +23 -0
  77. package/lib/types/commands/repl.d.ts +2 -0
  78. package/lib/types/commands/runtime.d.ts +48 -0
  79. package/lib/types/commands/skill.d.ts +17 -0
  80. package/lib/types/commands/timing.d.ts +64 -0
  81. package/lib/types/commands/version.d.ts +3 -0
  82. package/lib/types/exec.d.ts +31 -0
  83. package/lib/types/flags.d.ts +58 -0
  84. package/lib/types/image.d.ts +27 -0
  85. package/lib/types/index.d.ts +1 -0
  86. package/lib/types/interface/index.d.ts +11 -0
  87. package/lib/types/interface/jsonc.d.ts +9 -0
  88. package/lib/types/interface/load.d.ts +113 -0
  89. package/lib/types/interface/override.d.ts +33 -0
  90. package/lib/types/interface/plan.d.ts +47 -0
  91. package/lib/types/pkg.d.ts +6 -0
  92. package/lib/types/protocol.d.ts +108 -0
  93. package/lib/types/runtime/actions.d.ts +166 -0
  94. package/lib/types/runtime/keyframes.d.ts +43 -0
  95. package/lib/types/runtime/session.d.ts +53 -0
  96. package/lib/types/update-check.d.ts +20 -0
  97. package/lib/types/usage.d.ts +3 -0
  98. package/lib/update-check.js +97 -0
  99. package/lib/update-check.js.map +1 -0
  100. package/lib/usage.js +50 -0
  101. package/lib/usage.js.map +1 -0
  102. package/package.json +81 -4
  103. package/skills/README.md +51 -0
  104. package/skills/maafw-live/SKILL.md +263 -0
  105. package/skills/maafw-live/references/examples.md +238 -0
  106. package/skills/maafw-live/references/pitfalls.md +118 -0
  107. package/skills/maafw-live/references/workflows.md +159 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repl.js","sourceRoot":"","sources":["../../src/commands/repl.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,QAAQ,MAAM,eAAe,CAAA;AACpC,OAAO,EAAE,WAAW,EAAqB,MAAM,qBAAqB,CAAA;AACpE,OAAO,EAAE,IAAI,EAAoC,MAAM,gBAAgB,CAAA;AACvE,OAAO,KAAK,GAAG,MAAM,uBAAuB,CAAA;AAC5C,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACtG,OAAO,EAAE,aAAa,EAAE,YAAY,EAA0C,MAAM,uBAAuB,CAAA;AAC3G,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAE9D,MAAM,IAAI,GAAG;IACX,KAAK;IACL,wCAAwC;IACxC,sCAAsC;IACtC,+CAA+C;IAC/C,oEAAoE;IACpE,0DAA0D;IAC1D,oDAAoD;IACpD,2IAA2I;IAC3I,+BAA+B;IAC/B,gGAAgG;IAChG,uFAAuF;IACvF,iGAAiG;IACjG,oDAAoD;IACpD,oHAAoH;IACpH,8HAA8H;IAC9H,oDAAoD;IACpD,6DAA6D;IAC7D,qFAAqF;IACrF,2CAA2C;IAC3C,4GAA4G;IAC5G,2EAA2E;IAC3E,yGAAyG;IACzG,2EAA2E;IAC3E,uDAAuD;IACvD,kFAAkF;IAClF,eAAe;CAChB,CAAA;AAED;;;;;sCAKsC;AACtC,SAAS,QAAQ,CAAC,IAAY;IAC5B,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAChE,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAClB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;YACnC,IAAI,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC;gBAAE,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QACjF,CAAC;QACD,OAAO,CAAC,CAAA;IACV,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,MAAgB,EAAE,IAAY;IAC9C,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;AAC3C,CAAC;AAED;;;;;;GAMG;AACH,SAAS,IAAI,CAAC,MAAgB,EAAE,IAAY,EAAE,KAAa;IACzD,MAAM,GAAG,GAAa,EAAE,CAAA;IACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/B,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAA;QAClC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAA;QACpC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACb,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,8DAA8D;AAC9D,SAAS,OAAO,CAAC,MAAgB,EAAE,IAAY,EAAE,GAAW;IAC1D,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAClC,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,GAAG,CAAA;IACjC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IACrB,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;AACtC,CAAC;AAED,SAAS,KAAK,CAAC,CAAU,EAAE,GAAG,GAAG,GAAG;IAClC,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IACvD,OAAO,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;AACpD,CAAC;AAED;;8BAE8B;AAC9B,MAAM,UAAU,GAAG;IACjB,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO;IAClF,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAC9E,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW;IACrF,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM;CACxC,CAAA;AAED,SAAS,YAAY,CAAC,CAAS,EAAE,CAAS;IACxC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAAA;IAChC,IAAI,CAAC,CAAC;QAAE,OAAO,CAAC,CAAA;IAChB,IAAI,CAAC,CAAC;QAAE,OAAO,CAAC,CAAA;IAChB,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;IACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;QACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAE,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAClG,CAAC;QACD,IAAI,GAAG,GAAG,CAAA;IACZ,CAAC;IACD,OAAO,IAAI,CAAC,CAAC,CAAE,CAAA;AACjB,CAAC;AAED,SAAS,WAAW,CAAC,IAAY,EAAE,WAAW,GAAG,CAAC;IAChD,IAAI,IAAwB,CAAA;IAC5B,IAAI,QAAQ,GAAG,WAAW,GAAG,CAAC,CAAA;IAC9B,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;QAC3B,MAAM,CAAC,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;QAC/B,IAAI,CAAC,GAAG,QAAQ,EAAE,CAAC;YAAC,QAAQ,GAAG,CAAC,CAAC;YAAC,IAAI,GAAG,CAAC,CAAA;QAAC,CAAC;IAC9C,CAAC;IACD,OAAO,QAAQ,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;AACnD,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAY;IAClC,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,qCAAqC;IAC9C,KAAK,EAAE,2EAA2E;IAClF,OAAO,EAAE,EAAE,GAAG,eAAe,EAAE;IAE/B,KAAK,CAAC,GAAG,CAAC,GAAG;QACX,MAAM,MAAM,GAAG,WAAW,EAAE,CAAA;QAC5B,MAAM,GAAG,GAAG,CAAC,IAAY,EAAQ,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,CAAA,CAAC,CAAC,CAAA;QACzE,MAAM,KAAK,GAA2D,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;QACtG,MAAM,QAAQ,GAAG,CAAC,CAAe,EAAQ,EAAE;YACzC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAE,CAAC,CAAC,OAAuC,EAAE,MAAM,IAAI,OAAO,CAAC,CAAA;YACrF,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,IAAI,CAAA;QAC7B,CAAC,CAAA;QAED,MAAM,CAAC,GAAmB,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACpD,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YACxB,IAAI,CAAC;gBACH,MAAM,CAAC,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;gBACxC,QAAQ,CAAC,CAAC,CAAC,CAAA;gBACX,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,CAAA;YAC7B,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAC7D,CAAC;QACH,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,qEAAqE,CAAC,CAAA;QAC5E,CAAC;QAED,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC,CAAA;QACrG;;+CAEuC;QACvC,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,MAAM,SAAS,GAAa,EAAE,CAAA;QAC9B,IAAI,QAAQ,GAAwB,IAAI,CAAA;QACxC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAS,EAAE,EAAE;YAC1B,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACjB,IAAI,QAAQ,EAAE,CAAC;gBAAC,MAAM,CAAC,GAAG,QAAQ,CAAC;gBAAC,QAAQ,GAAG,IAAI,CAAC;gBAAC,CAAC,EAAE,CAAA;YAAC,CAAC;QAC5D,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAClB,OAAO,GAAG,IAAI,CAAA;YACd,IAAI,QAAQ,EAAE,CAAC;gBAAC,MAAM,CAAC,GAAG,QAAQ,CAAC;gBAAC,QAAQ,GAAG,IAAI,CAAC;gBAAC,CAAC,EAAE,CAAA;YAAC,CAAC;QAC5D,CAAC,CAAC,CAAA;QACF,MAAM,GAAG,GAAG,KAAK,IAA4B,EAAE;YAC7C,SAAS,CAAC;gBACR,IAAI,SAAS,CAAC,MAAM;oBAAE,OAAO,SAAS,CAAC,KAAK,EAAE,IAAI,IAAI,CAAA;gBACtD,IAAI,OAAO;oBAAE,OAAO,IAAI,CAAA;gBACxB,MAAM,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,GAAG,QAAQ,GAAG,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;YAClD,CAAC;QACH,CAAC,CAAA;QAED,IAAI,CAAC;YACH,SAAS,CAAC;gBACR,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK;oBAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;gBACtD,MAAM,IAAI,GAAG,MAAM,GAAG,EAAE,CAAA;gBACxB,IAAI,IAAI,KAAK,IAAI;oBAAE,MAAK;gBACxB,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;gBAC7B,IAAI,CAAC,MAAM,CAAC,MAAM;oBAAE,SAAQ;gBAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;gBACtB,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,MAAM;oBAAE,MAAK;gBAC7C,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;oBAAC,KAAK,MAAM,CAAC,IAAI,IAAI;wBAAE,GAAG,CAAC,CAAC,CAAC,CAAC;oBAAC,SAAQ;gBAAC,CAAC;gBAE/D,IAAI,CAAC;oBACH,QAAQ,IAAI,EAAE,CAAC;wBACb,KAAK,OAAO;4BACV,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;4BACnC,MAAK;wBACP,KAAK,QAAQ;4BACX,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,UAAU,CAAC,MAAM,EAAG,MAAM,CAAC,CAAC,CAA6B,IAAI,KAAK,CAAC,CAAC,CAAC,CAAA;4BACzF,MAAK;wBACP,KAAK,SAAS,CAAC,CAAC,CAAC;4BACf,IAAI,CAAC,CAAA;4BACL,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;gCAC5B,CAAC,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;4BAC9F,CAAC;iCAAM,CAAC;gCACN,CAAC,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;4BACzE,CAAC;4BACD,QAAQ,CAAC,CAAC,CAAC,CAAA;4BACX,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,CAAA;4BAC3B,MAAK;wBACP,CAAC;wBACD,KAAK,YAAY;4BACf,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;4BACxC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAA;4BACvB,MAAK;wBACP,KAAK,WAAW;4BACd,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;4BAClD,MAAK;wBACP,KAAK,QAAQ,CAAC,CAAC,CAAC;4BACd,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAA;4BACjC,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;gCACpB,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;gCACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;gCACzC,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;gCACtD,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;gCACxD,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;gCAC9C;;wDAEwB;gCACxB,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;gCAClD,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;gCAC5C,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;gCAChD,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,WAAW,CAAC,MAAM,EAAE;oCACtC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oCACpC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oCAC1C,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oCAC5D,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oCAC/D,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oCAChD,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oCACtD,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oCAC7C,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iCACpD,CAAC,CAAC,CAAC,CAAA;4BACN,CAAC;iCAAM,IAAI,GAAG,KAAK,MAAM;gCAAE,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;;gCAC9D,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;4BAC/C,MAAK;wBACP,CAAC;wBACD,KAAK,MAAM,CAAC,CAAC,CAAC;4BACZ,qDAAqD;4BACrD,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;4BACzB,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;gCACjD,GAAG,CAAC,mFAAmF;sCACnF,uBAAuB;sCACvB,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;0CACzC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;sCACpF,GAAG,CAAC,CAAA;gCACR,MAAK;4BACP,CAAC;4BACD;iEACqC;4BACrC,MAAM,KAAK,GAAG,CAAC,IAAY,EAA6B,EAAE;gCACxD,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;gCAClC,IAAI,GAAG,KAAK,SAAS;oCAAE,OAAO,SAAS,CAAA;gCACvC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;gCACrB,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;4BACtC,CAAC,CAAA;4BACD,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC,CAAA;4BAC9B,MAAM,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,CAAA;4BAC3B,MAAM,GAAG,GAAG,KAAK,CAAC,aAAa,CAAC,CAAA;4BAChC,IAAI,GAAG,KAAK,IAAI,IAAI,EAAE,KAAK,IAAI,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;gCAChD,GAAG,CAAC,yCAAyC;sCACzC,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;gCACjG,MAAK;4BACP,CAAC;4BACD,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;4BACxC,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE;gCACpC,IAAI,EAAE,OAAO;gCACb,GAAG,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCAC9C,GAAG,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCAC1C,GAAG,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCAChD,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;6BACpE,CAAC,CAAA;4BACF,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;4BAClB,MAAK;wBACP,CAAC;wBACD,KAAK,OAAO,CAAC,CAAC,CAAC;4BACb,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;4BACxC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;4BACxC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;4BACpF,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;gCACzB,8CAA8C;gCAC9C,MAAM,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;gCACjC,MAAM,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;gCACjC,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;gCAC1C,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,OAAO,EAAE,CAAC;oCACnD,GAAG,CAAC,4DAA4D,CAAC,CAAA;oCACjE,MAAK;gCACP,CAAC;gCACD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gCAC9E,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oCAC3E,GAAG,CAAC,2BAA2B,CAAC,CAAA;oCAChC,MAAK;gCACP,CAAC;gCACD,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;gCAC3E,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;gCAClB,MAAK;4BACP,CAAC;4BACD,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE;gCACnC,GAAG,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCACrC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCACnE,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCACxE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAkC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;6BAC/D,CAAC,CAAC,CAAC,CAAA;4BACJ,MAAK;wBACP,CAAC;wBACD,KAAK,OAAO,CAAC,CAAC,CAAC;4BACb,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;4BACxC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE;gCACrC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;6BACpE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;4BACT,MAAK;wBACP,CAAC;wBACD,KAAK,MAAM,CAAC,CAAC,CAAC;4BACZ,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;4BACxC,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;4BAC5C,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;4BACxC,oDAAoD;4BACpD,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;4BAC1C,IAAI,QAAsC,CAAA;4BAC1C,IAAI,IAAI,EAAE,CAAC;gCACT,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,gBAAgB,EAAE,CAAA;gCAClE,MAAM,EAAE,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;gCAClC,IAAI,EAAE,CAAC,MAAM,KAAK,WAAW,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;oCACxD,GAAG,CAAC,QAAQ,GAAG,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,KAAK,GAAG,GAAG,GAAG,GAAG,CAAC,CAAA;oCAC9E,MAAK;gCACP,CAAC;gCACD,QAAQ,GAAG;oCACT,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM;oCACzD,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK;oCAC9C,UAAU,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU;iCACnE,CAAA;4BACH,CAAC;4BACD,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE;gCACnC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCACnE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCACzE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCAC1C,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCACxE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCAC/C,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;oCACpC,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC,EAAE;oCACrD,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;6BAC/F,CAAC,CAAA;4BACF,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAA;4BACnB,IAAI,EAAE,CAAC,EAAE,KAAK,KAAK,IAAI,EAAE,CAAC,QAAQ;gCAAE,GAAG,CAAC,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;4BACvE,MAAK;wBACP,CAAC;wBACD,KAAK,UAAU,CAAC,CAAC,CAAC;4BAChB,6CAA6C;4BAC7C,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;4BAC3C,IAAI,KAAmC,CAAA;4BACvC,IAAI,KAAK,EAAE,CAAC;gCACV,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,gBAAgB,EAAE,CAAA;gCAClE,MAAM,EAAE,GAAG,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;gCACnC,IAAI,EAAE,CAAC,MAAM,KAAK,WAAW,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;oCACxD,GAAG,CAAC,QAAQ,GAAG,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,KAAK,GAAG,GAAG,GAAG,GAAG,CAAC,CAAA;oCAC9E,MAAK;gCACP,CAAC;gCACD,KAAK,GAAG;oCACN,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM;oCACzD,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK;oCAC9C,UAAU,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU;iCACnE,CAAA;4BACH,CAAC;4BACD,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;4BACnD,MAAM,QAAQ,GAAG,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;4BAC5E,IAAI,WAAW,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAS,IAAI,CAAC,CAAC,EAAE,CAAC;gCAChF,GAAG,CAAC,wBAAwB,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,cAAc,CAAC,CAAA;gCAC5E,MAAK;4BACP,CAAC;4BACD,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAA;4BAC5D,MAAM,QAAQ,GAAG,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;4BAC5E,IAAI,WAAW,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAS,IAAI,CAAC,IAAI,QAAS,IAAI,CAAC,CAAC,EAAE,CAAC;gCAClG,GAAG,CAAC,sCAAsC,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,eAAe,CAAC,CAAA;gCAC3F,MAAK;4BACP,CAAC;4BACD,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE;gCACnC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCACxE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCACrC,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCAC/C,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCAChE,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCACjH,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;oCACpC,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC,EAAE;oCACrD,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;6BAC/F,CAAC,CAAA;4BACF,IAAI,CAAC,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;gCAAC,GAAG,CAAC,cAAc,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gCAAC,MAAK;4BAAC,CAAC;4BACpE,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;4BACnF,sCAAsC;4BACtC,MAAM,EAAE,GAAG,CAAC,CAAC,YAKA,CAAA;4BACb,IAAI,EAAE,EAAE,CAAC;gCACP,GAAG,CAAC,YAAY,GAAG,MAAM,CAAC,EAAE,CAAC,WAAW,IAAI,GAAG,CAAC,GAAG,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;sCACzE,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,KAAK,IAAI,GAAG,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,GAAG;sCAC3E,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,IAAI,CAAC,CAAC,CAAC,CAAA;gCACjG,IAAI,EAAE,CAAC,MAAM;oCAAE,GAAG,CAAC,kBAAkB,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;gCACpH,IAAI,EAAE,CAAC,aAAa;oCAAE,GAAG,CAAC,UAAU,GAAG,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAA;4BACrJ,CAAC;4BACD,KAAK,MAAM,CAAC,IAAK,CAAC,CAAC,UAAuH,IAAI,EAAE,EAAE,CAAC;gCACjJ,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,GAAG,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;sCAC7D,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;sCAC9D,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;sCACxD,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;4BAC3C,CAAC;4BACD,MAAK;wBACP,CAAC;wBACD,KAAK,QAAQ,CAAC,CAAC,CAAC;4BACd,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;4BACjC,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;4BAC1C,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,CAAA;4BACrE,KAAK,MAAM,CAAC,IAAI,GAAG;gCAAE,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;4BAC9C,MAAK;wBACP,CAAC;wBACD,KAAK,MAAM,CAAC,CAAC,CAAC;4BACZ,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;4BACjC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;gCAAE,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAA;4BAChD,MAAK;wBACP,CAAC;wBACD,KAAK,KAAK,CAAC,CAAC,CAAC;4BACX,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;4BACvB,IAAI,CAAC,KAAK,EAAE,CAAC;gCAAC,GAAG,CAAC,sEAAsE,CAAC,CAAC;gCAAC,MAAK;4BAAC,CAAC;4BAClG;+EACmD;4BACnD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAA;4BACxF,MAAM,aAAa,GAAG,IAAI,EAAE,KAAK,IAAI,KAAK,CAAA;4BAC1C,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI,KAAK,CAAC,CAAA;4BAC9D,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;4BAClD,IAAI,QAAQ,GAA4B,EAAE,CAAA;4BAC1C,IAAI,WAAW,EAAE,CAAC;gCAChB,IAAI,CAAC;oCAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAA4B,CAAA;gCAAC,CAAC;gCACrE,MAAM,CAAC;oCAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;oCAAC,MAAK;gCAAC,CAAC;4BAC9C,CAAC;4BACD,uEAAuE;4BACvE,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAA;4BACjD,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;4BACtD,IAAI,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gCACpC,GAAG,CAAC,qDAAqD,CAAC,CAAA;gCAC1D,MAAK;4BACP,CAAC;4BACD,oDAAoD;4BACpD,GAAG,CAAC,MAAM,GAAG,aAAa,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,WAAW,GAAG,OAAO,GAAG,mBAAmB,CAAC,CAAA;4BACjJ,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;4BACvB,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW;gCACzB,CAAC,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE;gCAClF,CAAC,CAAC;oCACE,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO;oCACzE,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM;wCAC5B,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,SAAS,EAAE;wCACrH,CAAC,CAAC,EAAE,CAAC;iCACR,EAAE,OAAO,CAAC;iCACZ,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gCACV,MAAM,GAAG,GAAI,CAA6D,CAAC,MAAM,CAAA;gCACjF,GAAG,CAAC,aAAa,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oCACzD,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;4BACzF,CAAC,CAAC;iCACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;4BAC9E,MAAK;wBACP,CAAC;wBACD,KAAK,MAAM;4BACT,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;4BACrC,MAAK;wBACP,KAAK,OAAO,CAAC,CAAC,CAAC;4BACb,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;4BAC5B,IAAI,CAAC,CAAC,EAAE,CAAC;gCAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;gCAAC,MAAK;4BAAC,CAAC;4BAC1C,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;4BACxE,MAAK;wBACP,CAAC;wBACD,KAAK,OAAO,CAAC,CAAC,CAAC;4BACb,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;4BAC5B,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC,CAAA;4BACnD,IAAI,CAAC,CAAC,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gCAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC;gCAAC,MAAK;4BAAC,CAAC;4BAC7G;kFACsD;4BACtD,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;4BACxC,IAAI,GAA2B,CAAA;4BAC/B,IAAI,MAAM,EAAE,CAAC;gCACX,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gCACtE,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oCAC1E,GAAG,CAAC,+BAA+B,CAAC,CAAA;oCACpC,MAAK;gCACP,CAAC;4BACH,CAAC;4BACD,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE;gCAChC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ;gCAC/D,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;6BACxB,CAAC,CAAC,CAAC,CAAA;4BACJ,MAAK;wBACP,CAAC;wBACD,KAAK,WAAW,CAAC,CAAC,CAAC;4BACjB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;4BAC5B,IAAI,CAAC,CAAC,EAAE,CAAC;gCAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;gCAAC,MAAK;4BAAC,CAAC;4BAC9C,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;4BAC7E,MAAK;wBACP,CAAC;wBACD,KAAK,WAAW,CAAC,CAAC,CAAC;4BACjB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;4BAC5B,IAAI,CAAC,CAAC,EAAE,CAAC;gCAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;gCAAC,MAAK;4BAAC,CAAC;4BAC9C,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;4BAC7E,MAAK;wBACP,CAAC;wBACD,KAAK,SAAS;4BACZ,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAA;4BACzD,MAAK;wBACP,KAAK,KAAK,CAAC,CAAC,CAAC;4BACX,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;4BAC5B,IAAI,CAAC,CAAC,EAAE,CAAC;gCAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;gCAAC,MAAK;4BAAC,CAAC;4BACvE,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;4BAChE,MAAK;wBACP,CAAC;wBACD,KAAK,MAAM,CAAC,CAAC,CAAC;4BACZ,0CAA0C;4BAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;iCAChD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;4BAC1E,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;gCAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;gCAAC,MAAK;4BAAC,CAAC;4BACjF,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAA;4BAC5D,MAAK;wBACP,CAAC;wBACD,KAAK,OAAO,CAAC,CAAC,CAAC;4BACb,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;4BAC5B,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC,CAAA;4BACnD,IAAI,CAAC,CAAC,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gCAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;gCAAC,MAAK;4BAAC,CAAC;4BAC/E,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAA;4BAClF,MAAK;wBACP,CAAC;wBACD,KAAK,SAAS,CAAC,CAAC,CAAC;4BACf,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;4BAC5B,IAAI,CAAC,CAAC,EAAE,CAAC;gCAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;gCAAC,MAAK;4BAAC,CAAC;4BAC5C,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;4BAC1E,MAAK;wBACP,CAAC;wBACD,KAAK,QAAQ,CAAC,CAAC,CAAC;4BACd,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;4BAC5B,IAAI,CAAC,CAAC,EAAE,CAAC;gCAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;gCAAC,MAAK;4BAAC,CAAC;4BACzD,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;4BAC3E,MAAK;wBACP,CAAC;wBACD,KAAK,MAAM,CAAC,CAAC,CAAC;4BACZ,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;4BAC5B,IAAI,CAAC,CAAC,EAAE,CAAC;gCAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;gCAAC,MAAK;4BAAC,CAAC;4BAC3C,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;4BACzE,MAAK;wBACP,CAAC;wBACD,KAAK,MAAM;4BACT,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;4BACjF,MAAK;wBACP,KAAK,MAAM,CAAC,CAAC,CAAC;4BACZ,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,eAAe,CAAA;4BACzC,MAAM,KAAK,GAA4B,EAAE,CAAA;4BACzC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;gCAChC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;gCACzB,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;oCACX,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;oCACxB,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;oCACzB,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gCACnE,CAAC;4BACH,CAAC;4BACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;4BAC5C,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC,IAAI,EAAE,CAAA;4BAC5D,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE;gCACnC,WAAW,EAAE,IAAI,EAAE,KAAK;gCACxB,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;6BACrD,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;4BACT,MAAK;wBACP,CAAC;wBACD,KAAK,IAAI,CAAC,CAAC,CAAC;4BACV,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAA;4BACjC,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;gCACrB,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;4BAC7C,CAAC;iCAAM,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gCAC7B,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;gCACtB,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;gCACvC,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oCAC9D,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;oCAClD,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;gCAChD,IAAI,CAAC,CAAC,EAAE,KAAK,KAAK;oCAAE,GAAG,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;;oCAC7C,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;4BAC3F,CAAC;iCAAM,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;gCAC1B,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC,gBAAgB,EAAE,CAAC,CAAA;gCAC5D,IAAI,KAAK,EAAE,CAAC;oCAAC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC;oCAAC,MAAK;gCAAC,CAAC;gCAC1C,IAAI,CAAC,QAAQ,EAAE,CAAC;oCAAC,GAAG,CAAC,UAAU,CAAC,CAAC;oCAAC,MAAK;gCAAC,CAAC;gCACzC,GAAG,CAAC,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG,eAAe,GAAG,QAAQ,CAAC,SAAS,GAAG,GAAG,CAAC,CAAA;gCAClF,KAAK,MAAM,CAAC,IAAI,QAAQ,CAAC,MAAM;oCAAE,GAAG,CAAC,IAAI,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAA;4BAChE,CAAC;iCAAM,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gCAC7B,MAAM,CAAC,GAAG,YAAY,CAAC,gBAAgB,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;gCACnE,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;4BACxF,CAAC;iCAAM,CAAC;gCACN,GAAG,CAAC,mFAAmF,CAAC,CAAA;4BAC1F,CAAC;4BACD,MAAK;wBACP,CAAC;wBACD;4BACE,GAAG,CAAC,OAAO,GAAG,IAAI;kCACd,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;kCACxE,gBAAgB,CAAC,CAAA;oBACzB,CAAC;gBACH,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,IAAI,CAAC,YAAY,YAAY;wBAAE,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,CAAA;;wBACnE,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBAChE,CAAC;YACH,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,EAAE,CAAC,KAAK,EAAE,CAAA;YACV,MAAM,CAAC,KAAK,EAAE,CAAA;QAChB,CAAC;QAED,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAA;IAChD,CAAC;CACF,CAAA"}
@@ -0,0 +1,514 @@
1
+ /**
2
+ * 设备与运行时的命令面:probe / device / connect / disconnect / screencap / frame / run / stop。
3
+ *
4
+ * 这一层只做三件事:解析选项、调 runtime/actions、把它翻译成 CLI 信封。任何领域规则
5
+ * (控制器规划、资源解析、时间线)都不许写在这里——REPL 与其它壳(编辑器插件、面板)调的是同一批动作函数。
6
+ */
7
+ import { mkdirSync } from 'node:fs';
8
+ import { dirname, join } from 'node:path';
9
+ import { defaultRunDir } from '../client/daemon.js';
10
+ import { computePipelineOverride, mergeOverride } from '../interface/index.js';
11
+ import { EXIT, fail } from '../protocol.js';
12
+ import * as act from '../runtime/actions.js';
13
+ import { withDaemon } from '../runtime/actions.js';
14
+ import { describeSession, ensureSession, SessionError } from '../runtime/session.js';
15
+ /** 连接类选项:凡是要设备的命令都接受同一组,保证"怎么连"只有一套说法。 */
16
+ export const CONNECT_OPTIONS = {
17
+ project: { type: 'string' },
18
+ controller: { type: 'string' },
19
+ resource: { type: 'string' },
20
+ hwnd: { type: 'string' },
21
+ address: { type: 'string' },
22
+ kind: { type: 'string' },
23
+ target: { type: 'string' },
24
+ 'short-side': { type: 'string' },
25
+ 'long-side': { type: 'string' },
26
+ raw: { type: 'boolean' },
27
+ };
28
+ export function sessionOptions(values) {
29
+ const num = (k) => {
30
+ const v = values[k];
31
+ return typeof v === 'string' && v !== '' ? Number(v) : undefined;
32
+ };
33
+ const str = (k) => (typeof values[k] === 'string' ? values[k] : undefined);
34
+ return {
35
+ project: str('project'),
36
+ controller: str('controller'),
37
+ resource: str('resource'),
38
+ hwnd: str('hwnd'),
39
+ address: str('address'),
40
+ kind: str('kind'),
41
+ target: str('target'),
42
+ shortSide: num('short-side'),
43
+ longSide: num('long-side'),
44
+ rawSize: values.raw === true,
45
+ };
46
+ }
47
+ /** daemon 抛出的错误一律翻译成结构化失败,不让堆栈进模型上下文。 */
48
+ export function daemonFail(e, hint) {
49
+ if (e instanceof SessionError)
50
+ return fail(e.code, e.message, hint, EXIT.ENV);
51
+ const msg = e instanceof Error ? e.message : String(e);
52
+ return fail('DAEMON_ERROR', msg, hint ?? '用 maafw-live probe 检查运行时;连接类错误先 maafw-live device 看有没有设备', EXIT.ENV);
53
+ }
54
+ export const probeCommand = {
55
+ name: 'probe',
56
+ summary: '自检 maa-node 运行时:绑定版本、adb/win32 设备发现数',
57
+ usage: 'maafw-live probe',
58
+ async run() {
59
+ try {
60
+ return await withDaemon(async (client) => {
61
+ const info = await act.probe(client);
62
+ const devices = await act.deviceList(client, 'all').catch(() => []);
63
+ const human = [
64
+ 'maa-node ' + String(info.version ?? '(未知)'),
65
+ 'adb 设备 ' + String(info.adb ?? '?'),
66
+ 'win32 窗口 ' + String(info.win32 ?? '?'),
67
+ '可用于连接的设备 ' + devices.length + ' 个',
68
+ ];
69
+ for (const err of info.errors ?? [])
70
+ human.push(' error: ' + err);
71
+ return { exitCode: EXIT.OK, human, data: { ...info, devices: devices.length } };
72
+ });
73
+ }
74
+ catch (e) {
75
+ return daemonFail(e, '探针失败通常意味着 @maaxyz/maa-node 未安装或原生包与平台不匹配');
76
+ }
77
+ },
78
+ };
79
+ export const deviceCommand = {
80
+ name: 'device',
81
+ summary: '列出可连接的设备:adb 设备与 win32 窗口',
82
+ usage: 'maafw-live device [--kind all|adb|win32]',
83
+ options: { kind: { type: 'string' } },
84
+ async run(ctx) {
85
+ const kind = (typeof ctx.values.kind === 'string' ? ctx.values.kind : 'all');
86
+ if (!['all', 'adb', 'win32'].includes(kind)) {
87
+ return fail('BAD_ARGUMENTS', 'kind 只能是 all / adb / win32', undefined, EXIT.USAGE);
88
+ }
89
+ try {
90
+ return await withDaemon(async (client) => {
91
+ const list = await act.deviceList(client, kind);
92
+ const human = list.length
93
+ ? list.map((d) => {
94
+ const r = d;
95
+ return ' ' + String(r.kind) + ' ' + String(r.id) + ' ' + String(r.name ?? '') +
96
+ (r.cls ? ' [' + r.cls + ']' : '');
97
+ })
98
+ : ['(未发现设备)'];
99
+ return {
100
+ exitCode: list.length ? EXIT.OK : EXIT.FINDINGS,
101
+ human: ['设备 ' + list.length + ' 个:', ...human],
102
+ data: { count: list.length, devices: list },
103
+ ...(list.length ? {} : { suggestedCommands: ['maafw-live device'] }),
104
+ };
105
+ });
106
+ }
107
+ catch (e) {
108
+ return daemonFail(e);
109
+ }
110
+ },
111
+ };
112
+ export const connectCommand = {
113
+ name: 'connect',
114
+ summary: '连接设备(进程态:命令退出即断开;多步操作用 maafw-live repl)',
115
+ usage: 'maafw-live connect --project <dir> | --kind win32|adb|gamepad [--target ...]',
116
+ options: { ...CONNECT_OPTIONS },
117
+ async run(ctx) {
118
+ const o = sessionOptions(ctx.values);
119
+ if (!o.project && !o.kind) {
120
+ return fail('BAD_ARGUMENTS', '要么给 --project <dir>(按 interface.json 规划),要么给 --kind', '推荐 --project:控制器类型/窗口正则/输入方法/识别缩放全跟项目走', EXIT.USAGE);
121
+ }
122
+ try {
123
+ return await withDaemon(async (client) => {
124
+ const s = await ensureSession(client, o);
125
+ const lines = describeSession(s);
126
+ if (s.streamStopped) {
127
+ /* 重建控制器会让旧流失效:如实说,别让调用方以为是设备卡了(曾经是"流静默死掉") */
128
+ lines.push('', '帧流:已停止(本次连接重建了控制器);要看帧就 stream start 重开。');
129
+ }
130
+ lines.push('', '注意:连接是进程态,本命令退出即断开。多步操作请用 maafw-live repl(连接一次、命令复用)。');
131
+ return {
132
+ exitCode: EXIT.OK,
133
+ human: lines,
134
+ data: {
135
+ session: s.session ?? null,
136
+ controller: s.plan?.controllerName ?? null,
137
+ resourcePaths: s.plan?.resource?.paths ?? null,
138
+ },
139
+ };
140
+ });
141
+ }
142
+ catch (e) {
143
+ return daemonFail(e, '没有匹配的窗口/设备时:先 maafw-live device 看目标是否存在,或用 --hwnd 显式指定');
144
+ }
145
+ },
146
+ };
147
+ export const disconnectCommand = {
148
+ name: 'disconnect',
149
+ summary: '断开设备并销毁 Tasker/Controller(一次性命令,等价于结束 REPL 会话)',
150
+ usage: 'maafw-live disconnect --project <dir> | --kind ...',
151
+ options: { ...CONNECT_OPTIONS },
152
+ async run(ctx) {
153
+ const o = sessionOptions(ctx.values);
154
+ if (!o.project && !o.kind) {
155
+ return fail('BAD_ARGUMENTS', '需要 --project 或 --kind 才能建立会话再断开', undefined, EXIT.USAGE);
156
+ }
157
+ try {
158
+ return await withDaemon(async (client) => {
159
+ await ensureSession(client, o);
160
+ const r = await act.disconnect(client);
161
+ return { exitCode: EXIT.OK, human: ['已断开:' + JSON.stringify(r)], data: r };
162
+ });
163
+ }
164
+ catch (e) {
165
+ return daemonFail(e);
166
+ }
167
+ },
168
+ };
169
+ export const screencapCommand = {
170
+ name: 'screencap',
171
+ summary: '截一帧图并落盘(需要连接:给 --project 或 --kind)',
172
+ usage: 'maafw-live screencap [--project <dir>|--kind ...] [--out <png>]',
173
+ options: { ...CONNECT_OPTIONS, out: { type: 'string' } },
174
+ async run(ctx) {
175
+ const o = sessionOptions(ctx.values);
176
+ const out = typeof ctx.values.out === 'string'
177
+ ? ctx.values.out
178
+ : join(defaultRunDir(), 'png', 'shot_' + Date.now() + '.png');
179
+ try {
180
+ mkdirSync(dirname(out), { recursive: true });
181
+ }
182
+ catch { /* 落盘失败交给 daemon 报错 */ }
183
+ try {
184
+ return await withDaemon(async (client) => {
185
+ const s = await ensureSession(client, o);
186
+ const r = await act.screencap(client, out);
187
+ return {
188
+ exitCode: r.ok === false ? EXIT.FAIL : EXIT.OK,
189
+ human: [...describeSession(s), '截图:' + String(r.path ?? out) + (r.bytes ? ' (' + r.bytes + ' bytes)' : '')],
190
+ data: r,
191
+ written: r.path ? [String(r.path)] : [out],
192
+ };
193
+ });
194
+ }
195
+ catch (e) {
196
+ return daemonFail(e);
197
+ }
198
+ },
199
+ };
200
+ export const frameCommand = {
201
+ name: 'frame',
202
+ summary: '帧流状态与历史帧取用(环形缓冲只在 REPL 会话里才有内容)',
203
+ usage: 'maafw-live frame status | maafw-live frame get [seq] [--roi x,y,w,h] [--out <png>] [--src auto|full|ring]\n' +
204
+ ' --src full 强制要控制器分辨率原图(L0 已淘汰则报错,绝不给缩小图冒充)',
205
+ options: { ...CONNECT_OPTIONS, roi: { type: 'string' }, out: { type: 'string' }, src: { type: 'string' } },
206
+ async run(ctx) {
207
+ const sub = ctx.positionals[0] ?? 'status';
208
+ const o = sessionOptions(ctx.values);
209
+ if (sub === 'status') {
210
+ try {
211
+ return await withDaemon(async (client) => {
212
+ const s = await ensureSession(client, o);
213
+ const st = await act.streamStatus(client);
214
+ return { exitCode: EXIT.OK, human: [...describeSession(s), '帧流:' + JSON.stringify(st)], data: st };
215
+ });
216
+ }
217
+ catch (e) {
218
+ return daemonFail(e);
219
+ }
220
+ }
221
+ if (sub !== 'get') {
222
+ return fail('BAD_ARGUMENTS', '用法:maafw-live frame status | maafw-live frame get [seq]', undefined, EXIT.USAGE);
223
+ }
224
+ const rawSeq = ctx.positionals[1];
225
+ const seq = rawSeq !== undefined ? Number(rawSeq) : undefined;
226
+ if (rawSeq !== undefined && !Number.isFinite(seq)) {
227
+ return fail('BAD_ARGUMENTS', 'seq 必须是数字', undefined, EXIT.USAGE);
228
+ }
229
+ const roi = typeof ctx.values.roi === 'string'
230
+ ? ctx.values.roi.split(',').map((x) => Number(String(x).trim()))
231
+ : undefined;
232
+ if (roi && (roi.length !== 4 || roi.some((n) => !Number.isFinite(n)))) {
233
+ return fail('BAD_ARGUMENTS', '--roi 需要 4 个数字:x,y,w,h(控制器分辨率坐标,与 pipeline 的 roi 同空间)', undefined, EXIT.USAGE);
234
+ }
235
+ const out = typeof ctx.values.out === 'string' ? ctx.values.out : undefined;
236
+ const srcRaw = typeof ctx.values.src === 'string' ? ctx.values.src.toLowerCase() : 'auto';
237
+ if (!['auto', 'full', 'ring'].includes(srcRaw)) {
238
+ return fail('BAD_ARGUMENTS', '--src 只支持 auto | full | ring', undefined, EXIT.USAGE);
239
+ }
240
+ const src = srcRaw;
241
+ try {
242
+ return await withDaemon(async (client) => {
243
+ await ensureSession(client, o);
244
+ const r = await act.frameGet(client, { seq, roi, out, src });
245
+ if (r.ok === false) {
246
+ return fail('NO_FRAME', String(r.error ?? '取帧失败'), '帧流要先在 REPL 里 stream start;一次性命令的环形缓冲是空的', EXIT.FINDINGS);
247
+ }
248
+ /* 降级是**发现**不是失败:图能用,但分辨率与预期不符必须让人看见(退出 3)。
249
+ * 判据取自 daemon 的 `degraded`——它按"调用方要什么"判(带 roi 的 auto 退小图才算降级;
250
+ * 显式 ring 与整帧小图都是预期行为),比在命令面拿 `sourceResolution < 1` 反推准确。 */
251
+ const degraded = r.degraded === true;
252
+ return {
253
+ exitCode: degraded ? EXIT.FINDINGS : EXIT.OK,
254
+ human: [
255
+ '帧 ' + String(r.seq) + ' → ' + String(r.path) + ' (' + r.w + 'x' + r.h + ')'
256
+ + ' 来源 ' + String(r.source ?? '?') + ' 有效分辨率 ' + String(r.sourceResolution ?? '?'),
257
+ ...(r.warn ? [' 警告:' + String(r.warn)] : []),
258
+ ],
259
+ data: r,
260
+ warnings: r.warn ? [String(r.warn)] : [],
261
+ written: [String(r.path)],
262
+ };
263
+ });
264
+ }
265
+ catch (e) {
266
+ return daemonFail(e);
267
+ }
268
+ },
269
+ };
270
+ export const waitCommand = {
271
+ name: 'wait',
272
+ summary: '等状态谓词成立:stable=画面静下来 / change=画面动了(取代硬睡时钟)',
273
+ usage: 'maafw-live wait stable|change [--timeout ms] [--quiet ms] [--roi x,y,w,h] [--threshold n]\n' +
274
+ ' 超时不算命令失败(ok=true, satisfied=false, 退出码 3)——"没等到"是观测结果',
275
+ options: {
276
+ ...CONNECT_OPTIONS,
277
+ timeout: { type: 'string' }, quiet: { type: 'string' },
278
+ roi: { type: 'string' }, threshold: { type: 'string' },
279
+ },
280
+ async run(ctx) {
281
+ const modeRaw = ctx.positionals[0];
282
+ if (modeRaw !== 'stable' && modeRaw !== 'change') {
283
+ return fail('BAD_ARGUMENTS', 'wait 只认 stable | change' + (modeRaw ? '(收到 ' + JSON.stringify(modeRaw) + ')' : ''), '用法:maafw-live wait stable|change [--timeout ms] [--quiet ms] [--roi x,y,w,h] [--threshold n]', EXIT.USAGE);
284
+ }
285
+ const mode = modeRaw;
286
+ const o = sessionOptions(ctx.values);
287
+ const timeout = ctx.values.timeout !== undefined ? Number(ctx.values.timeout) : undefined;
288
+ if (timeout !== undefined && !Number.isFinite(timeout)) {
289
+ return fail('BAD_ARGUMENTS', '--timeout 必须是毫秒数', undefined, EXIT.USAGE);
290
+ }
291
+ const quiet = ctx.values.quiet !== undefined ? Number(ctx.values.quiet) : undefined;
292
+ if (quiet !== undefined && !Number.isFinite(quiet)) {
293
+ return fail('BAD_ARGUMENTS', '--quiet 必须是毫秒数', undefined, EXIT.USAGE);
294
+ }
295
+ const threshold = ctx.values.threshold !== undefined ? Number(ctx.values.threshold) : undefined;
296
+ if (threshold !== undefined && !Number.isFinite(threshold)) {
297
+ return fail('BAD_ARGUMENTS', '--threshold 必须是数字', undefined, EXIT.USAGE);
298
+ }
299
+ const roi = typeof ctx.values.roi === 'string'
300
+ ? ctx.values.roi.split(',').map((x) => Number(String(x).trim()))
301
+ : undefined;
302
+ if (roi && (roi.length !== 4 || roi.some((n) => !Number.isFinite(n)))) {
303
+ return fail('BAD_ARGUMENTS', '--roi 需要 4 个数字:x,y,w,h', undefined, EXIT.USAGE);
304
+ }
305
+ try {
306
+ return await withDaemon(async (client) => {
307
+ await ensureSession(client, o);
308
+ const r = await act.waitState(client, {
309
+ mode,
310
+ ...(timeout !== undefined ? { timeout } : {}),
311
+ ...(quiet !== undefined ? { quiet } : {}),
312
+ ...(roi ? { roi } : {}),
313
+ ...(threshold !== undefined ? { threshold } : {}),
314
+ });
315
+ if (r.ok === false)
316
+ return fail('WAIT', String(r.error ?? '等待失败'), undefined, EXIT.FINDINGS);
317
+ const ok = r.satisfied === true;
318
+ return {
319
+ exitCode: ok ? EXIT.OK : EXIT.FINDINGS,
320
+ human: [
321
+ 'wait ' + mode + ':' + (ok ? '已成立' : '超时未成立')
322
+ + ' 等了 ' + String(r.waitedMs) + 'ms 当前帧 seq=' + String(r.seq),
323
+ ...(r.warn ? [' 警告:' + String(r.warn)] : []),
324
+ ],
325
+ data: r,
326
+ warnings: r.warn ? [String(r.warn)] : [],
327
+ };
328
+ });
329
+ }
330
+ catch (e) {
331
+ return daemonFail(e);
332
+ }
333
+ },
334
+ };
335
+ export const runCommand = {
336
+ name: 'run',
337
+ summary: '运行 pipeline:项目模式(推荐)或 resource 目录模式;节点事件按帧序对齐。退出码按任务级 record.ok',
338
+ usage: 'maafw-live run --entry <task> --project <dir> | --resource-dir <dir> [--timeout <ms|0>] [--override <json>] [--preset <name>] [--resource <名|路径>]\n' +
339
+ ' --timeout 0 = 不自动停止(停止权交调用方:事件流判断 + maafw-live stop / 客户端 run_stop);>0 时超时自动 post_stop\n' +
340
+ ' 项目模式自动合成 pipeline_override(global→resource→controller→task,preset/default 取值),--override 最后覆盖',
341
+ options: {
342
+ ...CONNECT_OPTIONS,
343
+ entry: { type: 'string' },
344
+ 'resource-dir': { type: 'string' },
345
+ timeout: { type: 'string' },
346
+ override: { type: 'string' },
347
+ preset: { type: 'string' },
348
+ },
349
+ async run(ctx) {
350
+ const o = sessionOptions(ctx.values);
351
+ const entry = (typeof ctx.values.entry === 'string' ? ctx.values.entry : ctx.positionals[0]) ?? undefined;
352
+ const resourceDir = typeof ctx.values['resource-dir'] === 'string' ? ctx.values['resource-dir'] : undefined;
353
+ if (!entry) {
354
+ return fail('BAD_ARGUMENTS', '缺少入口任务名:--entry <task>', '项目模式=interface.json 的 task 名;bundle 模式=pipeline 首节点名', EXIT.USAGE);
355
+ }
356
+ if (!o.project && !resourceDir) {
357
+ return fail('BAD_ARGUMENTS', '要么给 --project <dir>,要么给 --resource-dir <dir>', undefined, EXIT.USAGE);
358
+ }
359
+ let override = {};
360
+ if (typeof ctx.values.override === 'string') {
361
+ try {
362
+ override = JSON.parse(ctx.values.override);
363
+ }
364
+ catch (e) {
365
+ return fail('BAD_ARGUMENTS', '--override 不是合法 JSON:' + String(e.message), undefined, EXIT.USAGE);
366
+ }
367
+ }
368
+ const timeoutMs = typeof ctx.values.timeout === 'string' ? Number(ctx.values.timeout) : 30000;
369
+ if (!Number.isFinite(timeoutMs)) {
370
+ return fail('BAD_ARGUMENTS', '--timeout 必须是毫秒数', undefined, EXIT.USAGE);
371
+ }
372
+ try {
373
+ return await withDaemon(async (client) => {
374
+ const s = await ensureSession(client, o);
375
+ let args;
376
+ let resolvedEntry = entry;
377
+ let chain = null;
378
+ let extraWarns = [];
379
+ let appliedLines = [];
380
+ if (o.project) {
381
+ const paths = s.plan?.resource?.paths ?? [];
382
+ if (!paths.length) {
383
+ return fail('RESOURCE_NOT_FOUND', '项目里没有解析出资源路径:检查 interface.json 的 resource[] 声明', undefined, EXIT.FINDINGS);
384
+ }
385
+ const task = s.plan?.loaded.tasks.find((t) => t.name === entry || t.entry === entry);
386
+ resolvedEntry = task?.entry ?? entry;
387
+ /* task 适用性(task.controller / task.resource 声明) */
388
+ const ctrlName = s.plan?.controllerName ?? null;
389
+ const resName = s.plan?.resource?.selected ?? null;
390
+ if (task?.controller?.length && ctrlName && !task.controller.includes(ctrlName)) {
391
+ return fail('TASK_NOT_APPLICABLE', '任务 ' + task.name + ' 不支持当前控制器 ' + ctrlName + '(声明:' + task.controller.join(' / ') + ')', '换 --controller ' + task.controller[0] + ',或选别的任务', EXIT.FINDINGS);
392
+ }
393
+ if (task?.resource?.length && resName && !task.resource.includes(resName)) {
394
+ extraWarns.push('任务 ' + task.name + ' 声明资源 ' + task.resource.join(' / ') + ',当前选中的是 ' + resName);
395
+ }
396
+ /* pipeline_override 四级合并链(preset > default_case 取值) + 用户 --override 最后覆盖 */
397
+ chain = computePipelineOverride({
398
+ loaded: s.plan.loaded,
399
+ controllerName: ctrlName,
400
+ resourceName: resName,
401
+ taskName: task?.name ?? null,
402
+ presetName: typeof ctx.values.preset === 'string' ? ctx.values.preset : null,
403
+ });
404
+ extraWarns = [...extraWarns, ...chain.warns];
405
+ appliedLines = chain.applied;
406
+ const pt = s.plan.loaded.pretask;
407
+ if (pt.length) {
408
+ extraWarns.push('项目声明了 ' + pt.length + ' 条 pretask(' + pt.map((p) => p.exec ?? p.name ?? '?').join(' , ') + '),本 CLI 不执行——需自行保证前置条件');
409
+ }
410
+ const agents = s.plan.loaded.agents;
411
+ if (agents.length) {
412
+ extraWarns.push('项目声明了 ' + agents.length + ' 个 agent 子进程(' +
413
+ agents.map((a) => [a.exec, ...a.args].join(' ')).join(' ; ') +
414
+ '),run 时自动 spawn 并桥接——注意 maa-node 与 agent 侧 maa 库须同版本(协议握手要求)');
415
+ }
416
+ args = {
417
+ resourceDirs: paths,
418
+ entry: resolvedEntry,
419
+ override: { ...chain.override },
420
+ timeoutMs,
421
+ /* agent 桥接:daemon spawn 子进程(identifier 追加为末参)并 bind/connect 到本次 Resource */
422
+ agents: s.plan.loaded.agents.map((a) => ({ exec: a.exec, args: a.args })),
423
+ agentCwd: s.plan.loaded.dir ?? undefined,
424
+ };
425
+ }
426
+ else {
427
+ args = { resourceDir, entry, override, timeoutMs };
428
+ }
429
+ if (o.project && chain) {
430
+ /* 用户 --override 最后覆盖合成结果;与四级链共用同一份合并实现(非对象值原样替换) */
431
+ mergeOverride(args.override, override);
432
+ }
433
+ const r = await act.run(client, args, timeoutMs);
434
+ if (r.ok === false || !r.record) {
435
+ /* 调用级失败:任务根本没跑起来(未连接 / 资源缺失 / 已有任务在跑)→ FINDINGS */
436
+ return {
437
+ exitCode: EXIT.FINDINGS,
438
+ human: [...describeSession(s), '调用失败:' + String(r.error ?? 'run 未返回记录')],
439
+ data: r,
440
+ warnings: [...extraWarns, ...(r.warns ?? [])],
441
+ };
442
+ }
443
+ /* 任务级结果以 record.ok 为准(daemon 外层 ok 只代表调用完成)。
444
+ * 任务失败退出 FAIL——不能吞成 0,也不占用 FINDINGS(那是调用级失败的语义)。 */
445
+ const rec = r.record;
446
+ const taskOk = rec.ok === true;
447
+ const nodes = rec.nodes ?? [];
448
+ const agentLines = [];
449
+ if (rec.agent) {
450
+ agentLines.push(rec.agent.ok
451
+ ? ' agent 已连接' + (rec.agent.reused ? '(复用)' : '') + ':custom action ' +
452
+ String(rec.agent.actions?.length ?? '?') + ' 个 / recognition ' + String(rec.agent.recognitions?.length ?? '?') + ' 个'
453
+ : ' agent 连接失败:' + String(rec.agent.error ?? '?'));
454
+ }
455
+ const human = [
456
+ ...describeSession(s),
457
+ '任务 ' + resolvedEntry + ':' + (taskOk ? '完成' : (rec.stopped ? '超时被停止(视为失败)' : '失败')) +
458
+ '(status=' + String(rec.status) + ',' + String(rec.durationMs) + 'ms,帧序 ' +
459
+ String(rec.startSeq) + '..' + String(rec.endSeq) + ')',
460
+ ...agentLines,
461
+ ...appliedLines.map((l) => ' override: ' + l),
462
+ ...nodes.map((n) => ' [' + n.status + '] ' + n.name + ' ' + n.ms + 'ms'),
463
+ ];
464
+ if (!taskOk) {
465
+ human.push('', 'daemon 原生日志尾部:', ...client.logTail(20).map((l) => ' ' + l));
466
+ /* agent 缺位的失败归因:原生层只会说 Action is null,翻译成可行动的诊断 */
467
+ if (/Action is null|Recognition is null/.test(client.logTail(40).join('\n'))) {
468
+ const agents = s.plan?.loaded.agents ?? [];
469
+ human.push('', '诊断:日志出现 Action/Recognition is null —— 节点依赖项目 agent 注册的 custom 回调。' +
470
+ (rec.agent?.ok
471
+ ? 'agent 已连接但该动作未注册,检查 custom_action 拼写或 agent 版本。'
472
+ : agents.length
473
+ ? 'agent 连接失败(版本错配?maa-node 与 agent 侧 maa 库须同版本)。'
474
+ : '项目未声明 agent,检查节点 custom_action/custom_recognition 拼写。'));
475
+ extraWarns.push('任务失败疑似缺 agent custom 回调(Action/Recognition is null)');
476
+ }
477
+ }
478
+ if (rec.agent && rec.agent.ok === false) {
479
+ extraWarns.push('agent 连接失败:' + String(rec.agent.error ?? '?'));
480
+ }
481
+ return {
482
+ exitCode: taskOk ? EXIT.OK : EXIT.FAIL,
483
+ human,
484
+ data: r,
485
+ warnings: [...extraWarns, ...(r.warns ?? [])],
486
+ };
487
+ });
488
+ }
489
+ catch (e) {
490
+ return daemonFail(e);
491
+ }
492
+ },
493
+ };
494
+ export const stopCommand = {
495
+ name: 'stop',
496
+ summary: '停止运行中的任务(post_stop)',
497
+ usage: 'maafw-live stop',
498
+ async run() {
499
+ try {
500
+ return await withDaemon(async (client) => {
501
+ const r = await act.runStop(client);
502
+ return { exitCode: EXIT.OK, human: ['已请求停止:' + JSON.stringify(r)], data: r };
503
+ });
504
+ }
505
+ catch (e) {
506
+ return daemonFail(e, '一次性进程里通常没有正在运行的任务;该命令主要用于 REPL 会话内中断');
507
+ }
508
+ },
509
+ };
510
+ export const RUNTIME_COMMANDS = [
511
+ probeCommand, deviceCommand, connectCommand, disconnectCommand,
512
+ screencapCommand, frameCommand, waitCommand, runCommand, stopCommand,
513
+ ];
514
+ //# sourceMappingURL=runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/commands/runtime.ts"],"names":[],"mappings":"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"}