agentlang 0.10.3 → 0.10.5

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 (119) hide show
  1. package/README.md +22 -9
  2. package/out/extension/main.cjs +250 -250
  3. package/out/extension/main.cjs.map +2 -2
  4. package/out/language/generated/ast.d.ts +7 -7
  5. package/out/language/generated/ast.d.ts.map +1 -1
  6. package/out/language/generated/grammar.js +2 -2
  7. package/out/language/main.cjs +506 -506
  8. package/out/language/main.cjs.map +3 -3
  9. package/out/language/parser.d.ts.map +1 -1
  10. package/out/language/parser.js +9 -2
  11. package/out/language/parser.js.map +1 -1
  12. package/out/language/syntax.d.ts +2 -2
  13. package/out/language/syntax.d.ts.map +1 -1
  14. package/out/runtime/api.d.ts.map +1 -1
  15. package/out/runtime/api.js +0 -14
  16. package/out/runtime/api.js.map +1 -1
  17. package/out/runtime/defs.d.ts +0 -1
  18. package/out/runtime/defs.d.ts.map +1 -1
  19. package/out/runtime/defs.js +1 -2
  20. package/out/runtime/defs.js.map +1 -1
  21. package/out/runtime/embeddings/chunker.d.ts +0 -18
  22. package/out/runtime/embeddings/chunker.d.ts.map +1 -1
  23. package/out/runtime/embeddings/chunker.js +15 -47
  24. package/out/runtime/embeddings/chunker.js.map +1 -1
  25. package/out/runtime/embeddings/openai.d.ts.map +1 -1
  26. package/out/runtime/embeddings/openai.js +11 -22
  27. package/out/runtime/embeddings/openai.js.map +1 -1
  28. package/out/runtime/embeddings/provider.d.ts +0 -1
  29. package/out/runtime/embeddings/provider.d.ts.map +1 -1
  30. package/out/runtime/embeddings/provider.js +1 -20
  31. package/out/runtime/embeddings/provider.js.map +1 -1
  32. package/out/runtime/exec-graph.js +5 -5
  33. package/out/runtime/exec-graph.js.map +1 -1
  34. package/out/runtime/interpreter.d.ts +4 -4
  35. package/out/runtime/interpreter.d.ts.map +1 -1
  36. package/out/runtime/interpreter.js +27 -16
  37. package/out/runtime/interpreter.js.map +1 -1
  38. package/out/runtime/loader.d.ts.map +1 -1
  39. package/out/runtime/loader.js +6 -2
  40. package/out/runtime/loader.js.map +1 -1
  41. package/out/runtime/logger.d.ts.map +1 -1
  42. package/out/runtime/logger.js +1 -8
  43. package/out/runtime/logger.js.map +1 -1
  44. package/out/runtime/module.d.ts +0 -6
  45. package/out/runtime/module.d.ts.map +1 -1
  46. package/out/runtime/module.js +1 -58
  47. package/out/runtime/module.js.map +1 -1
  48. package/out/runtime/modules/ai.d.ts +4 -4
  49. package/out/runtime/modules/ai.d.ts.map +1 -1
  50. package/out/runtime/modules/ai.js +70 -166
  51. package/out/runtime/modules/ai.js.map +1 -1
  52. package/out/runtime/modules/auth.d.ts.map +1 -1
  53. package/out/runtime/modules/auth.js +6 -4
  54. package/out/runtime/modules/auth.js.map +1 -1
  55. package/out/runtime/modules/core.d.ts.map +1 -1
  56. package/out/runtime/modules/core.js +3 -0
  57. package/out/runtime/modules/core.js.map +1 -1
  58. package/out/runtime/modules/messaging.d.ts +10 -0
  59. package/out/runtime/modules/messaging.d.ts.map +1 -0
  60. package/out/runtime/modules/messaging.js +210 -0
  61. package/out/runtime/modules/messaging.js.map +1 -0
  62. package/out/runtime/monitor.d.ts +2 -1
  63. package/out/runtime/monitor.d.ts.map +1 -1
  64. package/out/runtime/monitor.js +5 -1
  65. package/out/runtime/monitor.js.map +1 -1
  66. package/out/runtime/resolvers/sqldb/database.d.ts.map +1 -1
  67. package/out/runtime/resolvers/sqldb/database.js +126 -128
  68. package/out/runtime/resolvers/sqldb/database.js.map +1 -1
  69. package/out/runtime/resolvers/sqldb/impl.d.ts +0 -1
  70. package/out/runtime/resolvers/sqldb/impl.d.ts.map +1 -1
  71. package/out/runtime/resolvers/sqldb/impl.js +0 -3
  72. package/out/runtime/resolvers/sqldb/impl.js.map +1 -1
  73. package/out/runtime/services/documentFetcher.d.ts.map +1 -1
  74. package/out/runtime/services/documentFetcher.js +6 -21
  75. package/out/runtime/services/documentFetcher.js.map +1 -1
  76. package/out/runtime/state.d.ts +0 -14
  77. package/out/runtime/state.d.ts.map +1 -1
  78. package/out/runtime/state.js +0 -28
  79. package/out/runtime/state.js.map +1 -1
  80. package/package.json +19 -19
  81. package/src/language/agentlang.langium +2 -2
  82. package/src/language/generated/ast.ts +7 -7
  83. package/src/language/generated/grammar.ts +2 -2
  84. package/src/language/parser.ts +9 -2
  85. package/src/language/syntax.ts +2 -2
  86. package/src/runtime/api.ts +0 -15
  87. package/src/runtime/defs.ts +1 -2
  88. package/src/runtime/embeddings/chunker.ts +14 -52
  89. package/src/runtime/embeddings/openai.ts +9 -27
  90. package/src/runtime/embeddings/provider.ts +1 -22
  91. package/src/runtime/exec-graph.ts +4 -4
  92. package/src/runtime/interpreter.ts +32 -17
  93. package/src/runtime/loader.ts +10 -2
  94. package/src/runtime/logger.ts +1 -12
  95. package/src/runtime/module.ts +1 -64
  96. package/src/runtime/modules/ai.ts +81 -206
  97. package/src/runtime/modules/auth.ts +6 -4
  98. package/src/runtime/modules/core.ts +4 -0
  99. package/src/runtime/modules/messaging.ts +228 -0
  100. package/src/runtime/monitor.ts +10 -1
  101. package/src/runtime/resolvers/sqldb/database.ts +130 -142
  102. package/src/runtime/resolvers/sqldb/impl.ts +0 -4
  103. package/src/runtime/services/documentFetcher.ts +6 -21
  104. package/src/runtime/state.ts +0 -29
  105. package/out/runtime/document-retriever.d.ts +0 -24
  106. package/out/runtime/document-retriever.d.ts.map +0 -1
  107. package/out/runtime/document-retriever.js +0 -258
  108. package/out/runtime/document-retriever.js.map +0 -1
  109. package/out/runtime/resolvers/vector/lancedb-store.d.ts +0 -16
  110. package/out/runtime/resolvers/vector/lancedb-store.d.ts.map +0 -1
  111. package/out/runtime/resolvers/vector/lancedb-store.js +0 -159
  112. package/out/runtime/resolvers/vector/lancedb-store.js.map +0 -1
  113. package/out/runtime/resolvers/vector/types.d.ts +0 -32
  114. package/out/runtime/resolvers/vector/types.d.ts.map +0 -1
  115. package/out/runtime/resolvers/vector/types.js +0 -2
  116. package/out/runtime/resolvers/vector/types.js.map +0 -1
  117. package/src/runtime/document-retriever.ts +0 -311
  118. package/src/runtime/resolvers/vector/lancedb-store.ts +0 -187
  119. package/src/runtime/resolvers/vector/types.ts +0 -39
