@memberjunction/task-graph 6.1.0-edge.1 → 6.1.0-edge.2

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 (36) hide show
  1. package/README.md +185 -0
  2. package/dist/TaskClaimStore.d.ts +11 -0
  3. package/dist/TaskClaimStore.d.ts.map +1 -1
  4. package/dist/TaskClaimStore.js +8 -3
  5. package/dist/TaskClaimStore.js.map +1 -1
  6. package/dist/TaskGraphDispatcher.d.ts +364 -2
  7. package/dist/TaskGraphDispatcher.d.ts.map +1 -1
  8. package/dist/TaskGraphDispatcher.js +1534 -37
  9. package/dist/TaskGraphDispatcher.js.map +1 -1
  10. package/dist/TaskGraphService.d.ts +110 -1
  11. package/dist/TaskGraphService.d.ts.map +1 -1
  12. package/dist/TaskGraphService.js +458 -19
  13. package/dist/TaskGraphService.js.map +1 -1
  14. package/dist/TaskLoopExecutor.d.ts +62 -0
  15. package/dist/TaskLoopExecutor.d.ts.map +1 -0
  16. package/dist/TaskLoopExecutor.js +248 -0
  17. package/dist/TaskLoopExecutor.js.map +1 -0
  18. package/dist/WorkflowSpecSync.d.ts +28 -2
  19. package/dist/WorkflowSpecSync.d.ts.map +1 -1
  20. package/dist/WorkflowSpecSync.js +83 -2
  21. package/dist/WorkflowSpecSync.js.map +1 -1
  22. package/dist/index.d.ts +1 -0
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +1 -0
  25. package/dist/index.js.map +1 -1
  26. package/dist/operations/TaskGraphOperations.d.ts.map +1 -1
  27. package/dist/operations/TaskGraphOperations.js +4 -0
  28. package/dist/operations/TaskGraphOperations.js.map +1 -1
  29. package/dist/operations/WorkflowDraftOperation.d.ts +37 -0
  30. package/dist/operations/WorkflowDraftOperation.d.ts.map +1 -0
  31. package/dist/operations/WorkflowDraftOperation.js +141 -0
  32. package/dist/operations/WorkflowDraftOperation.js.map +1 -0
  33. package/dist/types.d.ts +114 -0
  34. package/dist/types.d.ts.map +1 -1
  35. package/dist/types.js.map +1 -1
  36. package/package.json +10 -7
