@paperclipai/adapter-acpx-local 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/dist/cli/format-event.d.ts +2 -0
  2. package/dist/cli/format-event.d.ts.map +1 -0
  3. package/dist/cli/format-event.js +128 -0
  4. package/dist/cli/format-event.js.map +1 -0
  5. package/dist/cli/format-event.test.d.ts +2 -0
  6. package/dist/cli/format-event.test.d.ts.map +1 -0
  7. package/dist/cli/format-event.test.js +88 -0
  8. package/dist/cli/format-event.test.js.map +1 -0
  9. package/dist/cli/index.d.ts +2 -0
  10. package/dist/cli/index.d.ts.map +1 -0
  11. package/dist/cli/index.js +2 -0
  12. package/dist/cli/index.js.map +1 -0
  13. package/dist/index.d.ts +19 -0
  14. package/dist/index.d.ts.map +1 -0
  15. package/dist/index.js +45 -0
  16. package/dist/index.js.map +1 -0
  17. package/dist/server/config-schema.d.ts +3 -0
  18. package/dist/server/config-schema.d.ts.map +1 -0
  19. package/dist/server/config-schema.js +94 -0
  20. package/dist/server/config-schema.js.map +1 -0
  21. package/dist/server/execute.d.ts +18 -0
  22. package/dist/server/execute.d.ts.map +1 -0
  23. package/dist/server/execute.js +1010 -0
  24. package/dist/server/execute.js.map +1 -0
  25. package/dist/server/execute.test.d.ts +2 -0
  26. package/dist/server/execute.test.d.ts.map +1 -0
  27. package/dist/server/execute.test.js +330 -0
  28. package/dist/server/execute.test.js.map +1 -0
  29. package/dist/server/index.d.ts +6 -0
  30. package/dist/server/index.d.ts.map +1 -0
  31. package/dist/server/index.js +6 -0
  32. package/dist/server/index.js.map +1 -0
  33. package/dist/server/session-codec.d.ts +3 -0
  34. package/dist/server/session-codec.d.ts.map +1 -0
  35. package/dist/server/session-codec.js +48 -0
  36. package/dist/server/session-codec.js.map +1 -0
  37. package/dist/server/skills.d.ts +4 -0
  38. package/dist/server/skills.d.ts.map +1 -0
  39. package/dist/server/skills.js +86 -0
  40. package/dist/server/skills.js.map +1 -0
  41. package/dist/server/test.d.ts +3 -0
  42. package/dist/server/test.d.ts.map +1 -0
  43. package/dist/server/test.js +267 -0
  44. package/dist/server/test.js.map +1 -0
  45. package/dist/server/test.test.d.ts +2 -0
  46. package/dist/server/test.test.d.ts.map +1 -0
  47. package/dist/server/test.test.js +38 -0
  48. package/dist/server/test.test.js.map +1 -0
  49. package/dist/ui/build-config.d.ts +3 -0
  50. package/dist/ui/build-config.d.ts.map +1 -0
  51. package/dist/ui/build-config.js +143 -0
  52. package/dist/ui/build-config.js.map +1 -0
  53. package/dist/ui/index.d.ts +3 -0
  54. package/dist/ui/index.d.ts.map +1 -0
  55. package/dist/ui/index.js +3 -0
  56. package/dist/ui/index.js.map +1 -0
  57. package/dist/ui/parse-stdout.d.ts +3 -0
  58. package/dist/ui/parse-stdout.d.ts.map +1 -0
  59. package/dist/ui/parse-stdout.js +148 -0
  60. package/dist/ui/parse-stdout.js.map +1 -0
  61. package/dist/ui/parse-stdout.test.d.ts +2 -0
  62. package/dist/ui/parse-stdout.test.d.ts.map +1 -0
  63. package/dist/ui/parse-stdout.test.js +106 -0
  64. package/dist/ui/parse-stdout.test.js.map +1 -0
  65. package/package.json +64 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute.js","sourceRoot":"","sources":["../../src/server/execute.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,0BAA0B,EAAE,qCAAqC,EAAE,MAAM,6CAA6C,CAAC;AAChI,OAAO,EACL,uCAAuC,EACvC,0BAA0B,EAC1B,QAAQ,EACR,QAAQ,EACR,yBAAyB,EACzB,iBAAiB,EACjB,uBAAuB,EACvB,eAAe,EACf,kBAAkB,EAClB,6BAA6B,EAC7B,WAAW,EACX,gCAAgC,EAChC,yBAAyB,EACzB,cAAc,EACd,iCAAiC,EACjC,6BAA6B,GAE9B,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,GAQlB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,8CAA8C,EAC9C,kCAAkC,EAClC,8BAA8B,GAC/B,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACjE,MAAM,2BAA2B,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AACnD,MAAM,4BAA4B,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AACpD,MAAM,uCAAuC,GAAG,gCAAgC,CAAC;AAuCjF,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAA6B,CAAC;AAEhE,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;IACxE,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC;aACxD,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;aACtC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;aACpE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;IAClB,CAAC;IACD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACnF,CAAC;AAED,SAAS,2BAA2B;IAClC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,YAAY,CAAC,CAAC;IACzF,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;IAC1E,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,eAAe,CAAC,SAAiB,EAAE,OAAe;IACzD,OAAO,IAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC3G,CAAC;AAED,SAAS,0BAA0B,CAAC,SAAiB;IACnD,OAAO,IAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;AACxF,CAAC;AAED,SAAS,cAAc;IACrB,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,0BAA0B,CAAC,KAAa;IAC/C,MAAM,OAAO,GACX,KAAK,KAAK,QAAQ;QAChB,CAAC,CAAC,kBAAkB;QACpB,CAAC,CAAC,KAAK,KAAK,OAAO;YACjB,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,IAAI,CAAC;IACb,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AACtE,CAAC;AAED,SAAS,cAAc,CAAC,MAA+B;IACrD,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC,IAAI,EAAE,CAAC;IACtE,OAAO,KAAK,IAAI,wBAAwB,CAAC;AAC3C,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,SAAiB;IACzC,OAAO,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;AAClE,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,MAAc;IAC3C,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAC5D,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,KAIlC;IACC,MAAM,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,QAAQ,GAAG,GAAG,KAAK,CAAC,MAAM,QAAQ,OAAO,CAAC,GAAG,IAAI,UAAU,EAAE,EAAE,CAAC;IACtE,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACzD,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACxC,MAAM,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACrC,MAAM,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACvD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,MAAc,EAAE,MAAc;IACzD,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5C,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAC1D,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC;QAC9B,MAAM,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;QACzC,OAAO;IACT,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC;QAC/B,MAAM,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACtD,MAAM,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;QACzC,OAAO;IACT,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAC/D,IAAI,CAAC,UAAU;QAAE,OAAO;IAExB,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC;IAC1E,IAAI,kBAAkB,KAAK,cAAc;QAAE,OAAO;IAElD,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACxB,MAAM,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;AAC3C,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,MAAc,EAAE,MAAc;IAC5D,IAAI,MAAM,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO;IACrC,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC;IAC9B,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACpC,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAC,KAKtC;IACC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IAChD,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;QAAE,OAAO,UAAU,CAAC;IAE7E,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACpD,IAAI,MAAM,UAAU,CAAC,QAAQ,CAAC;QAAE,MAAM,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC;IAElG,KAAK,MAAM,IAAI,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,iBAAiB,CAAC,EAAE,CAAC;QACrE,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC3C,IAAI,MAAM,UAAU,CAAC,MAAM,CAAC;YAAE,MAAM,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5F,CAAC;IAED,MAAM,KAAK,CACT,QAAQ,EACR,wDAAwD,UAAU,mBAAmB,UAAU,OAAO,CACvG,CAAC;IACF,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,SAAiB,EACjB,IAAmC,EACnC,YAAoB,EACpB,eAA4B;IAE5B,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAEvC,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;QAC1B,IAAI,CAAC,MAAM,CAAC,mBAAmB,YAAY,IAAI,CAAC,CAAC;QACjD,OAAO;IACT,CAAC;IAED,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,CAAC,MAAM,CAAC,OAAO,YAAY,IAAI,CAAC,CAAC;QACrC,IAAI,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACtB,OAAO;QACT,CAAC;QACD,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC7B,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QACnE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,iBAAiB,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;YACjG,MAAM,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,eAAe,CAAC,CAAC;QACrG,CAAC;QACD,OAAO;IACT,CAAC;IAED,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;QAClB,IAAI,CAAC,MAAM,CAAC,QAAQ,YAAY,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO;IACT,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,SAAS,YAAY,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;AACtD,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,KAG/B;IACC,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAClC,IAAI,CAAC,MAAM,CAAC,kBAAkB,KAAK,CAAC,KAAK,cAAc,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;IAC1G,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,SAAS,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC;QACzD,MAAM,gBAAgB,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,EAAE,IAAI,GAAG,EAAU,CAAC,CAAC;IACnF,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC5B,CAAC;AAED,KAAK,UAAU,4BAA4B,CACzC,MAA+B;IAE/B,MAAM,SAAS,GAAG,MAAM,gCAAgC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC9E,MAAM,iBAAiB,GAAG,iCAAiC,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC/E,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAC9C,OAAO;QACL,SAAS;QACT,cAAc,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACtE,iBAAiB;KAClB,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,yBAAyB,CAAC,KAIxC;IAKC,MAAM,EAAE,cAAc,EAAE,iBAAiB,EAAE,GAAG,MAAM,4BAA4B,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC/F,MAAM,WAAW,GAAG,MAAM,gBAAgB,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;IACxF,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IACtF,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC9D,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhD,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;QACxD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,6BAA6B,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACzE,IAAI,MAAM,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtC,MAAM,KAAK,CAAC,KAAK,CACf,QAAQ,EACR,+CAA+C,KAAK,CAAC,WAAW,UAAU,UAAU,gBAAgB,MAAM,CAAC,eAAe,CAAC,MAAM,gBAAgB,CAClJ,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,KAAK,CAAC,KAAK,CACf,QAAQ,EACR,wDAAwD,KAAK,CAAC,GAAG,UAAU,UAAU,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAC/I,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,aAAa,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9E,MAAM,kBAAkB,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC;QAClD,CAAC,CAAC;YACE,kFAAkF;YAClF,eAAe,UAAU,EAAE;YAC3B,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,oBAAoB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;YAC9E,4FAA4F;SAC7F,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC9B,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO;QACL,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,WAAW;YACX,iBAAiB;YACjB,cAAc,EAAE,aAAa;YAC7B,SAAS,EAAE,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI;SACzD;QACD,kBAAkB;QAClB,YAAY,EAAE,cAAc,CAAC,MAAM,GAAG,CAAC;YACrC,CAAC,CAAC,CAAC,gBAAgB,cAAc,CAAC,MAAM,0CAA0C,UAAU,GAAG,CAAC;YAChG,CAAC,CAAC,EAAE;KACP,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,8BAA8B,CAAC,UAAkB;IAC9D,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,uCAAuC,CAAC,CAAC;IACpF,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAY,CAAC;QAC3E,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAChC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC;YACpD,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;YACnH,CAAC,CAAC,EAAE,CAAC;QACP,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,GAAG,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,+BAA+B,CAAC,UAAkB,EAAE,UAA4B;IAC7F,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACjE,MAAM,EAAE,CAAC,SAAS,CAChB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,uCAAuC,CAAC,EAC9D,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,iBAAiB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EACjE,MAAM,CACP,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,MAAc;IAC7C,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAC1D,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,2BAA2B,CAAC,KAK1C;IACC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;IAChF,MAAM,OAAO,GAAG,MAAM,8BAA8B,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACvE,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnG,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,SAAS;QAChC,IAAI,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;YAC/D,MAAM,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,yCAAyC,IAAI,UAAU,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC;QAC3G,CAAC;IACH,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC;YAAE,SAAS;QAC/E,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;QAC9D,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ,EAAE,cAAc,EAAE;YAAE,SAAS;QAC1C,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAC/D,IAAI,CAAC,UAAU;YAAE,SAAS;QAC1B,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC;QAC1E,IAAI,kBAAkB,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;YAAE,SAAS;QAChE,IAAI,MAAM,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;YACpC,MAAM,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,gDAAgD,KAAK,CAAC,WAAW,UAAU,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC;QAC/H,CAAC;IACH,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,SAAS;QACpE,IAAI,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;YAC/D,MAAM,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,qDAAqD,IAAI,UAAU,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC;QACvH,CAAC;IACH,CAAC;AACH,CAAC;AAED,KAAK,UAAU,wBAAwB,CAAC,KAKvC;IACC,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAChD,MAAM,mBAAmB,GACvB,OAAO,SAAS,CAAC,UAAU,KAAK,QAAQ,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAChF,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;QAC3C,CAAC,CAAC,IAAI,CAAC;IACX,MAAM,eAAe,GACnB,OAAO,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QACpF,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;QAC7C,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC;IACxC,MAAM,gBAAgB,GAAG,0BAA0B,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACrE,MAAM,kBAAkB,GAAG,mBAAmB;QAC5C,MAAM,uBAAuB,CAAC;YAC5B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,UAAU,EAAE,eAAe;YAC3B,UAAU,EAAE,gBAAgB;YAC5B,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC,CAAC;IACL,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,iBAAiB,EAAE,GAAG,MAAM,4BAA4B,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC1G,MAAM,WAAW,GAAG,MAAM,gBAAgB,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IACvF,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;IAC3D,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,MAAM,2BAA2B,CAAC;QAChC,UAAU;QACV,SAAS;QACT,cAAc;QACd,KAAK,EAAE,KAAK,CAAC,KAAK;KACnB,CAAC,CAAC;IAEH,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;QACxD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,6BAA6B,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACzE,IAAI,MAAM,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtC,MAAM,KAAK,CAAC,KAAK,CACf,QAAQ,EACR,8CAA8C,KAAK,CAAC,WAAW,UAAU,UAAU,gBAAgB,MAAM,CAAC,eAAe,CAAC,MAAM,gBAAgB,CACjJ,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,KAAK,CAAC,KAAK,CACf,QAAQ,EACR,kDAAkD,KAAK,CAAC,GAAG,UAAU,UAAU,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CACzI,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,+BAA+B,CAAC,UAAU,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;IAEpG,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,kBAAkB,CAAC;IAE1C,OAAO;QACL,QAAQ,EAAE;YACR,IAAI,EAAE,OAAO;YACb,WAAW;YACX,iBAAiB;YACjB,cAAc,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE;YACvE,SAAS,EAAE,kBAAkB;YAC7B,UAAU;SACX;QACD,YAAY,EAAE,CAAC,qCAAqC,UAAU,GAAG,CAAC;KACnE,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,MAA+B;IACpD,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,uBAAuB,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC;AACjG,CAAC;AAED,SAAS,uBAAuB,CAAC,MAA+B;IAC9D,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,cAAc,EAAE,kCAAkC,CAAC,CAAC,IAAI,EAAE,CAAC;IACzF,IAAI,KAAK,KAAK,eAAe,IAAI,KAAK,KAAK,UAAU;QAAE,OAAO,KAAK,CAAC;IACpE,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,eAAe,CAAC;IAChD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,SAAS,kCAAkC,CAAC,MAA+B;IACzE,OAAO,QAAQ,CAAC,MAAM,CAAC,yBAAyB,EAAE,8CAA8C,CAAC,KAAK,MAAM;QAC1G,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,MAAM,CAAC;AACb,CAAC;AAED,SAAS,mBAAmB,CAC1B,MAA+B,EAC/B,OAA2H;IAE3H,IAAI,QAAQ,CAAC,MAAM,CAAC,iBAAiB,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,WAAW;QAAE,OAAO,KAAK,CAAC;IACjF,IAAI,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,UAAU;QAAE,OAAO,KAAK,CAAC;IACzE,IAAI,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,SAAS;QAAE,OAAO,KAAK,CAAC;IACnE,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC1C,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IACpF,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IACxD,OAAO,UAAU,CAAC,WAAW,CAAC,KAAK,UAAU,CAAC,OAAO,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC;AACvF,CAAC;AAED,SAAS,kBAAkB,CAAC,KAG3B;IACC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IACnC,OAAO;QACL,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;QAC7C,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,YAAY,EAAE,MAAM,CAAC,gBAAgB;QACrC,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,KAAK,EAAE,QAAQ,CAAC,SAAS;QACzB,GAAG,EAAE,QAAQ,CAAC,GAAG;QACjB,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,iBAAiB,EAAE,QAAQ,CAAC,WAAW;QACvC,MAAM,EAAE,QAAQ,CAAC,cAAc;QAC/B,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,GAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5E,GAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5E,GAAG,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,QAAQ,CAAC,uBAAuB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnG,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,KAKhC;IACC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAC1D,MAAM,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;SACvC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SACvD,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;SACpD,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACxD,MAAM,WAAW,GAAG,SAAS,CAAC;QAC5B,KAAK,EAAE,KAAK,CAAC,SAAS;QACtB,OAAO,EAAE,KAAK,CAAC,iBAAiB;QAChC,GAAG,EAAE,QAAQ;KACd,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,SAAS,IAAI,WAAW,KAAK,CAAC,CAAC;IACnF,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,SAAS,IAAI,WAAW,MAAM,CAAC,CAAC;IACpF,MAAM,MAAM,GAAG;QACb,qBAAqB;QACrB,mBAAmB;QACnB,YAAY,UAAU,CAAC,WAAW,CAAC,EAAE;QACrC,iCAAiC;QACjC,UAAU;QACV,wBAAwB;QACxB,UAAU;QACV,IAAI;QACJ,QAAQ,KAAK,CAAC,iBAAiB,OAAO;QACtC,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACb,MAAM,mBAAmB,CAAC;QACxB,MAAM,EAAE,WAAW;QACnB,QAAQ,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;QACpC,IAAI,EAAE,KAAK;KACZ,CAAC,CAAC;IACH,MAAM,mBAAmB,CAAC;QACxB,MAAM,EAAE,WAAW;QACnB,QAAQ,EAAE,MAAM;QAChB,IAAI,EAAE,KAAK;KACZ,CAAC,CAAC;IACH,MAAM,yBAAyB,CAAC;QAC9B,WAAW;QACX,gBAAgB,EAAE,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;KACpF,CAAC,CAAC;IACH,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC;AACtC,CAAC;AAED,KAAK,UAAU,yBAAyB,CAAC,KAA6D;IACpG,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACrE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,OAAO,CAAC,GAAG,CACf,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QAC1B,MAAM,oBAAoB,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3E,IAAI,CAAC,oBAAoB,IAAI,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO;QACtE,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,CAAC,KAAK,IAAI,GAAG,GAAG,KAAK,CAAC,OAAO,GAAG,4BAA4B;YAAE,OAAO;QACzE,MAAM,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC,CAAC,CACH,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,KAE3B;IACC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC;IAC/D,MAAM,gBAAgB,GAAG,WAAW,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACjE,MAAM,YAAY,GAAG,QAAQ,CAAC,gBAAgB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACxD,MAAM,eAAe,GAAG,QAAQ,CAAC,gBAAgB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC9D,MAAM,iBAAiB,GAAG,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAClE,MAAM,WAAW,GAAG,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC/D,MAAM,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAChE,MAAM,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAChE,MAAM,eAAe,GAAG,QAAQ,CAAC,gBAAgB,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAClE,MAAM,qBAAqB,GAAG,QAAQ,CAAC,gBAAgB,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAC1E,MAAM,SAAS,GAAG,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IAC3D,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC/C,MAAM,+BAA+B,GAAG,eAAe,KAAK,YAAY,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;IACrG,MAAM,qBAAqB,GAAG,+BAA+B,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;IAClF,MAAM,GAAG,GAAG,qBAAqB,IAAI,aAAa,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACpE,MAAM,uBAAuB,CAAC,GAAG,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;IAE9D,MAAM,SAAS,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACnC,MAAM,cAAc,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;IACvD,MAAM,yBAAyB,GAAG,kCAAkC,CAAC,MAAM,CAAC,CAAC;IAC7E,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,8BAA8B,CAAC,CAAC;IAC/E,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3G,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE9C,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,iBAAiB,GACrB,OAAO,SAAS,CAAC,iBAAiB,KAAK,QAAQ,IAAI,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;IACnG,MAAM,GAAG,GAA2B,EAAE,GAAG,iBAAiB,CAAC,KAAK,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC;IAC7F,MAAM,UAAU,GACd,CAAC,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAC7D,CAAC,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC/D,EAAE,CAAC;IACL,MAAM,UAAU,GAAG,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3F,MAAM,aAAa,GACjB,CAAC,OAAO,OAAO,CAAC,aAAa,KAAK,QAAQ,IAAI,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAC3E,CAAC,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACnE,EAAE,CAAC;IACL,MAAM,UAAU,GAAG,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3F,MAAM,cAAc,GAAG,OAAO,OAAO,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACvG,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC;QACpD,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3G,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,eAAe,GAAG,6BAA6B,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC7E,IAAI,UAAU;QAAE,GAAG,CAAC,iBAAiB,GAAG,UAAU,CAAC;IACnD,IAAI,UAAU;QAAE,GAAG,CAAC,qBAAqB,GAAG,UAAU,CAAC;IACvD,IAAI,aAAa;QAAE,GAAG,CAAC,yBAAyB,GAAG,aAAa,CAAC;IACjE,IAAI,UAAU;QAAE,GAAG,CAAC,qBAAqB,GAAG,UAAU,CAAC;IACvD,IAAI,cAAc;QAAE,GAAG,CAAC,yBAAyB,GAAG,cAAc,CAAC;IACnE,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,CAAC,0BAA0B,GAAG,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzF,IAAI,eAAe;QAAE,GAAG,CAAC,2BAA2B,GAAG,eAAe,CAAC;IACvE,0BAA0B,CAAC,GAAG,EAAE;QAC9B,YAAY,EAAE,qBAAqB;QACnC,eAAe;QACf,iBAAiB;QACjB,WAAW;QACX,gBAAgB;QAChB,gBAAgB;QAChB,eAAe;QACf,qBAAqB;QACrB,SAAS;KACV,CAAC,CAAC;IACH,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACrD,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAClD,CAAC;IACD,IAAI,CAAC,iBAAiB,IAAI,SAAS;QAAE,GAAG,CAAC,iBAAiB,GAAG,SAAS,CAAC;IAEvE,IAAI,uBAAuB,GAAG,EAAE,CAAC;IACjC,IAAI,cAAc,GAA4B,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;IACtE,MAAM,iBAAiB,GAAa,EAAE,CAAC;IACvC,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;QAC3B,MAAM,cAAc,GAAG,MAAM,yBAAyB,CAAC;YACrD,QAAQ;YACR,MAAM;YACN,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK;SACvB,CAAC,CAAC;QACH,uBAAuB,GAAG,cAAc,CAAC,kBAAkB,CAAC;QAC5D,cAAc,GAAG,cAAc,CAAC,QAAQ,CAAC;QACzC,iBAAiB,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;IACzD,CAAC;SAAM,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;QACjC,MAAM,cAAc,GAAG,MAAM,wBAAwB,CAAC;YACpD,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,MAAM;YACN,GAAG;YACH,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK;SACvB,CAAC,CAAC;QACH,cAAc,GAAG,cAAc,CAAC,QAAQ,CAAC;QACzC,iBAAiB,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;IACzD,CAAC;SAAM,CAAC;QACN,MAAM,OAAO,GAAG,iCAAiC,CAAC,MAAM,EAAE,MAAM,gCAAgC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;QACvH,cAAc,GAAG,EAAE,IAAI,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,OAAO,EAAE,CAAC;QAC5E,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,iBAAiB,CAAC,IAAI,CAAC,8GAA8G,CAAC,CAAC;QACzI,CAAC;IACH,CAAC;IAED,MAAM,iBAAiB,GAAG,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACnE,MAAM,cAAc,GAAG,0BAA0B,CAAC,SAAS,CAAC,CAAC;IAC7D,MAAM,YAAY,GAAG,iBAAiB,IAAI,cAAc,IAAI,IAAI,CAAC;IACjE,MAAM,iBAAiB,GAAG,iBAAiB,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAClG,MAAM,OAAO,GAAG,YAAY;QAC1B,CAAC,CAAC,MAAM,iBAAiB,CAAC;YACtB,QAAQ;YACR,SAAS;YACT,iBAAiB;YACjB,GAAG;SACJ,CAAC;QACJ,CAAC,CAAC,IAAI,CAAC;IACT,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,IAAI,CAAC;IACjD,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACzE,MAAM,aAAa,GAAG,mBAAmB,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IACzD,MAAM,eAAe,GAAG,0BAA0B,CAAC;QACjD,eAAe,EAAE,KAAK,CAAC,GAAG,CAAC,eAAe;QAC1C,qBAAqB,EAAE,KAAK,CAAC,GAAG,CAAC,kBAAkB,EAAE,eAAe;KACrE,CAAC,CAAC;IACH,MAAM,uBAAuB,GAAG,qCAAqC,CAAC,eAAe,CAAC,CAAC;IACvF,MAAM,WAAW,GAAG,SAAS,CAAC;QAC5B,SAAS;QACT,YAAY,EAAE,YAAY,IAAI,SAAS;QACvC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;QACtB,IAAI;QACJ,cAAc;QACd,yBAAyB;QACzB,uBAAuB;QACvB,cAAc;QACd,uBAAuB;KACxB,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,UAAU,IAAI,WAAW,IAAI,SAAS,CAAC;IAClG,MAAM,UAAU,GAAG,aAAa,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,EAAE,IAAI,OAAO,IAAI,WAAW,EAAE,CAAC;IACxF,MAAM,UAAU,GAAG,eAAe,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,yBAAyB,CAAC,GAAG,EAAE;QAC/C,UAAU;QACV,kBAAkB,EAAE,CAAC,MAAM,CAAC;QAC5B,eAAe,EAAE,WAAW,IAAI,YAAY,IAAI,SAAS;KAC1D,CAAC,CAAC;IAEH,OAAO;QACL,SAAS;QACT,IAAI;QACJ,GAAG;QACH,WAAW;QACX,gBAAgB;QAChB,gBAAgB;QAChB,GAAG;QACH,SAAS;QACT,QAAQ;QACR,cAAc;QACd,yBAAyB;QACzB,UAAU;QACV,UAAU;QACV,WAAW;QACX,YAAY;QACZ,aAAa;QACb,uBAAuB;QACrB,uBAAuB;QACzB,cAAc,EAAE;YACd,GAAG,cAAc;YACjB,YAAY,EAAE,iBAAiB;SAChC;KACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,GAA4B,EAAE,cAAuB;IAK9E,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC;IACrD,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,cAAc,EAAE,uCAAuC,CAAC,CAAC;IAChG,MAAM,oBAAoB,GAAG,QAAQ,CAAC,MAAM,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9E,MAAM,eAAe,GAAG,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7F,IAAI,kBAAkB,GAAG,EAAE,CAAC;IAC5B,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,IAAI,oBAAoB,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,oBAAoB,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;YAC7E,kBAAkB;gBAChB,GAAG,oBAAoB,MAAM;oBAC7B,iDAAiD,oBAAoB,IAAI;oBACzE,6CAA6C,eAAe,OAAO,CAAC;YACtE,YAAY,CAAC,IAAI,CACf,kCAAkC,oBAAoB,EAAE,EACxD,wFAAwF,eAAe,IAAI,CAC5G,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,MAAM,KAAK,CACT,QAAQ,EACR,gEAAgE,oBAAoB,MAAM,MAAM,IAAI,CACrG,CAAC;YACF,YAAY,CAAC,IAAI,CAAC,mCAAmC,oBAAoB,+BAA+B,CAAC,CAAC;QAC5G,CAAC;IACH,CAAC;IAED,MAAM,uBAAuB,GAAG,QAAQ,CAAC,MAAM,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;IAC7E,MAAM,YAAY,GAAG;QACnB,OAAO,EAAE,KAAK,CAAC,EAAE;QACjB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,KAAK;QACL,OAAO,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,SAAS,EAAE;QAChC,KAAK;QACL,GAAG,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE;QACvC,OAAO;KACR,CAAC;IACF,MAAM,uBAAuB,GAC3B,CAAC,cAAc,IAAI,uBAAuB,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAC1D,CAAC,CAAC,cAAc,CAAC,uBAAuB,EAAE,YAAY,CAAC,CAAC,IAAI,EAAE;QAC9D,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,UAAU,GAAG,yBAAyB,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC;IACxF,MAAM,0BAA0B,GAAG,cAAc,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3E,MAAM,wBAAwB,GAAG,0BAA0B,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC;IACtF,MAAM,cAAc,GAAG,0BAA0B,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;IACtG,MAAM,kBAAkB,GAAG,QAAQ,CAAC,OAAO,CAAC,+BAA+B,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACxF,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3E,MAAM,MAAM,GAAG,kBAAkB,CAAC;QAChC,wBAAwB;QACxB,uBAAuB;QACvB,UAAU;QACV,kBAAkB;QAClB,eAAe;QACf,cAAc;KACf,CAAC,CAAC;IAEH,OAAO;QACL,MAAM;QACN,YAAY;QACZ,aAAa,EAAE;YACb,WAAW,EAAE,MAAM,CAAC,MAAM;YAC1B,iBAAiB,EAAE,wBAAwB,CAAC,MAAM;YAClD,oBAAoB,EAAE,uBAAuB,CAAC,MAAM;YACpD,eAAe,EAAE,UAAU,CAAC,MAAM;YAClC,mBAAmB,EAAE,kBAAkB,CAAC,MAAM;YAC9C,gBAAgB,EAAE,eAAe,CAAC,MAAM;YACxC,oBAAoB,EAAE,cAAc,CAAC,MAAM;SAC5C;KACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,GAA4B,EAAE,OAAgC;IACvF,MAAM,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAC5D,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,GAA4B,EAAE,KAAsB;IAClF,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QAChC,MAAM,WAAW,CAAC,GAAG,EAAE;YACrB,IAAI,EAAE,iBAAiB;YACvB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,OAAO,EAAE,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;YAC1D,GAAG,EAAE,KAAK,CAAC,GAAG;SACf,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAC/B,MAAM,WAAW,CAAC,GAAG,EAAE;YACrB,IAAI,EAAE,gBAAgB;YACtB,IAAI,EAAE,KAAK,CAAC,KAAK,IAAI,UAAU;YAC/B,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,GAAG,EAAE,KAAK,CAAC,GAAG;SACf,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,WAAW,CAAC,GAAG,EAAE;YACrB,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,IAAI,EAAE,KAAK,CAAC,IAAI;SACjB,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC1B,MAAM,WAAW,CAAC,GAAG,EAAE;YACrB,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,KAAK,CAAC,UAAU,IAAI,WAAW;YACxC,UAAU,EAAE,KAAK,CAAC,UAAU;SAC7B,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,WAAW,CAAC,GAAG,EAAE;YACrB,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,MAA4B;IACtD,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC5C,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;AAC9B,CAAC;AAED,SAAS,aAAa,CAAC,GAAY;IACjC,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjE,MAAM,SAAS,GACb,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAQ,GAA0B,CAAC,IAAI,KAAK,QAAQ;QACpF,CAAC,CAAE,GAAwB,CAAC,IAAI;QAChC,CAAC,CAAC,IAAI,CAAC;IACX,MAAM,OAAO,GAAG,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;IACtG,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACpC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACnG,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO;YACL,SAAS,EAAE,oBAAoB;YAC/B,SAAS,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;SACjE,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO;YACL,SAAS,EAAE,qBAAqB;YAChC,SAAS,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE;SAC7C,CAAC;IACJ,CAAC;IACD,OAAO;QACL,SAAS,EAAE,oBAAoB;QAC/B,SAAS,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE;KACnC,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,GAAY;IACnC,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjE,OAAO,gEAAgE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACxF,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,KAIjC;IACC,MAAM,KAAK,GAAuC,EAAE,CAAC;IACrD,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;QAC5C,IAAI,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,KAAK,CAAC,MAAM;YAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACzE,CAAC;IACD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,KAAK,EAAE,CAAC;QACjC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,MAAM,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YACxB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,MAAM,EAAE,wBAAwB;YAChC,sBAAsB,EAAE,KAAK;SAC9B,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACrB,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CACxB,KAAoC,EACpC,OAAmB,EACnB,MAAwB;IAExB,OAAO,KAAK,EAAE,OAAO,KAAK,OAAO,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,OAAoB,EAAE;IAC5D,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,gBAAgB,CAAC;IAC7D,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,kBAAkB,CAAC;IAE3D,OAAO,KAAK,UAAU,gBAAgB,CAAC,GAA4B;QACjE,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;QAC7C,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,EAAE,2BAA2B,CAAC,CAAC;QACtF,MAAM,kBAAkB,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;QAEnF,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC9D,MAAM,SAAS,GAAG,mBAAmB,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;QAChE,MAAM,eAAe,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,EAAE,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;QACvG,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5E,MAAM,cAAc,GAAsB;YACxC,GAAG,EAAE,QAAQ,CAAC,GAAG;YACjB,YAAY,EAAE,kBAAkB,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACjE,aAAa,EAAE,QAAQ,CAAC,aAAa;YACrC,cAAc,EAAE,QAAQ,CAAC,cAAc;YACvC,yBAAyB,EAAE,QAAQ,CAAC,yBAAyB;YAC7D,SAAS,EAAE,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS;SAC5E,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,IAAI,aAAa,CAAC,cAAc,CAAC,CAAC;QACjE,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC,cAAc,CAAC,kBAAkB,EAAE,EAAE,CAAC,EAAE,CAAC;YAClE,MAAM,GAAG,CAAC,KAAK,CACb,QAAQ,EACR,6BAA6B,QAAQ,CAAC,cAAc,CAAC,kBAAkB,EAAE,EAAE,CAAC,oFAAoF,QAAQ,CAAC,GAAG,MAAM,CACnL,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,GAAG,MAAM,EAAE,MAAM,IAAI,IAAI,CAAC;QACpC,IAAI,cAAc,GAAG,OAAO,CAAC,MAAM,IAAI,eAAe,CAAC,CAAC;QACxD,IAAI,YAAY,GAAG,KAAK,CAAC;QAEzB,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,IAAI,CAAC;oBACH,MAAM,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC;wBACnC,UAAU,EAAE,QAAQ,CAAC,UAAU;wBAC/B,KAAK,EAAE,QAAQ,CAAC,SAAS;wBACzB,IAAI,EAAE,QAAQ,CAAC,IAAI;wBACnB,GAAG,EAAE,QAAQ,CAAC,GAAG;wBACjB,eAAe;qBAChB,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC;wBAAE,MAAM,GAAG,CAAC;oBACzD,YAAY,GAAG,IAAI,CAAC;oBACpB,cAAc,GAAG,KAAK,CAAC;oBACvB,MAAM,GAAG,CAAC,KAAK,CACb,QAAQ,EACR,oCAAoC,eAAe,oDAAoD,CACxG,CAAC;oBACF,MAAM,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC;wBACnC,UAAU,EAAE,QAAQ,CAAC,UAAU;wBAC/B,KAAK,EAAE,QAAQ,CAAC,SAAS;wBACzB,IAAI,EAAE,QAAQ,CAAC,IAAI;wBACnB,GAAG,EAAE,QAAQ,CAAC,GAAG;qBAClB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,MAAM,WAAW,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC;YACjF,OAAO;gBACL,QAAQ,EAAE,CAAC;gBACX,MAAM,EAAE,IAAI;gBACZ,QAAQ,EAAE,KAAK;gBACf,YAAY,EAAE,OAAO;gBACrB,GAAG,UAAU;gBACb,QAAQ,EAAE,MAAM;gBAChB,KAAK,EAAE,IAAI;gBACX,YAAY;gBACZ,UAAU,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE;gBACvC,OAAO,EAAE,OAAO;aACjB,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;gBACL,QAAQ,EAAE,CAAC;gBACX,MAAM,EAAE,IAAI;gBACZ,QAAQ,EAAE,KAAK;gBACf,YAAY,EAAE,+CAA+C;gBAC7D,SAAS,EAAE,oBAAoB;gBAC/B,QAAQ,EAAE,MAAM;gBAChB,KAAK,EAAE,IAAI;gBACX,UAAU,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE;gBACvC,OAAO,EAAE,+CAA+C;aACzD,CAAC;QACJ,CAAC;QACD,MAAM,aAAa,GAAG,MAAM,CAAC;QAC7B,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,GAAG,MAAM,WAAW,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QACvF,MAAM,SAAS,GAAG,kBAAkB,CAAC,CAAC,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC,CAAC;QACjF,MAAM,WAAW,CAAC,GAAG,EAAE;YACrB,IAAI,EAAE,cAAc;YACpB,KAAK,EAAE,QAAQ,CAAC,SAAS;YACzB,SAAS,EAAE,aAAa,CAAC,gBAAgB;YACzC,YAAY,EAAE,aAAa,CAAC,gBAAgB;YAC5C,cAAc,EAAE,aAAa,CAAC,cAAc;YAC5C,kBAAkB,EAAE,aAAa,CAAC,kBAAkB;YACpD,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,cAAc,EAAE,QAAQ,CAAC,cAAc;SACxC,CAAC,CAAC;QACH,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACf,MAAM,GAAG,CAAC,MAAM,CAAC;gBACf,WAAW,EAAE,YAAY;gBACzB,OAAO,EAAE,QAAQ,CAAC,YAAY,IAAI,QAAQ,CAAC,SAAS;gBACpD,GAAG,EAAE,QAAQ,CAAC,GAAG;gBACjB,YAAY,EAAE;oBACZ,2CAA2C,QAAQ,CAAC,IAAI,gBAAgB;oBACxE,mCAAmC,QAAQ,CAAC,cAAc,GAAG;oBAC7D,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,CAAC;wBACrD,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC;wBACjG,CAAC,CAAC,EAAE,CAAC;oBACP,GAAG,YAAY;iBAChB;gBACD,GAAG,EAAE,QAAQ,CAAC,SAAS;gBACvB,MAAM,EAAE,SAAS;gBACjB,aAAa;gBACb,OAAO,EAAE,GAAG,CAAC,OAAO;aACrB,CAAC,CAAC;QACL,CAAC;QAED,IAAI,gBAAgB,GAA+C,IAAI,CAAC;QACxE,IAAI,UAAU,GAA2B,IAAI,CAAC;QAC9C,IAAI,OAAO,GAA0B,IAAI,CAAC;QAC1C,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,MAAM,SAAS,GAAa,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YACnF,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;YACnC,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;oBACxB,QAAQ,GAAG,IAAI,CAAC;oBAChB,UAAU,EAAE,KAAK,EAAE,CAAC;oBACpB,KAAK,gBAAgB,EAAE,CAAC,mBAAmB,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACrF,CAAC,EAAE,SAAS,CAAC,CAAC;YAChB,CAAC;YACD,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC;gBAC7B,MAAM,EAAE,aAAa;gBACrB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,GAAG,CAAC,KAAK;gBACpB,SAAS;gBACT,MAAM,EAAE,UAAU,EAAE,MAAM;aAC3B,CAAC,CAAC;YACH,gBAAgB,GAAG,KAAK,EAAE,MAAc,EAAE,EAAE;gBAC1C,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAChC,CAAC,CAAC;YACF,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBACtC,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY;oBAAE,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC5D,MAAM,gBAAgB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACrC,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC;YACnC,IAAI,OAAO;gBAAE,YAAY,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,WAAW,IAAI,QAAQ,EAAE,CAAC;gBAChF,IAAI,iBAAiB,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,CAAC;oBACpF,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;gBAC1C,CAAC;gBACD,MAAM,OAAO,CAAC,KAAK,CAAC;oBAClB,MAAM,EAAE,aAAa;oBACrB,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,kBAAkB,QAAQ,CAAC,MAAM,EAAE;oBACpF,sBAAsB,EAAE,QAAQ,CAAC,MAAM,KAAK,WAAW,IAAI,QAAQ;iBACpE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACrB,CAAC;iBAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC1C,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;gBACtD,IAAI,QAAQ,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,CAAC;oBACrE,MAAM,OAAO,CAAC,KAAK,CAAC;wBAClB,MAAM,EAAE,aAAa;wBACrB,MAAM,EAAE,yCAAyC;wBACjD,sBAAsB,EAAE,KAAK;qBAC9B,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACrB,CAAC;qBAAM,CAAC;oBACN,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE;wBACnC,OAAO;wBACP,MAAM,EAAE,aAAa;wBACrB,WAAW,EAAE,QAAQ,CAAC,WAAW;wBACjC,UAAU,EAAE,GAAG,EAAE;qBAClB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,MAAM,YAAY,GAAG,QAAQ;gBAC3B,CAAC,CAAC,mBAAmB,QAAQ,CAAC,UAAU,GAAG;gBAC3C,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;YACjC,MAAM,kBAAkB,GAAG,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;YACvG,MAAM,WAAW,CAAC,GAAG,EAAE;gBACrB,IAAI,EAAE,QAAQ,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY;gBACpE,OAAO,EAAE,QAAQ,CAAC,MAAM;gBACxB,UAAU,EAAE,kBAAkB;gBAC9B,OAAO,EAAE,YAAY;aACtB,CAAC,CAAC;YACH,OAAO;gBACL,QAAQ,EAAE,QAAQ,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjD,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;gBACnC,QAAQ;gBACR,YAAY;gBACZ,SAAS,EAAE,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI;gBAC/F,SAAS,EAAE,aAAa,CAAC,gBAAgB,IAAI,aAAa,CAAC,kBAAkB;gBAC7E,aAAa,EAAE,kBAAkB,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;gBACtE,gBAAgB,EAAE,aAAa,CAAC,cAAc,IAAI,aAAa,CAAC,gBAAgB,IAAI,aAAa,CAAC,kBAAkB;gBACpH,QAAQ,EAAE,MAAM;gBAChB,KAAK,EAAE,IAAI;gBACX,WAAW,EAAE,SAAS;gBACtB,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE;oBACV,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,UAAU,EAAE,kBAAkB;oBAC9B,cAAc,EAAE,QAAQ,CAAC,cAAc;oBACvC,IAAI,EAAE,QAAQ,CAAC,IAAI;iBACpB;gBACD,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,kBAAkB,IAAI,QAAQ,CAAC,MAAM;gBAC3E,YAAY;aACb,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,OAAO;gBAAE,YAAY,CAAC,OAAO,CAAC,CAAC;YACnC,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,mBAAmB,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACxH,MAAM,MAAM,GAAG,gBAA8D,CAAC;YAC9E,IAAI,MAAM;gBAAE,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAClD,MAAM,OAAO,CAAC,KAAK,CAAC;gBAClB,MAAM,EAAE,aAAa;gBACrB,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,yBAAyB;gBAC1E,sBAAsB,EAAE,QAAQ;aACjC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACnB,IAAI,iBAAiB,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,CAAC;gBACpF,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAC1C,CAAC;YACD,MAAM,WAAW,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC;YACjF,OAAO;gBACL,QAAQ,EAAE,CAAC;gBACX,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;gBACnC,QAAQ;gBACR,YAAY,EAAE,OAAO;gBACrB,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS;gBAC3D,SAAS,EAAE,UAAU,CAAC,SAAS;gBAC/B,QAAQ,EAAE,MAAM;gBAChB,KAAK,EAAE,IAAI;gBACX,YAAY,EAAE,YAAY,IAAI,QAAQ;gBACtC,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;gBAC7B,OAAO,EAAE,OAAO;aACjB,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,uBAAuB,EAAE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=execute.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute.test.d.ts","sourceRoot":"","sources":["../../src/server/execute.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,330 @@