@@ -758,10 +758,12 @@ export async function userHasPermissions(userId, resourceFqName, perms, env) {
758
758
  UserRoleCache.set(userId, userRoles);
759
759
  }
760
760
  let tempRoles = userRoles;
761
- const escalatedRole = env.getEscalatedRole();
762
- if (escalatedRole) {
763
- tempRoles = userRoles.slice();
764
- tempRoles.push(escalatedRole);
761
+ const assumedRole = env.getAssumedRole();
762
+ if (assumedRole) {
763
+ tempRoles = [assumedRole];
764
+ if (!RolePermissionsCache.get(assumedRole)) {
765
+ await updatePermissionCacheForRole(assumedRole, env);
766
+ }
765
767
  }
766
768
  if (tempRoles &&
767
769
  tempRoles.find((role) => {
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/runtime/modules/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/runtime/modules/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,WAAW,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAY,YAAY,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACjG,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAE3E,OAAO,EAEL,WAAW,EACX,aAAa,EACb,aAAa,EACb,aAAa,GACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,EACrB,0BAA0B,EAC1B,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,SAAS,EACT,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,mBAAmB,GACpB,MAAM,gCAAgC,CAAC;AAExC,MAAM,CAAC,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAE7D,eAAe,UAAU,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+a1C,CAAC;AAEF,MAAM,SAAS,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;AAEzD,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,EAAU,EACV,KAAa,EACb,SAAiB,EACjB,QAAgB,EAChB,GAAgB,EAChB,SAAiB,QAAQ;IAEzB,OAAO,MAAM,SAAS,CACpB,YAAY,EACZ;QACE,EAAE,EAAE,EAAE;QACN,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE;QAC1B,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,QAAQ;QAClB,MAAM,EAAE,MAAM;KACf,EACD,GAAG,CACJ,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,EAAU,EAAE,GAAgB;IACzD,OAAO,MAAM,SAAS,CACpB,UAAU,EACV;QACE,EAAE,EAAE,EAAE;KACP,EACD,GAAG,CACJ,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,KAAa,EAAE,GAAgB;IACnE,OAAO,MAAM,SAAS,CACpB,iBAAiB,EACjB;QACE,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE;KAC3B,EACD,GAAG,CACJ,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,MAAc,EACd,SAAiB,EACjB,QAAgB,EAChB,GAAgB;IAEhB,OAAO,MAAM,SAAS,CACpB,YAAY,EACZ;QACE,EAAE,EAAE,MAAM;QACV,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,QAAQ;KACnB,EACD,GAAG,CACJ,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAc,EACd,MAAc,EACd,GAAgB;IAEhB,OAAO,MAAM,SAAS,CACpB,kBAAkB,EAClB;QACE,EAAE,EAAE,MAAM;QACV,MAAM,EAAE,MAAM;KACf,EACD,GAAG,CACJ,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAc,EAAE,GAAgB;IACnE,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACtC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC;IACpC,MAAM,CAAC,GAAG,KAAK,IAAI,EAAE;QACnB,IAAI,CAAC;YACH,mCAAmC;YACnC,MAAM,gBAAgB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;YAEhD,0BAA0B;YAC1B,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YACzC,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACnC,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,aAAa,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC;YAED,OAAO;gBACL,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,+BAA+B;aACzC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,MAAM,CAAC,KAAK,CAAC,6BAA6B,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACpE,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC,CAAC;IACF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,MAAM,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,OAAO,MAAM,CAAC,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAc,EAAE,GAAgB;IACjE,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACtC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC;IACpC,MAAM,CAAC,GAAG,KAAK,IAAI,EAAE;QACnB,IAAI,CAAC;YACH,iCAAiC;YACjC,MAAM,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;YAE9C,yBAAyB;YACzB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YACzC,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACnC,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,aAAa,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBAC/C,CAAC;YACH,CAAC;YAED,OAAO;gBACL,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,6BAA6B;aACvC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,MAAM,CAAC,KAAK,CAAC,2BAA2B,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAClE,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC,CAAC;IACF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,MAAM,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,OAAO,MAAM,CAAC,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,MAAc,EAAE,KAAa,EAAE,GAAgB;IAC9E,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACtC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC;IACpC,MAAM,CAAC,GAAG,KAAK,IAAI,EAAE;QACnB,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,CAAC;oBACH,MAAM,aAAa,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBAC/C,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAClB,iFAAiF;oBACjF,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;wBACrD,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,uDAAuD,CAAC,CAAC;oBACpF,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,KAAK,CAAC,yBAAyB,KAAK,kBAAkB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;wBAC5E,MAAM,GAAG,CAAC;oBACZ,CAAC;gBACH,CAAC;YACH,CAAC;YAED,OAAO;gBACL,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,2BAA2B;aACrC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,MAAM,CAAC,KAAK,CAAC,yBAAyB,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAChE,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC,CAAC;IACF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,MAAM,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,OAAO,MAAM,CAAC,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,EAAU,EAAE,GAAgB;IACpE,OAAO,MAAM,SAAS,CACpB,qBAAqB,EACrB;QACE,EAAE,EAAE,EAAE;QACN,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,EACD,GAAG,CACJ,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,KAAa,EACb,SAAiB,EACjB,QAAgB,EAChB,GAAgB,EAChB,SAAiB,QAAQ;IAEzB,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;IAC7D,IAAI,IAAI,EAAE,CAAC;QACT,kEAAkE;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,MAAW,EAAE,EAAE;YACvE,MAAM,CAAC,KAAK,CAAC,yBAAyB,MAAM,kCAAkC,MAAM,EAAE,CAAC,CAAC;QAC1F,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,MAAM,UAAU,CACrB,MAAM,CAAC,UAAU,EAAE,EACnB,KAAK,CAAC,WAAW,EAAE,EACnB,SAAS,EACT,QAAQ,EACR,GAAG,EACH,MAAM,CACP,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,MAAc,EAAE,SAAmB,EAAE,GAAgB;IACzF,MAAM,YAAY,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACtD,MAAM,gBAAgB,GAAG,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CACjC,GAAG,CAAC,CAAC,IAAc,EAAE,EAAE;QACvB,MAAM,QAAQ,GAAI,IAAiB,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC3D,OAAO,QAAQ,IAAI,QAAQ,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;IACxD,CAAC,EACA,MAAM,CAAC,OAAO,CAAC,CAAC;IAEnB,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,MAAM,CAAC,IAAI,CACT,QAAQ,MAAM,uBAAuB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAC9F,CAAC;QACF,OAAO;IACT,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAC1B,MAAM,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC5B,MAAM,gBAAgB,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IAC5C,CAAC;AACH,CAAC;AAED,MAAM,eAAe,GAAG,gBAAgB,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;AACzE,MAAM,WAAW,GAAG,gBAAgB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;AAEjE,KAAK,UAAU,eAAe,CAAC,MAAc,EAAE,QAAgB;IAC7D,MAAM,IAAI,GAAG,GAAG,QAAQ,IAAI,MAAM,EAAE,CAAC;IACrC,MAAM,GAAG,GAAG,SAAS,CAAC,gBAAgB,EAAE,CAAC;IACzC,MAAM,aAAa,CAAC,eAAe,EAAE,CAAC,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACvE,MAAM,MAAM,GAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;IAC3D,MAAM,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC;IACjC,MAAM,SAAS,CAAC,eAAe,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAc,EACd,SAAiB,EACjB,KAAa,EACb,WAAmB,EACnB,YAAoB,EACpB,GAAgB;IAEhB,MAAM,QAAQ,GAAG,MAAM,wBAAwB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAChE,MAAM,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACxC,MAAM,IAAI,GAAa,MAAM,eAAe,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1D,IAAI,IAAI,EAAE,CAAC;QACT,6DAA6D;QAC7D,MAAM,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC;QAC9E,iDAAiD;QACjD,OAAO,MAAM,eAAe,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5C,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACtC,MAAM,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC;IAC9E,2CAA2C;IAC3C,OAAO,MAAM,WAAW,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,EAAU,EACV,MAAc,EACd,KAAa,EACb,WAAmB,EACnB,YAAoB,EACpB,GAAgB;IAEhB,OAAO,MAAM,SAAS,CACpB,eAAe,EACf;QACE,EAAE,EAAE,EAAE;QACN,MAAM,EAAE,MAAM;QACd,SAAS,EAAE,KAAK;QAChB,WAAW,EAAE,WAAW;QACxB,YAAY,EAAE,YAAY;KAC3B,EACD,GAAG,CACJ,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,EAAU,EAAE,GAAgB;IAC5D,OAAO,MAAM,SAAS,CACpB,aAAa,EACb;QACE,EAAE,EAAE,EAAE;KACP,EACD,GAAG,CACJ,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,MAAc,EAAE,GAAgB;IACpE,OAAO,MAAM,SAAS,CACpB,iBAAiB,EACjB;QACE,MAAM,EAAE,MAAM;KACf,EACD,GAAG,CACJ,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,EAAU,EACV,KAAa,EACb,WAAmB,EACnB,YAAoB,EACpB,GAAgB;IAEhB,OAAO,MAAM,SAAS,CACpB,eAAe,EACf;QACE,EAAE,EAAE,EAAE;QACN,SAAS,EAAE,KAAK;QAChB,WAAW,EAAE,WAAW;QACxB,YAAY,EAAE,YAAY;KAC3B,EACD,GAAG,CACJ,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,EAAU,EAAE,GAAgB;IAC9D,OAAO,MAAM,SAAS,CACpB,eAAe,EACf;QACE,EAAE,EAAE,EAAE;KACP,EACD,GAAG,CACJ,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,IAAY,EAAE,GAAgB;IAC3D,OAAO,MAAM,SAAS,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAY,EAAE,GAAgB;IAC7D,MAAM,SAAS,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,MAAW,EAAE,EAAE;QACvE,MAAM,CAAC,KAAK,CAAC,0BAA0B,IAAI,OAAO,MAAM,EAAE,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,EAAU,EACV,QAAgB,EAChB,cAAsB,EACtB,IAAa,KAAK,EAClB,IAAa,KAAK,EAClB,IAAa,KAAK,EAClB,IAAa,KAAK,EAClB,GAAgB;IAEhB,MAAM,SAAS,CACb,kBAAkB,EAClB;QACE,EAAE,EAAE,EAAE;QACN,QAAQ,EAAE,QAAQ;QAClB,cAAc,EAAE,cAAc;QAC9B,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;KACL,EACD,GAAG,CACJ,CAAC,KAAK,CAAC,CAAC,MAAW,EAAE,EAAE;QACtB,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,MAAM,MAAM,EAAE,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAc,EACd,QAAgB,EAChB,GAAgB;IAEhB,IAAI,CAAC,GAAY,IAAI,CAAC;IACtB,MAAM,SAAS,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAC,KAAK,CACpF,CAAC,MAAW,EAAE,EAAE;QACd,MAAM,CAAC,KAAK,CAAC,yBAAyB,MAAM,YAAY,QAAQ,MAAM,MAAM,EAAE,CAAC,CAAC;QAChF,CAAC,GAAG,KAAK,CAAC;IACZ,CAAC,CACF,CAAC;IACF,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,KAAa,EACb,QAAgB,EAChB,GAAgB;IAEhB,IAAI,CAAC,GAAY,IAAI,CAAC;IACtB,MAAM,SAAS,CACb,yBAAyB,EACzB,EAAE,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAClD,GAAG,CACJ,CAAC,KAAK,CAAC,CAAC,MAAW,EAAE,EAAE;QACtB,MAAM,CAAC,KAAK,CAAC,yBAAyB,KAAK,YAAY,QAAQ,MAAM,MAAM,EAAE,CAAC,CAAC;QAC/E,CAAC,GAAG,KAAK,CAAC;IACZ,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,CAAC;AACX,CAAC;AAED,IAAI,mBAAyC,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAAc,EAAE,GAAgB;IAClE,MAAM,MAAM,GAAQ,MAAM,SAAS,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,CAAC;IAC9E,MAAM,IAAI,GAAyB,MAAM,CAAC,CAAC,CAAE,MAAM,CAAC,CAAC,CAAc,CAAC,CAAC,CAAC,SAAS,CAAC;IAChF,IAAI,IAAI,EAAE,CAAC;QACT,IAAI,KAAK,GAA2B,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACzE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,KAAK,GAAG,EAAE,CAAC;QACb,CAAC;QACD,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACtC,mBAAmB,GAAG,YAAY,CAChC,kBAAkB,EAClB,MAAM,EACN,qBAAqB,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CACzC,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAUD,MAAM,aAAa,GAAiC,IAAI,GAAG,EAAE,CAAC;AAC9D,MAAM,oBAAoB,GAAkC,IAAI,GAAG,EAAE,CAAC;AAEtE,KAAK,UAAU,mBAAmB,CAAC,IAAY,EAAE,GAAgB;IAC/D,OAAO,MAAM,SAAS,CAAC,qBAAqB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;AACrE,CAAC;AAED,KAAK,UAAU,4BAA4B,CAAC,IAAY,EAAE,GAAgB;IACxE,MAAM,MAAM,GAAQ,MAAM,mBAAmB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACzD,IAAI,MAAM,YAAY,KAAK,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjD,MAAM,QAAQ,GAAa,MAAM,CAAC,CAAC,CAAa,CAAC;QACjD,MAAM,SAAS,GAA2B,QAAQ,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;QACzF,IAAI,SAAS,EAAE,CAAC;YACd,oBAAoB,CAAC,GAAG,CACtB,IAAI,EACJ,SAAS,CAAC,GAAG,CAAC,CAAC,IAAc,EAAE,EAAE;gBAC/B,OAAO,IAAI,CAAC,IAAI,EAAkB,CAAC;YACrC,CAAC,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAc,EACd,cAAsB,EACtB,KAA8B,EAC9B,GAAgB;IAEhB,IAAI,MAAM,IAAI,WAAW,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;QAC9C,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,SAAS,GAAgC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvE,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,KAAK,GAAQ,MAAM,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACpD,SAAS,GAAG,EAAE,CAAC;QACf,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;gBACtC,MAAM,CAAC,GAAa,KAAK,CAAC,CAAC,CAAa,CAAC;gBACzC,MAAM,CAAC,GAAW,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAC3C,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjC,MAAM,4BAA4B,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;gBAC7C,CAAC;YACH,CAAC;QACH,CAAC;QACD,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,SAAS,GAAG,SAAS,CAAC;IAC1B,MAAM,WAAW,GAAG,GAAG,CAAC,cAAc,EAAE,CAAC;IACzC,IAAI,WAAW,EAAE,CAAC;QAChB,SAAS,GAAG,CAAC,WAAW,CAAC,CAAC;QAC1B,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YAC3C,MAAM,4BAA4B,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IACD,IACE,SAAS;QACT,SAAS,CAAC,IAAI,CAAC,CAAC,IAAY,EAAE,EAAE;YAC9B,OAAO,IAAI,KAAK,OAAO,CAAC;QAC1B,CAAC,CAAC,EACF,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG;QACnB,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,MAAM,CAAC;QACpC,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC;QAClC,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,MAAM,CAAC;QACpC,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,MAAM,CAAC;KACrC,CAAC;IACF,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;QACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;YAC1C,MAAM,SAAS,GAAiC,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YACvF,IAAI,SAAS,EAAE,CAAC;gBACd,IACE,SAAS,CAAC,IAAI,CAAC,CAAC,CAAiB,EAAE,EAAE;oBACnC,OAAO,CACL,CAAC,CAAC,cAAc,IAAI,cAAc;wBAClC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;wBAC3B,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;wBAC3B,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;wBAC3B,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAC5B,CAAC;gBACJ,CAAC,CAAC;oBAEF,OAAO,IAAI,CAAC;YAChB,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;AAC7D,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;AACzD,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;AAC7D,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;AAQ7D,SAAS,aAAa,CAAC,GAA4B;IACjD,+BAA+B;IAC/B,mCAAmC;IACnC,KAAK,UAAU,CAAC,CAAC,MAAc,EAAE,cAAsB,EAAE,GAAgB;QACvE,IAAI,MAAM,IAAI,WAAW,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,MAAM,kBAAkB,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;AAC5D,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;AACxD,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;AAC5D,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;AAE5D,IAAI,WAAsC,CAAC;AAE3C,IAAI,SAAS,EAAE,CAAC;IACd,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAClC,CAAC;AAED,SAAS,aAAa;IACpB,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,WAAW,CAAC;IACrB,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,SAAiB,EACjB,QAAgB,EAChB,QAAgB,EAChB,QAAgB,EAChB,QAAgB,EAChB,GAAgB;IAEhB,IAAI,MAAW,CAAC;IAChB,IAAI,CAAC;QACH,MAAM,aAAa,EAAE,CAAC,MAAM,CAC1B,SAAS,EACT,QAAQ,EACR,QAAQ,CAAC,WAAW,EAAE,EACtB,QAAQ,EACR,QAAQ,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EACxD,GAAG,EACH,CAAC,QAAkB,EAAE,EAAE;YACrB,MAAM,GAAG,QAAQ,CAAC;QACpB,CAAC,CACF,CAAC;QACF,OAAO,MAAkB,CAAC;IAC5B,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,MAAM,CAAC,KAAK,CAAC,qBAAqB,QAAQ,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAC9D,MAAM,GAAG,CAAC,CAAC,0DAA0D;IACvE,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,QAAgB,EAChB,gBAAwB,EACxB,GAAgB;IAEhB,IAAI,CAAC;QACH,MAAM,aAAa,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,gBAAgB,EAAE,GAAG,CAAC,CAAC;QACnF,OAAO;YACL,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,6BAA6B;SACvC,CAAC;IACJ,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,MAAM,CAAC,KAAK,CAAC,6BAA6B,QAAQ,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACtE,MAAM,GAAG,CAAC,CAAC,0DAA0D;IACvE,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,QAAgB,EAChB,GAAgB;IAEhB,IAAI,CAAC;QACH,MAAM,aAAa,EAAE,CAAC,sBAAsB,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;QAC1E,OAAO;YACL,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,uCAAuC;SACjD,CAAC;IACJ,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,MAAM,CAAC,KAAK,CAAC,uCAAuC,QAAQ,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAChF,MAAM,GAAG,CAAC,CAAC,0DAA0D;IACvE,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,QAAgB,EAAE,GAAgB;IACzE,IAAI,CAAC;QACH,MAAM,aAAa,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;QAClE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,0BAA0B,EAAE,CAAC;IAC/D,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,MAAM,CAAC,KAAK,CAAC,8BAA8B,QAAQ,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACvE,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,QAAgB,EAChB,gBAAwB,EACxB,WAAmB,EACnB,GAAgB;IAEhB,IAAI,CAAC;QACH,MAAM,aAAa,EAAE,CAAC,qBAAqB,CACzC,QAAQ,CAAC,WAAW,EAAE,EACtB,gBAAgB,EAChB,WAAW,EACX,GAAG,CACJ,CAAC;QACF,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC;IAC9D,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,MAAM,CAAC,KAAK,CAAC,sCAAsC,QAAQ,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/E,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,QAAgB,EAChB,QAAgB,EAChB,GAAgB;IAEhB,IAAI,MAAM,GAAoB,EAAE,CAAC;IACjC,IAAI,CAAC;QACH,MAAM,aAAa,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAc,EAAE,EAAE;YACpF,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAClC,mBAAmB,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YACnC,mEAAmE;YACnE,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC;gBACjD,yCAAyC;gBACzC,MAAM,GAAG;oBACP,QAAQ,EAAE,CAAC,CAAC,OAAO;oBACnB,YAAY,EAAE,CAAC,CAAC,WAAW;oBAC3B,aAAa,EAAE,CAAC,CAAC,YAAY;oBAC7B,UAAU,EAAE,QAAQ;oBACpB,UAAU,EAAE,IAAI;oBAChB,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,SAAS,EAAE,CAAC,CAAC,SAAS;iBACvB,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,sDAAsD;gBACtD,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;YACxC,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,MAAM,CAAC,KAAK,CAAC,oBAAoB,QAAQ,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7D,MAAM,GAAG,CAAC,CAAC,0DAA0D;IACvE,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAY,EAAE,GAAgB;IAC/D,IAAI,MAAM,GAAoB,EAAE,CAAC;IACjC,IAAI,CAAC;QACH,MAAM,aAAa,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAc,EAAE,EAAE;YACjE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAClC,mBAAmB,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YACnC,2DAA2D;YAC3D,MAAM,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;YAChD,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC;gBACjD,MAAM,GAAG;oBACP,QAAQ,EAAE,CAAC,CAAC,OAAO;oBACnB,YAAY,EAAE,CAAC,CAAC,WAAW;oBAC3B,aAAa,EAAE,CAAC,CAAC,YAAY;oBAC7B,UAAU,EAAE,QAAQ;oBACpB,UAAU,EAAE,IAAI;oBAChB,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,SAAS,EAAE,CAAC,CAAC,SAAS;iBACvB,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;YACxC,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,MAAM,CAAC,KAAK,CAAC,uBAAuB,IAAI,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAC5D,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,MAAc,EAAE,IAAc,EAAE,GAAgB;IAC3E,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACrC,MAAM,aAAa,EAAE,CAAC,MAAM,CAC1B;QACE,SAAS,EAAE,MAAM;QACjB,MAAM,EAAE,MAAM;QACd,SAAS,EAAE,GAAG;QACd,OAAO,EAAE,GAAG;QACZ,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;QACvC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;KAC1C,EACD,GAAG,CACJ,CAAC;IACF,MAAM,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,OAAO;QACL,MAAM,EAAE,IAAI;QACZ,OAAO,EAAE,yBAAyB;KACnC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,GAAgB;IAC/C,MAAM,IAAI,GAAG,GAAG,CAAC,aAAa,EAAE,CAAC;IACjC,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC9C,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,MAAM,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO;QACL,MAAM,EAAE,IAAI;QACZ,OAAO,EAAE,yBAAyB;KACnC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,WAAmB,EACnB,QAAgB,EAChB,GAAgB;IAEhB,MAAM,IAAI,GAAG,GAAG,CAAC,aAAa,EAAE,CAAC;IACjC,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC9C,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACrC,MAAM,QAAQ,GAAG;YACf,SAAS,EAAE,MAAM;YACjB,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,GAAG;YACd,OAAO,EAAE,GAAG;YACZ,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;YACvC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;SAC1C,CAAC;QACF,IAAI,MAAM,aAAa,EAAE,CAAC,cAAc,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC;YAC/E,OAAO,MAAM,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,iBAAiB,CAAC,8BAA8B,IAAI,EAAE,CAAC,CAAC;IACpE,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,KAAa,EAAE,GAAiB;IAClE,IAAI,CAAC,aAAa,EAAE;QAAE,OAAO,aAAa,CAAC;IAE3C,wEAAwE;IACxE,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,MAAM,cAAc,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC1C,CAAC;SAAM,CAAC;QACN,OAAO,MAAM,kBAAkB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC/B,yEAAyE;IACzE,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;AACjF,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,KAAa,EAAE,GAAiB;IAC5D,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACtC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC;IACpC,MAAM,CAAC,GAAG,KAAK,IAAI,EAAE;QACnB,IAAI,CAAC;YACH,+BAA+B;YAC/B,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvB,MAAM,IAAI,iBAAiB,CAAC,6BAA6B,CAAC,CAAC;YAC7D,CAAC;YAED,6CAA6C;YAC7C,MAAM,aAAa,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAE9C,4CAA4C;YAC5C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAE3C,qEAAqE;YACrE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;YAC1D,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;YAE3D,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,iBAAiB,CAAC,4CAA4C,CAAC,CAAC;YAC5E,CAAC;YAED,IAAI,SAAS,GAAG,IAAI,CAAC;YACrB,IAAI,KAAK,EAAE,CAAC;gBACV,SAAS,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;YAC9D,CAAC;YAED,IAAI,CAAC,SAAS,IAAI,MAAM,EAAE,CAAC;gBACzB,SAAS,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC1C,CAAC;YAED,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CACT,0DAA0D,KAAK,aAAa,MAAM,EAAE,CACrF,CAAC;gBACF,MAAM,IAAI,iBAAiB,CAAC,kCAAkC,CAAC,CAAC;YAClE,CAAC;YAED,0CAA0C;YAC1C,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAE3C,mCAAmC;YACnC,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC9C,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;gBAC5B,MAAM,IAAI,iBAAiB,CAAC,uCAAuC,UAAU,EAAE,CAAC,CAAC;YACnF,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YACrD,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,iBAAiB,CAAC,6BAA6B,KAAK,aAAa,MAAM,EAAE,CAAC,CAAC;YACvF,CAAC;YACD,oEAAoE;YACpE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;QAC/D,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,IAAI,GAAG,YAAY,iBAAiB,EAAE,CAAC;gBACrC,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE;gBAC7C,SAAS,EAAE,GAAG,CAAC,IAAI;gBACnB,YAAY,EAAE,GAAG,CAAC,OAAO;aAC1B,CAAC,CAAC;YACH,MAAM,IAAI,iBAAiB,CAAC,+BAA+B,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CAAC;IACF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,MAAM,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,OAAO,MAAM,CAAC,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,KAAa,EAAE,GAAiB;IAChE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/B,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACxB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACxB,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACtC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC;IACpC,MAAM,CAAC,GAAG,KAAK,IAAI,EAAE;QACnB,IAAI,CAAC;YACH,mCAAmC;YACnC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YACzC,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACzC,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;oBAC5B,MAAM,IAAI,iBAAiB,CAAC,uCAAuC,UAAU,EAAE,CAAC,CAAC;gBACnF,CAAC;YACH,CAAC;YAED,MAAM,IAAI,GAAa,MAAM,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YACtD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,MAAM,aAAa,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,CAAC;gBACjE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;YAC/C,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,qCAAqC,MAAM,GAAG,CAAC,CAAC;gBAC5D,MAAM,IAAI,iBAAiB,CAAC,+BAA+B,MAAM,GAAG,CAAC,CAAC;YACxE,CAAC;QACH,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,IAAI,GAAG,YAAY,iBAAiB,EAAE,CAAC;gBACrC,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,kCAAkC;YAClC,MAAM,CAAC,KAAK,CAAC,yCAAyC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;gBAClE,SAAS,EAAE,GAAG,CAAC,IAAI;gBACnB,YAAY,EAAE,GAAG,CAAC,OAAO;gBACzB,SAAS,EAAE,MAAM;aAClB,CAAC,CAAC;YACH,MAAM,IAAI,iBAAiB,CAAC,6BAA6B,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC,CAAC;IACF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,MAAM,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,OAAO,MAAM,CAAC,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,MAAc,EACd,WAAoB,KAAK,EACzB,GAAgB;IAEhB,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACtC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC;IACpC,MAAM,CAAC,GAAG,KAAK,IAAI,EAAE;QACnB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,aAAa,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAE5D,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,KAAK,GAAG,MAAM,SAAS,CAC3B,eAAe,EACf;oBACE,IAAI,EAAE,sBAAsB,GAAG,MAAM,CAAC,QAAQ,EAAE;iBACjD,EACD,GAAG,CACJ,CAAC;gBAEF,IAAI,IAAI,GAAkB,IAAI,CAAC;gBAC/B,IAAI,WAAW,GAAiB,IAAI,CAAC;gBACrC,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9B,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAC5C,CAAC;gBACD,IAAI,IAAI,EAAE,CAAC;oBACT,WAAW,GAAG,MAAM,SAAS,CAC3B,uBAAuB,EACvB;wBACE,IAAI,EAAE,IAAI;qBACX,EACD,GAAG,CACJ,CAAC;gBACJ,CAAC;gBACD,uCACK,QAAQ,KACX,IAAI,EAAE,IAAI,EACV,WAAW,EAAE,WAAW,IACxB;YACJ,CAAC;;gBAAM,OAAO,QAAQ,CAAC;QACzB,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,MAAM,CAAC,KAAK,CAAC,+BAA+B,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACtE,MAAM,GAAG,CAAC,CAAC,kCAAkC;QAC/C,CAAC;IACH,CAAC,CAAC;IACF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,MAAM,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,OAAO,MAAM,CAAC,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAAa,EACb,WAAoB,KAAK,EACzB,GAAgB;IAEhB,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACtC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC;IACpC,MAAM,CAAC,GAAG,KAAK,IAAI,EAAE;QACnB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,aAAa,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;YAChF,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,KAAK,GAAG,MAAM,SAAS,CAC3B,eAAe,EACf;oBACE,IAAI,EAAE,sBAAsB,GAAG,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE;iBACtD,EACD,GAAG,CACJ,CAAC;gBACF,IAAI,IAAI,GAAkB,IAAI,CAAC;gBAC/B,IAAI,WAAW,GAAiB,IAAI,CAAC;gBACrC,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9B,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAC5C,CAAC;gBACD,IAAI,IAAI,EAAE,CAAC;oBACT,WAAW,GAAG,MAAM,SAAS,CAC3B,uBAAuB,EACvB;wBACE,IAAI,EAAE,IAAI;qBACX,EACD,GAAG,CACJ,CAAC;gBACJ,CAAC;gBACD,uCACK,QAAQ,KACX,IAAI,EAAE,IAAI,EACV,WAAW,EAAE,WAAW,IACxB;YACJ,CAAC;;gBAAM,OAAO,QAAQ,CAAC;QACzB,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,MAAM,CAAC,KAAK,CAAC,qCAAqC,KAAK,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAC3E,MAAM,GAAG,CAAC,CAAC,kCAAkC;QAC/C,CAAC;IACH,CAAC,CAAC;IACF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,MAAM,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,OAAO,MAAM,CAAC,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,YAAoB,EAAE,GAAgB;IAC3E,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACtC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC;IACpC,MAAM,CAAC,GAAG,KAAK,IAAI,EAAE;QACnB,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,aAAa,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;YAE1E,OAAO;gBACL,QAAQ,EAAE,WAAW,CAAC,OAAO;gBAC7B,YAAY,EAAE,WAAW,CAAC,WAAW;gBACrC,aAAa,EAAE,WAAW,CAAC,YAAY;gBACvC,UAAU,EAAE,QAAQ;gBACpB,UAAU,EAAE,IAAI;gBAChB,MAAM,EAAE,WAAW,CAAC,MAAM;gBAC1B,SAAS,EAAE,WAAW,CAAC,SAAS;aACjC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,MAAM,CAAC,KAAK,CAAC,yBAAyB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACrD,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC,CAAC;IACF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,MAAM,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,OAAO,MAAM,CAAC,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,KAAa,EACb,SAAiB,EACjB,QAAgB,EAChB,QAAsC,EACtC,IAAwB,EACxB,GAAgB;IAEhB,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACtC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC;IACpC,MAAM,CAAC,GAAG,KAAK,IAAI,EAAE;QACnB,IAAI,CAAC;YACH,IAAI,cAAmB,CAAC;YACxB,MAAM,aAAa,EAAE,CAAC,UAAU,CAC9B,KAAK,EACL,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,GAAG,EACH,CAAC,IAAS,EAAE,EAAE;gBACZ,cAAc,GAAG,IAAI,CAAC;YACxB,CAAC,CACF,CAAC;YAEF,OAAO;gBACL,KAAK,EAAE,cAAc,CAAC,KAAK;gBAC3B,SAAS,EAAE,cAAc,CAAC,SAAS;gBACnC,QAAQ,EAAE,cAAc,CAAC,QAAQ;gBACjC,YAAY,EAAE,cAAc,CAAC,YAAY;gBACzC,OAAO,EAAE,mCAAmC;aAC7C,CAAC;QACJ,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,MAAM,CAAC,KAAK,CAAC,2BAA2B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACvD,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC,CAAC;IACF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,MAAM,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,OAAO,MAAM,CAAC,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,KAAa,EAAE,GAAgB;IACxE,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACtC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC;IACpC,MAAM,CAAC,GAAG,KAAK,IAAI,EAAE;QACnB,IAAI,CAAC;YACH,MAAM,aAAa,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YACnD,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,gCAAgC;aAC1C,CAAC;QACJ,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,MAAM,CAAC,KAAK,CAAC,6BAA6B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACzD,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC,CAAC;IACF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,MAAM,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,OAAO,MAAM,CAAC,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,KAAa,EACb,YAAoB,EACpB,WAAmB,EACnB,GAAgB;IAEhB,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACtC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC;IACpC,MAAM,CAAC,GAAG,KAAK,IAAI,EAAE;QACnB,IAAI,CAAC;YACH,MAAM,aAAa,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC;YAE9E,4DAA4D;YAC5D,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;YAC7D,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACjC,MAAM,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;YAChD,CAAC;YAED,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,kCAAkC;aAC5C,CAAC;QACJ,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,MAAM,CAAC,KAAK,CAAC,6BAA6B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACzD,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC,CAAC;IACF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,MAAM,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,OAAO,MAAM,CAAC,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,UAAkB,EAAE,SAAiB;IAC/D,IAAI,aAAa,EAAE,EAAE,CAAC;QACpB,MAAM,CAAC,GACL,UAAU,IAAI,kBAAkB;YAChC,CAAC,SAAS,IAAI,OAAO;gBACnB,SAAS,IAAI,QAAQ;gBACrB,SAAS,IAAI,eAAe;gBAC5B,SAAS,IAAI,wBAAwB;gBACrC,SAAS,IAAI,gBAAgB;gBAC7B,SAAS,IAAI,uBAAuB;gBACpC,SAAS,IAAI,cAAc;gBAC3B,SAAS,IAAI,kBAAkB;gBAC/B,SAAS,IAAI,kBAAkB;gBAC/B,SAAS,IAAI,UAAU,CAAC,CAAC;QAC7B,OAAO,CAAC,CAAC,CAAC;IACZ,CAAC;SAAM,CAAC;QACN,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,wDAAwD;AACxD,OAAO,EAAE,qBAAqB,EAAE,CAAC;AAEjC,yDAAyD;AACzD,MAAM,UAAU,uBAAuB,CAAC,KAAY;IAKlD,MAAM,UAAU,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,SAAS,GAAG,sBAAsB,CAAC;IAEvC,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;QACvC,SAAS,GAAG,gBAAgB,CAAC;IAC/B,CAAC;SAAM,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;QAC9C,SAAS,GAAG,cAAc,CAAC;IAC7B,CAAC;SAAM,IAAI,KAAK,YAAY,qBAAqB,EAAE,CAAC;QAClD,SAAS,GAAG,oBAAoB,CAAC;IACnC,CAAC;SAAM,IAAI,KAAK,YAAY,0BAA0B,EAAE,CAAC;QACvD,SAAS,GAAG,yBAAyB,CAAC;IACxC,CAAC;SAAM,IAAI,KAAK,YAAY,oBAAoB,EAAE,CAAC;QACjD,SAAS,GAAG,mBAAmB,CAAC;IAClC,CAAC;SAAM,IAAI,KAAK,YAAY,qBAAqB,EAAE,CAAC;QAClD,SAAS,GAAG,mBAAmB,CAAC;IAClC,CAAC;SAAM,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;QAC7C,SAAS,GAAG,cAAc,CAAC;IAC7B,CAAC;SAAM,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;QAC9C,SAAS,GAAG,eAAe,CAAC;IAC9B,CAAC;SAAM,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;QAC5C,SAAS,GAAG,aAAa,CAAC;IAC5B,CAAC;IAED,4CAA4C;IAC5C,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE;QAC5C,SAAS,EAAE,SAAS;QACpB,UAAU,EAAE,UAAU;QACtB,aAAa,EAAE,KAAK,CAAC,IAAI;KAC1B,CAAC,CAAC;IAEH,OAAO;QACL,KAAK,EAAE,SAAS;QAChB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,UAAU,EAAE,UAAU;KACvB,CAAC;AACJ,CAAC;AAED,6DAA6D;AAC7D,MAAM,UAAU,WAAW,CAAC,KAAU;IACpC,OAAO,CACL,KAAK,YAAY,iBAAiB;QAClC,KAAK,YAAY,iBAAiB;QAClC,KAAK,YAAY,qBAAqB;QACtC,KAAK,YAAY,0BAA0B;QAC3C,KAAK,YAAY,oBAAoB;QACrC,KAAK,YAAY,qBAAqB;QACtC,KAAK,YAAY,gBAAgB;QACjC,KAAK,YAAY,iBAAiB;QAClC,KAAK,YAAY,eAAe,CACjC,CAAC;AACJ,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,uBAAuB,CAAC,KAAY;IAKlD,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO;SACnC,OAAO,CAAC,YAAY,EAAE,YAAY,CAAC;SACnC,OAAO,CAAC,SAAS,EAAE,YAAY,CAAC;SAChC,OAAO,CAAC,UAAU,EAAE,YAAY,CAAC;SACjC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC;SAC9B,OAAO,CAAC,sDAAsD,EAAE,kBAAkB,CAAC;SACnF,OAAO,CAAC,uBAAuB,EAAE,kBAAkB,CAAC;SACpD,OAAO,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;IAE/C,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,gBAAgB,EAAE,gBAAgB;KACnC,CAAC;AACJ,CAAC;AAED,6DAA6D;AAC7D,MAAM,UAAU,gBAAgB,CAAC,KAAY;IAC3C,wCAAwC;IACxC,OAAO,CACL,KAAK,YAAY,oBAAoB;QACrC,CAAC,KAAK,CAAC,OAAO;YACZ,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAC;gBACjD,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;gBACvC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;YACnC,CAAC,CAAC,KAAK,CAAC,CACX,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,MAAc,EAAE,GAAgB;IACzD,MAAM,CAAC,GAAG,mBAAmB,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACnE,MAAM,GAAG,GAAG,SAAS,CAAC,gBAAgB,EAAE,CAAC,KAAK,EAAE,CAAC;IACjD,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC;IACpB,MAAM,KAAK,GAAU,MAAM,iBAAiB,CAAC,WAAW,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;IAClE,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,SAAkB,EAClB,GAAiB;IAEjB,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,eAAe,CAAC;IACzB,CAAC;IACD,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACnC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,CAAC,mBAAmB,SAAS,6BAA6B,CAAC,CAAC;QACvE,OAAO,eAAe,CAAC;IACzB,CAAC;IACD,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IAC5C,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjD,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,MAAM,CAAC,EAAE,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,OAAO,eAAe,CAAC;QACzB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,eAAe,CAAC;IACzB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,MAAc,EAAE,GAAgB;IAC7D,MAAM,CAAC,GAAG,mBAAmB,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACnE,MAAM,GAAG,GAAG,SAAS,CAAC,gBAAgB,EAAE,CAAC,KAAK,EAAE,CAAC;IACjD,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC;IACpB,MAAM,KAAK,GAAU,MAAM,iBAAiB,CAAC,eAAe,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;IACtE,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAC;AAEhD,KAAK,UAAU,eAAe,CAAC,MAAc,EAAE,GAAgB;IAC7D,IAAI,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACpC,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,GAAG,CAAC;IACb,CAAC;IAED,MAAM,EAAE,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9C,IAAI,EAAE,EAAE,CAAC;QACP,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC;QAClB,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC/B,OAAO,GAAG,CAAC;QACb,CAAC;IACH,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,oCAAoC,MAAM,0BAA0B,CAAC,CAAC;IAClF,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC3C,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,mBAAmB,CAAC,eAAe,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/runtime/modules/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/runtime/modules/core.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { default as ai, normalizeGeneratedCode } from './ai.js';
2
2
  import { default as auth } from './auth.js';
3
3
  import { default as files } from './files.js';
4
4
  import { default as mcp } from './mcp.js';
5
+ import messaging, { initMessagingModule } from './messaging.js';
5
6
  import { DefaultModuleName, DefaultModules, escapeSpecialChars, isString, restoreSpecialChars, makeCoreModuleName, nameToPath, } from '../util.js';
6
7
  import { fetchModule, isInstanceOfType, isModule, makeInstance, newInstanceAttributes, removeModule, } from '../module.js';
7
8
  import { Environment, evaluate, evaluateStatements, parseAndEvaluateStatement, restartFlow, } from '../interpreter.js';
@@ -155,6 +156,7 @@ export function registerCoreModules() {
155
156
  { def: ai, name: makeCoreModuleName('ai') },
156
157
  { def: files, name: makeCoreModuleName('files') },
157
158
  { def: mcp, name: mcpn },
159
+ { def: messaging, name: makeCoreModuleName('messaging') },
158
160
  ];
159
161
  coreModuleInfo.forEach(({ def, name }) => {
160
162
  if (!isNodeEnv && name == mcpn)
@@ -519,6 +521,7 @@ async function internPersistentModules() {
519
521
  }
520
522
  }
521
523
  export function initCoreModuleManager() {
524
+ initMessagingModule();
522
525
  const ModuleResolverName = 'agentlang/moduleResolver';
523
526
  const ModuleResolver = new GenericResolver(ModuleResolverName, {
524
527
  create: createModule,
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/runtime/modules/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/runtime/modules/core.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { Instance } from '../module.js';
2
+ import { Resolver } from '../resolvers/interface.js';
3
+ export declare const CoreMessagingModuleName: string;
4
+ export declare function pushNotification(_: Resolver, inst: Instance): Promise<Instance>;
5
+ export declare function pushAction(_: Resolver, inst: Instance): Promise<Instance>;
6
+ export declare function queryInbox(_: Resolver, inst: Instance, _queryAll: boolean): Promise<any>;
7
+ declare const _default: string;
8
+ export default _default;
9
+ export declare function initMessagingModule(): void;
10
+ //# sourceMappingURL=messaging.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messaging.d.ts","sourceRoot":"","sources":["../../../src/runtime/modules/messaging.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAmB,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAItE,eAAO,MAAM,uBAAuB,QAAkC,CAAC;AAUvE,wBAAsB,gBAAgB,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,qBAgCjE;AAED,wBAAsB,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,qBA+C3D;AAED,wBAAsB,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,gBA0B/E;;AAED,wBAwDE;AAEF,wBAAgB,mBAAmB,SA0ClC"}
@@ -0,0 +1,210 @@
1
+ import { makeCoreModuleName } from '../util.js';
2
+ import { GenericResolver } from '../resolvers/interface.js';
3
+ import { registerResolver, setResolver } from '../resolvers/registry.js';
4
+ import { logger } from '../logger.js';
5
+ export const CoreMessagingModuleName = makeCoreModuleName('messaging');
6
+ function getAgentManagerUrl() {
7
+ return (globalThis.__agentmanager_url ||
8
+ process.env.AGENTMANAGER_URL ||
9
+ 'http://localhost:3001');
10
+ }
11
+ export async function pushNotification(_, inst) {
12
+ const inbox = inst.lookup('inbox');
13
+ const subject = inst.lookup('subject');
14
+ const body = inst.lookup('body');
15
+ const fromKind = inst.lookup('fromKind') || 'employee';
16
+ const fromId = inst.lookup('fromId');
17
+ const url = `${getAgentManagerUrl()}/api/inboxes/${encodeURIComponent(inbox)}/messages`;
18
+ const payload = {
19
+ from: { kind: fromKind, id: fromId },
20
+ subject,
21
+ body,
22
+ kind: 'notification',
23
+ };
24
+ try {
25
+ const response = await fetch(url, {
26
+ method: 'POST',
27
+ headers: { 'Content-Type': 'application/json' },
28
+ body: JSON.stringify(payload),
29
+ });
30
+ if (!response.ok) {
31
+ const text = await response.text();
32
+ logger.error(`Failed to push notification to inbox ${inbox}: HTTP ${response.status} — ${text}`);
33
+ }
34
+ return inst;
35
+ }
36
+ catch (err) {
37
+ logger.error(`Failed to push notification to inbox ${inbox}: ${err.message}`);
38
+ return inst;
39
+ }
40
+ }
41
+ export async function pushAction(_, inst) {
42
+ const inbox = inst.lookup('inbox');
43
+ const subject = inst.lookup('subject');
44
+ const body = inst.lookup('body');
45
+ const fromKind = inst.lookup('fromKind') || 'employee';
46
+ const fromId = inst.lookup('fromId');
47
+ const responses = inst.lookup('responses') || [];
48
+ const continuationEvents = inst.lookup('continuationEvents') || [];
49
+ const inputPrompt = inst.lookup('inputPrompt');
50
+ // Zip responses and continuationEvents into a continuations map
51
+ const continuations = {};
52
+ for (let i = 0; i < responses.length; i++) {
53
+ const eventName = i < continuationEvents.length ? continuationEvents[i] : '';
54
+ if (eventName) {
55
+ continuations[responses[i]] = { event: eventName };
56
+ }
57
+ }
58
+ const url = `${getAgentManagerUrl()}/api/inboxes/${encodeURIComponent(inbox)}/messages`;
59
+ const payload = {
60
+ from: { kind: fromKind, id: fromId },
61
+ subject,
62
+ body,
63
+ kind: 'action',
64
+ action: Object.assign({ responses,
65
+ continuations }, (inputPrompt ? { inputPrompt } : {})),
66
+ };
67
+ try {
68
+ const response = await fetch(url, {
69
+ method: 'POST',
70
+ headers: { 'Content-Type': 'application/json' },
71
+ body: JSON.stringify(payload),
72
+ });
73
+ if (!response.ok) {
74
+ const text = await response.text();
75
+ logger.error(`Failed to push action to inbox ${inbox}: HTTP ${response.status} — ${text}`);
76
+ }
77
+ return inst;
78
+ }
79
+ catch (err) {
80
+ logger.error(`Failed to push action to inbox ${inbox}: ${err.message}`);
81
+ return inst;
82
+ }
83
+ }
84
+ export async function queryInbox(_, inst, _queryAll) {
85
+ const inbox = inst.lookup('inbox');
86
+ const status = inst.lookup('status');
87
+ const kind = inst.lookup('kind');
88
+ const from = inst.lookup('from');
89
+ const params = new URLSearchParams();
90
+ if (status)
91
+ params.set('status', status);
92
+ if (kind)
93
+ params.set('kind', kind);
94
+ if (from)
95
+ params.set('from', from);
96
+ const qs = params.toString();
97
+ const url = `${getAgentManagerUrl()}/api/inboxes/${encodeURIComponent(inbox)}/messages${qs ? '?' + qs : ''}`;
98
+ try {
99
+ const response = await fetch(url);
100
+ if (!response.ok) {
101
+ const text = await response.text();
102
+ logger.error(`Failed to query inbox ${inbox}: HTTP ${response.status} — ${text}`);
103
+ return [];
104
+ }
105
+ return await response.json();
106
+ }
107
+ catch (err) {
108
+ logger.error(`Failed to query inbox ${inbox}: ${err.message}`);
109
+ return [];
110
+ }
111
+ }
112
+ export default `module ${CoreMessagingModuleName}
113
+
114
+ record Notification {
115
+ inbox String,
116
+ subject String,
117
+ body String,
118
+ fromKind String @default("employee"),
119
+ fromId String
120
+ }
121
+
122
+ record Action {
123
+ inbox String,
124
+ subject String,
125
+ body String,
126
+ fromKind String @default("employee"),
127
+ fromId String,
128
+ responses String[],
129
+ continuationEvents String[] @optional,
130
+ inputPrompt String @optional
131
+ }
132
+
133
+ record InboxQuery {
134
+ inbox String,
135
+ status String @optional,
136
+ kind String @optional,
137
+ from String @optional
138
+ }
139
+
140
+ @public event SendNotification extends Notification {}
141
+ workflow SendNotification {
142
+ {Notification {inbox SendNotification.inbox,
143
+ subject SendNotification.subject,
144
+ body SendNotification.body,
145
+ fromKind SendNotification.fromKind,
146
+ fromId SendNotification.fromId}}
147
+ }
148
+
149
+ @public event SendAction extends Action {}
150
+ workflow SendAction {
151
+ {Action {inbox SendAction.inbox,
152
+ subject SendAction.subject,
153
+ body SendAction.body,
154
+ fromKind SendAction.fromKind,
155
+ fromId SendAction.fromId,
156
+ responses SendAction.responses,
157
+ continuationEvents SendAction.continuationEvents,
158
+ inputPrompt SendAction.inputPrompt}}
159
+ }
160
+
161
+ @public event QueryInbox extends InboxQuery {}
162
+ workflow QueryInbox {
163
+ {InboxQuery {inbox? QueryInbox.inbox,
164
+ status? QueryInbox.status,
165
+ kind? QueryInbox.kind,
166
+ from? QueryInbox.from}}
167
+ }
168
+ `;
169
+ export function initMessagingModule() {
170
+ const resolverName = 'agentlang.messaging/messagingResolver';
171
+ const resolver = new GenericResolver(resolverName, {
172
+ create: pushNotification,
173
+ upsert: undefined,
174
+ update: undefined,
175
+ query: queryInbox,
176
+ delete: undefined,
177
+ startTransaction: undefined,
178
+ commitTransaction: undefined,
179
+ rollbackTransaction: undefined,
180
+ });
181
+ registerResolver(resolverName, () => resolver);
182
+ setResolver('agentlang.messaging/Notification', resolverName);
183
+ const actionResolverName = 'agentlang.messaging/actionResolver';
184
+ const actionResolver = new GenericResolver(actionResolverName, {
185
+ create: pushAction,
186
+ upsert: undefined,
187
+ update: undefined,
188
+ query: undefined,
189
+ delete: undefined,
190
+ startTransaction: undefined,
191
+ commitTransaction: undefined,
192
+ rollbackTransaction: undefined,
193
+ });
194
+ registerResolver(actionResolverName, () => actionResolver);
195
+ setResolver('agentlang.messaging/Action', actionResolverName);
196
+ const queryResolverName = 'agentlang.messaging/queryResolver';
197
+ const queryResolver = new GenericResolver(queryResolverName, {
198
+ create: undefined,
199
+ upsert: undefined,
200
+ update: undefined,
201
+ query: queryInbox,
202
+ delete: undefined,
203
+ startTransaction: undefined,
204
+ commitTransaction: undefined,
205
+ rollbackTransaction: undefined,
206
+ });
207
+ registerResolver(queryResolverName, () => queryResolver);
208
+ setResolver('agentlang.messaging/InboxQuery', queryResolverName);
209
+ }
210
+ //# sourceMappingURL=messaging.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messaging.js","sourceRoot":"","sources":["../../../src/runtime/modules/messaging.ts"],"names":[],"mappings":"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"}
@@ -40,6 +40,7 @@ export declare class Monitor {
40
40
  private id;
41
41
  private eventInstance;
42
42
  private user;
43
+ private role;
43
44
  private entries;
44
45
  private parent;
45
46
  private lastEntry;
@@ -48,7 +49,7 @@ export declare class Monitor {
48
49
  private timestamp;
49
50
  private flowResult;
50
51
  private static MAX_REGISTRY_SIZE;
51
- constructor(eventInstance?: Instance | undefined, user?: string | undefined);
52
+ constructor(eventInstance?: Instance | undefined, user?: string | undefined, role?: string | undefined);
52
53
  getId(): string;
53
54
  getEventInstance(): Instance | undefined;
54
55
  getUser(): string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"monitor.d.ts","sourceRoot":"","sources":["../../src/runtime/monitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"monitor.d.ts","sourceRoot":"","sources":["../../src/runtime/monitor.ts"],"names":[],"mappings":"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"}
@@ -151,7 +151,7 @@ export function resetMonitoringCallback() {
151
151
  disableInternalMonitoring();
152
152
  }
153
153
  export class Monitor {
154
- constructor(eventInstance, user) {
154
+ constructor(eventInstance, user, role) {
155
155
  this.entries = new Array();
156
156
  this.parent = undefined;
157
157
  this.lastEntry = undefined;
@@ -161,6 +161,7 @@ export class Monitor {
161
161
  this.eventInstance = eventInstance;
162
162
  this.id = eventInstance ? eventInstance.getId() : crypto.randomUUID();
163
163
  this.user = user;
164
+ this.role = role;
164
165
  this.timestamp = Date.now();
165
166
  while (monitorRegistry.length >= Monitor.MAX_REGISTRY_SIZE) {
166
167
  monitorRegistry.shift();
@@ -350,6 +351,9 @@ export class Monitor {
350
351
  if (this.user) {
351
352
  r.user = this.user;
352
353
  }
354
+ if (this.role) {
355
+ r.role = this.role;
356
+ }
353
357
  r.timestamp = this.timestamp;
354
358
  if (this.flowResult !== undefined) {
355
359
  let fr = this.flowResult;