@nolag/agents 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../src/EventEmitter.ts","../src/constants.ts","../src/AgentRoom.ts","../src/utils.ts","../src/NoLagAgents.ts","../src/correlation.ts","../src/envelope.ts","../src/patterns/handoff.ts","../src/patterns/inbox.ts","../src/patterns/blackboard.ts","../src/patterns/observe.ts","../src/patterns/approve.ts","../src/patterns/tools.ts","../src/tags.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["NoLag"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../src/EventEmitter.ts","../src/constants.ts","../src/AgentRoom.ts","../src/utils.ts","../src/NoLagAgents.ts","../src/errors.ts","../src/correlation.ts","../src/envelope.ts","../src/patterns/handoff.ts","../src/patterns/inbox.ts","../src/patterns/blackboard.ts","../src/patterns/observe.ts","../src/patterns/approve.ts","../src/patterns/tools.ts","../src/tags.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["NoLag"],"mappings":";;;;AAAA;;;;;AAKG;MACU,YAAY,CAAA;AAAzB,IAAA,WAAA,GAAA;AAGU,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,GAAG,EAGxB;IAgDL;IA9CE,EAAE,CACA,KAAQ,EACR,OAAuC,EAAA;QAEvC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YAC9B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,GAAG,EAAE,CAAC;QACtC;AACA,QAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC,GAAG,CAAC,OAAO,CAAC;AACvC,QAAA,OAAO,IAAI;IACb;IAEA,GAAG,CACD,KAAQ,EACR,OAAwC,EAAA;QAExC,IAAI,OAAO,EAAE;AACX,YAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;QAC5C;aAAO;AACL,YAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;QAC9B;AACA,QAAA,OAAO,IAAI;IACb;IAEA,kBAAkB,GAAA;AAChB,QAAA,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;AACtB,QAAA,OAAO,IAAI;IACb;AAEU,IAAA,IAAI,CACZ,KAAQ,EACR,GAAG,IAAiB,EAAA;QAEpB,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;AAC1C,QAAA,IAAI,CAAC,QAAQ;YAAE;AACf,QAAA,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;AAC9B,YAAA,IAAI;AACF,gBAAA,OAAO,CAAC,GAAG,IAAI,CAAC;YAClB;YAAE,OAAO,CAAC,EAAE;AACV,gBAAA,OAAO,CAAC,KAAK,CAAC,CAAA,SAAA,EAAY,MAAM,CAAC,KAAK,CAAC,CAAA,SAAA,CAAW,EAAE,CAAC,CAAC;YACxD;QACF;IACF;AAEA,IAAA,aAAa,CAA2B,KAAQ,EAAA;AAC9C,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC;IAC7C;AACD;;AC5DD;AACO,MAAM,gBAAgB,GAAG,QAAQ;AAExC;AACO,MAAM,WAAW,GAAG,OAAO;AAElC;AACO,MAAM,aAAa,GAAG,SAAS;AAEtC;AACO,MAAM,WAAW,GAAG,OAAO;AAElC;AACO,MAAM,YAAY,GAAG,QAAQ;AAEpC;AACO,MAAM,WAAW,GAAG,OAAO;AAElC;AACO,MAAM,WAAW,GAAG,OAAO;AAElC;AACO,MAAM,cAAc,GAAG,UAAU;AAExC;AACO,MAAM,YAAY,GAAG,kBAAkB;AAK9C;;AAE0C;AACnC,MAAM,uBAAuB,GAAG;;ACAvC;;;;;;;;;;;;;;;;;AAiBG;AACG,MAAO,SAAU,SAAQ,YAA6B,CAAA;IAW1D,WAAA,CACE,IAAY,EACZ,WAAgB,EAChB,MAAW,EACX,GAAiC,EACjC,OAAe,EACf,QAA4B,EAAA;AAE5B,QAAA,KAAK,EAAE;;AAVD,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,GAAG,EAA0B;AAWjD,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI;AAChB,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO;AACtB,QAAA,IAAI,CAAC,YAAY,GAAG,WAAW;AAC/B,QAAA,IAAI,CAAC,OAAO,GAAG,MAAM;AACrB,QAAA,IAAI,CAAC,IAAI,GAAG,GAAG;AACf,QAAA,IAAI,CAAC,SAAS,GAAG,QAAQ;QACzB,IAAI,CAAC,mBAAmB,EAAE;QAC1B,IAAI,CAAC,sBAAsB,EAAE;;;QAI7B,IAAI,QAAQ,EAAE;YACZ,MAAM,YAAY,GAAG,EAAE,QAAQ,EAAE,uBAAuB,EAAE,GAAG,QAAQ,EAAE;AACvE,YAAA,IAAI,CAAC,SAAS,GAAG,YAAY;YAC7B,IAAI,CAAC,IAAI,CAAC,CAAA,yBAAA,EAA4B,IAAI,CAAA,CAAA,CAAG,EAAE,YAAY,CAAC;AAC5D,YAAA,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,YAAY,CAAC;QAC7C;;QAGA,IAAI,CAAC,qBAAqB,EAAE;IAC9B;;;;;IAOA,kBAAkB,GAAA;QAChB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;IAC1C;;AAGA,IAAA,UAAU,CAAC,UAAkB,EAAA;AAC3B,QAAA,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAC7C,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,CAC3C;IACH;;AAGA,IAAA,aAAa,CAAC,UAAkB,EAAA;QAC9B,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC;IAC/C;;IAGA,wBAAwB,GAAA;AACtB,QAAA,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU;QAC9B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE;AACzC,YAAA,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,YAAY,EAAE;AACpC,gBAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YACf;QACF;AACA,QAAA,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;IACzB;;;;;AAOA,IAAA,WAAW,CAAC,IAAuB,EAAA;QACjC,MAAM,YAAY,GAAG,EAAE,QAAQ,EAAE,uBAAuB,EAAE,GAAG,IAAI,EAAE;AACnE,QAAA,IAAI,CAAC,SAAS,GAAG,YAAY;QAC7B,IAAI,CAAC,IAAI,CAAC,CAAA,0BAAA,EAA6B,IAAI,CAAC,IAAI,CAAA,CAAE,CAAC;AACnD,QAAA,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,YAAY,CAAC;IAC7C;;AAGA,IAAA,MAAM,aAAa,GAAA;AACjB,QAAA,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE;YACtD,OAAO,CAAC,MAAM,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,CAAM,KAAK,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAClE;AAAE,QAAA,MAAM;AACN,YAAA,OAAO,EAAE;QACX;IACF;AAEA;;AAEG;AACH,IAAA,aAAa,CAAC,KAA0D,EAAE,OAAe,EAAE,IAAwB,EAAA;AACjH,QAAA,IAAI,KAAK,KAAK,eAAe,EAAE;AAC7B,YAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC;QACrC;aAAO;YACL,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,IAAI,EAAuB,CAAC;QAC5D;IACF;;;;;AAOA,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,YAAY;IAC1B;;AAGA,IAAA,WAAW,CAAC,QAAsB,EAAA;;AAEhC,QAAA,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE;AACvB,YAAA,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO;QACnC;AACA,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC;IACtC;;AAGA,IAAA,aAAa,CAAC,QAAwB,EAAA;;AAEpC,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE;AACzB,YAAA,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO;QACrC;AACA,QAAA,IAAI,QAAQ,CAAC,OAAO,EAAE;AACpB,YAAA,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;QACtE;aAAO;;;AAGL,YAAA,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC;QACxC;IACF;;AAGA,IAAA,YAAY,CAAC,IAA6B,EAAA;;AAExC,QAAA,IAAI,CAAE,IAAY,CAAC,SAAS,EAAE;AAC3B,YAAA,IAAY,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO;QACxC;AACA,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACpD;;AAGA,IAAA,YAAY,CAAC,IAA6B,EAAA;;AAExC,QAAA,IAAI,CAAE,IAAY,CAAC,SAAS,EAAE;AAC3B,YAAA,IAAY,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO;QACxC;AACA,QAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC;IACnC;;AAGA,IAAA,YAAY,CAAC,IAA6B,EAAA;AACxC,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC;IAClC;AAEA;;;;;AAKG;AACH,IAAA,YAAY,CAAC,IAA6B,EAAA;AACxC,QAAA,IAAI,IAAI,EAAE,IAAI,KAAK,eAAe,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE;AACtF,YAAA,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;YAC5D;QACF;AACA,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC;IAClC;;AAGA,IAAA,eAAe,CAAC,IAA6B,EAAA;AAC3C,QAAA,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACvD;;;;AAMQ,IAAA,QAAQ,CAAC,KAAa,EAAE,IAAa,EAAE,OAA+C,EAAA;QAC5F,IAAI,CAAC,IAAI,CAAC,CAAA,WAAA,EAAc,KAAK,CAAA,SAAA,EAAY,IAAI,CAAC,IAAI,CAAA,CAAE,CAAC;QACrD,IAAI,OAAO,EAAE;YACX,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC;QAC9C;aAAO;YACL,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC;QACrC;IACF;AAEQ,IAAA,iBAAiB,CAAC,KAAU,EAAA;QAClC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE;QACnD,OAAO;YACL,OAAO,EAAE,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,OAAO,IAAI,EAAE;YAClD,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,YAAY,IAAI,EAAE;AAC/C,YAAA,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,OAAO;AAC9B,YAAA,YAAY,EAAE,QAAQ,CAAC,YAAY,IAAI,EAAE;YACzC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,WAAW,EAAE,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,EAAE;AACzC,YAAA,QAAQ,EAAE,OAAO,QAAQ,CAAC,QAAQ,KAAK,QAAQ,GAAG,QAAQ,CAAC,QAAQ,GAAG,CAAC;YACvE,MAAM,EAAE,KAAK,CAAC,MAAM;SACrB;IACH;AAEQ,IAAA,MAAM,qBAAqB,GAAA;AACjC,QAAA,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE;AACtD,YAAA,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;AACzB,gBAAA,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;oBAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC;AAC/C,oBAAA,IAAI,SAAS,CAAC,OAAO,EAAE;wBACrB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC;oBAChD;gBACF;AACA,gBAAA,IAAI,CAAC,IAAI,CAAC,CAAA,WAAA,EAAc,IAAI,CAAC,OAAO,CAAC,IAAI,mBAAmB,IAAI,CAAC,IAAI,CAAA,CAAE,CAAC;YAC1E;QACF;AAAE,QAAA,MAAM;;QAER;IACF;IAEQ,sBAAsB,GAAA;QAC5B,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE;AACnB,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO;QAE3B,MAAM,CAAC,EAAE,GAAG,eAAe,EAAE,CAAC,GAAQ,KAAI;AACxC,YAAA,IAAI,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE;gBAC7C,MAAM,EAAE,GAAG,GAAG,EAAE,OAAO,IAAI,GAAG,EAAE,YAAY;gBAC5C,MAAM,IAAI,GAAG,GAAG,EAAE,IAAI,IAAI,GAAG,EAAE,QAAQ,IAAI,EAAE;gBAC7C,IAAI,EAAE,EAAE;AACN,oBAAA,MAAM,KAAK,GAAmB;AAC5B,wBAAA,OAAO,EAAE,EAAE;AACX,wBAAA,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE;AACrB,wBAAA,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,OAAO;AAC1B,wBAAA,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,EAAE;wBACrC,QAAQ,EAAE,IAAI,CAAC,QAAQ;AACvB,wBAAA,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;AACvB,wBAAA,QAAQ,EAAE,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,CAAC;qBAChE;oBACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC;AAC3B,oBAAA,IAAI,CAAC,IAAI,CAAC,CAAA,kBAAA,EAAqB,IAAI,CAAC,IAAI,CAAA,CAAA,CAAG,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC;oBAC5E,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,EAAE,IAAI,CAAC;gBACrC;YACF;AACF,QAAA,CAAC,CAAC;QAEF,MAAM,CAAC,EAAE,GAAG,gBAAgB,EAAE,CAAC,GAAQ,KAAI;AACzC,YAAA,IAAI,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE;gBAC7C,MAAM,EAAE,GAAG,GAAG,EAAE,OAAO,IAAI,GAAG,EAAE,YAAY;gBAC5C,IAAI,EAAE,EAAE;oBACN,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;AAClC,oBAAA,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;AACvB,oBAAA,IAAI,CAAC,IAAI,CAAC,CAAA,gBAAA,EAAmB,IAAI,CAAC,IAAI,CAAA,CAAA,CAAG,EAAE,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC;AAC7D,oBAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;gBAChC;YACF;AACF,QAAA,CAAC,CAAC;QAEF,MAAM,CAAC,EAAE,GAAG,iBAAiB,EAAE,CAAC,GAAQ,KAAI;AAC1C,YAAA,IAAI,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE;gBAC7C,MAAM,EAAE,GAAG,GAAG,EAAE,OAAO,IAAI,GAAG,EAAE,YAAY;gBAC5C,MAAM,IAAI,GAAG,GAAG,EAAE,IAAI,IAAI,GAAG,EAAE,QAAQ,IAAI,EAAE;gBAC7C,IAAI,EAAE,EAAE;oBACN,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;AACrC,oBAAA,MAAM,KAAK,GAAmB;AAC5B,wBAAA,OAAO,EAAE,EAAE;wBACX,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,QAAQ,EAAE,IAAI,IAAI,EAAE;wBACvC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,QAAQ,EAAE,IAAI,IAAI,OAAO;wBAC5C,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,QAAQ,EAAE,YAAY,IAAI,EAAE;AAC/D,wBAAA,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,QAAQ,EAAE,QAAQ;wBAC7C,WAAW,EAAE,QAAQ,EAAE,WAAW,IAAI,IAAI,CAAC,GAAG,EAAE;wBAChD,QAAQ,EAAE,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,QAAQ,EAAE,QAAQ,IAAI,CAAC,CAAC;qBACxF;oBACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC;oBAC3B,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,EAAE,IAAI,CAAC;gBACvC;YACF;AACF,QAAA,CAAC,CAAC;IACJ;IAEQ,mBAAmB,GAAA;;;;;AAKzB,QAAA,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,WAAW,CAAC;AACxC,QAAA,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,WAAW,CAAC;;;;;;;;AASxC,QAAA,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,aAAa,EAAE;AACzC,YAAA,WAAW,EAAE,KAAK;AAClB,YAAA,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;AACxB,SAAA,CAAC;;;;QAKF,MAAM,eAAe,GAAG,CAAC,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,CAAC;AAChF,QAAA,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE;AACnC,YAAA,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QAC5D;;AAGA,QAAA,MAAM,SAAS,GAA2D;AACxE,YAAA,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE;AACrC,YAAA,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,aAAa,EAAE;AAC5C,YAAA,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE;AACvC,YAAA,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE;SACvC;QACD,KAAK,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,SAAS,EAAE;YACxC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,IAAS,KAAI;gBACxC,IAAI,CAAC,IAAI,CAAC,CAAA,SAAA,EAAY,KAAK,CAAA,SAAA,EAAY,IAAI,CAAC,IAAI,CAAA,CAAE,CAAC;AACnD,gBAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC;AACxB,YAAA,CAAC,CAAC;QACJ;;;QAIA,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,IAAS,KAAI;YAChD,IAAI,CAAC,IAAI,CAAC,CAAA,SAAA,EAAY,aAAa,CAAA,SAAA,EAAY,IAAI,CAAC,IAAI,CAAA,CAAE,CAAC;AAC3D,YAAA,IAAI,IAAI,EAAE,IAAI,KAAK,eAAe,EAAE;AAClC,gBAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC;YACjC;iBAAO;AACL,gBAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC;YAC3B;AACF,QAAA,CAAC,CAAC;;QAGF,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,IAAS,KAAI;YACjD,IAAI,CAAC,IAAI,CAAC,CAAA,SAAA,EAAY,cAAc,CAAA,SAAA,EAAY,IAAI,CAAC,IAAI,CAAA,CAAE,CAAC;AAC5D,YAAA,IAAI,IAAI,EAAE,IAAI,KAAK,mBAAmB,EAAE;AACtC,gBAAA,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC;YACrC;iBAAO;AACL,gBAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC;YACpC;AACF,QAAA,CAAC,CAAC;;;;QAKF,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,IAAS,KAAI;YAC9C,IAAI,CAAC,IAAI,CAAC,CAAA,SAAA,EAAY,WAAW,CAAA,SAAA,EAAY,IAAI,CAAC,IAAI,CAAA,CAAE,CAAC;AACzD,YAAA,IAAI,IAAI,EAAE,IAAI,KAAK,eAAe,EAAE;AAClC,gBAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC;YACjC;iBAAO;AACL,gBAAA,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC;YAChC;AACF,QAAA,CAAC,CAAC;IACJ;AACD;;AC3ZD;;;AAGG;SACa,UAAU,GAAA;IACxB,IACE,OAAO,MAAM,KAAK,WAAW;AAC7B,QAAA,OAAO,MAAM,CAAC,UAAU,KAAK,UAAU,EACvC;AACA,QAAA,OAAO,MAAM,CAAC,UAAU,EAAE;IAC5B;IACA,OAAO,qBAAqB,CAAC,OAAO,CAAC,IAAI,EAAE,MACzC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAC5C;AACH;AAEA;;AAEG;AACG,SAAU,YAAY,CAAC,MAAc,EAAE,OAAgB,EAAA;IAC3D,IAAI,CAAC,OAAO,EAAE;AACZ,QAAA,OAAO,CAAC,GAAG,KAAgB,KAAI,EAAE,CAAC;IACpC;AACA,IAAA,OAAO,CAAC,GAAG,IAAe,KAAI;QAC5B,OAAO,CAAC,GAAG,CAAC,CAAA,CAAA,EAAI,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC;AACrC,IAAA,CAAC;AACH;AAEA;;AAEG;SACa,eAAe,GAAA;AAC7B,IAAA,OAAO,IAAI,CAAC,GAAG,EAAE;AACnB;;ACnBA;;;;;;;;;;;;;;;;;;;;;;;AAuBG;AACG,MAAO,WAAY,SAAQ,YAA+B,CAAA;IAS9D,WAAA,CAAY,KAAa,EAAE,OAAA,GAA8B,EAAE,EAAA;AACzD,QAAA,KAAK,EAAE;QAPD,IAAA,CAAA,OAAO,GAAuB,IAAI;QAClC,IAAA,CAAA,WAAW,GAAQ,IAAI;AACvB,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,GAAG,EAAqB;QAErC,IAAA,CAAA,UAAU,GAAG,KAAK;AAIxB,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK;QACnB,IAAI,CAAC,QAAQ,GAAG;AACd,YAAA,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,gBAAgB;AAC5C,YAAA,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,UAAU,EAAE;AACxC,YAAA,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,KAAK;AAC7B,YAAA,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC,YAAY,CAAC;YACtC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,aAAa,EAAE,OAAO,CAAC,aAAa;SACrC;AACD,QAAA,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;IAC9D;;AAGA,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO;IAC9B;;AAGA,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU;IACxB;;AAGA,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM;IACpB;;AAGA,IAAA,MAAM,OAAO,GAAA;AACX,QAAA,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;QAE1B,IAAI,CAAC,OAAO,GAAGA,WAAK,CAAC,IAAI,CAAC,MAAM,EAAE;AAChC,YAAA,GAAI,IAAI,CAAC,QAAgB,CAAC,aAAa;AACxC,SAAA,CAAC;AAEF,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QAE9D,IAAI,CAAC,OAAQ,CAAC,EAAE,CAAC,WAAkB,EAAE,MAAK;AACxC,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI;AACtB,YAAA,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;AACtB,YAAA,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;AACxB,QAAA,CAAC,CAAC;QAEF,IAAI,CAAC,OAAQ,CAAC,EAAE,CAAC,cAAqB,EAAE,CAAC,MAAc,KAAI;AACzD,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK;AACvB,YAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC;AAClC,YAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC;AACnC,QAAA,CAAC,CAAC;QAEF,IAAI,CAAC,OAAQ,CAAC,EAAE,CAAC,aAAoB,EAAE,MAAK;AAC1C,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI;AACtB,YAAA,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;AACxB,YAAA,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;AAC1B,QAAA,CAAC,CAAC;QAEF,IAAI,CAAC,OAAQ,CAAC,EAAE,CAAC,OAAc,EAAE,CAAC,GAAU,KAAI;YAC9C,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC;AAChC,YAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC;AACzB,QAAA,CAAC,CAAC;AAEF,QAAA,MAAM,IAAI,CAAC,OAAQ,CAAC,OAAO,EAAE;;QAG7B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;AAC1C,YAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;QACrB;;AAGA,QAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;YACvB,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAChD;IACF;AAEA;;;;;AAKG;IACH,MAAM,cAAc,CAAC,SAAiB,EAAA;AACpC,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;AACrB,YAAA,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC;QACjF;AAEA,QAAA,IAAI,CAAC,IAAI,CAAC,yBAAyB,SAAS,CAAA,CAAE,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC;;;QAIlD,IAAI,CAAC,OAAQ,CAAC,EAAE,CAAC,oBAA2B,EAAE,CAAC,GAAQ,KAAI;AACzD,YAAA,MAAM,EAAE,GAAG,GAAG,EAAE,OAAO;AACvB,YAAA,MAAM,IAAI,GAAG,GAAG,EAAE,IAAI,IAAI,EAAE;YAC5B,IAAI,EAAE,EAAE;gBACN,IAAI,CAAC,IAAI,CAAC,CAAA,sBAAA,EAAyB,IAAI,CAAC,IAAI,IAAI,EAAE,CAAA,CAAE,CAAC;gBACrD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE;AACvC,oBAAA,MAAM,MAAM,GAAI,IAAY,CAAC,OAA2B;oBACxD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;AACnB,wBAAA,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE;AACb,4BAAA,OAAO,EAAE,EAAE;AACX,4BAAA,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE;AACrB,4BAAA,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,OAAO;AAC1B,4BAAA,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,EAAE;4BACrC,QAAQ,EAAE,IAAI,CAAC,QAAQ;AACvB,4BAAA,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;AACxB,yBAAA,CAAC;oBACJ;oBACA,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,EAAE,EAAE,IAAI,CAAC;gBAC9C;YACF;AACF,QAAA,CAAC,CAAC;QAEF,IAAI,CAAC,OAAQ,CAAC,EAAE,CAAC,qBAA4B,EAAE,CAAC,GAAQ,KAAI;AAC1D,YAAA,MAAM,EAAE,GAAG,GAAG,EAAE,OAAO;YACvB,IAAI,EAAE,EAAE;AACN,gBAAA,IAAI,CAAC,IAAI,CAAC,0BAA0B,EAAE,CAAA,CAAE,CAAC;gBACzC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE;AACvC,oBAAA,MAAM,MAAM,GAAI,IAAY,CAAC,OAA2B;AACxD,oBAAA,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;AACjB,oBAAA,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,EAAE,CAAC;gBACzC;YACF;AACF,QAAA,CAAC,CAAC;QAEF,IAAI,CAAC,OAAQ,CAAC,EAAE,CAAC,sBAA6B,EAAE,CAAC,GAAQ,KAAI;AAC3D,YAAA,MAAM,EAAE,GAAG,GAAG,EAAE,OAAO;AACvB,YAAA,MAAM,IAAI,GAAG,GAAG,EAAE,IAAI,IAAI,EAAE;YAC5B,IAAI,EAAE,EAAE;gBACN,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE;AACvC,oBAAA,MAAM,MAAM,GAAI,IAAY,CAAC,OAA2B;oBACxD,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC/B,IAAI,QAAQ,EAAE;wBACZ,IAAI,IAAI,CAAC,IAAI;AAAE,4BAAA,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI;wBACxC,IAAI,IAAI,CAAC,IAAI;AAAE,4BAAA,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI;wBACxC,IAAI,IAAI,CAAC,YAAY;AAAE,4BAAA,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY;wBAChE,IAAI,IAAI,CAAC,QAAQ;AAAE,4BAAA,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ;oBACtD;oBACA,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,EAAE,EAAE,IAAI,CAAC;gBAChD;YACF;AACF,QAAA,CAAC,CAAC;AAEF,QAAA,IAAI;AACF,YAAA,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,SAAS,EAAE;AAC5C,YAAA,IAAI,CAAC,IAAI,CAAC,CAAA,gCAAA,CAAkC,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;YAC9E,OAAO,YAAY,IAAI,EAAE;QAC3B;QAAE,OAAO,GAAG,EAAE;AACZ,YAAA,IAAI,CAAC,IAAI,CAAC,4BAA4B,EAAE,GAAG,CAAC;AAC5C,YAAA,OAAO,EAAE;QACX;IACF;;IAGA,UAAU,GAAA;AACR,QAAA,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC;AAC7B,QAAA,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE;AAC1B,QAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;AACnB,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI;AACnB,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI;AACvB,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK;IACzB;AAEA;;;AAGG;AACH,IAAA,IAAI,CAAC,IAAY,EAAA;QACf,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;AACrC,QAAA,IAAI,SAAS;AAAE,YAAA,OAAO,SAAS;AAE/B,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;AACrB,YAAA,MAAM,IAAI,KAAK,CACb,uDAAuD,CACxD;QACH;AAEA,QAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAA,CAAE,CAAC;QAClC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;AAClD,QAAA,SAAS,GAAG,IAAI,SAAS,CACvB,IAAI,EACJ,WAAW,EACX,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,QAAQ,CAAC,OAAO,EACrB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CACvB;QACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC;AAChC,QAAA,OAAO,SAAS;IAClB;AACD;;AC9OD;;;;AAIG;AACG,MAAO,yBAA0B,SAAQ,KAAK,CAAA;IAClD,WAAA,CAAY,SAAiB,EAAE,MAAiD,EAAA;QAC9E,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAA,EAAG,CAAC,CAAC,IAAI,CAAA,WAAA,EAAc,CAAC,CAAC,QAAQ,CAAA,CAAA,CAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC/E,KAAK,CACH,CAAA,EAAG,SAAS,CAAA,qEAAA,CAAuE;AACjF,YAAA,CAAA,CAAA,EAAI,IAAI,CAAA,wEAAA,CAA0E;YAClF,CAAA,0EAAA,CAA4E;YAC5E,CAAA,0EAAA,CAA4E;YAC5E,CAAA,+EAAA,CAAiF;AACjF,YAAA,CAAA,uFAAA,CAAyF,CAC5F;AACD,QAAA,IAAI,CAAC,IAAI,GAAG,2BAA2B;IACzC;AACD;;AClBD;;;AAGG;MACU,kBAAkB,CAAA;AAA/B,IAAA,WAAA,GAAA;AACU,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,GAAG,EAOvB;IAwEL;AAtEE;;;AAGG;AACH,IAAA,QAAQ,CAAC,aAAqB,EAAE,SAAkB,EAAE,OAAgB,EAAA;QAClE,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,KAAI;YACxC,IAAI,KAAK,GAAyC,IAAI;AAEtD,YAAA,IAAI,SAAS,IAAI,SAAS,GAAG,CAAC,EAAE;AAC9B,gBAAA,KAAK,GAAG,UAAU,CAAC,MAAK;AACtB,oBAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC;;;AAGnC,oBAAA,MAAM,IAAI,GAAG,OAAO,IAAI,CAAA,YAAA,EAAe,aAAa,EAAE;oBACtD,MAAM,CAAC,IAAI,KAAK,CAAC,CAAA,EAAG,IAAI,CAAA,iBAAA,EAAoB,SAAS,CAAA,EAAA,CAAI,CAAC,CAAC;gBAC7D,CAAC,EAAE,SAAS,CAAC;YACf;AAEA,YAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAC9D,QAAA,CAAC,CAAC;IACJ;AAEA;;;AAGG;IACH,OAAO,CAAC,aAAqB,EAAE,KAAQ,EAAA;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC;AAC9C,QAAA,IAAI,CAAC,KAAK;AAAE,YAAA,OAAO,KAAK;QAExB,IAAI,KAAK,CAAC,KAAK;AAAE,YAAA,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC;AAC1C,QAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC;AACnC,QAAA,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;AACpB,QAAA,OAAO,IAAI;IACb;AAEA;;AAEG;IACH,MAAM,CAAC,aAAqB,EAAE,KAAY,EAAA;QACxC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC;AAC9C,QAAA,IAAI,CAAC,KAAK;AAAE,YAAA,OAAO,KAAK;QAExB,IAAI,KAAK,CAAC,KAAK;AAAE,YAAA,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC;AAC1C,QAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC;AACnC,QAAA,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;AACnB,QAAA,OAAO,IAAI;IACb;AAEA;;AAEG;AACH,IAAA,GAAG,CAAC,aAAqB,EAAA;QACvB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC;IACzC;AAEA;;AAEG;IACH,KAAK,GAAA;QACH,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE;YACvC,IAAI,KAAK,CAAC,KAAK;AAAE,gBAAA,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC;YAC1C,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,CAAA,YAAA,EAAe,EAAE,CAAA,UAAA,CAAY,CAAC,CAAC;QACxD;AACA,QAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;IACvB;AAEA,IAAA,IAAI,IAAI,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI;IAC3B;AACD;;SCvEe,kBAAkB,CAChC,UAAkB,EAClB,OAAgC,EAChC,OAOC,EAAA;IAED,OAAO;AACL,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,QAAQ,EAAE,uBAAuB;QACjC,MAAM,EAAE,UAAU,EAAE;QACpB,aAAa,EAAE,UAAU,EAAE;QAC3B,OAAO,EAAE,OAAO,EAAE,OAAO;QACzB,UAAU;QACV,OAAO;QACP,IAAI,EAAE,OAAO,EAAE,IAAI;AACnB,QAAA,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,QAAQ;QACvC,QAAQ,EAAE,OAAO,EAAE,QAAQ;QAC3B,SAAS,EAAE,eAAe,EAAE;QAC5B,SAAS,EAAE,OAAO,EAAE,SAAS;QAC7B,OAAO,EAAE,OAAO,EAAE,OAAO;KAC1B;AACH;AAEM,SAAU,oBAAoB,CAClC,MAAc,EACd,aAAqB,EACrB,MAAgC,EAChC,OAAgC,EAChC,KAAyC,EACzC,WAAoB,EACpB,OAAgB,EAAA;IAEhB,OAAO;AACL,QAAA,IAAI,EAAE,QAAQ;AACd,QAAA,QAAQ,EAAE,uBAAuB;QACjC,aAAa;QACb,MAAM;QACN,MAAM;QACN,OAAO;QACP,KAAK;QACL,WAAW,EAAE,eAAe,EAAE;QAC9B,WAAW;QACX,OAAO;KACR;AACH;AAEM,SAAU,mBAAmB,CACjC,GAAW,EACX,KAAc,EACd,OAAe,EACf,SAAiB,EAAA;IAEjB,OAAO;AACL,QAAA,IAAI,EAAE,OAAO;AACb,QAAA,QAAQ,EAAE,uBAAuB;QACjC,GAAG;QACH,KAAK;QACL,OAAO;QACP,SAAS;QACT,SAAS,EAAE,eAAe,EAAE;KAC7B;AACH;AAEM,SAAU,mBAAmB,CACjC,QAAgB,EAChB,SAAiB,EACjB,OAAgC,EAChC,QAAA,GAAsC,MAAM,EAAA;IAE5C,OAAO;AACL,QAAA,IAAI,EAAE,OAAO;AACb,QAAA,QAAQ,EAAE,uBAAuB;QACjC,OAAO,EAAE,UAAU,EAAE;QACrB,QAAQ;QACR,QAAQ;QACR,SAAS;QACT,OAAO;QACP,SAAS,EAAE,eAAe,EAAE;KAC7B;AACH;AAEM,SAAU,qBAAqB,CACnC,MAAc,EACd,OAAgB,EAChB,WAAmB,EACnB,OAGC,EAAA;IAED,OAAO;AACL,QAAA,IAAI,EAAE,kBAAkB;AACxB,QAAA,QAAQ,EAAE,uBAAuB;QACjC,SAAS,EAAE,UAAU,EAAE;QACvB,aAAa,EAAE,UAAU,EAAE;QAC3B,MAAM;QACN,OAAO;AACP,QAAA,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,QAAQ;QACrC,WAAW;QACX,WAAW,EAAE,eAAe,EAAE;QAC9B,SAAS,EAAE,OAAO,EAAE,SAAS;KAC9B;AACH;AAEM,SAAU,sBAAsB,CACpC,SAAiB,EACjB,aAAqB,EACrB,QAA8C,EAC9C,WAAmB,EACnB,MAAe,EAAA;IAEf,OAAO;AACL,QAAA,IAAI,EAAE,mBAAmB;AACzB,QAAA,QAAQ,EAAE,uBAAuB;QACjC,SAAS;QACT,aAAa;QACb,QAAQ;QACR,WAAW;QACX,MAAM;QACN,WAAW,EAAE,eAAe,EAAE;KAC/B;AACH;AAEM,SAAU,iBAAiB,CAC/B,QAAgB,EAChB,IAA6B,EAC7B,WAAmB,EACnB,OAA8B,EAAA;IAE9B,OAAO;AACL,QAAA,IAAI,EAAE,cAAc;AACpB,QAAA,QAAQ,EAAE,uBAAuB;QACjC,SAAS,EAAE,UAAU,EAAE;QACvB,aAAa,EAAE,UAAU,EAAE;QAC3B,OAAO,EAAE,OAAO,EAAE,OAAO;QACzB,QAAQ;AACR,QAAA,SAAS,EAAE,IAAI;QACf,WAAW;QACX,WAAW,EAAE,eAAe,EAAE;KAC/B;AACH;AAEM,SAAU,kBAAkB,CAChC,SAAiB,EACjB,aAAqB,EACrB,MAAsC,EACtC,MAAe,EACf,KAAyC,EACzC,WAAoB,EACpB,OAAgB,EAAA;IAEhB,OAAO;AACL,QAAA,IAAI,EAAE,eAAe;AACrB,QAAA,QAAQ,EAAE,uBAAuB;QACjC,SAAS;QACT,aAAa;QACb,MAAM;QACN,MAAM;QACN,KAAK;QACL,WAAW;QACX,WAAW,EAAE,eAAe,EAAE;QAC9B,OAAO;KACR;AACH;;ACvKA;;;;;;;;;;;;;;;;;;;;;;;AAuBG;MACU,OAAO,CAAA;AAKlB,IAAA,WAAA,CAAY,IAAe,EAAA;AAHnB,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,kBAAkB,EAAkB;QACxD,IAAA,CAAA,YAAY,GAAG,KAAK;AAG1B,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI;;QAGjB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,KAAI;YACnC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC;AAC9D,QAAA,CAAC,CAAC;IACJ;AAEA;;;;;;AAMG;AACH,IAAA,MAAM,QAAQ,CACZ,UAAkB,EAClB,OAAgC,EAChC,OAoBC,EAAA;;;;AAKD,QAAA,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE;YAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC;AACjD,YAAA,MAAM,MAAM,GAAG,OAAO,EAAE;kBACpB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,QAAQ;kBACrE,OAAO;AACX,YAAA,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;AACvB,gBAAA,MAAM,IAAI,KAAK,CACb,CAAA,GAAA,EAAM,OAAO,EAAE,aAAa,GAAG,SAAS,GAAG,EAAE,CAAA,uBAAA,EAA0B,UAAU,CAAA,gBAAA,CAAkB;oBACnG,CAAA,yBAAA,EAA4B,IAAI,CAAC,KAAK,CAAC,wBAAwB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,GAAA,CAAK;oBACjF,CAAA,kBAAA,EAAqB,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAA,EAAA,CAAI;AAC/D,oBAAA,CAAA,gDAAA,CAAkD,CACnD;YACH;QACF;AAEA,QAAA,MAAM,QAAQ,GAAG,kBAAkB,CAAC,UAAU,EAAE,OAAO,EAAE;AACvD,YAAA,GAAG,OAAO;YACV,SAAS,EAAE,OAAO,EAAE,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO;;;YAGnD,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO;AAChD,SAAA,CAAC;AACF,QAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC;AAEhC,QAAA,IAAI,OAAO,EAAE,aAAa,EAAE;;;;;YAK1B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC;YACjD,IAAI,CAAC,OAAO,EAAE,qBAAqB,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;AACzD,gBAAA,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC;AACrD,gBAAA,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;AACvB,oBAAA,MAAM,IAAI,yBAAyB,CACjC,CAAA,MAAA,EAAS,UAAU,CAAA,6BAAA,CAA+B,EAClD,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAC7D;gBACH;AACA,gBAAA,IAAI,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;AACxD,oBAAA,IAAI,CAAC,YAAY,GAAG,IAAI;AACxB,oBAAA,OAAO,CAAC,IAAI,CACV,CAAA,2BAAA,EAA8B,UAAU,CAAA,sCAAA,CAAwC;AAC9E,wBAAA,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;AACnE,wBAAA,sDAAsD,CACzD;gBACH;YACF;AAEA,YAAA,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAChC,QAAQ,CAAC,aAAa,EACtB,OAAO,CAAC,OAAO,EACf,SAAS,UAAU,CAAA,YAAA,EAAe,OAAO,CAAC,MAAM,CAAA,eAAA,EAAkB,OAAO,CAAC,MAAM,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,CAAA,WAAA,CAAa;gBAC5G,CAAA,sEAAA,CAAwE;AACxE,gBAAA,CAAA,sDAAA,CAAwD,CAC3D;QACH;IACF;IAeA,MAAM,CACJ,qBAAmD,EACnD,YAA0B,EAAA;;AAG1B,QAAA,MAAM,YAAY,GAChB,OAAO,qBAAqB,KAAK,UAAU,GAAG,GAAG,GAAG,qBAAqB;AAC3E,QAAA,MAAM,OAAO,GACX,OAAO,qBAAqB,KAAK,UAAU,GAAG,qBAAqB,GAAG,YAAa;QAErF,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,KAAI;;AAE7B,YAAA,IAAI,YAAY,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;gBACnE;YACF;YAEA,MAAM,OAAO,GAAG,CACd,MAAgC,EAChC,OAAgC,EAChC,KAAyC,KACvC;gBACF,MAAM,MAAM,GAAG,oBAAoB,CACjC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,aAAa,EAClB,MAAM,EACN,OAAO,EACP,KAAK,EACL,IAAI,CAAC,KAAK,CAAC,OAAO;;AAElB,gBAAA,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,CAC/B;AACD,gBAAA,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC;AAClC,YAAA,CAAC;AACD,YAAA,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;AACxB,QAAA,CAAC,CAAC;IACJ;AAEA;;;AAGG;AACH,IAAA,gBAAgB,CAAC,UAAkB,EAAA;QACjC,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC;IAC1C;;IAGA,OAAO,GAAA;AACL,QAAA,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE;IAC5B;AACD;;ACrMD;;;;;AAKG;MACU,KAAK,CAAA;IAIhB,WAAA,CAAY,IAAe,EAAE,OAAe,EAAA;AAC1C,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI;AACjB,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO;IACzB;AAEA;;AAEG;IACH,IAAI,CACF,EAAU,EACV,OAAgC,EAAA;AAEhC,QAAA,MAAM,OAAO,GAAiB;YAC5B,SAAS,EAAE,UAAU,EAAE;YACvB,IAAI,EAAE,IAAI,CAAC,QAAQ;YACnB,EAAE;YACF,OAAO;YACP,SAAS,EAAE,eAAe,EAAE;SAC7B;AACD,QAAA,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAA6C,CAAC;IACxE;AAEA;;AAEG;AACH,IAAA,SAAS,CACP,OAAwC,EAAA;QAExC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,KAAI;YAClC,MAAM,GAAG,GAAG,QAAmC;YAC/C,IAAI,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE;gBAC5B,OAAO,CAAC,GAAG,CAAC;YACd;AACF,QAAA,CAAC,CAAC;IACJ;AACD;;ACpDD;;;;;AAKG;MACU,UAAU,CAAA;IAKrB,WAAA,CAAY,IAAe,EAAE,OAAe,EAAA;AAFpC,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,GAAG,EAAyB;AAG/C,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI;AACjB,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO;QAEvB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,QAAQ,KAAI;YACxC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;AACzC,QAAA,CAAC,CAAC;IACJ;AAEA;;AAEG;IACH,GAAG,CAAC,GAAW,EAAE,KAAc,EAAA;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;AACrC,QAAA,MAAM,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC;AACnD,QAAA,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC;QACxE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC;AAC9B,QAAA,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAA8C,CAAC;IACzE;AAEA;;AAEG;AACH,IAAA,GAAG,CAAC,GAAW,EAAA;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK;IACpC;AAEA;;AAEG;AACH,IAAA,WAAW,CAAC,GAAW,EAAA;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;IAC7B;AAEA;;AAEG;IACH,MAAM,GAAA;QACJ,OAAO,IAAI,CAAC,MAAM;IACpB;AAEA;;AAEG;IACH,QAAQ,CACN,GAAW,EACX,OAA0C,EAAA;QAE1C,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,QAAQ,KAAI;AACxC,YAAA,IAAI,QAAQ,CAAC,GAAG,KAAK,GAAG,EAAE;gBACxB,OAAO,CAAC,QAAQ,CAAC;YACnB;AACF,QAAA,CAAC,CAAC;IACJ;AACD;;ACjED;;;;;AAKG;MACU,OAAO,CAAA;IAIlB,WAAA,CAAY,IAAe,EAAE,SAAiB,EAAA;AAC5C,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI;AACjB,QAAA,IAAI,CAAC,UAAU,GAAG,SAAS;IAC7B;AAEA;;AAEG;AACH,IAAA,IAAI,CACF,QAAgB,EAChB,OAAgC,EAChC,WAAsC,MAAM,EAAA;AAE5C,QAAA,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC;AAClF,QAAA,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAA8C,CAAC;IACzE;AAEA;;AAEG;IACH,EAAE,CACA,OAA0C,EAC1C,MAAoE,EAAA;QAEpE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,KAAI;YAClC,IAAI,MAAM,EAAE,QAAQ,IAAI,QAAQ,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ;gBAAE;YAC/D,IAAI,MAAM,EAAE,QAAQ,IAAI,QAAQ,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ;gBAAE;YAC/D,OAAO,CAAC,QAAQ,CAAC;AACnB,QAAA,CAAC,CAAC;IACJ;AACD;;ACpCD;;;;;AAKG;MACU,OAAO,CAAA;IAMlB,WAAA,CAAY,IAAe,EAAE,OAAe,EAAA;AAHpC,QAAA,IAAA,CAAA,aAAa,GACnB,IAAI,kBAAkB,EAA4B;AAGlD,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI;AACjB,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO;;QAGvB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,QAAQ,KAAI;YAC7C,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC;AAC9D,QAAA,CAAC,CAAC;IACJ;AAEA;;AAEG;AACH,IAAA,MAAM,OAAO,CACX,MAAc,EACd,OAAgB,EAChB,OAIC,EAAA;QAED,MAAM,QAAQ,GAAG,qBAAqB,CACpC,MAAM,EACN,OAAO,EACP,IAAI,CAAC,QAAQ,EACb;YACE,OAAO,EAAE,OAAO,EAAE,OAAO;YACzB,SAAS,EAAE,OAAO,EAAE,SAAS;AAC9B,SAAA,CACF;AACD,QAAA,IAAI,CAAC,KAAK,CAAC,eAAe,CACxB,QAA8C,CAC/C;AAED,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAChC,QAAQ,CAAC,aAAa,EACtB,OAAO,EAAE,OAAO,CACjB;IACH;AAEA;;;AAGG;AACH,IAAA,SAAS,CACP,OAMS,EAAA;QAET,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,OAAO,KAAI;AAC3C,YAAA,MAAM,OAAO,GAAG,CACd,QAA8C,EAC9C,MAAe,KACb;gBACF,MAAM,QAAQ,GAAG,sBAAsB,CACrC,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,aAAa,EACrB,QAAQ,EACR,IAAI,CAAC,QAAQ,EACb,MAAM,CACP;AACD,gBAAA,IAAI,CAAC,KAAK,CAAC,eAAe,CACxB,QAA8C,CAC/C;AACH,YAAA,CAAC;AACD,YAAA,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC;AAC3B,QAAA,CAAC,CAAC;IACJ;;IAGA,OAAO,GAAA;AACL,QAAA,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE;IAC5B;AACD;;ACxFD;;;;;AAKG;MACU,KAAK,CAAA;IAOhB,WAAA,CAAY,IAAe,EAAE,OAAe,EAAA;AAJpC,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,kBAAkB,EAAwB;AAC9D,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,GAAG,EAAuB;QAC1C,IAAA,CAAA,YAAY,GAAG,KAAK;AAG1B,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI;AACjB,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO;;QAGvB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,QAAQ,KAAI;YACzC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC;AAC9D,QAAA,CAAC,CAAC;;QAGF,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,aAAa,EAAE,OAAO,QAAQ,KAAI;AAC9C,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC;;YAGrD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,WAAW;YAExD,IAAI,CAAC,OAAO,EAAE;;;;;;;;;gBASZ,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBAAE;;;;;AAM7C,gBAAA,MAAM,IAAI,GAAG,kBAAkB,CAC7B,QAAQ,CAAC,SAAS,EAClB,QAAQ,CAAC,aAAa,EACtB,OAAO,EACP,IAAI,EACJ;AACE,oBAAA,IAAI,EAAE,YAAY;oBAClB,OAAO,EAAE,UAAU,IAAI,CAAC,QAAQ,CAAA,2BAAA,EAA8B,QAAQ,CAAC,QAAQ,CAAA,CAAA,CAAG;AACnF,iBAAA,EACD,IAAI,CAAC,QAAQ,EACb,OAAO,CACR;AACD,gBAAA,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAA0C,CAAC;gBACnE;YACF;AAEA,YAAA,IAAI;gBACF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAChD,MAAM,QAAQ,GAAG,kBAAkB,CACjC,QAAQ,CAAC,SAAS,EAClB,QAAQ,CAAC,aAAa,EACtB,SAAS,EACT,MAAM,EACN,SAAS,EACT,IAAI,CAAC,QAAQ,EACb,OAAO,CACR;AACD,gBAAA,IAAI,CAAC,KAAK,CAAC,YAAY,CACrB,QAA8C,CAC/C;YACH;YAAE,OAAO,GAAG,EAAE;AACZ,gBAAA,MAAM,QAAQ,GAAG,kBAAkB,CACjC,QAAQ,CAAC,SAAS,EAClB,QAAQ,CAAC,aAAa,EACtB,OAAO,EACP,IAAI,EACJ;AACE,oBAAA,IAAI,EAAE,YAAY;AAClB,oBAAA,OAAO,EAAE,GAAG,YAAY,KAAK,GAAG,GAAG,CAAC,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC;AAC1D,iBAAA,EACD,IAAI,CAAC,QAAQ,EACb,OAAO,CACR;AACD,gBAAA,IAAI,CAAC,KAAK,CAAC,YAAY,CACrB,QAA8C,CAC/C;YACH;AACF,QAAA,CAAC,CAAC;IACJ;AAEA;;AAEG;IACH,QAAQ,CAAC,QAAgB,EAAE,OAAoB,EAAA;QAC7C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC;IACvC;AAEA;AAC4E;AACpE,IAAA,cAAc,CAAC,QAAgB,EAAA;AACrC,QAAA,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC;AAAE,YAAA,OAAO,KAAK;AAC3C,QAAA,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI;QACnF,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE;AACxC,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI;YAC9E,IAAI,SAAS,KAAK,EAAE;AAAE,gBAAA,OAAO,IAAI;QACnC;AACA,QAAA,OAAO,KAAK;IACd;AAEA;;AAEG;AACH,IAAA,MAAM,MAAM,CACV,QAAgB,EAChB,IAA6B,EAC7B,OAA+D,EAAA;;;;;;AAO/D,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC;AAClB,aAAA,kBAAkB;AAClB,aAAA,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC;QAC1C,IAAI,CAAC,OAAO,EAAE,qBAAqB,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;AACzD,YAAA,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC;AACrD,YAAA,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;AACvB,gBAAA,MAAM,IAAI,yBAAyB,CACjC,CAAA,MAAA,EAAS,QAAQ,CAAA,YAAA,CAAc,EAC/B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAC7D;YACH;AACA,YAAA,IAAI,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;AACxD,gBAAA,IAAI,CAAC,YAAY,GAAG,IAAI;gBACxB,OAAO,CAAC,IAAI,CACV,CAAA,qBAAA,EAAwB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAA,2CAAA,CAA6C;AAClF,oBAAA,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;AACnE,oBAAA,sDAAsD,CACzD;YACH;QACF;;;;;QAMA,MAAM,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE;AAChE,YAAA,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;AAC5B,SAAA,CAAC;AACF,QAAA,IAAI,CAAC,KAAK,CAAC,YAAY,CACrB,QAA8C,CAC/C;AAED,QAAA,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM;QAClC,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAChC,QAAQ,CAAC,aAAa,EACtB,OAAO,EAAE,OAAO,EAChB,SAAS,QAAQ,CAAA,sBAAA,EAAyB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAA,EAAA,CAAI;AAC3D,YAAA,CAAA,CAAA,EAAI,WAAW,CAAA,YAAA,EAAe,WAAW,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,CAAA,WAAA,CAAa;YACvE,CAAA,uEAAA,CAAyE;YACzE,CAAA,sEAAA,CAAwE;AACxE,YAAA,CAAA,+BAAA,CAAiC,CACpC;IACH;;IAGA,OAAO,GAAA;AACL,QAAA,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE;AAC1B,QAAA,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;IACxB;AACD;;ACzLD;AACO,MAAM,UAAU,GAAG;AACxB,IAAA,UAAU,EAAE,YAAY;AACxB,IAAA,QAAQ,EAAE,UAAU;AACpB,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,QAAQ,EAAE,UAAU;AACpB,IAAA,OAAO,EAAE,SAAS;AAClB,IAAA,MAAM,EAAE,QAAQ;;AAGlB;AACO,MAAM,SAAS,GAAG;AACvB,IAAA,cAAc,EAAE,gBAAgB;AAChC,IAAA,cAAc,EAAE,gBAAgB;;AAGlC;AACM,SAAU,GAAG,CAAC,MAAc,EAAE,KAAa,EAAA;AAC/C,IAAA,OAAO,CAAA,EAAG,MAAM,CAAA,CAAA,EAAI,KAAK,EAAE;AAC7B;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/index.d.ts CHANGED
@@ -5,6 +5,8 @@
5
5
  export { NoLagAgents } from "./NoLagAgents";
6
6
  export { AgentRoom, type ConnectedAgent } from "./AgentRoom";
7
7
  export { EventEmitter } from "./EventEmitter";
8
+ export { IncompatibleProtocolError } from "./errors";
9
+ export { AGENTS_PROTOCOL_VERSION } from "./constants";
8
10
  export { CorrelationManager } from "./correlation";
9
11
  export { Handoff } from "./patterns/handoff";
10
12
  export { Inbox } from "./patterns/inbox";
package/dist/index.mjs CHANGED
@@ -66,6 +66,10 @@ const TOPIC_TOOLS = "tools";
66
66
  const TOPIC_APPROVAL = "approval";
67
67
  /** Default room for agent coordination */
68
68
  const DEFAULT_ROOM = "default-workflow";
69
+ /** Agents-protocol version: 2 = directed replies (filter-routed results),
70
+ * NO_HANDLER NACKs, presence protocol advertisement. Absent/1 = legacy
71
+ * broadcast replies (pre-0.2.0 SDKs). */
72
+ const AGENTS_PROTOCOL_VERSION = 2;
69
73
 
70
74
  /**
71
75
  * AgentRoom — wraps a RoomContext from @nolag/js-sdk.
@@ -98,10 +102,13 @@ class AgentRoom extends EventEmitter {
98
102
  this._presence = presence;
99
103
  this._wireTopicListeners();
100
104
  this._wirePresenceListeners();
101
- // Set presence if provided
105
+ // Set presence if provided (with the SDK's protocol version advertised
106
+ // so counterparts can detect incompatible reply semantics)
102
107
  if (presence) {
103
- this._log(`setting presence in room ${name}:`, presence);
104
- this._roomContext.setPresence(presence);
108
+ const withProtocol = { protocol: AGENTS_PROTOCOL_VERSION, ...presence };
109
+ this._presence = withProtocol;
110
+ this._log(`setting presence in room ${name}:`, withProtocol);
111
+ this._roomContext.setPresence(withProtocol);
105
112
  }
106
113
  // Fetch initial presence snapshot
107
114
  this._fetchInitialPresence();
@@ -134,11 +141,12 @@ class AgentRoom extends EventEmitter {
134
141
  // ============================================================
135
142
  // PRESENCE
136
143
  // ============================================================
137
- /** Update this agent's presence data */
144
+ /** Update this agent's presence data (protocol version auto-injected) */
138
145
  setPresence(data) {
139
- this._presence = data;
146
+ const withProtocol = { protocol: AGENTS_PROTOCOL_VERSION, ...data };
147
+ this._presence = withProtocol;
140
148
  this._log(`updating presence in room ${this.name}`);
141
- this._roomContext.setPresence(data);
149
+ this._roomContext.setPresence(withProtocol);
142
150
  }
143
151
  /** Fetch current presence snapshot for this room */
144
152
  async fetchPresence() {
@@ -249,6 +257,8 @@ class AgentRoom extends EventEmitter {
249
257
  capabilities: presence.capabilities || [],
250
258
  metadata: presence.metadata,
251
259
  connectedAt: actor.joinedAt || Date.now(),
260
+ protocol: typeof presence.protocol === 'number' ? presence.protocol : 1,
261
+ status: actor.status,
252
262
  };
253
263
  }
254
264
  async _fetchInitialPresence() {
@@ -284,6 +294,7 @@ class AgentRoom extends EventEmitter {
284
294
  capabilities: data.capabilities || [],
285
295
  metadata: data.metadata,
286
296
  connectedAt: Date.now(),
297
+ protocol: typeof data.protocol === 'number' ? data.protocol : 1,
287
298
  };
288
299
  this._agents.set(id, agent);
289
300
  this._log(`agent joined room ${this.name}:`, agent.name, agent.capabilities);
@@ -315,6 +326,7 @@ class AgentRoom extends EventEmitter {
315
326
  capabilities: data.capabilities || existing?.capabilities || [],
316
327
  metadata: data.metadata || existing?.metadata,
317
328
  connectedAt: existing?.connectedAt || Date.now(),
329
+ protocol: typeof data.protocol === 'number' ? data.protocol : (existing?.protocol ?? 1),
318
330
  };
319
331
  this._agents.set(id, agent);
320
332
  this.emit('presenceUpdate', id, data);
@@ -621,6 +633,24 @@ class NoLagAgents extends EventEmitter {
621
633
  }
622
634
  }
623
635
 
636
+ /**
637
+ * IncompatibleProtocolError — thrown when an operation would deterministically
638
+ * fail because every relevant counterpart runs an older agents-protocol
639
+ * (pre-directed-replies). Failing fast beats burning the correlation timeout.
640
+ */
641
+ class IncompatibleProtocolError extends Error {
642
+ constructor(operation, agents) {
643
+ const list = agents.map((a) => `${a.name} (protocol ${a.protocol})`).join(", ");
644
+ super(`${operation} cannot succeed: every relevant agent advertises agents-protocol < 2 ` +
645
+ `[${list}]. Protocol >= 2 responders direct replies to the requester; older ones ` +
646
+ `broadcast and their replies never reach this SDK's filtered subscription. ` +
647
+ `Upgrade the responders to @nolag/agents >= 0.2.0 / nolag-agents >= 0.3.0. ` +
648
+ `NOTE: 0.2.x/0.3.0 responders DO have directed replies but do not yet advertise ` +
649
+ `protocol — if your responders run those versions, pass { allowLegacyResponders: true }.`);
650
+ this.name = "IncompatibleProtocolError";
651
+ }
652
+ }
653
+
624
654
  /**
625
655
  * CorrelationManager — maps correlationIds to pending promises with timeout.
626
656
  * Used by Handoff and Tools patterns for request/response correlation.
@@ -633,13 +663,16 @@ class CorrelationManager {
633
663
  * Register a pending correlation. Returns a promise that resolves
634
664
  * when `resolve()` is called with the matching correlationId.
635
665
  */
636
- register(correlationId, timeoutMs) {
666
+ register(correlationId, timeoutMs, context) {
637
667
  return new Promise((resolve, reject) => {
638
668
  let timer = null;
639
669
  if (timeoutMs && timeoutMs > 0) {
640
670
  timer = setTimeout(() => {
641
671
  this._pending.delete(correlationId);
642
- reject(new Error(`Correlation ${correlationId} timed out after ${timeoutMs}ms`));
672
+ // Context turns an opaque correlation id into an actionable error —
673
+ // callers supply what they were waiting for and the likely causes.
674
+ const what = context ?? `Correlation ${correlationId}`;
675
+ reject(new Error(`${what} timed out after ${timeoutMs}ms`));
643
676
  }, timeoutMs);
644
677
  }
645
678
  this._pending.set(correlationId, { resolve, reject, timer });
@@ -697,6 +730,7 @@ class CorrelationManager {
697
730
  function createTaskEnvelope(capability, payload, options) {
698
731
  return {
699
732
  type: "task",
733
+ protocol: AGENTS_PROTOCOL_VERSION,
700
734
  taskId: generateId(),
701
735
  correlationId: generateId(),
702
736
  replyTo: options?.replyTo,
@@ -713,6 +747,7 @@ function createTaskEnvelope(capability, payload, options) {
713
747
  function createResultEnvelope(taskId, correlationId, status, payload, error, completedBy, replyTo) {
714
748
  return {
715
749
  type: "result",
750
+ protocol: AGENTS_PROTOCOL_VERSION,
716
751
  correlationId,
717
752
  taskId,
718
753
  status,
@@ -726,6 +761,7 @@ function createResultEnvelope(taskId, correlationId, status, payload, error, com
726
761
  function createStateEnvelope(key, value, version, updatedBy) {
727
762
  return {
728
763
  type: "state",
764
+ protocol: AGENTS_PROTOCOL_VERSION,
729
765
  key,
730
766
  value,
731
767
  version,
@@ -736,6 +772,7 @@ function createStateEnvelope(key, value, version, updatedBy) {
736
772
  function createEventEnvelope(category, emittedBy, payload, severity = "info") {
737
773
  return {
738
774
  type: "event",
775
+ protocol: AGENTS_PROTOCOL_VERSION,
739
776
  eventId: generateId(),
740
777
  severity,
741
778
  category,
@@ -747,6 +784,7 @@ function createEventEnvelope(category, emittedBy, payload, severity = "info") {
747
784
  function createApprovalRequest(action, context, requestedBy, options) {
748
785
  return {
749
786
  type: "approval_request",
787
+ protocol: AGENTS_PROTOCOL_VERSION,
750
788
  requestId: generateId(),
751
789
  correlationId: generateId(),
752
790
  action,
@@ -760,6 +798,7 @@ function createApprovalRequest(action, context, requestedBy, options) {
760
798
  function createApprovalResponse(requestId, correlationId, decision, respondedBy, reason) {
761
799
  return {
762
800
  type: "approval_response",
801
+ protocol: AGENTS_PROTOCOL_VERSION,
763
802
  requestId,
764
803
  correlationId,
765
804
  decision,
@@ -771,6 +810,7 @@ function createApprovalResponse(requestId, correlationId, decision, respondedBy,
771
810
  function createToolRequest(toolName, args, requestedBy, options) {
772
811
  return {
773
812
  type: "tool_request",
813
+ protocol: AGENTS_PROTOCOL_VERSION,
774
814
  requestId: generateId(),
775
815
  correlationId: generateId(),
776
816
  replyTo: options?.replyTo,
@@ -783,6 +823,7 @@ function createToolRequest(toolName, args, requestedBy, options) {
783
823
  function createToolResponse(requestId, correlationId, status, result, error, respondedBy, replyTo) {
784
824
  return {
785
825
  type: "tool_response",
826
+ protocol: AGENTS_PROTOCOL_VERSION,
786
827
  requestId,
787
828
  correlationId,
788
829
  status,
@@ -821,6 +862,7 @@ function createToolResponse(requestId, correlationId, status, result, error, res
821
862
  class Handoff {
822
863
  constructor(room) {
823
864
  this._correlations = new CorrelationManager();
865
+ this._warnedMixed = false;
824
866
  this._room = room;
825
867
  // Wire result correlation
826
868
  this._room.on("result", (envelope) => {
@@ -835,11 +877,16 @@ class Handoff {
835
877
  * agent is connected (unless `allowNoWorkers` is set).
836
878
  */
837
879
  async dispatch(capability, payload, options) {
838
- // Service discovery: check if any agent can handle this capability
880
+ // Service discovery: check if any agent can handle this capability.
881
+ // Persistent Presence: findAgents includes offline persistent agents, which
882
+ // the broker wakes on publish — so they satisfy the gate unless requireOnline.
839
883
  if (!options?.allowNoWorkers) {
840
884
  const capable = this._room.findAgents(capability);
841
- if (capable.length === 0) {
842
- throw new Error(`No agent with capability "${capability}" is connected. ` +
885
+ const usable = options?.requireOnline
886
+ ? capable.filter((a) => a.status === undefined || a.status === "online")
887
+ : capable;
888
+ if (usable.length === 0) {
889
+ throw new Error(`No ${options?.requireOnline ? "online " : ""}agent with capability "${capability}" is available. ` +
843
890
  `Available capabilities: [${this._room.getAvailableCapabilities().join(', ')}]. ` +
844
891
  `Connected agents: ${this._room.getConnectedAgents().length}. ` +
845
892
  `Use { allowNoWorkers: true } to dispatch anyway.`);
@@ -854,7 +901,26 @@ class Handoff {
854
901
  });
855
902
  this._room.publishTask(envelope);
856
903
  if (options?.waitForResult) {
857
- return this._correlations.register(envelope.correlationId, options.timeout);
904
+ // Fail fast when the outcome is deterministic: if capable workers are
905
+ // visible and ALL advertise agents-protocol < 2, their results cannot
906
+ // reach this dispatcher's filtered subscription. Mixed pools proceed
907
+ // with a warning (presence is eventually consistent).
908
+ const capable = this._room.findAgents(capability);
909
+ if (!options?.allowLegacyResponders && capable.length > 0) {
910
+ const modern = capable.filter((a) => a.protocol >= 2);
911
+ if (modern.length === 0) {
912
+ throw new IncompatibleProtocolError(`Task '${capability}' dispatch with waitForResult`, capable.map((a) => ({ name: a.name, protocol: a.protocol })));
913
+ }
914
+ if (modern.length < capable.length && !this._warnedMixed) {
915
+ this._warnedMixed = true;
916
+ console.warn(`[nolag-agents] Capability '${capability}' has workers on agents-protocol < 2: ` +
917
+ capable.filter((a) => a.protocol < 2).map((a) => a.name).join(", ") +
918
+ ". Their results may not be delivered — upgrade them.");
919
+ }
920
+ }
921
+ return this._correlations.register(envelope.correlationId, options.timeout, `Task '${capability}' dispatch (${capable.length} capable worker${capable.length === 1 ? "" : "s"} visible). ` +
922
+ `Likely causes: worker crashed mid-task, worker on agents-protocol < 2 ` +
923
+ `(results not directed), or the room is not deliverable`);
858
924
  }
859
925
  }
860
926
  onTask(capabilitiesOrHandler, maybeHandler) {
@@ -1068,6 +1134,7 @@ class Tools {
1068
1134
  constructor(room, agentId) {
1069
1135
  this._correlations = new CorrelationManager();
1070
1136
  this._handlers = new Map();
1137
+ this._warnedMixed = false;
1071
1138
  this._room = room;
1072
1139
  this._agentId = agentId;
1073
1140
  // Wire response correlation
@@ -1077,10 +1144,30 @@ class Tools {
1077
1144
  // Wire request handling
1078
1145
  this._room.on("toolRequest", async (envelope) => {
1079
1146
  const handler = this._handlers.get(envelope.toolName);
1080
- if (!handler)
1081
- return;
1082
1147
  // Direct the response back to the requester's filter sub-topic
1083
1148
  const replyTo = envelope.replyTo ?? envelope.requestedBy;
1149
+ if (!handler) {
1150
+ // Tool requests are load-balanced to EVERY group in the room, so
1151
+ // agents legitimately receive requests meant for other tool servers.
1152
+ // Stay silent unless this agent plausibly owns the tool:
1153
+ // - pure requesters (zero handlers) never answer
1154
+ // - servers answer only within their own namespace (the prefix
1155
+ // before the first '.', e.g. 'backend.*', 'chemistry.*') — a
1156
+ // 'backend.*' server NACKing 'chemistry.analyze' would race and
1157
+ // beat the real chemistry server's response
1158
+ if (!this._ownsNamespace(envelope.toolName))
1159
+ return;
1160
+ // A tool SERVER missing a handler in ITS OWN namespace NACKs instead
1161
+ // of silently ignoring — silence means the requester burns its full
1162
+ // timeout. (Requires homogeneous tool sets within a loadBalanceGroup
1163
+ // — see AGENTS-PROTOCOL.md.)
1164
+ const nack = createToolResponse(envelope.requestId, envelope.correlationId, "error", null, {
1165
+ code: "NO_HANDLER",
1166
+ message: `Agent '${this._agentId}' has no handler for tool '${envelope.toolName}'`,
1167
+ }, this._agentId, replyTo);
1168
+ this._room.publishTools(nack);
1169
+ return;
1170
+ }
1084
1171
  try {
1085
1172
  const result = await handler(envelope.arguments);
1086
1173
  const response = createToolResponse(envelope.requestId, envelope.correlationId, "success", result, undefined, this._agentId, replyTo);
@@ -1101,10 +1188,43 @@ class Tools {
1101
1188
  register(toolName, handler) {
1102
1189
  this._handlers.set(toolName, handler);
1103
1190
  }
1191
+ /** True when this agent hosts handlers in the tool's namespace (prefix
1192
+ * before the first '.'); unprefixed tools match any unprefixed handler. */
1193
+ _ownsNamespace(toolName) {
1194
+ if (this._handlers.size === 0)
1195
+ return false;
1196
+ const ns = toolName.includes(".") ? toolName.slice(0, toolName.indexOf(".")) : null;
1197
+ for (const name of this._handlers.keys()) {
1198
+ const handlerNs = name.includes(".") ? name.slice(0, name.indexOf(".")) : null;
1199
+ if (handlerNs === ns)
1200
+ return true;
1201
+ }
1202
+ return false;
1203
+ }
1104
1204
  /**
1105
1205
  * Invoke a remote tool and wait for the response.
1106
1206
  */
1107
1207
  async invoke(toolName, args, options) {
1208
+ // Fail fast when the outcome is deterministic: tool servers are visible
1209
+ // in presence; if some exist and ALL advertise protocol < 2, their
1210
+ // replies cannot reach this requester. Mixed pools proceed with a
1211
+ // warning (presence is eventually consistent — hard-failing on one
1212
+ // stale entry would flake).
1213
+ const servers = this._room
1214
+ .getConnectedAgents()
1215
+ .filter((a) => a.role === "tool-server");
1216
+ if (!options?.allowLegacyResponders && servers.length > 0) {
1217
+ const modern = servers.filter((a) => a.protocol >= 2);
1218
+ if (modern.length === 0) {
1219
+ throw new IncompatibleProtocolError(`Tool '${toolName}' invocation`, servers.map((a) => ({ name: a.name, protocol: a.protocol })));
1220
+ }
1221
+ if (modern.length < servers.length && !this._warnedMixed) {
1222
+ this._warnedMixed = true;
1223
+ console.warn(`[nolag-agents] Room '${this._room.name}' has tool servers on agents-protocol < 2: ` +
1224
+ servers.filter((a) => a.protocol < 2).map((a) => a.name).join(", ") +
1225
+ ". Their replies may not be delivered — upgrade them.");
1226
+ }
1227
+ }
1108
1228
  // replyTo is the room's agentId — the filter sub-topic this room's
1109
1229
  // results subscription listens on. (this._agentId may differ when a
1110
1230
  // caller attributes requests to a logical agent; delivery must use the
@@ -1113,7 +1233,12 @@ class Tools {
1113
1233
  replyTo: this._room.agentId,
1114
1234
  });
1115
1235
  this._room.publishTools(envelope);
1116
- return this._correlations.register(envelope.correlationId, options?.timeout);
1236
+ const serverCount = servers.length;
1237
+ return this._correlations.register(envelope.correlationId, options?.timeout, `Tool '${toolName}' invocation in room '${this._room.name}' ` +
1238
+ `(${serverCount} tool-server${serverCount === 1 ? "" : "s"} visible). ` +
1239
+ `Likely causes: no agent has this tool registered (pre-0.3.0 responders ` +
1240
+ `don't NACK), the responder is offline, or the room is not deliverable ` +
1241
+ `(watch the room 'error' events)`);
1117
1242
  }
1118
1243
  /** Cancel all pending correlations */
1119
1244
  dispose() {
@@ -1141,5 +1266,5 @@ function tag(prefix, value) {
1141
1266
  return `${prefix}:${value}`;
1142
1267
  }
1143
1268
 
1144
- export { AgentRoom, Approve, Blackboard, CorrelationManager, EventEmitter, Handoff, Inbox, NoLagAgents, Observe, TAG_FLAGS, TAG_PREFIX, Tools, createApprovalRequest, createApprovalResponse, createEventEnvelope, createResultEnvelope, createStateEnvelope, createTaskEnvelope, createToolRequest, createToolResponse, tag };
1269
+ export { AGENTS_PROTOCOL_VERSION, AgentRoom, Approve, Blackboard, CorrelationManager, EventEmitter, Handoff, Inbox, IncompatibleProtocolError, NoLagAgents, Observe, TAG_FLAGS, TAG_PREFIX, Tools, createApprovalRequest, createApprovalResponse, createEventEnvelope, createResultEnvelope, createStateEnvelope, createTaskEnvelope, createToolRequest, createToolResponse, tag };
1145
1270
  //# sourceMappingURL=index.mjs.map