1
+ import fs from "node:fs/promises";
2
+ import os from "node:os";
3
+ import path from "node:path";
4
+ import { afterEach, describe, expect, it } from "vitest";
5
+ import { createAcpxLocalExecutor } from "./execute.js";
6
+ const tempRoots = [];
7
+ async function makeTempRoot() {
8
+ const root = await fs.mkdtemp(path.join(os.tmpdir(), "paperclip-acpx-skills-"));
9
+ tempRoots.push(root);
10
+ return root;
11
+ }
12
+ afterEach(async () => {
13
+ await Promise.all(tempRoots.splice(0).map((root) => fs.rm(root, { recursive: true, force: true })));
14
+ });
15
+ async function pathExists(candidate) {
16
+ return fs.access(candidate).then(() => true).catch(() => false);
17
+ }
18
+ async function onlyChildDir(parent) {
19
+ const entries = await fs.readdir(parent);
20
+ expect(entries).toHaveLength(1);
21
+ return path.join(parent, entries[0]);
22
+ }
23
+ async function createSkill(root, name, body = `---\nrequired: false\n---\n# ${name}\n`) {
24
+ const skillDir = path.join(root, name);
25
+ await fs.mkdir(skillDir, { recursive: true });
26
+ await fs.writeFile(path.join(skillDir, "SKILL.md"), body, "utf8");
27
+ return {
28
+ key: `paperclipai/test/${name}`,
29
+ runtimeName: name,
30
+ source: skillDir,
31
+ required: false,
32
+ };
33
+ }
34
+ function buildRuntime() {
35
+ return {
36
+ ensureSession: async () => ({
37
+ backendSessionId: "backend-session",
38
+ agentSessionId: "agent-session",
39
+ runtimeSessionName: "runtime-session",
40
+ }),
41
+ startTurn: () => ({
42
+ events: (async function* () {
43
+ yield { type: "done", stopReason: "end_turn" };
44
+ })(),
45
+ result: Promise.resolve({ status: "completed", stopReason: "end_turn" }),
46
+ cancel: async () => { },
47
+ }),
48
+ close: async () => { },
49
+ };
50
+ }
51
+ async function runExecutor(config) {
52
+ const runtimeOptions = [];
53
+ const meta = [];
54
+ const logs = [];
55
+ const execute = createAcpxLocalExecutor({
56
+ createRuntime: (options) => {
57
+ runtimeOptions.push(options);
58
+ return buildRuntime();
59
+ },
60
+ });
61
+ const result = await execute({
62
+ runId: "run-1",
63
+ agent: {
64
+ id: "agent-1",
65
+ companyId: "company-1",
66
+ },
67
+ runtime: {},
68
+ config,
69
+ context: {},
70
+ onLog: async (stream, text) => {
71
+ logs.push({ stream, text });
72
+ },
73
+ onMeta: async (payload) => {
74
+ meta.push(payload);
75
+ },
76
+ });
77
+ expect(result.exitCode).toBe(0);
78
+ return { logs, meta, runtimeOptions, result };
79
+ }
80
+ describe("acpx_local runtime skill isolation", () => {
81
+ it.skipIf(process.platform === "win32")("materializes ACPX Claude skills without symlinked descendants", async () => {
82
+ const root = await makeTempRoot();
83
+ const skillRoot = path.join(root, "skills");
84
+ const outsideRoot = path.join(root, "outside");
85
+ await fs.mkdir(outsideRoot, { recursive: true });
86
+ await fs.writeFile(path.join(outsideRoot, "secret.txt"), "do not expose", "utf8");
87
+ const skill = await createSkill(skillRoot, "danger");
88
+ await fs.symlink(path.join(outsideRoot, "secret.txt"), path.join(skill.source, "leak.txt"));
89
+ await fs.symlink(outsideRoot, path.join(skill.source, "leak-dir"));
90
+ const stateDir = path.join(root, "state");
91
+ const { meta } = await runExecutor({
92
+ agent: "claude",
93
+ stateDir,
94
+ paperclipRuntimeSkills: [skill],
95
+ paperclipSkillSync: { desiredSkills: [skill.key] },
96
+ });
97
+ const mountedRoot = await onlyChildDir(path.join(stateDir, "runtime-skills", "claude"));
98
+ const skillsHome = path.join(mountedRoot, ".claude", "skills");
99
+ const materializedSkill = path.join(skillsHome, skill.runtimeName);
100
+ expect(await fs.readFile(path.join(materializedSkill, "SKILL.md"), "utf8")).toContain("# danger");
101
+ expect(await pathExists(path.join(materializedSkill, "leak.txt"))).toBe(false);
102
+ expect(await pathExists(path.join(materializedSkill, "leak-dir"))).toBe(false);
103
+ expect(String(meta[0]?.prompt ?? "")).toContain(`Skill root: ${skillsHome}`);
104
+ });
105
+ it.skipIf(process.platform === "win32")("revokes removed ACPX Codex skills and skips symlinked descendants", async () => {
106
+ const root = await makeTempRoot();
107
+ const skillRoot = path.join(root, "skills");
108
+ const outsideRoot = path.join(root, "outside");
109
+ const codexHome = path.join(root, "codex-home");
110
+ await fs.mkdir(outsideRoot, { recursive: true });
111
+ await fs.writeFile(path.join(outsideRoot, "secret.txt"), "do not expose", "utf8");
112
+ const keep = await createSkill(skillRoot, "keep");
113
+ const remove = await createSkill(skillRoot, "remove");
114
+ await fs.symlink(path.join(outsideRoot, "secret.txt"), path.join(keep.source, "leak.txt"));
115
+ await fs.symlink(outsideRoot, path.join(keep.source, "leak-dir"));
116
+ const baseConfig = {
117
+ agent: "codex",
118
+ stateDir: path.join(root, "state"),
119
+ env: { CODEX_HOME: codexHome },
120
+ paperclipRuntimeSkills: [keep, remove],
121
+ };
122
+ await runExecutor({
123
+ ...baseConfig,
124
+ paperclipSkillSync: { desiredSkills: [keep.key, remove.key] },
125
+ });
126
+ expect(await pathExists(path.join(codexHome, "skills", remove.runtimeName, "SKILL.md"))).toBe(true);
127
+ await runExecutor({
128
+ ...baseConfig,
129
+ paperclipSkillSync: { desiredSkills: [keep.key] },
130
+ });
131
+ expect(await pathExists(path.join(codexHome, "skills", keep.runtimeName, "SKILL.md"))).toBe(true);
132
+ expect(await pathExists(path.join(codexHome, "skills", keep.runtimeName, "leak.txt"))).toBe(false);
133
+ expect(await pathExists(path.join(codexHome, "skills", keep.runtimeName, "leak-dir"))).toBe(false);
134
+ expect(await pathExists(path.join(codexHome, "skills", remove.runtimeName))).toBe(false);
135
+ });
136
+ it.skipIf(process.platform === "win32")("removes legacy ACPX Codex skill symlinks when a skill is no longer desired", async () => {
137
+ const root = await makeTempRoot();
138
+ const skillRoot = path.join(root, "skills");
139
+ const codexHome = path.join(root, "codex-home");
140
+ const legacy = await createSkill(skillRoot, "legacy");
141
+ const skillsHome = path.join(codexHome, "skills");
142
+ await fs.mkdir(skillsHome, { recursive: true });
143
+ await fs.symlink(legacy.source, path.join(skillsHome, legacy.runtimeName));
144
+ await runExecutor({
145
+ agent: "codex",
146
+ stateDir: path.join(root, "state"),
147
+ env: { CODEX_HOME: codexHome },
148
+ paperclipRuntimeSkills: [legacy],
149
+ paperclipSkillSync: { desiredSkills: [] },
150
+ });
151
+ expect(await pathExists(path.join(skillsHome, legacy.runtimeName))).toBe(false);
152
+ });
153
+ it.skipIf(process.platform === "win32")("replaces stale managed Codex auth files with source symlinks", async () => {
154
+ const root = await makeTempRoot();
155
+ const sourceCodexHome = path.join(root, "source-codex-home");
156
+ const paperclipHome = path.join(root, "paperclip-home");
157
+ const paperclipInstanceId = "test-instance";
158
+ const managedCodexHome = path.join(paperclipHome, "instances", paperclipInstanceId, "companies", "company-1", "codex-home");
159
+ await fs.mkdir(sourceCodexHome, { recursive: true });
160
+ await fs.mkdir(managedCodexHome, { recursive: true });
161
+ const sourceAuth = path.join(sourceCodexHome, "auth.json");
162
+ const managedAuth = path.join(managedCodexHome, "auth.json");
163
+ await fs.writeFile(sourceAuth, "{\"source\":true}", "utf8");
164
+ await fs.writeFile(managedAuth, "{\"stale\":true}", "utf8");
165
+ const previousCodexHome = process.env.CODEX_HOME;
166
+ const previousPaperclipHome = process.env.PAPERCLIP_HOME;
167
+ const previousPaperclipInstanceId = process.env.PAPERCLIP_INSTANCE_ID;
168
+ try {
169
+ process.env.CODEX_HOME = sourceCodexHome;
170
+ process.env.PAPERCLIP_HOME = paperclipHome;
171
+ process.env.PAPERCLIP_INSTANCE_ID = paperclipInstanceId;
172
+ await runExecutor({
173
+ agent: "codex",
174
+ stateDir: path.join(root, "state"),
175
+ paperclipRuntimeSkills: [],
176
+ paperclipSkillSync: { desiredSkills: [] },
177
+ });
178
+ }
179
+ finally {
180
+ if (previousCodexHome === undefined)
181
+ delete process.env.CODEX_HOME;
182
+ else
183
+ process.env.CODEX_HOME = previousCodexHome;
184
+ if (previousPaperclipHome === undefined)
185
+ delete process.env.PAPERCLIP_HOME;
186
+ else
187
+ process.env.PAPERCLIP_HOME = previousPaperclipHome;
188
+ if (previousPaperclipInstanceId === undefined)
189
+ delete process.env.PAPERCLIP_INSTANCE_ID;
190
+ else
191
+ process.env.PAPERCLIP_INSTANCE_ID = previousPaperclipInstanceId;
192
+ }
193
+ const authStat = await fs.lstat(managedAuth);
194
+ expect(authStat.isSymbolicLink()).toBe(true);
195
+ expect(path.resolve(path.dirname(managedAuth), await fs.readlink(managedAuth))).toBe(sourceAuth);
196
+ });
197
+ it("keeps fresh credential wrapper scripts across ACPX agent changes", async () => {
198
+ const root = await makeTempRoot();
199
+ const stateDir = path.join(root, "state");
200
+ const baseConfig = {
201
+ agentCommand: "node ./fake-acp.js",
202
+ stateDir,
203
+ };
204
+ await runExecutor({
205
+ ...baseConfig,
206
+ agent: "custom-a",
207
+ env: { PAPERCLIP_API_KEY: "old-key" },
208
+ });
209
+ await runExecutor({
210
+ ...baseConfig,
211
+ agent: "custom-b",
212
+ env: { PAPERCLIP_API_KEY: "new-key" },
213
+ });
214
+ const wrappers = await fs.readdir(path.join(stateDir, "wrappers"));
215
+ expect(wrappers.filter((name) => name.endsWith(".sh"))).toHaveLength(2);
216
+ expect(wrappers.filter((name) => name.endsWith(".env"))).toHaveLength(2);
217
+ expect(wrappers.some((name) => name.startsWith("custom-a-"))).toBe(true);
218
+ expect(wrappers.some((name) => name.startsWith("custom-b-"))).toBe(true);
219
+ const wrapperPath = path.join(stateDir, "wrappers", wrappers.find((name) => name.startsWith("custom-b-") && name.endsWith(".sh")));
220
+ const envPath = path.join(stateDir, "wrappers", wrappers.find((name) => name.startsWith("custom-b-") && name.endsWith(".env")));
221
+ const wrapper = await fs.readFile(wrapperPath, "utf8");
222
+ const env = await fs.readFile(envPath, "utf8");
223
+ expect((await fs.stat(envPath)).mode & 0o777).toBe(0o600);
224
+ expect((await fs.stat(wrapperPath)).mode & 0o777).toBe(0o700);
225
+ expect(wrapper).toContain("node ./fake-acp.js");
226
+ expect(wrapper).not.toContain("PAPERCLIP_API_KEY");
227
+ expect(wrapper).not.toContain("new-key");
228
+ expect(wrapper).not.toContain("old-key");
229
+ expect(env).toContain("PAPERCLIP_API_KEY='new-key'");
230
+ expect(env).not.toContain("old-key");
231
+ });
232
+ it("cleans aged credential wrapper scripts across ACPX agent changes", async () => {
233
+ const root = await makeTempRoot();
234
+ const stateDir = path.join(root, "state");
235
+ const wrappersDir = path.join(stateDir, "wrappers");
236
+ const baseConfig = {
237
+ agentCommand: "node ./fake-acp.js",
238
+ stateDir,
239
+ };
240
+ await runExecutor({
241
+ ...baseConfig,
242
+ agent: "custom-a",
243
+ env: { PAPERCLIP_API_KEY: "old-key" },
244
+ });
245
+ const oldDate = new Date(Date.now() - 16 * 60 * 1000);
246
+ await Promise.all((await fs.readdir(wrappersDir))
247
+ .filter((name) => name.startsWith("custom-a-"))
248
+ .map((name) => fs.utimes(path.join(wrappersDir, name), oldDate, oldDate)));
249
+ await runExecutor({
250
+ ...baseConfig,
251
+ agent: "custom-b",
252
+ env: { PAPERCLIP_API_KEY: "new-key" },
253
+ });
254
+ const wrappers = await fs.readdir(wrappersDir);
255
+ expect(wrappers.filter((name) => name.endsWith(".sh"))).toHaveLength(1);
256
+ expect(wrappers.filter((name) => name.endsWith(".env"))).toHaveLength(1);
257
+ expect(wrappers.some((name) => name.startsWith("custom-a-"))).toBe(false);
258
+ expect(wrappers.some((name) => name.startsWith("custom-b-"))).toBe(true);
259
+ });
260
+ it("keeps distinct wrapper env files for concurrent runs with different credentials", async () => {
261
+ const root = await makeTempRoot();
262
+ const stateDir = path.join(root, "state");
263
+ const baseConfig = {
264
+ agent: "custom-a",
265
+ agentCommand: "node ./fake-acp.js",
266
+ stateDir,
267
+ };
268
+ await runExecutor({
269
+ ...baseConfig,
270
+ env: { PAPERCLIP_API_KEY: "first-key" },
271
+ });
272
+ await runExecutor({
273
+ ...baseConfig,
274
+ env: { PAPERCLIP_API_KEY: "second-key" },
275
+ });
276
+ const envFileNames = (await fs.readdir(path.join(stateDir, "wrappers"))).filter((name) => name.endsWith(".env"));
277
+ expect(envFileNames).toHaveLength(2);
278
+ const envFiles = await Promise.all(envFileNames.map(async (name) => fs.readFile(path.join(stateDir, "wrappers", name), "utf8")));
279
+ expect(envFiles.filter((contents) => contents.includes("PAPERCLIP_API_KEY='first-key'"))).toHaveLength(1);
280
+ expect(envFiles.filter((contents) => contents.includes("PAPERCLIP_API_KEY='second-key'"))).toHaveLength(1);
281
+ });
282
+ it("passes Paperclip env through the ACP agent wrapper instead of process.env", async () => {
283
+ let observedApiKeyDuringStream;
284
+ const execute = createAcpxLocalExecutor({
285
+ createRuntime: () => ({
286
+ ensureSession: async () => ({
287
+ backendSessionId: "backend-session",
288
+ agentSessionId: "agent-session",
289
+ runtimeSessionName: "runtime-session",
290
+ }),
291
+ startTurn: () => ({
292
+ events: (async function* () {
293
+ await Promise.resolve();
294
+ observedApiKeyDuringStream = process.env.PAPERCLIP_API_KEY;
295
+ yield { type: "done", stopReason: "end_turn" };
296
+ })(),
297
+ result: Promise.resolve({ status: "completed", stopReason: "end_turn" }),
298
+ cancel: async () => { },
299
+ }),
300
+ close: async () => { },
301
+ }),
302
+ });
303
+ const previousApiKey = process.env.PAPERCLIP_API_KEY;
304
+ try {
305
+ delete process.env.PAPERCLIP_API_KEY;
306
+ const result = await execute({
307
+ runId: "run-1",
308
+ agent: {
309
+ id: "agent-1",
310
+ companyId: "company-1",
311
+ },
312
+ runtime: {},
313
+ config: { agent: "custom", agentCommand: "node ./fake-acp.js" },
314
+ context: {},
315
+ authToken: "runtime-key",
316
+ onLog: async () => { },
317
+ onMeta: async () => { },
318
+ });
319
+ expect(result.exitCode).toBe(0);
320
+ expect(observedApiKeyDuringStream).toBeUndefined();
321
+ }
322
+ finally {
323
+ if (previousApiKey === undefined)
324
+ delete process.env.PAPERCLIP_API_KEY;
325
+ else
326
+ process.env.PAPERCLIP_API_KEY = previousApiKey;
327
+ }
328
+ });
329
+ });
330
+ //# sourceMappingURL=execute.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute.test.js","sourceRoot":"","sources":["../../src/server/execute.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAEvD,MAAM,SAAS,GAAa,EAAE,CAAC;AAE/B,KAAK,UAAU,YAAY;IACzB,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,wBAAwB,CAAC,CAAC,CAAC;IAChF,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,CAAC,KAAK,IAAI,EAAE;IACnB,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACtG,CAAC,CAAC,CAAC;AAEH,KAAK,UAAU,UAAU,CAAC,SAAiB;IACzC,OAAO,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;AAClE,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,MAAc;IACxC,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACzC,MAAM,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAChC,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAE,CAAC,CAAC;AACxC,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,IAAY,EAAE,IAAY,EAAE,IAAI,GAAG,gCAAgC,IAAI,IAAI;IACpG,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACvC,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAClE,OAAO;QACL,GAAG,EAAE,oBAAoB,IAAI,EAAE;QAC/B,WAAW,EAAE,IAAI;QACjB,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,KAAK;KAChB,CAAC;AACJ,CAAC;AAED,SAAS,YAAY;IACnB,OAAO;QACL,aAAa,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;YAC1B,gBAAgB,EAAE,iBAAiB;YACnC,cAAc,EAAE,eAAe;YAC/B,kBAAkB,EAAE,iBAAiB;SACtC,CAAC;QACF,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;YAChB,MAAM,EAAE,CAAC,KAAK,SAAS,CAAC;gBACtB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;YACjD,CAAC,CAAC,EAAE;YACJ,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;YACxE,MAAM,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC;SACvB,CAAC;QACF,KAAK,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC;KACtB,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,MAA+B;IACxD,MAAM,cAAc,GAA8B,EAAE,CAAC;IACrD,MAAM,IAAI,GAA8B,EAAE,CAAC;IAC3C,MAAM,IAAI,GAA4C,EAAE,CAAC;IACzD,MAAM,OAAO,GAAG,uBAAuB,CAAC;QACtC,aAAa,EAAE,CAAC,OAAO,EAAE,EAAE;YACzB,cAAc,CAAC,IAAI,CAAC,OAA6C,CAAC,CAAC;YACnE,OAAO,YAAY,EAAW,CAAC;QACjC,CAAC;KACF,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;QAC3B,KAAK,EAAE,OAAO;QACd,KAAK,EAAE;YACL,EAAE,EAAE,SAAS;YACb,SAAS,EAAE,WAAW;SACvB;QACD,OAAO,EAAE,EAAE;QACX,MAAM;QACN,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,KAAK,EAAE,MAA2B,EAAE,IAAY,EAAE,EAAE;YACzD,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9B,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,OAAgB,EAAE,EAAE;YACjC,IAAI,CAAC,IAAI,CAAC,OAAkC,CAAC,CAAC;QAChD,CAAC;KACO,CAAC,CAAC;IAEZ,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAChC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC;AAChD,CAAC;AAED,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAClD,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;QAClH,MAAM,IAAI,GAAG,MAAM,YAAY,EAAE,CAAC;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC/C,MAAM,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACjD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC;QAClF,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACrD,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;QAC5F,MAAM,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;QAEnE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,WAAW,CAAC;YACjC,KAAK,EAAE,QAAQ;YACf,QAAQ;YACR,sBAAsB,EAAE,CAAC,KAAK,CAAC;YAC/B,kBAAkB,EAAE,EAAE,aAAa,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;SACnD,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC,CAAC;QACxF,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC/D,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;QACnE,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAClG,MAAM,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/E,MAAM,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/E,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,eAAe,UAAU,EAAE,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;QACtH,MAAM,IAAI,GAAG,MAAM,YAAY,EAAE,CAAC;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAChD,MAAM,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACjD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC;QAClF,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACtD,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;QAC3F,MAAM,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;QAElE,MAAM,UAAU,GAAG;YACjB,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC;YAClC,GAAG,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE;YAC9B,sBAAsB,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC;SACvC,CAAC;QAEF,MAAM,WAAW,CAAC;YAChB,GAAG,UAAU;YACb,kBAAkB,EAAE,EAAE,aAAa,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE;SAC9D,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEpG,MAAM,WAAW,CAAC;YAChB,GAAG,UAAU;YACb,kBAAkB,EAAE,EAAE,aAAa,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;SAClD,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClG,MAAM,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnG,MAAM,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnG,MAAM,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;QAC/H,MAAM,IAAI,GAAG,MAAM,YAAY,EAAE,CAAC;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACtD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAClD,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;QAE3E,MAAM,WAAW,CAAC;YAChB,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC;YAClC,GAAG,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE;YAC9B,sBAAsB,EAAE,CAAC,MAAM,CAAC;YAChC,kBAAkB,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE;SAC1C,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QACjH,MAAM,IAAI,GAAG,MAAM,YAAY,EAAE,CAAC;QAClC,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;QAC7D,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QACxD,MAAM,mBAAmB,GAAG,eAAe,CAAC;QAC5C,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAChC,aAAa,EACb,WAAW,EACX,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,YAAY,CACb,CAAC;QACF,MAAM,EAAE,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,MAAM,EAAE,CAAC,KAAK,CAAC,gBAAgB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACtD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;QAC3D,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;QAC7D,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,mBAAmB,EAAE,MAAM,CAAC,CAAC;QAC5D,MAAM,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,kBAAkB,EAAE,MAAM,CAAC,CAAC;QAE5D,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;QACjD,MAAM,qBAAqB,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QACzD,MAAM,2BAA2B,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;QACtE,IAAI,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,UAAU,GAAG,eAAe,CAAC;YACzC,OAAO,CAAC,GAAG,CAAC,cAAc,GAAG,aAAa,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,mBAAmB,CAAC;YACxD,MAAM,WAAW,CAAC;gBAChB,KAAK,EAAE,OAAO;gBACd,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC;gBAClC,sBAAsB,EAAE,EAAE;gBAC1B,kBAAkB,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE;aAC1C,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,IAAI,iBAAiB,KAAK,SAAS;gBAAE,OAAO,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;;gBAC9D,OAAO,CAAC,GAAG,CAAC,UAAU,GAAG,iBAAiB,CAAC;YAChD,IAAI,qBAAqB,KAAK,SAAS;gBAAE,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;;gBACtE,OAAO,CAAC,GAAG,CAAC,cAAc,GAAG,qBAAqB,CAAC;YACxD,IAAI,2BAA2B,KAAK,SAAS;gBAAE,OAAO,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;;gBACnF,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,2BAA2B,CAAC;QACvE,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC7C,MAAM,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACnG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;QAChF,MAAM,IAAI,GAAG,MAAM,YAAY,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,UAAU,GAAG;YACjB,YAAY,EAAE,oBAAoB;YAClC,QAAQ;SACT,CAAC;QAEF,MAAM,WAAW,CAAC;YAChB,GAAG,UAAU;YACb,KAAK,EAAE,UAAU;YACjB,GAAG,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE;SACtC,CAAC,CAAC;QACH,MAAM,WAAW,CAAC;YAChB,GAAG,UAAU;YACb,KAAK,EAAE,UAAU;YACjB,GAAG,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE;SACtC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;QACnE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACzE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzE,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAE,CAAC,CAAC;QACpI,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAE,CAAC,CAAC;QACjI,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACvD,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1D,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9D,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAChD,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QACnD,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACzC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACzC,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,6BAA6B,CAAC,CAAC;QACrD,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;QAChF,MAAM,IAAI,GAAG,MAAM,YAAY,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QACpD,MAAM,UAAU,GAAG;YACjB,YAAY,EAAE,oBAAoB;YAClC,QAAQ;SACT,CAAC;QAEF,MAAM,WAAW,CAAC;YAChB,GAAG,UAAU;YACb,KAAK,EAAE,UAAU;YACjB,GAAG,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE;SACtC,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QACtD,MAAM,OAAO,CAAC,GAAG,CACf,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;aAC5B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;aAC9C,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAC5E,CAAC;QAEF,MAAM,WAAW,CAAC;YAChB,GAAG,UAAU;YACb,KAAK,EAAE,UAAU;YACjB,GAAG,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE;SACtC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC/C,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACzE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1E,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;QAC/F,MAAM,IAAI,GAAG,MAAM,YAAY,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,UAAU,GAAG;YACjB,KAAK,EAAE,UAAU;YACjB,YAAY,EAAE,oBAAoB;YAClC,QAAQ;SACT,CAAC;QAEF,MAAM,WAAW,CAAC;YAChB,GAAG,UAAU;YACb,GAAG,EAAE,EAAE,iBAAiB,EAAE,WAAW,EAAE;SACxC,CAAC,CAAC;QACH,MAAM,WAAW,CAAC;YAChB,GAAG,UAAU;YACb,GAAG,EAAE,EAAE,iBAAiB,EAAE,YAAY,EAAE;SACzC,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QACjH,MAAM,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,CAC7F,CAAC;QACF,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,+BAA+B,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC1G,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,gCAAgC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC7G,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;QACzF,IAAI,0BAA8C,CAAC;QACnD,MAAM,OAAO,GAAG,uBAAuB,CAAC;YACtC,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;gBACpB,aAAa,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;oBAC1B,gBAAgB,EAAE,iBAAiB;oBACnC,cAAc,EAAE,eAAe;oBAC/B,kBAAkB,EAAE,iBAAiB;iBACtC,CAAC;gBACF,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;oBAChB,MAAM,EAAE,CAAC,KAAK,SAAS,CAAC;wBACtB,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;wBACxB,0BAA0B,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;wBAC3D,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;oBACjD,CAAC,CAAC,EAAE;oBACJ,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;oBACxE,MAAM,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC;iBACvB,CAAC;gBACF,KAAK,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC;aACtB,CAAU;SACZ,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;QACrD,IAAI,CAAC;YACH,OAAO,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;YACrC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;gBAC3B,KAAK,EAAE,OAAO;gBACd,KAAK,EAAE;oBACL,EAAE,EAAE,SAAS;oBACb,SAAS,EAAE,WAAW;iBACvB;gBACD,OAAO,EAAE,EAAE;gBACX,MAAM,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,oBAAoB,EAAE;gBAC/D,OAAO,EAAE,EAAE;gBACX,SAAS,EAAE,aAAa;gBACxB,KAAK,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC;gBACrB,MAAM,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC;aACd,CAAC,CAAC;YAEZ,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChC,MAAM,CAAC,0BAA0B,CAAC,CAAC,aAAa,EAAE,CAAC;QACrD,CAAC;gBAAS,CAAC;YACT,IAAI,cAAc,KAAK,SAAS;gBAAE,OAAO,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;;gBAClE,OAAO,CAAC,GAAG,CAAC,iBAAiB,GAAG,cAAc,CAAC;QACtD,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ export { execute, createAcpxLocalExecutor } from "./execute.js";
2
+ export { testEnvironment } from "./test.js";
3
+ export { getConfigSchema } from "./config-schema.js";
4
+ export { sessionCodec } from "./session-codec.js";
5
+ export { listAcpxSkills, syncAcpxSkills } from "./skills.js";
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,6 @@
1
+ export { execute, createAcpxLocalExecutor } from "./execute.js";
2
+ export { testEnvironment } from "./test.js";
3
+ export { getConfigSchema } from "./config-schema.js";
4
+ export { sessionCodec } from "./session-codec.js";
5
+ export { listAcpxSkills, syncAcpxSkills } from "./skills.js";
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { AdapterSessionCodec } from "@paperclipai/adapter-utils";
2
+ export declare const sessionCodec: AdapterSessionCodec;
3
+ //# sourceMappingURL=session-codec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-codec.d.ts","sourceRoot":"","sources":["../../src/server/session-codec.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAUtE,eAAO,MAAM,YAAY,EAAE,mBAuC1B,CAAC"}
@@ -0,0 +1,48 @@
1
+ function readString(value) {
2
+ return typeof value === "string" && value.trim().length > 0 ? value.trim() : null;
3
+ }
4
+ function readRecord(value) {
5
+ return typeof value === "object" && value !== null && !Array.isArray(value) ? { ...value } : null;
6
+ }
7
+ export const sessionCodec = {
8
+ deserialize(raw) {
9
+ if (typeof raw !== "object" || raw === null || Array.isArray(raw))
10
+ return null;
11
+ const record = raw;
12
+ const runtimeSessionName = readString(record.runtimeSessionName);
13
+ const acpSessionId = readString(record.acpSessionId);
14
+ const agentSessionId = readString(record.agentSessionId);
15
+ const remoteExecution = readRecord(record.remoteExecution);
16
+ if (!runtimeSessionName && !acpSessionId && !agentSessionId)
17
+ return null;
18
+ return {
19
+ ...(runtimeSessionName ? { runtimeSessionName } : {}),
20
+ ...(readString(record.sessionKey) ? { sessionKey: readString(record.sessionKey) } : {}),
21
+ ...(readString(record.acpxRecordId) ? { acpxRecordId: readString(record.acpxRecordId) } : {}),
22
+ ...(acpSessionId ? { acpSessionId } : {}),
23
+ ...(agentSessionId ? { agentSessionId } : {}),
24
+ ...(readString(record.agent) ? { agent: readString(record.agent) } : {}),
25
+ ...(readString(record.cwd) ? { cwd: readString(record.cwd) } : {}),
26
+ ...(readString(record.mode) ? { mode: readString(record.mode) } : {}),
27
+ ...(readString(record.stateDir) ? { stateDir: readString(record.stateDir) } : {}),
28
+ ...(readString(record.configFingerprint) ? { configFingerprint: readString(record.configFingerprint) } : {}),
29
+ ...(readString(record.workspaceId) ? { workspaceId: readString(record.workspaceId) } : {}),
30
+ ...(readString(record.repoUrl) ? { repoUrl: readString(record.repoUrl) } : {}),
31
+ ...(readString(record.repoRef) ? { repoRef: readString(record.repoRef) } : {}),
32
+ ...(remoteExecution ? { remoteExecution } : {}),
33
+ };
34
+ },
35
+ serialize(params) {
36
+ if (!params)
37
+ return null;
38
+ return this.deserialize(params);
39
+ },
40
+ getDisplayId(params) {
41
+ if (!params)
42
+ return null;
43
+ return (readString(params.runtimeSessionName) ??
44
+ readString(params.acpSessionId) ??
45
+ readString(params.agentSessionId));
46
+ },
47
+ };
48
+ //# sourceMappingURL=session-codec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-codec.js","sourceRoot":"","sources":["../../src/server/session-codec.ts"],"names":[],"mappings":"AAEA,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACpF,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,GAAI,KAAiC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACjI,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAwB;IAC/C,WAAW,CAAC,GAAY;QACtB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QAC/E,MAAM,MAAM,GAAG,GAA8B,CAAC;QAC9C,MAAM,kBAAkB,GAAG,UAAU,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACjE,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACrD,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACzD,MAAM,eAAe,GAAG,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAC3D,IAAI,CAAC,kBAAkB,IAAI,CAAC,YAAY,IAAI,CAAC,cAAc;YAAE,OAAO,IAAI,CAAC;QAEzE,OAAO;YACL,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvF,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7F,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7C,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxE,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClE,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrE,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjF,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,UAAU,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5G,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1F,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9E,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9E,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChD,CAAC;IACJ,CAAC;IACD,SAAS,CAAC,MAAsC;QAC9C,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QACzB,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IACD,YAAY,CAAC,MAAsC;QACjD,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QACzB,OAAO,CACL,UAAU,CAAC,MAAM,CAAC,kBAAkB,CAAC;YACrC,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC;YAC/B,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC,CAClC,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { AdapterSkillContext, AdapterSkillSnapshot } from "@paperclipai/adapter-utils";
2
+ export declare function listAcpxSkills(ctx: AdapterSkillContext): Promise<AdapterSkillSnapshot>;
3
+ export declare function syncAcpxSkills(ctx: AdapterSkillContext, _desiredSkills: string[]): Promise<AdapterSkillSnapshot>;
4
+ //# sourceMappingURL=skills.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../src/server/skills.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,mBAAmB,EAEnB,oBAAoB,EACrB,MAAM,4BAA4B,CAAC;AA0FpC,wBAAsB,cAAc,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAE5F;AAED,wBAAsB,cAAc,CAClC,GAAG,EAAE,mBAAmB,EACxB,cAAc,EAAE,MAAM,EAAE,GACvB,OAAO,CAAC,oBAAoB,CAAC,CAE/B"}