audit-tools 0.30.31 → 0.30.33

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 (37) hide show
  1. package/dist/remediate/contractPipeline/artifactStore.d.ts +20 -0
  2. package/dist/remediate/contractPipeline/artifactStore.d.ts.map +1 -1
  3. package/dist/remediate/contractPipeline/artifactStore.js +39 -8
  4. package/dist/remediate/contractPipeline/artifactStore.js.map +1 -1
  5. package/dist/remediate/contractPipeline/derive.d.ts +27 -6
  6. package/dist/remediate/contractPipeline/derive.d.ts.map +1 -1
  7. package/dist/remediate/contractPipeline/derive.js +73 -25
  8. package/dist/remediate/contractPipeline/derive.js.map +1 -1
  9. package/dist/remediate/contractPipeline/testPlanCarry.d.ts +11 -0
  10. package/dist/remediate/contractPipeline/testPlanCarry.d.ts.map +1 -0
  11. package/dist/remediate/contractPipeline/testPlanCarry.js +69 -0
  12. package/dist/remediate/contractPipeline/testPlanCarry.js.map +1 -0
  13. package/dist/remediate/phases/close.d.ts.map +1 -1
  14. package/dist/remediate/phases/close.js +42 -2
  15. package/dist/remediate/phases/close.js.map +1 -1
  16. package/dist/remediate/state/closingActions.d.ts +1 -1
  17. package/dist/remediate/state/closingActions.d.ts.map +1 -1
  18. package/dist/remediate/state/closingActions.js +1 -0
  19. package/dist/remediate/state/closingActions.js.map +1 -1
  20. package/dist/remediate/state/types.d.ts +6 -6
  21. package/dist/remediate/steps/contractPipeline.d.ts +20 -10
  22. package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
  23. package/dist/remediate/steps/contractPipeline.js +89 -32
  24. package/dist/remediate/steps/contractPipeline.js.map +1 -1
  25. package/dist/remediate/steps/dispatch.d.ts +10 -1
  26. package/dist/remediate/steps/dispatch.d.ts.map +1 -1
  27. package/dist/remediate/steps/dispatch.js +39 -4
  28. package/dist/remediate/steps/dispatch.js.map +1 -1
  29. package/dist/remediate/steps/nextStep.d.ts.map +1 -1
  30. package/dist/remediate/steps/nextStep.js +1 -1
  31. package/dist/remediate/steps/nextStep.js.map +1 -1
  32. package/dist/remediate/steps/prompts.d.ts.map +1 -1
  33. package/dist/remediate/steps/prompts.js +2 -1
  34. package/dist/remediate/steps/prompts.js.map +1 -1
  35. package/dist/shared/types/contractPipeline/obligations.d.ts +9 -0
  36. package/dist/shared/types/contractPipeline/obligations.d.ts.map +1 -1
  37. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"close.js","sourceRoot":"","sources":["../../../src/remediate/phases/close.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,4BAA4B,EAC5B,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,8BAA8B,GAC/B,MAAM,oBAAoB,CAAC;AAW5B,OAAO,EAAE,6CAA6C,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAc3D,OAAO,EAAE,WAAW,EAA6B,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EACL,0BAA0B,EAC1B,kBAAkB,EAClB,YAAY,EACZ,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAEhC,0EAA0E;AAC1E,0CAA0C;AAC1C,MAAM,YAAY,GAA+B;IAC/C,GAAG,8BAA8B,CAAC,OAAO;CAC1C,CAAC;AAEF,mFAAmF;AACnF,MAAM,uBAAuB,GAGzB;IACF,QAAQ,EAAE,OAAO;IACjB,kBAAkB,EAAE,OAAO;IAC3B,aAAa,EAAE,SAAS;IACxB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,QAAQ;CAClB,CAAC;AAEF,2EAA2E;AAC3E,gFAAgF;AAChF,MAAM,yBAAyB,GAE3B;IACF,aAAa,EAAE,0CAA0C;IACzD,OAAO,EAAE,kBAAkB;CAC5B,CAAC;AAEF,kFAAkF;AAClF,SAAS,iBAAiB,CAAC,IAAc;IACvC,OAAO;QACL,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,GAAG,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,cAAc,EAAE,CAAC,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;KACrE,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAAC,aAA4B;IACvD,IAAI,aAAa,CAAC,MAAM,KAAK,SAAS,IAAI,aAAa,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC1E,OAAO,8DAA8D,CAAC;IACxE,CAAC;IACD,IAAI,aAAa,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACtC,OAAO,mBAAmB,aAAa,CAAC,MAAM,UAAU,CAAC;IAC3D,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,cAAc,CAAC,KAAyB;IAC/C,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACpC,OAAO,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5D,CAAC;AAED,SAAS,iBAAiB,CACxB,SAA6B,EAC7B,WAA+B;IAE/B,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IAC9C,IAAI,OAAO,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,GAAG,OAAO,EAAE,CAAC;QAC5E,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,SAAS,GAAG,OAAO,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,KAAuB,EACvB,aAA4B;IAE5B,MAAM,YAAY,GAAG,IAAI,GAAG,CAC1B,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CACrE,CAAC;IACF,MAAM,UAAU,GAAG,IAAI,GAAG,CACxB,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CACnE,CAAC;IACF,MAAM,QAAQ,GAAyB,EAAE,CAAC;IAC1C,MAAM,WAAW,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;IACvD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;QACpD,2EAA2E;QAC3E,0EAA0E;QAC1E,2EAA2E;QAC3E,uEAAuE;QACvE,IAAI,OAAiC,CAAC;QACtC,IAAI,aAAyD,CAAC;QAC9D,IAAI,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACpC,OAAO,GAAG,SAAS,CAAC;YACpB,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,0BAA0B,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QACzE,CAAC;QACD,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG;YACf,GAAG,IAAI,GAAG,CACR,CAAC,OAAO,EAAE,cAAc,IAAI,EAAE,CAAC;iBAC5B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;iBAC/C,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CACnC;SACF,CAAC,IAAI,EAAE,CAAC;QACT,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACzE,MAAM,aAAa,GAAG,OAAO,KAAK,UAAU,IAAI,OAAO,KAAK,oBAAoB,CAAC;QACjF,IAAI,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7D,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,GAAG,oDAAoD,aAAa,MACxE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EACpD,EAAE,CAAC;QACL,CAAC;aAAM,IAAI,aAAa,IAAI,CAAC,MAAM,EAAE,CAAC;YACpC,MAAM,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC;QAC9C,CAAC;QACD,MAAM,IAAI,GAAuB;YAC/B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,SAAS;YAChC,SAAS,EAAE,QAAQ;YACnB,OAAO;YACP,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,CAAC;YACpC,cAAc,EAAE,aAAa,CAAC,MAAM;YACpC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7B,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3D,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjE,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjE,CAAC;QACF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,2EAA2E;YAC3E,0EAA0E;YAC1E,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,SAAS;QACX,CAAC;QACD,MAAM,QAAQ,GAA2B;YACvC,GAAG,IAAI;YACP,OAAO;YACP,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3E,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,kBAAkB,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,YAAY,IAAI,EAAE,CAAC,CAAC;YAC5E,YAAY,EAAE,uBAAuB,CAAC,OAAO,CAAC;YAC9C,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5D,CAAC;QACF,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IACD,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IAElE,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAClC,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CACQ,CAAC;IAC9C,MAAM,MAAM,GAGR,EAAE,CAAC;IACP,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC7B,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,UAAU,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC/C,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,cAAc,GAAG,QAAQ;SAC5B,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACjB,KAAK,EAAE,OAAO,CAAC,UAAU;QACzB,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC;KAC9C,CAAC,CAAC;SACF,MAAM,CACL,CAAC,KAAK,EAAiD,EAAE,CACvD,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,CAC7D,CAAC;IACJ,MAAM,gBAAgB,GAAG,QAAQ;SAC9B,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACjB,KAAK,EAAE,OAAO,CAAC,YAAY;QAC3B,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,YAAY,CAAC;KAChD,CAAC,CAAC;SACF,MAAM,CACL,CAAC,KAAK,EAAiD,EAAE,CACvD,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,CAC7D,CAAC;IACJ,MAAM,gBAAgB,GAAG,cAAc,CAAC,MAAM,CAG5C,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAClB,CAAC,QAAQ,IAAI,KAAK,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,EACtE,SAAS,CACV,CAAC;IACF,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,MAAM,CAGhD,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAChB,CAAC,MAAM,IAAI,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAChE,SAAS,CACV,CAAC;IACF,MAAM,iBAAiB,GACrB,gBAAgB,IAAI,kBAAkB;QACpC,CAAC,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,KAAK,EAAE,kBAAkB,CAAC,KAAK,CAAC;QACrE,CAAC,CAAC,SAAS,CAAC;IAEhB,OAAO;QACL,gBAAgB,EAAE,kCAAkC;QACpD,KAAK,EAAE,QAAQ,CAAC,MAAM;QACtB,UAAU,EAAE,SAAS;QACrB,OAAO,EAAE,MAAM;QACf,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,gBAAgB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnE,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,GAAG,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9E,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,wEAAwE;AACxE,MAAM,0BAA0B,GAE5B;IACF,WAAW,EAAE,kBAAkB;IAC/B,qBAAqB,EAAE,mBAAmB;IAC1C,mBAAmB,EAAE,aAAa;IAClC,qBAAqB,EAAE,eAAe;IACtC,kBAAkB,EAAE,aAAa;CAClC,CAAC;AAEF;;;;;;;;GAQG;AACH,KAAK,UAAU,gCAAgC,CAC7C,OAA4B;IAE5B,MAAM,YAAY,GAAG,IAAI,GAAG,EAAmB,CAAC;IAChD,IAAI,QAA0C,CAAC;IAC/C,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,oBAAoB,CACnC,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,cAAc,CACjD,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,OAAO,IAAI,EAAE,EAAE,CAAC;QAC7C,IAAI,MAAM,CAAC,IAAI,KAAK,kBAAkB;YAAE,SAAS;QACjD,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC;YACxC,CAAC,CAAC,MAAM,CAAC,IAAI;YACb,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;YACrE,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC;gBAAE,SAAS;YAC7C,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACtC,IAAI,OAAO,IAAI,OAAO,OAAO,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC/E,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;gBACxC,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,oEAAoE;QACtE,CAAC;IACH,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,KAAuB,EACvB,OAA4B;IAE5B,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC;IACnC,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,MAAM,WAAW,GAAG,IAAI,GAAG,CACzB,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CACrE,CAAC;IACF,MAAM,mBAAmB,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAC7C,CAAC,KAAK,EAAE,EAAE,CACR,0BAA0B,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,SAAS;QAC3D,CAAC,KAAK,CAAC,OAAO;QACd,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CACrC,CAAC;IACF,MAAM,UAAU,GAAG,mBAAmB;QACpC,CAAC,CAAC,MAAM,gCAAgC,CAAC,OAAO,CAAC;QACjD,CAAC,CAAC,IAAI,GAAG,EAAmB,CAAC;IAC/B,MAAM,OAAO,GAA2B,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACnE,MAAM,UAAU,GAAG,0BAA0B,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACjE,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QAC9B,MAAM,OAAO,GACX,KAAK,CAAC,OAAO;YACb,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC;YACjC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACnC,OAAO;YACL,GAAG,KAAK;YACR,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,WAAW,EAAE,UAAU;SACxB,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC;AAChC,CAAC;AAgBD,SAAS,UAAU,CAAC,KAAc;IAChC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAC7E,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,yBAAyB,CAAC,CAAC;IAC9D,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC;AAED,SAAS,aAAa,CACpB,OAAiB,EACjB,MAAqC;IAErC,OAAO;QACL,OAAO;QACP,SAAS,EAAE,MAAM,CAAC,MAAM;QACxB,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC;QACjC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC;KAClC,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,IAAY,EACZ,OAAe,EACf,IAAc;IAEd,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,EAAE,IAAI,EAAE;QACvC,GAAG,EAAE,IAAI;QACT,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;KAClC,CAAC,CAAC;IACH,OAAO,aAAa,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,SAAS,CAAC,MAA4B;IAC7C,OAAO,MAAM,CAAC,SAAS,KAAK,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,wBAAwB,GAAG;IAC/B,kBAAkB;IAClB,cAAc;CACf,CAAC;AAEF,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC,MAAM,CACpC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CACpE,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB,CAAC,KAAuB;IACpD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE,QAAQ,IAAI,EAAE,CAAC;IAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAC/C,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAChC,KAAK;SACF,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;SACjD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAC5B,CAAC;IACF,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACtE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,sBAAsB,CAAC;IAChC,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,QAAQ,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAE,CAAC,EAAE,EAAE,CAAC;IACzD,CAAC;IACD,MAAM,MAAM,GAAG,QAAQ;SACpB,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC;SAC3B,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5E,OAAO,QAAQ,MAAM,GAAG,MAAM,EAAE,CAAC;AACnC,CAAC;AAED,+DAA+D;AAC/D,MAAM,eAAe,GAAG,IAAI,GAAG,CAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;AAElF;;;;;GAKG;AACH,SAAS,mBAAmB,CAC1B,KAAuB,EACvB,OAA4B;IAE5B,MAAM,WAAW,GAAG,KAAK,CAAC,YAAa,CAAC;IACxC,IAAI,WAAW,CAAC,cAAc,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAC1D,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC;QAAE,OAAO,SAAS,CAAC;IAC/D,MAAM,KAAK,GAAG,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,aAAa,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IACnD,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,KAAuB,EACvB,OAA4B;IAE5B,MAAM,MAAM,GAAG,KAAK,CAAC,YAAa,CAAC,MAAM,CAAC;IAC1C,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,OAAO;YACL,gBAAgB,EAAE,wCAAwC;YAC1D,MAAM;YACN,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,EAAE;SACb,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAA2B,EAAE,CAAC;IAC5C,MAAM,GAAG,GAAG,CAAC,OAAe,EAAE,IAAc,EAAW,EAAE;QACvD,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QAC9D,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,IAAI,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACrE,MAAM,KAAK,GAAG,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,2EAA2E;QAC3E,uDAAuD;QACvD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;YAC9D,OAAO;gBACL,gBAAgB,EAAE,wCAAwC;gBAC1D,MAAM;gBACN,MAAM,EAAE,SAAS;gBACjB,QAAQ,EAAE,EAAE;aACb,CAAC;QACJ,CAAC;QACD,MAAM,aAAa,GAAG,KAAK,CAAC,YAAa,CAAC,sBAAsB,EAAE,cAAc;eAC3E,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAClC,MAAM,SAAS,GACb,GAAG,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC;YACnC,GAAG,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC;QAC9C,IAAI,SAAS,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACnC,GAAG,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QACvB,CAAC;aAAM,IAAI,SAAS,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAC7C,GAAG,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;SAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAChC,GAAG,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC1B,CAAC;SAAM,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QAC5B,GAAG,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAC1C,CAAC;SAAM,IAAI,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,YAAa,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC;QAC7E,GAAG,CAAC,KAAK,CAAC,YAAa,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,YAAa,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1F,CAAC;IAED,OAAO;QACL,gBAAgB,EAAE,wCAAwC;QAC1D,MAAM;QACN,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;QACxD,QAAQ;KACT,CAAC;AACJ,CAAC;AAUD;;;;GAIG;AACH,SAAS,oBAAoB,CAC3B,KAAuB,EACvB,OAA4B;IAE5B,OAAO,CAAC,GAAG,CAAC,+DAA+D,CAAC,CAAC;IAC7E,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC;QAC9B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACtD,CAAC;IACD,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC;QACtD,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC;QACnC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC;IAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE;QACtD,GAAG,EAAE,OAAO,CAAC,IAAI;QACjB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;KAClC,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IAC1C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACtF,CAAC;IACD,MAAM,MAAM,GAAG,CACb,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CACtE;SACE,IAAI,EAAE;SACN,KAAK,CAAC,CAAC,yBAAyB,CAAC,CAAC;IACrC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AACnF,CAAC;AAED;;;GAGG;AACH,SAAS,sBAAsB,CAAC,UAAkB;IAChD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,+EAA+E;IAC/E,gCAAgC;IAChC,MAAM,WAAW,GAAG,iEAAiE,CAAC;IACtF,IAAI,KAA6B,CAAC;IAClC,OAAO,CAAC,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACvD,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;QAC5B,2FAA2F;QAC3F,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3F,0CAA0C;YAC1C,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACtE,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;gBAC5C,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC;AACpB,CAAC;AAED;;;;;GAKG;AACH,SAAS,mCAAmC,CAC1C,KAAuB,EACvB,UAAkB;IAElB,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAC3D,CAAC,CAAC,EAAE,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,MAAM,CAAC,CAC1C,CAAC;IACF,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAE7C,MAAM,eAAe,GAAG,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAC3D,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAErC,gFAAgF;IAChF,IAAI,UAAU,GAAyB,EAAE,CAAC;IAC1C,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;YACjC,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,aAAa,IAAI,EAAE,CAAC;YACzD,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CACxC,eAAe,CAAC,IAAI,CAClB,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAC1G,CACF,CAAC;YACF,IAAI,QAAQ;gBAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC;IACtD,MAAM,eAAe,GAAG,QAAQ;QAC9B,CAAC,CAAC,0EAA0E,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,oDAAoD;QACtK,CAAC,CAAC,iBAAiB,UAAU,CAAC,MAAM,4CAA4C,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IAE7H,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;QACxB,IAAI,CAAC,cAAc,GAAG,iDAAiD,eAAe,GAAG,UAAU,CAAC,CAAC,CAAC,qBAAqB,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACjJ,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAQD;;;;;GAKG;AACH,SAAS,WAAW,CAClB,KAAuB,EACvB,OAA4B;IAE5B,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;QAC7B,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAClD,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC;IAC9E,MAAM,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE;QACxD,GAAG,EAAE,OAAO,CAAC,IAAI;QACjB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;KAClC,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC;IACzC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,SAAS,GAAG,CAChB,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YACpC,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CACrC;aACE,IAAI,EAAE;aACN,KAAK,CAAC,CAAC,yBAAyB,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;QACpF,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACzD,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IACxC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;AACjD,CAAC;AAmBD;;;;GAIG;AACH,SAAS,oBAAoB,CAC3B,KAAuB,EACvB,OAA4B;IAE5B,MAAM,OAAO,GAAkB;QAC7B,QAAQ,EAAE,EAAE;QACZ,gBAAgB,EAAE,EAAE;QACpB,aAAa,EAAE,EAAE;QACjB,OAAO,EAAE,EAAE;QACX,OAAO,EAAE,EAAE;KACZ,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;QACpD,IAAI,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,UAAU,CAAC,CAAC;YAC3E,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,SAAS,CAAC;YAC1C,IAAI,oBAA0C,CAAC;YAE/C,MAAM,sBAAsB,GAAG,IAAI,CACjC,OAAO,CAAC,YAAY,EACpB,UAAU,IAAI,CAAC,UAAU,yCAAyC,CACnE,CAAC;YACF,IAAI,UAAU,CAAC,sBAAsB,CAAC,EAAE,CAAC;gBACvC,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAC,CAAC;oBACxE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC7D,oBAAoB,GAAG,MAAM,CAAC,MAAM,CAAC;oBACvC,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,IAAI,CACV,uCAAuC,sBAAsB,GAAG,EAChE,KAAK,CACN,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,MAAM,KAAK,GAAwB;gBACjC,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,OAAO,EAAE,KAAK;gBACd,qBAAqB,EAAE,oBAAoB;aAC5C,CAAC;YACF,IAAI,IAAI,CAAC,MAAM,KAAK,oBAAoB,EAAE,CAAC;gBACzC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,KAAK,sBAAsB,EAAE,CAAC;YAClD,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC;gBACzB,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,SAAS,EAAE,IAAI,CAAC,cAAc,IAAI,sBAAsB;aACzD,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACrC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;gBACnB,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,SAAS,EAAE,IAAI,CAAC,cAAc,IAAI,iBAAiB;aACpD,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACrC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;gBACnB,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,SAAS,EAAE,IAAI,CAAC,cAAc,IAAI,SAAS;aAC5C,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;GAGG;AACH,SAAS,8BAA8B,CACrC,KAAuB,EACvB,OAAsB,EACtB,aAA4B,EAC5B,SAA8B,EAC9B,cAAyC,EACzC,YAAgC,EAChC,cAAiC,EAAE,EACnC,cAAqE,EAAE;IAEvE,IAAI,aAAa,GAAG,0BAA0B,CAAC;IAE/C,gFAAgF;IAChF,iFAAiF;IACjF,kFAAkF;IAClF,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;QAChE,aAAa,IAAI,wEAAwE,MAAM,yEAAyE,MAAM,+BAA+B,CAAC;IAChN,CAAC;IAED,aAAa,IAAI,iCAAiC,CAAC;IACnD,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClC,aAAa,IAAI,SAAS,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrC,aAAa,IAAI,OAAO,KAAK,CAAC,UAAU,OAAO,KAAK,CAAC,OAAO,IAAI,CAAC;YACjE,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC;gBAChC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC;oBAChD,aAAa,IAAI,uBAAuB,KAAK,IAAI,CAAC;gBACpD,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxC,aAAa,IAAI,qDAAqD,CAAC;QACvE,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC7C,aAAa,IAAI,OAAO,KAAK,CAAC,UAAU,OAAO,KAAK,CAAC,OAAO,IAAI,CAAC;YACjE,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC;gBAChC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC;oBAChD,aAAa,IAAI,uBAAuB,KAAK,IAAI,CAAC;gBACpD,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrC,aAAa,IAAI,+BAA+B,CAAC;QACjD,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAC1C,aAAa,IAAI,OAAO,KAAK,CAAC,UAAU,OAAO,KAAK,CAAC,SAAS,IAAI,CAAC;QACrE,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,aAAa,IAAI,kBAAkB,CAAC;QACpC,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpC,aAAa,IAAI,OAAO,KAAK,CAAC,UAAU,OAAO,KAAK,CAAC,SAAS,IAAI,CAAC;QACrE,CAAC;IACH,CAAC;IAED,MAAM,mBAAmB,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CACrE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,uBAAuB,CACjD,CAAC;IACF,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnC,aAAa,IAAI,uCAAuC,CAAC;QACzD,aAAa,IAAI,GAAG,mBAAmB,CAAC,MAAM,gIAAgI,CAAC;QAC/K,KAAK,MAAM,KAAK,IAAI,mBAAmB,EAAE,CAAC;YACxC,aAAa,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC;QACzF,CAAC;IACH,CAAC;IAED,MAAM,kBAAkB,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CACpE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,uBAAuB,CACjD,CAAC;IACF,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,aAAa,IAAI,+BAA+B,CAAC;QACjD,aAAa,IAAI,GAAG,kBAAkB,CAAC,MAAM,gHAAgH,CAAC;QAC9J,KAAK,MAAM,KAAK,IAAI,kBAAkB,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,KAAK,CAAC,qBAAqB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YACzD,aAAa,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,YAAY,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC;QACnI,CAAC;IACH,CAAC;IAED,MAAM,kBAAkB,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CACpE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,SAAS,IAAI,CAAC,CAAC,iBAAiB,KAAK,KAAK,CACpE,CAAC;IACF,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,aAAa,IAAI,8BAA8B,CAAC;QAChD,aAAa,IAAI,GAAG,kBAAkB,CAAC,MAAM,0GAA0G,CAAC;QACxJ,KAAK,MAAM,KAAK,IAAI,kBAAkB,EAAE,CAAC;YACvC,aAAa,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC;QACzF,CAAC;IACH,CAAC;IAED,aAAa,IAAI,kCAAkC,KAAK,CAAC,YAAa,CAAC,MAAM,IAAI,CAAC;IAClF,aAAa,IAAI,WAAW,aAAa,CAAC,MAAM,IAAI,CAAC;IACrD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,aAAa,IAAI,oCAAoC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC;IAC3F,CAAC;IAED,MAAM,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC;IACpC,aAAa,IAAI,+BAA+B,CAAC;IACjD,aAAa,IAAI,MAAM,cAAc,CAAC,KAAK,gBAAgB,CAAC,CAAC,QAAQ,cAAc,CAAC,CAAC,kBAAkB,8BAA8B,CAAC,CAAC,aAAa,0BAA0B,CAAC,CAAC,OAAO,aAAa,CAAC,CAAC,OAAO,aAAa,CAAC;IAC3N,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IAC7D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,aAAa,IAAI,cAAc,CAAC;QAChC,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAE,CAAC;YAC7C,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CACpE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CACjC,CAAC;YACF,aAAa,IAAI,KAAK,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QACtD,CAAC;IACH,CAAC;IAED,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;QACzB,aAAa,IAAI,iNAAiN,CAAC;QACnO,IAAI,YAAY,CAAC,MAAM;YAAE,aAAa,IAAI,WAAW,YAAY,CAAC,MAAM,YAAY,CAAC;IACvF,CAAC;IAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,aAAa,IAAI,iCAAiC,CAAC;QACnD,aAAa,IAAI,GAAG,WAAW,CAAC,MAAM,mOAAmO,CAAC;QAC1Q,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;YAC5B,aAAa,IAAI,OAAO,CAAC,CAAC,KAAK,yBAAyB,CAAC,CAAC,MAAM,eAAe,CAAC,CAAC,GAAG,OAAO,CAAC;QAC9F,CAAC;IACH,CAAC;IAED,yEAAyE;IACzE,2DAA2D;IAC3D,MAAM,aAAa,GAAG,4BAA4B,CAAC,WAAW,CAAC,CAAC;IAChE,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,aAAa,IAAI,KAAK,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACnD,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC;AAED;;;;;;;;;;GAUG;AACH,KAAK,UAAU,+BAA+B,CAC5C,OAA4B,EAC5B,aAA+B,EAC/B,YAAgC,EAChC,SAAwB,EACxB,aAA4B,EAC5B,SAAqB;IAErB,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE;YACjD,GAAG,EAAE,OAAO,CAAC,IAAI;YACjB,QAAQ,EAAE,MAAM;SACjB,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACrE,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;YAC9B,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACzC,IAAI,CAAC,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;gBACtC,UAAU,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACtE,OAAO,CAAC,IAAI,CAAC,4CAA4C,EAAE,KAAK,CAAC,CAAC;QAClE,SAAS,EAAE,KAAK,CAAC;YACf,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,SAAS;YACf,UAAU,EAAE,SAAS;YACrB,IAAI,EAAE,8CAA8C,MAAM,EAAE;SAC7D,CAAC,CAAC;IACL,CAAC;IAED,8EAA8E;IAC9E,8CAA8C;IAC9C,IAAI,CAAC;QACH,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QACnD,MAAM,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IACvC,CAAC;IAAC,MAAM,CAAC;QACP,uCAAuC;IACzC,CAAC;IAED,yEAAyE;IACzE,uDAAuD;IACvD,EAAE;IACF,4EAA4E;IAC5E,6EAA6E;IAC7E,+EAA+E;IAC/E,qEAAqE;IACrE,2EAA2E;IAC3E,sEAAsE;IACtE,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAC9D,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,SAAS,CAChC,CAAC;IACF,MAAM,UAAU,GACd,YAAY,CAAC,MAAM;QACnB,SAAS,CAAC,MAAM;QAChB,aAAa,CAAC,MAAM,KAAK,QAAQ;QACjC,CAAC,UAAU,CAAC;IAEd,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,SAAS,EAAE,KAAK,CAAC;YACf,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,gBAAgB;YACtB,UAAU,EAAE,SAAS;YACrB,QAAQ,EAAE,OAAO,CAAC,YAAY;YAC9B,IAAI,EAAE,oEAAoE,YAAY,CAAC,MAAM,gBAAgB,SAAS,CAAC,MAAM,aAAa,aAAa,CAAC,MAAM,gBAAgB,UAAU,GAAG;SAC5L,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAChD,MAAM,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACnE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACtE,OAAO,CAAC,IAAI,CACV,wEAAwE,CACzE,CAAC;QACF,SAAS,EAAE,KAAK,CAAC;YACf,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,gBAAgB;YACtB,UAAU,EAAE,SAAS;YACrB,QAAQ,EAAE,OAAO,CAAC,YAAY;YAC9B,IAAI,EAAE,0EAA0E,MAAM,EAAE;SACzF,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,uBAAuB,CAC9B,KAAuB,EACvB,OAA4B,EAC5B,aAA4B,EAC5B,YAAgC;IAEhC,MAAM,QAAQ,GAA+B,EAAE,CAAC;IAChD,MAAM,YAAY,GAAG,IAAI,GAAG,CAC1B,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CACnD,CAAC;IAEF,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;QACpD,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAClD,MAAM,UAAU,GAAG,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5C,MAAM,MAAM,GAA6B,EAAE,CAAC;QAC5C,MAAM,UAAU,GAAG,UAAU,IAAI,YAAY,CAAC,MAAM,CAAC;QAErD,IAAI,SAAS,EAAE,CAAC;YACd,sEAAsE;YACtE,iEAAiE;YACjE,yEAAyE;YACzE,wEAAwE;YACxE,uEAAuE;YACvE,qEAAqE;YACrE,+CAA+C;YAC/C,MAAM,CAAC,IAAI,CAAC;gBACV,QAAQ,EAAE,GAAG,IAAI,CAAC,UAAU,UAAU;gBACtC,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,sBAAsB;gBAC7E,QAAQ,EAAE,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,MAAM,CAAC;gBAC9C,MAAM,EAAE,QAAQ;aACjB,CAAC,CAAC;YACH,QAAQ,CAAC,IAAI,CAAC;gBACZ,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,MAAM;gBACN,cAAc,EAAE,SAAgC;aACjD,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QAED,6BAA6B;QAC7B,MAAM,UAAU,GAAG,YAAY,CAAC,UAAU,IAAI,qBAAqB,CAAC;QACpE,MAAM,CAAC,IAAI,CAAC;YACV,QAAQ,EAAE,GAAG,IAAI,CAAC,UAAU,iBAAiB;YAC7C,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,UAAU;YACjB,QAAQ,EAAE,YAAY,CAAC,MAAM;gBAC3B,CAAC,CAAC,CAAC,GAAG,UAAU,SAAS,CAAC;gBAC1B,CAAC,CAAC,CAAC,GAAG,UAAU,SAAS,EAAE,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC/F,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;SAClD,CAAC,CAAC;QAEH,MAAM,cAAc,GAClB,OAAO,EAAE,gBAAgB,IAAK,KAAK,CAAC,IAAyC,EAAE,OAAO,CAAC;QACzF,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,CAAC,IAAI,CAAC;gBACV,QAAQ,EAAE,GAAG,IAAI,CAAC,UAAU,gBAAgB;gBAC5C,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE,wBAAwB;gBAC/B,QAAQ,EAAE,CAAC,WAAW,cAAc,EAAE,CAAC;gBACvC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;aACzC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,OAAO,EAAE,uBAAuB,EAAE,MAAM,EAAE,CAAC;YAC7C,MAAM,CAAC,IAAI,CAAC;gBACV,QAAQ,EAAE,GAAG,IAAI,CAAC,UAAU,uBAAuB;gBACnD,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE,iDAAiD;gBACxD,QAAQ,EAAE,OAAO,CAAC,uBAAuB;gBACzC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;aACzC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,OAAO,EAAE,2BAA2B,EAAE,MAAM,EAAE,CAAC;YACjD,MAAM,CAAC,IAAI,CAAC;gBACV,QAAQ,EAAE,GAAG,IAAI,CAAC,UAAU,2BAA2B;gBACvD,IAAI,EAAE,WAAW;gBACjB,KAAK,EAAE,4CAA4C;gBACnD,QAAQ,EAAE,OAAO,CAAC,2BAA2B;gBAC7C,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;aACzC,CAAC,CAAC;QACL,CAAC;QAED,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YAC5E,MAAM,CAAC,IAAI,CAAC;gBACV,QAAQ,EAAE,GAAG,IAAI,CAAC,UAAU,qBAAqB,KAAK,GAAG,CAAC,EAAE;gBAC5D,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,qCAAqC;gBAC5C,QAAQ,EAAE,CAAC,oBAAoB,OAAO,EAAE,CAAC;gBACzC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;aACzC,CAAC,CAAC;QACL,CAAC;QAED,yEAAyE;QACzE,MAAM,sBAAsB,GAAG,IAAI,CACjC,OAAO,CAAC,YAAY,EACpB,UAAU,IAAI,CAAC,UAAU,yCAAyC,CACnE,CAAC;QACF,IAAI,UAAU,CAAC,sBAAsB,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAC,CAAC;gBACxE,MAAM,QAAQ,GAAa,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7E,MAAM,CAAC,IAAI,CAAC;oBACV,QAAQ,EAAE,GAAG,IAAI,CAAC,UAAU,aAAa;oBACzC,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE,yCAAyC,IAAI,CAAC,UAAU,EAAE;oBACjE,QAAQ;oBACR,MAAM,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;iBAClD,CAAC,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;gBACP,qCAAqC;YACvC,CAAC;QACH,CAAC;QAED,0EAA0E;QAC1E,IAAI,aAAa,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACpC,MAAM,CAAC,IAAI,CAAC;gBACV,QAAQ,EAAE,GAAG,IAAI,CAAC,UAAU,UAAU;gBACtC,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,mBAAmB,aAAa,CAAC,MAAM,EAAE;gBAChD,QAAQ,EAAE,CAAC,UAAU,aAAa,CAAC,MAAM,EAAE,CAAC;gBAC5C,MAAM,EAAE,aAAa,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;aAChE,CAAC,CAAC;QACL,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC;YACZ,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,MAAM;YACN,cAAc,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;SACjD,CAAC,CAAC;IACL,CAAC;IAED,sCAAsC;IACtC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IAElE,0EAA0E;IAC1E,sDAAsD;IACtD,MAAM,aAAa,GACjB,YAAY,CAAC,MAAM;QACnB,QAAQ;aACL,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAC,CAAC,cAAyB,KAAK,SAAS,CAAC;aACzD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC;IAEjD,6CAA6C;IAC7C,MAAM,MAAM,GAAI,KAAK,CAAC,IAAyC,EAAE,OAAO,CAAC;IAEzE,OAAO;QACL,gBAAgB,EAAE,6CAA6C;QAC/D,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtC,QAAQ;QACR,cAAc,EAAE,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;QACnD,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACrC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,KAAuB,EACvB,OAA4B,EAC5B,SAAqB;IAErB,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IAEtC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QACvD,MAAM,IAAI,KAAK,CACb,0EAA0E,CAC3E,CAAC;IACJ,CAAC;IAED,wEAAwE;IACxE,8EAA8E;IAC9E,0EAA0E;IAC1E,8EAA8E;IAC9E,qEAAqE;IACrE,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACpD,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,kBAAkB,GAAG,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,sBAAsB,EAAE,OAAO,EAAE,CAAC;QACtF,OAAO,EAAE,GAAG,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,CAAC;IACxD,CAAC;IAED,6EAA6E;IAC7E,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC1D,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;QACrE,IAAI,mCAAmC,CAAC,KAAK,EAAE,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;YACpE,OAAO,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;QACxC,CAAC;QACD,OAAO,CAAC,IAAI,CACV,iHAAiH,CAClH,CAAC;IACJ,CAAC;IAED,sEAAsE;IACtE,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC9C,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;QACtE,mCAAmC,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;QAC7D,OAAO,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IACxC,CAAC;IAED,yEAAyE;IACzE,qBAAqB;IACrB,OAAO,CAAC,GAAG,CAAC,6BAA6B,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;IACtE,MAAM,aAAa,GAAG,oBAAoB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC3D,MAAM,aAAa,CACjB,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,iCAAiC,CAAC,EAC7D,aAAa,CACd,CAAC;IAEF,gEAAgE;IAChE,MAAM,OAAO,GAAG,oBAAoB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAErD,yDAAyD;IACzD,MAAM,cAAc,GAAG,8BAA8B,CACnD,KAAK,EACL,aAAa,CACd,CAAC;IACF,4EAA4E;IAC5E,KAAK,MAAM,OAAO,IAAI,cAAc,CAAC,QAAQ,EAAE,CAAC;QAC9C,SAAS,EAAE,KAAK,CAAC;YACf,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,SAAS;YACf,UAAU,EAAE,SAAS;YACrB,IAAI,EAAE,GAAG,OAAO,CAAC,UAAU,KAAK,OAAO,CAAC,IAAI,OAAO,OAAO,CAAC,OAAO,YAAY,OAAO,CAAC,YAAY,GAAG;SACtG,CAAC,CAAC;IACL,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACzC,yEAAyE;IACzE,8EAA8E;IAC9E,uDAAuD;IACvD,MAAM,YAAY,GAAG,MAAM,oBAAoB,CAC7C,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,uBAAuB,CAAC,CACpD,CAAC;IACF,iFAAiF;IACjF,kFAAkF;IAClF,6CAA6C;IAC7C,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI;QAC9B,CAAC,CAAC,sBAAsB,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC;QACjE,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,aAAa,GAAG,8BAA8B,CAClD,KAAK,EACL,OAAO,EACP,aAAa,EACb,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAC5C,cAAc,EACd,YAAY,EACZ,YAAY,CAAC,CAAC,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,EACxD,WAAW,CACZ,CAAC;IAEF,4EAA4E;IAC5E,6EAA6E;IAC7E,uCAAuC;IACvC,MAAM,eAAe,GAAG,MAAM,0BAA0B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAEzE,MAAM,YAAY,GAiBd;QACF,GAAG,cAAc;QACjB,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,QAAQ,EAAE,OAAO;QACjB,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,CAAC;QACjC,oBAAoB,EAAE;YACpB,MAAM,EAAE,YAAY,CAAC,MAAM;YAC3B,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,YAAY,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3E,WAAW,EAAE,YAAY,CAAC,WAAW;YACrC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACzE;QACD,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,cAAc,EAAE;YACd,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,MAAM;YACjC,MAAM,EAAE,aAAa,CAAC,MAAM;YAC5B,QAAQ,EAAE,aAAa,CAAC,QAAQ;SACjC;QACD,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/D,CAAC;IAEF,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAEhD,6EAA6E;IAC7E,MAAM,kBAAkB,GAAG,uBAAuB,CAAC,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;IAChG,MAAM,sBAAsB,GAAG,IAAI,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC;IAC3E,MAAM,aAAa,GAAqB,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IAEzE,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,uBAAuB,CAAC,EAAE,aAAa,CAAC;QACtE,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,2BAA2B,CAAC,EAAE,YAAY,CAAC;QACzE,aAAa,CAAC,sBAAsB,EAAE,kBAAkB,CAAC;QACzD,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,iCAAiC,CAAC,EAAE,aAAa,CAAC;KACjF,CAAC,CAAC;IACH,SAAS,EAAE,KAAK,CAAC;QACf,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,gBAAgB;QACtB,UAAU,EAAE,SAAS;QACrB,QAAQ,EAAE,2BAA2B;QACrC,IAAI,EAAE,GAAG,cAAc,CAAC,KAAK,aAAa;KAC3C,CAAC,CAAC;IACH,SAAS,EAAE,KAAK,CAAC;QACf,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,gBAAgB;QACtB,UAAU,EAAE,SAAS;QACrB,QAAQ,EAAE,0BAA0B;QACpC,IAAI,EAAE,kBAAkB,kBAAkB,CAAC,cAAc,cAAc,kBAAkB,CAAC,QAAQ,CAAC,MAAM,EAAE;KAC5G,CAAC,CAAC;IACH,SAAS,EAAE,KAAK,CAAC;QACf,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,gBAAgB;QACtB,UAAU,EAAE,SAAS;QACrB,QAAQ,EAAE,iCAAiC;QAC3C,IAAI,EAAE,yDAAyD;KAChE,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAE7C,iFAAiF;IACjF,MAAM,+BAA+B,CAAC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;IAEjH,OAAO,aAAa,CAAC;AACvB,CAAC"}
