@lesliechan721/aw-plugin-core 0.1.0-beta.6 → 0.1.0-beta.60

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 (58) hide show
  1. package/dist/aw-capabilities.d.ts +27 -0
  2. package/dist/aw-capabilities.js +117 -0
  3. package/dist/aw-capabilities.js.map +1 -0
  4. package/dist/catalog-file-modes.d.ts +5 -0
  5. package/dist/catalog-file-modes.js +67 -0
  6. package/dist/catalog-file-modes.js.map +1 -0
  7. package/dist/catalog-workspace-resolution.d.ts +3 -0
  8. package/dist/catalog-workspace-resolution.js +34 -0
  9. package/dist/catalog-workspace-resolution.js.map +1 -0
  10. package/dist/generated/plugin-manifest-v3.d.ts +1532 -0
  11. package/dist/generated/{plugin-manifest-v1.js → plugin-manifest-v3.js} +1 -1
  12. package/dist/generated/plugin-manifest-v3.js.map +1 -0
  13. package/dist/index.d.ts +3 -2
  14. package/dist/index.js +2 -1
  15. package/dist/index.js.map +1 -1
  16. package/dist/managed-commands.d.ts +167 -0
  17. package/dist/managed-commands.js +463 -0
  18. package/dist/managed-commands.js.map +1 -0
  19. package/dist/manifest-contract.d.ts +3 -6
  20. package/dist/manifest-contract.js +271 -407
  21. package/dist/manifest-contract.js.map +1 -1
  22. package/dist/manifest-type-contract.d.ts +2 -2
  23. package/dist/manifest.d.ts +12 -8
  24. package/dist/manifest.js +18 -7
  25. package/dist/manifest.js.map +1 -1
  26. package/dist/native-runtime/reader-runtime.mjs +34 -0
  27. package/dist/native-runtime/reader.d.mts +6 -0
  28. package/dist/native-runtime/reader.mjs +11 -0
  29. package/dist/native-tools.d.ts +48 -0
  30. package/dist/native-tools.js +192 -0
  31. package/dist/native-tools.js.map +1 -0
  32. package/dist/plugin-authoring-capabilities.d.ts +1 -1
  33. package/dist/plugin-authoring-capabilities.js +133 -26
  34. package/dist/plugin-authoring-capabilities.js.map +1 -1
  35. package/dist/plugin-config.d.ts +47 -0
  36. package/dist/plugin-config.js +1355 -0
  37. package/dist/plugin-config.js.map +1 -0
  38. package/dist/plugin-requirements.d.ts +34 -0
  39. package/dist/plugin-requirements.js +300 -0
  40. package/dist/plugin-requirements.js.map +1 -0
  41. package/dist/plugin-script-contract.d.ts +11 -12
  42. package/dist/plugin-script-contract.js +44 -71
  43. package/dist/plugin-script-contract.js.map +1 -1
  44. package/dist/runtime-config.d.ts +38 -0
  45. package/dist/runtime-config.js +31 -0
  46. package/dist/runtime-config.js.map +1 -0
  47. package/dist/types.d.ts +266 -73
  48. package/dist/workspace.d.ts +37 -9
  49. package/dist/workspace.js +419 -191
  50. package/dist/workspace.js.map +1 -1
  51. package/package.json +16 -6
  52. package/schemas/plugin-manifest-v3.json +2655 -0
  53. package/dist/generated/plugin-manifest-v1.d.ts +0 -368
  54. package/dist/generated/plugin-manifest-v1.js.map +0 -1
  55. package/dist/plugin-release.d.ts +0 -30
  56. package/dist/plugin-release.js +0 -187
  57. package/dist/plugin-release.js.map +0 -1
  58. package/schemas/plugin-manifest-v1.json +0 -329
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-config.js","sourceRoot":"","sources":["../src/plugin-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AA8B9B,MAAM,kBAAkB,GAAG,0BAA0B,CAAA;AACrD,MAAM,kBAAkB,GAAG,0BAA0B,CAAA;AACrD,MAAM,YAAY,GAAG,6BAA6B,CAAA;AAClD,MAAM,cAAc,GAAG,kNAAkN,CAAA;AACzO,MAAM,gBAAgB,GAAG,2HAA2H,CAAA;AACpJ,MAAM,aAAa,GAAG,6BAA6B,CAAA;AACnD,MAAM,cAAc,GAAG,IAAI,GAAG,CAA2B;IACvD,YAAY;IACZ,MAAM;IACN,QAAQ;IACR,KAAK;IACL,UAAU;IACV,OAAO;CACR,CAAC,CAAA;AACF,MAAM,CAAC,MAAM,gCAAgC,GAAG,EAAE,CAAA;AAClD,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAA;AAC9C,sGAAsG;AACtG,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAA;AAC/C,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAA;AAChD,MAAM,CAAC,MAAM,+CAA+C,GAAG,CAAC,CAAA;AAChE,MAAM,CAAC,MAAM,qCAAqC,GAAG,GAAG,CAAA;AACxD,MAAM,CAAC,MAAM,qCAAqC,GAAG,GAAG,CAAA;AACxD,MAAM,CAAC,MAAM,6BAA6B,GAAG,GAAG,CAAA;AAChD,MAAM,CAAC,MAAM,6BAA6B,GAAG,MAAM,CAAA;AACnD,MAAM,qBAAqB,GAAG,EAAE,CAAA;AAChC,MAAM,uBAAuB,GAAG,GAAG,CAAA;AACnC,MAAM,sBAAsB,GAAG,IAAI,CAAA;AACnC,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,CAAA;AAEhF,SAAS,iBAAiB;IACxB,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAA0B,CAAA;AACrD,CAAC;AAED,SAAS,WAAW,CAClB,KAAwC,EACxC,QAAgB;IAEhB,OAAO,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;AAC5F,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAa;IACzC,OAAO,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;AACzC,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc,EAAE,IAAY;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,uBAAuB,CAAC,CAAA;IACzD,CAAC;IACD,OAAO,KAAgC,CAAA;AACzC,CAAC;AAED,SAAS,iBAAiB,CACxB,KAA8B,EAC9B,IAAY,EACZ,OAA0B;IAE1B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,oBAAoB,GAAG,IAAI,CAAC,CAAA;QAC7D,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,KAAc,EAAE,IAAY;IAClD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,gCAAgC,CAAC,CAAA;IAClE,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,YAAY,CAAC,KAAc,EAAE,IAAY;IAChD,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;AACtE,CAAC;AAED,SAAS,eAAe,CAAC,KAAc,EAAE,IAAY;IACnD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAA;IACzC,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,uBAAuB,CAAC,CAAA;IACzD,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,YAAY,CAAC,KAAc,EAAE,IAAY;IAChD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,6BAA6B,CAAC,CAAA;IAC/D,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc,EAAE,IAAY;IACtD,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACxC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,oCAAoC,CAAC,CAAA;IACtE,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,yBAAyB,CAChC,KAAc,EACd,IAAY;IAEZ,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACnC,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAA;IAC/E,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,KAAK,SAAS;QAC7C,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,IAAI,YAAY,CAAC,CAAA;IAC5D,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,KAAK,SAAS;QAC7C,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,IAAI,YAAY,CAAC,CAAA;IAC5D,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,GAAG,sBAAsB,EAAE,CAAC;QAClE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,gCAAgC,sBAAsB,GAAG,CAAC,CAAA;IAC3F,CAAC;IACD,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,GAAG,SAAS,EAAE,CAAC;QAChF,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,sDAAsD,CAAC,CAAA;IACxF,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,8BAA8B,CAAC,CAAA;IAChE,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,OAA6B,CAAA;IACnD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,MAAM,GAAG,uBAAuB,EAAE,CAAC;YAClD,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,8BAA8B,uBAAuB,uBAAuB,CAAC,CAAA;QAC9G,CAAC;QACD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,mDAAmD,CAAC,CAAA;QACrF,CAAC;QACD,IAAI,CAAC;YACH,IAAI,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;QACvB,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,oDAAoD,CAAC,CAAA;QACtF,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,KAAK,SAAS;QACvC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,IAAI,SAAS,CAA6B,CAAA;IAC9E,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,uCAAuC,MAAM,IAAI,CAAC,CAAA;IACnF,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,CAAA;AAClD,CAAC;AAED,SAAS,yBAAyB,CAChC,KAAc,EACd,IAAY;IAEZ,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACnC,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,CAAA;IAC/E,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,UAAU,CAAC,CAAA;IACjE,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,KAAK,SAAS;QACzC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,UAAU,CAAC,CAAA;IAClD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,KAAK,SAAS;QACzC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,UAAU,CAAC,CAAA;IAClD,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,KAAK,SAAS;QAC/C,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,IAAI,aAAa,CAAC,CAAA;IACxD,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,GAAG,OAAO,EAAE,CAAC;QACxE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,kDAAkD,CAAC,CAAA;IACpF,CAAC;IACD,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,mDAAmD,CAAC,CAAA;IACrF,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAA;AAClD,CAAC;AAED,SAAS,WAAW,CAClB,IAAY,EACZ,KAAa,EACb,OAAe,EACf,QAAiB;IAEjB,OAAO;QACL,IAAI;QACJ,IAAI,EAAE,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE;QAC9D,OAAO;QACP,WAAW,EAAE,IAAI;KAClB,CAAA;AACH,CAAC;AAED,SAAS,aAAa,CAAC,KAAkC,EAAE,KAAa;IACtE,OAAO;QACL,GAAG,KAAK;QACR,IAAI,EAAE;YACJ,GAAG,KAAK,CAAC,IAAI;YACb,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;uBAChE,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;SACxE;KACF,CAAA;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACrF,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;IAC9C,IAAI,SAAS,KAAK,MAAM,CAAC,SAAS,IAAI,SAAS,KAAK,IAAI;QAAE,OAAO,KAAK,CAAA;IACtE,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAC1C,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC,CAAA;AACzG,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAgB;IACxC,IAAI,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,SAAS;QAAE,OAAO,KAAK,CAAA;IAClE,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,KAAK,CAAA;IACpE,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACrD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC;YAAE,OAAO,KAAK,CAAA;IACxG,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa,EAAE,MAAgC;IAC1E,IAAI,MAAM,KAAK,YAAY;QAAE,OAAO,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAClE,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACtD,IAAI,MAAM,KAAK,QAAQ;QAAE,OAAO,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC1D,IAAI,MAAM,KAAK,UAAU;QAAE,OAAO,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC9D,IAAI,MAAM,KAAK,OAAO;QAAE,OAAO,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACxD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAA;QAC1B,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAA;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CACrB,KAAc,EACd,UAAoD,EACpD,KAAa,EACb,QAAiB;IAEjB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,oBAAoB,EAAE,QAAQ,CAAC,CAAC,CAAA;IACrE,CAAC;IACD,MAAM,MAAM,GAAkC,EAAE,CAAA;IAChD,IAAI,UAAU,EAAE,SAAS,KAAK,SAAS,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,MAAM,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC;QACpF,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,KAAK,EAAE,qBAAqB,UAAU,CAAC,SAAS,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAA;IACjH,CAAC;IACD,IAAI,UAAU,EAAE,SAAS,KAAK,SAAS,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,MAAM,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC;QACpF,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,KAAK,EAAE,oBAAoB,UAAU,CAAC,SAAS,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAA;IAChH,CAAC;IACD,IAAI,UAAU,EAAE,OAAO,KAAK,SAAS,IAAI,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACvF,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,EAAE,iCAAiC,UAAU,CAAC,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAA;IAC9G,CAAC;IACD,IAAI,UAAU,EAAE,MAAM,KAAK,SAAS,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACvF,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,YAAY,UAAU,CAAC,MAAM,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAA;IAC9F,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,cAAc,CACrB,KAAc,EACd,UAAoD,EACpD,KAAa,EACb,QAAiB;IAEjB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACzD,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,2BAA2B,EAAE,QAAQ,CAAC,CAAC,CAAA;IAC5E,CAAC;IACD,MAAM,MAAM,GAAkC,EAAE,CAAA;IAChD,IAAI,UAAU,EAAE,OAAO,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7D,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,EAAE,sBAAsB,EAAE,QAAQ,CAAC,CAAC,CAAA;IAC9E,CAAC;IACD,IAAI,UAAU,EAAE,OAAO,KAAK,SAAS,IAAI,KAAK,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC;QACpE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,EAAE,8CAA8C,UAAU,CAAC,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAA;IAC3H,CAAC;IACD,IAAI,UAAU,EAAE,OAAO,KAAK,SAAS,IAAI,KAAK,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC;QACpE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,EAAE,2CAA2C,UAAU,CAAC,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAA;IACxH,CAAC;IACD,IACE,UAAU,EAAE,UAAU,KAAK,SAAS;WACjC,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,EAC7F,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,KAAK,EAAE,0BAA0B,UAAU,CAAC,UAAU,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAA;IAC7G,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,mBAAmB,CAC1B,eAAkH,EAClH,KAAc,EACd,KAAa,EACb,QAAiB,EACjB,YAAY,GAAG,IAAI;IAEnB,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,KAAK,QAAQ;QAC9C,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,eAAe,CAAC,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC;QACpE,CAAC,CAAC,eAAe,CAAC,IAAI,KAAK,QAAQ;YACjC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,eAAe,CAAC,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC;YACpE,CAAC,CAAC,OAAO,KAAK,KAAK,SAAS;gBAC1B,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,qBAAqB,EAAE,QAAQ,CAAC,CAAC,CAAA;IACrE,IACE,YAAY;WACT,MAAM,CAAC,MAAM,KAAK,CAAC;WACnB,eAAe,CAAC,OAAO,EAAE,WAAW,KAAK,KAAK;WAC9C,uBAAuB,CAAC,eAA0C,EAAE,KAA0B,CAAC,KAAK,SAAS,EAChH,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,mCAAmC,EAAE,QAAQ,CAAC,CAAC,CAAA;IAC1F,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,eAAe,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,eAAe,CAAC,KAAK,EAAE,CAAC;QAClG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,EAAE,uCAAuC,EAAE,QAAQ,CAAC,CAAC,CAAA;IAC7F,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAQD,sFAAsF;AACtF,MAAM,UAAU,mCAAmC,CACjD,UAAmC,EACnC,KAAc,EACd,KAAK,GAAG,OAAO;IAEf,MAAM,UAAU,GAAG,EAAE,GAAG,UAAU,CAAC,UAAU,EAAE,CAAA;IAC/C,IAAI,UAAU,CAAC,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;IAC/G,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAA;IACpC,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;IACzD,MAAM,eAAe,GAAG,KAAK,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAA;IAC5F,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAA;IAC3D,MAAM,aAAa,GAAG,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAoC,CAAA;IACtG,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAA;IACjH,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;IACpD,MAAM,QAAQ,GAAG,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAkB,CAAA;IACxE,MAAM,QAAQ,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;IAC3F,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,EAAE,UAAU,EAAE,EAAE,GAAG,UAAU,EAAE,GAAG,QAAQ,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,CAAA;IACrH,CAAC;IACD,IAAI,CAAC,eAAe,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACzD,OAAO,EAAE,UAAU,EAAE,EAAE,GAAG,UAAU,EAAE,GAAG,QAAQ,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,CAAA;IACpH,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,EAAE,8CAA8C,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,EAAE,CAAA;AACxI,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAkC,EAAE,QAAgB;IAC5E,OAAO;QACL,GAAG,KAAK;QACR,IAAI,EAAE;YACJ,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK;YACvB,QAAQ;YACR,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;uBACnE,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;SACxE;KACF,CAAA;AACH,CAAC;AAED,SAAS,mBAAmB,CAC1B,eAAwC,EACxC,KAAc,EACd,KAAa,EACb,YAAY,GAAG,IAAI;IAEnB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,qBAAqB,CAAC,CAAC,CAAA;IAC5D,CAAC;IACD,MAAM,KAAK,GAAG,KAAgC,CAAA;IAC9C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC/B,MAAM,QAAQ,GAAG,mCAAmC,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IACnF,MAAM,MAAM,GAAkC,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;IAClE,IAAI,IAAI,CAAC,MAAM,GAAG,qBAAqB,EAAE,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,oBAAoB,qBAAqB,cAAc,CAAC,CAAC,CAAA;IAC3G,CAAC;IACD,IACE,eAAe,CAAC,UAAU,EAAE,aAAa,KAAK,SAAS;WACpD,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC,UAAU,CAAC,aAAa,EACzD,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,qBAAqB,eAAe,CAAC,UAAU,CAAC,aAAa,cAAc,CAAC,CAAC,CAAA;IAC/H,CAAC;IACD,IACE,eAAe,CAAC,UAAU,EAAE,aAAa,KAAK,SAAS;WACpD,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC,UAAU,CAAC,aAAa,EACzD,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,oBAAoB,eAAe,CAAC,UAAU,CAAC,aAAa,cAAc,CAAC,CAAC,CAAA;IAC9H,CAAC;IACD,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACpE,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC;YAC/D,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,+BAA+B,EAAE,QAAQ,CAAC,CAAC,CAAA;QACxF,CAAC;IACH,CAAC;IACD,KAAK,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3D,IAAI,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,KAAK,EAAE,sCAAsC,EAAE,QAAQ,CAAC,CAAC,CAAA;YACjG,SAAQ;QACV,CAAC;QACD,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QACxD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,IAAI,eAAe,CAAC,QAAQ,EAAE,aAAa,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;gBAAE,SAAQ;YAChG,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACtD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC7D,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,yBAAyB,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAA;gBAChG,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,CAAC,GAAG,yBAAyB,CAAC,KAAgC,EAAE,UAAU,EAAE,KAAK,CAAC;yBAC1F,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;gBACvD,CAAC;YACH,CAAC;;gBAAM,MAAM,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAA;YAC9E,SAAQ;QACV,CAAC;QACD,MAAM,YAAY,GAAG,eAAe,CAAC,oBAAoB,CAAA;QACzD,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,KAAK,EAAE,CAAC;YACzD,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE,KAAK,EAAE,qCAAqC,EAAE,QAAQ,CAAC,CAAC,CAAA;YACtG,SAAQ;QACV,CAAC;QACD,IAAI,eAAe,CAAC,UAAU,EAAE,GAAG,KAAK,SAAS,EAAE,CAAC;YAClD,MAAM,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,QAAQ,EAAE,eAAe,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAA;QAC3F,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAA;IAChF,CAAC;IACD,IACE,YAAY;WACT,MAAM,CAAC,MAAM,KAAK,CAAC;WACnB,eAAe,CAAC,OAAO,EAAE,WAAW,KAAK,KAAK;WAC9C,uBAAuB,CAAC,eAAe,EAAE,KAA2B,CAAC,KAAK,SAAS,EACtF,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,mCAAmC,CAAC,CAAC,CAAA;IAChF,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,kBAAkB,CACzB,eAAuC,EACvC,KAAc,EACd,KAAa,EACb,YAAY,GAAG,IAAI;IAEnB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,EAAE,GAAG,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,wCAAwC,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAA;IAC1H,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,GAAG,6BAA6B,EAAE,CAAC;QACjD,OAAO,CAAC,EAAE,GAAG,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,oBAAoB,6BAA6B,SAAS,CAAC;gBACrG,IAAI,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAA;IACzC,CAAC;IACD,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,EAAE,GAAG,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,wCAAwC,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAA;IAC1H,CAAC;IACD,MAAM,MAAM,GAAkC,EAAE,CAAA;IAChD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAA;IAC1B,MAAM,GAAG,GAAG,eAAe,CAAC,UAAU,EAAE,QAAQ,CAAA;IAChD,MAAM,GAAG,GAAG,eAAe,CAAC,UAAU,EAAE,QAAQ,IAAI,6BAA6B,CAAA;IACjF,IAAI,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,qBAAqB,GAAG,SAAS,CAAC,CAAC,CAAA;IACtG,IAAI,KAAK,GAAG,GAAG;QAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,oBAAoB,GAAG,SAAS,CAAC,CAAC,CAAA;IAC9F,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,MAAM,cAAc,GAAG,IAAI,GAAG,EAAsB,CAAA;IACpD,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QAC5C,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ;YACxD,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC;gBACtB,CAAC,CAAC,mBAAmB,CAAC,eAAe,CAAC,KAAgC,EAAE,IAAI,EAAE,KAAK,CAAC;gBACpF,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,yBAAyB,CAAC,CAAC;YAC3D,CAAC,CAAC,mBAAmB,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAC3D,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;QACtE,MAAM,QAAQ,GAAG,eAAe,CAAC,UAAU,EAAE,QAAQ,CAAA;QACrD,IAAI,QAAQ,KAAK,SAAS,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;YAChF,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;gBACnC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,6BAA6B,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;YAC5G,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAuB,CAAA;gBAChD,IAAI,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC5B,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,mCAAmC,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;gBAClH,CAAC;gBACD,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YACzB,CAAC;QACH,CAAC;QACD,IAAI,eAAe,CAAC,UAAU,EAAE,WAAW,KAAK,IAAI,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChF,MAAM,GAAG,GAAG,2BAA2B,CAAC,IAAyB,CAAC,CAAA;YAClE,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,aAAa,EAAE,KAAK,EAAE,wBAAwB,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;YAChG,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACf,CAAC;IACH,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,2BAA2B,CAAC,KAA0B,CAAC,EAAE,MAAM,CAAC,CAAA;QAChG,IAAI,KAAK,GAAG,6BAA6B,EAAE,CAAC;YAC1C,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,oBAAoB,6BAA6B,oBAAoB,CAAC,CAAC,CAAA;QACpH,CAAC;IACH,CAAC;IACD,IAAI,YAAY,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,eAAe,CAAC,OAAO,EAAE,WAAW,KAAK,KAAK;WACpF,uBAAuB,CAAC,eAAe,EAAE,KAA0B,CAAC,KAAK,SAAS,EAAE,CAAC;QACxF,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,mCAAmC,CAAC,CAAC,CAAA;IAChF,CAAC;IACD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS;QAC5D,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE;QAC1D,CAAC,CAAC,KAAK,CAAC,CAAA;AACZ,CAAC;AAED,SAAS,qBAAqB,CAC5B,KAAuC,EACvC,MAAe,EACf,KAAc;IAEd,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,UAAU,EAAE,MAAiC;YAC7C,KAAK,EAAE,KAAK;SACb,CAAA;IACH,CAAC;IACD,OAAO;QACL,UAAU,EAAE,KAAK;QACjB,KAAK,EAAE,MAAM;QACb,KAAK,EAAE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO;KACnD,CAAA;AACH,CAAC;AAYD,MAAM,UAAU,yBAAyB,CACvC,KAAuC,EACvC,MAAe,EACf,KAAe;IAEf,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;IAC5D,OAAO,QAAQ,CAAC,UAAU,CAAC,IAAI,KAAK,QAAQ;QAC1C,CAAC,CAAC,mBAAmB,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;QAC1E,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO;YACpC,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;YACzE,CAAC,CAAC,mBAAmB,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAA;AAChF,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,UAAkC,EAClC,KAAc;IAEd,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,EAAE,2BAA2B,CAAC,CAAC,CAAA;IACxE,CAAC;IACD,MAAM,KAAK,GAAG,KAAgC,CAAA;IAC9C,MAAM,MAAM,GAAkC,EAAE,CAAA;IAChD,KAAK,MAAM,CAAC,KAAK,EAAE,eAAe,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACzE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;YACjC,IAAI,eAAe,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;gBACtC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,4BAA4B,CAAC,CAAC,CAAA;YAC3E,CAAC;YACD,SAAQ;QACV,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,GAAG,yBAAyB,CAAC,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;IACjF,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACvC,IAAI,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,KAAK,EAAE,sCAAsC,CAAC,CAAC,CAAA;YACvF,SAAQ;QACV,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;YAC7C,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,KAAK,EAAE,uBAAuB,CAAC,CAAC,CAAA;QAC1E,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,MAAM,EAAE,GAAG,8BAA8B,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;AAC1G,CAAC;AAID,SAAS,aAAa,CAAC,UAAmC;IACxD,IAAI,UAAU,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,aAAa,CAAC,UAAU,CAAC,KAAgC,CAAC,CAAA;IAClG,IAAI,UAAU,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,CAAC,UAAU,CAAC,CAAA;IACrD,OAAO,UAAU,CAAC,UAAU,KAAK,SAAS;QACxC,CAAC,CAAC,CAAC,UAAU,CAAC,oBAA6D,CAAC;QAC5E,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;YAC/G,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;aACnG,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,KAAgC,CAAC,CAAC,CAAC,CAAA;AAC7H,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,6BAA6B,CAC3C,UAAkC,EAClC,IAAuB;IAEvB,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAA;IAChC,MAAM,KAAK,GAAG,CAAC,GAAW,EAAQ,EAAE;QAClC,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAM;QAC3B,MAAM,KAAK,GAAG,WAAW,CAA0B,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QAC1E,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAAA;QACxE,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACf,KAAK,MAAM,MAAM,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1C,IAAI,UAAU,IAAI,MAAM,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS;gBAAE,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QACzF,CAAC;IACH,CAAC,CAAA;IACD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IACnB,OAAO,CAAC,GAAG,MAAM,CAAC,CAAA;AACpB,CAAC;AAED,SAAS,8BAA8B,CACrC,UAAkC,EAClC,KAA8B,EAC9B,IAAuB;IAEvB,MAAM,MAAM,GAAkC,EAAE,CAAA;IAChD,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAA;IACvC,MAAM,OAAO,GAAG,IAAI,GAAG,EAA6D,CAAA;IACpF,MAAM,aAAa,GAAG,IAAI,GAAG,EAAuD,CAAA;IACpF,MAAM,KAAK,GAAG,CAAC,MAA0B,EAAE,KAAc,EAAE,KAAa,EAAE,WAAmC,EAAE,EAAQ,EAAE;QACvH,IAAI,CAAC,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS;YAAE,OAAM;QACpE,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAA;QAC3B,IAAI,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACnC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAE,CAAA;YAClD,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,CAAA;YACjD,MAAM,KAAK,GAAG,WAAW,KAAK,SAAS;gBACrC,CAAC,CAAC,YAAY,CAAC,QAAQ,KAAK,IAAI;gBAChC,CAAC,CAAC,yBAAyB,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAA;YAChF,MAAM,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAyB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;YACrF,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QAChC,CAAC;QACD,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,OAAe,EAAQ,EAAE;YAClD,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAqB,EAAE,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAA;YAC3F,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;YACzD,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ;gBAChE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAA;QACpF,CAAC,CAAA;QACD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAClB,GAAG,CAAC,gBAAgB,EAAE,sBAAsB,GAAG,CAAC,KAAK,6CAA6C,CAAC,CAAA;YACnG,OAAM;QACR,CAAC;QACD,IAAI,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACpC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YAC9B,KAAK,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC5D,IAAI,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAuB,CAAC,KAAK,IAAI,EAAE,CAAC;oBACzE,MAAM,OAAO,GAAG,GAAG,GAAG,CAAC,KAAK,KAAK,WAAW,KAAK,GAAG,CAAC,GAAG,EAAE,CAAA;oBAC1D,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;wBAChC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;wBAC1B,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,kBAAkB,EAAE,GAAG,CAAC,KAAK,EACjE,8DAA8D,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC,CAAA;oBAC3F,CAAC;gBACH,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAuB,CAAC,CAAA;YACnD,CAAC;YACD,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACjC,CAAC;QACD,IAAI,KAAK,KAAK,SAAS,IAAI,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,OAAM;QACvF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAA2B,CAAC,EAAE,CAAC;YAC9C,GAAG,CAAC,UAAU,EAAE,oDAAoD,GAAG,CAAC,KAAK,0EAA0E,CAAC,CAAA;QAC1J,CAAC;IACH,CAAC,CAAA;IACD,MAAM,IAAI,GAAG,CAAC,MAA+B,EAAE,KAAc,EAAE,KAAa,EAAE,WAAmC,EAAE,EAAQ,EAAE;QAC3H,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC5B,+EAA+E;YAC/E,KAAK,MAAM,MAAM,IAAI,aAAa,CAAC,MAAM,CAAC;gBAAE,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;YACrF,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,yBAAyB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzF,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAgC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;YAClH,CAAC;QACH,CAAC;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACpC,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;gBACpC,MAAM,QAAQ,GAAG,mCAAmC,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;gBAC1E,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;oBACpE,IAAI,CAAC,KAAgC,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,EACvG,KAAK,EAAE,CAAC,GAAG,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAA;gBACnC,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,MAAM,CAAC,oBAAoB,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;gBAC9D,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC5B,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;wBACtD,IAAI,CAAC,MAAM,CAAC,oBAA+C,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,GAAG,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAA;oBACrG,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;;YAAM,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;IAC9C,CAAC,CAAA;IACD,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,CAAE,CAAA;QACxC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,CAAA;IAChD,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED,gGAAgG;AAChG,MAAM,UAAU,6BAA6B,CAC3C,UAAkC,EAClC,MAAe,EACf,IAAwB;IAExB,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC;QAAE,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,EAAE,gCAAgC,CAAC,CAAC,CAAA;IAC1G,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,4BAA4B,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;IAC/E,MAAM,OAAO,GAAG,6BAA6B,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;IAC/D,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACtH,OAAO,4BAA4B,CAAC,EAAE,GAAG,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,UAAU,CAAC,MAAM,CAAC,GAAG,CAAE,CAAC,CAAC,CAAC,EAA4B,EAAE,SAAS,CAAC,CAAA;AAC/K,CAAC;AAED,+GAA+G;AAC/G,MAAM,UAAU,+BAA+B,CAC7C,UAAkC,EAClC,MAA+B,EAC/B,MAA+B;IAE/B,IAAI,CAAC,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;IAChG,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAA;IAC3B,MAAM,YAAY,GAAG,6BAA6B,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;IACnF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,CAAA;IACzE,8EAA8E;IAC9E,gFAAgF;IAChF,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,6BAA6B,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAClF,MAAM,kBAAkB,GAAG,8BAA8B,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;SAC1G,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;IACtD,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAA;IAErF,yFAAyF;IACzF,yFAAyF;IACzF,MAAM,cAAc,GAAG,YAAY,CAAA;IACnC,MAAM,mBAAmB,GAAG,EAAE,GAAG,UAAU,EAAE,MAAM,EAAE,EAAE,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC,EAAE,MAAM,EAAE,EAAE,CAAA;IACzG,MAAM,MAAM,GAAG,8BAA8B,CAAC,mBAA6C,EACzF,EAAE,GAAG,MAAM,EAAE,CAAC,cAAc,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAA;IAC/D,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,CAAA;IAErD,MAAM,OAAO,GAAG,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAyB,CAAA;IAC9E,MAAM,UAAU,GAAG;QACjB,GAAG,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACxE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACvB,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAuB,CAAA;YAClD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACpE,MAAM,KAAK,GAAG,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE;gBAC9D,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,KAAK,CAAC,GAAG,CAAA;YACzD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;QACzB,CAAC,CAAC;KACH,CAAA;IACD,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,yBAAyB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;AACzH,CAAC;AAED,SAAS,2BAA2B,CAClC,MAA+C,EAC/C,WAA+C,EAC/C,IAAY,EACZ,eAAe,GAAG,IAAI;IAEtB,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,KAAK,MAAM,MAAM,IAAI,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/C,IAAI,CAAC,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS;gBAAE,SAAQ;YACtE,IAAI,CAAC,eAAe;gBAAE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,2CAA2C,CAAC,CAAA;YACjG,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAA;YAC3B,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAA;YAC7C,IAAI,MAAM,EAAE,IAAI,KAAK,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;gBACxG,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,0DAA0D,CAAC,CAAA;YAC5F,CAAC;YACD,MAAM,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,GAAG,CAAC,CAAA;YACzD,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,UAAU,EAAE,QAAQ,KAAK,GAAG,CAAC,GAAG,EAAE,CAAC;gBAC7F,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,2EAA2E,CAAC,CAAA;YAC7G,CAAC;YACD,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC7F,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,uDAAuD,CAAC,CAAA;YACzF,CAAC;YACD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,KAAK,CAAC,CAAA;YACnG,IAAI,KAAK,EAAE,IAAI,KAAK,OAAO,IAAI,KAAK,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACxD,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,uDAAuD,CAAC,CAAA;YACzF,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,KAAwB;IACpE,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC3C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,6BAA6B,CAAC,IAAI,CAAC,CAAsB,CAAA;IAC9G,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACtF,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,6BAA6B,CAAC,KAAK,CAAC,CAAC,CAAC,CAChD,CAAA;AACzB,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,MAAmD;IAEnD,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;SAC7C,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACnE,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,6BAA6B,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AACxE,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,KAAwB;IAClE,OAAO,IAAI,CAAC,SAAS,CAAC,6BAA6B,CAAC,KAAK,CAAC,CAAC,CAAA;AAC7D,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,UAAmC,EACnC,KAAwB;IAExB,OAAO,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CACjD,2BAA2B,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,2BAA2B,CAAC,KAAK,CAAC,CAAC,CAAA;AACrF,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,UAAmC,EACnC,MAA0B,EAC1B,KAAK,GAAG,OAAO;IAEf,OAAO,UAAU,CAAC,IAAI,KAAK,QAAQ;QACjC,CAAC,CAAC,mBAAmB,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;QAC7D,CAAC,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO;YAC3B,CAAC,CAAC,kBAAkB,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;YAC5D,CAAC,CAAC,mBAAmB,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;AAC9E,CAAC;AAID,MAAM,UAAU,uBAAuB,CACrC,UAAmC,EACnC,KAAwB;IAExB,IAAI,UAAU,CAAC,IAAI,KAAK,QAAQ,IAAI,UAAU,CAAC,SAAS,KAAK,IAAI;QAAE,OAAO,YAAY,CAAA;IACtF,OAAO,KAAK,CAAA;AACd,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,KAAkC;IACxE,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS;QAC5C,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5I,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS;YACnC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK;YAClB,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAA;IAChD,OAAO,GAAG,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAA;AACpC,CAAC;AAED,SAAS,eAAe,CACtB,KAAc,EACd,IAAY;IAEZ,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACnC,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAA;IACtF,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,4BAA4B,CAAC,CAAA;IAC9D,CAAC;IACD,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,IAAI,KAAK,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;QAClE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,8BAA8B,CAAC,CAAA;IAChE,CAAC;IACD,OAAO;QACL,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,IAAI,KAAK,CAAC;QAC1C,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,IAAI,QAAQ,CAAC;QACnD,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,IAAI,cAAc,CAAC;QACnE,KAAK,EAAE,KAAK,CAAC,KAAc;QAC3B,WAAW,EAAE,KAAK,CAAC,WAA+B;KACnD,CAAA;AACH,CAAC;AAED,SAAS,gBAAgB,CACvB,KAAc,EACd,IAAY;IAEZ,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACnC,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,CAAA;IAC1D,IAAI,OAAO,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,mCAAmC,CAAC,CAAA;IACrE,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,8BAA8B,CAAC,CAAA;IAChE,CAAC;IACD,OAAO;QACL,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAC3C,eAAe,CAAQ,MAAM,EAAE,GAAG,IAAI,YAAY,KAAK,GAAG,CAAC,CAAC;KAC/D,CAAA;AACH,CAAC;AAED,SAAS,oBAAoB,CAC3B,KAAc,EACd,IAAY,EACZ,OAAyG;IAEzG,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACnC,MAAM,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,IAAI,OAAO,CAAC,CAAA;IACvD,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACjE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,6CAA6C,CAAC,CAAA;IAC/E,CAAC;IACD,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC,CAAA;IAChD,IAAI,OAAO,CAAC,YAAY;QAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACjD,IAAI,OAAO,CAAC,aAAa;QAAE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IACnD,IAAI,OAAO,CAAC,cAAc,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAC1E,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;IACnC,IAAI,OAAO,CAAC,UAAU;QAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC7C,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAClD,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;IACvC,MAAM,SAAS,GAAG,OAAO,CAAC,cAAc,IAAI,IAAI,KAAK,QAAQ;QAC3D,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,IAAI,YAAY,CAAC;QACvD,CAAC,CAAC,SAAS,CAAA;IACb,IAAI,SAAS,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,sDAAsD,CAAC,CAAA;IACxF,CAAC;IACD,IAAI,SAAS,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,oDAAoD,CAAC,CAAA;IACtF,CAAC;IACD,IAAI,SAAS,KAAK,IAAI,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACvD,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,8DAA8D,CAAC,CAAA;IAChG,CAAC;IACD,IAAI,SAAS,KAAK,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,qDAAqD,CAAC,CAAA;IACvF,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,KAAK,KAAK,IAAI;WAC5D,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,4CAA4C,IAAI,GAAG,CAAC,CAAA;IACrF,CAAC;IACD,IAAI,QAAgD,CAAA;IACpD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,IAAI,WAAW,CAAC,CAAA;QAC3D,iBAAiB,CAAC,MAAM,EAAE,GAAG,IAAI,WAAW,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAA;QACnF,IAAI,OAAyC,CAAA;QAC7C,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC;mBAClE,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,6BAA6B,EAAE,CAAC;gBAC3D,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,uCAAuC,6BAA6B,iBAAiB,CAAC,CAAA;YACvH,CAAC;YACD,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;gBACrC,IAAI,OAAO,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;oBAC5E,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,8CAA8C,IAAI,GAAG,CAAC,CAAA;gBACvF,CAAC;gBACD,OAAO,KAA2B,CAAA;YACpC,CAAC,CAAC,CAAA;YACF,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC7C,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,mDAAmD,CAAC,CAAA;YACrF,CAAC;YACD,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,GAAG,6BAA6B,EAAE,CAAC;gBACvF,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,uCAAuC,6BAA6B,oBAAoB,CAAC,CAAA;YAC1H,CAAC;QACH,CAAC;QACD,QAAQ,GAAG;YACT,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,iBAAiB,CAAC;YAC7D,GAAG,EAAE,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,IAAI,eAAe,CAAC;YACvD,KAAK,EAAE,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,iBAAiB,CAAC;YAC3D,OAAO;SACR,CAAA;IACH,CAAC;IACD,MAAM,MAAM,GAAG;QACb,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,IAAI,QAAQ,CAAC;QACjD,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,IAAI,cAAc,CAAC;QACnE,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnG,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;KAChD,CAAA;IACD,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS;QACtE,CAAC,CAAC,KAAK,CAAC,OAAO;QACf,CAAC,CAAC,SAAS,CAAA;IACb,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,OAAO;gBACL,IAAI;gBACJ,GAAG,MAAM;gBACT,SAAS,EAAE,IAAI;gBACf,UAAU,EAAE,KAAK,CAAC,UAAU,KAAK,SAAS;oBACxC,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,yBAAyB,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,IAAI,aAAa,CAAC;aACtE,CAAA;QACH,CAAC;QACD,OAAO;YACL,IAAI;YACJ,GAAG,MAAM;YACT,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1E,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChD,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,YAAkC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChF,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,SAAS;gBAClC,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,gBAAgB,CAAS,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,UAAU,CAAC;YAC9D,UAAU,EAAE,KAAK,CAAC,UAAU,KAAK,SAAS;gBACxC,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,yBAAyB,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,IAAI,aAAa,CAAC;SACtE,CAAA;IACH,CAAC;IACD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,OAAO;YACL,IAAI;YACJ,GAAG,MAAM;YACT,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1E,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,YAAkC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChF,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,SAAS;gBAClC,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,gBAAgB,CAAS,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,UAAU,CAAC;YAC9D,UAAU,EAAE,KAAK,CAAC,UAAU,KAAK,SAAS;gBACxC,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,yBAAyB,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,IAAI,aAAa,CAAC;SACtE,CAAA;IACH,CAAC;IACD,OAAO;QACL,IAAI;QACJ,GAAG,MAAM;QACT,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3E,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,YAAmC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjF,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,SAAS;YAClC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,gBAAgB,CAAU,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,UAAU,CAAC;KAChE,CAAA;AACH,CAAC;AAED,SAAS,aAAa,CACpB,UAAmC,EACnC,IAAY;IAEZ,IAAI,UAAU,CAAC,OAAO,KAAK,SAAS;QAAE,OAAM;IAC5C,IAAI,UAAU,CAAC,OAAO,CAAC,WAAW,KAAK,KAAK,IAAI,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxF,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,2EAA2E,CAAC,CAAA;IAC7G,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAA;IAC7B,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAA;IAChC,IAAI,gBAAgB,GAAG,CAAC,CAAA;IACxB,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;QACnE,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,oBAAoB,KAAK,8BAA8B,MAAM,CAAC,EAAE,IAAI,CAAC,CAAA;QACtG,CAAC;QACD,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAClB,MAAM,cAAc,GAAG,2BAA2B,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAChE,IAAI,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,oBAAoB,KAAK,kCAAkC,CAAC,CAAA;QAC7F,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;QAC1B,IAAI,MAAM,CAAC,WAAW,KAAK,IAAI;YAAE,gBAAgB,IAAI,CAAC,CAAA;QACtD,MAAM,MAAM,GAAG,0BAA0B,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QACnE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,oBAAoB,KAAK,YAAY,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC,CAAA;QAC5G,CAAC;IACH,CAAC;IACD,IAAI,gBAAgB,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,oDAAoD,CAAC,CAAA;IACtF,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,UAAmC,EAAE,IAAY;IAC/E,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;IAC/B,IAAI,UAAU,CAAC,IAAI,KAAK,QAAQ,IAAI,UAAU,CAAC,IAAI,KAAK,OAAO,IAAI,UAAU,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAClG,MAAM,MAAM,GAAG,mBAAmB,CAAC,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QACtE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,WAAW,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC,CAAA;IACzG,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAc,EAAE,IAAY,EAAE,EAAW;IACxE,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACnC,IAAI,UAA2C,CAAA;IAC/C,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC;QAC9D,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC;YACzE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,0DAA0D,CAAC,CAAA;QAC5F,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC;YACxG,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,oDAAoD,CAAC,CAAA;QACtF,CAAC;QACD,UAAU,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO;YAClC,CAAC,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;YAC9C,CAAC,CAAC,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAoC,CAAA;QAC/E,OAAQ,UAAoC,CAAC,OAAO,CAAA;IACtD,CAAC;SAAM,CAAC;QACN,UAAU,GAAG,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE;YAC7C,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE;SAChF,CAAoC,CAAA;IACvC,CAAC;IACD,sBAAsB,CAAC,UAAqC,EAAE,IAAI,CAAC,CAAA;IACnE,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,SAAS,uBAAuB,CAC9B,KAAc,EACd,UAA2D,EAC3D,IAAY;IAEZ,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACnC,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,eAAe,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,CAAA;IAClF,MAAM,aAAa,GAAG,cAAc,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,IAAI,gBAAgB,CAAC,CAAA;IAClF,IAAI,WAAW,CAAC,UAAU,EAAE,aAAa,CAAC,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,0DAA0D,CAAC,CAAA;IAC5F,CAAC;IACD,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,IAAI,QAAQ,CAAC,CAAA;IACzD,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,qBAAqB,EAAE,CAAC;QACjG,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,uBAAuB,qBAAqB,SAAS,CAAC,CAAA;IACvF,CAAC;IACD,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAAE,WAAmB,EAA6B,EAAE;QAC1F,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;QAC5C,iBAAiB,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;QACvD,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,WAAW,aAAa,CAAC,CAAA;QAC1E,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,qBAAqB,EAAE,CAAC;YAC1F,MAAM,IAAI,KAAK,CAAC,WAAW,WAAW,8DAA8D,qBAAqB,GAAG,CAAC,CAAA;QAC/H,CAAC;QACD,MAAM,MAAM,GAAG,iBAAiB,EAAmC,CAAA;QACnE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpD,IAAI,oBAAoB,CAAC,GAAG,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,WAAW,WAAW,oCAAoC,CAAC,CAAA;YAC1G,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,WAAW,WAAW,sDAAsD,GAAG,IAAI,CAAC,CAAA;YACxI,MAAM,CAAC,GAAG,CAAC,GAAG,uBAAuB,CAAC,KAAK,EAAE,GAAG,WAAW,eAAe,GAAG,EAAE,EAAE,IAAI,CAAC,CAAA;QACxF,CAAC;QACD,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;IAC/B,CAAC,CAAA;IACD,MAAM,KAAK,GAAG,iBAAiB,EAA6B,CAAA;IAC5D,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACzD,IAAI,oBAAoB,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,6BAA6B,CAAC,CAAA;QAC7F,KAAK,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,OAAO,EAAE,GAAG,IAAI,UAAU,IAAI,EAAE,CAAC,CAAA;IAClE,CAAC;IACD,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,UAAU,CAAC,CAAA;IAC9D,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;QAC5D,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,qCAAqC,CAAC,CAAA;IACvE,CAAC;IACD,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;QAC1E,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,gBAAgB,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,IAAI,YAAY,CAAC,EAAE,CAAC,EAAE,CAAA;AACrH,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAc,EAAE,IAAY,EAAE,EAAE,GAAG,KAAK;IACpE,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACnC,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE;QAC7B,MAAM;QACN,OAAO;QACP,aAAa;QACb,SAAS;QACT,UAAU;QACV,SAAS;QACT,YAAY;QACZ,sBAAsB;QACtB,YAAY;QACZ,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5B,CAAC,CAAA;IACF,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,oBAAoB,KAAK,SAAS,IAAI,KAAK,CAAC,oBAAoB,KAAK,KAAK,CAAC,EAAE,CAAC;QACzH,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,yEAAyE,CAAC,CAAA;IAC3G,CAAC;IACD,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,KAAK,CAAC,oBAAoB,KAAK,SAAS,IAAI,KAAK,CAAC,oBAAoB,KAAK,KAAK,EAAE,CAAC;QACvH,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,4DAA4D,CAAC,CAAA;IAC9F,CAAC;IACD,IAAI,UAAuE,CAAA;IAC3E,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,IAAI,aAAa,CAAC,CAAA;QACxE,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,GAAG,qBAAqB,EAAE,CAAC;YAChE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,iCAAiC,qBAAqB,cAAc,CAAC,CAAA;QACtG,CAAC;QACD,UAAU,GAAG,iBAAiB,EAAmC,CAAA;QACjE,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;YAChE,IAAI,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACnC,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,sCAAsC,QAAQ,mBAAmB,CAAC,CAAA;YACnG,CAAC;YACD,UAAU,CAAC,QAAQ,CAAC,GAAG,uBAAuB,CAAC,KAAK,EAAE,GAAG,IAAI,eAAe,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAA;QAC7F,CAAC;IACH,CAAC;IACD,IAAI,oBAAqE,CAAA;IACzE,IAAI,KAAK,CAAC,oBAAoB,KAAK,SAAS,IAAI,KAAK,CAAC,oBAAoB,KAAK,KAAK,EAAE,CAAC;QACrF,oBAAoB,GAAG,KAAK,CAAA;IAC9B,CAAC;SAAM,CAAC;QACN,oBAAoB,GAAG,oBAAoB,CACzC,KAAK,CAAC,oBAAoB,EAC1B,GAAG,IAAI,uBAAuB,EAC9B,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,CAC5C,CAAA;QAC1C,sBAAsB,CAAC,oBAA+C,EAAE,GAAG,IAAI,uBAAuB,CAAC,CAAA;IACzG,CAAC;IACD,IAAI,UAAiD,CAAA;IACrD,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,IAAI,aAAa,CAAC,CAAA;QACxE,iBAAiB,CAAC,eAAe,EAAE,GAAG,IAAI,aAAa,EAAE,CAAC,eAAe,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC,CAAA;QACnG,MAAM,aAAa,GAAG,eAAe,CAAC,aAAa,KAAK,SAAS;YAC/D,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,kBAAkB,CAAC,eAAe,CAAC,aAAa,EAAE,GAAG,IAAI,2BAA2B,CAAC,CAAA;QACzF,MAAM,aAAa,GAAG,eAAe,CAAC,aAAa,KAAK,SAAS;YAC/D,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,kBAAkB,CAAC,eAAe,CAAC,aAAa,EAAE,GAAG,IAAI,2BAA2B,CAAC,CAAA;QACzF,IAAI,aAAa,KAAK,SAAS,IAAI,aAAa,GAAG,qBAAqB,EAAE,CAAC;YACzE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,+CAA+C,qBAAqB,GAAG,CAAC,CAAA;QACzG,CAAC;QACD,IAAI,aAAa,KAAK,SAAS,IAAI,aAAa,GAAG,qBAAqB,EAAE,CAAC;YACzE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,+CAA+C,qBAAqB,GAAG,CAAC,CAAA;QACzG,CAAC;QACD,IAAI,aAAa,KAAK,SAAS,IAAI,aAAa,KAAK,SAAS,IAAI,aAAa,GAAG,aAAa,EAAE,CAAC;YAChG,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,yEAAyE,CAAC,CAAA;QAC3G,CAAC;QACD,UAAU,GAAG;YACX,aAAa;YACb,aAAa;YACb,GAAG,EAAE,eAAe,CAAC,GAAG,KAAK,SAAS;gBACpC,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,yBAAyB,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,IAAI,iBAAiB,CAAC;SAC7E,CAAA;IACH,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7D,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,6CAA6C,CAAC,CAAA;IAC/E,CAAC;IACD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,uBAAuB,CAAC,KAAK,CAAC,QAAQ,EAAE,UAAW,EAAE,GAAG,IAAI,WAAW,CAAC,CAAA;IACpI,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,IAAI,QAAQ,CAAC;QACjD,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,IAAI,cAAc,CAAC;QACnE,OAAO,EAAE,KAAK,CAAC,OAAyC;QACxD,QAAQ,EAAE,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,IAAI,WAAW,CAAC;QAC7D,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,SAAS;YAClC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,gBAAgB,CAAqB,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,UAAU,CAAC;QAC1E,GAAG,CAAC,UAAU,KAAK,SAAS;YAC1B,CAAC,CAAC,EAAE,oBAAoB,EAAE,oBAA6D,EAAE;YACzF,CAAC,CAAC,EAAE,UAAU,EAAE,oBAAoB,EAAE,KAAc,EAAE,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QAC1G,UAAU;KACgB,CAAA;AAC9B,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc,EAAE,IAAY,EAAE,EAAE,GAAG,KAAK,EAAE,eAAe,GAAG,KAAK;IAC5F,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACnC,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,CAAA;IACzH,MAAM,QAAQ,GAAG,GAAG,IAAI,QAAQ,CAAA;IAChC,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;IAC5C,KAAK,MAAM,SAAS,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,CAAC;QAC7D,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,WAAW,QAAQ,IAAI,SAAS,gCAAgC,SAAS,GAAG,CAAC,CAAA;QAC/F,CAAC;IACH,CAAC;IACD,IAAI,KAAiC,CAAA;IACrC,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,eAAe,EAAE,CAAC;QAC/C,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,GAAG,oBAAoB,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAA;QAC1G,KAAK,GAAG,UAAwC,CAAA;IAClD,CAAC;SAAM,CAAC;QACN,KAAK,GAAG,oBAAoB,CAAC,IAAI,EAAE,QAAQ,EAAE;YAC3C,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE;SACjF,CAA+B,CAAA;IAClC,CAAC;IACD,sBAAsB,CAAC,KAAgC,EAAE,QAAQ,CAAC,CAAA;IAClE,IAAI,UAAmD,CAAA;IACvD,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,IAAI,aAAa,CAAC,CAAA;QACtE,iBAAiB,CAAC,aAAa,EAAE,GAAG,IAAI,aAAa,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC,CAAA;QAC3G,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,KAAK,SAAS;YACnD,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,kBAAkB,CAAC,aAAa,CAAC,QAAQ,EAAE,GAAG,IAAI,sBAAsB,CAAC,CAAA;QAC7E,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,KAAK,SAAS;YACnD,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,kBAAkB,CAAC,aAAa,CAAC,QAAQ,EAAE,GAAG,IAAI,sBAAsB,CAAC,CAAA;QAC7E,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,GAAG,6BAA6B,EAAE,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,0CAA0C,6BAA6B,GAAG,CAAC,CAAA;QAC5G,CAAC;QACD,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,GAAG,CAAC,QAAQ,IAAI,6BAA6B,CAAC,EAAE,CAAC;YACrF,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,2DAA2D,CAAC,CAAA;QAC7F,CAAC;QACD,MAAM,QAAQ,GAAG,YAAY,CAAC,aAAa,CAAC,QAAQ,EAAE,GAAG,IAAI,sBAAsB,CAAC,CAAA;QACpF,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAC9H,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,cAAc,KAAK,SAAS;eACtD,cAAc,CAAC,IAAI,KAAK,OAAO,IAAI,cAAc,CAAC,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC;YAC1E,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,kEAAkE,CAAC,CAAA;QACpG,CAAC;QACD,UAAU,GAAG;YACX,QAAQ;YACR,QAAQ;YACR,WAAW,EAAE,eAAe,CAAC,aAAa,CAAC,WAAW,EAAE,GAAG,IAAI,yBAAyB,CAAC;YACzF,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;SAChD,CAAA;IACH,CAAC;IACD,OAAO;QACL,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,IAAI,QAAQ,CAAC;QACjD,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,IAAI,cAAc,CAAC;QACnE,OAAO,EAAE,KAAK,CAAC,OAAwC;QACvD,QAAQ,EAAE,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,IAAI,WAAW,CAAC;QAC7D,KAAK;QACL,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,SAAS;YAClC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,gBAAgB,CAAoB,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,UAAU,CAAC;QACzE,UAAU;KACX,CAAA;AACH,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,6BAA6B,CAAC,KAAa;IACzD,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,MAAM,GAAG,qCAAqC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACtG,MAAM,IAAI,KAAK,CAAC,gGAAgG,CAAC,CAAA;IACnH,CAAC;IACD,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACzE,IAAI,oBAAoB,CAAC,QAAQ,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;IAClG,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,sBAAsB,CAAC,KAA8B,EAAE,IAAY,EAAE,EAAE,GAAG,KAAK;IACtF,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,IAAI,cAAc,CAAC,CAAA;IAC7G,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,gCAAgC,EAAE,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,kCAAkC,gCAAgC,eAAe,CAAC,CAAA;IACnH,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;YACjE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,0CAA0C,IAAI,IAAI,CAAC,CAAA;QACpF,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,CAAC,KAAc,EAAE,SAAiB,EAAE,KAAe,EAAE,UAAoD,OAAO,EAA2B,EAAE;QAC1J,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;QACxC,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;YACjC,iBAAiB,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAA;YAC5F,MAAM,GAAG,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,SAAS,OAAO,CAAC,CAAA;YAC3D,MAAM,KAAK,GAAG,oDAAoD,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAC5E,MAAM,IAAI,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,CAAA;YACvB,IAAI,IAAI,KAAK,SAAS,IAAI,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC;gBAC1F,MAAM,IAAI,KAAK,CAAC,WAAW,SAAS,2DAA2D,CAAC,CAAA;YAClG,CAAC;YACD,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,WAAW,SAAS,uCAAuC,CAAC,CAAA;YACtG,IAAI,KAAK,CAAC,MAAM,IAAI,8BAA8B,EAAE,CAAC;gBACnD,MAAM,IAAI,KAAK,CAAC,WAAW,SAAS,2BAA2B,8BAA8B,mBAAmB,CAAC,CAAA;YACnH,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,gBAAgB,IAAI,EAAE,EAAE,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAA;YAClG,KAAK,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,CAAC;gBAClE,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC;oBAAE,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAA;YACzD,CAAC;YACD,OAAO,MAAM,CAAA;QACf,CAAC;QACD,MAAM,MAAM,GAAG,EAAE,GAAG,KAAK,EAAE,CAAA;QAC3B,IAAI,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,EAAE,IAAI,OAAO,KAAK,UAAU,CAAC;YAAE,OAAO,MAAM,CAAA;QAC1E,IAAI,OAAO,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,EAAE,CAAC;YAC1H,MAAM,IAAI,KAAK,CAAC,WAAW,SAAS,oDAAoD,CAAC,CAAA;QAC3F,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YACxD,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,SAAS,QAAQ,EAAE,KAAK,EAAE,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;QAC7G,CAAC;QACD,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,SAAS,aAAa,CAAC,CAAA;YACxE,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,qBAAqB,EAAE,CAAC;gBAC3D,MAAM,IAAI,KAAK,CAAC,WAAW,SAAS,iCAAiC,qBAAqB,cAAc,CAAC,CAAA;YAC3G,CAAC;YACD,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACrF,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,SAAS,eAAe,GAAG,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/E,CAAC;QACD,IAAI,KAAK,CAAC,oBAAoB,KAAK,SAAS,IAAI,KAAK,CAAC,oBAAoB,KAAK,KAAK,EAAE,CAAC;YACrF,MAAM,CAAC,oBAAoB,GAAG,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,GAAG,SAAS,uBAAuB,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;QACxH,CAAC;QACD,IAAI,EAAE,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,SAAS,WAAW,CAAC,CAAA;YAClE,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,SAAS,iBAAiB,CAAC,CAAA;YACrE,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,qBAAqB;gBAAE,MAAM,IAAI,KAAK,CAAC,WAAW,SAAS,qCAAqC,qBAAqB,SAAS,CAAC,CAAA;YAC/J,MAAM,aAAa,GAAG,CAAC,KAAc,EAAE,WAAmB,EAA2B,EAAE;gBACrF,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;gBAC5C,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,WAAW,aAAa,CAAC,CAAA;gBAC5E,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,qBAAqB;oBAAE,MAAM,IAAI,KAAK,CAAC,WAAW,WAAW,iCAAiC,qBAAqB,cAAc,CAAC,CAAA;gBACvK,OAAO,EAAE,GAAG,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAClG,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,WAAW,eAAe,GAAG,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YACnF,CAAC,CAAA;YACD,MAAM,CAAC,QAAQ,GAAG,EAAE,GAAG,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,CACvG,CAAC,IAAI,EAAE,aAAa,CAAC,OAAO,EAAE,GAAG,SAAS,mBAAmB,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;gBACzE,GAAG,CAAC,QAAQ,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC,SAAS,EAAE,GAAG,SAAS,qBAAqB,CAAC,EAAE,CAAC,EAAE,CAAA;QACpI,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;IACD,oFAAoF;IACpF,MAAM,qBAAqB,GAA8B,EAAE,CAAA;IAC3D,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QACxD,qBAAqB,CAAC,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,gBAAgB,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,IAAI,gBAAgB,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAA;IAC7I,CAAC;IACD,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,CAAA;IACvD,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,2BAA2B,EAAE,CAAC;QAC7D,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,6BAA6B,2BAA2B,UAAU,CAAC,CAAA;IACpG,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAC9E,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,WAAW,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IACrD,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,IAAI,MAAM,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,EAAE,CAAC;QAClJ,MAAM,gBAAgB,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACxF,CAAC,GAAG,EAAE,oBAAoB,CAAC,KAAK,EAAE,GAAG,IAAI,WAAW,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QACzE,2BAA2B,CAAC,gBAAgB,EAAE,qBAAqB,EAAE,GAAG,IAAI,cAAc,CAAC,CAAA;IAC7F,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,oBAAoB,CAAC,aAAsB,EAAE,IAAY,EAAE,UAAmB,EAAE,EAAE,GAAG,KAAK;IACjG,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC,CAAA;IAC9C,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,KAAK,QAAQ;QAC3C,CAAC,CAAC,oBAAoB,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;QAC1C,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO,IAAI,UAAU;YACvC,CAAC,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;YAC3C,CAAC,CAAC,oBAAoB,CAAC,QAAQ,EAAE,IAAI,EAAE;gBACrC,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE;aAC9E,CAA4B,CAAA;IAC/B,sBAAsB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;IACxC,IAAI,UAAU,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,yBAAyB,CAAC,UAAU,EAAE,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QAC9E,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,aAAa,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC,CAAA;IAC3G,CAAC;IACD,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,SAAS,wBAAwB,CAC/B,KAA8B,EAAE,MAA+C,EAAE,IAAY;IAE7F,MAAM,SAAS,GAA4C,iBAAiB,EAAE,CAAA;IAC9E,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,IAAI,YAAY,CAAC,CAAC,EAAE,CAAC;QAC9H,MAAM,WAAW,GAAG,GAAG,IAAI,cAAc,IAAI,EAAE,CAAA;QAC/C,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,oBAAoB,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,WAAW,WAAW,yBAAyB,CAAC,CAAA;QAClI,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC,CAAA;QAC1C,iBAAiB,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC,CAAA;QAClF,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,WAAW,WAAW,uBAAuB,CAAC,CAAA;QAC3F,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,+BAA+B,EAAE,CAAC;YACxH,MAAM,IAAI,KAAK,CAAC,WAAW,WAAW,uBAAuB,+BAA+B,SAAS,CAAC,CAAA;QACxG,CAAC;QACD,IAAI,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,+CAA+C,EAAE,CAAC;YAC7H,MAAM,IAAI,KAAK,CAAC,WAAW,WAAW,qDAAqD,CAAC,CAAA;QAC9F,CAAC;QACD,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,WAAW,WAAW,8BAA8B,CAAC,CAAA;QAC9G,SAAS,CAAC,IAAI,CAAC,GAAG;YAChB,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO;YACpE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;gBAC1C,MAAM,QAAQ,GAAG,GAAG,WAAW,UAAU,KAAK,GAAG,CAAA;gBACjD,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;gBACxC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;gBACrD,MAAM,YAAY,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,QAAQ,OAAO,CAAC,CAAA;gBAClE,IAAI,CAAC;oBAAC,6BAA6B,CAAC,YAAY,CAAC,CAAA;gBAAC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACjE,MAAM,IAAI,KAAK,CAAC,WAAW,QAAQ,UAAW,KAAe,CAAC,OAAO,EAAE,CAAC,CAAA;gBAC1E,CAAC;gBACD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;oBACxF,MAAM,IAAI,KAAK,CAAC,WAAW,QAAQ,uCAAuC,CAAC,CAAA;gBAC7E,CAAC;gBACD,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAA;YAC9F,CAAC,CAAC;SACH,CAAA;IACH,CAAC;IACD,MAAM,UAAU,GAAwG,iBAAiB,EAAE,CAAA;IAC3I,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,IAAI,aAAa,CAAC,CAAC,EAAE,CAAC;QAChI,MAAM,QAAQ,GAAG,GAAG,IAAI,eAAe,GAAG,EAAE,CAAA;QAC5C,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QACtC,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;QACpC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC,CAAA;QAC7D,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;QACtD,IAAI,WAAW,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC;YACnD,MAAM,IAAI,KAAK,CAAC,WAAW,QAAQ,2CAA2C,CAAC,CAAA;QACjF,CAAC;QACD,MAAM,WAAW,GAAG,WAAW;YAC7B,CAAC,CAAC,KAAK,EAAE,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YACpF,CAAC,CAAC,KAAK,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;QAChD,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,WAAW,QAAQ,6CAA6C,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAA;QAC5H,CAAC;QACD,MAAM,IAAI,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,QAAQ,IAAI,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAA;QACpI,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;QAC5C,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,WAAW,QAAQ,IAAI,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,oBAAoB,CAAC,CAAA;QACjH,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACjC,MAAM,YAAY,GAAG,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC7D,MAAM,YAAY,GAAG,CAAC,WAAW,CAAC,UAAU;gBAC1C,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;gBACxF,GAAG,CAAC,WAAW,CAAC,QAAQ,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;iBACrG,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;gBACtB,MAAM,QAAQ,GAAG,WAAW,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;gBACtD,OAAO,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;YACjD,CAAC,CAAC,CAAA;YACJ,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC;gBAC1H,MAAM,IAAI,KAAK,CAAC,WAAW,QAAQ,mBAAmB,IAAI,CAAC,IAAI,yCAAyC,CAAC,CAAA;YAC3G,CAAC;QACH,CAAC;QACD,UAAU,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC3E,CAAC;IACD,OAAO;QACL,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC;QACvD,GAAG,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC;KAC1D,CAAA;AACH,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,KAAc,EACd,IAAI,GAAG,QAAQ;IAEf,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACnC,MAAM,EAAE,GAAG,KAAK,CAAC,aAAa,KAAK,CAAC,CAAA;IACpC,MAAM,EAAE,GAAG,KAAK,CAAC,aAAa,KAAK,CAAC,IAAI,EAAE,CAAA;IAC1C,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,eAAe,EAAE,aAAa,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAA;IAC5H,MAAM,WAAW,GAAG,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,CAAA;IAC3G,MAAM,MAAM,GAAG,iBAAiB,EAA2B,CAAA;IAC3D,KAAK,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QACjE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;YACnE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,wBAAwB,KAAK,iBAAiB,CAAC,CAAA;QAChF,CAAC;QACD,MAAM,CAAC,KAAK,CAAC,GAAG,oBAAoB,CAAC,aAAa,EAAE,GAAG,IAAI,WAAW,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;IACxF,CAAC;IACD,2BAA2B,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;IACpE,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,CAC9F,UAAU,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IACzE,MAAM,aAAa,GAAG,8BAA8B,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACnH,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;IACpE,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,aAAa,uBAAuB,CAAC,aAAa,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC,CAAA;IAC3F,CAAC;IAED,IAAI,YAAoD,CAAA;IACxD,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACrC,MAAM,iBAAiB,GAAG,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,GAAG,IAAI,eAAe,CAAC,CAAA;QAC9E,iBAAiB,CAAC,iBAAiB,EAAE,GAAG,IAAI,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAA;QACrH,IAAI,iBAAiB,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;YACvF,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,0CAA0C,CAAC,CAAA;QAC5E,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAA;QAClC,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAA;QACvC,YAAY,GAAG;YACb,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,wBAAwB,CAAC,iBAAiB,EAAE,MAAM,EAAE,GAAG,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1F,MAAM,EAAG,iBAAiB,CAAC,MAAgC,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;gBACnF,MAAM,SAAS,GAAG,GAAG,IAAI,wBAAwB,KAAK,GAAG,CAAA;gBACzD,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;gBAC3C,iBAAiB,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAA;gBACzF,MAAM,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,SAAS,KAAK,CAAC,CAAA;gBACtD,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;oBACrB,MAAM,IAAI,KAAK,CAAC,WAAW,SAAS,4BAA4B,EAAE,IAAI,CAAC,CAAA;gBACzE,CAAC;gBACD,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBAChB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;oBACjC,MAAM,IAAI,KAAK,CAAC,WAAW,SAAS,6BAA6B,CAAC,CAAA;gBACpE,CAAC;gBACD,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;oBACzD,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,GAAG,SAAS,WAAW,UAAU,GAAG,CAAC,CAAA;oBACzE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;wBAClC,MAAM,IAAI,KAAK,CAAC,WAAW,SAAS,WAAW,UAAU,0BAA0B,KAAK,IAAI,CAAC,CAAA;oBAC/F,CAAC;oBACD,IAAI,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;wBAC7B,MAAM,IAAI,KAAK,CAAC,WAAW,SAAS,WAAW,UAAU,kBAAkB,KAAK,uCAAuC,CAAC,CAAA;oBAC1H,CAAC;oBACD,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;oBACxB,OAAO,KAAK,CAAA;gBACd,CAAC,CAAC,CAAA;gBACF,OAAO;oBACL,EAAE;oBACF,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,SAAS,QAAQ,CAAC;oBACxD,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,SAAS,cAAc,CAAC;oBACxE,MAAM,EAAE,WAAW;oBACnB,QAAQ,EAAE,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,SAAS,WAAW,CAAC;iBACnE,CAAA;YACH,CAAC,CAAC;SACH,CAAA;IACH,CAAC;IACD,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC,CAAU,CAAC,CAAC,CAAC,CAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,YAAY,EAA4B,CAAA;AAC3H,CAAC"}
@@ -0,0 +1,34 @@
1
+ import { type AwCapabilityId } from './aw-capabilities.js';
2
+ import type { NormalizedPluginManifest, PluginManifestSource } from './types.js';
3
+ export interface PluginRequirementObservation {
4
+ code: 'aw-command-detected' | 'aw-command-unmapped' | 'aw-command-dynamic';
5
+ blocking: false;
6
+ path: string;
7
+ provenance: 'shell-fence' | 'manifest-executable';
8
+ command?: string;
9
+ capability?: AwCapabilityId;
10
+ message: string;
11
+ }
12
+ export interface PluginRequirementsResolution {
13
+ schemaVersion: 1;
14
+ declared: AwCapabilityId[];
15
+ derived: AwCapabilityId[];
16
+ detected: AwCapabilityId[];
17
+ effective: AwCapabilityId[];
18
+ capabilitySetDigest: string;
19
+ unsupportedByCurrentAw: AwCapabilityId[];
20
+ observations: PluginRequirementObservation[];
21
+ }
22
+ export declare function deriveAwCapabilitiesFromManifest(manifest: PluginManifestSource | NormalizedPluginManifest): AwCapabilityId[];
23
+ export declare function scanPluginAwCliRequirements(options: {
24
+ pluginRoot: string;
25
+ manifest: PluginManifestSource | NormalizedPluginManifest;
26
+ }): Promise<{
27
+ detected: AwCapabilityId[];
28
+ observations: PluginRequirementObservation[];
29
+ }>;
30
+ export declare function resolvePluginRequirements(options: {
31
+ pluginRoot: string;
32
+ manifest: PluginManifestSource | NormalizedPluginManifest;
33
+ implementedCapabilities: readonly string[];
34
+ }): Promise<PluginRequirementsResolution>;
@@ -0,0 +1,300 @@
1
+ import path from 'node:path';
2
+ import fs from 'fs-extra';
3
+ import { normalizePluginConfigDefinition } from './plugin-config.js';
4
+ import { computeAwCapabilitySetDigest, normalizeAwCapabilities, } from './aw-capabilities.js';
5
+ import { resolvePlatformHookDefinitions } from './hooks-contract.js';
6
+ import { resolveSupportedPlatforms } from './platform-support.js';
7
+ function hasRuntimeImports(manifest) {
8
+ return (manifest.buildConfig?.runtimeExports?.length ?? 0) > 0
9
+ || (manifest.buildConfig?.buildImports?.length ?? 0) > 0
10
+ || (manifest.buildConfig?.skillRuntimeFiles ?? []).some((entry) => entry.import !== undefined)
11
+ || (manifest.artifacts?.targets ?? []).some((target) => (target.runtimeImports?.length ?? 0) > 0);
12
+ }
13
+ export function deriveAwCapabilitiesFromManifest(manifest) {
14
+ const capabilities = [];
15
+ if (manifest.schemaVersion === 3)
16
+ capabilities.push('aw.plugin-manifest.v3');
17
+ if (manifest.skills)
18
+ capabilities.push('aw.plugin-skills.v1');
19
+ if (manifest.nativeTools)
20
+ capabilities.push('aw.native-tools.v2');
21
+ if (manifest.buildConfig)
22
+ capabilities.push('aw.plugin-build-config.v1');
23
+ if (manifest.config)
24
+ capabilities.push('aw.plugin-config.v2');
25
+ if (manifest.config && 'schemaVersion' in manifest.config
26
+ && (manifest.config.schemaVersion === 3 || manifest.config.schemaVersion === 4)) {
27
+ capabilities.push('aw.plugin-config.v3');
28
+ if (manifest.config.schemaVersion === 4)
29
+ capabilities.push('aw.plugin-config.v4');
30
+ const configFields = Object.values(normalizePluginConfigDefinition(manifest.config).fields);
31
+ const hasArray = (field) => {
32
+ if (field.type === 'array')
33
+ return true;
34
+ if (field.type !== 'object' || field.properties === undefined)
35
+ return false;
36
+ return [field.properties, ...Object.values(field.variants?.cases ?? {}).map((variant) => variant.properties),
37
+ ...(field.variants?.otherwise === undefined ? [] : [field.variants.otherwise.properties])]
38
+ .some((properties) => Object.values(properties).some((property) => hasArray(property)));
39
+ };
40
+ if (configFields.some(hasArray)) {
41
+ capabilities.push('aw.plugin-config-array.v1');
42
+ }
43
+ if (configFields.some((field) => field.type === 'array' && field.validation?.uniqueBy !== undefined)) {
44
+ capabilities.push('aw.plugin-config-unique-by.v1');
45
+ }
46
+ const hasValueRef = (field) => {
47
+ if (field.type === 'array')
48
+ return hasValueRef(field.items);
49
+ if (field.type !== 'object')
50
+ return 'valueRef' in field && field.valueRef !== undefined;
51
+ return field.properties === undefined
52
+ ? hasValueRef(field.additionalProperties)
53
+ : [field.properties, ...Object.values(field.variants?.cases ?? {}).map((variant) => variant.properties),
54
+ ...(field.variants?.otherwise === undefined ? [] : [field.variants.otherwise.properties])]
55
+ .some((properties) => Object.values(properties).some((property) => hasValueRef(property)));
56
+ };
57
+ if (configFields.some(hasValueRef))
58
+ capabilities.push('aw.plugin-config-value-ref.v1');
59
+ const presentation = manifest.config.presentation;
60
+ if (presentation && (('summaries' in presentation && presentation.summaries)
61
+ || ('fieldViews' in presentation && presentation.fieldViews))) {
62
+ capabilities.push('aw.plugin-config-summary.v1');
63
+ }
64
+ }
65
+ const permissions = manifest.extensions?.permissions ?? [];
66
+ if (manifest.managedCommands !== undefined || permissions.some((entry) => [entry, entry.agentOverrides?.codex, entry.agentOverrides?.claude].some((permission) => permission && [permission.allow, permission.ask, permission.deny].some((items) => items?.some((item) => typeof item !== 'string'))))) {
67
+ capabilities.push('aw.managed-commands.v1');
68
+ }
69
+ if (permissions.some((entry) => entry.agentOverrides?.claude?.sandbox !== undefined)) {
70
+ capabilities.push('aw.managed-commands.v1', 'aw.claude.sandbox-exclusions.v1');
71
+ }
72
+ if (manifest.scripts?.preApply)
73
+ capabilities.push('aw.plugin-pre-apply.v1');
74
+ if ((manifest.artifacts?.targets?.length ?? 0) > 0)
75
+ capabilities.push('aw.dynamic-artifacts.v2');
76
+ if ((manifest.artifacts?.targets ?? []).some((target) => target.runtimeConfig !== undefined)) {
77
+ capabilities.push('aw.installed-runtime-config.v2');
78
+ }
79
+ if (manifest.distributions?.agentSkills)
80
+ capabilities.push('aw.portable-skills.v1');
81
+ if (hasRuntimeImports(manifest))
82
+ capabilities.push('aw.runtime-imports.v1');
83
+ return normalizeAwCapabilities(capabilities);
84
+ }
85
+ const COMMAND_CAPABILITIES = {
86
+ 'self describe': 'aw.self-check.v1',
87
+ 'self check': 'aw.self-check.v1',
88
+ 'skill validate': 'aw.skill-validation.v1',
89
+ 'skill eval': 'aw.skill-eval.v2',
90
+ 'plugin capabilities': 'aw.plugin-authoring.v1',
91
+ 'plugin init': 'aw.plugin-authoring.v1',
92
+ 'plugin add-skill': 'aw.plugin-authoring.v1',
93
+ 'plugin remove': 'aw.plugin-authoring.v1',
94
+ 'plugin validate': 'aw.plugin-authoring.v1',
95
+ 'plugin test': 'aw.plugin-authoring.v1',
96
+ 'plugin build': 'aw.plugin-authoring.v1',
97
+ 'plugin status': 'aw.plugin-authoring.v1',
98
+ 'plugin requirements': 'aw.plugin-authoring.v1',
99
+ 'catalog init': 'aw.catalog-authoring.v1',
100
+ 'catalog status': 'aw.catalog-authoring.v1',
101
+ 'catalog version': 'aw.catalog-authoring.v1',
102
+ 'catalog build': 'aw.catalog-authoring.v1',
103
+ 'catalog validate': 'aw.catalog-authoring.v1',
104
+ 'catalog publish': 'aw.catalog-publication.v1',
105
+ 'review inspect': 'aw.review-inspection.v2',
106
+ 'review prepare': 'aw.review-preparation.v1',
107
+ };
108
+ const CONFIG_CAPABILITY = 'aw.plugin-config.v2';
109
+ const CATALOG_SOURCE_CAPABILITY = 'aw.catalog-source.v2';
110
+ const CATALOG_DEV_SOURCE_CAPABILITY = 'aw.catalog-dev-source.v1';
111
+ function commandCapabilities(group, command, tail) {
112
+ if (command === undefined)
113
+ return [];
114
+ if (group === 'command')
115
+ return ['aw.managed-commands.v1'];
116
+ if (group === 'config')
117
+ return [CONFIG_CAPABILITY];
118
+ if (group === 'catalog' && command === 'source')
119
+ return [CATALOG_SOURCE_CAPABILITY];
120
+ if (group === 'catalog' && command === 'dev')
121
+ return [CATALOG_DEV_SOURCE_CAPABILITY];
122
+ if (group === 'catalog' && command === 'status' && /(?:^|\s)--preflight(?:\s|$)/u.test(tail)) {
123
+ return [];
124
+ }
125
+ const capability = COMMAND_CAPABILITIES[`${group} ${command}`];
126
+ return capability ? [capability] : [];
127
+ }
128
+ const AW_COMMAND_AT_START = /^aw[ \t]+([a-z][a-z0-9-]*)(?:[ \t]+([a-z][a-z0-9-]*))?(.*)$/u;
129
+ const AW_SHELL_SEGMENT = /(?:^|&&|\|\||[;|&])\s*((?:\$\s+)?aw(?:[ \t]+.*?))(?=\s*(?:&&|\|\||[;|&]|$))/gu;
130
+ const SHELL_FENCE_LANGUAGES = new Set(['bash', 'sh', 'shell', 'zsh']);
131
+ function scanAwCommand(value) {
132
+ const command = value.trim().replace(/^\$\s+/u, '');
133
+ const match = AW_COMMAND_AT_START.exec(command);
134
+ if (!match)
135
+ return { command };
136
+ return {
137
+ command,
138
+ literal: {
139
+ group: match[1],
140
+ ...(match[2] === undefined ? {} : { command: match[2] }),
141
+ tail: match[3] ?? '',
142
+ },
143
+ };
144
+ }
145
+ function shellFenceCommands(content) {
146
+ const commands = [];
147
+ let fence = null;
148
+ for (const line of content.split(/\r?\n/u)) {
149
+ const fenceMatch = /^\s{0,3}(`{3,}|~{3,})\s*([A-Za-z0-9_-]+)?\s*$/u.exec(line);
150
+ if (fenceMatch) {
151
+ const delimiter = fenceMatch[1];
152
+ if (fence === null) {
153
+ fence = {
154
+ marker: delimiter[0],
155
+ length: delimiter.length,
156
+ shell: SHELL_FENCE_LANGUAGES.has(fenceMatch[2] ?? ''),
157
+ };
158
+ continue;
159
+ }
160
+ if (delimiter[0] === fence.marker && delimiter.length >= fence.length) {
161
+ fence = null;
162
+ continue;
163
+ }
164
+ }
165
+ if (!fence?.shell)
166
+ continue;
167
+ for (const match of line.matchAll(AW_SHELL_SEGMENT)) {
168
+ commands.push(scanAwCommand(match[1] ?? ''));
169
+ }
170
+ }
171
+ return commands;
172
+ }
173
+ function skillCollectionRoot(pluginRoot, value) {
174
+ const root = path.resolve(pluginRoot, value);
175
+ const relative = path.relative(pluginRoot, root);
176
+ return relative === '' || relative === '..' || relative.startsWith(`..${path.sep}`) || path.isAbsolute(relative)
177
+ ? null
178
+ : root;
179
+ }
180
+ async function actualSkillMainFiles(pluginRoot, value) {
181
+ const collectionRoot = skillCollectionRoot(pluginRoot, value);
182
+ if (!collectionRoot)
183
+ return [];
184
+ const entries = await fs.readdir(collectionRoot, { withFileTypes: true }).catch(() => []);
185
+ const files = [];
186
+ for (const entry of entries) {
187
+ if (!entry.isDirectory() || entry.isSymbolicLink())
188
+ continue;
189
+ const skillMain = path.join(collectionRoot, entry.name, 'SKILL.md');
190
+ const stat = await fs.lstat(skillMain).catch(() => null);
191
+ if (stat?.isFile() && !stat.isSymbolicLink())
192
+ files.push(skillMain);
193
+ }
194
+ return files.sort((left, right) => left < right ? -1 : left > right ? 1 : 0);
195
+ }
196
+ function manifestExecutableCommands(manifest) {
197
+ const commands = new Set();
198
+ for (const platform of resolveSupportedPlatforms(manifest)) {
199
+ for (const hook of resolvePlatformHookDefinitions(manifest, platform)) {
200
+ const command = hook.command.trim();
201
+ if (/^(?:\$\s+)?aw(?:\s|$)/u.test(command))
202
+ commands.add(command);
203
+ }
204
+ }
205
+ return [...commands].sort().map(scanAwCommand);
206
+ }
207
+ export async function scanPluginAwCliRequirements(options) {
208
+ const observations = [];
209
+ const observationKeys = new Set();
210
+ const detected = [];
211
+ const observe = (observation) => {
212
+ const key = JSON.stringify([
213
+ observation.code,
214
+ observation.path,
215
+ observation.provenance,
216
+ observation.command,
217
+ observation.capability,
218
+ ]);
219
+ if (observationKeys.has(key))
220
+ return;
221
+ observationKeys.add(key);
222
+ observations.push(observation);
223
+ };
224
+ const record = (observationPath, provenance, scanned) => {
225
+ if (!scanned.literal) {
226
+ observe({
227
+ code: 'aw-command-dynamic',
228
+ blocking: false,
229
+ path: observationPath,
230
+ provenance,
231
+ command: scanned.command,
232
+ message: `AW CLI command cannot be mapped statically: ${scanned.command}.`,
233
+ });
234
+ return;
235
+ }
236
+ const command = [scanned.literal.group, scanned.literal.command].filter(Boolean).join(' ');
237
+ const capabilities = commandCapabilities(scanned.literal.group, scanned.literal.command, scanned.literal.tail);
238
+ if (capabilities.length === 0) {
239
+ observe({
240
+ code: 'aw-command-unmapped',
241
+ blocking: false,
242
+ path: observationPath,
243
+ provenance,
244
+ command: `aw ${command}`,
245
+ message: `AW CLI command has no capability mapping: aw ${command}.`,
246
+ });
247
+ return;
248
+ }
249
+ for (const capability of capabilities) {
250
+ detected.push(capability);
251
+ observe({
252
+ code: 'aw-command-detected',
253
+ blocking: false,
254
+ path: observationPath,
255
+ provenance,
256
+ command: `aw ${command}`,
257
+ capability,
258
+ message: `Detected AW CLI command capability ${capability}: aw ${command}.`,
259
+ });
260
+ }
261
+ };
262
+ for (const scanned of manifestExecutableCommands(options.manifest)) {
263
+ record('.agents-plugin/plugin.json', 'manifest-executable', scanned);
264
+ }
265
+ const skillCollections = new Set([
266
+ options.manifest.skills,
267
+ options.manifest.distributions?.agentSkills?.skills,
268
+ ].filter((value) => value !== undefined));
269
+ const skillFiles = (await Promise.all([...skillCollections].map((value) => actualSkillMainFiles(options.pluginRoot, value)))).flat();
270
+ for (const file of [...new Set(skillFiles)].sort()) {
271
+ const relativePath = path.relative(options.pluginRoot, file).split(path.sep).join('/');
272
+ for (const scanned of shellFenceCommands(await fs.readFile(file, 'utf8'))) {
273
+ record(relativePath, 'shell-fence', scanned);
274
+ }
275
+ }
276
+ observations.sort((left, right) => {
277
+ const leftKey = JSON.stringify([left.path, left.code, left.command, left.capability, left.provenance]);
278
+ const rightKey = JSON.stringify([right.path, right.code, right.command, right.capability, right.provenance]);
279
+ return leftKey < rightKey ? -1 : leftKey > rightKey ? 1 : 0;
280
+ });
281
+ return { detected: normalizeAwCapabilities(detected), observations };
282
+ }
283
+ export async function resolvePluginRequirements(options) {
284
+ const declared = normalizeAwCapabilities(options.manifest.requires?.aw.capabilities ?? [], 'requires.aw.capabilities');
285
+ const derived = deriveAwCapabilitiesFromManifest(options.manifest);
286
+ const scan = await scanPluginAwCliRequirements(options);
287
+ const effective = normalizeAwCapabilities([...declared, ...derived]);
288
+ const implemented = new Set(normalizeAwCapabilities(options.implementedCapabilities));
289
+ return {
290
+ schemaVersion: 1,
291
+ declared,
292
+ derived,
293
+ detected: scan.detected,
294
+ effective,
295
+ capabilitySetDigest: computeAwCapabilitySetDigest(effective),
296
+ unsupportedByCurrentAw: effective.filter((capability) => !implemented.has(capability)),
297
+ observations: scan.observations,
298
+ };
299
+ }
300
+ //# sourceMappingURL=plugin-requirements.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-requirements.js","sourceRoot":"","sources":["../src/plugin-requirements.ts"],"names":[],"mappings":"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"}
@@ -1,21 +1,18 @@
1
- import type { PluginLifecycleRuntimeOs, PluginLifecycleScriptEntry, PluginLifecycleScriptRunner, PluginLifecycleScriptSelector } from './types.js';
2
- export declare const PLUGIN_LIFECYCLE_EVENTS: readonly ["install", "upgrade", "uninstall"];
3
- export declare const PLUGIN_LIFECYCLE_OS_SELECTORS: readonly ["default", "unix", "windows", "linux", "darwin", "win32"];
4
- export declare const PLUGIN_SCRIPT_RUNNERS: readonly ["node", "sh", "bash", "pwsh", "powershell", "cmd", "auto"];
5
- export declare const PLUGIN_AUTO_RUNNER_EXTENSIONS: readonly [".js", ".mjs", ".cjs", ".sh", ".ps1", ".cmd", ".bat"];
6
- export declare const PLUGIN_SCRIPT_TIMEOUT_DEFAULT_MS = 30000;
1
+ export declare const PLUGIN_SCRIPT_TIMEOUT_DEFAULT_MS = 300000;
7
2
  export declare const PLUGIN_SCRIPT_TIMEOUT_MIN_MS = 1000;
8
- export declare const PLUGIN_SCRIPT_TIMEOUT_MAX_MS = 300000;
9
- export declare function isPluginLifecycleOsSelector(value: string): boolean;
10
- export declare function isPluginScriptRunner(value: string): value is PluginLifecycleScriptRunner;
11
- export declare function getLifecycleSelectorOrder(os: PluginLifecycleRuntimeOs): readonly string[];
12
- export declare function resolveLifecycleScriptForOs(selector: PluginLifecycleScriptSelector, os: PluginLifecycleRuntimeOs): PluginLifecycleScriptEntry | undefined;
13
- export declare function inferLifecycleScriptRunnerFromPath(scriptPath: string): Exclude<PluginLifecycleScriptRunner, 'auto'> | undefined;
3
+ export declare const PLUGIN_SCRIPT_TIMEOUT_MAX_MS = 1800000;
4
+ export declare function matchesPluginTestEntryGlob(filePath: string, glob: string): boolean;
14
5
  export interface ImportSpecifierReference {
15
6
  specifier: string;
16
7
  kind: 'import' | 'export' | 'require' | 'require-resolve' | 'dynamic-import';
17
8
  dynamic?: true;
18
9
  }
10
+ interface JavaScriptToken {
11
+ kind: 'identifier' | 'string' | 'dynamic-template' | 'punctuation' | 'literal';
12
+ value: string;
13
+ canStartRegexAfter?: boolean;
14
+ }
15
+ export declare function tokenizeJavaScriptImports(source: string): JavaScriptToken[];
19
16
  export declare function scanJavaScriptImportSpecifiers(source: string): ImportSpecifierReference[];
20
17
  export interface NodeImportContractScanOptions {
21
18
  files: Record<string, string>;
@@ -24,6 +21,7 @@ export interface NodeImportContractScanOptions {
24
21
  dependencies?: readonly string[];
25
22
  devDependencies?: readonly string[];
26
23
  allowDevDependencies?: boolean;
24
+ runtimeConfigSkillRoots?: readonly string[];
27
25
  }
28
26
  export interface NodeImportContractScanResult {
29
27
  files: string[];
@@ -31,3 +29,4 @@ export interface NodeImportContractScanResult {
31
29
  errors: string[];
32
30
  }
33
31
  export declare function scanNodeImportContract(options: NodeImportContractScanOptions): NodeImportContractScanResult;
32
+ export {};