@decaf-ts/integrations 0.3.7 → 0.3.9

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 (417) hide show
  1. package/dist/integrations.cjs +3 -3
  2. package/dist/integrations.js +3 -3
  3. package/lib/cjs/graph/engine/constants.cjs +58 -0
  4. package/lib/cjs/graph/engine/decorators.cjs +4 -0
  5. package/lib/cjs/graph/engine/errors/GraphCycleError.cjs +20 -0
  6. package/lib/cjs/graph/engine/errors/GraphExecutionError.cjs +27 -0
  7. package/lib/cjs/graph/engine/errors/GraphInputError.cjs +20 -0
  8. package/lib/cjs/graph/engine/errors/GraphLoopLimitError.cjs +20 -0
  9. package/lib/cjs/graph/engine/errors/GraphPinningError.cjs +20 -0
  10. package/lib/cjs/graph/engine/errors/GraphPortError.cjs +20 -0
  11. package/lib/cjs/graph/engine/errors/GraphStoreError.cjs +20 -0
  12. package/lib/cjs/graph/engine/errors/GraphTopologyError.cjs +20 -0
  13. package/lib/cjs/graph/{errors → engine/errors}/index.cjs +2 -2
  14. package/lib/cjs/graph/engine/events/GraphExecutionEvent.cjs +4 -0
  15. package/lib/cjs/graph/engine/events/GraphExecutionEventEmitter.cjs +40 -0
  16. package/lib/cjs/graph/engine/events/GraphExecutionEventFactory.cjs +37 -0
  17. package/lib/cjs/graph/engine/events/GraphExecutionObserver.cjs +4 -0
  18. package/lib/cjs/graph/{events → engine/events}/index.cjs +2 -2
  19. package/lib/cjs/graph/engine/execution/CodeSandboxEvaluator.cjs +4 -0
  20. package/lib/cjs/graph/engine/execution/GraphExecutionContext.cjs +79 -0
  21. package/lib/cjs/graph/engine/execution/GraphExecutionEngine.cjs +408 -0
  22. package/lib/cjs/graph/engine/execution/GraphExecutionFrame.cjs +32 -0
  23. package/lib/cjs/graph/engine/execution/GraphExecutionResult.cjs +30 -0
  24. package/lib/cjs/graph/engine/execution/GraphNodeExecutor.cjs +4 -0
  25. package/lib/cjs/graph/engine/execution/SwitchGraphNodeExecutor.cjs +103 -0
  26. package/lib/cjs/graph/{execution → engine/execution}/index.cjs +2 -2
  27. package/lib/cjs/graph/engine/index.cjs +84 -0
  28. package/lib/cjs/graph/engine/loops/ConditionExpressionEvaluator.cjs +87 -0
  29. package/lib/cjs/graph/engine/loops/ForeachGraphNodeExecutor.cjs +85 -0
  30. package/lib/cjs/graph/engine/loops/GraphConditionEvaluator.cjs +85 -0
  31. package/lib/cjs/graph/engine/loops/GraphLoopExecutionContext.cjs +16 -0
  32. package/lib/cjs/graph/engine/loops/UntilGraphNodeExecutor.cjs +77 -0
  33. package/lib/cjs/graph/engine/loops/WhileGraphNodeExecutor.cjs +78 -0
  34. package/lib/cjs/graph/{loops → engine/loops}/index.cjs +2 -2
  35. package/lib/cjs/graph/engine/pinning/GraphPinningDependencyResolver.cjs +28 -0
  36. package/lib/cjs/graph/engine/pinning/GraphPinningMetadata.cjs +20 -0
  37. package/lib/cjs/graph/engine/pinning/GraphPinningPolicy.cjs +34 -0
  38. package/lib/cjs/graph/engine/pinning/GraphPinningService.cjs +191 -0
  39. package/lib/cjs/graph/{pinning → engine/pinning}/index.cjs +2 -2
  40. package/lib/cjs/graph/engine/planning/GraphExecutionPlan.cjs +4 -0
  41. package/lib/cjs/graph/engine/planning/GraphExecutionPlanEdge.cjs +4 -0
  42. package/lib/cjs/graph/engine/planning/GraphExecutionPlanLayer.cjs +4 -0
  43. package/lib/cjs/graph/engine/planning/GraphExecutionPlanNode.cjs +4 -0
  44. package/lib/cjs/graph/engine/planning/GraphExecutionPlanner.cjs +197 -0
  45. package/lib/cjs/graph/engine/planning/GraphRelationResolver.cjs +172 -0
  46. package/lib/cjs/graph/engine/planning/GraphTopology.cjs +57 -0
  47. package/lib/cjs/graph/{planning → engine/planning}/index.cjs +2 -2
  48. package/lib/cjs/graph/engine/registry/GraphNodeExecutorRegistry.cjs +44 -0
  49. package/lib/cjs/graph/engine/registry/GraphNodeExecutorResolver.cjs +27 -0
  50. package/lib/cjs/graph/{registry → engine/registry}/index.cjs +2 -2
  51. package/lib/cjs/graph/engine/snapshots/GraphExecutionSnapshotMapper.cjs +53 -0
  52. package/lib/cjs/graph/{snapshots → engine/snapshots}/index.cjs +2 -2
  53. package/lib/cjs/graph/engine/store/GraphCachedValue.cjs +4 -0
  54. package/lib/cjs/graph/engine/store/GraphValueKey.cjs +4 -0
  55. package/lib/cjs/graph/engine/store/GraphValueStore.cjs +76 -0
  56. package/lib/cjs/graph/engine/store/GraphValueStoreAdapter.cjs +4 -0
  57. package/lib/cjs/graph/engine/store/InMemoryGraphValueStoreAdapter.cjs +69 -0
  58. package/lib/cjs/graph/{store → engine/store}/index.cjs +2 -2
  59. package/lib/cjs/graph/engine/types.cjs +4 -0
  60. package/lib/cjs/graph/engine/validation/GraphDefinitionValidator.cjs +33 -0
  61. package/lib/cjs/graph/engine/validation/GraphPortSchemaResolver.cjs +58 -0
  62. package/lib/cjs/graph/engine/validation/GraphValueValidator.cjs +52 -0
  63. package/lib/cjs/graph/{validation → engine/validation}/index.cjs +2 -2
  64. package/lib/cjs/graph/index.cjs +10 -60
  65. package/lib/cjs/graph/shared/constants.cjs +44 -0
  66. package/lib/cjs/graph/shared/index.cjs +38 -0
  67. package/lib/cjs/graph/{nodes → shared/nodes}/agent.cjs +2 -2
  68. package/lib/cjs/graph/shared/nodes/base.cjs +35 -0
  69. package/lib/cjs/graph/shared/nodes/category-styles.cjs +38 -0
  70. package/lib/cjs/graph/shared/nodes/flow-control.cjs +464 -0
  71. package/lib/cjs/graph/{nodes → shared/nodes}/index.cjs +2 -2
  72. package/lib/cjs/graph/shared/nodes/triggers.cjs +250 -0
  73. package/lib/cjs/graph/shared/types.cjs +4 -0
  74. package/lib/cjs/index.cjs +3 -3
  75. package/lib/cjs/nest/index.cjs +2 -3
  76. package/lib/esm/graph/engine/constants.js +62 -0
  77. package/lib/esm/graph/engine/decorators.js +2 -0
  78. package/lib/esm/graph/engine/errors/GraphCycleError.js +15 -0
  79. package/lib/esm/graph/engine/errors/GraphExecutionError.js +22 -0
  80. package/lib/esm/graph/engine/errors/GraphInputError.js +15 -0
  81. package/lib/esm/graph/engine/errors/GraphLoopLimitError.js +15 -0
  82. package/lib/esm/graph/engine/errors/GraphPinningError.js +15 -0
  83. package/lib/esm/graph/engine/errors/GraphPortError.js +15 -0
  84. package/lib/esm/graph/engine/errors/GraphStoreError.js +15 -0
  85. package/lib/esm/graph/engine/errors/GraphTopologyError.js +15 -0
  86. package/lib/esm/graph/engine/errors/index.js +14 -0
  87. package/lib/esm/graph/engine/events/GraphExecutionEvent.js +2 -0
  88. package/lib/esm/graph/engine/events/GraphExecutionEventEmitter.js +35 -0
  89. package/lib/esm/graph/engine/events/GraphExecutionEventFactory.js +32 -0
  90. package/lib/esm/graph/engine/events/GraphExecutionObserver.js +2 -0
  91. package/lib/esm/graph/engine/events/index.js +10 -0
  92. package/lib/esm/graph/engine/execution/CodeSandboxEvaluator.js +18 -0
  93. package/lib/esm/graph/engine/execution/GraphExecutionContext.js +74 -0
  94. package/lib/esm/graph/engine/execution/GraphExecutionEngine.js +403 -0
  95. package/lib/esm/graph/engine/execution/GraphExecutionFrame.js +27 -0
  96. package/lib/esm/graph/engine/execution/GraphExecutionResult.js +26 -0
  97. package/lib/esm/graph/engine/execution/GraphNodeExecutor.js +2 -0
  98. package/lib/esm/graph/engine/execution/SwitchGraphNodeExecutor.js +98 -0
  99. package/lib/esm/graph/engine/execution/index.js +13 -0
  100. package/lib/esm/graph/engine/index.js +67 -0
  101. package/lib/esm/graph/engine/loops/ConditionExpressionEvaluator.js +82 -0
  102. package/lib/esm/graph/engine/loops/ForeachGraphNodeExecutor.js +80 -0
  103. package/lib/esm/graph/engine/loops/GraphConditionEvaluator.js +80 -0
  104. package/lib/esm/graph/engine/loops/GraphLoopExecutionContext.js +11 -0
  105. package/lib/esm/graph/engine/loops/UntilGraphNodeExecutor.js +72 -0
  106. package/lib/esm/graph/engine/loops/WhileGraphNodeExecutor.js +73 -0
  107. package/lib/esm/graph/engine/loops/index.js +12 -0
  108. package/lib/esm/graph/engine/pinning/GraphPinningDependencyResolver.js +23 -0
  109. package/lib/esm/graph/engine/pinning/GraphPinningMetadata.js +15 -0
  110. package/lib/esm/graph/engine/pinning/GraphPinningPolicy.js +29 -0
  111. package/lib/esm/graph/engine/pinning/GraphPinningService.js +186 -0
  112. package/lib/esm/graph/engine/pinning/index.js +10 -0
  113. package/lib/esm/graph/engine/planning/GraphExecutionPlan.js +2 -0
  114. package/lib/esm/graph/engine/planning/GraphExecutionPlanEdge.js +7 -0
  115. package/lib/esm/graph/engine/planning/GraphExecutionPlanLayer.js +2 -0
  116. package/lib/esm/graph/engine/planning/GraphExecutionPlanNode.js +2 -0
  117. package/lib/esm/graph/engine/planning/GraphExecutionPlanner.js +192 -0
  118. package/lib/esm/graph/engine/planning/GraphRelationResolver.js +167 -0
  119. package/lib/esm/graph/engine/planning/GraphTopology.js +52 -0
  120. package/lib/esm/graph/engine/planning/index.js +13 -0
  121. package/lib/esm/graph/engine/registry/GraphNodeExecutorRegistry.js +39 -0
  122. package/lib/esm/graph/engine/registry/GraphNodeExecutorResolver.js +22 -0
  123. package/lib/esm/graph/engine/registry/index.js +8 -0
  124. package/lib/esm/graph/engine/snapshots/GraphExecutionSnapshotMapper.js +48 -0
  125. package/lib/esm/graph/engine/snapshots/index.js +7 -0
  126. package/lib/esm/graph/engine/store/GraphCachedValue.js +2 -0
  127. package/lib/esm/graph/engine/store/GraphValueKey.js +7 -0
  128. package/lib/esm/graph/engine/store/GraphValueStore.js +71 -0
  129. package/lib/esm/graph/engine/store/GraphValueStoreAdapter.js +2 -0
  130. package/lib/esm/graph/engine/store/InMemoryGraphValueStoreAdapter.js +64 -0
  131. package/lib/esm/graph/engine/store/index.js +11 -0
  132. package/lib/esm/graph/engine/types.js +2 -0
  133. package/lib/esm/graph/engine/validation/GraphDefinitionValidator.js +28 -0
  134. package/lib/esm/graph/engine/validation/GraphPortSchemaResolver.js +53 -0
  135. package/lib/esm/graph/engine/validation/GraphValueValidator.js +47 -0
  136. package/lib/esm/graph/engine/validation/index.js +9 -0
  137. package/lib/esm/graph/index.js +9 -59
  138. package/lib/esm/graph/shared/constants.js +56 -0
  139. package/lib/esm/graph/shared/index.js +19 -0
  140. package/lib/esm/graph/shared/nodes/agent.js +101 -0
  141. package/lib/esm/graph/shared/nodes/base.js +30 -0
  142. package/lib/esm/graph/shared/nodes/category-styles.js +34 -0
  143. package/lib/esm/graph/shared/nodes/flow-control.js +455 -0
  144. package/lib/esm/graph/shared/nodes/index.js +18 -0
  145. package/lib/esm/graph/shared/nodes/triggers.js +241 -0
  146. package/lib/esm/graph/shared/types.js +2 -0
  147. package/lib/esm/index.js +3 -3
  148. package/lib/esm/nest/index.js +1 -2
  149. package/lib/types/graph/engine/constants.d.cts +59 -0
  150. package/lib/types/graph/engine/constants.d.mts +59 -0
  151. package/lib/types/graph/{execution → engine/execution}/GraphExecutionResult.d.cts +1 -1
  152. package/lib/types/graph/{execution → engine/execution}/GraphExecutionResult.d.mts +1 -1
  153. package/lib/types/graph/engine/index.d.cts +61 -0
  154. package/lib/types/graph/engine/index.d.mts +61 -0
  155. package/lib/types/graph/{loops → engine/loops}/ConditionExpressionEvaluator.d.cts +1 -1
  156. package/lib/types/graph/{loops → engine/loops}/ConditionExpressionEvaluator.d.mts +1 -1
  157. package/lib/types/graph/{loops → engine/loops}/GraphConditionEvaluator.d.cts +2 -1
  158. package/lib/types/graph/{loops → engine/loops}/GraphConditionEvaluator.d.mts +2 -1
  159. package/lib/types/graph/{types.d.cts → engine/types.d.cts} +8 -116
  160. package/lib/types/graph/{types.d.mts → engine/types.d.mts} +8 -116
  161. package/lib/types/graph/index.d.cts +8 -53
  162. package/lib/types/graph/index.d.mts +8 -53
  163. package/lib/types/graph/shared/constants.d.cts +53 -0
  164. package/lib/types/graph/shared/constants.d.mts +53 -0
  165. package/lib/types/graph/shared/index.d.cts +18 -0
  166. package/lib/types/graph/shared/index.d.mts +18 -0
  167. package/lib/types/graph/shared/types.d.cts +121 -0
  168. package/lib/types/graph/shared/types.d.mts +121 -0
  169. package/lib/types/index.d.cts +2 -2
  170. package/lib/types/index.d.mts +2 -2
  171. package/lib/types/nest/index.d.cts +0 -1
  172. package/lib/types/nest/index.d.mts +0 -1
  173. package/package.json +25 -3
  174. package/lib/cjs/graph/constants.cjs +0 -94
  175. package/lib/cjs/graph/decorators.cjs +0 -4
  176. package/lib/cjs/graph/errors/GraphCycleError.cjs +0 -20
  177. package/lib/cjs/graph/errors/GraphExecutionError.cjs +0 -27
  178. package/lib/cjs/graph/errors/GraphInputError.cjs +0 -20
  179. package/lib/cjs/graph/errors/GraphLoopLimitError.cjs +0 -20
  180. package/lib/cjs/graph/errors/GraphPinningError.cjs +0 -20
  181. package/lib/cjs/graph/errors/GraphPortError.cjs +0 -20
  182. package/lib/cjs/graph/errors/GraphStoreError.cjs +0 -20
  183. package/lib/cjs/graph/errors/GraphTopologyError.cjs +0 -20
  184. package/lib/cjs/graph/events/GraphExecutionEvent.cjs +0 -4
  185. package/lib/cjs/graph/events/GraphExecutionEventEmitter.cjs +0 -40
  186. package/lib/cjs/graph/events/GraphExecutionEventFactory.cjs +0 -37
  187. package/lib/cjs/graph/events/GraphExecutionObserver.cjs +0 -4
  188. package/lib/cjs/graph/execution/CodeSandboxEvaluator.cjs +0 -4
  189. package/lib/cjs/graph/execution/GraphExecutionContext.cjs +0 -79
  190. package/lib/cjs/graph/execution/GraphExecutionEngine.cjs +0 -407
  191. package/lib/cjs/graph/execution/GraphExecutionFrame.cjs +0 -32
  192. package/lib/cjs/graph/execution/GraphExecutionResult.cjs +0 -30
  193. package/lib/cjs/graph/execution/GraphNodeExecutor.cjs +0 -4
  194. package/lib/cjs/graph/execution/SwitchGraphNodeExecutor.cjs +0 -103
  195. package/lib/cjs/graph/loops/ConditionExpressionEvaluator.cjs +0 -87
  196. package/lib/cjs/graph/loops/ForeachGraphNodeExecutor.cjs +0 -84
  197. package/lib/cjs/graph/loops/GraphConditionEvaluator.cjs +0 -85
  198. package/lib/cjs/graph/loops/GraphLoopExecutionContext.cjs +0 -16
  199. package/lib/cjs/graph/loops/UntilGraphNodeExecutor.cjs +0 -76
  200. package/lib/cjs/graph/loops/WhileGraphNodeExecutor.cjs +0 -77
  201. package/lib/cjs/graph/nodes/base.cjs +0 -35
  202. package/lib/cjs/graph/nodes/category-styles.cjs +0 -38
  203. package/lib/cjs/graph/nodes/flow-control.cjs +0 -464
  204. package/lib/cjs/graph/nodes/triggers.cjs +0 -250
  205. package/lib/cjs/graph/pinning/GraphPinningDependencyResolver.cjs +0 -28
  206. package/lib/cjs/graph/pinning/GraphPinningMetadata.cjs +0 -20
  207. package/lib/cjs/graph/pinning/GraphPinningPolicy.cjs +0 -34
  208. package/lib/cjs/graph/pinning/GraphPinningService.cjs +0 -191
  209. package/lib/cjs/graph/planning/GraphExecutionPlan.cjs +0 -4
  210. package/lib/cjs/graph/planning/GraphExecutionPlanEdge.cjs +0 -4
  211. package/lib/cjs/graph/planning/GraphExecutionPlanLayer.cjs +0 -4
  212. package/lib/cjs/graph/planning/GraphExecutionPlanNode.cjs +0 -4
  213. package/lib/cjs/graph/planning/GraphExecutionPlanner.cjs +0 -197
  214. package/lib/cjs/graph/planning/GraphRelationResolver.cjs +0 -172
  215. package/lib/cjs/graph/planning/GraphTopology.cjs +0 -57
  216. package/lib/cjs/graph/registry/GraphNodeExecutorRegistry.cjs +0 -44
  217. package/lib/cjs/graph/registry/GraphNodeExecutorResolver.cjs +0 -27
  218. package/lib/cjs/graph/snapshots/GraphExecutionSnapshotMapper.cjs +0 -53
  219. package/lib/cjs/graph/store/GraphCachedValue.cjs +0 -4
  220. package/lib/cjs/graph/store/GraphValueKey.cjs +0 -4
  221. package/lib/cjs/graph/store/GraphValueStore.cjs +0 -76
  222. package/lib/cjs/graph/store/GraphValueStoreAdapter.cjs +0 -4
  223. package/lib/cjs/graph/store/InMemoryGraphValueStoreAdapter.cjs +0 -69
  224. package/lib/cjs/graph/types.cjs +0 -4
  225. package/lib/cjs/graph/validation/GraphDefinitionValidator.cjs +0 -33
  226. package/lib/cjs/graph/validation/GraphPortSchemaResolver.cjs +0 -58
  227. package/lib/cjs/graph/validation/GraphValueValidator.cjs +0 -52
  228. package/lib/esm/graph/constants.js +0 -106
  229. package/lib/esm/graph/decorators.js +0 -2
  230. package/lib/esm/graph/errors/GraphCycleError.js +0 -15
  231. package/lib/esm/graph/errors/GraphExecutionError.js +0 -22
  232. package/lib/esm/graph/errors/GraphInputError.js +0 -15
  233. package/lib/esm/graph/errors/GraphLoopLimitError.js +0 -15
  234. package/lib/esm/graph/errors/GraphPinningError.js +0 -15
  235. package/lib/esm/graph/errors/GraphPortError.js +0 -15
  236. package/lib/esm/graph/errors/GraphStoreError.js +0 -15
  237. package/lib/esm/graph/errors/GraphTopologyError.js +0 -15
  238. package/lib/esm/graph/errors/index.js +0 -14
  239. package/lib/esm/graph/events/GraphExecutionEvent.js +0 -2
  240. package/lib/esm/graph/events/GraphExecutionEventEmitter.js +0 -35
  241. package/lib/esm/graph/events/GraphExecutionEventFactory.js +0 -32
  242. package/lib/esm/graph/events/GraphExecutionObserver.js +0 -2
  243. package/lib/esm/graph/events/index.js +0 -10
  244. package/lib/esm/graph/execution/CodeSandboxEvaluator.js +0 -18
  245. package/lib/esm/graph/execution/GraphExecutionContext.js +0 -74
  246. package/lib/esm/graph/execution/GraphExecutionEngine.js +0 -402
  247. package/lib/esm/graph/execution/GraphExecutionFrame.js +0 -27
  248. package/lib/esm/graph/execution/GraphExecutionResult.js +0 -26
  249. package/lib/esm/graph/execution/GraphNodeExecutor.js +0 -2
  250. package/lib/esm/graph/execution/SwitchGraphNodeExecutor.js +0 -98
  251. package/lib/esm/graph/execution/index.js +0 -13
  252. package/lib/esm/graph/loops/ConditionExpressionEvaluator.js +0 -82
  253. package/lib/esm/graph/loops/ForeachGraphNodeExecutor.js +0 -79
  254. package/lib/esm/graph/loops/GraphConditionEvaluator.js +0 -80
  255. package/lib/esm/graph/loops/GraphLoopExecutionContext.js +0 -11
  256. package/lib/esm/graph/loops/UntilGraphNodeExecutor.js +0 -71
  257. package/lib/esm/graph/loops/WhileGraphNodeExecutor.js +0 -72
  258. package/lib/esm/graph/loops/index.js +0 -12
  259. package/lib/esm/graph/nodes/agent.js +0 -101
  260. package/lib/esm/graph/nodes/base.js +0 -30
  261. package/lib/esm/graph/nodes/category-styles.js +0 -34
  262. package/lib/esm/graph/nodes/flow-control.js +0 -455
  263. package/lib/esm/graph/nodes/index.js +0 -18
  264. package/lib/esm/graph/nodes/triggers.js +0 -241
  265. package/lib/esm/graph/pinning/GraphPinningDependencyResolver.js +0 -23
  266. package/lib/esm/graph/pinning/GraphPinningMetadata.js +0 -15
  267. package/lib/esm/graph/pinning/GraphPinningPolicy.js +0 -29
  268. package/lib/esm/graph/pinning/GraphPinningService.js +0 -186
  269. package/lib/esm/graph/pinning/index.js +0 -10
  270. package/lib/esm/graph/planning/GraphExecutionPlan.js +0 -2
  271. package/lib/esm/graph/planning/GraphExecutionPlanEdge.js +0 -7
  272. package/lib/esm/graph/planning/GraphExecutionPlanLayer.js +0 -2
  273. package/lib/esm/graph/planning/GraphExecutionPlanNode.js +0 -2
  274. package/lib/esm/graph/planning/GraphExecutionPlanner.js +0 -192
  275. package/lib/esm/graph/planning/GraphRelationResolver.js +0 -167
  276. package/lib/esm/graph/planning/GraphTopology.js +0 -52
  277. package/lib/esm/graph/planning/index.js +0 -13
  278. package/lib/esm/graph/registry/GraphNodeExecutorRegistry.js +0 -39
  279. package/lib/esm/graph/registry/GraphNodeExecutorResolver.js +0 -22
  280. package/lib/esm/graph/registry/index.js +0 -8
  281. package/lib/esm/graph/snapshots/GraphExecutionSnapshotMapper.js +0 -48
  282. package/lib/esm/graph/snapshots/index.js +0 -7
  283. package/lib/esm/graph/store/GraphCachedValue.js +0 -2
  284. package/lib/esm/graph/store/GraphValueKey.js +0 -7
  285. package/lib/esm/graph/store/GraphValueStore.js +0 -71
  286. package/lib/esm/graph/store/GraphValueStoreAdapter.js +0 -2
  287. package/lib/esm/graph/store/InMemoryGraphValueStoreAdapter.js +0 -64
  288. package/lib/esm/graph/store/index.js +0 -11
  289. package/lib/esm/graph/types.js +0 -2
  290. package/lib/esm/graph/validation/GraphDefinitionValidator.js +0 -28
  291. package/lib/esm/graph/validation/GraphPortSchemaResolver.js +0 -53
  292. package/lib/esm/graph/validation/GraphValueValidator.js +0 -47
  293. package/lib/esm/graph/validation/index.js +0 -9
  294. package/lib/types/graph/constants.d.cts +0 -101
  295. package/lib/types/graph/constants.d.mts +0 -101
  296. /package/lib/types/graph/{decorators.d.cts → engine/decorators.d.cts} +0 -0
  297. /package/lib/types/graph/{decorators.d.mts → engine/decorators.d.mts} +0 -0
  298. /package/lib/types/graph/{errors → engine/errors}/GraphCycleError.d.cts +0 -0
  299. /package/lib/types/graph/{errors → engine/errors}/GraphCycleError.d.mts +0 -0
  300. /package/lib/types/graph/{errors → engine/errors}/GraphExecutionError.d.cts +0 -0
  301. /package/lib/types/graph/{errors → engine/errors}/GraphExecutionError.d.mts +0 -0
  302. /package/lib/types/graph/{errors → engine/errors}/GraphInputError.d.cts +0 -0
  303. /package/lib/types/graph/{errors → engine/errors}/GraphInputError.d.mts +0 -0
  304. /package/lib/types/graph/{errors → engine/errors}/GraphLoopLimitError.d.cts +0 -0
  305. /package/lib/types/graph/{errors → engine/errors}/GraphLoopLimitError.d.mts +0 -0
  306. /package/lib/types/graph/{errors → engine/errors}/GraphPinningError.d.cts +0 -0
  307. /package/lib/types/graph/{errors → engine/errors}/GraphPinningError.d.mts +0 -0
  308. /package/lib/types/graph/{errors → engine/errors}/GraphPortError.d.cts +0 -0
  309. /package/lib/types/graph/{errors → engine/errors}/GraphPortError.d.mts +0 -0
  310. /package/lib/types/graph/{errors → engine/errors}/GraphStoreError.d.cts +0 -0
  311. /package/lib/types/graph/{errors → engine/errors}/GraphStoreError.d.mts +0 -0
  312. /package/lib/types/graph/{errors → engine/errors}/GraphTopologyError.d.cts +0 -0
  313. /package/lib/types/graph/{errors → engine/errors}/GraphTopologyError.d.mts +0 -0
  314. /package/lib/types/graph/{errors → engine/errors}/index.d.cts +0 -0
  315. /package/lib/types/graph/{errors → engine/errors}/index.d.mts +0 -0
  316. /package/lib/types/graph/{events → engine/events}/GraphExecutionEvent.d.cts +0 -0
  317. /package/lib/types/graph/{events → engine/events}/GraphExecutionEvent.d.mts +0 -0
  318. /package/lib/types/graph/{events → engine/events}/GraphExecutionEventEmitter.d.cts +0 -0
  319. /package/lib/types/graph/{events → engine/events}/GraphExecutionEventEmitter.d.mts +0 -0
  320. /package/lib/types/graph/{events → engine/events}/GraphExecutionEventFactory.d.cts +0 -0
  321. /package/lib/types/graph/{events → engine/events}/GraphExecutionEventFactory.d.mts +0 -0
  322. /package/lib/types/graph/{events → engine/events}/GraphExecutionObserver.d.cts +0 -0
  323. /package/lib/types/graph/{events → engine/events}/GraphExecutionObserver.d.mts +0 -0
  324. /package/lib/types/graph/{events → engine/events}/index.d.cts +0 -0
  325. /package/lib/types/graph/{events → engine/events}/index.d.mts +0 -0
  326. /package/lib/types/graph/{execution → engine/execution}/CodeSandboxEvaluator.d.cts +0 -0
  327. /package/lib/types/graph/{execution → engine/execution}/CodeSandboxEvaluator.d.mts +0 -0
  328. /package/lib/types/graph/{execution → engine/execution}/GraphExecutionContext.d.cts +0 -0
  329. /package/lib/types/graph/{execution → engine/execution}/GraphExecutionContext.d.mts +0 -0
  330. /package/lib/types/graph/{execution → engine/execution}/GraphExecutionEngine.d.cts +0 -0
  331. /package/lib/types/graph/{execution → engine/execution}/GraphExecutionEngine.d.mts +0 -0
  332. /package/lib/types/graph/{execution → engine/execution}/GraphExecutionFrame.d.cts +0 -0
  333. /package/lib/types/graph/{execution → engine/execution}/GraphExecutionFrame.d.mts +0 -0
  334. /package/lib/types/graph/{execution → engine/execution}/GraphNodeExecutor.d.cts +0 -0
  335. /package/lib/types/graph/{execution → engine/execution}/GraphNodeExecutor.d.mts +0 -0
  336. /package/lib/types/graph/{execution → engine/execution}/SwitchGraphNodeExecutor.d.cts +0 -0
  337. /package/lib/types/graph/{execution → engine/execution}/SwitchGraphNodeExecutor.d.mts +0 -0
  338. /package/lib/types/graph/{execution → engine/execution}/index.d.cts +0 -0
  339. /package/lib/types/graph/{execution → engine/execution}/index.d.mts +0 -0
  340. /package/lib/types/graph/{loops → engine/loops}/ForeachGraphNodeExecutor.d.cts +0 -0
  341. /package/lib/types/graph/{loops → engine/loops}/ForeachGraphNodeExecutor.d.mts +0 -0
  342. /package/lib/types/graph/{loops → engine/loops}/GraphLoopExecutionContext.d.cts +0 -0
  343. /package/lib/types/graph/{loops → engine/loops}/GraphLoopExecutionContext.d.mts +0 -0
  344. /package/lib/types/graph/{loops → engine/loops}/UntilGraphNodeExecutor.d.cts +0 -0
  345. /package/lib/types/graph/{loops → engine/loops}/UntilGraphNodeExecutor.d.mts +0 -0
  346. /package/lib/types/graph/{loops → engine/loops}/WhileGraphNodeExecutor.d.cts +0 -0
  347. /package/lib/types/graph/{loops → engine/loops}/WhileGraphNodeExecutor.d.mts +0 -0
  348. /package/lib/types/graph/{loops → engine/loops}/index.d.cts +0 -0
  349. /package/lib/types/graph/{loops → engine/loops}/index.d.mts +0 -0
  350. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningDependencyResolver.d.cts +0 -0
  351. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningDependencyResolver.d.mts +0 -0
  352. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningMetadata.d.cts +0 -0
  353. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningMetadata.d.mts +0 -0
  354. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningPolicy.d.cts +0 -0
  355. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningPolicy.d.mts +0 -0
  356. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningService.d.cts +0 -0
  357. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningService.d.mts +0 -0
  358. /package/lib/types/graph/{pinning → engine/pinning}/index.d.cts +0 -0
  359. /package/lib/types/graph/{pinning → engine/pinning}/index.d.mts +0 -0
  360. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlan.d.cts +0 -0
  361. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlan.d.mts +0 -0
  362. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanEdge.d.cts +0 -0
  363. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanEdge.d.mts +0 -0
  364. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanLayer.d.cts +0 -0
  365. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanLayer.d.mts +0 -0
  366. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanNode.d.cts +0 -0
  367. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanNode.d.mts +0 -0
  368. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanner.d.cts +0 -0
  369. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanner.d.mts +0 -0
  370. /package/lib/types/graph/{planning → engine/planning}/GraphRelationResolver.d.cts +0 -0
  371. /package/lib/types/graph/{planning → engine/planning}/GraphRelationResolver.d.mts +0 -0
  372. /package/lib/types/graph/{planning → engine/planning}/GraphTopology.d.cts +0 -0
  373. /package/lib/types/graph/{planning → engine/planning}/GraphTopology.d.mts +0 -0
  374. /package/lib/types/graph/{planning → engine/planning}/index.d.cts +0 -0
  375. /package/lib/types/graph/{planning → engine/planning}/index.d.mts +0 -0
  376. /package/lib/types/graph/{registry → engine/registry}/GraphNodeExecutorRegistry.d.cts +0 -0
  377. /package/lib/types/graph/{registry → engine/registry}/GraphNodeExecutorRegistry.d.mts +0 -0
  378. /package/lib/types/graph/{registry → engine/registry}/GraphNodeExecutorResolver.d.cts +0 -0
  379. /package/lib/types/graph/{registry → engine/registry}/GraphNodeExecutorResolver.d.mts +0 -0
  380. /package/lib/types/graph/{registry → engine/registry}/index.d.cts +0 -0
  381. /package/lib/types/graph/{registry → engine/registry}/index.d.mts +0 -0
  382. /package/lib/types/graph/{snapshots → engine/snapshots}/GraphExecutionSnapshotMapper.d.cts +0 -0
  383. /package/lib/types/graph/{snapshots → engine/snapshots}/GraphExecutionSnapshotMapper.d.mts +0 -0
  384. /package/lib/types/graph/{snapshots → engine/snapshots}/index.d.cts +0 -0
  385. /package/lib/types/graph/{snapshots → engine/snapshots}/index.d.mts +0 -0
  386. /package/lib/types/graph/{store → engine/store}/GraphCachedValue.d.cts +0 -0
  387. /package/lib/types/graph/{store → engine/store}/GraphCachedValue.d.mts +0 -0
  388. /package/lib/types/graph/{store → engine/store}/GraphValueKey.d.cts +0 -0
  389. /package/lib/types/graph/{store → engine/store}/GraphValueKey.d.mts +0 -0
  390. /package/lib/types/graph/{store → engine/store}/GraphValueStore.d.cts +0 -0
  391. /package/lib/types/graph/{store → engine/store}/GraphValueStore.d.mts +0 -0
  392. /package/lib/types/graph/{store → engine/store}/GraphValueStoreAdapter.d.cts +0 -0
  393. /package/lib/types/graph/{store → engine/store}/GraphValueStoreAdapter.d.mts +0 -0
  394. /package/lib/types/graph/{store → engine/store}/InMemoryGraphValueStoreAdapter.d.cts +0 -0
  395. /package/lib/types/graph/{store → engine/store}/InMemoryGraphValueStoreAdapter.d.mts +0 -0
  396. /package/lib/types/graph/{store → engine/store}/index.d.cts +0 -0
  397. /package/lib/types/graph/{store → engine/store}/index.d.mts +0 -0
  398. /package/lib/types/graph/{validation → engine/validation}/GraphDefinitionValidator.d.cts +0 -0
  399. /package/lib/types/graph/{validation → engine/validation}/GraphDefinitionValidator.d.mts +0 -0
  400. /package/lib/types/graph/{validation → engine/validation}/GraphPortSchemaResolver.d.cts +0 -0
  401. /package/lib/types/graph/{validation → engine/validation}/GraphPortSchemaResolver.d.mts +0 -0
  402. /package/lib/types/graph/{validation → engine/validation}/GraphValueValidator.d.cts +0 -0
  403. /package/lib/types/graph/{validation → engine/validation}/GraphValueValidator.d.mts +0 -0
  404. /package/lib/types/graph/{validation → engine/validation}/index.d.cts +0 -0
  405. /package/lib/types/graph/{validation → engine/validation}/index.d.mts +0 -0
  406. /package/lib/types/graph/{nodes → shared/nodes}/agent.d.cts +0 -0
  407. /package/lib/types/graph/{nodes → shared/nodes}/agent.d.mts +0 -0
  408. /package/lib/types/graph/{nodes → shared/nodes}/base.d.cts +0 -0
  409. /package/lib/types/graph/{nodes → shared/nodes}/base.d.mts +0 -0
  410. /package/lib/types/graph/{nodes → shared/nodes}/category-styles.d.cts +0 -0
  411. /package/lib/types/graph/{nodes → shared/nodes}/category-styles.d.mts +0 -0
  412. /package/lib/types/graph/{nodes → shared/nodes}/flow-control.d.cts +0 -0
  413. /package/lib/types/graph/{nodes → shared/nodes}/flow-control.d.mts +0 -0
  414. /package/lib/types/graph/{nodes → shared/nodes}/index.d.cts +0 -0
  415. /package/lib/types/graph/{nodes → shared/nodes}/index.d.mts +0 -0
  416. /package/lib/types/graph/{nodes → shared/nodes}/triggers.d.cts +0 -0
  417. /package/lib/types/graph/{nodes → shared/nodes}/triggers.d.mts +0 -0
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GraphExecutionContext = void 0;
4
+ /**
5
+ * @module integrations/graph/execution/GraphExecutionContext
6
+ * @summary Decaf Context for graph node execution.
7
+ * @description Extends Decaf's {@link Context} so node executors receive the same contextual plumbing as task handlers. Executors use the context to emit progress, log messages, and report state through the engine's observer pipeline.
8
+ */
9
+ const core_1 = require("@decaf-ts/core");
10
+ const constants_js_1 = require("./../../shared/constants.cjs");
11
+ /**
12
+ * Context passed to every graph node executor.
13
+ *
14
+ * Mirrors the `TaskEngine` / `TaskContext` pattern: the engine creates a
15
+ * `GraphExecutionContext` per node execution and passes it to
16
+ * `executor.execute(inputs, context)`. The executor uses `context.progress(...)`
17
+ * and `context.log(...)` to report intermediate state.
18
+ */
19
+ class GraphExecutionContext extends core_1.Context {
20
+ /**
21
+ * @param runId - Unique identifier for the current execution run.
22
+ * @param parentRunId - Run id of the parent execution (for nested loop bodies).
23
+ * @param workflow - The workflow definition being executed.
24
+ * @param node - The node definition being executed.
25
+ * @param path - Dotted path from the workflow root to this node.
26
+ * @param emitFn - Callback invoked when an event is emitted from this context.
27
+ * @param metadata - Free-form metadata attached to this context.
28
+ */
29
+ constructor(runId, parentRunId, workflow, node, path, emitFn, metadata = {}) {
30
+ super();
31
+ this.runId = runId;
32
+ this.parentRunId = parentRunId;
33
+ this.workflow = workflow;
34
+ this.node = node;
35
+ this.path = path;
36
+ this.emitFn = emitFn;
37
+ this.metadata = metadata;
38
+ }
39
+ /**
40
+ * Emits a partial graph execution event. The engine fills in runId,
41
+ * parentRunId, workflowId, nodeId, and path automatically.
42
+ */
43
+ async emit(event) {
44
+ await this.emitFn({
45
+ ...event,
46
+ runId: this.runId,
47
+ parentRunId: this.parentRunId,
48
+ workflowId: this.workflow.name,
49
+ nodeId: this.node.name,
50
+ path: event.path ?? this.path,
51
+ });
52
+ }
53
+ /**
54
+ * Emits a `NODE_OUTPUT` event with the given payload, useful for reporting
55
+ * intermediate progress from within a node executor.
56
+ */
57
+ async progress(payload) {
58
+ await this.emit({
59
+ type: constants_js_1.GraphExecutionEventType.NODE_OUTPUT,
60
+ payload,
61
+ });
62
+ }
63
+ /**
64
+ * Emits a `NODE_OUTPUT` event with a structured `{ message, payload }` shape
65
+ * so executors can log human-readable messages.
66
+ */
67
+ async log(message, payload) {
68
+ await this.emit({
69
+ type: constants_js_1.GraphExecutionEventType.NODE_OUTPUT,
70
+ payload: {
71
+ message,
72
+ payload,
73
+ },
74
+ });
75
+ }
76
+ }
77
+ exports.GraphExecutionContext = GraphExecutionContext;
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhFeGVjdXRpb25Db250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2dyYXBoL2VuZ2luZS9leGVjdXRpb24vR3JhcGhFeGVjdXRpb25Db250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFDSCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFNekMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLG9DQUErQjtBQU1qRTs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxPQUFPLHFCQUFzQixTQUFRLE9BQU87SUFDaEQ7Ozs7Ozs7O09BUUc7SUFDSCxZQUNXLEtBQWlCLEVBQ2pCLFdBQW1DLEVBQ25DLFFBQWlDLEVBQ2pDLElBQXlCLEVBQ3pCLElBQWMsRUFDTixNQUE4RCxFQUN0RSxXQUFvQyxFQUFFO1FBRS9DLEtBQUssRUFBRSxDQUFDO1FBUkMsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUNqQixnQkFBVyxHQUFYLFdBQVcsQ0FBd0I7UUFDbkMsYUFBUSxHQUFSLFFBQVEsQ0FBeUI7UUFDakMsU0FBSSxHQUFKLElBQUksQ0FBcUI7UUFDekIsU0FBSSxHQUFKLElBQUksQ0FBVTtRQUNOLFdBQU0sR0FBTixNQUFNLENBQXdEO1FBQ3RFLGFBQVEsR0FBUixRQUFRLENBQThCO0lBR2pELENBQUM7SUFFRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQW1DO1FBQzVDLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUNoQixHQUFHLEtBQUs7WUFDUixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzdCLFVBQVUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUk7WUFDOUIsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSTtZQUN0QixJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSTtTQUM5QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFnQjtRQUM3QixNQUFNLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDZCxJQUFJLEVBQUUsdUJBQXVCLENBQUMsV0FBVztZQUN6QyxPQUFPO1NBQ1IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxHQUFHLENBQUMsT0FBZSxFQUFFLE9BQWlCO1FBQzFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQztZQUNkLElBQUksRUFBRSx1QkFBdUIsQ0FBQyxXQUFXO1lBQ3pDLE9BQU8sRUFBRTtnQkFDUCxPQUFPO2dCQUNQLE9BQU87YUFDUjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG1vZHVsZSBpbnRlZ3JhdGlvbnMvZ3JhcGgvZXhlY3V0aW9uL0dyYXBoRXhlY3V0aW9uQ29udGV4dFxuICogQHN1bW1hcnkgRGVjYWYgQ29udGV4dCBmb3IgZ3JhcGggbm9kZSBleGVjdXRpb24uXG4gKiBAZGVzY3JpcHRpb24gRXh0ZW5kcyBEZWNhZidzIHtAbGluayBDb250ZXh0fSBzbyBub2RlIGV4ZWN1dG9ycyByZWNlaXZlIHRoZSBzYW1lIGNvbnRleHR1YWwgcGx1bWJpbmcgYXMgdGFzayBoYW5kbGVycy4gRXhlY3V0b3JzIHVzZSB0aGUgY29udGV4dCB0byBlbWl0IHByb2dyZXNzLCBsb2cgbWVzc2FnZXMsIGFuZCByZXBvcnQgc3RhdGUgdGhyb3VnaCB0aGUgZW5naW5lJ3Mgb2JzZXJ2ZXIgcGlwZWxpbmUuXG4gKi9cbmltcG9ydCB7IENvbnRleHQgfSBmcm9tIFwiQGRlY2FmLXRzL2NvcmVcIjtcbmltcG9ydCB0eXBlIHtcbiAgR3JhcGhOb2RlRGVmaW5pdGlvbixcbiAgR3JhcGhXb3JrZmxvd0RlZmluaXRpb24sXG59IGZyb20gXCJAZGVjYWYtdHMvdWktZGVjb3JhdG9ycy9ncmFwaFwiO1xuXG5pbXBvcnQgeyBHcmFwaEV4ZWN1dGlvbkV2ZW50VHlwZSB9IGZyb20gXCIuLi8uLi9zaGFyZWQvY29uc3RhbnRzXCI7XG5pbXBvcnQgdHlwZSB7XG4gIEdyYXBoRXhlY3V0aW9uRXZlbnQsXG4gIEdyYXBoUnVuSWQsXG59IGZyb20gXCIuLi90eXBlc1wiO1xuXG4vKipcbiAqIENvbnRleHQgcGFzc2VkIHRvIGV2ZXJ5IGdyYXBoIG5vZGUgZXhlY3V0b3IuXG4gKlxuICogTWlycm9ycyB0aGUgYFRhc2tFbmdpbmVgIC8gYFRhc2tDb250ZXh0YCBwYXR0ZXJuOiB0aGUgZW5naW5lIGNyZWF0ZXMgYVxuICogYEdyYXBoRXhlY3V0aW9uQ29udGV4dGAgcGVyIG5vZGUgZXhlY3V0aW9uIGFuZCBwYXNzZXMgaXQgdG9cbiAqIGBleGVjdXRvci5leGVjdXRlKGlucHV0cywgY29udGV4dClgLiBUaGUgZXhlY3V0b3IgdXNlcyBgY29udGV4dC5wcm9ncmVzcyguLi4pYFxuICogYW5kIGBjb250ZXh0LmxvZyguLi4pYCB0byByZXBvcnQgaW50ZXJtZWRpYXRlIHN0YXRlLlxuICovXG5leHBvcnQgY2xhc3MgR3JhcGhFeGVjdXRpb25Db250ZXh0IGV4dGVuZHMgQ29udGV4dCB7XG4gIC8qKlxuICAgKiBAcGFyYW0gcnVuSWQgLSBVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIGN1cnJlbnQgZXhlY3V0aW9uIHJ1bi5cbiAgICogQHBhcmFtIHBhcmVudFJ1bklkIC0gUnVuIGlkIG9mIHRoZSBwYXJlbnQgZXhlY3V0aW9uIChmb3IgbmVzdGVkIGxvb3AgYm9kaWVzKS5cbiAgICogQHBhcmFtIHdvcmtmbG93IC0gVGhlIHdvcmtmbG93IGRlZmluaXRpb24gYmVpbmcgZXhlY3V0ZWQuXG4gICAqIEBwYXJhbSBub2RlIC0gVGhlIG5vZGUgZGVmaW5pdGlvbiBiZWluZyBleGVjdXRlZC5cbiAgICogQHBhcmFtIHBhdGggLSBEb3R0ZWQgcGF0aCBmcm9tIHRoZSB3b3JrZmxvdyByb290IHRvIHRoaXMgbm9kZS5cbiAgICogQHBhcmFtIGVtaXRGbiAtIENhbGxiYWNrIGludm9rZWQgd2hlbiBhbiBldmVudCBpcyBlbWl0dGVkIGZyb20gdGhpcyBjb250ZXh0LlxuICAgKiBAcGFyYW0gbWV0YWRhdGEgLSBGcmVlLWZvcm0gbWV0YWRhdGEgYXR0YWNoZWQgdG8gdGhpcyBjb250ZXh0LlxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgcmVhZG9ubHkgcnVuSWQ6IEdyYXBoUnVuSWQsXG4gICAgcmVhZG9ubHkgcGFyZW50UnVuSWQ6IEdyYXBoUnVuSWQgfCB1bmRlZmluZWQsXG4gICAgcmVhZG9ubHkgd29ya2Zsb3c6IEdyYXBoV29ya2Zsb3dEZWZpbml0aW9uLFxuICAgIHJlYWRvbmx5IG5vZGU6IEdyYXBoTm9kZURlZmluaXRpb24sXG4gICAgcmVhZG9ubHkgcGF0aDogc3RyaW5nW10sXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbWl0Rm46IChldmVudDogUGFydGlhbDxHcmFwaEV4ZWN1dGlvbkV2ZW50PikgPT4gUHJvbWlzZTx2b2lkPixcbiAgICByZWFkb25seSBtZXRhZGF0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7fVxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIEVtaXRzIGEgcGFydGlhbCBncmFwaCBleGVjdXRpb24gZXZlbnQuIFRoZSBlbmdpbmUgZmlsbHMgaW4gcnVuSWQsXG4gICAqIHBhcmVudFJ1bklkLCB3b3JrZmxvd0lkLCBub2RlSWQsIGFuZCBwYXRoIGF1dG9tYXRpY2FsbHkuXG4gICAqL1xuICBhc3luYyBlbWl0KGV2ZW50OiBQYXJ0aWFsPEdyYXBoRXhlY3V0aW9uRXZlbnQ+KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5lbWl0Rm4oe1xuICAgICAgLi4uZXZlbnQsXG4gICAgICBydW5JZDogdGhpcy5ydW5JZCxcbiAgICAgIHBhcmVudFJ1bklkOiB0aGlzLnBhcmVudFJ1bklkLFxuICAgICAgd29ya2Zsb3dJZDogdGhpcy53b3JrZmxvdy5uYW1lLFxuICAgICAgbm9kZUlkOiB0aGlzLm5vZGUubmFtZSxcbiAgICAgIHBhdGg6IGV2ZW50LnBhdGggPz8gdGhpcy5wYXRoLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEVtaXRzIGEgYE5PREVfT1VUUFVUYCBldmVudCB3aXRoIHRoZSBnaXZlbiBwYXlsb2FkLCB1c2VmdWwgZm9yIHJlcG9ydGluZ1xuICAgKiBpbnRlcm1lZGlhdGUgcHJvZ3Jlc3MgZnJvbSB3aXRoaW4gYSBub2RlIGV4ZWN1dG9yLlxuICAgKi9cbiAgYXN5bmMgcHJvZ3Jlc3MocGF5bG9hZDogdW5rbm93bik6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuZW1pdCh7XG4gICAgICB0eXBlOiBHcmFwaEV4ZWN1dGlvbkV2ZW50VHlwZS5OT0RFX09VVFBVVCxcbiAgICAgIHBheWxvYWQsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogRW1pdHMgYSBgTk9ERV9PVVRQVVRgIGV2ZW50IHdpdGggYSBzdHJ1Y3R1cmVkIGB7IG1lc3NhZ2UsIHBheWxvYWQgfWAgc2hhcGVcbiAgICogc28gZXhlY3V0b3JzIGNhbiBsb2cgaHVtYW4tcmVhZGFibGUgbWVzc2FnZXMuXG4gICAqL1xuICBhc3luYyBsb2cobWVzc2FnZTogc3RyaW5nLCBwYXlsb2FkPzogdW5rbm93bik6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuZW1pdCh7XG4gICAgICB0eXBlOiBHcmFwaEV4ZWN1dGlvbkV2ZW50VHlwZS5OT0RFX09VVFBVVCxcbiAgICAgIHBheWxvYWQ6IHtcbiAgICAgICAgbWVzc2FnZSxcbiAgICAgICAgcGF5bG9hZCxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhFeGVjdXRpb25Db250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiR3JhcGhFeGVjdXRpb25Db250ZXh0LmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBOzs7O0dBSUc7QUFDSCx5Q0FBeUM7QUFDekMsOERBQXNFO0FBQ3RFOzs7Ozs7O0dBT0c7QUFDSCxNQUFhLHFCQUFzQixTQUFRLGNBQU87SUFDOUM7Ozs7Ozs7O09BUUc7SUFDSCxZQUFZLEtBQUssRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLFFBQVEsR0FBRyxFQUFFO1FBQ3ZFLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFDL0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDekIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDN0IsQ0FBQztJQUNEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSztRQUNaLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUNkLEdBQUcsS0FBSztZQUNSLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztZQUNqQixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDN0IsVUFBVSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSTtZQUM5QixNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJO1lBQ3RCLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJO1NBQ2hDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFDRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU87UUFDbEIsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ1osSUFBSSxFQUFFLHNDQUF1QixDQUFDLFdBQVc7WUFDekMsT0FBTztTQUNWLENBQUMsQ0FBQztJQUNQLENBQUM7SUFDRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxPQUFPO1FBQ3RCLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQztZQUNaLElBQUksRUFBRSxzQ0FBdUIsQ0FBQyxXQUFXO1lBQ3pDLE9BQU8sRUFBRTtnQkFDTCxPQUFPO2dCQUNQLE9BQU87YUFDVjtTQUNKLENBQUMsQ0FBQztJQUNQLENBQUM7Q0FDSjtBQXpERCxzREF5REM7QUFDRCxrd0xBQWt3TCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG1vZHVsZSBpbnRlZ3JhdGlvbnMvZ3JhcGgvZXhlY3V0aW9uL0dyYXBoRXhlY3V0aW9uQ29udGV4dFxuICogQHN1bW1hcnkgRGVjYWYgQ29udGV4dCBmb3IgZ3JhcGggbm9kZSBleGVjdXRpb24uXG4gKiBAZGVzY3JpcHRpb24gRXh0ZW5kcyBEZWNhZidzIHtAbGluayBDb250ZXh0fSBzbyBub2RlIGV4ZWN1dG9ycyByZWNlaXZlIHRoZSBzYW1lIGNvbnRleHR1YWwgcGx1bWJpbmcgYXMgdGFzayBoYW5kbGVycy4gRXhlY3V0b3JzIHVzZSB0aGUgY29udGV4dCB0byBlbWl0IHByb2dyZXNzLCBsb2cgbWVzc2FnZXMsIGFuZCByZXBvcnQgc3RhdGUgdGhyb3VnaCB0aGUgZW5naW5lJ3Mgb2JzZXJ2ZXIgcGlwZWxpbmUuXG4gKi9cbmltcG9ydCB7IENvbnRleHQgfSBmcm9tIFwiQGRlY2FmLXRzL2NvcmVcIjtcbmltcG9ydCB7IEdyYXBoRXhlY3V0aW9uRXZlbnRUeXBlIH0gZnJvbSBcIi4vLi4vLi4vc2hhcmVkL2NvbnN0YW50cy5qc1wiO1xuLyoqXG4gKiBDb250ZXh0IHBhc3NlZCB0byBldmVyeSBncmFwaCBub2RlIGV4ZWN1dG9yLlxuICpcbiAqIE1pcnJvcnMgdGhlIGBUYXNrRW5naW5lYCAvIGBUYXNrQ29udGV4dGAgcGF0dGVybjogdGhlIGVuZ2luZSBjcmVhdGVzIGFcbiAqIGBHcmFwaEV4ZWN1dGlvbkNvbnRleHRgIHBlciBub2RlIGV4ZWN1dGlvbiBhbmQgcGFzc2VzIGl0IHRvXG4gKiBgZXhlY3V0b3IuZXhlY3V0ZShpbnB1dHMsIGNvbnRleHQpYC4gVGhlIGV4ZWN1dG9yIHVzZXMgYGNvbnRleHQucHJvZ3Jlc3MoLi4uKWBcbiAqIGFuZCBgY29udGV4dC5sb2coLi4uKWAgdG8gcmVwb3J0IGludGVybWVkaWF0ZSBzdGF0ZS5cbiAqL1xuZXhwb3J0IGNsYXNzIEdyYXBoRXhlY3V0aW9uQ29udGV4dCBleHRlbmRzIENvbnRleHQge1xuICAgIC8qKlxuICAgICAqIEBwYXJhbSBydW5JZCAtIFVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgY3VycmVudCBleGVjdXRpb24gcnVuLlxuICAgICAqIEBwYXJhbSBwYXJlbnRSdW5JZCAtIFJ1biBpZCBvZiB0aGUgcGFyZW50IGV4ZWN1dGlvbiAoZm9yIG5lc3RlZCBsb29wIGJvZGllcykuXG4gICAgICogQHBhcmFtIHdvcmtmbG93IC0gVGhlIHdvcmtmbG93IGRlZmluaXRpb24gYmVpbmcgZXhlY3V0ZWQuXG4gICAgICogQHBhcmFtIG5vZGUgLSBUaGUgbm9kZSBkZWZpbml0aW9uIGJlaW5nIGV4ZWN1dGVkLlxuICAgICAqIEBwYXJhbSBwYXRoIC0gRG90dGVkIHBhdGggZnJvbSB0aGUgd29ya2Zsb3cgcm9vdCB0byB0aGlzIG5vZGUuXG4gICAgICogQHBhcmFtIGVtaXRGbiAtIENhbGxiYWNrIGludm9rZWQgd2hlbiBhbiBldmVudCBpcyBlbWl0dGVkIGZyb20gdGhpcyBjb250ZXh0LlxuICAgICAqIEBwYXJhbSBtZXRhZGF0YSAtIEZyZWUtZm9ybSBtZXRhZGF0YSBhdHRhY2hlZCB0byB0aGlzIGNvbnRleHQuXG4gICAgICovXG4gICAgY29uc3RydWN0b3IocnVuSWQsIHBhcmVudFJ1bklkLCB3b3JrZmxvdywgbm9kZSwgcGF0aCwgZW1pdEZuLCBtZXRhZGF0YSA9IHt9KSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMucnVuSWQgPSBydW5JZDtcbiAgICAgICAgdGhpcy5wYXJlbnRSdW5JZCA9IHBhcmVudFJ1bklkO1xuICAgICAgICB0aGlzLndvcmtmbG93ID0gd29ya2Zsb3c7XG4gICAgICAgIHRoaXMubm9kZSA9IG5vZGU7XG4gICAgICAgIHRoaXMucGF0aCA9IHBhdGg7XG4gICAgICAgIHRoaXMuZW1pdEZuID0gZW1pdEZuO1xuICAgICAgICB0aGlzLm1ldGFkYXRhID0gbWV0YWRhdGE7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEVtaXRzIGEgcGFydGlhbCBncmFwaCBleGVjdXRpb24gZXZlbnQuIFRoZSBlbmdpbmUgZmlsbHMgaW4gcnVuSWQsXG4gICAgICogcGFyZW50UnVuSWQsIHdvcmtmbG93SWQsIG5vZGVJZCwgYW5kIHBhdGggYXV0b21hdGljYWxseS5cbiAgICAgKi9cbiAgICBhc3luYyBlbWl0KGV2ZW50KSB7XG4gICAgICAgIGF3YWl0IHRoaXMuZW1pdEZuKHtcbiAgICAgICAgICAgIC4uLmV2ZW50LFxuICAgICAgICAgICAgcnVuSWQ6IHRoaXMucnVuSWQsXG4gICAgICAgICAgICBwYXJlbnRSdW5JZDogdGhpcy5wYXJlbnRSdW5JZCxcbiAgICAgICAgICAgIHdvcmtmbG93SWQ6IHRoaXMud29ya2Zsb3cubmFtZSxcbiAgICAgICAgICAgIG5vZGVJZDogdGhpcy5ub2RlLm5hbWUsXG4gICAgICAgICAgICBwYXRoOiBldmVudC5wYXRoID8/IHRoaXMucGF0aCxcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEVtaXRzIGEgYE5PREVfT1VUUFVUYCBldmVudCB3aXRoIHRoZSBnaXZlbiBwYXlsb2FkLCB1c2VmdWwgZm9yIHJlcG9ydGluZ1xuICAgICAqIGludGVybWVkaWF0ZSBwcm9ncmVzcyBmcm9tIHdpdGhpbiBhIG5vZGUgZXhlY3V0b3IuXG4gICAgICovXG4gICAgYXN5bmMgcHJvZ3Jlc3MocGF5bG9hZCkge1xuICAgICAgICBhd2FpdCB0aGlzLmVtaXQoe1xuICAgICAgICAgICAgdHlwZTogR3JhcGhFeGVjdXRpb25FdmVudFR5cGUuTk9ERV9PVVRQVVQsXG4gICAgICAgICAgICBwYXlsb2FkLFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogRW1pdHMgYSBgTk9ERV9PVVRQVVRgIGV2ZW50IHdpdGggYSBzdHJ1Y3R1cmVkIGB7IG1lc3NhZ2UsIHBheWxvYWQgfWAgc2hhcGVcbiAgICAgKiBzbyBleGVjdXRvcnMgY2FuIGxvZyBodW1hbi1yZWFkYWJsZSBtZXNzYWdlcy5cbiAgICAgKi9cbiAgICBhc3luYyBsb2cobWVzc2FnZSwgcGF5bG9hZCkge1xuICAgICAgICBhd2FpdCB0aGlzLmVtaXQoe1xuICAgICAgICAgICAgdHlwZTogR3JhcGhFeGVjdXRpb25FdmVudFR5cGUuTk9ERV9PVVRQVVQsXG4gICAgICAgICAgICBwYXlsb2FkOiB7XG4gICAgICAgICAgICAgICAgbWVzc2FnZSxcbiAgICAgICAgICAgICAgICBwYXlsb2FkLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pUjNKaGNHaEZlR1ZqZFhScGIyNURiMjUwWlhoMExtcHpJaXdpYzI5MWNtTmxVbTl2ZENJNklpSXNJbk52ZFhKalpYTWlPbHNpTGk0dkxpNHZMaTR2TGk0dkxpNHZjM0pqTDJkeVlYQm9MMlZ1WjJsdVpTOWxlR1ZqZFhScGIyNHZSM0poY0doRmVHVmpkWFJwYjI1RGIyNTBaWGgwTG5SeklsMHNJbTVoYldWeklqcGJYU3dpYldGd2NHbHVaM01pT2lKQlFVRkJPenM3TzBkQlNVYzdRVUZEU0N4UFFVRlBMRVZCUVVVc1QwRkJUeXhGUVVGRkxFMUJRVTBzWjBKQlFXZENMRU5CUVVNN1FVRk5la01zVDBGQlR5eEZRVUZGTEhWQ1FVRjFRaXhGUVVGRkxHOURRVUVyUWp0QlFVMXFSVHM3T3pzN096dEhRVTlITzBGQlEwZ3NUVUZCVFN4UFFVRlBMSEZDUVVGelFpeFRRVUZSTEU5QlFVODdTVUZEYUVRN096czdPenM3TzA5QlVVYzdTVUZEU0N4WlFVTlhMRXRCUVdsQ0xFVkJRMnBDTEZkQlFXMURMRVZCUTI1RExGRkJRV2xETEVWQlEycERMRWxCUVhsQ0xFVkJRM3BDTEVsQlFXTXNSVUZEVGl4TlFVRTRSQ3hGUVVOMFJTeFhRVUZ2UXl4RlFVRkZPMUZCUlM5RExFdEJRVXNzUlVGQlJTeERRVUZETzFGQlVrTXNWVUZCU3l4SFFVRk1MRXRCUVVzc1EwRkJXVHRSUVVOcVFpeG5Ra0ZCVnl4SFFVRllMRmRCUVZjc1EwRkJkMEk3VVVGRGJrTXNZVUZCVVN4SFFVRlNMRkZCUVZFc1EwRkJlVUk3VVVGRGFrTXNVMEZCU1N4SFFVRktMRWxCUVVrc1EwRkJjVUk3VVVGRGVrSXNVMEZCU1N4SFFVRktMRWxCUVVrc1EwRkJWVHRSUVVOT0xGZEJRVTBzUjBGQlRpeE5RVUZOTEVOQlFYZEVPMUZCUTNSRkxHRkJRVkVzUjBGQlVpeFJRVUZSTEVOQlFUaENPMGxCUjJwRUxFTkJRVU03U1VGRlJEczdPMDlCUjBjN1NVRkRTQ3hMUVVGTExFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFXMURPMUZCUXpWRExFMUJRVTBzU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXp0WlFVTm9RaXhIUVVGSExFdEJRVXM3V1VGRFVpeExRVUZMTEVWQlFVVXNTVUZCU1N4RFFVRkRMRXRCUVVzN1dVRkRha0lzVjBGQlZ5eEZRVUZGTEVsQlFVa3NRMEZCUXl4WFFVRlhPMWxCUXpkQ0xGVkJRVlVzUlVGQlJTeEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRMRWxCUVVrN1dVRkRPVUlzVFVGQlRTeEZRVUZGTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTVHRaUVVOMFFpeEpRVUZKTEVWQlFVVXNTMEZCU3l4RFFVRkRMRWxCUVVrc1NVRkJTU3hKUVVGSkxFTkJRVU1zU1VGQlNUdFRRVU01UWl4RFFVRkRMRU5CUVVNN1NVRkRUQ3hEUVVGRE8wbEJSVVE3T3p0UFFVZEhPMGxCUTBnc1MwRkJTeXhEUVVGRExGRkJRVkVzUTBGQlF5eFBRVUZuUWp0UlFVTTNRaXhOUVVGTkxFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTTdXVUZEWkN4SlFVRkpMRVZCUVVVc2RVSkJRWFZDTEVOQlFVTXNWMEZCVnp0WlFVTjZReXhQUVVGUE8xTkJRMUlzUTBGQlF5eERRVUZETzBsQlEwd3NRMEZCUXp0SlFVVkVPenM3VDBGSFJ6dEpRVU5JTEV0QlFVc3NRMEZCUXl4SFFVRkhMRU5CUVVNc1QwRkJaU3hGUVVGRkxFOUJRV2xDTzFGQlF6RkRMRTFCUVUwc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF6dFpRVU5rTEVsQlFVa3NSVUZCUlN4MVFrRkJkVUlzUTBGQlF5eFhRVUZYTzFsQlEzcERMRTlCUVU4c1JVRkJSVHRuUWtGRFVDeFBRVUZQTzJkQ1FVTlFMRTlCUVU4N1lVRkRVanRUUVVOR0xFTkJRVU1zUTBGQlF6dEpRVU5NTEVOQlFVTTdRMEZEUmlJc0luTnZkWEpqWlhORGIyNTBaVzUwSWpwYklpOHFLbHh1SUNvZ1FHMXZaSFZzWlNCcGJuUmxaM0poZEdsdmJuTXZaM0poY0dndlpYaGxZM1YwYVc5dUwwZHlZWEJvUlhobFkzVjBhVzl1UTI5dWRHVjRkRnh1SUNvZ1FITjFiVzFoY25rZ1JHVmpZV1lnUTI5dWRHVjRkQ0JtYjNJZ1ozSmhjR2dnYm05a1pTQmxlR1ZqZFhScGIyNHVYRzRnS2lCQVpHVnpZM0pwY0hScGIyNGdSWGgwWlc1a2N5QkVaV05oWmlkeklIdEFiR2x1YXlCRGIyNTBaWGgwZlNCemJ5QnViMlJsSUdWNFpXTjFkRzl5Y3lCeVpXTmxhWFpsSUhSb1pTQnpZVzFsSUdOdmJuUmxlSFIxWVd3Z2NHeDFiV0pwYm1jZ1lYTWdkR0Z6YXlCb1lXNWtiR1Z5Y3k0Z1JYaGxZM1YwYjNKeklIVnpaU0IwYUdVZ1kyOXVkR1Y0ZENCMGJ5QmxiV2wwSUhCeWIyZHlaWE56TENCc2IyY2diV1Z6YzJGblpYTXNJR0Z1WkNCeVpYQnZjblFnYzNSaGRHVWdkR2h5YjNWbmFDQjBhR1VnWlc1bmFXNWxKM01nYjJKelpYSjJaWElnY0dsd1pXeHBibVV1WEc0Z0tpOWNibWx0Y0c5eWRDQjdJRU52Ym5SbGVIUWdmU0JtY205dElGd2lRR1JsWTJGbUxYUnpMMk52Y21WY0lqdGNibWx0Y0c5eWRDQjBlWEJsSUh0Y2JpQWdSM0poY0doT2IyUmxSR1ZtYVc1cGRHbHZiaXhjYmlBZ1IzSmhjR2hYYjNKclpteHZkMFJsWm1sdWFYUnBiMjRzWEc1OUlHWnliMjBnWENKQVpHVmpZV1l0ZEhNdmRXa3RaR1ZqYjNKaGRHOXljeTluY21Gd2FGd2lPMXh1WEc1cGJYQnZjblFnZXlCSGNtRndhRVY0WldOMWRHbHZia1YyWlc1MFZIbHdaU0I5SUdaeWIyMGdYQ0l1TGk4dUxpOXphR0Z5WldRdlkyOXVjM1JoYm5SelhDSTdYRzVwYlhCdmNuUWdkSGx3WlNCN1hHNGdJRWR5WVhCb1JYaGxZM1YwYVc5dVJYWmxiblFzWEc0Z0lFZHlZWEJvVW5WdVNXUXNYRzU5SUdaeWIyMGdYQ0l1TGk5MGVYQmxjMXdpTzF4dVhHNHZLaXBjYmlBcUlFTnZiblJsZUhRZ2NHRnpjMlZrSUhSdklHVjJaWEo1SUdkeVlYQm9JRzV2WkdVZ1pYaGxZM1YwYjNJdVhHNGdLbHh1SUNvZ1RXbHljbTl5Y3lCMGFHVWdZRlJoYzJ0RmJtZHBibVZnSUM4Z1lGUmhjMnREYjI1MFpYaDBZQ0J3WVhSMFpYSnVPaUIwYUdVZ1pXNW5hVzVsSUdOeVpXRjBaWE1nWVZ4dUlDb2dZRWR5WVhCb1JYaGxZM1YwYVc5dVEyOXVkR1Y0ZEdBZ2NHVnlJRzV2WkdVZ1pYaGxZM1YwYVc5dUlHRnVaQ0J3WVhOelpYTWdhWFFnZEc5Y2JpQXFJR0JsZUdWamRYUnZjaTVsZUdWamRYUmxLR2x1Y0hWMGN5d2dZMjl1ZEdWNGRDbGdMaUJVYUdVZ1pYaGxZM1YwYjNJZ2RYTmxjeUJnWTI5dWRHVjRkQzV3Y205bmNtVnpjeWd1TGk0cFlGeHVJQ29nWVc1a0lHQmpiMjUwWlhoMExteHZaeWd1TGk0cFlDQjBieUJ5WlhCdmNuUWdhVzUwWlhKdFpXUnBZWFJsSUhOMFlYUmxMbHh1SUNvdlhHNWxlSEJ2Y25RZ1kyeGhjM01nUjNKaGNHaEZlR1ZqZFhScGIyNURiMjUwWlhoMElHVjRkR1Z1WkhNZ1EyOXVkR1Y0ZENCN1hHNGdJQzhxS2x4dUlDQWdLaUJBY0dGeVlXMGdjblZ1U1dRZ0xTQlZibWx4ZFdVZ2FXUmxiblJwWm1sbGNpQm1iM0lnZEdobElHTjFjbkpsYm5RZ1pYaGxZM1YwYVc5dUlISjFiaTVjYmlBZ0lDb2dRSEJoY21GdElIQmhjbVZ1ZEZKMWJrbGtJQzBnVW5WdUlHbGtJRzltSUhSb1pTQndZWEpsYm5RZ1pYaGxZM1YwYVc5dUlDaG1iM0lnYm1WemRHVmtJR3h2YjNBZ1ltOWthV1Z6S1M1Y2JpQWdJQ29nUUhCaGNtRnRJSGR2Y210bWJHOTNJQzBnVkdobElIZHZjbXRtYkc5M0lHUmxabWx1YVhScGIyNGdZbVZwYm1jZ1pYaGxZM1YwWldRdVhHNGdJQ0FxSUVCd1lYSmhiU0J1YjJSbElDMGdWR2hsSUc1dlpHVWdaR1ZtYVc1cGRHbHZiaUJpWldsdVp5QmxlR1ZqZFhSbFpDNWNiaUFnSUNvZ1FIQmhjbUZ0SUhCaGRHZ2dMU0JFYjNSMFpXUWdjR0YwYUNCbWNtOXRJSFJvWlNCM2IzSnJabXh2ZHlCeWIyOTBJSFJ2SUhSb2FYTWdibTlrWlM1Y2JpQWdJQ29nUUhCaGNtRnRJR1Z0YVhSR2JpQXRJRU5oYkd4aVlXTnJJR2x1ZG05clpXUWdkMmhsYmlCaGJpQmxkbVZ1ZENCcGN5QmxiV2wwZEdWa0lHWnliMjBnZEdocGN5QmpiMjUwWlhoMExseHVJQ0FnS2lCQWNHRnlZVzBnYldWMFlXUmhkR0VnTFNCR2NtVmxMV1p2Y20wZ2JXVjBZV1JoZEdFZ1lYUjBZV05vWldRZ2RHOGdkR2hwY3lCamIyNTBaWGgwTGx4dUlDQWdLaTljYmlBZ1kyOXVjM1J5ZFdOMGIzSW9YRzRnSUNBZ2NtVmhaRzl1YkhrZ2NuVnVTV1E2SUVkeVlYQm9VblZ1U1dRc1hHNGdJQ0FnY21WaFpHOXViSGtnY0dGeVpXNTBVblZ1U1dRNklFZHlZWEJvVW5WdVNXUWdmQ0IxYm1SbFptbHVaV1FzWEc0Z0lDQWdjbVZoWkc5dWJIa2dkMjl5YTJac2IzYzZJRWR5WVhCb1YyOXlhMlpzYjNkRVpXWnBibWwwYVc5dUxGeHVJQ0FnSUhKbFlXUnZibXg1SUc1dlpHVTZJRWR5WVhCb1RtOWtaVVJsWm1sdWFYUnBiMjRzWEc0Z0lDQWdjbVZoWkc5dWJIa2djR0YwYURvZ2MzUnlhVzVuVzEwc1hHNGdJQ0FnY0hKcGRtRjBaU0J5WldGa2IyNXNlU0JsYldsMFJtNDZJQ2hsZG1WdWREb2dVR0Z5ZEdsaGJEeEhjbUZ3YUVWNFpXTjFkR2x2YmtWMlpXNTBQaWtnUFQ0Z1VISnZiV2x6WlR4MmIybGtQaXhjYmlBZ0lDQnlaV0ZrYjI1c2VTQnRaWFJoWkdGMFlUb2dVbVZqYjNKa1BITjBjbWx1Wnl3Z2RXNXJibTkzYmo0Z1BTQjdmVnh1SUNBcElIdGNiaUFnSUNCemRYQmxjaWdwTzF4dUlDQjlYRzVjYmlBZ0x5b3FYRzRnSUNBcUlFVnRhWFJ6SUdFZ2NHRnlkR2xoYkNCbmNtRndhQ0JsZUdWamRYUnBiMjRnWlhabGJuUXVJRlJvWlNCbGJtZHBibVVnWm1sc2JITWdhVzRnY25WdVNXUXNYRzRnSUNBcUlIQmhjbVZ1ZEZKMWJrbGtMQ0IzYjNKclpteHZkMGxrTENCdWIyUmxTV1FzSUdGdVpDQndZWFJvSUdGMWRHOXRZWFJwWTJGc2JIa3VYRzRnSUNBcUwxeHVJQ0JoYzNsdVl5QmxiV2wwS0dWMlpXNTBPaUJRWVhKMGFXRnNQRWR5WVhCb1JYaGxZM1YwYVc5dVJYWmxiblErS1RvZ1VISnZiV2x6WlR4MmIybGtQaUI3WEc0Z0lDQWdZWGRoYVhRZ2RHaHBjeTVsYldsMFJtNG9lMXh1SUNBZ0lDQWdMaTR1WlhabGJuUXNYRzRnSUNBZ0lDQnlkVzVKWkRvZ2RHaHBjeTV5ZFc1SlpDeGNiaUFnSUNBZ0lIQmhjbVZ1ZEZKMWJrbGtPaUIwYUdsekxuQmhjbVZ1ZEZKMWJrbGtMRnh1SUNBZ0lDQWdkMjl5YTJac2IzZEpaRG9nZEdocGN5NTNiM0pyWm14dmR5NXVZVzFsTEZ4dUlDQWdJQ0FnYm05a1pVbGtPaUIwYUdsekxtNXZaR1V1Ym1GdFpTeGNiaUFnSUNBZ0lIQmhkR2c2SUdWMlpXNTBMbkJoZEdnZ1B6OGdkR2hwY3k1d1lYUm9MRnh1SUNBZ0lIMHBPMXh1SUNCOVhHNWNiaUFnTHlvcVhHNGdJQ0FxSUVWdGFYUnpJR0VnWUU1UFJFVmZUMVZVVUZWVVlDQmxkbVZ1ZENCM2FYUm9JSFJvWlNCbmFYWmxiaUJ3WVhsc2IyRmtMQ0IxYzJWbWRXd2dabTl5SUhKbGNHOXlkR2x1WjF4dUlDQWdLaUJwYm5SbGNtMWxaR2xoZEdVZ2NISnZaM0psYzNNZ1puSnZiU0IzYVhSb2FXNGdZU0J1YjJSbElHVjRaV04xZEc5eUxseHVJQ0FnS2k5Y2JpQWdZWE41Ym1NZ2NISnZaM0psYzNNb2NHRjViRzloWkRvZ2RXNXJibTkzYmlrNklGQnliMjFwYzJVOGRtOXBaRDRnZTF4dUlDQWdJR0YzWVdsMElIUm9hWE11WlcxcGRDaDdYRzRnSUNBZ0lDQjBlWEJsT2lCSGNtRndhRVY0WldOMWRHbHZia1YyWlc1MFZIbHdaUzVPVDBSRlgwOVZWRkJWVkN4Y2JpQWdJQ0FnSUhCaGVXeHZZV1FzWEc0Z0lDQWdmU2s3WEc0Z0lIMWNibHh1SUNBdktpcGNiaUFnSUNvZ1JXMXBkSE1nWVNCZ1RrOUVSVjlQVlZSUVZWUmdJR1YyWlc1MElIZHBkR2dnWVNCemRISjFZM1IxY21Wa0lHQjdJRzFsYzNOaFoyVXNJSEJoZVd4dllXUWdmV0FnYzJoaGNHVmNiaUFnSUNvZ2MyOGdaWGhsWTNWMGIzSnpJR05oYmlCc2IyY2dhSFZ0WVc0dGNtVmhaR0ZpYkdVZ2JXVnpjMkZuWlhNdVhHNGdJQ0FxTDF4dUlDQmhjM2x1WXlCc2IyY29iV1Z6YzJGblpUb2djM1J5YVc1bkxDQndZWGxzYjJGa1B6b2dkVzVyYm05M2JpazZJRkJ5YjIxcGMyVThkbTlwWkQ0Z2UxeHVJQ0FnSUdGM1lXbDBJSFJvYVhNdVpXMXBkQ2g3WEc0Z0lDQWdJQ0IwZVhCbE9pQkhjbUZ3YUVWNFpXTjFkR2x2YmtWMlpXNTBWSGx3WlM1T1QwUkZYMDlWVkZCVlZDeGNiaUFnSUNBZ0lIQmhlV3h2WVdRNklIdGNiaUFnSUNBZ0lDQWdiV1Z6YzJGblpTeGNiaUFnSUNBZ0lDQWdjR0Y1Ykc5aFpDeGNiaUFnSUNBZ0lIMHNYRzRnSUNBZ2ZTazdYRzRnSUgxY2JuMWNiaUpkZlE9PSJdfQ==