@@ -1 +1 @@
1
- {"version":3,"file":"TaskGraphService.js","sourceRoot":"","sources":["../src/TaskGraphService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TaskGraphService.js","sourceRoot":"","sources":["../src/TaskGraphService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EAEH,QAAQ,EACR,SAAS,EACT,sBAAsB,EACtB,OAAO,GAGV,MAAM,sBAAsB,CAAC;AAQ9B,OAAO,EACH,sBAAsB,EACtB,mBAAmB,EACnB,cAAc,EACd,qBAAqB,EAKrB,QAAQ,GACX,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AA8DpD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAEpC,uFAAuF;AACvF,MAAM,uBAAuB,GAA4B;IACrD,YAAY,EAAE,SAAS;IACvB,aAAa,EAAE,CAAC;IAChB,gBAAgB,EAAE,OAAO;IACzB,qBAAqB,EAAE,IAAI;IAC3B,iBAAiB,EAAE,IAAI;CAC1B,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,UAAU,4BAA4B,CAAC,GAA8B;IACvE,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,GAAG,uBAAuB,EAAE,CAAC;IAChD,IAAI,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAqC,CAAC;QACnE,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;YAAE,OAAO,EAAE,GAAG,uBAAuB,EAAE,CAAC;QACjF,OAAO;YACH,GAAG,uBAAuB;YAC1B,GAAG,MAAM;YACT,wFAAwF;YACxF,sFAAsF;YACtF,oFAAoF;YACpF,YAAY,EAAE,MAAM,CAAC,YAAY,KAAK,UAAU,IAAI,MAAM,CAAC,YAAY,KAAK,MAAM;gBAC9E,CAAC,CAAC,MAAM,CAAC,YAAY;gBACrB,CAAC,CAAC,SAAS;YACf,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;YACzE,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;SAC1F,CAAC;IACN,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,EAAE,GAAG,uBAAuB,EAAE,CAAC;IAC1C,CAAC;AACL,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,oBAAoB,CAAC,IAA6B;IAC9D,OAAO,IAAI,CAAC,aAAa,IAAI,kBAAkB,CAAC;AACpD,CAAC;AAWD,gEAAgE;AAChE,MAAM,cAAc,GAAG,aAAa,CAAC;AAErC;;;;;;;;;;GAUG;AACH,MAAM,kBAAkB,GAA6C;IACjE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ;CAC3D,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAuB;IAC1D,MAAM,MAAM,GAAwC,EAAE,CAAC;IAEvD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACtC,IAAI,KAAK,EAAE,OAAO,IAAI,KAAK,EAAE,kBAAkB,EAAE,CAAC;QAC9C,MAAM,CAAC,KAAK,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,EAAE,CAAC;IAC5F,CAAC;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACxC,IAAI,MAAM,EAAE,kBAAkB;QAAE,MAAM,CAAC,MAAM,GAAG,EAAE,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,EAAE,CAAC;IAElG,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC1C,IAAI,OAAO;QAAE,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;IAEtC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACxC,IAAI,OAAO;QAAE,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC;IAEpC,iGAAiG;IACjG,iGAAiG;IACjG,kEAAkE;IAClE,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACtC,IAAI,KAAK,EAAE,YAAY,IAAI,KAAK,EAAE,cAAc,EAAE,CAAC;QAC/C,MAAM,CAAC,KAAK,GAAG,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC;IAC9F,CAAC;IAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC5C,IAAI,QAAQ;QAAE,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAEzC,6FAA6F;IAC7F,iFAAiF;IACjF,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACxC,MAAM,YAAY,GAAG,MAAM,EAAE,YAAY,CAAC;IAC1C,MAAM,aAAa,GAAG,MAAM,EAAE,aAAa,CAAC;IAC5C,IAAI,YAAY;QAAE,MAAM,CAAC,YAAY,GAAG,YAAY,CAAC;IACrD,IAAI,aAAa;QAAE,MAAM,CAAC,aAAa,GAAG,aAAa,CAAC;IAExD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,MAAM,CAAC,MAAM,GAAG;YACZ,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc;YAC1C,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;YAClC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;SAC/B,CAAC;IACN,CAAC;IAED,+FAA+F;IAC/F,+FAA+F;IAC/F,+FAA+F;IAC/F,iGAAiG;IACjG,2FAA2F;IAC3F,IAAI,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrD,MAAM,CAAC,MAAM,GAAG;YACZ,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAChB,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAChB,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;YACxB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;SAC7B,CAAC;IACN,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1D,CAAC;AAED,mFAAmF;AACnF,MAAM,sBAAsB,GAAG,sBAAsB,CAAC;AAEtD;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,IAAuB;IACnD,OAAO,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC;AACxE,CAAC;AAED,kFAAkF;AAClF,SAAS,YAAY,CAAC,IAAuB;IACzC,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC1F,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC;AAED,gFAAgF;AAChF,SAAS,aAAa,CAAC,IAAuB;IAC1C,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC1F,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC;AAED,gFAAgF;AAChF,SAAS,aAAa,CAAC,IAAuB;IAC1C,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC1F,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,oBAAoB,CAAC,QAA2B;IACrD,MAAM,SAAS,GAAG,QAAiD,CAAC;IACpE,OAAO,SAAS,CAAC,0BAA0B,KAAK,IAAI,IAAI,OAAO,SAAS,CAAC,sBAAsB,KAAK,UAAU;QAC1G,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,SAAS,CAAC;AACpB,CAAC;AAQD,MAAM,UAAU,mBAAmB,CAAC,IAAmB;IACnD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACjF,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAExC,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1E,OAAO,CACH,IAAI,IAAI,CAAC,YAAY,wBAAwB,MAAM,IAAI;QACvD,6FAA6F;QAC7F,gGAAgG,CACnG,CAAC;AACN,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,wBAAwB,CAAC,IAAmB,EAAE,eAAuB;IACjF,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACtC,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC;QACtD,OAAO,CAAC,CAAC,QAAQ,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IACH,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAExC,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9D,OAAO,CACH,IAAI,IAAI,CAAC,YAAY,sBAAsB,MAAM,6CAA6C;QAC9F,2FAA2F;QAC3F,6EAA6E,CAChF,CAAC;AACN,CAAC;AAED,MAAM,OAAO,gBAAgB;IACzB;;;;;;;OAOG;IACI,KAAK,CAAC,MAAM,CAAC,IAAmB,EAAE,OAA+B;QACpE,4FAA4F;QAC5F,6FAA6F;QAC7F,MAAM,UAAU,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YACpB,MAAM,OAAO,GAAG,eAAe,IAAI,CAAC,YAAY,kBAAkB,sBAAsB,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9G,QAAQ,CAAC,sBAAsB,OAAO,EAAE,CAAC,CAAC;YAC1C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;QACrD,CAAC;QAED,4FAA4F;QAC5F,6FAA6F;QAC7F,iFAAiF;QACjF,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,UAAU,EAAE,CAAC;YACb,QAAQ,CAAC,sBAAsB,UAAU,EAAE,CAAC,CAAC;YAC7C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;QACxD,CAAC;QAED,6FAA6F;QAC7F,0FAA0F;QAC1F,uFAAuF;QACvF,6FAA6F;QAC7F,2FAA2F;QAC3F,MAAM,WAAW,GAAG,wBAAwB,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC3E,IAAI,WAAW,EAAE,CAAC;YACd,QAAQ,CAAC,sBAAsB,WAAW,EAAE,CAAC,CAAC;YAC9C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC;QACzD,CAAC;QAED,4FAA4F;QAC5F,4FAA4F;QAC5F,6FAA6F;QAC7F,sCAAsC;QACtC,MAAM,KAAK,GAAG,OAAO,CAAC,aAAa,IAAI,CAAC,CAAC;QACzC,IAAI,KAAK,IAAI,kBAAkB,EAAE,CAAC;YAC9B,MAAM,OAAO,GACT,IAAI,IAAI,CAAC,YAAY,4BAA4B,KAAK,6BAA6B;gBACnF,oFAAoF;gBACpF,gEAAgE,CAAC;YACrE,QAAQ,CAAC,sBAAsB,OAAO,EAAE,CAAC,CAAC;YAC1C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;QACrD,CAAC;QAED,IAAI,CAAC;YACD,uFAAuF;YACvF,sFAAsF;YACtF,qDAAqD;YACrD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC/D,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;gBAC1B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,cAAc,CAAC,YAAY,EAAE,CAAC;YACzE,CAAC;YACD,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACjE,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;gBAC3B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,eAAe,CAAC,YAAY,EAAE,CAAC;YAC1E,CAAC;YACD,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACjE,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;gBAC3B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,eAAe,CAAC,YAAY,EAAE,CAAC;YAC1E,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAEtD,yCAAyC;YACzC,EAAE;YACF,uFAAuF;YACvF,qFAAqF;YACrF,uFAAuF;YACvF,uFAAuF;YACvF,0EAA0E;YAC1E,EAAE;YACF,uFAAuF;YACvF,uFAAuF;YACvF,uFAAuF;YACvF,qFAAqF;YACrF,yFAAyF;YACzF,cAAc;YACd,EAAE;YACF,mFAAmF;YACnF,oFAAoF;YACpF,kFAAkF;YAClF,yCAAyC;YACzC,EAAE;YACF,uFAAuF;YACvF,wFAAwF;YACxF,yFAAyF;YACzF,mFAAmF;YACnF,wFAAwF;YACxF,6DAA6D;YAC7D,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,MAAM,sBAAsB,CAC5D,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,EACtC,KAAK,IAAI,EAAE;gBACP,8EAA8E;gBAC9E,kEAAkE;gBAClE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;gBACrE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,eAAe,CAClC,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,CAAC,GAAI,EAAE,eAAe,CAAC,GAAI,EAAE,eAAe,CAAC,GAAI,EAAE,OAAO,CACvG,CAAC;gBACF,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;gBACnD,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;YACtD,CAAC,CACJ,CAAC;YAEF,SAAS,CACL,iCAAiC,IAAI,CAAC,YAAY,aAAa,YAAY,KAAK,SAAS,CAAC,IAAI,YAAY;gBAC1G,6BAA6B,CAChC,CAAC;YACF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;QAC/E,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,MAAM,OAAO,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC3D,QAAQ,CAAC,yCAAyC,IAAI,CAAC,YAAY,MAAM,OAAO,EAAE,CAAC,CAAC;YACpF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;QACrD,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,MAAM,CAAC,YAAoB,EAAE,OAA+B;QACrE,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YAChE,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;gBAC3B,mFAAmF;gBACnF,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;oBAAE,SAAS;gBACzE,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC;gBAC3B,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;oBACxB,QAAQ,CAAC,4CAA4C,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,EAAE,CAAC,CAAC;gBAChI,CAAC;YACL,CAAC;YAED,wEAAwE;YACxE,sFAAsF;YACtF,uFAAuF;YACvF,uFAAuF;YACvF,uFAAuF;YACvF,0CAA0C;YAC1C,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;YAElE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAe,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;YACtG,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAAE,OAAO,KAAK,CAAC;YACrD,MAAM,CAAC,MAAM,GAAG,WAAW,CAAC;YAC5B,MAAM,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;YAChC,OAAO,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QAC/B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,QAAQ,CAAC,wCAAwC,YAAY,KAAK,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAChH,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED;;;;;;;;;;;OAWG;IACK,KAAK,CAAC,kBAAkB,CAAC,OAAiB,EAAE,OAA+B;QAC/E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QACjC,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACxD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CACrE;gBACI,UAAU,EAAE,uBAAuB;gBACnC,WAAW,EAAE,gDAAgD,MAAM,GAAG;gBACtE,UAAU,EAAE,eAAe;gBAC3B,WAAW,EAAE,IAAI;aACpB,EACD,OAAO,CAAC,WAAW,CACtB,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAChB,QAAQ,CAAC,8DAA8D,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;gBAC5F,OAAO;YACX,CAAC;YAED,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;gBACvC,OAAO,CAAC,MAAM,GAAG,UAAU,CAAC;gBAC5B,OAAO,CAAC,QAAQ,GAAG,6CAA6C,CAAC;gBACjE,IAAI,CAAC,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;oBAC1B,QAAQ,CACJ,iDAAiD,OAAO,CAAC,EAAE,IAAI;wBAC/D,GAAG,OAAO,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,yBAAyB;wBACpF,0DAA0D,CAC7D,CAAC;gBACN,CAAC;YACL,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,SAAS,CAAC,+BAA+B,IAAI,CAAC,OAAQ,CAAC,MAAM,2CAA2C,CAAC,CAAC;YAC9G,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,QAAQ,CAAC,wDAAwD,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACnH,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,KAAK,CAAC,MAAc,EAAE,OAA+B;QAC9D,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAe,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;YACpG,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAAE,OAAO,KAAK,CAAC;YAC7C,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC3B,QAAQ,CAAC,wCAAwC,MAAM,eAAe,IAAI,CAAC,MAAM,oBAAoB,CAAC,CAAC;gBACvG,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC;YACzB,8DAA8D;YAC9D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;gBAAE,OAAO,KAAK,CAAC;YAEvC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChB,KAAK,MAAM,OAAO,IAAI,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;oBACpE,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;wBAC/B,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;wBAC3B,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;oBACzB,CAAC;gBACL,CAAC;YACL,CAAC;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,QAAQ,CAAC,uCAAuC,MAAM,KAAK,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACzG,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED,2EAA2E;IAC3E,YAAY;IACZ,2EAA2E;IAE3E,6FAA6F;IACrF,KAAK,CAAC,aAAa,CACvB,IAAmB,EACnB,OAA+B;QAE/B,4FAA4F;QAC5F,0FAA0F;QAC1F,+BAA+B;QAC/B,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC7D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;QAEjE,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CACvE,EAAE,UAAU,EAAE,eAAe,EAAE,WAAW,EAAE,YAAY,MAAM,GAAG,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,EACjH,OAAO,CAAC,WAAW,CACtB,CAAC;QAEF,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACzE,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,OAAO;gBACH,OAAO,EAAE,KAAK;gBACd,YAAY,EACR,eAAe,IAAI,CAAC,YAAY,gBAAgB,OAAO,CAAC,MAAM,sBAAsB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;oBAC1G,4EAA4E;aACnF,CAAC;QACN,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IACzC,CAAC;IAED;;;;;;OAMG;IACH;;;;;OAKG;IACK,KAAK,CAAC,cAAc,CACxB,IAAmB,EACnB,OAA+B;QAE/B,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAC9D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;QAEjE,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CACvE,EAAE,UAAU,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,MAAM,GAAG,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,EAClH,OAAO,CAAC,WAAW,CACtB,CAAC;QAEF,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACzE,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,OAAO;gBACH,OAAO,EAAE,KAAK;gBACd,YAAY,EACR,eAAe,IAAI,CAAC,YAAY,gBAAgB,OAAO,CAAC,MAAM,uBAAuB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;oBAC3G,4EAA4E;aACnF,CAAC;QACN,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IACzC,CAAC;IAEO,KAAK,CAAC,cAAc,CACxB,IAAmB,EACnB,OAA+B;QAE/B,qEAAqE;QACrE,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAC9D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;QAEjE,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CACvE,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,YAAY,MAAM,GAAG,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,EAC/G,OAAO,CAAC,WAAW,CACtB,CAAC;QAEF,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACzE,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,OAAO;gBACH,OAAO,EAAE,KAAK;gBACd,YAAY,EACR,eAAe,IAAI,CAAC,YAAY,gBAAgB,OAAO,CAAC,MAAM,uBAAuB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;oBAC3G,4EAA4E;aACnF,CAAC;QACN,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IACzC,CAAC;IAED,mEAAmE;IAC3D,KAAK,CAAC,cAAc,CAAC,OAA+B;QACxD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CACzE,EAAE,UAAU,EAAE,gBAAgB,EAAE,WAAW,EAAE,SAAS,cAAc,GAAG,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE,EAC3H,OAAO,CAAC,WAAW,CACtB,CAAC;QACF,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACxC,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;QAExB,MAAM,EAAE,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAmB,gBAAgB,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAC3G,EAAE,CAAC,SAAS,EAAE,CAAC;QACf,EAAE,CAAC,IAAI,GAAG,cAAc,CAAC;QACzB,EAAE,CAAC,WAAW,GAAG,gDAAgD,CAAC;QAClE,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,+BAA+B,EAAE,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,EAAE,CAAC,CAAC;QAC1G,CAAC;QACD,OAAO,EAAE,CAAC,EAAE,CAAC;IACjB,CAAC;IAED,mEAAmE;IAC3D,KAAK,CAAC,aAAa,CAAC,IAAmB,EAAE,UAAkB,EAAE,OAA+B;QAChG,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAe,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QACtG,MAAM,CAAC,SAAS,EAAE,CAAC;QACnB,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC;QAChC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,IAAI,uBAAuB,CAAC;QAC/D,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC;QAC3B,MAAM,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC7C,MAAM,CAAC,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,IAAI,IAAI,CAAC;QACnE,MAAM,CAAC,MAAM,GAAG,aAAa,CAAC;QAC9B,MAAM,CAAC,eAAe,GAAG,CAAC,CAAC;QAC3B,4FAA4F;QAC5F,2FAA2F;QAC3F,0FAA0F;QAC1F,uDAAuD;QACvD,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC;QAC/C,4FAA4F;QAC5F,uFAAuF;QACvF,0FAA0F;QAC1F,uFAAuF;QACvF,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC;YACjC,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,SAAS;YAC5C,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,CAAC;YACzC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,IAAI,OAAO;YAClD,qBAAqB,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI;YACjD,iBAAiB,EAAE,OAAO,CAAC,WAAW,EAAE,EAAE,IAAI,IAAI;SACnB,CAAC,CAAC;QACrC,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,iCAAiC,MAAM,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,EAAE,CAAC,CAAC;QAChH,CAAC;QACD,OAAO,MAAM,CAAC,EAAE,CAAC;IACrB,CAAC;IAED,uFAAuF;IAC/E,KAAK,CAAC,eAAe,CACzB,IAAmB,EACnB,YAAoB,EACpB,UAAkB,EAClB,cAAmC,EACnC,eAAoC,EACpC,eAAoC,EACpC,OAA+B;QAE/B,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;QACtC,yFAAyF;QACzF,0DAA0D;QAC1D,MAAM,KAAK,GAAG,cAAc,CACxB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAC/B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CACrB,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAC1F,CACJ,CAAC;QACF,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAe,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;YACpG,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACtB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;YACpC,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC;YACzB,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;YAC3C,IAAI,CAAC,QAAQ,GAAG,YAAY,CAAC;YAC7B,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,IAAI,IAAI,CAAC;YACjE,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC;YAEzB,uFAAuF;YACvF,qEAAqE;YACrE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;YAE1B,qFAAqF;YACrF,oFAAoF;YACpF,qFAAqF;YACrF,sFAAsF;YACtF,mFAAmF;YACnF,mFAAmF;YACnF,+EAA+E;YAC/E,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;gBAChB,KAAK,OAAO;oBACR,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAE,CAAC,SAAS,CAAE,CAAC;oBACvE,MAAM;gBACV,KAAK,QAAQ;oBACT,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAE,CAAC,UAAU,CAAE,CAAC;oBAC3E,MAAM;gBACV,KAAK,OAAO;oBACR,8EAA8E;oBAC9E,+EAA+E;oBAC/E,6DAA6D;oBAC7D,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;oBACrC,MAAM;gBACV,KAAK,QAAQ;oBACT,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAE,CAAC,UAAU,CAAE,CAAC;oBAC3E,MAAM;gBACV,KAAK,SAAS,CAAC;gBACf,KAAK,OAAO,CAAC,CAAC,CAAC;oBACX,iFAAiF;oBACjF,+EAA+E;oBAC/E,8EAA8E;oBAC9E,6BAA6B;oBAC7B,MAAM,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;oBACjC,IAAI,EAAE,EAAE,MAAM;wBAAE,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAE,CAAC;yBAChE,IAAI,EAAE,EAAE,QAAQ;wBAAE,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAE,CAAC;yBACvE,IAAI,EAAE,EAAE,MAAM;wBAAE,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAE,CAAC;yBACrE,CAAC;wBACF,MAAM,IAAI,KAAK,CACX,SAAS,IAAI,CAAC,IAAI,wDAAwD;4BAC1E,sDAAsD,CACzD,CAAC;oBACN,CAAC;oBACD,MAAM;gBACV,CAAC;gBACD;oBACI,6EAA6E;oBAC7E,yEAAyE;oBACzE,qDAAqD;oBACrD,MAAM,IAAI,KAAK,CACX,SAAS,IAAI,CAAC,IAAI,eAAe,IAAI,CAAC,IAAI,4CAA4C,CACzF,CAAC;YACV,CAAC;YAED,sFAAsF;YACtF,oFAAoF;YACpF,8BAA8B;YAC9B,EAAE;YACF,uFAAuF;YACvF,sFAAsF;YACtF,wFAAwF;YACxF,gFAAgF;YAChF,mFAAmF;YACnF,YAAY;YACZ,MAAM,aAAa,GAAG,EAAE,GAAG,sBAAsB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5F,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;YAEnD,mEAAmE;YACnE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAEjF,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,EAAE,CAAC,CAAC;YACtH,CAAC;YACD,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,OAAO,GAAG,CAAC;IACf,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACK,mBAAmB,CAAC,IAAmB;QAC3C,OAAO,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,yEAAyE;IACjE,KAAK,CAAC,mBAAmB,CAC7B,IAAmB,EACnB,SAA8B,EAC9B,OAA+B;QAE/B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1C,IAAI,CAAC,MAAM;gBAAE,SAAS;YACtB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;gBACrC,MAAM,IAAI,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;gBACtC,MAAM,eAAe,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACnD,IAAI,CAAC,eAAe;oBAAE,SAAS,CAAC,2CAA2C;gBAE3E,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAyB,uBAAuB,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;gBACzH,GAAG,CAAC,SAAS,EAAE,CAAC;gBAChB,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;gBACpB,GAAG,CAAC,eAAe,GAAG,eAAe,CAAC;gBACtC,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,cAAc,CAAC;gBAC3D,oFAAoF;gBACpF,oEAAoE;gBACpE,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC;gBAEvC,gFAAgF;gBAChF,iFAAiF;gBACjF,qFAAqF;gBACrF,oFAAoF;gBACpF,oFAAoF;gBACpF,2CAA2C;gBAC3C,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC;gBACjD,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;gBAClC,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;gBAClC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;oBACtB,MAAM,IAAI,KAAK,CACX,+BAA+B,IAAI,CAAC,MAAM,OAAO,IAAI,CAAC,MAAM,KAAK,GAAG,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,EAAE,CAC1H,CAAC;gBACN,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,YAAoB,EAAE,OAA+B;QAC5E,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CACvE,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,YAAY,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE,EACnG,OAAO,CAAC,WAAW,CACtB,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;IACxD,CAAC;CACJ"}
@@ -0,0 +1,62 @@
1
+ import { type ForEachOperation, type PayloadMappingContext, type WhileOperation } from '@memberjunction/ai-core-plus';
2
+ /** Default iteration ceiling for a ForEach whose author did not set one. */
3
+ export declare const DEFAULT_FOREACH_MAX_ITERATIONS = 1000;
4
+ /** Default iteration ceiling for a While whose author did not set one. */
5
+ export declare const DEFAULT_WHILE_MAX_ITERATIONS = 100;
6
+ /** Default concurrency when a parallel loop does not specify one. */
7
+ export declare const DEFAULT_LOOP_MAX_CONCURRENCY = 10;
8
+ /** One iteration's outcome, in the shape both task runners already return. */
9
+ export type LoopIterationOutcome = {
10
+ Success: boolean;
11
+ Output?: unknown;
12
+ ErrorMessage?: string;
13
+ };
14
+ /** Runs the loop body once. Supplied by the dispatcher, which owns the action and agent runners. */
15
+ export type LoopBodyInvoker = (iteration: {
16
+ /** Zero-based iteration number. */
17
+ Index: number;
18
+ /** The current item, for ForEach. Undefined for While. */
19
+ Item?: unknown;
20
+ /** Variables bound for this iteration, ready to merge into the body's input. */
21
+ Bindings: Record<string, unknown>;
22
+ }) => Promise<LoopIterationOutcome>;
23
+ /** What a whole loop step produced. */
24
+ export type LoopExecutionResult = {
25
+ Success: boolean;
26
+ /** Persisted to `Task.OutputPayload` — what downstream steps and conditions can read. */
27
+ Output: {
28
+ iterations: number;
29
+ succeeded: number;
30
+ failed: number;
31
+ /** Each iteration's output, in iteration order, so a downstream step can index into it. */
32
+ results: unknown[];
33
+ };
34
+ ErrorMessage?: string;
35
+ };
36
+ /**
37
+ * Runs a ForEach step: the body once per item in a collection.
38
+ *
39
+ * The collection is resolved through the same mapping dialect everything else uses, so
40
+ * `static:[1,2,3]`, `payload.accounts` and a literal all behave here exactly as they do in an input
41
+ * mapping. A `collectionPath` that resolves to something that is not a list is an error rather than
42
+ * a zero-iteration success: "iterated over nothing" and "could not find the thing to iterate over"
43
+ * look identical downstream, and only one of them is a bug the author needs to hear about.
44
+ */
45
+ export declare function RunForEachLoop(op: ForEachOperation, ctx: PayloadMappingContext, invokeBody: LoopBodyInvoker): Promise<LoopExecutionResult>;
46
+ /**
47
+ * Runs a While step: the body until the condition stops being true.
48
+ *
49
+ * Always sequential and always bounded. Parallel iterations are meaningless when each one's
50
+ * necessity depends on the previous one's effect, and an unbounded loop whose condition never goes
51
+ * false is a task that holds its claim forever — so `maxIterations` has a default rather than
52
+ * being optional in practice.
53
+ *
54
+ * **An unevaluable condition stops the loop and fails it.** Treating it as false would end the loop
55
+ * quietly and report success, which is indistinguishable from the loop having finished its work.
56
+ */
57
+ export declare function RunWhileLoop(op: WhileOperation, evaluateCondition: (iteration: number) => {
58
+ Success: boolean;
59
+ Value?: unknown;
60
+ ErrorMessage?: string;
61
+ }, invokeBody: LoopBodyInvoker): Promise<LoopExecutionResult>;
62
+ //# sourceMappingURL=TaskLoopExecutor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskLoopExecutor.d.ts","sourceRoot":"","sources":["../src/TaskLoopExecutor.ts"],"names":[],"mappings":"AAuBA,OAAO,EAEH,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACtB,MAAM,8BAA8B,CAAC;AAEtC,4EAA4E;AAC5E,eAAO,MAAM,8BAA8B,OAAO,CAAC;AACnD,0EAA0E;AAC1E,eAAO,MAAM,4BAA4B,MAAM,CAAC;AAChD,qEAAqE;AACrE,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAE/C,8EAA8E;AAC9E,MAAM,MAAM,oBAAoB,GAAG;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,oGAAoG;AACpG,MAAM,MAAM,eAAe,GAAG,CAAC,SAAS,EAAE;IACtC,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,gFAAgF;IAChF,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAEpC,uCAAuC;AACvC,MAAM,MAAM,mBAAmB,GAAG;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,yFAAyF;IACzF,MAAM,EAAE;QACJ,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,2FAA2F;QAC3F,OAAO,EAAE,OAAO,EAAE,CAAC;KACtB,CAAC;IACF,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CAChC,EAAE,EAAE,gBAAgB,EACpB,GAAG,EAAE,qBAAqB,EAC1B,UAAU,EAAE,eAAe,GAC5B,OAAO,CAAC,mBAAmB,CAAC,CAuC9B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,YAAY,CAC9B,EAAE,EAAE,cAAc,EAClB,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,EACtG,UAAU,EAAE,eAAe,GAC5B,OAAO,CAAC,mBAAmB,CAAC,CA8C9B"}
@@ -0,0 +1,248 @@
1
+ /**
2
+ * @fileoverview Loop steps on the durable dispatcher — ForEach and While (plan §5.1).
3
+ *
4
+ * **Why a loop is not a graph shape.** Every other node kind maps onto the graph directly: it is one
5
+ * unit of work with edges in and out. A loop cannot be, because how many times it runs is a property
6
+ * of the *payload*, which does not exist until the steps before it have finished. Expanding a loop
7
+ * into N task rows at submission time would mean guessing N — and guessing wrong in the direction
8
+ * that silently drops work.
9
+ *
10
+ * So a loop stays one Task row, and the iteration happens inside its execution. The row's own
11
+ * `AgentID` / `ActionID` is the loop *body*, and `Configuration.forEach` / `.while` is the loop
12
+ * definition. That keeps the graph honest — one node, one row, one outcome — while letting the
13
+ * count be discovered at the only moment it can be known.
14
+ *
15
+ * **What is deliberately NOT here.** No entity access, no action engine, no agent framework. The
16
+ * caller supplies an invoker that runs one iteration; this module owns only the loop semantics —
17
+ * bounds, ordering, concurrency, delay, and what a failed iteration means. That is what makes the
18
+ * rules testable without standing up a dispatcher, and it is the same separation the action and
19
+ * agent runners already have.
20
+ *
21
+ * @module @memberjunction/task-graph
22
+ */
23
+ import { LogError, LogStatus } from '@memberjunction/core';
24
+ import { ResolveMappedInput, } from '@memberjunction/ai-core-plus';
25
+ /** Default iteration ceiling for a ForEach whose author did not set one. */
26
+ export const DEFAULT_FOREACH_MAX_ITERATIONS = 1000;
27
+ /** Default iteration ceiling for a While whose author did not set one. */
28
+ export const DEFAULT_WHILE_MAX_ITERATIONS = 100;
29
+ /** Default concurrency when a parallel loop does not specify one. */
30
+ export const DEFAULT_LOOP_MAX_CONCURRENCY = 10;
31
+ /**
32
+ * Runs a ForEach step: the body once per item in a collection.
33
+ *
34
+ * The collection is resolved through the same mapping dialect everything else uses, so
35
+ * `static:[1,2,3]`, `payload.accounts` and a literal all behave here exactly as they do in an input
36
+ * mapping. A `collectionPath` that resolves to something that is not a list is an error rather than
37
+ * a zero-iteration success: "iterated over nothing" and "could not find the thing to iterate over"
38
+ * look identical downstream, and only one of them is a bug the author needs to hear about.
39
+ */
40
+ export async function RunForEachLoop(op, ctx, invokeBody) {
41
+ const collection = resolveCollection(op.collectionPath, ctx);
42
+ if (!Array.isArray(collection)) {
43
+ return failedLoop(`The loop's collection '${op.collectionPath}' did not resolve to a list, so there is ` +
44
+ `nothing to iterate over. ` +
45
+ // The overwhelmingly common cause, and invisible without being told: a bare name is a
46
+ // LITERAL in the mapping dialect, not a path. `fields` is the string "fields"; the
47
+ // payload value is `payload.fields`. Both produce this same error, and only one of them
48
+ // is about a step that has not run yet — so say which to check first.
49
+ (looksLikeUnprefixedPath(op.collectionPath)
50
+ ? `'${op.collectionPath}' has no prefix, so it is read as the literal text ` +
51
+ `"${op.collectionPath}" rather than a payload value — did you mean ` +
52
+ `'payload.${op.collectionPath}'?`
53
+ : `Check that the step producing it ran before this one.`));
54
+ }
55
+ const limit = iterationLimit(op.maxIterations, DEFAULT_FOREACH_MAX_ITERATIONS);
56
+ const items = collection.slice(0, limit);
57
+ if (items.length < collection.length) {
58
+ // Truncation is announced. A silent cap reads downstream as "the collection was that size".
59
+ LogStatus(`[TaskLoopExecutor] Collection had ${collection.length} item(s); running the first ` +
60
+ `${items.length} because maxIterations is ${limit}.`);
61
+ }
62
+ const itemVar = op.itemVariable || 'item';
63
+ const indexVar = op.indexVariable || 'index';
64
+ const plan = items.map((item, index) => ({
65
+ Index: index,
66
+ Item: item,
67
+ Bindings: { [itemVar]: item, [indexVar]: index },
68
+ }));
69
+ return op.executionMode === 'parallel'
70
+ ? runParallel(plan, invokeBody, op.maxConcurrency ?? DEFAULT_LOOP_MAX_CONCURRENCY, op.continueOnError === true)
71
+ : runSequential(plan, invokeBody, op.continueOnError === true, op.delayBetweenIterationsMs ?? 0);
72
+ }
73
+ /**
74
+ * Runs a While step: the body until the condition stops being true.
75
+ *
76
+ * Always sequential and always bounded. Parallel iterations are meaningless when each one's
77
+ * necessity depends on the previous one's effect, and an unbounded loop whose condition never goes
78
+ * false is a task that holds its claim forever — so `maxIterations` has a default rather than
79
+ * being optional in practice.
80
+ *
81
+ * **An unevaluable condition stops the loop and fails it.** Treating it as false would end the loop
82
+ * quietly and report success, which is indistinguishable from the loop having finished its work.
83
+ */
84
+ export async function RunWhileLoop(op, evaluateCondition, invokeBody) {
85
+ const limit = iterationLimit(op.maxIterations, DEFAULT_WHILE_MAX_ITERATIONS);
86
+ const attemptVar = op.itemVariable || 'attempt';
87
+ const results = [];
88
+ let succeeded = 0;
89
+ let failed = 0;
90
+ let index = 0;
91
+ while (index < limit) {
92
+ const verdict = evaluateCondition(index);
93
+ if (!verdict.Success) {
94
+ return {
95
+ Success: false,
96
+ Output: { iterations: index, succeeded, failed, results },
97
+ ErrorMessage: `The loop's condition could not be evaluated on iteration ${index + 1}: ` +
98
+ `${verdict.ErrorMessage ?? 'unknown reason'}.`,
99
+ };
100
+ }
101
+ if (!verdict.Value)
102
+ break;
103
+ const outcome = await invokeBody({ Index: index, Bindings: { [attemptVar]: index } });
104
+ results.push(outcome.Output ?? null);
105
+ if (outcome.Success)
106
+ succeeded++;
107
+ else {
108
+ failed++;
109
+ if (op.continueOnError !== true) {
110
+ return {
111
+ Success: false,
112
+ Output: { iterations: index + 1, succeeded, failed, results },
113
+ ErrorMessage: `Iteration ${index + 1} failed: ${outcome.ErrorMessage ?? 'no reason given'}.`,
114
+ };
115
+ }
116
+ }
117
+ index++;
118
+ if (op.delayBetweenIterationsMs)
119
+ await delay(op.delayBetweenIterationsMs);
120
+ }
121
+ if (index >= limit) {
122
+ // Hitting the ceiling is reported, not treated as normal completion: the condition was still
123
+ // true, so the work is unfinished and saying otherwise would hide it.
124
+ LogError(`[TaskLoopExecutor] While loop stopped at its ${limit}-iteration ceiling with its condition still true.`);
125
+ }
126
+ return { Success: true, Output: { iterations: index, succeeded, failed, results } };
127
+ }
128
+ /** Iterations in order, one at a time. */
129
+ async function runSequential(plan, invokeBody, continueOnError, delayMs) {
130
+ const results = [];
131
+ let succeeded = 0;
132
+ let failed = 0;
133
+ for (const iteration of plan) {
134
+ const outcome = await invokeBody(iteration);
135
+ results.push(outcome.Output ?? null);
136
+ if (outcome.Success)
137
+ succeeded++;
138
+ else {
139
+ failed++;
140
+ if (!continueOnError) {
141
+ return {
142
+ Success: false,
143
+ Output: { iterations: results.length, succeeded, failed, results },
144
+ ErrorMessage: `Iteration ${iteration.Index + 1} failed: ${outcome.ErrorMessage ?? 'no reason given'}.`,
145
+ };
146
+ }
147
+ }
148
+ if (delayMs)
149
+ await delay(delayMs);
150
+ }
151
+ return summarize(results, succeeded, failed, continueOnError);
152
+ }
153
+ /**
154
+ * Iterations in bounded-concurrency batches, results kept in iteration order.
155
+ *
156
+ * Order matters even when execution does not: an output mapping that writes `results[index]` and a
157
+ * downstream step that reads it both assume position means iteration number. Returning results in
158
+ * completion order would scramble that in a way nothing detects.
159
+ */
160
+ async function runParallel(plan, invokeBody, maxConcurrency, continueOnError) {
161
+ const size = Math.max(1, maxConcurrency);
162
+ const results = new Array(plan.length).fill(null);
163
+ let succeeded = 0;
164
+ let failed = 0;
165
+ let firstFailure;
166
+ for (let start = 0; start < plan.length; start += size) {
167
+ const batch = plan.slice(start, start + size);
168
+ const outcomes = await Promise.all(batch.map((iteration) => invokeBody(iteration)));
169
+ outcomes.forEach((outcome, offset) => {
170
+ const iteration = batch[offset];
171
+ results[iteration.Index] = outcome.Output ?? null;
172
+ if (outcome.Success)
173
+ succeeded++;
174
+ else {
175
+ failed++;
176
+ firstFailure ??= `Iteration ${iteration.Index + 1} failed: ${outcome.ErrorMessage ?? 'no reason given'}.`;
177
+ }
178
+ });
179
+ // Stop launching further batches once something has failed and the author asked to stop.
180
+ // The in-flight batch is allowed to finish rather than abandoned: its work is already
181
+ // running, and half-recorded results are worse than one extra batch.
182
+ if (failed > 0 && !continueOnError) {
183
+ return { Success: false, Output: { iterations: start + batch.length, succeeded, failed, results }, ErrorMessage: firstFailure };
184
+ }
185
+ }
186
+ return summarize(results, succeeded, failed, continueOnError);
187
+ }
188
+ /**
189
+ * A loop's overall verdict.
190
+ *
191
+ * With `continueOnError`, the loop succeeds even though iterations failed — that is what the setting
192
+ * asks for — but the counts ride along in the output so the failures are visible rather than
193
+ * absorbed into a green result.
194
+ */
195
+ function summarize(results, succeeded, failed, continueOnError) {
196
+ const output = { iterations: results.length, succeeded, failed, results };
197
+ if (failed === 0 || continueOnError) {
198
+ if (failed > 0) {
199
+ LogStatus(`[TaskLoopExecutor] Loop finished with ${failed} failed iteration(s); continuing was requested.`);
200
+ }
201
+ return { Success: true, Output: output };
202
+ }
203
+ return { Success: false, Output: output, ErrorMessage: `${failed} of ${results.length} iteration(s) failed.` };
204
+ }
205
+ /**
206
+ * Turns `maxIterations` into a ceiling.
207
+ *
208
+ * Follows the convention `ForEachOperation` already documents: undefined takes the default, **0
209
+ * means unlimited**, and a positive number is the limit. The zero case is the one worth stating —
210
+ * read as a limit it would run the loop zero times, which looks exactly like an empty collection.
211
+ */
212
+ function iterationLimit(maxIterations, fallback) {
213
+ return maxIterations === undefined ? fallback : maxIterations;
214
+ }
215
+ /** Resolves a collection path through the shared mapping dialect, parsing a JSON literal if given one. */
216
+ function resolveCollection(collectionPath, ctx) {
217
+ const resolved = ResolveMappedInput(collectionPath, ctx);
218
+ if (Array.isArray(resolved))
219
+ return resolved;
220
+ if (typeof resolved === 'string') {
221
+ // `static:[1,2,3]` resolves to the string "[1,2,3]"; a literal list is the point of writing it.
222
+ try {
223
+ return JSON.parse(resolved);
224
+ }
225
+ catch {
226
+ return resolved;
227
+ }
228
+ }
229
+ return resolved;
230
+ }
231
+ /**
232
+ * True for a bare name that was probably meant as a payload path.
233
+ *
234
+ * Deliberately narrow: only an unprefixed, dot-free identifier. Anything carrying a recognized
235
+ * prefix was written deliberately, and a dotted path without one is a different mistake worth its
236
+ * own message rather than this guess.
237
+ */
238
+ function looksLikeUnprefixedPath(collectionPath) {
239
+ return /^[A-Za-z_][A-Za-z0-9_]*$/.test(collectionPath);
240
+ }
241
+ /** A loop that never got as far as its first iteration, with the reason an author can act on. */
242
+ function failedLoop(errorMessage) {
243
+ return { Success: false, Output: { iterations: 0, succeeded: 0, failed: 0, results: [] }, ErrorMessage: errorMessage };
244
+ }
245
+ function delay(ms) {
246
+ return new Promise((resolve) => setTimeout(resolve, ms));
247
+ }
248
+ //# sourceMappingURL=TaskLoopExecutor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskLoopExecutor.js","sourceRoot":"","sources":["../src/TaskLoopExecutor.ts"],"names":[],"mappings":"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"}
@@ -108,10 +108,36 @@ export declare class WorkflowSpecSync {
108
108
  * **Scope reconciles onto the binding's own `ScopeEntityID`/`ScopeRecordID`.** Those columns and
109
109
  * the engine's scope resolver already exist for exactly this; leaving them unset while the spec
110
110
  * declared a scope produced a workflow firing on every record of the entity while its author
111
- * believed it was watching one. `filter` is refused upstream by `ValidateWorkflowSpec` for the
112
- * same reason — it cannot be honored yet, so it must not be quietly accepted.
111
+ * believed it was watching one. `filter` reconciles the same way — onto an `ActionFilter` bound
112
+ * through `EntityActionFilter`, the row the invocation path already consults.
113
113
  */
114
114
  private reconcileEntityEvent;
115
+ /**
116
+ * Brings the binding's filter row in line with the trigger's predicate.
117
+ *
118
+ * The trigger's `filter` is an expression; what the platform evaluates is an `ActionFilter.Code`
119
+ * bound through `EntityActionFilter`. That indirection is what lets a workflow narrow *when* it
120
+ * fires without the workflow layer inventing an evaluator of its own — `RunSingleFilter` already
121
+ * compiles, caches and fail-closes this code, and the change context it hands the expression is
122
+ * the same one every other entity action sees.
123
+ *
124
+ * **Removing a filter disables the binding rather than deleting the row.** The `ActionFilter`
125
+ * survives with its code intact, so re-adding the predicate is recoverable and the audit trail of
126
+ * what this trigger used to be narrowed by does not evaporate on a save. A `Disabled` binding is
127
+ * genuinely inert — {@link EntityActionInvocationSingleRecord.ResolveFilters} skips it, which
128
+ * matters because filters fail closed, so a disabled-but-honored filter would not be a no-op, it
129
+ * would be a permanent block.
130
+ */
131
+ private reconcileTriggerFilter;
132
+ /**
133
+ * Writes the filter row holding the generated predicate.
134
+ *
135
+ * Reuses the row the binding already points at, so editing a workflow's filter edits one row
136
+ * rather than accumulating an orphan per save. `UserDescription` keeps the author's expression
137
+ * verbatim next to the generated code — without it, reading the row back tells you what the
138
+ * machine produced but not what the person asked for.
139
+ */
140
+ private upsertActionFilter;
115
141
  /**
116
142
  * Turn the spec's scope names into the IDs the binding stores.
117
143
  *
@@ -1 +1 @@
1
- {"version":3,"file":"WorkflowSpecSync.d.ts","sourceRoot":"","sources":["../src/WorkflowSpecSync.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAE,iBAAiB,EAAgC,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAYjG,OAAO,EAOH,KAAK,YAAY,EACpB,MAAM,8BAA8B,CAAC;AAEtC;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,UAAU,CAAC;AAE7C,0FAA0F;AAC1F,eAAO,MAAM,kBAAkB,oBAAoB,CAAC;AAEpD;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,kBAAkB,CAAC;AAUpD,8DAA8D;AAC9D,MAAM,MAAM,mBAAmB,GAAG;IAC9B,WAAW,EAAE,QAAQ,CAAC;IACtB,QAAQ,EAAE,iBAAiB,CAAC;CAC/B,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAC9B,2EAA2E;IAC3E,gBAAgB,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACvF,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,+FAA+F;IAC/F,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0EAA0E;IAC1E,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,oGAAoG;IACpG,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,qBAAa,gBAAgB;IACb,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAAX,WAAW,GAAE,mBAAmB,GAAG,IAAW;IAE3E;;;;;;OAMG;IACU,OAAO,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAgCnG;;;;;;;OAOG;YACW,iBAAiB;IA+C/B,wFAAwF;IACxF,OAAO,CAAC,WAAW;IAInB,wDAAwD;IACxD,OAAO,CAAC,aAAa;IAIrB;;;;;;;;;;;;;;;;;;OAkBG;YACW,oBAAoB;IAiDlC;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;IASpB;;;;;;;;;;;;;;;;;OAiBG;YACW,kBAAkB;IA+BhC;;;;;;;OAOG;YACW,qBAAqB;IAoCnC,mFAAmF;YACrE,gBAAgB;IAgC9B;;;;;OAKG;YACW,iBAAiB;YA4CjB,gBAAgB;IAkB9B;;;;;OAKG;YACW,aAAa;IAkB3B,4EAA4E;YAC9D,kBAAkB;CAoCnC"}
1
+ {"version":3,"file":"WorkflowSpecSync.d.ts","sourceRoot":"","sources":["../src/WorkflowSpecSync.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAE,iBAAiB,EAAgC,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAejG,OAAO,EAOH,KAAK,YAAY,EACpB,MAAM,8BAA8B,CAAC;AAEtC;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,UAAU,CAAC;AAE7C,0FAA0F;AAC1F,eAAO,MAAM,kBAAkB,oBAAoB,CAAC;AAEpD;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,kBAAkB,CAAC;AAUpD,8DAA8D;AAC9D,MAAM,MAAM,mBAAmB,GAAG;IAC9B,WAAW,EAAE,QAAQ,CAAC;IACtB,QAAQ,EAAE,iBAAiB,CAAC;CAC/B,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAC9B,2EAA2E;IAC3E,gBAAgB,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACvF,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,+FAA+F;IAC/F,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0EAA0E;IAC1E,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,oGAAoG;IACpG,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,qBAAa,gBAAgB;IACb,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAAX,WAAW,GAAE,mBAAmB,GAAG,IAAW;IAE3E;;;;;;OAMG;IACU,OAAO,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAgCnG;;;;;;;OAOG;YACW,iBAAiB;IA+C/B,wFAAwF;IACxF,OAAO,CAAC,WAAW;IAInB,wDAAwD;IACxD,OAAO,CAAC,aAAa;IAIrB;;;;;;;;;;;;;;;;;;OAkBG;YACW,oBAAoB;IAmDlC;;;;;;;;;;;;;;;OAeG;YACW,sBAAsB;IA4CpC;;;;;;;OAOG;YACW,kBAAkB;IA4BhC;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;IASpB;;;;;;;;;;;;;;;;;OAiBG;YACW,kBAAkB;IA+BhC;;;;;;;OAOG;YACW,qBAAqB;IAoCnC,mFAAmF;YACrE,gBAAgB;IAgC9B;;;;;OAKG;YACW,iBAAiB;YA4CjB,gBAAgB;IAkB9B;;;;;OAKG;YACW,aAAa;IAkB3B,4EAA4E;YAC9D,kBAAkB;CAoCnC"}
@@ -22,6 +22,7 @@
22
22
  */
23
23
  import { LogError, LogStatus, RunView } from '@memberjunction/core';
24
24
  import { SafeJSONParse, UUIDsEqual } from '@memberjunction/global';
25
+ import { BuildChangeFilterCode } from '@memberjunction/actions-base';
25
26
  import { FormatWorkflowValidationErrors, NormalizeInvocationType, NormalizeTriggers, ValidateWorkflowSpec, } from '@memberjunction/ai-core-plus';
26
27
  /**
27
28
  * Scheduled Job Type that runs a workflow's Flow agent.
@@ -154,8 +155,8 @@ export class WorkflowSpecSync {
154
155
  * **Scope reconciles onto the binding's own `ScopeEntityID`/`ScopeRecordID`.** Those columns and
155
156
  * the engine's scope resolver already exist for exactly this; leaving them unset while the spec
156
157
  * declared a scope produced a workflow firing on every record of the entity while its author
157
- * believed it was watching one. `filter` is refused upstream by `ValidateWorkflowSpec` for the
158
- * same reason — it cannot be honored yet, so it must not be quietly accepted.
158
+ * believed it was watching one. `filter` reconciles the same way — onto an `ActionFilter` bound
159
+ * through `EntityActionFilter`, the row the invocation path already consults.
159
160
  */
160
161
  async reconcileEntityEvent(trigger, agentID, context) {
161
162
  const rv = RunView.FromMetadataProvider(context.Provider);
@@ -190,6 +191,86 @@ export class WorkflowSpecSync {
190
191
  // BaseEntity serializes to `{}` because its fields are getters, not enumerable own
191
192
  // properties, so the live instance would arrive empty. `GetAll()` is what survives the wire.
192
193
  await this.upsertActionParam(entityAction.ID, action.ID, 'Data', 'Entity Object Data', null, context);
194
+ await this.reconcileTriggerFilter(entityAction.ID, trigger.filter ?? null, context);
195
+ }
196
+ /**
197
+ * Brings the binding's filter row in line with the trigger's predicate.
198
+ *
199
+ * The trigger's `filter` is an expression; what the platform evaluates is an `ActionFilter.Code`
200
+ * bound through `EntityActionFilter`. That indirection is what lets a workflow narrow *when* it
201
+ * fires without the workflow layer inventing an evaluator of its own — `RunSingleFilter` already
202
+ * compiles, caches and fail-closes this code, and the change context it hands the expression is
203
+ * the same one every other entity action sees.
204
+ *
205
+ * **Removing a filter disables the binding rather than deleting the row.** The `ActionFilter`
206
+ * survives with its code intact, so re-adding the predicate is recoverable and the audit trail of
207
+ * what this trigger used to be narrowed by does not evaporate on a save. A `Disabled` binding is
208
+ * genuinely inert — {@link EntityActionInvocationSingleRecord.ResolveFilters} skips it, which
209
+ * matters because filters fail closed, so a disabled-but-honored filter would not be a no-op, it
210
+ * would be a permanent block.
211
+ */
212
+ async reconcileTriggerFilter(entityActionID, filter, context) {
213
+ const rv = RunView.FromMetadataProvider(context.Provider);
214
+ const bindingResult = await rv.RunView({
215
+ EntityName: 'MJ: Entity Action Filters',
216
+ ExtraFilter: `EntityActionID='${entityActionID}'`,
217
+ OrderBy: 'Sequence ASC',
218
+ ResultType: 'entity_object',
219
+ }, context.ContextUser);
220
+ const binding = bindingResult.Results?.[0] ?? null;
221
+ const expression = filter?.trim() ?? '';
222
+ if (!expression) {
223
+ if (binding && binding.Status !== 'Disabled') {
224
+ binding.Status = 'Disabled';
225
+ if (!(await binding.Save())) {
226
+ throw new Error(`could not clear the trigger's filter: ${binding.LatestResult?.CompleteMessage ?? 'unknown error'}`);
227
+ }
228
+ }
229
+ return;
230
+ }
231
+ const filterRow = await this.upsertActionFilter(binding?.ActionFilterID ?? null, expression, context);
232
+ const row = binding
233
+ ?? await context.Provider.GetEntityObject('MJ: Entity Action Filters', context.ContextUser);
234
+ if (!binding)
235
+ row.NewRecord();
236
+ row.EntityActionID = entityActionID;
237
+ row.ActionFilterID = filterRow.ID;
238
+ row.Sequence = 1;
239
+ row.Status = 'Active';
240
+ if (!(await row.Save())) {
241
+ throw new Error(`could not bind the trigger's filter: ${row.LatestResult?.CompleteMessage ?? 'unknown error'}`);
242
+ }
243
+ }
244
+ /**
245
+ * Writes the filter row holding the generated predicate.
246
+ *
247
+ * Reuses the row the binding already points at, so editing a workflow's filter edits one row
248
+ * rather than accumulating an orphan per save. `UserDescription` keeps the author's expression
249
+ * verbatim next to the generated code — without it, reading the row back tells you what the
250
+ * machine produced but not what the person asked for.
251
+ */
252
+ async upsertActionFilter(existingID, expression, context) {
253
+ const row = await context.Provider.GetEntityObject('MJ: Action Filters', context.ContextUser);
254
+ if (existingID) {
255
+ if (!(await row.Load(existingID))) {
256
+ // The binding pointed at a row that is gone. Falling back to a fresh row is right:
257
+ // the alternative is refusing to save a workflow because of a dangling reference the
258
+ // author never created and cannot see.
259
+ row.NewRecord();
260
+ }
261
+ }
262
+ else {
263
+ row.NewRecord();
264
+ }
265
+ row.Code = BuildChangeFilterCode(expression);
266
+ row.UserDescription = expression;
267
+ row.CodeExplanation =
268
+ 'Generated from a workflow trigger filter. The expression is evaluated against the record change ' +
269
+ 'that fired the trigger; the run proceeds only when it is true.';
270
+ if (!(await row.Save())) {
271
+ throw new Error(`could not save the trigger's filter: ${row.LatestResult?.CompleteMessage ?? 'unknown error'}`);
272
+ }
273
+ return row;
193
274
  }
194
275
  /**
195
276
  * Turn the spec's scope names into the IDs the binding stores.
@@ -1 +1 @@
1
- {"version":3,"file":"WorkflowSpecSync.js","sourceRoot":"","sources":["../src/WorkflowSpecSync.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAqB,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAY,MAAM,sBAAsB,CAAC;AACjG,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAWnE,OAAO,EACH,8BAA8B,EAC9B,uBAAuB,EACvB,iBAAiB,EACjB,oBAAoB,GAIvB,MAAM,8BAA8B,CAAC;AAEtC;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,OAAO,CAAC;AAE7C,0FAA0F;AAC1F,MAAM,CAAC,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;AAEpD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,eAAe,CAAC;AAsCpD,MAAM,OAAO,gBAAgB;IACzB,YAA6B,cAA0C,IAAI;QAA9C,gBAAW,GAAX,WAAW,CAAmC;IAAG,CAAC;IAE/E;;;;;;OAMG;IACI,KAAK,CAAC,OAAO,CAAC,IAAkB,EAAE,OAA4B;QACjE,MAAM,UAAU,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YACpB,MAAM,OAAO,GAAG,aAAa,IAAI,EAAE,IAAI,kBAAkB,8BAA8B,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7G,QAAQ,CAAC,sBAAsB,OAAO,EAAE,CAAC,CAAC;YAC1C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;QAC5F,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACpB,MAAM,OAAO,GACT,2FAA2F;gBAC3F,0EAA0E,CAAC;YAC/E,QAAQ,CAAC,sBAAsB,OAAO,EAAE,CAAC,CAAC;YAC1C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;QAC5F,CAAC;QAED,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACvE,MAAM,EAAE,eAAe,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAE/F,SAAS,CACL,6BAA6B,IAAI,CAAC,IAAI,cAAc,OAAO,IAAI;gBAC/D,GAAG,eAAe,CAAC,MAAM,+BAA+B,CAC3D,CAAC;YACF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,CAAC;QAC9E,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,MAAM,OAAO,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC3D,QAAQ,CAAC,0CAA0C,IAAI,CAAC,IAAI,MAAM,OAAO,EAAE,CAAC,CAAC;YAC7E,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;QAC5F,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,iBAAiB,CAC3B,IAAkB,EAClB,OAAe,EACf,OAA4B;QAE5B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAgC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;QAE9F,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAmC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;QACjG,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACzB,IAAI,CAAC;gBACD,MAAM,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC7D,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,mFAAmF;gBACnF,8EAA8E;gBAC9E,YAAY,CAAC,IAAI,CAAC,kBAAkB,KAAK,CAAC,UAAU,KAAK,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC3G,CAAC;QACL,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACjE,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAE/B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YACvC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACd,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC;YAC1E,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;QACnG,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;YACtB,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBAAE,SAAS;YACtD,IAAI,GAAG,CAAC,MAAM,KAAK,UAAU;gBAAE,SAAS;YACxC,GAAG,CAAC,MAAM,GAAG,UAAU,CAAC;YACxB,IAAI,MAAM,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;gBACnB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACpB,SAAS,CAAC,6CAA6C,GAAG,CAAC,EAAE,8CAA8C,CAAC,CAAC;YACjH,CAAC;iBAAM,CAAC;gBACJ,QAAQ,CAAC,sDAAsD,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,EAAE,CAAC,CAAC;YACtI,CAAC;QACL,CAAC;QAED,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC;IACnE,CAAC;IAED,wFAAwF;IAChF,WAAW,CAAC,OAAgC;QAChD,OAAO,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;IACvD,CAAC;IAED,wDAAwD;IAChD,aAAa,CAAC,GAAyB;QAC3C,OAAO,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,cAAc,IAAI,GAAG,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACrF,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACK,KAAK,CAAC,oBAAoB,CAC9B,OAAmC,EACnC,OAAe,EACf,OAA4B;QAE5B,MAAM,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE1D,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACjE,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,CAAC,UAAU,yBAAyB,CAAC,CAAC;QAErF,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAElD,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC,OAAO,CACjC,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,oBAAoB,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE,EACzG,OAAO,CAAC,WAAW,CACtB,CAAC;QACF,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,QAAQ,oBAAoB,8DAA8D,CAAC,CAAC;QAEzH,0FAA0F;QAC1F,kEAAkE;QAClE,MAAM,cAAc,GAAG,uBAAuB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACvE,IAAI,CAAC,cAAc;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,OAAO,CAAC,cAAc,kCAAkC,CAAC,CAAC;QAEnH,MAAM,gBAAgB,GAAG,MAAM,EAAE,CAAC,OAAO,CACrC;YACI,UAAU,EAAE,oCAAoC;YAChD,WAAW,EAAE,SAAS,cAAc,GAAG;YACvC,UAAU,EAAE,eAAe;SAC9B,EACD,OAAO,CAAC,WAAW,CACtB,CAAC;QACF,MAAM,cAAc,GAAG,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QACrD,IAAI,CAAC,cAAc;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,cAAc,iBAAiB,CAAC,CAAC;QAE1F,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAClG,MAAM,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAEzE,0DAA0D;QAC1D,MAAM,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAEhG,4FAA4F;QAC5F,sFAAsF;QACtF,mFAAmF;QACnF,mFAAmF;QACnF,6FAA6F;QAC7F,MAAM,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,oBAAoB,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1G,CAAC;IAED;;;;;;OAMG;IACK,YAAY,CAAC,OAAmC,EAAE,OAA4B;QAClF,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,EAAE,EAAE,CAAC;YACnC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC9C,CAAC;QACD,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QAC3E,IAAI,CAAC,WAAW;YAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,OAAO,CAAC,eAAe,yBAAyB,CAAC,CAAC;QACrG,OAAO,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;IACzF,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACK,KAAK,CAAC,kBAAkB,CAC5B,QAAgB,EAChB,QAAgB,EAChB,OAAe,EACf,KAAmB,EACnB,OAA4B;QAE5B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAC/F,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/B,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC;gBAC3B,IAAI,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;oBAC3B,MAAM,IAAI,KAAK,CAAC,mDAAmD,QAAQ,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,EAAE,CAAC,CAAC;gBACpI,CAAC;YACL,CAAC;YACD,OAAO,QAAQ,CAAC;QACpB,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAuB,oBAAoB,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QACpH,GAAG,CAAC,SAAS,EAAE,CAAC;QAChB,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACxB,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACxB,GAAG,CAAC,aAAa,GAAG,KAAK,CAAC,QAAQ,CAAC;QACnC,GAAG,CAAC,aAAa,GAAG,KAAK,CAAC,QAAQ,CAAC;QACnC,GAAG,CAAC,MAAM,GAAG,QAAQ,CAAC;QACtB,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,+CAA+C,GAAG,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,EAAE,CAAC,CAAC;QAC3H,CAAC;QACD,OAAO,GAAG,CAAC;IACf,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,qBAAqB,CAC/B,QAAgB,EAChB,QAAgB,EAChB,OAAe,EACf,KAAmB,EACnB,OAA4B;QAE5B,MAAM,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,WAAW,GACb,qBAAqB,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,SAAS,GAAG;YAC5E,qBAAqB,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;QAEhF,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAC3B;YACI,UAAU,EAAE,oBAAoB;YAChC,WAAW,EAAE,aAAa,QAAQ,mBAAmB,QAAQ,KAAK,WAAW,EAAE;YAC/E,UAAU,EAAE,eAAe;SAC9B,EACD,OAAO,CAAC,WAAW,CACtB,CAAC;QACF,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;QACxC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAEzC,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAC3B;YACI,UAAU,EAAE,0BAA0B;YACtC,WAAW,EACP,gDAAgD,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG;YACnG,UAAU,EAAE,eAAe;SAC9B,EACD,OAAO,CAAC,WAAW,CACtB,CAAC;QACF,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;QACjG,OAAO,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/F,CAAC;IAED,mFAAmF;IAC3E,KAAK,CAAC,gBAAgB,CAC1B,cAAsB,EACtB,gBAAwB,EACxB,OAA4B;QAE5B,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CACvE;YACI,UAAU,EAAE,+BAA+B;YAC3C,WAAW,EAAE,mBAAmB,cAAc,2BAA2B,gBAAgB,GAAG;YAC5F,UAAU,EAAE,eAAe;SAC9B,EACD,OAAO,CAAC,WAAW,CACtB,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QACrC,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/B,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC;gBAC3B,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC1B,CAAC;YACD,OAAO;QACX,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiC,+BAA+B,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QACzI,GAAG,CAAC,SAAS,EAAE,CAAC;QAChB,GAAG,CAAC,cAAc,GAAG,cAAc,CAAC;QACpC,GAAG,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACxC,GAAG,CAAC,MAAM,GAAG,QAAQ,CAAC;QACtB,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,4CAA4C,GAAG,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,EAAE,CAAC,CAAC;QACxH,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,iBAAiB,CAC3B,cAAsB,EACtB,QAAgB,EAChB,SAAiB,EACjB,SAAiD,EACjD,KAAoB,EACpB,OAA4B;QAE5B,MAAM,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,OAAO,CAChC;YACI,UAAU,EAAE,mBAAmB;YAC/B,WAAW,EAAE,aAAa,QAAQ,eAAe,SAAS,GAAG;YAC7D,UAAU,EAAE,eAAe;SAC9B,EACD,OAAO,CAAC,WAAW,CACtB,CAAC;QACF,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7C,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,6EAA6E;YAC7E,MAAM,IAAI,KAAK,CAAC,QAAQ,oBAAoB,mBAAmB,SAAS,oBAAoB,CAAC,CAAC;QAClG,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,EAAE,CAAC,OAAO,CACnC;YACI,UAAU,EAAE,0BAA0B;YACtC,WAAW,EAAE,mBAAmB,cAAc,wBAAwB,WAAW,CAAC,EAAE,GAAG;YACvF,UAAU,EAAE,eAAe;SAC9B,EACD,OAAO,CAAC,WAAW,CACtB,CAAC;QACF,MAAM,GAAG,GAAG,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;eAChC,MAAM,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA4B,0BAA0B,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAC1H,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAAE,GAAG,CAAC,SAAS,EAAE,CAAC;QAElD,GAAG,CAAC,cAAc,GAAG,cAAc,CAAC;QACpC,GAAG,CAAC,aAAa,GAAG,WAAW,CAAC,EAAE,CAAC;QACnC,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;QAC1B,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,kBAAkB,SAAS,oBAAoB,GAAG,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,EAAE,CAAC,CAAC;QAC3H,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,OAA4B;QACvD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CACvE;YACI,UAAU,EAAE,yBAAyB;YACrC,WAAW,EAAE,SAAS,qBAAqB,GAAG;YAC9C,MAAM,EAAE,CAAC,IAAI,CAAC;YACd,UAAU,EAAE,QAAQ;SACvB,EACD,OAAO,CAAC,WAAW,CACtB,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YACzD,MAAM,IAAI,KAAK,CACX,uBAAuB,qBAAqB,kDAAkD,CACjG,CAAC;QACN,CAAC;QACD,OAAO,MAAM,CAAC,OAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACjC,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,aAAa,CACvB,MAAc,EACd,OAAe,EACf,OAA4B;QAE5B,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CACvE,EAAE,UAAU,EAAE,oBAAoB,EAAE,WAAW,EAAE,cAAc,MAAM,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE,EACvG,OAAO,CAAC,WAAW,CACtB,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO,EAAE,CAAC;QAE/B,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;YACzC,MAAM,GAAG,GAAG,aAAa,CAAyB,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;YAC3E,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,kBAAkB,CAAC,CAAC;YACxC,OAAO,CAAC,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACP,CAAC;IAED,4EAA4E;IACpE,KAAK,CAAC,kBAAkB,CAC5B,IAAkB,EAClB,OAAe,EACf,MAAc,EACd,OAAgC,EAChC,QAAqC,EACrC,OAA4B;QAE5B,MAAM,GAAG,GAAG,QAAQ,IAAI,MAAM,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAuB,oBAAoB,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAChI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,GAAG,CAAC,SAAS,EAAE,CAAC;YAChB,IAAI,OAAO,CAAC,WAAW,EAAE,EAAE;gBAAE,GAAG,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QAC1E,CAAC;QAED,GAAG,CAAC,SAAS,GAAG,MAAM,CAAC;QACvB,GAAG,CAAC,IAAI,GAAG,aAAa,IAAI,CAAC,IAAI,EAAE,CAAC;QACpC,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC;QAC3C,GAAG,CAAC,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;QAClC,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC;QACxC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,kBAAkB,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QACxF,2FAA2F;QAC3F,gGAAgG;QAChG,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;QAE9D,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,GAAG,CAAC,eAAe,GAAG,IAAI,CAAC;YAC3B,GAAG,CAAC,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,KAAK,QAAQ,CAAC;QACpE,CAAC;QAED,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACX,6CAA6C,IAAI,CAAC,IAAI,MAAM,GAAG,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,EAAE,CACrH,CAAC;QACN,CAAC;QACD,OAAO,GAAG,CAAC,EAAE,CAAC;IAClB,CAAC;CACJ"}
1
+ {"version":3,"file":"WorkflowSpecSync.js","sourceRoot":"","sources":["../src/WorkflowSpecSync.ts"],"names":[],"mappings":"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"}