1
+ {"version":3,"file":"close.js","sourceRoot":"","sources":["../../../src/remediate/phases/close.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- export declare const CLOSING_ACTIONS: readonly ["commit", "push", "open-pr", "publish", "tag", "none", "custom"];
1
+ export declare const CLOSING_ACTIONS: readonly ["commit", "push", "open-pr", "publish", "tag", "merge-to-base", "none", "custom"];
2
2
  export type ClosingAction = (typeof CLOSING_ACTIONS)[number];
3
3
  //# sourceMappingURL=closingActions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"closingActions.d.ts","sourceRoot":"","sources":["../../../src/remediate/state/closingActions.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,4EAQlB,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"closingActions.d.ts","sourceRoot":"","sources":["../../../src/remediate/state/closingActions.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,6FASlB,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -4,6 +4,7 @@ export const CLOSING_ACTIONS = [
4
4
  "open-pr",
5
5
  "publish",
6
6
  "tag",
7
+ "merge-to-base",
7
8
  "none",
8
9
  "custom",
9
10
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"closingActions.js","sourceRoot":"","sources":["../../../src/remediate/state/closingActions.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,QAAQ;IACR,MAAM;IACN,SAAS;IACT,SAAS;IACT,KAAK;IACL,MAAM;IACN,QAAQ;CACA,CAAC"}
1
+ {"version":3,"file":"closingActions.js","sourceRoot":"","sources":["../../../src/remediate/state/closingActions.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,QAAQ;IACR,MAAM;IACN,SAAS;IACT,SAAS;IACT,KAAK;IACL,eAAe;IACf,MAAM;IACN,QAAQ;CACA,CAAC"}
@@ -328,7 +328,7 @@ export declare const RemediationPlanSchema: z.ZodObject<{
328
328
  project_type: z.ZodString;
329
329
  test_command: z.ZodOptional<z.ZodString>;
330
330
  e2e_command: z.ZodOptional<z.ZodString>;
331
- candidate_closing_actions: z.ZodArray<z.ZodEnum<["commit", "push", "open-pr", "publish", "tag", "none", "custom"]>, "many">;
331
+ candidate_closing_actions: z.ZodArray<z.ZodEnum<["commit", "push", "open-pr", "publish", "tag", "merge-to-base", "none", "custom"]>, "many">;
332
332
  block_strategy: z.ZodOptional<z.ZodEnum<["test_graph", "git_cocommit", "file_overlap", "manual"]>>;
333
333
  /** Synthesis themes carried from audit-findings.json (Phase 6/7 fix hints). */
334
334
  themes: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -410,7 +410,7 @@ export declare const RemediationPlanSchema: z.ZodObject<{
410
410
  phase_ordinal?: number | undefined;
411
411
  }[];
412
412
  project_type: string;
413
- candidate_closing_actions: ("push" | "custom" | "none" | "tag" | "commit" | "open-pr" | "publish")[];
413
+ candidate_closing_actions: ("push" | "custom" | "none" | "tag" | "commit" | "open-pr" | "publish" | "merge-to-base")[];
414
414
  themes?: {
415
415
  title: string;
416
416
  theme_id: string;
@@ -483,7 +483,7 @@ export declare const RemediationPlanSchema: z.ZodObject<{
483
483
  phase_ordinal?: number | undefined;
484
484
  }[];
485
485
  project_type: string;
486
- candidate_closing_actions: ("push" | "custom" | "none" | "tag" | "commit" | "open-pr" | "publish")[];
486
+ candidate_closing_actions: ("push" | "custom" | "none" | "tag" | "commit" | "open-pr" | "publish" | "merge-to-base")[];
487
487
  themes?: {
488
488
  title: string;
489
489
  theme_id: string;
@@ -606,7 +606,7 @@ export declare const ClosingActionPreviewSchema: z.ZodObject<{
606
606
  }>;
607
607
  export type ClosingActionPreview = z.infer<typeof ClosingActionPreviewSchema>;
608
608
  export declare const ClosingPlanSchema: z.ZodObject<{
609
- action: z.ZodEnum<["commit", "push", "open-pr", "publish", "tag", "none", "custom"]>;
609
+ action: z.ZodEnum<["commit", "push", "open-pr", "publish", "tag", "merge-to-base", "none", "custom"]>;
610
610
  custom_command: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
611
611
  /**
612
612
  * When true, the host has explicitly confirmed the closing action preview and
@@ -632,7 +632,7 @@ export declare const ClosingPlanSchema: z.ZodObject<{
632
632
  commit_message: string;
633
633
  }>>;
634
634
  }, "strict", z.ZodTypeAny, {
635
- action: "push" | "custom" | "none" | "tag" | "commit" | "open-pr" | "publish";
635
+ action: "push" | "custom" | "none" | "tag" | "commit" | "open-pr" | "publish" | "merge-to-base";
636
636
  custom_command?: string[] | undefined;
637
637
  pre_authorized?: boolean | undefined;
638
638
  closing_action_preview?: {
@@ -640,7 +640,7 @@ export declare const ClosingPlanSchema: z.ZodObject<{
640
640
  commit_message: string;
641
641
  } | undefined;
642
642
  }, {
643
- action: "push" | "custom" | "none" | "tag" | "commit" | "open-pr" | "publish";
643
+ action: "push" | "custom" | "none" | "tag" | "commit" | "open-pr" | "publish" | "merge-to-base";
644
644
  custom_command?: string[] | undefined;
645
645
  pre_authorized?: boolean | undefined;
646
646
  closing_action_preview?: {
@@ -50,11 +50,19 @@ export interface ArchiveOutcome {
50
50
  originalFree: boolean;
51
51
  }
52
52
  /**
53
- * Archive an artifact file into `<contract>/history/` instead of deleting it,
54
- * so a repair loop never silently destroys an LLM output. On a successful move
55
- * the original path is free (a fresh Write recreates it cleanly); if the move
56
- * throws, the original is preserved in place (`originalFree: false`) rather than
57
- * silently dropped. `renameFn` is a DI seam so a failed history move is testable.
53
+ * Archive an artifact into `<contract>/history/` instead of deleting it, so a
54
+ * repair loop never silently destroys an LLM output. Two disjoint files exist
55
+ * per artifact (D3): the host's plain INPUT (`<name>.input.json` the LLM
56
+ * emission) and the tool's canonical envelope (`<name>.json` regenerable
57
+ * bookkeeping). On a stale/invalid re-emit BOTH are moved to history: the input
58
+ * to preserve the LLM output AND free its path for a fresh host Write, the
59
+ * canonical so the completion gate (`contractArtifactExists`) re-fires and the
60
+ * producing phase re-emits. The returned `archivedPath` references the input
61
+ * archive when present (what the host re-authors), else the canonical archive.
62
+ * A tool-derived artifact with no input file (e.g. a merged-shard artifact)
63
+ * archives only its canonical envelope. If any move throws, the rest are left
64
+ * in place (`originalFree: false`) rather than silently dropped. `renameFn` is a
65
+ * DI seam so a failed history move is testable.
58
66
  */
59
67
  export declare function archiveContractArtifact(artifactsDir: string, name: ContractPipelineArtifactName, label: "stale" | "invalid", renameFn?: (from: string, to: string) => Promise<void>): Promise<ArchiveOutcome>;
60
68
  /**
@@ -73,11 +81,13 @@ export interface ContractIngestionResult {
73
81
  }[];
74
82
  }
75
83
  /**
76
- * Wrap raw worker-written artifact payloads into validated envelopes. Workers
77
- * write the bare payload the role schema describes; the envelope (content hash
78
- * + dependency hashes) is the orchestrator's deterministic bookkeeping, added
79
- * here. CP_ARTIFACT_NAMES is dependency-ordered, so dependencies are enveloped
80
- * before their dependents and dependency hashes are always available.
84
+ * Derive validated canonical envelopes from the host's plain INPUT files (D3).
85
+ * The host writes the bare payload the role schema describes to
86
+ * `<name>.input.json`; the tool reads it here, validates it, and writes the
87
+ * content-hash envelope to the canonical `<name>.json` the host's input file
88
+ * is never mutated in place. CP_ARTIFACT_NAMES is dependency-ordered, so
89
+ * dependencies are enveloped before their dependents and dependency hashes are
90
+ * always available.
81
91
  */
82
92
  export declare function ingestContractArtifacts(artifactsDir: string): Promise<ContractIngestionResult>;
83
93
  export interface ContractPipelineCheckResult {
@@ -1 +1 @@
1
- {"version":3,"file":"contractPipeline.d.ts","sourceRoot":"","sources":["../../../src/remediate/steps/contractPipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contractPipeline.d.ts","sourceRoot":"","sources":["../../../src/remediate/steps/contractPipeline.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,7 @@ import { existsSync } from "node:fs";
23
23
  import { mkdir, rename } from "node:fs/promises";
24
24
  import { join } from "node:path";
25
25
  import { writeJsonFile, readOptionalJsonFile, formatValidationIssues, hashContent, isRecord, withFsRetry, captureStepBoundaryFriction, } from "audit-tools/shared";
26
- import { CP_ARTIFACT_NAMES, contractArtifactExists, contractArtifactFilePath, contractPipelineDir, detectStaleArtifacts, envelopePayload, isEnvelope, pathASeedFilePath, readContractArtifact, stampToolCreatedAt, writeContractArtifact, } from "../contractPipeline/artifactStore.js";
26
+ import { CP_ARTIFACT_NAMES, contractArtifactExists, contractArtifactFilePath, contractInputFilePath, contractPipelineDir, detectStaleArtifacts, envelopePayload, envelopeSemanticHash, isEnvelope, pathASeedFilePath, payloadSemanticHash, readContractArtifact, stampToolCreatedAt, writeContractArtifact, } from "../contractPipeline/artifactStore.js";
27
27
  import { readIntakeRiskSignal, writeIntakeRiskSignal, escalateRiskSignal, decompositionRiskEvidence, adversarialDepthForTier, roundTripGranularityForTier, } from "../riskSignal.js";
28
28
  import { phaseOrdinalForObligations, moduleSlug, renderPhaseCutSection, } from "../contractPipeline/phaseCut.js";
29
29
  import { ensurePhaseCutArtifact, readPhaseCutArtifact } from "../contractPipeline/phaseCutArtifact.js";
@@ -31,6 +31,7 @@ import { detectCyclicSeamObligations, validateCycleBreak, } from "../contractPip
31
31
  import { deriveObligationLedger, buildTestValidatorPlanScaffold, buildImplementationDagScaffold, acceptedCounterexampleIds, advisoryCritiqueItems, } from "../contractPipeline/derive.js";
32
32
  import { ensureNodeId, toBlockId } from "../contractPipeline/idRegistry.js";
33
33
  import { captureReviewSnapshot, computeReReviewDelta, isReviewArtifact, readReviewSnapshot, renderReReviewSection, reviewSnapshotExists, } from "../contractPipeline/reviewSnapshot.js";
34
+ import { captureTestPlanCarry, readTestPlanCarry, } from "../contractPipeline/testPlanCarry.js";
34
35
  import { renderContractPipelinePrompt, renderContractRepairPrompt, CONTRACT_PIPELINE_PHASE_ORDER, } from "./contractPipelinePrompts.js";
35
36
  import { CONTRACT_PIPELINE_VALIDATORS, CP_MODULE_CONTRACTS_VERSION, CP_FINALIZED_MODULE_CONTRACTS_VERSION, validateDesignSpecGates, validateGoalIdConsistency, validateImplementationDAGIntegrity, validatePairedObligations, validateEvidenceThreaded, validateDigestCoverage, validateReconciliationDerivation, validateContractCitationGrounding, deriveNodeModelTierFromNode, } from "../validation/contractPipeline.js";
36
37
  import { scheduleWave } from "./dispatch.js";
@@ -144,13 +145,18 @@ export async function writeCyclicSeamRepairState(artifactsDir, state) {
144
145
  async function buildScaffoldSection(phase, artifactsDir) {
145
146
  const ledger = envelopePayload(await readContractArtifact(artifactsDir, "obligation_ledger"));
146
147
  if (phase === "test_validator_plan") {
147
- const scaffold = buildTestValidatorPlanScaffold(ledger);
148
+ const prior = await readTestPlanCarry(artifactsDir);
149
+ const scaffold = buildTestValidatorPlanScaffold(ledger, prior);
148
150
  if (scaffold.test_specs.length === 0)
149
151
  return undefined;
150
- const path = contractArtifactFilePath(artifactsDir, "test_validator_plan");
152
+ const carriedCount = scaffold.test_specs.filter((s) => s.assertions.length > 0).length;
153
+ const path = contractInputFilePath(artifactsDir, "test_validator_plan");
154
+ const carryNote = carriedCount > 0
155
+ ? `\n\n**Carried from the prior round (C3):** ${carriedCount} spec(s) already have assertions — their obligation premise is unchanged, so keep them as-is unless you intend to revise. Only the specs with an EMPTY \`assertions\` array need authoring.`
156
+ : "";
151
157
  return `## Pre-filled Skeleton — fill only the blank slots
152
158
 
153
- The obligation ledger was derived deterministically. Below is the test-plan skeleton: one spec per testable obligation, with \`obligation_id\`, \`name\`, \`kind\`, and \`scope_anchors\` already filled. Fill ONLY each \`assertions\` array — every spec needs at least one positive (satisfied-path) assertion AND one negative (failure-path) assertion. The negative assertion MUST name one of the spec's \`scope_anchors\` (the touched symbol/file) and must not be an unscoped repo-wide scan, or it fails the negative-scoping gate. Do not add, remove, or rename specs. If an obligation is genuinely untestable, replace its spec body with an \`inapplicable_claim\` citing its \`obligation_id\` and a falsifiable reason.
159
+ The obligation ledger was derived deterministically. Below is the test-plan skeleton: one spec per testable obligation, with \`obligation_id\`, \`name\`, \`kind\`, and \`scope_anchors\` already filled. Fill ONLY each \`assertions\` array — every spec needs at least one positive (satisfied-path) assertion AND one negative (failure-path) assertion. The negative assertion MUST name one of the spec's \`scope_anchors\` (the touched symbol/file) and must not be an unscoped repo-wide scan, or it fails the negative-scoping gate. Do not add, remove, or rename specs. If an obligation is genuinely untestable, replace its spec body with an \`inapplicable_claim\` citing its \`obligation_id\` and a falsifiable reason.${carryNote}
154
160
 
155
161
  \`\`\`json
156
162
  ${JSON.stringify(scaffold, null, 2)}
@@ -169,10 +175,10 @@ Self-check before next-step: \`${loaderCommand(`validate-artifact --name test_va
169
175
  .map((a) => `- \`${a.id}\`: ${a.description}`)
170
176
  .join("\n")}`
171
177
  : "";
172
- const path = contractArtifactFilePath(artifactsDir, "implementation_dag");
178
+ const path = contractInputFilePath(artifactsDir, "implementation_dag");
173
179
  return `## Pre-filled Skeleton — fill only the blank slots
174
180
 
175
- Below is the implementation-DAG skeleton: one node per obligation (covering every obligation and accepted counterexample). Fill ONLY each node's \`title\`, \`description\`, and \`targeted_commands\`. You MAY merge nodes that belong together and add real \`depends_on\`/\`edges\` ordering, as long as every obligation stays covered (in \`satisfies_obligations\` or \`verification_obligation_ids\`) and every accepted counterexample stays in some node's \`addresses_counterexamples\`.${advisoryBlock}
181
+ Below is the implementation-DAG skeleton: ONE node per module (its obligations already grouped), covering every obligation and accepted counterexample. Fill ONLY each node's \`title\`, \`description\`, and \`targeted_commands\`. You MAY further merge or split nodes and add real \`depends_on\`/\`edges\` ordering, as long as every obligation stays covered (in \`satisfies_obligations\` or \`verification_obligation_ids\`) and every accepted counterexample stays in some node's \`addresses_counterexamples\`.${advisoryBlock}
176
182
 
177
183
  \`\`\`json
178
184
  ${JSON.stringify(scaffold, null, 2)}
@@ -183,25 +189,53 @@ Self-check before next-step: \`${loaderCommand(`validate-artifact --name impleme
183
189
  return undefined;
184
190
  }
185
191
  /**
186
- * Archive an artifact file into `<contract>/history/` instead of deleting it,
187
- * so a repair loop never silently destroys an LLM output. On a successful move
188
- * the original path is free (a fresh Write recreates it cleanly); if the move
189
- * throws, the original is preserved in place (`originalFree: false`) rather than
190
- * silently dropped. `renameFn` is a DI seam so a failed history move is testable.
192
+ * Archive an artifact into `<contract>/history/` instead of deleting it, so a
193
+ * repair loop never silently destroys an LLM output. Two disjoint files exist
194
+ * per artifact (D3): the host's plain INPUT (`<name>.input.json` the LLM
195
+ * emission) and the tool's canonical envelope (`<name>.json` regenerable
196
+ * bookkeeping). On a stale/invalid re-emit BOTH are moved to history: the input
197
+ * to preserve the LLM output AND free its path for a fresh host Write, the
198
+ * canonical so the completion gate (`contractArtifactExists`) re-fires and the
199
+ * producing phase re-emits. The returned `archivedPath` references the input
200
+ * archive when present (what the host re-authors), else the canonical archive.
201
+ * A tool-derived artifact with no input file (e.g. a merged-shard artifact)
202
+ * archives only its canonical envelope. If any move throws, the rest are left
203
+ * in place (`originalFree: false`) rather than silently dropped. `renameFn` is a
204
+ * DI seam so a failed history move is testable.
191
205
  */
192
206
  export async function archiveContractArtifact(artifactsDir, name, label, renameFn = rename) {
193
- const source = contractArtifactFilePath(artifactsDir, name);
194
- if (!existsSync(source))
207
+ const inputSource = contractInputFilePath(artifactsDir, name);
208
+ const canonicalSource = contractArtifactFilePath(artifactsDir, name);
209
+ const hasInput = existsSync(inputSource);
210
+ const hasCanonical = existsSync(canonicalSource);
211
+ if (!hasInput && !hasCanonical)
195
212
  return { originalFree: true };
196
213
  const historyDir = join(contractPipelineDir(artifactsDir), "history");
197
214
  await mkdir(historyDir, { recursive: true });
198
- const archivedPath = join(historyDir, `${name}.${label}-${Date.now()}.json`);
199
- try {
200
- await withFsRetry(() => renameFn(source, archivedPath));
215
+ const stamp = Date.now();
216
+ let archivedPath;
217
+ // Preserve the host's plain output (the LLM emission) first, freeing the input
218
+ // path so the rewrite signpost's fresh Write lands cleanly.
219
+ if (hasInput) {
220
+ const dest = join(historyDir, `${name}.${label}-${stamp}.input.json`);
221
+ archivedPath = dest;
222
+ try {
223
+ await withFsRetry(() => renameFn(inputSource, dest));
224
+ }
225
+ catch {
226
+ return { archivedPath, originalFree: false };
227
+ }
201
228
  }
202
- catch {
203
- // Move failed: preserve the original in place rather than drop it.
204
- return { archivedPath, originalFree: false };
229
+ // Clear the tool-derived canonical envelope so the completion gate re-fires.
230
+ if (hasCanonical) {
231
+ const dest = join(historyDir, `${name}.${label}-${stamp}.json`);
232
+ try {
233
+ await withFsRetry(() => renameFn(canonicalSource, dest));
234
+ }
235
+ catch {
236
+ return { archivedPath: archivedPath ?? dest, originalFree: false };
237
+ }
238
+ archivedPath = archivedPath ?? dest;
205
239
  }
206
240
  return { archivedPath, originalFree: true };
207
241
  }
@@ -215,22 +249,36 @@ export function rejectionRewriteInstruction(archivedPath) {
215
249
  return `\n\n> Prior output archived to ${where}; Write a fresh complete artifact at its original path — do NOT Edit the previous file.`;
216
250
  }
217
251
  /**
218
- * Wrap raw worker-written artifact payloads into validated envelopes. Workers
219
- * write the bare payload the role schema describes; the envelope (content hash
220
- * + dependency hashes) is the orchestrator's deterministic bookkeeping, added
221
- * here. CP_ARTIFACT_NAMES is dependency-ordered, so dependencies are enveloped
222
- * before their dependents and dependency hashes are always available.
252
+ * Derive validated canonical envelopes from the host's plain INPUT files (D3).
253
+ * The host writes the bare payload the role schema describes to
254
+ * `<name>.input.json`; the tool reads it here, validates it, and writes the
255
+ * content-hash envelope to the canonical `<name>.json` the host's input file
256
+ * is never mutated in place. CP_ARTIFACT_NAMES is dependency-ordered, so
257
+ * dependencies are enveloped before their dependents and dependency hashes are
258
+ * always available.
223
259
  */
224
260
  export async function ingestContractArtifacts(artifactsDir) {
225
261
  const ingested = [];
226
262
  const invalid = [];
227
263
  for (const name of CP_ARTIFACT_NAMES) {
228
- const raw = await readOptionalJsonFile(contractArtifactFilePath(artifactsDir, name));
229
- if (raw === undefined || raw === null || isEnvelope(raw))
264
+ const raw = await readOptionalJsonFile(contractInputFilePath(artifactsDir, name));
265
+ if (raw === undefined || raw === null)
230
266
  continue;
267
+ // The host writes a plain payload; defensively unwrap if an envelope slipped
268
+ // into the input path so ingest and the validate-artifact self-check agree.
269
+ const bare = isEnvelope(raw) ? raw.payload : raw;
231
270
  // The host has no clock: stamp the tool-owned `created_at` before validation
232
271
  // so the host never has to invent a timestamp (B4). No-op when already present.
233
- const payload = stampToolCreatedAt(raw, new Date().toISOString());
272
+ const payload = stampToolCreatedAt(bare, new Date().toISOString());
273
+ // Idempotency: the input file persists across next-step calls, so skip
274
+ // re-ingesting an input whose canonical envelope already reflects it. The
275
+ // semantic projection strips the tool-stamped `created_at`, so a no-op
276
+ // re-ingest is stable (it does NOT re-fire snapshots or rewrite the
277
+ // envelope); only a genuine host edit re-derives.
278
+ const existing = await readContractArtifact(artifactsDir, name);
279
+ if (existing && envelopeSemanticHash(existing) === payloadSemanticHash(name, payload)) {
280
+ continue;
281
+ }
234
282
  const issues = CONTRACT_PIPELINE_VALIDATORS[name](payload, name).filter((issue) => issue.severity === "error");
235
283
  if (issues.length > 0) {
236
284
  invalid.push({ name, issues });
@@ -245,6 +293,11 @@ export async function ingestContractArtifacts(artifactsDir) {
245
293
  if (isReviewArtifact(name)) {
246
294
  await captureReviewSnapshot(artifactsDir, name, payload, new Date().toISOString());
247
295
  }
296
+ // C3: snapshot the authored test-plan so a later re-emit can diff-carry the
297
+ // assertions of unchanged obligations instead of forcing a full re-author.
298
+ if (name === "test_validator_plan") {
299
+ await captureTestPlanCarry(artifactsDir, payload, new Date().toISOString());
300
+ }
248
301
  }
249
302
  return { ingested, invalid };
250
303
  }
@@ -863,10 +916,14 @@ export async function buildNextContractPipelineStep(options) {
863
916
  // Detect the path-A seed file: present only for structured_audit runs.
864
917
  const seedPath = pathASeedFilePath(artifactsDir);
865
918
  const pathASeedPath = existsSync(seedPath) ? seedPath : undefined;
866
- // Resolve artifact paths for the prompt renderers.
919
+ // Resolve artifact paths for the prompt renderers. The host's world is the
920
+ // plain INPUT files (D3): every host-facing path — both where a role WRITES its
921
+ // output and where it READS its upstreams — is `<name>.input.json`. The tool's
922
+ // canonical envelopes (`<name>.json`) are derived at ingest and never named to
923
+ // the host.
867
924
  const artifactPaths = {};
868
925
  for (const name of CP_ARTIFACT_NAMES) {
869
- artifactPaths[name] = join(cpDir, `${name}.json`);
926
+ artifactPaths[name] = contractInputFilePath(artifactsDir, name);
870
927
  }
871
928
  const buildStep = (params) => {
872
929
  const nextCommand = loaderCommand("next-step");
@@ -1614,7 +1671,7 @@ ${cycleDescriptions}
1614
1671
  1. **Mediator module** — Introduce a third obligation/module that both sides depend on. The mediator owns the shared primitive; neither original module defines an interface for the other.
1615
1672
  2. **Single authority** — Designate one obligation/module as the definitive owner of the co-defined interface. The other becomes a consumer only. This is recorded as a named, scoped exception.
1616
1673
 
1617
- To proceed, manually rewrite \`${join(cpDir, "obligation_ledger.json")}\` so that no circular \`depends_on\` references exist, then delete \`${join(cpDir, "cyclic_seam_resolution.json")}\` and \`${cyclicSeamRepairStatePath(artifactsDir)}\` and re-run next-step.
1674
+ To proceed, manually rewrite \`${contractInputFilePath(artifactsDir, "obligation_ledger")}\` so that no circular \`depends_on\` references exist, then delete \`${contractInputFilePath(artifactsDir, "cyclic_seam_resolution")}\` and \`${cyclicSeamRepairStatePath(artifactsDir)}\` and re-run next-step.
1618
1675
 
1619
1676
  If you choose to stop instead, this run will remain blocked.
1620
1677
  `,
@@ -1650,7 +1707,7 @@ Manually rewrite the obligation_ledger to remove circular depends_on references,
1650
1707
  const cycleDescriptions = detectedCycles
1651
1708
  .map((c, i) => `Cycle ${i + 1}: [${c.members.join(", ")}]`)
1652
1709
  .join("\n");
1653
- const outputPath = join(cpDir, "cyclic_seam_resolution.json");
1710
+ const outputPath = contractInputFilePath(artifactsDir, "cyclic_seam_resolution");
1654
1711
  const nextCommand = loaderCommand("next-step");
1655
1712
  repairState.attempts.push({
1656
1713
  ledger_hash: ledgerHash,
@@ -1676,7 +1733,7 @@ For each cycle, choose one:
1676
1733
 
1677
1734
  ## Required Inputs
1678
1735
 
1679
- - \`${join(cpDir, "obligation_ledger.json")}\` (obligation_ledger)
1736
+ - \`${contractInputFilePath(artifactsDir, "obligation_ledger")}\` (obligation_ledger)
1680
1737
 
1681
1738
  ## Your Task
1682
1739